ssl_create_cipher_list: check whether push onto cipherstack succeeds Signed-off-by: Kurt Roeckx <kurt@roeckx.be> Reviewed-by: Richard Levitte <levitte@openssl.org>
diff --git a/ssl/ssl_ciph.c b/ssl/ssl_ciph.c index 464a767..a846c75 100644 --- a/ssl/ssl_ciph.c +++ b/ssl/ssl_ciph.c
@@ -1621,7 +1621,12 @@ if (curr->active) #endif { - sk_SSL_CIPHER_push(cipherstack, curr->cipher); + if (!sk_SSL_CIPHER_push(cipherstack, curr->cipher)) + { + OPENSSL_free(co_list); + sk_SSL_CIPHER_free(cipherstack); + return NULL; + } #ifdef CIPHER_DEBUG printf("<%s>\n",curr->cipher->name); #endif