From: Tomas Mraz Date: Mon, 19 Apr 2021 13:50:35 +0000 (+0200) Subject: Fix potential NULL dereference in ossl_ec_key_dup() X-Git-Tag: openssl-3.0.0-alpha16~161 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=db6b1266ab30945de2d14fbc62e9c3c308cce897;p=thirdparty%2Fopenssl.git Fix potential NULL dereference in ossl_ec_key_dup() Fixes Coverity ID 1476282 Reviewed-by: Paul Dale (Merged from https://github.com/openssl/openssl/pull/14928) --- diff --git a/crypto/ec/ec_backend.c b/crypto/ec/ec_backend.c index e9843eb4ac7..581c006fd03 100644 --- a/crypto/ec/ec_backend.c +++ b/crypto/ec/ec_backend.c @@ -532,17 +532,17 @@ int ossl_ec_key_is_foreign(const EC_KEY *ec) EC_KEY *ossl_ec_key_dup(const EC_KEY *src, int selection) { - EC_KEY *ret = ossl_ec_key_new_method_int(src->libctx, src->propq, - src->engine); - - if (ret == NULL) - return NULL; + EC_KEY *ret; if (src == NULL) { ERR_raise(ERR_LIB_EC, ERR_R_PASSED_NULL_PARAMETER); - goto err; + return NULL; } + if ((ret = ossl_ec_key_new_method_int(src->libctx, src->propq, + src->engine)) == NULL) + return NULL; + /* copy the parameters */ if (src->group != NULL && (selection & OSSL_KEYMGMT_SELECT_DOMAIN_PARAMETERS) != 0) {