summaryrefslogtreecommitdiffstats
path: root/crypto/evp/signature.c
diff options
context:
space:
mode:
authorRichard Levitte <levitte@openssl.org>2020-05-06 21:44:58 +0200
committerRichard Levitte <levitte@openssl.org>2020-05-14 12:16:35 +0200
commit2c6094baca6476d8b024dc7d9f461dae597ae797 (patch)
treeb86aadf58bb549dbc052a83ff5cd6ecd02017b79 /crypto/evp/signature.c
parentea297dca509b16190ad0a915f1324777b08ed8d8 (diff)
EVP: For SIGNATURE operations, pass the propquery early
Instead of passing it with signature->digest_verify_init() and signature->digest_sign_init(), we pass it with signature->newctx(). This allows the digests that are indicated by RSA PSS parameters to have a useful propquery. Reviewed-by: Shane Lontis <shane.lontis@oracle.com> (Merged from https://github.com/openssl/openssl/pull/11710)
Diffstat (limited to 'crypto/evp/signature.c')
-rw-r--r--crypto/evp/signature.c3
1 files changed, 2 insertions, 1 deletions
diff --git a/crypto/evp/signature.c b/crypto/evp/signature.c
index b7a7f79606..595a93e66e 100644
--- a/crypto/evp/signature.c
+++ b/crypto/evp/signature.c
@@ -417,7 +417,8 @@ static int evp_pkey_signature_init(EVP_PKEY_CTX *ctx, int operation)
/* No more legacy from here down to legacy: */
ctx->op.sig.signature = signature;
- ctx->op.sig.sigprovctx = signature->newctx(ossl_provider_ctx(signature->prov));
+ ctx->op.sig.sigprovctx =
+ signature->newctx(ossl_provider_ctx(signature->prov), ctx->propquery);
if (ctx->op.sig.sigprovctx == NULL) {
/* The provider key can stay in the cache */
EVPerr(0, EVP_R_INITIALIZATION_ERROR);