X-Git-Url: https://git.proxmox.com/?a=blobdiff_plain;f=crypto%2Fasymmetric_keys%2Fx509_public_key.c;h=9338b4558cdc52b70a86c820ef2d39186bf1e3c3;hb=c6479d6257e093ccbb1ae1ff84901794cbe2d73f;hp=c9013582c026748a10b09eeb09d5c71f0571ea7a;hpb=ce44cd8dfc55110fa7423ceb47a8a70dac65fe89;p=mirror_ubuntu-bionic-kernel.git diff --git a/crypto/asymmetric_keys/x509_public_key.c b/crypto/asymmetric_keys/x509_public_key.c index c9013582c026..9338b4558cdc 100644 --- a/crypto/asymmetric_keys/x509_public_key.c +++ b/crypto/asymmetric_keys/x509_public_key.c @@ -79,11 +79,7 @@ int x509_get_sig_params(struct x509_certificate *cert) desc->tfm = tfm; desc->flags = CRYPTO_TFM_REQ_MAY_SLEEP; - ret = crypto_shash_init(desc); - if (ret < 0) - goto error_2; - might_sleep(); - ret = crypto_shash_finup(desc, cert->tbs, cert->tbs_size, sig->digest); + ret = crypto_shash_digest(desc, cert->tbs, cert->tbs_size, sig->digest); if (ret < 0) goto error_2; @@ -135,7 +131,7 @@ int x509_check_for_self_signed(struct x509_certificate *cert) } ret = -EKEYREJECTED; - if (cert->pub->pkey_algo != cert->sig->pkey_algo) + if (strcmp(cert->pub->pkey_algo, cert->sig->pkey_algo) != 0) goto out; ret = public_key_verify_signature(cert->pub, cert->sig);