mirror of https://github.com/openssl/openssl.git
check the return value of BN_dup() in rsa_lib.c:1248
Reviewed-by: Paul Dale <pauli@openssl.org>
Reviewed-by: Tomas Mraz <tomas@openssl.org>
(Merged from https://github.com/openssl/openssl/pull/17168)
(cherry picked from commit 9d1a27051d)
This commit is contained in:
parent
8a1ff913be
commit
54cb418400
|
|
@ -1244,8 +1244,11 @@ int EVP_PKEY_CTX_set1_rsa_keygen_pubexp(EVP_PKEY_CTX *ctx, BIGNUM *pubexp)
|
||||||
* When we're dealing with a provider, there's no need to duplicate
|
* When we're dealing with a provider, there's no need to duplicate
|
||||||
* pubexp, as it gets copied when transforming to an OSSL_PARAM anyway.
|
* pubexp, as it gets copied when transforming to an OSSL_PARAM anyway.
|
||||||
*/
|
*/
|
||||||
if (evp_pkey_ctx_is_legacy(ctx))
|
if (evp_pkey_ctx_is_legacy(ctx)) {
|
||||||
pubexp = BN_dup(pubexp);
|
pubexp = BN_dup(pubexp);
|
||||||
|
if (pubexp == NULL)
|
||||||
|
return 0;
|
||||||
|
}
|
||||||
ret = EVP_PKEY_CTX_ctrl(ctx, EVP_PKEY_RSA, EVP_PKEY_OP_KEYGEN,
|
ret = EVP_PKEY_CTX_ctrl(ctx, EVP_PKEY_RSA, EVP_PKEY_OP_KEYGEN,
|
||||||
EVP_PKEY_CTRL_RSA_KEYGEN_PUBEXP, 0, pubexp);
|
EVP_PKEY_CTRL_RSA_KEYGEN_PUBEXP, 0, pubexp);
|
||||||
if (evp_pkey_ctx_is_legacy(ctx) && ret <= 0)
|
if (evp_pkey_ctx_is_legacy(ctx) && ret <= 0)
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue