From: Michael Wallner Date: Tue, 19 Dec 2006 21:41:12 +0000 (+0000) Subject: - check CRYPTO_get_id_callback() if anyone else already set thread lock callbacks X-Git-Tag: RELEASE_1_0_0RC1~633 X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=88cd3100c7521567f4d835e95be667bb86530e29;p=php - check CRYPTO_get_id_callback() if anyone else already set thread lock callbacks --- diff --git a/ext/curl/interface.c b/ext/curl/interface.c index 0185f5f33c..2df4bdde0a 100644 --- a/ext/curl/interface.c +++ b/ext/curl/interface.c @@ -612,7 +612,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)); @@ -664,17 +664,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);