Lines Matching refs:sinfo
26 struct pkcs7_signed_info *sinfo) in pkcs7_digest() argument
34 kenter(",%u,%u", sinfo->index, sinfo->sig.pkey_hash_algo); in pkcs7_digest()
36 if (sinfo->sig.pkey_hash_algo >= PKEY_HASH__LAST || in pkcs7_digest()
37 !hash_algo_name[sinfo->sig.pkey_hash_algo]) in pkcs7_digest()
43 tfm = crypto_alloc_shash(hash_algo_name[sinfo->sig.pkey_hash_algo], in pkcs7_digest()
49 sinfo->sig.digest_size = digest_size = crypto_shash_digestsize(tfm); in pkcs7_digest()
73 if (sinfo->msgdigest) { in pkcs7_digest()
76 if (sinfo->msgdigest_len != sinfo->sig.digest_size) { in pkcs7_digest()
78 sinfo->index, sinfo->msgdigest_len); in pkcs7_digest()
83 if (memcmp(digest, sinfo->msgdigest, sinfo->msgdigest_len) != 0) { in pkcs7_digest()
85 sinfo->index); in pkcs7_digest()
95 memset(digest, 0, sinfo->sig.digest_size); in pkcs7_digest()
104 ret = crypto_shash_finup(desc, sinfo->authattrs, in pkcs7_digest()
105 sinfo->authattrs_len, digest); in pkcs7_digest()
111 sinfo->sig.digest = digest; in pkcs7_digest()
129 struct pkcs7_signed_info *sinfo) in pkcs7_find_key() argument
134 kenter("%u", sinfo->index); in pkcs7_find_key()
142 if (!asymmetric_key_id_same(x509->id, sinfo->signing_cert_id)) in pkcs7_find_key()
145 sinfo->index, certix); in pkcs7_find_key()
147 if (x509->pub->pkey_algo != sinfo->sig.pkey_algo) { in pkcs7_find_key()
149 sinfo->index); in pkcs7_find_key()
153 sinfo->signer = x509; in pkcs7_find_key()
161 sinfo->index, in pkcs7_find_key()
162 sinfo->signing_cert_id->len, sinfo->signing_cert_id->data); in pkcs7_find_key()
170 struct pkcs7_signed_info *sinfo) in pkcs7_verify_sig_chain() argument
172 struct x509_certificate *x509 = sinfo->signer, *p; in pkcs7_verify_sig_chain()
237 sinfo->index); in pkcs7_verify_sig_chain()
268 struct pkcs7_signed_info *sinfo) in pkcs7_verify_one() argument
272 kenter(",%u", sinfo->index); in pkcs7_verify_one()
277 ret = pkcs7_digest(pkcs7, sinfo); in pkcs7_verify_one()
282 ret = pkcs7_find_key(pkcs7, sinfo); in pkcs7_verify_one()
286 if (!sinfo->signer) in pkcs7_verify_one()
290 sinfo->signer->index, sinfo->index); in pkcs7_verify_one()
293 ret = public_key_verify_signature(sinfo->signer->pub, &sinfo->sig); in pkcs7_verify_one()
297 pr_devel("Verified signature %u\n", sinfo->index); in pkcs7_verify_one()
300 return pkcs7_verify_sig_chain(pkcs7, sinfo); in pkcs7_verify_one()
330 struct pkcs7_signed_info *sinfo; in pkcs7_verify() local
343 for (sinfo = pkcs7->signed_infos; sinfo; sinfo = sinfo->next) { in pkcs7_verify()
344 ret = pkcs7_verify_one(pkcs7, sinfo); in pkcs7_verify()
347 sinfo->unsupported_crypto = true; in pkcs7_verify()