From: Dr. Matthias St. Pierre Date: Sun, 8 Apr 2018 10:09:10 +0000 (+0200) Subject: DRBG: fix memory leak on error in rand_drbg_get_entropy() X-Git-Tag: OpenSSL_1_1_1-pre5~34 X-Git-Url: http://git.ipfire.org/?p=thirdparty%2Fopenssl.git;a=commitdiff_plain;h=63a65d16acca53622a08861cdde8fe0e79beb522 DRBG: fix memory leak on error in rand_drbg_get_entropy() Reviewed-by: Richard Levitte (Merged from https://github.com/openssl/openssl/pull/5918) --- diff --git a/crypto/rand/rand_lib.c b/crypto/rand/rand_lib.c index 3589e75853..6e98e4ddf8 100644 --- a/crypto/rand/rand_lib.c +++ b/crypto/rand/rand_lib.c @@ -229,7 +229,7 @@ size_t rand_drbg_get_entropy(RAND_DRBG *drbg, */ RANDerr(RAND_F_RAND_DRBG_GET_ENTROPY, RAND_R_PREDICTION_RESISTANCE_NOT_SUPPORTED); - return 0; + goto err; } /* Get entropy by polling system entropy sources. */ @@ -241,6 +241,7 @@ size_t rand_drbg_get_entropy(RAND_DRBG *drbg, *pout = rand_pool_detach(pool); } + err: rand_pool_free(pool); return ret; }