From: Joshua Rogers Date: Sat, 4 Apr 2026 09:20:01 +0000 (+0800) Subject: ecp_s390x_nistp.c: reorder nullptr checks X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=c629d597bc9e6ff2e31d3101eb9a1e92f022b23a;p=thirdparty%2Fopenssl.git ecp_s390x_nistp.c: reorder nullptr checks Reviewed-by: Eugene Syromiatnikov Reviewed-by: Frederik Wedel-Heinen Reviewed-by: Paul Dale Reviewed-by: Tomas Mraz MergeDate: Wed Apr 15 11:01:22 2026 (Merged from https://github.com/openssl/openssl/pull/30648) --- diff --git a/crypto/ec/ecp_s390x_nistp.c b/crypto/ec/ecp_s390x_nistp.c index 4b3fbb2f796..a405625d673 100644 --- a/crypto/ec/ecp_s390x_nistp.c +++ b/crypto/ec/ecp_s390x_nistp.c @@ -150,10 +150,25 @@ static ECDSA_SIG *ecdsa_s390x_nistp_sign_sig(const unsigned char *dgst, return NULL; } + if (eckey == NULL) { + ERR_raise(ERR_LIB_EC, EC_R_MISSING_PARAMETERS); + return NULL; + } + group = EC_KEY_get0_group(eckey); + if (group == NULL) { + ERR_raise(ERR_LIB_EC, EC_R_MISSING_PARAMETERS); + return NULL; + } + order = EC_GROUP_get0_order(group); + if (order == NULL) { + ERR_raise(ERR_LIB_EC, EC_R_MISSING_PARAMETERS); + return NULL; + } + privkey = EC_KEY_get0_private_key(eckey); - if (group == NULL || order == NULL || privkey == NULL) { + if (privkey == NULL) { ERR_raise(ERR_LIB_EC, EC_R_MISSING_PARAMETERS); return NULL; } @@ -295,9 +310,19 @@ static int ecdsa_s390x_nistp_verify_sig(const unsigned char *dgst, int dgstlen, return -1; } + if (sig == NULL || eckey == NULL) { + ERR_raise(ERR_LIB_EC, EC_R_MISSING_PARAMETERS); + return -1; + } + group = EC_KEY_get0_group(eckey); + if (group == NULL) { + ERR_raise(ERR_LIB_EC, EC_R_MISSING_PARAMETERS); + return -1; + } + pubkey = EC_KEY_get0_public_key(eckey); - if (eckey == NULL || group == NULL || pubkey == NULL || sig == NULL) { + if (pubkey == NULL) { ERR_raise(ERR_LIB_EC, EC_R_MISSING_PARAMETERS); return -1; }