From a55af1e2719d2f0abac21a9a3db04f960b4fbd38 Mon Sep 17 00:00:00 2001 From: Bob Weinand Date: Thu, 12 Oct 2017 12:30:20 +0200 Subject: Fixed bug #75363 (openssl_x509_parse leaks memory) --- ext/openssl/openssl.c | 10 +--------- 1 file changed, 1 insertion(+), 9 deletions(-) (limited to 'ext') diff --git a/ext/openssl/openssl.c b/ext/openssl/openssl.c index 2107b9ba59..9784ac49a7 100644 --- a/ext/openssl/openssl.c +++ b/ext/openssl/openssl.c @@ -2168,7 +2168,6 @@ PHP_FUNCTION(openssl_x509_parse) { zval * zcert; X509 * cert = NULL; - zend_resource *certresource = NULL; int i, sig_nid; zend_bool useshortnames = 1; char * tmpstr; @@ -2188,7 +2187,7 @@ PHP_FUNCTION(openssl_x509_parse) if (zend_parse_parameters(ZEND_NUM_ARGS(), "z|b", &zcert, &useshortnames) == FAILURE) { return; } - cert = php_openssl_x509_from_zval(zcert, 0, &certresource); + cert = php_openssl_x509_from_zval(zcert, 0, NULL); if (cert == NULL) { RETURN_FALSE; } @@ -2298,9 +2297,6 @@ PHP_FUNCTION(openssl_x509_parse) add_assoc_stringl(&subitem, extname, bio_buf->data, bio_buf->length); } else { zval_dtor(return_value); - if (certresource == NULL && cert) { - X509_free(cert); - } BIO_free(bio_out); RETURN_FALSE; } @@ -2314,10 +2310,6 @@ PHP_FUNCTION(openssl_x509_parse) BIO_free(bio_out); } add_assoc_zval(return_value, "extensions", &subitem); - - if (certresource == NULL && cert) { - X509_free(cert); - } } /* }}} */ -- cgit v1.2.1