From: Pauli Date: Thu, 28 Jun 2018 23:55:23 +0000 (+1000) Subject: Check return from BN_set_word. X-Git-Tag: OpenSSL_1_1_1-pre9~217 X-Git-Url: https://git.librecmc.org/?a=commitdiff_plain;h=8eab767a718f44ccba9888eeb81a5328cff47bab;p=oweals%2Fopenssl.git Check return from BN_set_word. In ssl/t1_lib.c. Reviewed-by: Rich Salz (Merged from https://github.com/openssl/openssl/pull/6613) --- diff --git a/ssl/t1_lib.c b/ssl/t1_lib.c index 1826dd2bb3..abf523e49c 100644 --- a/ssl/t1_lib.c +++ b/ssl/t1_lib.c @@ -2309,13 +2309,16 @@ DH *ssl_get_auto_dh(SSL *s) if (dhp == NULL) return NULL; g = BN_new(); - if (g != NULL) - BN_set_word(g, 2); + if (g == NULL || !BN_set_word(g, 2)) { + DH_free(dhp); + BN_free(g); + return NULL; + } if (dh_secbits >= 192) p = BN_get_rfc3526_prime_8192(NULL); else p = BN_get_rfc3526_prime_3072(NULL); - if (p == NULL || g == NULL || !DH_set0_pqg(dhp, p, NULL, g)) { + if (p == NULL || !DH_set0_pqg(dhp, p, NULL, g)) { DH_free(dhp); BN_free(p); BN_free(g);