From: Dr. David von Oheimb Date: Tue, 7 Dec 2021 16:49:05 +0000 (+0100) Subject: OSSL_CMP_MSG_read(): Fix mem leak on file read error X-Git-Tag: openssl-3.0.1~36 X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=4ed2db591a42fb99401f9b0ff17f6644797ae743;p=thirdparty%2Fopenssl.git OSSL_CMP_MSG_read(): Fix mem leak on file read error Reviewed-by: Paul Dale Reviewed-by: Tomas Mraz (Merged from https://github.com/openssl/openssl/pull/17225) (cherry picked from commit d580c2790f9f304533a3eda2a9cf6b8eb22830c3) --- diff --git a/crypto/cmp/cmp_msg.c b/crypto/cmp/cmp_msg.c index 10ef4cd922e..84a272fe2b0 100644 --- a/crypto/cmp/cmp_msg.c +++ b/crypto/cmp/cmp_msg.c @@ -1100,9 +1100,8 @@ OSSL_CMP_MSG *OSSL_CMP_MSG_read(const char *file, OSSL_LIB_CTX *libctx, return NULL; } - if ((bio = BIO_new_file(file, "rb")) == NULL) - return NULL; - if (d2i_OSSL_CMP_MSG_bio(bio, &msg) == NULL) { + if ((bio = BIO_new_file(file, "rb")) == NULL + || d2i_OSSL_CMP_MSG_bio(bio, &msg) == NULL) { OSSL_CMP_MSG_free(msg); msg = NULL; }