From: Wez Furlong Date: Tue, 26 Oct 2004 09:28:34 +0000 (+0000) Subject: Fix for Bug #29418 (double free when openssl_csr_new fails). X-Git-Tag: php-5.0.3RC1~126 X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=af9a8dfaa38a590558a7523330466c7a53aa3ba3;p=php Fix for Bug #29418 (double free when openssl_csr_new fails). Also hook up MSHUTDOWN function which appears to have never been enabled. Patch by Kamesh Jayachandran --- diff --git a/ext/openssl/openssl.c b/ext/openssl/openssl.c index 3d8665b623..091b14ff77 100644 --- a/ext/openssl/openssl.c +++ b/ext/openssl/openssl.c @@ -135,7 +135,7 @@ zend_module_entry openssl_module_entry = { "openssl", openssl_functions, PHP_MINIT(openssl), - NULL, + PHP_MSHUTDOWN(openssl), NULL, NULL, PHP_MINFO(openssl), @@ -1675,6 +1675,12 @@ PHP_FUNCTION(openssl_csr_new) } } } + else { + if (!we_made_the_key) { + /* if we have not made the key we are not supposed to zap it by calling dispose! */ + req.priv_key = NULL; + } + } } } }