From: slontis Date: Thu, 23 Jun 2022 03:10:55 +0000 (+1000) Subject: kdf objects missing a return if malloc fails. X-Git-Tag: openssl-3.2.0-alpha1~2459 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=7260709e9ef155c8b3fccaa32e8ba496a3059905;p=thirdparty%2Fopenssl.git kdf objects missing a return if malloc fails. I have searched through all references of ERR_R_MALLOC_FAILURE for any other instances.. Reviewed-by: Tomas Mraz Reviewed-by: Paul Dale Reviewed-by: Hugo Landau (Merged from https://github.com/openssl/openssl/pull/18638) --- diff --git a/providers/implementations/kdfs/tls1_prf.c b/providers/implementations/kdfs/tls1_prf.c index 96eab4ea41c..fd46283d3a7 100644 --- a/providers/implementations/kdfs/tls1_prf.c +++ b/providers/implementations/kdfs/tls1_prf.c @@ -103,8 +103,10 @@ static void *kdf_tls1_prf_new(void *provctx) if (!ossl_prov_is_running()) return NULL; - if ((ctx = OPENSSL_zalloc(sizeof(*ctx))) == NULL) + if ((ctx = OPENSSL_zalloc(sizeof(*ctx))) == NULL) { ERR_raise(ERR_LIB_PROV, ERR_R_MALLOC_FAILURE); + return NULL; + } ctx->provctx = provctx; return ctx; } diff --git a/providers/implementations/kdfs/x942kdf.c b/providers/implementations/kdfs/x942kdf.c index 487c3295f2d..51b2ebf26b4 100644 --- a/providers/implementations/kdfs/x942kdf.c +++ b/providers/implementations/kdfs/x942kdf.c @@ -333,10 +333,12 @@ static void *x942kdf_new(void *provctx) KDF_X942 *ctx; if (!ossl_prov_is_running()) - return 0; + return NULL; - if ((ctx = OPENSSL_zalloc(sizeof(*ctx))) == NULL) + if ((ctx = OPENSSL_zalloc(sizeof(*ctx))) == NULL) { ERR_raise(ERR_LIB_PROV, ERR_R_MALLOC_FAILURE); + return NULL; + } ctx->provctx = provctx; ctx->use_keybits = 1; return ctx;