From: Peiwei Hu Date: Mon, 6 Dec 2021 09:33:42 +0000 (+0800) Subject: bio_enc.c: add memory allocation check X-Git-Tag: openssl-3.2.0-alpha1~3245 X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=684326d3bd3131debcdc410790e8dcf16f96103f;p=thirdparty%2Fopenssl.git bio_enc.c: add memory allocation check Reviewed-by: Tomas Mraz Reviewed-by: Paul Dale (Merged from https://github.com/openssl/openssl/pull/17206) --- diff --git a/test/bio_enc_test.c b/test/bio_enc_test.c index 8ece2b67c82..0b95fae1cd5 100644 --- a/test/bio_enc_test.c +++ b/test/bio_enc_test.c @@ -51,6 +51,8 @@ static int do_bio_cipher(const EVP_CIPHER* cipher, const unsigned char* key, /* reference output for single-chunk operation */ b = BIO_new(BIO_f_cipher()); + if (!TEST_ptr(b)) + return 0; if (!TEST_true(BIO_set_cipher(b, cipher, key, iv, ENCRYPT))) return 0; BIO_push(b, BIO_new_mem_buf(inp, DATA_SIZE)); @@ -60,6 +62,8 @@ static int do_bio_cipher(const EVP_CIPHER* cipher, const unsigned char* key, /* perform split operations and compare to reference */ for (i = 1; i < lref; i++) { b = BIO_new(BIO_f_cipher()); + if (!TEST_ptr(b)) + return 0; if (!TEST_true(BIO_set_cipher(b, cipher, key, iv, ENCRYPT))) { TEST_info("Split encrypt failed @ operation %d", i); return 0; @@ -87,6 +91,8 @@ static int do_bio_cipher(const EVP_CIPHER* cipher, const unsigned char* key, int delta; b = BIO_new(BIO_f_cipher()); + if (!TEST_ptr(b)) + return 0; if (!TEST_true(BIO_set_cipher(b, cipher, key, iv, ENCRYPT))) { TEST_info("Small chunk encrypt failed @ operation %d", i); return 0; @@ -108,6 +114,8 @@ static int do_bio_cipher(const EVP_CIPHER* cipher, const unsigned char* key, /* reference output for single-chunk operation */ b = BIO_new(BIO_f_cipher()); + if (!TEST_ptr(b)) + return 0; if (!TEST_true(BIO_set_cipher(b, cipher, key, iv, DECRYPT))) return 0; /* Use original reference output as input */ @@ -123,6 +131,8 @@ static int do_bio_cipher(const EVP_CIPHER* cipher, const unsigned char* key, /* perform split operations and compare to reference */ for (i = 1; i < lref; i++) { b = BIO_new(BIO_f_cipher()); + if (!TEST_ptr(b)) + return 0; if (!TEST_true(BIO_set_cipher(b, cipher, key, iv, DECRYPT))) { TEST_info("Split decrypt failed @ operation %d", i); return 0; @@ -150,6 +160,8 @@ static int do_bio_cipher(const EVP_CIPHER* cipher, const unsigned char* key, int delta; b = BIO_new(BIO_f_cipher()); + if (!TEST_ptr(b)) + return 0; if (!TEST_true(BIO_set_cipher(b, cipher, key, iv, DECRYPT))) { TEST_info("Small chunk decrypt failed @ operation %d", i); return 0;