From 9d277028e5493df564d346d3d092b718973aec86 Mon Sep 17 00:00:00 2001 From: Derick Rethans Date: Tue, 26 Mar 2002 07:40:00 +0000 Subject: [PATCH] - MFH for passphrase bug --- ext/openssl/openssl.c | 7 +++++-- ext/openssl/tests/001.phpt | 17 +++++------------ 2 files changed, 10 insertions(+), 14 deletions(-) diff --git a/ext/openssl/openssl.c b/ext/openssl/openssl.c index fb95b14cfd..e3d92a4ec9 100644 --- a/ext/openssl/openssl.c +++ b/ext/openssl/openssl.c @@ -140,6 +140,9 @@ static int le_csr; static void php_pkey_free(zend_rsrc_list_entry *rsrc TSRMLS_DC) { EVP_PKEY *pkey = (EVP_PKEY *)rsrc->ptr; + + assert(pkey != NULL); + EVP_PKEY_free(pkey); } @@ -1684,7 +1687,7 @@ static EVP_PKEY * php_openssl_evp_from_zval(zval ** val, int public_key, char * X509_free(cert); if (key && makeresource && resourceval) { - *resourceval = zend_list_insert(key, le_key); + *resourceval = ZEND_REGISTER_RESOURCE(NULL, key, le_key); } return key; } @@ -1911,7 +1914,7 @@ PHP_FUNCTION(openssl_pkey_get_private) return; Z_TYPE_P(return_value) = IS_RESOURCE; - pkey = php_openssl_evp_from_zval(&cert, 0, NULL, 1, &Z_LVAL_P(return_value) TSRMLS_CC); + pkey = php_openssl_evp_from_zval(&cert, 0, passphrase, 1, &Z_LVAL_P(return_value) TSRMLS_CC); if (pkey == NULL) { RETURN_FALSE; diff --git a/ext/openssl/tests/001.phpt b/ext/openssl/tests/001.phpt index 06a9c04bf5..ceedefbeb7 100644 --- a/ext/openssl/tests/001.phpt +++ b/ext/openssl/tests/001.phpt @@ -1,22 +1,15 @@ ---TEST-- -OpenSSL private key functions ---SKIPIF-- - ---POST-- ---GET-- ---FILE--