[PHP-CVS] cvs: php-src(PHP_5_2) / NEWS /ext/curl interface.c
iliaa Thu Jul 2 13:41:29 2009 UTC Modified files: (Branch: PHP_5_2) /php-src/ext/curl interface.c /php-srcNEWS Log: Fixed bug #48733 (CURLOPT_WRITEHEADER|CURLOPT_FILE|CURLOPT_STDERR warns on files that have been opened with r+). http://cvs.php.net/viewvc.cgi/php-src/ext/curl/interface.c?r1=1.62.2.14.2.58r2=1.62.2.14.2.59diff_format=u Index: php-src/ext/curl/interface.c diff -u php-src/ext/curl/interface.c:1.62.2.14.2.58 php-src/ext/curl/interface.c:1.62.2.14.2.59 --- php-src/ext/curl/interface.c:1.62.2.14.2.58 Sun Jun 28 10:00:28 2009 +++ php-src/ext/curl/interface.cThu Jul 2 13:41:29 2009 @@ -16,7 +16,7 @@ +--+ */ -/* $Id: interface.c,v 1.62.2.14.2.58 2009/06/28 10:00:28 pajoye Exp $ */ +/* $Id: interface.c,v 1.62.2.14.2.59 2009/07/02 13:41:29 iliaa Exp $ */ #define ZEND_INCLUDE_FULL_WINDOWS_HEADERS @@ -1436,7 +1436,7 @@ error = CURLE_OK; switch (option) { case CURLOPT_FILE: - if (((php_stream *) what)-mode[0] != 'r') { + if (((php_stream *) what)-mode[0] != 'r' || ((php_stream *) what)-mode[1] == '+') { zend_list_addref(Z_LVAL_PP(zvalue)); ch-handlers-write-fp = fp; ch-handlers-write-method = PHP_CURL_FILE; @@ -1447,7 +1447,7 @@ } break; case CURLOPT_WRITEHEADER: - if (((php_stream *) what)-mode[0] != 'r') { + if (((php_stream *) what)-mode[0] != 'r' || ((php_stream *) what)-mode[1] == '+') { zend_list_addref(Z_LVAL_PP(zvalue)); ch-handlers-write_header-fp = fp; ch-handlers-write_header-method = PHP_CURL_FILE; @@ -1463,7 +1463,7 @@ ch-handlers-read-fd = Z_LVAL_PP(zvalue); break; case CURLOPT_STDERR: - if (((php_stream *) what)-mode[0] != 'r') { + if (((php_stream *) what)-mode[0] != 'r' || ((php_stream *) what)-mode[1] == '+') { if (ch-handlers-std_err) { zval_ptr_dtor(ch-handlers-std_err); } http://cvs.php.net/viewvc.cgi/php-src/NEWS?r1=1.2027.2.547.2.1576r2=1.2027.2.547.2.1577diff_format=u Index: php-src/NEWS diff -u php-src/NEWS:1.2027.2.547.2.1576 php-src/NEWS:1.2027.2.547.2.1577 --- php-src/NEWS:1.2027.2.547.2.1576Wed Jul 1 18:46:53 2009 +++ php-src/NEWSThu Jul 2 13:41:29 2009 @@ -4,6 +4,8 @@ - Fixed regression in cURL extension that prevented flush of data to output defined as a file handle. (Ilia) +- Fixed bug #48733 (CURLOPT_WRITEHEADER|CURLOPT_FILE|CURLOPT_STDERR warns on + files that have been opened with r+). (Ilia) - Fixed bug #48709 (metaphone and 'wh'). (brettz9 at yahoo dot com, Felipe) - Fixed bug #48693 (Double declaration of __lambda_func when lambda wrongly formatted). (peter at lvp-media dot com, Felipe) -- PHP CVS Mailing List (http://www.php.net/) To unsubscribe, visit: http://www.php.net/unsub.php
[PHP-CVS] cvs: php-src(PHP_5_2) / NEWS /ext/curl interface.c /ext/curl/tests bug48514.phpt
felipe Fri Jun 12 20:50:58 2009 UTC Added files: (Branch: PHP_5_2) /php-src/ext/curl/tests bug48514.phpt Modified files: /php-srcNEWS /php-src/ext/curl interface.c Log: - MFH: Fixed bug #48514 (cURL extension uses same resource name for simple and multi APIs) http://cvs.php.net/viewvc.cgi/php-src/NEWS?r1=1.2027.2.547.2.1554r2=1.2027.2.547.2.1555diff_format=u Index: php-src/NEWS diff -u php-src/NEWS:1.2027.2.547.2.1554 php-src/NEWS:1.2027.2.547.2.1555 --- php-src/NEWS:1.2027.2.547.2.1554Thu Jun 11 12:13:54 2009 +++ php-src/NEWSFri Jun 12 20:50:58 2009 @@ -1,6 +1,8 @@ PHPNEWS ||| ?? Jun 2009, PHP 5.2.10 +- Fixed bug #48514 (cURL extension uses same resource name for simple and + multi APIs). (Felipe) 11 Jun 2009, PHP 5.2.10RC2 - Updated timezone database to version 2009.9 (2009i) (Derick) http://cvs.php.net/viewvc.cgi/php-src/ext/curl/interface.c?r1=1.62.2.14.2.55r2=1.62.2.14.2.56diff_format=u Index: php-src/ext/curl/interface.c diff -u php-src/ext/curl/interface.c:1.62.2.14.2.55 php-src/ext/curl/interface.c:1.62.2.14.2.56 --- php-src/ext/curl/interface.c:1.62.2.14.2.55 Thu Jun 11 09:49:57 2009 +++ php-src/ext/curl/interface.cFri Jun 12 20:50:58 2009 @@ -16,7 +16,7 @@ +--+ */ -/* $Id: interface.c,v 1.62.2.14.2.55 2009/06/11 09:49:57 tony2001 Exp $ */ +/* $Id: interface.c,v 1.62.2.14.2.56 2009/06/12 20:50:58 felipe Exp $ */ #define ZEND_INCLUDE_FULL_WINDOWS_HEADERS @@ -367,7 +367,7 @@ PHP_MINIT_FUNCTION(curl) { le_curl = zend_register_list_destructors_ex(_php_curl_close, NULL, curl, module_number); - le_curl_multi_handle = zend_register_list_destructors_ex(_php_curl_multi_close, NULL, curl, module_number); + le_curl_multi_handle = zend_register_list_destructors_ex(_php_curl_multi_close, NULL, curl_multi, module_number); /* See http://curl.haxx.se/lxr/source/docs/libcurl/symbols-in-versions or curl src/docs/libcurl/symbols-in-versions for a (almost) complete list http://cvs.php.net/viewvc.cgi/php-src/ext/curl/tests/bug48514.phpt?view=markuprev=1.1 Index: php-src/ext/curl/tests/bug48514.phpt +++ php-src/ext/curl/tests/bug48514.phpt --TEST-- Bug #48514 (cURL extension uses same resource name for simple and multi APIs) --FILE-- ?php $ch1 = curl_init(); var_dump($ch1); var_dump(get_resource_type($ch1)); $ch2 = curl_multi_init(); var_dump($ch2); var_dump(get_resource_type($ch2)); ? --EXPECTF-- resource(4) of type (curl) %string|unicode%(4) curl resource(5) of type (curl_multi) %string|unicode%(10) curl_multi -- PHP CVS Mailing List (http://www.php.net/) To unsubscribe, visit: http://www.php.net/unsub.php
[PHP-CVS] cvs: php-src(PHP_5_2) / NEWS /ext/curl interface.c
tony2001Thu Jun 11 09:49:57 2009 UTC Modified files: (Branch: PHP_5_2) /php-srcNEWS /php-src/ext/curl interface.c Log: MFH: fix bug #48518 (curl crashes when writing into invalid file handle) http://cvs.php.net/viewvc.cgi/php-src/NEWS?r1=1.2027.2.547.2.1550r2=1.2027.2.547.2.1551diff_format=u Index: php-src/NEWS diff -u php-src/NEWS:1.2027.2.547.2.1550 php-src/NEWS:1.2027.2.547.2.1551 --- php-src/NEWS:1.2027.2.547.2.1550Tue Jun 9 14:04:28 2009 +++ php-src/NEWSThu Jun 11 09:49:57 2009 @@ -4,6 +4,7 @@ - Updated timezone database to version 2009.9 (2009i) (Derick) - Added ignore_errors option to http fopen wrapper. (David Zulke, Sara) +- Fixed bug #48518 (curl crashes when writing into invalid file handle). (Tony) - Fixed bug #48469 (ldap_get_entries() leaks memory on empty search results). (Patrick) - Fixed bug #48456 (CPPFLAGS not restored properly in phpize.m4). http://cvs.php.net/viewvc.cgi/php-src/ext/curl/interface.c?r1=1.62.2.14.2.54r2=1.62.2.14.2.55diff_format=u Index: php-src/ext/curl/interface.c diff -u php-src/ext/curl/interface.c:1.62.2.14.2.54 php-src/ext/curl/interface.c:1.62.2.14.2.55 --- php-src/ext/curl/interface.c:1.62.2.14.2.54 Wed Jun 10 11:10:19 2009 +++ php-src/ext/curl/interface.cThu Jun 11 09:49:57 2009 @@ -16,7 +16,7 @@ +--+ */ -/* $Id: interface.c,v 1.62.2.14.2.54 2009/06/10 11:10:19 tony2001 Exp $ */ +/* $Id: interface.c,v 1.62.2.14.2.55 2009/06/11 09:49:57 tony2001 Exp $ */ #define ZEND_INCLUDE_FULL_WINDOWS_HEADERS @@ -1437,6 +1437,7 @@ switch (option) { case CURLOPT_FILE: if (((php_stream *) what)-mode[0] != 'r') { + zend_list_addref(Z_LVAL_PP(zvalue)); ch-handlers-write-fp = fp; ch-handlers-write-method = PHP_CURL_FILE; } else { @@ -1447,6 +1448,7 @@ break; case CURLOPT_WRITEHEADER: if (((php_stream *) what)-mode[0] != 'r') { + zend_list_addref(Z_LVAL_PP(zvalue)); ch-handlers-write_header-fp = fp; ch-handlers-write_header-method = PHP_CURL_FILE; } else { -- PHP CVS Mailing List (http://www.php.net/) To unsubscribe, visit: http://www.php.net/unsub.php
[PHP-CVS] cvs: php-src(PHP_5_2) / NEWS /ext/curl interface.c php_curl.h
janiTue May 26 15:50:44 2009 UTC Modified files: (Branch: PHP_5_2) /php-srcNEWS /php-src/ext/curl interface.c php_curl.h Log: MFH:- Fixed bug #48203 (Crash when CURLOPT_STDERR is set to regular file) http://cvs.php.net/viewvc.cgi/php-src/NEWS?r1=1.2027.2.547.2.1523r2=1.2027.2.547.2.1524diff_format=u Index: php-src/NEWS diff -u php-src/NEWS:1.2027.2.547.2.1523 php-src/NEWS:1.2027.2.547.2.1524 --- php-src/NEWS:1.2027.2.547.2.1523Tue May 26 14:38:34 2009 +++ php-src/NEWSTue May 26 15:50:43 2009 @@ -37,6 +37,7 @@ with RecursiveIteratorIterator leads to a segfault). (Scott) - Fixed bug #48204 (xmlwriter_open_uri() does not emit warnings on invalid paths). (Ilia) +- Fixed bug #48203 (Crash when CURLOPT_STDERR is set to regular file). (Jani) - Fixed bug #48202 (Out of Memory error message when passing invalid file path) (Pierre) - Fixed bug #48156 (Added support for lcov v1.7). (Ilia) http://cvs.php.net/viewvc.cgi/php-src/ext/curl/interface.c?r1=1.62.2.14.2.50r2=1.62.2.14.2.51diff_format=u Index: php-src/ext/curl/interface.c diff -u php-src/ext/curl/interface.c:1.62.2.14.2.50 php-src/ext/curl/interface.c:1.62.2.14.2.51 --- php-src/ext/curl/interface.c:1.62.2.14.2.50 Thu May 21 12:53:24 2009 +++ php-src/ext/curl/interface.cTue May 26 15:50:44 2009 @@ -16,7 +16,7 @@ +--+ */ -/* $Id: interface.c,v 1.62.2.14.2.50 2009/05/21 12:53:24 iliaa Exp $ */ +/* $Id: interface.c,v 1.62.2.14.2.51 2009/05/26 15:50:44 jani Exp $ */ #define ZEND_INCLUDE_FULL_WINDOWS_HEADERS @@ -370,7 +370,7 @@ le_curl_multi_handle = zend_register_list_destructors_ex(_php_curl_multi_close, NULL, curl, module_number); /* See http://curl.haxx.se/lxr/source/docs/libcurl/symbols-in-versions - or curl src/docs/libcurl/symbols-in-versions for a (almost) complete list + or curl src/docs/libcurl/symbols-in-versions for a (almost) complete list of options and which version they were introduced */ /* Constants for curl_setopt() */ @@ -1460,6 +1460,20 @@ ch-handlers-read-fp = fp; ch-handlers-read-fd = Z_LVAL_PP(zvalue); break; + case CURLOPT_STDERR: + if (((php_stream *) what)-mode[0] != 'r') { + if (ch-handlers-stderr) { + zval_ptr_dtor(ch-handlers-stderr); + } + zval_add_ref(zvalue); + ch-handlers-stderr = *zvalue; + zend_list_addref(Z_LVAL_PP(zvalue)); + } else { + php_error_docref(NULL TSRMLS_CC, E_WARNING, the provided file handle is not writable); + RETVAL_FALSE; + return 1; + } + /* break omitted intentionally */ default: error = curl_easy_setopt(ch-cp, option, fp); break; @@ -2046,6 +2060,11 @@ fprintf(stderr, DTOR CALLED, ch = %x\n, ch); #endif + /* Prevent crash inside cURL if passed file has already been closed */ + if (ch-handlers-stderr Z_REFCOUNT_P(ch-handlers-stderr) = 0) { + curl_easy_setopt(ch-cp, CURLOPT_STDERR, stderr); + } + curl_easy_cleanup(ch-cp); #if LIBCURL_VERSION_NUM 0x071101 zend_llist_clean(ch-to_free.str); @@ -2068,6 +2087,9 @@ if (ch-handlers-passwd) { zval_ptr_dtor(ch-handlers-passwd); } + if (ch-handlers-stderr) { + zval_ptr_dtor(ch-handlers-stderr); + } if (ch-header.str_len 0) { efree(ch-header.str); } http://cvs.php.net/viewvc.cgi/php-src/ext/curl/php_curl.h?r1=1.44.2.2.2.5r2=1.44.2.2.2.6diff_format=u Index: php-src/ext/curl/php_curl.h diff -u php-src/ext/curl/php_curl.h:1.44.2.2.2.5 php-src/ext/curl/php_curl.h:1.44.2.2.2.6 --- php-src/ext/curl/php_curl.h:1.44.2.2.2.5Wed Dec 31 11:17:36 2008 +++ php-src/ext/curl/php_curl.h Tue May 26 15:50:44 2009 @@ -17,7 +17,7 @@ +--+ */ -/* $Id: php_curl.h,v 1.44.2.2.2.5 2008/12/31 11:17:36 sebastian Exp $ */ +/* $Id: php_curl.h,v 1.44.2.2.2.6 2009/05/26 15:50:44 jani Exp $ */ #ifndef _PHP_CURL_H #define _PHP_CURL_H @@ -101,6 +101,7 @@ php_curl_write *write_header; php_curl_read *read;
Re: [PHP-CVS] cvs: php-src(PHP_5_2) / NEWS /ext/curl interface.c php_curl.h
On 26-May-09, at 11:50 AM, Jani Taskinen wrote: janiTue May 26 15:50:44 2009 UTC Modified files: (Branch: PHP_5_2) /php-src NEWS /php-src/ext/curlinterface.c php_curl.h Log: MFH:- Fixed bug #48203 (Crash when CURLOPT_STDERR is set to regular file) Good stuff. Ilia Alshanetsky -- PHP CVS Mailing List (http://www.php.net/) To unsubscribe, visit: http://www.php.net/unsub.php
[PHP-CVS] cvs: php-src(PHP_5_2) / NEWS /ext/curl interface.c
iliaa Thu May 21 12:53:24 2009 UTC Modified files: (Branch: PHP_5_2) /php-src/ext/curl interface.c /php-srcNEWS Log: MFB: Fixed bug #48207 (CURLOPT_(FILE|WRITEHEADER options do not error out when working with a non-writable stream) http://cvs.php.net/viewvc.cgi/php-src/ext/curl/interface.c?r1=1.62.2.14.2.49r2=1.62.2.14.2.50diff_format=u Index: php-src/ext/curl/interface.c diff -u php-src/ext/curl/interface.c:1.62.2.14.2.49 php-src/ext/curl/interface.c:1.62.2.14.2.50 --- php-src/ext/curl/interface.c:1.62.2.14.2.49 Wed May 20 09:26:20 2009 +++ php-src/ext/curl/interface.cThu May 21 12:53:24 2009 @@ -16,7 +16,7 @@ +--+ */ -/* $Id: interface.c,v 1.62.2.14.2.49 2009/05/20 09:26:20 tony2001 Exp $ */ +/* $Id: interface.c,v 1.62.2.14.2.50 2009/05/21 12:53:24 iliaa Exp $ */ #define ZEND_INCLUDE_FULL_WINDOWS_HEADERS @@ -1436,12 +1436,24 @@ error = CURLE_OK; switch (option) { case CURLOPT_FILE: - ch-handlers-write-fp = fp; - ch-handlers-write-method = PHP_CURL_FILE; + if (((php_stream *) what)-mode[0] != 'r') { + ch-handlers-write-fp = fp; + ch-handlers-write-method = PHP_CURL_FILE; + } else { + php_error_docref(NULL TSRMLS_CC, E_WARNING, the provided file handle is not writable); + RETVAL_FALSE; + return 1; + } break; case CURLOPT_WRITEHEADER: - ch-handlers-write_header-fp = fp; - ch-handlers-write_header-method = PHP_CURL_FILE; + if (((php_stream *) what)-mode[0] != 'r') { + ch-handlers-write_header-fp = fp; + ch-handlers-write_header-method = PHP_CURL_FILE; + } else { + php_error_docref(NULL TSRMLS_CC, E_WARNING, the provided file handle is not writable); + RETVAL_FALSE; + return 1; + } break; case CURLOPT_INFILE: zend_list_addref(Z_LVAL_PP(zvalue)); http://cvs.php.net/viewvc.cgi/php-src/NEWS?r1=1.2027.2.547.2.1515r2=1.2027.2.547.2.1516diff_format=u Index: php-src/NEWS diff -u php-src/NEWS:1.2027.2.547.2.1515 php-src/NEWS:1.2027.2.547.2.1516 --- php-src/NEWS:1.2027.2.547.2.1515Wed May 20 09:06:31 2009 +++ php-src/NEWSThu May 21 12:53:24 2009 @@ -29,6 +29,8 @@ - Fixed bug #48240 (DBA Segmentation fault dba_nextkey). (Felipe) - Fixed bug #48224 (Incorrect shuffle in array_rand). (Etienne) - Fixed bug #48221 (memory leak when passing invalid xslt parameter). (Felipe) +- Fixed bug #48207 (CURLOPT_(FILE|WRITEHEADER options do not error out when + working with a non-writable stream). (Ilia) - Fixed bug #48206 (Iterating over an invalid data structure with RecursiveIteratorIterator leads to a segfault). (Scott) - Fixed bug #48204 (xmlwriter_open_uri() does not emit warnings on invalid -- PHP CVS Mailing List (http://www.php.net/) To unsubscribe, visit: http://www.php.net/unsub.php
[PHP-CVS] cvs: php-src(PHP_5_2) / NEWS /ext/curl interface.c
felipe Mon Mar 16 15:09:52 2009 UTC Modified files: (Branch: PHP_5_2) /php-src/ext/curl interface.c /php-srcNEWS Log: - MFH: Fixed bug #47616 (curl keeps crashing) http://cvs.php.net/viewvc.cgi/php-src/ext/curl/interface.c?r1=1.62.2.14.2.42r2=1.62.2.14.2.43diff_format=u Index: php-src/ext/curl/interface.c diff -u php-src/ext/curl/interface.c:1.62.2.14.2.42 php-src/ext/curl/interface.c:1.62.2.14.2.43 --- php-src/ext/curl/interface.c:1.62.2.14.2.42 Fri Mar 13 19:43:49 2009 +++ php-src/ext/curl/interface.cMon Mar 16 15:09:51 2009 @@ -16,7 +16,7 @@ +--+ */ -/* $Id: interface.c,v 1.62.2.14.2.42 2009/03/13 19:43:49 stas Exp $ */ +/* $Id: interface.c,v 1.62.2.14.2.43 2009/03/16 15:09:51 felipe Exp $ */ #define ZEND_INCLUDE_FULL_WINDOWS_HEADERS @@ -1572,6 +1572,7 @@ } else { #if LIBCURL_VERSION_NUM = 0x071101 /* with curl 7.17.0 and later, we can use COPYPOSTFIELDS, but we have to provide size before */ + convert_to_string_ex(zvalue); error = curl_easy_setopt(ch-cp, CURLOPT_POSTFIELDSIZE, Z_STRLEN_PP(zvalue)); error = curl_easy_setopt(ch-cp, CURLOPT_COPYPOSTFIELDS, Z_STRVAL_PP(zvalue)); #else http://cvs.php.net/viewvc.cgi/php-src/NEWS?r1=1.2027.2.547.2.1439r2=1.2027.2.547.2.1440diff_format=u Index: php-src/NEWS diff -u php-src/NEWS:1.2027.2.547.2.1439 php-src/NEWS:1.2027.2.547.2.1440 --- php-src/NEWS:1.2027.2.547.2.1439Mon Mar 16 12:03:57 2009 +++ php-src/NEWSMon Mar 16 15:09:51 2009 @@ -9,6 +9,7 @@ - Fixed bug #47667 (ZipArchive::OVERWRITE seems to have no effect). (Mikko,Pierre) - Fixed bug #47639 (pg_copy_from() WARNING: nonstandard use of \\ in a string literal). (Ilia) +- Fixed bug #47616 (curl keeps crashing). (Felipe) - Fixed bug #47598 (FILTER_VALIDATE_EMAIL is locale aware). (Ilia) - Fixed bug #47546 (Default value for limit parameter in explode is 0, not -1). (Kalle) -- PHP CVS Mailing List (http://www.php.net/) To unsubscribe, visit: http://www.php.net/unsub.php
[PHP-CVS] cvs: php-src(PHP_5_2) / NEWS /ext/curl interface.c
iliaa Mon Jan 26 15:25:26 2009 UTC Modified files: (Branch: PHP_5_2) /php-src/ext/curl interface.c /php-srcNEWS Log: MFB: Fixed bug #47217 (content-type is not set properly for file uploads) http://cvs.php.net/viewvc.cgi/php-src/ext/curl/interface.c?r1=1.62.2.14.2.40r2=1.62.2.14.2.41diff_format=u Index: php-src/ext/curl/interface.c diff -u php-src/ext/curl/interface.c:1.62.2.14.2.40 php-src/ext/curl/interface.c:1.62.2.14.2.41 --- php-src/ext/curl/interface.c:1.62.2.14.2.40 Wed Dec 31 11:17:36 2008 +++ php-src/ext/curl/interface.cMon Jan 26 15:25:23 2009 @@ -16,7 +16,7 @@ +--+ */ -/* $Id: interface.c,v 1.62.2.14.2.40 2008/12/31 11:17:36 sebastian Exp $ */ +/* $Id: interface.c,v 1.62.2.14.2.41 2009/01/26 15:25:23 iliaa Exp $ */ #define ZEND_INCLUDE_FULL_WINDOWS_HEADERS @@ -1513,14 +1513,13 @@ return 1; } if (type) { - type++; error = curl_formadd(first, last, CURLFORM_COPYNAME, string_key, CURLFORM_NAMELENGTH, (long)string_key_len - 1, CURLFORM_FILE, postval, - CURLFORM_CONTENTTYPE, type, + CURLFORM_CONTENTTYPE, type + sizeof(;type=) - 1, CURLFORM_END); - *(type - 1) = ';'; + *type = ';'; } else { error = curl_formadd(first, last, CURLFORM_COPYNAME, string_key, http://cvs.php.net/viewvc.cgi/php-src/NEWS?r1=1.2027.2.547.2.1401r2=1.2027.2.547.2.1402diff_format=u Index: php-src/NEWS diff -u php-src/NEWS:1.2027.2.547.2.1401 php-src/NEWS:1.2027.2.547.2.1402 --- php-src/NEWS:1.2027.2.547.2.1401Mon Jan 26 11:09:11 2009 +++ php-src/NEWSMon Jan 26 15:25:25 2009 @@ -17,6 +17,8 @@ - Fixed bug in xml_error_string() which resulted in messages being off by one. (Scott) +- Fixed bug #47217 (content-type is not set properly for file uploads). + (Ilia) - Fixed bug #47174 (base64_decode() interprets pad char in mid string as terminator). (Ilia) - Fixed bug #47165 (Possible memory corruption when passing return value by -- PHP CVS Mailing List (http://www.php.net/) To unsubscribe, visit: http://www.php.net/unsub.php
[PHP-CVS] cvs: php-src(PHP_5_2) / NEWS /ext/curl interface.c php_curl.h
janiWed Dec 17 14:20:31 2008 UTC Modified files: (Branch: PHP_5_2) /php-srcNEWS /php-src/ext/curl interface.c php_curl.h Log: MFH:- Fixed bug #45161 (Reusing a curl handle leaks memory) http://cvs.php.net/viewvc.cgi/php-src/NEWS?r1=1.2027.2.547.2.1361r2=1.2027.2.547.2.1362diff_format=u Index: php-src/NEWS diff -u php-src/NEWS:1.2027.2.547.2.1361 php-src/NEWS:1.2027.2.547.2.1362 --- php-src/NEWS:1.2027.2.547.2.1361Sat Dec 13 13:37:58 2008 +++ php-src/NEWSWed Dec 17 14:20:30 2008 @@ -13,6 +13,7 @@ - Fixed bug #46739 (array returned by curl_getinfo should contain content_type key). (Mikko) - Fixed bug #46699 (xml_parse crash when parser is namespace aware). (Rob) +- Fixed bug #45161 (Reusing a curl handle leaks memory). (Mark Karpeles, Jani) - Fixed bug #35975 (Session cookie expires date format isn't the most compatible. Now matches that of setcookie()). (Scott) http://cvs.php.net/viewvc.cgi/php-src/ext/curl/interface.c?r1=1.62.2.14.2.38r2=1.62.2.14.2.39diff_format=u Index: php-src/ext/curl/interface.c diff -u php-src/ext/curl/interface.c:1.62.2.14.2.38 php-src/ext/curl/interface.c:1.62.2.14.2.39 --- php-src/ext/curl/interface.c:1.62.2.14.2.38 Thu Dec 4 13:13:41 2008 +++ php-src/ext/curl/interface.cWed Dec 17 14:20:30 2008 @@ -16,7 +16,7 @@ +--+ */ -/* $Id: interface.c,v 1.62.2.14.2.38 2008/12/04 13:13:41 mkoppanen Exp $ */ +/* $Id: interface.c,v 1.62.2.14.2.39 2008/12/17 14:20:30 jani Exp $ */ #define ZEND_INCLUDE_FULL_WINDOWS_HEADERS @@ -996,6 +996,7 @@ /* }}} */ #endif +#if LIBCURL_VERSION_NUM 0x071101 /* {{{ curl_free_string */ static void curl_free_string(void **string) @@ -1003,6 +1004,7 @@ efree(*string); } /* }}} */ +#endif /* {{{ curl_free_post */ @@ -1077,7 +1079,9 @@ memset((*ch)-err, 0, sizeof((*ch)-err)); +#if LIBCURL_VERSION_NUM 0x071101 zend_llist_init((*ch)-to_free.str, sizeof(char *), (llist_dtor_func_t) curl_free_string, 0); +#endif zend_llist_init((*ch)-to_free.slist, sizeof(struct curl_slist), (llist_dtor_func_t) curl_free_slist, 0); zend_llist_init((*ch)-to_free.post, sizeof(struct HttpPost), (llist_dtor_func_t) curl_free_post, 0); } @@ -1136,11 +1140,15 @@ #endif if (argc 0) { +#if LIBCURL_VERSION_NUM = 0x071100 + curl_easy_setopt(ch-cp, CURLOPT_URL, Z_STRVAL_PP(url)); +#else char *urlcopy; urlcopy = estrndup(Z_STRVAL_PP(url), Z_STRLEN_PP(url)); curl_easy_setopt(ch-cp, CURLOPT_URL, urlcopy); zend_llist_add_element(ch-to_free.str, urlcopy); +#endif } ZEND_REGISTER_RESOURCE(return_value, ch, le_curl); @@ -1206,9 +1214,11 @@ curl_easy_setopt(dupch-cp, CURLOPT_INFILE,(void *) dupch); curl_easy_setopt(dupch-cp, CURLOPT_WRITEHEADER, (void *) dupch); +#if LIBCURL_VERSION_NUM 0x071101 zend_llist_copy(dupch-to_free.str, ch-to_free.str); /* Don't try to free copied strings, they're free'd when the original handle is destroyed */ dupch-to_free.str.dtor = NULL; +#endif zend_llist_copy(dupch-to_free.slist, ch-to_free.slist); zend_llist_copy(dupch-to_free.post, ch-to_free.post); @@ -1331,7 +1341,9 @@ case CURLOPT_SSLENGINE_DEFAULT: case CURLOPT_SSLCERTTYPE: case CURLOPT_ENCODING: { +#if LIBCURL_VERSION_NUM 0x071100 char *copystr = NULL; +#endif convert_to_string_ex(zvalue); @@ -1339,9 +1351,14 @@ PHP_CURL_CHECK_OPEN_BASEDIR(Z_STRVAL_PP(zvalue), Z_STRLEN_PP(zvalue), 1); } +#if LIBCURL_VERSION_NUM = 0x071100 + /* Strings passed to libcurl as âchar *â arguments, are copied by the library... NOTE: before 7.17.0 strings were not copied. */ + error = curl_easy_setopt(ch-cp, option, Z_STRVAL_PP(zvalue)); +#else copystr = estrndup(Z_STRVAL_PP(zvalue), Z_STRLEN_PP(zvalue)); error = curl_easy_setopt(ch-cp, option, copystr); zend_llist_add_element(ch-to_free.str, copystr); +#endif break; } @@ -1532,6 +1549,11 @@ error = curl_easy_setopt(ch-cp, CURLOPT_HTTPPOST, first); } else { +#if LIBCURL_VERSION_NUM = 0x071101 + /* with curl 7.17.0 and later, we can use COPYPOSTFIELDS, but we have to provide size before */ + error = curl_easy_setopt(ch-cp, CURLOPT_POSTFIELDSIZE, Z_STRLEN_PP(zvalue)); + error = curl_easy_setopt(ch-cp, CURLOPT_COPYPOSTFIELDS, Z_STRVAL_PP(zvalue)); +#else
[PHP-CVS] cvs: php-src(PHP_5_2) / NEWS /ext/curl interface.c
iliaa Thu Nov 27 17:01:29 2008 UTC Modified files: (Branch: PHP_5_2) /php-src/ext/curl interface.c /php-srcNEWS Log: MFB: Fixed bug #46696 (cURL fails in upload files with specified content-type) http://cvs.php.net/viewvc.cgi/php-src/ext/curl/interface.c?r1=1.62.2.14.2.36r2=1.62.2.14.2.37diff_format=u Index: php-src/ext/curl/interface.c diff -u php-src/ext/curl/interface.c:1.62.2.14.2.36 php-src/ext/curl/interface.c:1.62.2.14.2.37 --- php-src/ext/curl/interface.c:1.62.2.14.2.36 Tue Jul 29 10:42:59 2008 +++ php-src/ext/curl/interface.cThu Nov 27 17:01:29 2008 @@ -16,7 +16,7 @@ +--+ */ -/* $Id: interface.c,v 1.62.2.14.2.36 2008/07/29 10:42:59 tony2001 Exp $ */ +/* $Id: interface.c,v 1.62.2.14.2.37 2008/11/27 17:01:29 iliaa Exp $ */ #define ZEND_INCLUDE_FULL_WINDOWS_HEADERS @@ -1481,17 +1481,37 @@ * must be explicitly cast to long in curl_formadd * use since curl needs a long not an int. */ if (*postval == '@') { + char *type; ++postval; + + if ((type = php_memnstr(postval, ;type=, sizeof(;type=) - 1, postval + strlen(postval { + *type = '\0'; + } /* safe_mode / open_basedir check */ if (php_check_open_basedir(postval TSRMLS_CC) || (PG(safe_mode) !php_checkuid(postval, rb+, CHECKUID_CHECK_MODE_PARAM))) { + if (type) { + *type = ';'; + } RETVAL_FALSE; return 1; } - error = curl_formadd(first, last, + if (type) { + type++; + error = curl_formadd(first, last, + CURLFORM_COPYNAME, string_key, + CURLFORM_NAMELENGTH, (long)string_key_len - 1, + CURLFORM_FILE, postval, + CURLFORM_CONTENTTYPE, type, + CURLFORM_END); + *(type - 1) = ';'; + } else { + error = curl_formadd(first, last, CURLFORM_COPYNAME, string_key, CURLFORM_NAMELENGTH, (long)string_key_len - 1, - CURLFORM_FILE, postval, + CURLFORM_FILE, postval, CURLFORM_END); + + } } else { error = curl_formadd(first, last, CURLFORM_COPYNAME, string_key, http://cvs.php.net/viewvc.cgi/php-src/NEWS?r1=1.2027.2.547.2.1334r2=1.2027.2.547.2.1335diff_format=u Index: php-src/NEWS diff -u php-src/NEWS:1.2027.2.547.2.1334 php-src/NEWS:1.2027.2.547.2.1335 --- php-src/NEWS:1.2027.2.547.2.1334Thu Nov 27 14:49:45 2008 +++ php-src/NEWSThu Nov 27 17:01:29 2008 @@ -4,6 +4,8 @@ - Upgraded PCRE to version 7.8 (Ilia) - Fixed memory leak inside readline_callback_handler_remove() function. (Felipe) +- Fixed bug #46696 (cURL fails in upload files with specified content-type). + (Ilia) - Fixed bug #46673 (stream_lock call with wrong paramater). (Arnaud) - Fixed bug #46649 (Setting array element with that same array produces inconsistent results). (Arnaud) -- PHP CVS Mailing List
[PHP-CVS] cvs: php-src(PHP_5_2) / NEWS /ext/curl interface.c
iliaa Sun Jan 6 17:12:30 2008 UTC Modified files: (Branch: PHP_5_2) /php-src/ext/curl interface.c /php-srcNEWS Log: Fixed a safe_mode bypass in cURL identified by Maksymilian Arciemowicz. http://cvs.php.net/viewvc.cgi/php-src/ext/curl/interface.c?r1=1.62.2.14.2.33r2=1.62.2.14.2.34diff_format=u Index: php-src/ext/curl/interface.c diff -u php-src/ext/curl/interface.c:1.62.2.14.2.33 php-src/ext/curl/interface.c:1.62.2.14.2.34 --- php-src/ext/curl/interface.c:1.62.2.14.2.33 Mon Dec 31 07:20:05 2007 +++ php-src/ext/curl/interface.cSun Jan 6 17:12:29 2008 @@ -16,7 +16,7 @@ +--+ */ -/* $Id: interface.c,v 1.62.2.14.2.33 2007/12/31 07:20:05 sebastian Exp $ */ +/* $Id: interface.c,v 1.62.2.14.2.34 2008/01/06 17:12:29 iliaa Exp $ */ #define ZEND_INCLUDE_FULL_WINDOWS_HEADERS @@ -173,7 +173,7 @@ php_curl_ret(__ret); \ } \ \ - if (!php_memnstr(str, tmp_url-path, strlen(tmp_url-path), str + len)) { \ + if (tmp_url-host || !php_memnstr(str, tmp_url-path, strlen(tmp_url-path), str + len)) { \ php_error_docref(NULL TSRMLS_CC, E_WARNING, URL '%s' contains unencoded control characters, str); \ php_url_free(tmp_url); \ php_curl_ret(__ret); \ http://cvs.php.net/viewvc.cgi/php-src/NEWS?r1=1.2027.2.547.2.1046r2=1.2027.2.547.2.1047diff_format=u Index: php-src/NEWS diff -u php-src/NEWS:1.2027.2.547.2.1046 php-src/NEWS:1.2027.2.547.2.1047 --- php-src/NEWS:1.2027.2.547.2.1046Wed Jan 2 19:20:15 2008 +++ php-src/NEWSSun Jan 6 17:12:29 2008 @@ -2,6 +2,8 @@ ||| ?? ??? 2008, PHP 5.2.6 - Fixed weired behavior in CGI parameter parsing. (Dmitry, Hannes Magnusson) +- Fixed a safe_mode bypass in cURL identified by Maksymilian Arciemowicz. + (Ilia) - Fixed bug #43663 (Extending PDO class with a __call() function doesn't work). (David Soria Parra) -- PHP CVS Mailing List (http://www.php.net/) To unsubscribe, visit: http://www.php.net/unsub.php
[PHP-CVS] cvs: php-src(PHP_5_2) / NEWS /ext/curl interface.c
iliaa Tue Dec 18 13:47:37 2007 UTC Modified files: (Branch: PHP_5_2) /php-src/ext/curl interface.c /php-srcNEWS Log: MFB: Fixed bug #43620 (Workaround for a bug inside libcurl 7.16.2 that can result in a crash) http://cvs.php.net/viewvc.cgi/php-src/ext/curl/interface.c?r1=1.62.2.14.2.31r2=1.62.2.14.2.32diff_format=u Index: php-src/ext/curl/interface.c diff -u php-src/ext/curl/interface.c:1.62.2.14.2.31 php-src/ext/curl/interface.c:1.62.2.14.2.32 --- php-src/ext/curl/interface.c:1.62.2.14.2.31 Tue Dec 4 08:56:14 2007 +++ php-src/ext/curl/interface.cTue Dec 18 13:47:37 2007 @@ -16,7 +16,7 @@ +--+ */ -/* $Id: interface.c,v 1.62.2.14.2.31 2007/12/04 08:56:14 tony2001 Exp $ */ +/* $Id: interface.c,v 1.62.2.14.2.32 2007/12/18 13:47:37 iliaa Exp $ */ #define ZEND_INCLUDE_FULL_WINDOWS_HEADERS @@ -153,7 +153,7 @@ #define CAAL(s, v) add_assoc_long_ex(return_value, s, sizeof(s), (long) v); #define CAAD(s, v) add_assoc_double_ex(return_value, s, sizeof(s), (double) v); -#define CAAS(s, v) add_assoc_string_ex(return_value, s, sizeof(s), (char *) v, 1); +#define CAAS(s, v) add_assoc_string_ex(return_value, s, sizeof(s), (char *) (v ? v : ), 1); #define CAAZ(s, v) add_assoc_zval_ex(return_value, s, sizeof(s), (zval *) v); #if defined(PHP_WIN32) || defined(__GNUC__) http://cvs.php.net/viewvc.cgi/php-src/NEWS?r1=1.2027.2.547.2.1035r2=1.2027.2.547.2.1036diff_format=u Index: php-src/NEWS diff -u php-src/NEWS:1.2027.2.547.2.1035 php-src/NEWS:1.2027.2.547.2.1036 --- php-src/NEWS:1.2027.2.547.2.1035Sun Dec 16 17:22:31 2007 +++ php-src/NEWSTue Dec 18 13:47:37 2007 @@ -3,6 +3,8 @@ ?? ??? 2008, PHP 5.2.6 - Fixed weired behavior in CGI parameter parsing. (Dmitry, Hannes Magnusson) +- Fixed bug #43620 (Workaround for a bug inside libcurl 7.16.2 that can result + in a crash). (Ilia) - Fixed bug #43606 (define missing depencies of the exif extension). (crrodriguez at suse dot de) - Fixed bug #43589 (a possible infinite loop in bz2_filter.c). (Greg) -- PHP CVS Mailing List (http://www.php.net/) To unsubscribe, visit: http://www.php.net/unsub.php
[PHP-CVS] cvs: php-src(PHP_5_2) / NEWS /ext/curl interface.c
janiFri Nov 16 14:19:35 2007 UTC Modified files: (Branch: PHP_5_2) /php-srcNEWS /php-src/ext/curl interface.c Log: MFH: - Fixed bug #43092 (curl_copy_handle() crashes with 32 chars long URL) http://cvs.php.net/viewvc.cgi/php-src/NEWS?r1=1.2027.2.547.2.1013r2=1.2027.2.547.2.1014diff_format=u Index: php-src/NEWS diff -u php-src/NEWS:1.2027.2.547.2.1013 php-src/NEWS:1.2027.2.547.2.1014 --- php-src/NEWS:1.2027.2.547.2.1013Fri Nov 16 12:28:34 2007 +++ php-src/NEWSFri Nov 16 14:19:35 2007 @@ -1,8 +1,10 @@ PHPNEWS ||| ?? ??? 2008, PHP 5.2.6 -- Fixed bug #43301 (mb_ereg*_replace() crashes when replacement string is invalid - PHP expression and 'e' option is used). (Jani) +- Fixed bug #43092 (curl_copy_handle() crashes with 32 chars long URL). + (Jani) +- Fixed bug #43301 (mb_ereg*_replace() crashes when replacement string is + invalid PHP expression and 'e' option is used). (Jani) - Fixed bug #43293 (Multiple segfaults in getopt()). (Hannes) - Fixed bug #43279 (pg_send_query_params() converts all elements in 'params' to strings). (Ilia) http://cvs.php.net/viewvc.cgi/php-src/ext/curl/interface.c?r1=1.62.2.14.2.29r2=1.62.2.14.2.30diff_format=u Index: php-src/ext/curl/interface.c diff -u php-src/ext/curl/interface.c:1.62.2.14.2.29 php-src/ext/curl/interface.c:1.62.2.14.2.30 --- php-src/ext/curl/interface.c:1.62.2.14.2.29 Sat Oct 13 11:35:35 2007 +++ php-src/ext/curl/interface.cFri Nov 16 14:19:35 2007 @@ -16,7 +16,7 @@ +--+ */ -/* $Id: interface.c,v 1.62.2.14.2.29 2007/10/13 11:35:35 bjori Exp $ */ +/* $Id: interface.c,v 1.62.2.14.2.30 2007/11/16 14:19:35 jani Exp $ */ #define ZEND_INCLUDE_FULL_WINDOWS_HEADERS @@ -1074,9 +1074,9 @@ memset((*ch)-err, 0, sizeof((*ch)-err)); - zend_llist_init((*ch)-to_free.str, sizeof(char *), (void(*)(void *)) curl_free_string, 0); - zend_llist_init((*ch)-to_free.slist, sizeof(struct curl_slist), (void(*)(void *)) curl_free_slist, 0); - zend_llist_init((*ch)-to_free.post, sizeof(struct HttpPost), (void(*)(void *)) curl_free_post, 0); + zend_llist_init((*ch)-to_free.str, sizeof(char *), (llist_dtor_func_t) curl_free_string, 0); + zend_llist_init((*ch)-to_free.slist, sizeof(struct curl_slist), (llist_dtor_func_t) curl_free_slist, 0); + zend_llist_init((*ch)-to_free.post, sizeof(struct HttpPost), (llist_dtor_func_t) curl_free_post, 0); } /* }}} */ @@ -1204,6 +1204,8 @@ curl_easy_setopt(dupch-cp, CURLOPT_WRITEHEADER, (void *) dupch); zend_llist_copy(dupch-to_free.str, ch-to_free.str); + /* Don't try to free copied strings, they're free'd when the original handle is destroyed */ + dupch-to_free.str.dtor = NULL; zend_llist_copy(dupch-to_free.slist, ch-to_free.slist); zend_llist_copy(dupch-to_free.post, ch-to_free.post); -- PHP CVS Mailing List (http://www.php.net/) To unsubscribe, visit: http://www.php.net/unsub.php
[PHP-CVS] cvs: php-src(PHP_5_2) / NEWS /ext/curl interface.c
tony2001Wed Jul 4 13:34:23 2007 UTC Modified files: (Branch: PHP_5_2) /php-srcNEWS /php-src/ext/curl interface.c Log: MFH: add CURLINFO_PRIVATE CURLOPT_PRIVATE patch by Andrey A. Belashkov http://cvs.php.net/viewvc.cgi/php-src/NEWS?r1=1.2027.2.547.2.815r2=1.2027.2.547.2.816diff_format=u Index: php-src/NEWS diff -u php-src/NEWS:1.2027.2.547.2.815 php-src/NEWS:1.2027.2.547.2.816 --- php-src/NEWS:1.2027.2.547.2.815 Wed Jul 4 07:45:10 2007 +++ php-src/NEWSWed Jul 4 13:34:23 2007 @@ -23,6 +23,8 @@ Tony) - Added missing format validator to unpack() function. (Ilia) - Added missing error check inside bcpowmod(). (Ilia) +- Added CURLOPT_PRIVATE CURLINFO_PRIVATE constants. + (Andrey A. Belashkov, Tony) - Fixed var_export() to use the new H modifier so that it can generate parseable PHP code for floats, independent of the locale. (Derick) http://cvs.php.net/viewvc.cgi/php-src/ext/curl/interface.c?r1=1.62.2.14.2.26r2=1.62.2.14.2.27diff_format=u Index: php-src/ext/curl/interface.c diff -u php-src/ext/curl/interface.c:1.62.2.14.2.26 php-src/ext/curl/interface.c:1.62.2.14.2.27 --- php-src/ext/curl/interface.c:1.62.2.14.2.26 Tue May 22 08:39:20 2007 +++ php-src/ext/curl/interface.cWed Jul 4 13:34:23 2007 @@ -16,7 +16,7 @@ +--+ */ -/* $Id: interface.c,v 1.62.2.14.2.26 2007/05/22 08:39:20 pollita Exp $ */ +/* $Id: interface.c,v 1.62.2.14.2.27 2007/07/04 13:34:23 tony2001 Exp $ */ #define ZEND_INCLUDE_FULL_WINDOWS_HEADERS @@ -482,6 +482,8 @@ REGISTER_CURL_CONSTANT(CURLOPT_FTP_CREATE_MISSING_DIRS); #endif + REGISTER_CURL_CONSTANT(CURLOPT_PRIVATE); + /* Constants effecting the way CURLOPT_CLOSEPOLICY works */ REGISTER_CURL_CONSTANT(CURLCLOSEPOLICY_LEAST_RECENTLY_USED); REGISTER_CURL_CONSTANT(CURLCLOSEPOLICY_LEAST_TRAFFIC); @@ -511,6 +513,7 @@ REGISTER_CURL_CONSTANT(CURLINFO_REDIRECT_TIME); REGISTER_CURL_CONSTANT(CURLINFO_REDIRECT_COUNT); REGISTER_CURL_CONSTANT(CURLINFO_HEADER_OUT); + REGISTER_CURL_CONSTANT(CURLINFO_PRIVATE); /* cURL protocol constants (curl_version) */ REGISTER_CURL_CONSTANT(CURL_VERSION_IPV6); @@ -1299,6 +1302,7 @@ } error = curl_easy_setopt(ch-cp, option, Z_LVAL_PP(zvalue)); break; + case CURLOPT_PRIVATE: case CURLOPT_URL: case CURLOPT_PROXY: case CURLOPT_USERPWD: @@ -1802,6 +1806,7 @@ } else { option = Z_LVAL_PP(zoption); switch (option) { + case CURLINFO_PRIVATE: case CURLINFO_EFFECTIVE_URL: case CURLINFO_CONTENT_TYPE: { char *s_code = NULL; -- PHP CVS Mailing List (http://www.php.net/) To unsubscribe, visit: http://www.php.net/unsub.php
[PHP-CVS] cvs: php-src(PHP_5_2) / NEWS /ext/curl interface.c
tony2001Fri Jan 19 15:38:51 2007 UTC Modified files: (Branch: PHP_5_2) /php-srcNEWS /php-src/ext/curl interface.c Log: MFH: fix #40169 (CURLOPT_TCP_NODELAY only available in curl = 7.11.2) http://cvs.php.net/viewvc.cgi/php-src/NEWS?r1=1.2027.2.547.2.503r2=1.2027.2.547.2.504diff_format=u Index: php-src/NEWS diff -u php-src/NEWS:1.2027.2.547.2.503 php-src/NEWS:1.2027.2.547.2.504 --- php-src/NEWS:1.2027.2.547.2.503 Fri Jan 19 00:13:49 2007 +++ php-src/NEWSFri Jan 19 15:38:50 2007 @@ -1,6 +1,8 @@ PHPNEWS ||| ?? Jan 2007, PHP 5.2.1RC4 +- Fixed bug #40169 (CURLOPT_TCP_NODELAY only available in curl = 7.11.2). + (Tony) 18 Jan 2007, PHP 5.2.1RC3 - Added read-timeout context option timeout for HTTP streams. (Hannes, http://cvs.php.net/viewvc.cgi/php-src/ext/curl/interface.c?r1=1.62.2.14.2.20r2=1.62.2.14.2.21diff_format=u Index: php-src/ext/curl/interface.c diff -u php-src/ext/curl/interface.c:1.62.2.14.2.20 php-src/ext/curl/interface.c:1.62.2.14.2.21 --- php-src/ext/curl/interface.c:1.62.2.14.2.20 Tue Jan 9 23:13:05 2007 +++ php-src/ext/curl/interface.cFri Jan 19 15:38:51 2007 @@ -16,7 +16,7 @@ +--+ */ -/* $Id: interface.c,v 1.62.2.14.2.20 2007/01/09 23:13:05 pollita Exp $ */ +/* $Id: interface.c,v 1.62.2.14.2.21 2007/01/19 15:38:51 tony2001 Exp $ */ #define ZEND_INCLUDE_FULL_WINDOWS_HEADERS @@ -452,7 +452,9 @@ REGISTER_CURL_CONSTANT(CURLOPT_PROXYPORT); REGISTER_CURL_CONSTANT(CURLOPT_UNRESTRICTED_AUTH); REGISTER_CURL_CONSTANT(CURLOPT_FTP_USE_EPRT); +#if LIBCURL_VERSION_NUM 0x070b01 /* CURLOPT_TCP_NODELAY is available since curl 7.11.2 */ REGISTER_CURL_CONSTANT(CURLOPT_TCP_NODELAY); +#endif REGISTER_CURL_CONSTANT(CURLOPT_HTTP200ALIASES); REGISTER_CURL_CONSTANT(CURL_TIMECOND_IFMODSINCE); REGISTER_CURL_CONSTANT(CURL_TIMECOND_IFUNMODSINCE); @@ -1264,10 +1266,12 @@ case CURLOPT_PORT: case CURLOPT_AUTOREFERER: case CURLOPT_COOKIESESSION: +#if LIBCURL_VERSION_NUM 0x070b01 /* CURLOPT_TCP_NODELAY is available since curl 7.11.2 */ case CURLOPT_TCP_NODELAY: convert_to_long_ex(zvalue); error = curl_easy_setopt(ch-cp, option, Z_LVAL_PP(zvalue)); break; +#endif case CURLOPT_FOLLOWLOCATION: convert_to_long_ex(zvalue); if ((PG(open_basedir) *PG(open_basedir)) || PG(safe_mode)) { -- PHP CVS Mailing List (http://www.php.net/) To unsubscribe, visit: http://www.php.net/unsub.php
[PHP-CVS] cvs: php-src(PHP_5_2) / NEWS /ext/curl interface.c
pollita Tue Jan 9 23:13:05 2007 UTC Modified files: (Branch: PHP_5_2) /php-src/ext/curl interface.c /php-srcNEWS Log: MFH: Add CURLOPT_TCP_NODELAY constant http://cvs.php.net/viewvc.cgi/php-src/ext/curl/interface.c?r1=1.62.2.14.2.19r2=1.62.2.14.2.20diff_format=u Index: php-src/ext/curl/interface.c diff -u php-src/ext/curl/interface.c:1.62.2.14.2.19 php-src/ext/curl/interface.c:1.62.2.14.2.20 --- php-src/ext/curl/interface.c:1.62.2.14.2.19 Mon Jan 1 09:35:48 2007 +++ php-src/ext/curl/interface.cTue Jan 9 23:13:05 2007 @@ -16,7 +16,7 @@ +--+ */ -/* $Id: interface.c,v 1.62.2.14.2.19 2007/01/01 09:35:48 sebastian Exp $ */ +/* $Id: interface.c,v 1.62.2.14.2.20 2007/01/09 23:13:05 pollita Exp $ */ #define ZEND_INCLUDE_FULL_WINDOWS_HEADERS @@ -452,6 +452,7 @@ REGISTER_CURL_CONSTANT(CURLOPT_PROXYPORT); REGISTER_CURL_CONSTANT(CURLOPT_UNRESTRICTED_AUTH); REGISTER_CURL_CONSTANT(CURLOPT_FTP_USE_EPRT); + REGISTER_CURL_CONSTANT(CURLOPT_TCP_NODELAY); REGISTER_CURL_CONSTANT(CURLOPT_HTTP200ALIASES); REGISTER_CURL_CONSTANT(CURL_TIMECOND_IFMODSINCE); REGISTER_CURL_CONSTANT(CURL_TIMECOND_IFUNMODSINCE); @@ -1263,6 +1264,7 @@ case CURLOPT_PORT: case CURLOPT_AUTOREFERER: case CURLOPT_COOKIESESSION: + case CURLOPT_TCP_NODELAY: convert_to_long_ex(zvalue); error = curl_easy_setopt(ch-cp, option, Z_LVAL_PP(zvalue)); break; http://cvs.php.net/viewvc.cgi/php-src/NEWS?r1=1.2027.2.547.2.483r2=1.2027.2.547.2.484diff_format=u Index: php-src/NEWS diff -u php-src/NEWS:1.2027.2.547.2.483 php-src/NEWS:1.2027.2.547.2.484 --- php-src/NEWS:1.2027.2.547.2.483 Tue Jan 9 18:50:45 2007 +++ php-src/NEWSTue Jan 9 23:13:05 2007 @@ -1,6 +1,7 @@ PHPNEWS ||| ?? Jan 2007, PHP 5.2.1RC3 +- Added CURLOPT_TCP_NODELAY constant to Curl extension. (Sara) - Improved proc_open(). Now on Windows it can run external commands not through CMD.EXE. (Dmitry) - Fixed bug #40076 (zend_alloc.c: Value of enumeration constant must be in -- PHP CVS Mailing List (http://www.php.net/) To unsubscribe, visit: http://www.php.net/unsub.php
[PHP-CVS] cvs: php-src(PHP_5_2) / NEWS /ext/curl interface.c
iliaa Tue Dec 26 16:55:56 2006 UTC Modified files: (Branch: PHP_5_2) /php-src/ext/curl interface.c /php-srcNEWS Log: Fixed bug #39878 (CURL doesn't compile on Sun Studio Pro). http://cvs.php.net/viewvc.cgi/php-src/ext/curl/interface.c?r1=1.62.2.14.2.16r2=1.62.2.14.2.17diff_format=u Index: php-src/ext/curl/interface.c diff -u php-src/ext/curl/interface.c:1.62.2.14.2.16 php-src/ext/curl/interface.c:1.62.2.14.2.17 --- php-src/ext/curl/interface.c:1.62.2.14.2.16 Tue Dec 19 21:41:25 2006 +++ php-src/ext/curl/interface.cTue Dec 26 16:55:56 2006 @@ -16,7 +16,7 @@ +--+ */ -/* $Id: interface.c,v 1.62.2.14.2.16 2006/12/19 21:41:25 mike Exp $ */ +/* $Id: interface.c,v 1.62.2.14.2.17 2006/12/26 16:55:56 iliaa Exp $ */ #define ZEND_INCLUDE_FULL_WINDOWS_HEADERS @@ -156,6 +156,12 @@ #define CAAS(s, v) add_assoc_string_ex(return_value, s, sizeof(s), (char *) v, 1); #define CAAZ(s, v) add_assoc_zval_ex(return_value, s, sizeof(s), (zval *) v); +#if defined(PHP_WIN32) || defined(__GNUC__) + #define php_curl_ret(__ret) RETVAL_FALSE; return __ret; +#else + #define php_curl_ret(__ret) RETVAL_FALSE; return; +#endif + #define PHP_CURL_CHECK_OPEN_BASEDIR(str, len, __ret) \ if (((PG(open_basedir) *PG(open_basedir)) || PG(safe_mode)) \ strncasecmp(str, file:, sizeof(file:) - 1) == 0) \ @@ -164,22 +170,19 @@ \ if (!(tmp_url = php_url_parse_ex(str, len))) { \ php_error_docref(NULL TSRMLS_CC, E_WARNING, Invalid URL '%s', str); \ - RETVAL_FALSE; \ - return __ret; \ - } \ + php_curl_ret(__ret); \ + } \ \ if (php_memnstr(str, tmp_url-path, strlen(tmp_url-path), str + len)) {\ php_error_docref(NULL TSRMLS_CC, E_WARNING, URL '%s' contains unencoded control characters., str);\ - RETVAL_FALSE; \ - return __ret; \ + php_curl_ret(__ret); \ } \ \ if (tmp_url-query || tmp_url-fragment || php_check_open_basedir(tmp_url-path TSRMLS_CC) || \ (PG(safe_mode) !php_checkuid(tmp_url-path, rb+, CHECKUID_CHECK_MODE_PARAM)) \ ) { \ php_url_free(tmp_url); \ - RETVAL_FALSE; \ - return __ret; \ + php_curl_ret(__ret); \ }
[PHP-CVS] cvs: php-src(PHP_5_2) / NEWS /ext/curl interface.c
iliaa Fri Nov 3 14:53:14 2006 UTC Modified files: (Branch: PHP_5_2) /php-src/ext/curl interface.c /php-srcNEWS Log: Fixed bug #39354 (Allow building of curl extension against libcurl 7.16.0) http://cvs.php.net/viewvc.cgi/php-src/ext/curl/interface.c?r1=1.62.2.14.2.12r2=1.62.2.14.2.13diff_format=u Index: php-src/ext/curl/interface.c diff -u php-src/ext/curl/interface.c:1.62.2.14.2.12 php-src/ext/curl/interface.c:1.62.2.14.2.13 --- php-src/ext/curl/interface.c:1.62.2.14.2.12 Tue Oct 10 23:12:59 2006 +++ php-src/ext/curl/interface.cFri Nov 3 14:53:14 2006 @@ -16,7 +16,7 @@ +--+ */ -/* $Id: interface.c,v 1.62.2.14.2.12 2006/10/10 23:12:59 iliaa Exp $ */ +/* $Id: interface.c,v 1.62.2.14.2.13 2006/11/03 14:53:14 iliaa Exp $ */ #define ZEND_INCLUDE_FULL_WINDOWS_HEADERS @@ -369,7 +369,9 @@ REGISTER_CURL_CONSTANT(CURLOPT_FTPAPPEND); REGISTER_CURL_CONSTANT(CURLOPT_NETRC); REGISTER_CURL_CONSTANT(CURLOPT_FOLLOWLOCATION); +#if CURLOPT_FTPASCII != 0 REGISTER_CURL_CONSTANT(CURLOPT_FTPASCII); +#endif REGISTER_CURL_CONSTANT(CURLOPT_PUT); #if CURLOPT_MUTE != 0 REGISTER_CURL_CONSTANT(CURLOPT_MUTE); @@ -409,7 +411,9 @@ REGISTER_CURL_CONSTANT(CURLOPT_FILETIME); REGISTER_CURL_CONSTANT(CURLOPT_WRITEFUNCTION); REGISTER_CURL_CONSTANT(CURLOPT_READFUNCTION); +#if CURLOPT_PASSWDFUNCTION != 0 REGISTER_CURL_CONSTANT(CURLOPT_PASSWDFUNCTION); +#endif REGISTER_CURL_CONSTANT(CURLOPT_HEADERFUNCTION); REGISTER_CURL_CONSTANT(CURLOPT_MAXREDIRS); REGISTER_CURL_CONSTANT(CURLOPT_MAXCONNECTS); @@ -1157,12 +1161,13 @@ dupch-handlers-write_header-fp = ch-handlers-write_header-fp; dupch-handlers-read-fp = ch-handlers-read-fp; dupch-handlers-read-fd = ch-handlers-read-fd; - +#if CURLOPT_PASSWDDATA != 0 if (ch-handlers-passwd) { zval_add_ref(ch-handlers-passwd); dupch-handlers-passwd = ch-handlers-passwd; curl_easy_setopt(ch-cp, CURLOPT_PASSWDDATA, (void *) dupch); } +#endif if (ch-handlers-write-func_name) { zval_add_ref(ch-handlers-write-func_name); dupch-handlers-write-func_name = ch-handlers-write-func_name; http://cvs.php.net/viewvc.cgi/php-src/NEWS?r1=1.2027.2.547.2.321r2=1.2027.2.547.2.322diff_format=u Index: php-src/NEWS diff -u php-src/NEWS:1.2027.2.547.2.321 php-src/NEWS:1.2027.2.547.2.322 --- php-src/NEWS:1.2027.2.547.2.321 Fri Nov 3 13:54:49 2006 +++ php-src/NEWSFri Nov 3 14:53:14 2006 @@ -5,6 +5,8 @@ . Fixed a bug when callback function returns a non-modified value. . Added filter support for $_SERVER in cgi/apache2 sapis. . Make sure PHP_SELF is filtered in Apache 1 sapi. +- Fixed bug #39354 (Allow building of curl extension against libcurl 7.16.0) + (Ilia) - Fixed bug #39265 (Fixed path handling inside mod_files.sh). (michal dot taborsky at gmail dot com, Ilia) - Fixed bug #39215 (Inappropriate close of stdin/stdout/stderr). (Wez,Ilia) -- PHP CVS Mailing List (http://www.php.net/) To unsubscribe, visit: http://www.php.net/unsub.php
[PHP-CVS] cvs: php-src(PHP_5_2) / NEWS /ext/curl interface.c
iliaa Tue Oct 10 23:13:00 2006 UTC Modified files: (Branch: PHP_5_2) /php-src/ext/curl interface.c /php-srcNEWS Log: Fixed bug #39034 (curl_exec() with return transfer returns TRUE on empty files). http://cvs.php.net/viewvc.cgi/php-src/ext/curl/interface.c?r1=1.62.2.14.2.11r2=1.62.2.14.2.12diff_format=u Index: php-src/ext/curl/interface.c diff -u php-src/ext/curl/interface.c:1.62.2.14.2.11 php-src/ext/curl/interface.c:1.62.2.14.2.12 --- php-src/ext/curl/interface.c:1.62.2.14.2.11 Sun Oct 8 22:38:48 2006 +++ php-src/ext/curl/interface.cTue Oct 10 23:12:59 2006 @@ -16,7 +16,7 @@ +--+ */ -/* $Id: interface.c,v 1.62.2.14.2.11 2006/10/08 22:38:48 iliaa Exp $ */ +/* $Id: interface.c,v 1.62.2.14.2.12 2006/10/10 23:12:59 iliaa Exp $ */ #define ZEND_INCLUDE_FULL_WINDOWS_HEADERS @@ -1671,7 +1671,11 @@ RETURN_STRINGL(ch-handlers-write-buf.c, ch-handlers-write-buf.len, 1); } --ch-uses; - RETURN_TRUE; + if (ch-handlers-write-method == PHP_CURL_RETURN) { + RETURN_EMPTY_STRING(); + } else { + RETURN_TRUE; + } } /* }}} */ http://cvs.php.net/viewvc.cgi/php-src/NEWS?r1=1.2027.2.547.2.297r2=1.2027.2.547.2.298diff_format=u Index: php-src/NEWS diff -u php-src/NEWS:1.2027.2.547.2.297 php-src/NEWS:1.2027.2.547.2.298 --- php-src/NEWS:1.2027.2.547.2.297 Tue Oct 10 17:32:50 2006 +++ php-src/NEWSTue Oct 10 23:12:59 2006 @@ -4,6 +4,8 @@ - Fixed PECL bug #8816 (issue in php_oci_statement_fetch with more than one piecewise column) (jeff at badtz-maru dot com, Tony) - Fixed bug #39067 (getDeclaringClass() and private properties). (Tony) +- Fixed bug #39034 (curl_exec() with return transfer returns TRUE on empty + files). (Ilia) - Fixed bug #38198 (possible crash when COM reports an exception). (Ilia) - Fixed bug #37262 (var_export() does not escape \0 character). (Ilia) -- PHP CVS Mailing List (http://www.php.net/) To unsubscribe, visit: http://www.php.net/unsub.php
[PHP-CVS] cvs: php-src(PHP_5_2) / NEWS /ext/curl interface.c
iliaa Mon Sep 18 16:11:50 2006 UTC Modified files: (Branch: PHP_5_2) /php-srcNEWS /php-src/ext/curl interface.c Log: Fixed bug #38574 (missing curl constants and improper constant detection). http://cvs.php.net/viewvc.cgi/php-src/NEWS?r1=1.2027.2.547.2.254r2=1.2027.2.547.2.255diff_format=u Index: php-src/NEWS diff -u php-src/NEWS:1.2027.2.547.2.254 php-src/NEWS:1.2027.2.547.2.255 --- php-src/NEWS:1.2027.2.547.2.254 Sat Sep 16 13:57:17 2006 +++ php-src/NEWSMon Sep 18 16:11:50 2006 @@ -3,6 +3,8 @@ ?? Sep 2006, PHP 5.2.0 - Fixed bug #38844 (curl_easy_strerror() is defined only since cURL 7.12.0). (Tony) +- Fixed bug #38574 (missing curl constants and improper constant detection). + (Ilia) 14 Sep 2006, PHP 5.2.0RC4 - Added DSA key generation support to openssl_pkey_new(), FR #38731 http://cvs.php.net/viewvc.cgi/php-src/ext/curl/interface.c?r1=1.62.2.14.2.9r2=1.62.2.14.2.10diff_format=u Index: php-src/ext/curl/interface.c diff -u php-src/ext/curl/interface.c:1.62.2.14.2.9 php-src/ext/curl/interface.c:1.62.2.14.2.10 --- php-src/ext/curl/interface.c:1.62.2.14.2.9 Sat Sep 9 20:04:50 2006 +++ php-src/ext/curl/interface.cMon Sep 18 16:11:50 2006 @@ -16,7 +16,7 @@ +--+ */ -/* $Id: interface.c,v 1.62.2.14.2.9 2006/09/09 20:04:50 bjori Exp $ */ +/* $Id: interface.c,v 1.62.2.14.2.10 2006/09/18 16:11:50 iliaa Exp $ */ #define ZEND_INCLUDE_FULL_WINDOWS_HEADERS @@ -563,15 +563,9 @@ REGISTER_CURL_CONSTANT(CURLE_SSL_CIPHER); REGISTER_CURL_CONSTANT(CURLE_SSL_CACERT); REGISTER_CURL_CONSTANT(CURLE_BAD_CONTENT_ENCODING); -#ifdef CURLE_LDAP_INVALID_URL REGISTER_CURL_CONSTANT(CURLE_LDAP_INVALID_URL); -#endif -#ifdef CURLE_FILESIZE_EXCEEDED REGISTER_CURL_CONSTANT(CURLE_FILESIZE_EXCEEDED); -#endif -#ifdef CURLE_FTP_SSL_FAILED REGISTER_CURL_CONSTANT(CURLE_FTP_SSL_FAILED); -#endif REGISTER_CURL_CONSTANT(CURLPROXY_HTTP); REGISTER_CURL_CONSTANT(CURLPROXY_SOCKS5); @@ -593,13 +587,21 @@ REGISTER_CURL_CONSTANT(CURLMSG_DONE); -#ifdef CURLOPT_FTPSSLAUTH +#if LIBCURL_VERSION_NUM = 0x070c02 REGISTER_CURL_CONSTANT(CURLOPT_FTPSSLAUTH); REGISTER_CURL_CONSTANT(CURLFTPAUTH_DEFAULT); REGISTER_CURL_CONSTANT(CURLFTPAUTH_SSL); REGISTER_CURL_CONSTANT(CURLFTPAUTH_TLS); #endif +#if LIBCURL_VERSION_NUM 0x070b00 + REGISTER_CURL_CONSTANT(CURLOPT_FTP_SSL); + REGISTER_CURL_CONSTANT(CURLFTPSSL_NONE); + REGISTER_CURL_CONSTANT(CURLFTPSSL_TRY); + REGISTER_CURL_CONSTANT(CURLFTPSSL_CONTROL); + REGISTER_CURL_CONSTANT(CURLFTPSSL_ALL); +#endif + #ifdef PHP_CURL_NEED_OPENSSL_TSL { int i, c = CRYPTO_num_locks(); @@ -1240,9 +1242,12 @@ case CURLOPT_PROXYAUTH: #endif -#ifdef CURLOPT_FTPSSLAUTH +#if LIBCURL_VERSION_NUM = 0x070c02 case CURLOPT_FTPSSLAUTH: #endif +#if LIBCURL_VERSION_NUM 0x070b00 + case CURLOPT_FTP_SSL: +#endif case CURLOPT_UNRESTRICTED_AUTH: case CURLOPT_PORT: case CURLOPT_AUTOREFERER: -- PHP CVS Mailing List (http://www.php.net/) To unsubscribe, visit: http://www.php.net/unsub.php
[PHP-CVS] cvs: php-src(PHP_5_2) / NEWS /ext/curl interface.c
iliaa Tue Aug 29 17:10:40 2006 UTC Modified files: (Branch: PHP_5_2) /php-srcNEWS /php-src/ext/curl interface.c Log: Fixed bug #38637 (curl_copy_handle() fails to fully copy the cURL handle). http://cvs.php.net/viewvc.cgi/php-src/NEWS?r1=1.2027.2.547.2.224r2=1.2027.2.547.2.225diff_format=u Index: php-src/NEWS diff -u php-src/NEWS:1.2027.2.547.2.224 php-src/NEWS:1.2027.2.547.2.225 --- php-src/NEWS:1.2027.2.547.2.224 Mon Aug 28 23:38:49 2006 +++ php-src/NEWSTue Aug 29 17:10:40 2006 @@ -5,6 +5,8 @@ SoapServer::setClass() method). (Dmitry) - Added support for hexadecimal entity in imagettftext() for the bundled GD. (Pierre) +- Fixed bug #38637 (curl_copy_handle() fails to fully copy the cURL handle). + (Tony, Ilia) - Fixed bug #38624 (Strange warning when incrementing an object property and exception is thrown from __get method). (Tony) - Fixed bug #38543 (shutdown_executor() may segfault when memory_limit is too http://cvs.php.net/viewvc.cgi/php-src/ext/curl/interface.c?r1=1.62.2.14.2.7r2=1.62.2.14.2.8diff_format=u Index: php-src/ext/curl/interface.c diff -u php-src/ext/curl/interface.c:1.62.2.14.2.7 php-src/ext/curl/interface.c:1.62.2.14.2.8 --- php-src/ext/curl/interface.c:1.62.2.14.2.7 Thu Aug 10 14:40:13 2006 +++ php-src/ext/curl/interface.cTue Aug 29 17:10:40 2006 @@ -16,7 +16,7 @@ +--+ */ -/* $Id: interface.c,v 1.62.2.14.2.7 2006/08/10 14:40:13 iliaa Exp $ */ +/* $Id: interface.c,v 1.62.2.14.2.8 2006/08/29 17:10:40 iliaa Exp $ */ #define ZEND_INCLUDE_FULL_WINDOWS_HEADERS @@ -1139,7 +1139,7 @@ } alloc_curl_handle(dupch); - TSRMLS_SET_CTX(ch-thread_ctx); + TSRMLS_SET_CTX(dupch-thread_ctx); dupch-cp = cp; dupch-handlers-write-method = ch-handlers-write-method; @@ -1147,6 +1147,38 @@ dupch-handlers-read-method = ch-handlers-read-method; dupch-handlers-write_header-method = ch-handlers-write_header-method; + dupch-handlers-write-fp = ch-handlers-write-fp; + dupch-handlers-write_header-fp = ch-handlers-write_header-fp; + dupch-handlers-read-fp = ch-handlers-read-fp; + dupch-handlers-read-fd = ch-handlers-read-fd; + + if (ch-handlers-passwd) { + zval_add_ref(ch-handlers-passwd); + dupch-handlers-passwd = ch-handlers-passwd; + curl_easy_setopt(ch-cp, CURLOPT_PASSWDDATA, (void *) dupch); + } + if (ch-handlers-write-func_name) { + zval_add_ref(ch-handlers-write-func_name); + dupch-handlers-write-func_name = ch-handlers-write-func_name; + } + if (ch-handlers-read-func_name) { + zval_add_ref(ch-handlers-read-func_name); + dupch-handlers-read-func_name = ch-handlers-read-func_name; + } + if (ch-handlers-write_header-func_name) { + zval_add_ref(ch-handlers-write_header-func_name); + dupch-handlers-write_header-func_name = ch-handlers-write_header-func_name; + } + + curl_easy_setopt(dupch-cp, CURLOPT_ERRORBUFFER, dupch-err.str); + curl_easy_setopt(dupch-cp, CURLOPT_FILE, (void *) dupch); + curl_easy_setopt(dupch-cp, CURLOPT_INFILE,(void *) dupch); + curl_easy_setopt(dupch-cp, CURLOPT_WRITEHEADER, (void *) dupch); + + zend_llist_copy(dupch-to_free.str, ch-to_free.str); + zend_llist_copy(dupch-to_free.slist, ch-to_free.slist); + zend_llist_copy(dupch-to_free.post, ch-to_free.post); + ZEND_REGISTER_RESOURCE(return_value, dupch, le_curl); dupch-id = Z_LVAL_P(return_value); } -- PHP CVS Mailing List (http://www.php.net/) To unsubscribe, visit: http://www.php.net/unsub.php
[PHP-CVS] cvs: php-src(PHP_5_2) / NEWS /ext/curl interface.c
iliaa Sun May 21 16:31:57 2006 UTC Modified files: (Branch: PHP_5_2) /php-srcNEWS /php-src/ext/curl interface.c Log: Added control character checks for cURL extension's open_basedir/safe_mode checks. http://cvs.php.net/viewcvs.cgi/php-src/NEWS?r1=1.2027.2.547.2.37r2=1.2027.2.547.2.38diff_format=u Index: php-src/NEWS diff -u php-src/NEWS:1.2027.2.547.2.37 php-src/NEWS:1.2027.2.547.2.38 --- php-src/NEWS:1.2027.2.547.2.37 Fri May 19 14:52:22 2006 +++ php-src/NEWSSun May 21 16:31:56 2006 @@ -1,6 +1,8 @@ PHPNEWS ||| ?? ??? 2006, PHP 5.2.0 +- Added control character checks for cURL extension's open_basedir/safe_mode + checks. (Ilia) - Disable realpath cache when open_basedir or safe_mode are enabled on a per-request basis. (Ilia) - Optimized zend_try/zend_catch macroses (eliminated memcpy()). (Dmitry) http://cvs.php.net/viewcvs.cgi/php-src/ext/curl/interface.c?r1=1.62.2.14r2=1.62.2.14.2.1diff_format=u Index: php-src/ext/curl/interface.c diff -u php-src/ext/curl/interface.c:1.62.2.14 php-src/ext/curl/interface.c:1.62.2.14.2.1 --- php-src/ext/curl/interface.c:1.62.2.14 Thu Apr 13 11:26:10 2006 +++ php-src/ext/curl/interface.cSun May 21 16:31:57 2006 @@ -16,7 +16,7 @@ +--+ */ -/* $Id: interface.c,v 1.62.2.14 2006/04/13 11:26:10 tony2001 Exp $ */ +/* $Id: interface.c,v 1.62.2.14.2.1 2006/05/21 16:31:57 iliaa Exp $ */ #define ZEND_INCLUDE_FULL_WINDOWS_HEADERS @@ -161,11 +161,16 @@ strncasecmp(str, file:, sizeof(file:) - 1) == 0) \ { \ php_url *tmp_url; \ - \ + \ if (!(tmp_url = php_url_parse_ex(str, len))) { \ php_error_docref(NULL TSRMLS_CC, E_WARNING, Invalid url '%s', str); \ RETURN_FALSE; \ } \ + \ + if (php_memnstr(str, tmp_url-path, strlen(tmp_url-path), str + len)) {\ + php_error_docref(NULL TSRMLS_CC, E_WARNING, Url '%s' contains unencoded control characters., str);\ + RETURN_FALSE; \ + } \ \ if (tmp_url-query || tmp_url-fragment || php_check_open_basedir(tmp_url-path TSRMLS_CC) || \ (PG(safe_mode) !php_checkuid(tmp_url-path, rb+, CHECKUID_CHECK_MODE_PARAM)) \ -- PHP CVS Mailing List (http://www.php.net/) To unsubscribe, visit: http://www.php.net/unsub.php