1 diff -urN php-4.4.2.org/ext/curl/curl.c php-4.4.2/ext/curl/curl.c
2 --- php-4.4.2.org/ext/curl/curl.c 2006-01-05 19:03:18.000000000 +0100
3 +++ php-4.4.2/ext/curl/curl.c 2006-01-25 22:23:03.429339500 +0100
8 +static void php_restore_callbacks(void);
10 /* {{{ PHP_MSHUTDOWN_FUNCTION
12 PHP_MSHUTDOWN_FUNCTION(curl)
14 php_unregister_url_stream_wrapper("ftp" TSRMLS_CC);
15 php_unregister_url_stream_wrapper("ldap" TSRMLS_CC);
17 + php_restore_callbacks();
18 curl_global_cleanup();
19 #ifdef PHP_CURL_NEED_SSL_TSL
20 php_curl_ssl_cleanup();
22 for (i = 0; i < c; ++i) {
23 php_curl_openssl_tsl[i] = tsrm_mutex_alloc();
26 - CRYPTO_set_id_callback(php_curl_ssl_id);
27 - CRYPTO_set_locking_callback(php_curl_ssl_lock);
29 + php_restore_callbacks();
32 static inline void php_curl_ssl_cleanup(void)
33 @@ -1489,6 +1491,17 @@
34 #endif /* PHP_CURL_NEED_OPENSSL_TSL */
37 +static void php_restore_callbacks(void) {
38 +#ifdef PHP_CURL_NEED_OPENSSL_TSL
39 + CRYPTO_set_id_callback(php_curl_ssl_id);
40 + CRYPTO_set_locking_callback(php_curl_ssl_lock);
42 + CRYPTO_set_id_callback(NULL);
43 + CRYPTO_set_locking_callback(NULL);
48 #ifdef PHP_CURL_NEED_GNUTLS_TSL
50 static int php_curl_ssl_mutex_create(void **m)