From 2beee146b407184258ae32fb0967e129a0b00098 Mon Sep 17 00:00:00 2001 From: Michael Wallner Date: Tue, 19 Dec 2006 21:41:25 +0000 Subject: [PATCH] MFH: check CRYPTO_get_id_callback() if anyone else already set thread lock callbacks --- ext/curl/interface.c | 9 ++------- 1 file changed, 2 insertions(+), 7 deletions(-) diff --git a/ext/curl/interface.c b/ext/curl/interface.c index 637d7d51ec..54e5f46e2c 100644 --- a/ext/curl/interface.c +++ b/ext/curl/interface.c @@ -614,7 +614,7 @@ PHP_MINIT_FUNCTION(curl) #endif #ifdef PHP_CURL_NEED_OPENSSL_TSL - { + if (!CRYPTO_get_id_callback()) { int i, c = CRYPTO_num_locks(); php_curl_openssl_tsl = malloc(c * sizeof(MUTEX_T)); @@ -666,17 +666,12 @@ PHP_MSHUTDOWN_FUNCTION(curl) php_unregister_url_stream_wrapper("https" TSRMLS_CC); php_unregister_url_stream_wrapper("ftp" TSRMLS_CC); php_unregister_url_stream_wrapper("ldap" TSRMLS_CC); -#endif -#ifdef PHP_CURL_NEED_OPENSSL_TSL - /* ensure there are valid callbacks set */ - CRYPTO_set_id_callback(php_curl_ssl_id); - CRYPTO_set_locking_callback(php_curl_ssl_lock); #endif curl_global_cleanup(); #ifdef PHP_CURL_NEED_OPENSSL_TSL if (php_curl_openssl_tsl) { int i, c = CRYPTO_num_locks(); - + CRYPTO_set_id_callback(NULL); CRYPTO_set_locking_callback(NULL); -- 2.40.0