ID: 49372 Updated by: [email protected] Reported By: sergk at sergk dot org dot ua Status: Assigned Bug Type: cURL related Operating System: Debian GNU/Linux, kernel 2.6.30 PHP Version: 5.2.10 Assigned To: pajoye New Comment:
I said the fix, not the patch :) Previous Comments: ------------------------------------------------------------------------ [2009-08-26 20:21:15] [email protected] Please don't apply that patch, you can do it with single line change too.. if (uri->scheme && !strncasecmp("file", uri->scheme, sizeof("file"))) rather than having several lines changed for nothing. ------------------------------------------------------------------------ [2009-08-26 18:18:16] [email protected] Thanks for the script. An easy fix would be to update the Curl library to a more recent version (recommended). I will apply the fix shortly (need to fetch an old curl first). ------------------------------------------------------------------------ [2009-08-26 17:13:42] sergk at sergk dot org dot ua Yes, this one trigger segfault, but only in mod_php mode: <?PHP $curl = curl_init("www.php.net/manual/en/function.curl-init.php"); curl_exec($curl); curl_close($curl); ?> ------------------------------------------------------------------------ [2009-08-26 14:11:57] [email protected] Thanks for the patch. Do you have a small code to test it? I could quickly use it as phpt. ------------------------------------------------------------------------ [2009-08-26 13:35:57] sergk at sergk dot org dot ua this patch will fix bug: --- php-5.2.10.orig/ext/curl/interface.c 2009-06-15 12:38:11.000000000 +0000 +++ php-5.2.10/ext/curl/interface.c 2009-08-26 11:22:15.000000000 +0000 @@ -183,10 +183,12 @@ return 0; } - if (!strncasecmp("file", uri->scheme, sizeof("file"))) { - php_error_docref(NULL TSRMLS_CC, E_WARNING, "Protocol 'file' disabled in cURL"); - php_url_free(uri); - return 0; + if (uri->scheme != NULL) { + if (!strncasecmp("file", uri->scheme, sizeof("file")-1)) { + php_error_docref(NULL TSRMLS_CC, E_WARNING, "Protocol 'file' disabled in cURL"); + php_url_free(uri); + return 0; + } } php_url_free(uri); #endif ------------------------------------------------------------------------ The remainder of the comments for this report are too long. To view the rest of the comments, please view the bug report online at http://bugs.php.net/49372 -- Edit this bug report at http://bugs.php.net/?id=49372&edit=1
