From: Shane Lontis Date: Tue, 22 Sep 2020 05:56:11 +0000 (+1000) Subject: Fix missing propq in sm2 X-Git-Tag: openssl-3.0.0-alpha7~139 X-Git-Url: http://git.ipfire.org/gitweb.cgi?a=commitdiff_plain;h=0ecec0fa081a717db49d2ae10135cf285b95409d;p=thirdparty%2Fopenssl.git Fix missing propq in sm2 Reviewed-by: Matt Caswell (Merged from https://github.com/openssl/openssl/pull/12944) --- diff --git a/crypto/sm2/sm2_pmeth.c b/crypto/sm2/sm2_pmeth.c index 665e278d1fa..32713a5ac48 100644 --- a/crypto/sm2/sm2_pmeth.c +++ b/crypto/sm2/sm2_pmeth.c @@ -130,6 +130,7 @@ static int pkey_sm2_encrypt(EVP_PKEY_CTX *ctx, SM2_PKEY_CTX *dctx = ctx->data; const EVP_MD *md = (dctx->md == NULL) ? EVP_sm3() : dctx->md; OPENSSL_CTX *libctx = ec_key_get_libctx(ec); + const char *propq = ec_key_get0_propq(ec); EVP_MD *fetched_md = NULL; if (out == NULL) { @@ -139,7 +140,7 @@ static int pkey_sm2_encrypt(EVP_PKEY_CTX *ctx, return 1; } - fetched_md = EVP_MD_fetch(libctx, EVP_MD_name(md), 0); + fetched_md = EVP_MD_fetch(libctx, EVP_MD_name(md), propq); if (fetched_md == NULL) return 0; ret = sm2_encrypt(ec, fetched_md, in, inlen, out, outlen); @@ -156,6 +157,7 @@ static int pkey_sm2_decrypt(EVP_PKEY_CTX *ctx, SM2_PKEY_CTX *dctx = ctx->data; const EVP_MD *md = (dctx->md == NULL) ? EVP_sm3() : dctx->md; OPENSSL_CTX *libctx = ec_key_get_libctx(ec); + const char *propq = ec_key_get0_propq(ec); EVP_MD *fetched_md = NULL; if (out == NULL) { @@ -165,7 +167,7 @@ static int pkey_sm2_decrypt(EVP_PKEY_CTX *ctx, return 1; } - fetched_md = EVP_MD_fetch(libctx, EVP_MD_name(md), 0); + fetched_md = EVP_MD_fetch(libctx, EVP_MD_name(md), propq); if (fetched_md == NULL) return 0; ret = sm2_decrypt(ec, fetched_md, in, inlen, out, outlen);