[PHP-CVS] svn: php/phpruntests/trunk/src/testrun/ rtPhpTestRun.php
zoe Wed, 22 Jul 2009 10:44:08 + Revision: http://svn.php.net/viewvc?view=revisionrevision=284591 Log: Adding PHP test executable name to the env that is passed to the test runner Changed paths: U php/phpruntests/trunk/src/testrun/rtPhpTestRun.php Modified: php/phpruntests/trunk/src/testrun/rtPhpTestRun.php === --- php/phpruntests/trunk/src/testrun/rtPhpTestRun.php 2009-07-22 10:38:48 UTC (rev 284590) +++ php/phpruntests/trunk/src/testrun/rtPhpTestRun.php 2009-07-22 10:44:08 UTC (rev 284591) @@ -31,6 +31,7 @@ $runConfiguration-getUserEnvironment(); $runConfiguration-configure(); + //Check help message if($runConfiguration-hasCommandLineOption('help') || $runConfiguration-hasCommandLineOption('h')) { echo rtText::get('help'); @@ -43,6 +44,12 @@ // $preConditionList-check($this-commandLine, $this-environmentVariables); $preConditionList-check($runConfiguration); + +//Write PHP executable name to the array of env variables. Some +//test cases expect to be able to use it. +$php = $runConfiguration-getSetting('PhpExecutable'); +$runConfiguration-setEnvironmentVariable('TEST_PHP_EXECUTABLE', $php); + if ($runConfiguration-getSetting('TestDirectories') != null) { -- PHP CVS Mailing List (http://www.php.net/) To unsubscribe, visit: http://www.php.net/unsub.php
[PHP-CVS] svn: php/php-src/branches/PHP_5_ 2/tests/security/open_basedir_parse_ini_file.phpt 3/tests/security/open_basedir_parse_ini_file.phpt
patrickallaert Wed, 22 Jul 2009 12:20:56 + Revision: http://svn.php.net/viewvc?view=revisionrevision=284603 Log: MFH: The exact error message might differ (it's Not owner on Solaris) (r265951) Changed paths: UU php/php-src/branches/PHP_5_2/tests/security/open_basedir_parse_ini_file.phpt UU php/php-src/branches/PHP_5_3/tests/security/open_basedir_parse_ini_file.phpt Modified: php/php-src/branches/PHP_5_2/tests/security/open_basedir_parse_ini_file.phpt === --- php/php-src/branches/PHP_5_2/tests/security/open_basedir_parse_ini_file.phpt 2009-07-22 12:12:52 UTC (rev 284602) +++ php/php-src/branches/PHP_5_2/tests/security/open_basedir_parse_ini_file.phpt 2009-07-22 12:20:56 UTC (rev 284603) @@ -33,35 +33,35 @@ Warning: parse_ini_file(): open_basedir restriction in effect. File(../bad) is not within the allowed path(s): (.) in %s on line %d -Warning: parse_ini_file(../bad): failed to open stream: Operation not permitted in %s on line %d +Warning: parse_ini_file(../bad): failed to open stream: %s in %s on line %d bool(false) Warning: parse_ini_file(): open_basedir restriction in effect. File(../bad/bad.txt) is not within the allowed path(s): (.) in %s on line %d -Warning: parse_ini_file(../bad/bad.txt): failed to open stream: Operation not permitted in %s on line %d +Warning: parse_ini_file(../bad/bad.txt): failed to open stream: %s in %s on line %d bool(false) -Warning: parse_ini_file(..): failed to open stream: Operation not permitted in %s on line %d +Warning: parse_ini_file(..): failed to open stream: %s in %s on line %d bool(false) Warning: parse_ini_file(): open_basedir restriction in effect. File(../) is not within the allowed path(s): (.) in %s on line %d -Warning: parse_ini_file(../): failed to open stream: Operation not permitted in %s on line %d +Warning: parse_ini_file(../): failed to open stream: %s in %s on line %d bool(false) Warning: parse_ini_file(): open_basedir restriction in effect. File(../bad/.) is not within the allowed path(s): (.) in %s on line %d -Warning: parse_ini_file(../bad/.): failed to open stream: Operation not permitted in %s on line %d +Warning: parse_ini_file(../bad/.): failed to open stream: %s in %s on line %d bool(false) Warning: parse_ini_file(): open_basedir restriction in effect. File(../bad/./bad.txt) is not within the allowed path(s): (.) in %s on line %d -Warning: parse_ini_file(../bad/./bad.txt): failed to open stream: Operation not permitted in %s on line %d +Warning: parse_ini_file(../bad/./bad.txt): failed to open stream: %s in %s on line %d bool(false) Warning: parse_ini_file(): open_basedir restriction in effect. File(./../.) is not within the allowed path(s): (.) in %s on line %d -Warning: parse_ini_file(./../.): failed to open stream: Operation not permitted in %s on line %d +Warning: parse_ini_file(./../.): failed to open stream: %s in %s on line %d bool(false) *** Finished testing open_basedir configuration [parse_ini_file] *** Property changes on: php/php-src/branches/PHP_5_2/tests/security/open_basedir_parse_ini_file.phpt ___ Added: svn:mergeinfo + /php/php-src/branches/PHP_5_3/tests/security/open_basedir_parse_ini_file.phpt:284120 /php/php-src/trunk/tests/security/open_basedir_parse_ini_file.phpt:265951 Modified: php/php-src/branches/PHP_5_3/tests/security/open_basedir_parse_ini_file.phpt === --- php/php-src/branches/PHP_5_3/tests/security/open_basedir_parse_ini_file.phpt 2009-07-22 12:12:52 UTC (rev 284602) +++ php/php-src/branches/PHP_5_3/tests/security/open_basedir_parse_ini_file.phpt 2009-07-22 12:20:56 UTC (rev 284603) @@ -39,43 +39,43 @@ Warning: parse_ini_file(): open_basedir restriction in effect. File(%s\test\bad) is not within the allowed path(s): (.) in %s on line %d -Warning: parse_ini_file(%s\test\bad): failed to open stream: Operation not permitted in %s on line %d +Warning: parse_ini_file(%s\test\bad): failed to open stream: %s in %s on line %d array(0) { } Warning: parse_ini_file(): open_basedir restriction in effect. File(%s\test\bad\bad.txt) is not within the allowed path(s): (.) in %s on line %d -Warning: parse_ini_file(%s\test\bad\bad.txt): failed to open stream: Operation not permitted in %s on line %d +Warning: parse_ini_file(%s\test\bad\bad.txt): failed to open stream: %s in %s on line %d array(0) { } Warning: parse_ini_file(): open_basedir restriction in effect. File(%s\test) is not within the allowed path(s): (.) in %s on line %d -Warning: parse_ini_file(%s\test): failed to open stream: Operation not permitted in %s on line %d +Warning: parse_ini_file(%s\test): failed to open stream: %s in %s on line %d array(0) { } Warning: parse_ini_file(): open_basedir restriction in effect.
[PHP-CVS] svn: php/phpruntests/trunk/ build.xml
zoe Wed, 22 Jul 2009 13:46:38 + Revision: http://svn.php.net/viewvc?view=revisionrevision=284605 Log: Addes -n to make sure of ignoring php.ini files Changed paths: U php/phpruntests/trunk/build.xml Modified: php/phpruntests/trunk/build.xml === --- php/phpruntests/trunk/build.xml 2009-07-22 12:22:32 UTC (rev 284604) +++ php/phpruntests/trunk/build.xml 2009-07-22 13:46:38 UTC (rev 284605) @@ -59,9 +59,9 @@ delete dir=QA/Zend / exec command=tar xfz QATESTS.tgz dir=QA passthru=true / -exec command=${php} run-tests.php -p ${php} Zend ext sapi tests ${project.basedir}/_compare/old.out dir=QA passthru=true checkReturn=true/ -exec command=${php} ${project.basedir}/src/run-tests.php -p ${php} -o csv -s ${project.basedir}/_compare/new.out QA dir=${project.basedir} passthru=true checkReturn=true / -exec command=${php} QA/compareNewOld.php ${project.basedir}/_compare/new.out ${project.basedir}/_compare/old.out QA ${project.basedir}/_compare/compare.out dir=${project.basedir} passthru=true checkReturn=true/ +exec command=${php} -n run-tests.php -p ${php} Zend ext sapi tests ${project.basedir}/_compare/old.out dir=QA passthru=true checkReturn=true/ +exec command=${php} -n ${project.basedir}/src/run-tests.php -p ${php} -o csv -s ${project.basedir}/_compare/new.out QA dir=${project.basedir} passthru=true checkReturn=true / +exec command=${php} -n QA/compareNewOld.php ${project.basedir}/_compare/new.out ${project.basedir}/_compare/old.out QA ${project.basedir}/_compare/compare.out dir=${project.basedir} passthru=true checkReturn=true/ /target target name=sniff description=Run all PHP_CodeSniffer sniffs. -- PHP CVS Mailing List (http://www.php.net/) To unsubscribe, visit: http://www.php.net/unsub.php
[PHP-CVS] svn: php/php-src/trunk/ext/standard/ info.c
dsp Wed, 22 Jul 2009 13:57:34 + Revision: http://svn.php.net/viewvc?view=revisionrevision=284606 Log: - Add information whether DTrace is enable to phpinfo Changed paths: U php/php-src/trunk/ext/standard/info.c Modified: php/php-src/trunk/ext/standard/info.c === --- php/php-src/trunk/ext/standard/info.c 2009-07-22 13:46:38 UTC (rev 284605) +++ php/php-src/trunk/ext/standard/info.c 2009-07-22 13:57:34 UTC (rev 284606) @@ -809,6 +809,11 @@ #else php_info_print_table_row(2, IPv6 Support, disabled ); #endif +#if HAVE_DTRACE + php_info_print_table_row(2, DTrace Support, enabled ); +#else + php_info_print_table_row(2, DTrace Support, disabled ); +#endif php_info_print_stream_hash(PHP Streams, php_stream_get_url_stream_wrappers_hash() TSRMLS_CC); php_info_print_stream_hash(Stream Socket Transports, php_stream_xport_get_hash() TSRMLS_CC); -- PHP CVS Mailing List (http://www.php.net/) To unsubscribe, visit: http://www.php.net/unsub.php
[PHP-CVS] svn: p ecl/phar/trunk/tar.c ecl/phar/trunk/tests/tar/bignames.phpt hp/php-src/branches/PHP_5_3/NEWS hp/php-src/branches/PHP_5_3/ext/phar/tar.c hp/php-src/branches/PHP_5_3/ext/phar/tests/tar/
cellog Wed, 22 Jul 2009 18:13:38 + Revision: http://svn.php.net/viewvc?view=revisionrevision=284618 Log: fix php bug #49018 (phar tar stores long filenames with prefix/name reversed) Bug: http://pecl.php.net/bugs/49018 (unknown) Changed paths: U pecl/phar/trunk/tar.c U pecl/phar/trunk/tests/tar/bignames.phpt U php/php-src/branches/PHP_5_3/NEWS U php/php-src/branches/PHP_5_3/ext/phar/tar.c U php/php-src/branches/PHP_5_3/ext/phar/tests/tar/bignames.phpt U php/php-src/trunk/ext/phar/tar.c U php/php-src/trunk/ext/phar/tests/tar/bignames.phpt Modified: pecl/phar/trunk/tar.c === --- pecl/phar/trunk/tar.c 2009-07-22 16:10:00 UTC (rev 284617) +++ pecl/phar/trunk/tar.c 2009-07-22 18:13:38 UTC (rev 284618) @@ -2,7 +2,7 @@ +--+ | TAR archive support for Phar | +--+ - | Copyright (c) 2005-2008 The PHP Group| + | Copyright (c) 2005-2009 The PHP Group| +--+ | This source file is subject to version 3.01 of the PHP license, | | that is bundled with this package in the file LICENSE, and is| @@ -39,7 +39,7 @@ /* adapted from format_octal() in libarchive * - * Copyright (c) 2003-2008 Tim Kientzle + * Copyright (c) 2003-2009 Tim Kientzle * All rights reserved. * * Redistribution and use in source and binary forms, with or without @@ -343,6 +343,9 @@ } for (j = 0; j 100; j++) { name[i+j] = hdr-name[j]; + if (name[i+j] == '\0') { + break; + } } entry.filename_len = i+j; @@ -644,8 +647,8 @@ } return ZEND_HASH_APPLY_STOP; } - memcpy(header.prefix, entry-filename+100, entry-filename_len - 100); - memcpy(header.name, entry-filename, 100); + memcpy(header.prefix, entry-filename, entry-filename_len - 100); + memcpy(header.name, entry-filename + (entry-filename_len - 100), 100); } else { memcpy(header.name, entry-filename, entry-filename_len); } Modified: pecl/phar/trunk/tests/tar/bignames.phpt === --- pecl/phar/trunk/tests/tar/bignames.phpt 2009-07-22 16:10:00 UTC (rev 284617) +++ pecl/phar/trunk/tests/tar/bignames.phpt 2009-07-22 18:13:38 UTC (rev 284618) @@ -11,11 +11,11 @@ $pname = 'phar://' . $fname; $p1 = new PharData($fname); -$p1[str_repeat('a', 101)] = 'hi'; +$p1[str_repeat('a', 100) . 'b'] = 'hi'; $p1[str_repeat('a', 255)] = 'hi2'; copy($fname, $fname2); $p2 = new PharData($fname2); -echo $p2[str_repeat('a', 101)]-getContent() . \n; +echo $p2[str_repeat('a', 100) . 'b']-getContent() . \n; echo $p2[str_repeat('a', 255)]-getContent() . \n; try { Modified: php/php-src/branches/PHP_5_3/NEWS === --- php/php-src/branches/PHP_5_3/NEWS 2009-07-22 16:10:00 UTC (rev 284617) +++ php/php-src/branches/PHP_5_3/NEWS 2009-07-22 18:13:38 UTC (rev 284618) @@ -6,6 +6,8 @@ - Fixed open_basedir circumvention for mail.log. (Maksymilian Arciemowicz, Stas) +- Fixed bug #49018 (phar tar stores long filenames wit prefix/name reversed). + (Greg) - Fixed bug #48962 (cURL does not upload files with specified filename). (Ilia) - Fixed bug #48929 (Double \r\n after HTTP headers when header context Modified: php/php-src/branches/PHP_5_3/ext/phar/tar.c === --- php/php-src/branches/PHP_5_3/ext/phar/tar.c 2009-07-22 16:10:00 UTC (rev 284617) +++ php/php-src/branches/PHP_5_3/ext/phar/tar.c 2009-07-22 18:13:38 UTC (rev 284618) @@ -343,6 +343,9 @@ } for (j = 0; j 100; j++) { name[i+j] = hdr-name[j]; + if (name[i+j] == '\0') { + break; + } } entry.filename_len = i+j; @@ -644,8 +647,8 @@ } return ZEND_HASH_APPLY_STOP; } - memcpy(header.prefix, entry-filename+100, entry-filename_len - 100); - memcpy(header.name, entry-filename, 100); + memcpy(header.prefix, entry-filename, entry-filename_len - 100); +
[PHP-CVS] svn: SVNROOT/ commit-bugs.php
gwynne Wed, 22 Jul 2009 18:22:42 + Revision: http://svn.php.net/viewvc?view=revisionrevision=284619 Log: allow for explicit php prefix in bug numbers Changed paths: U SVNROOT/commit-bugs.php Modified: SVNROOT/commit-bugs.php === --- SVNROOT/commit-bugs.php 2009-07-22 18:13:38 UTC (rev 284618) +++ SVNROOT/commit-bugs.php 2009-07-22 18:22:42 UTC (rev 284619) @@ -6,10 +6,11 @@ // - // Constants $version = substr('$Revision$', strlen('$Revision: '), -2); -$bug_pattern = '/(?:(pecl|pear)\s*)?(?:bug|#)[\s#:]*([0-9]+)/iuX'; +$bug_pattern = '/(?:(pecl|pear|php)\s*)?(?:bug|#)[\s#:]*([0-9]+)/iuX'; $bug_url_prefixes = array( 'pear' = 'http://pear.php.net/bugs', 'pecl' = 'http://pecl.php.net/bugs', +'php' = 'http://bugs.php.net', '' = 'http://bugs.php.net', ); $bug_rpc_url = 'http://bugs.php.net/rpc.php'; -- PHP CVS Mailing List (http://www.php.net/) To unsubscribe, visit: http://www.php.net/unsub.php
[PHP-CVS] svn: p ecl/phar/trunk/tar.c ecl/phar/trunk/tests/tar/bignames.phpt hp/php-src/branches/PHP_5_3/NEWS hp/php-src/branches/PHP_5_3/ext/phar/tar.c hp/php-src/branches/PHP_5_3/ext/phar/tests/tar/
cellog Wed, 22 Jul 2009 18:13:38 + Revision: http://svn.php.net/viewvc?view=revisionrevision=284618 Log: fix php bug #49018 (phar tar stores long filenames with prefix/name reversed) Bug: http://bugs.php.net/49018 (unknown) Changed paths: U pecl/phar/trunk/tar.c U pecl/phar/trunk/tests/tar/bignames.phpt U php/php-src/branches/PHP_5_3/NEWS U php/php-src/branches/PHP_5_3/ext/phar/tar.c U php/php-src/branches/PHP_5_3/ext/phar/tests/tar/bignames.phpt U php/php-src/trunk/ext/phar/tar.c U php/php-src/trunk/ext/phar/tests/tar/bignames.phpt Modified: pecl/phar/trunk/tar.c === --- pecl/phar/trunk/tar.c 2009-07-22 16:10:00 UTC (rev 284617) +++ pecl/phar/trunk/tar.c 2009-07-22 18:13:38 UTC (rev 284618) @@ -2,7 +2,7 @@ +--+ | TAR archive support for Phar | +--+ - | Copyright (c) 2005-2008 The PHP Group| + | Copyright (c) 2005-2009 The PHP Group| +--+ | This source file is subject to version 3.01 of the PHP license, | | that is bundled with this package in the file LICENSE, and is| @@ -39,7 +39,7 @@ /* adapted from format_octal() in libarchive * - * Copyright (c) 2003-2008 Tim Kientzle + * Copyright (c) 2003-2009 Tim Kientzle * All rights reserved. * * Redistribution and use in source and binary forms, with or without @@ -343,6 +343,9 @@ } for (j = 0; j 100; j++) { name[i+j] = hdr-name[j]; + if (name[i+j] == '\0') { + break; + } } entry.filename_len = i+j; @@ -644,8 +647,8 @@ } return ZEND_HASH_APPLY_STOP; } - memcpy(header.prefix, entry-filename+100, entry-filename_len - 100); - memcpy(header.name, entry-filename, 100); + memcpy(header.prefix, entry-filename, entry-filename_len - 100); + memcpy(header.name, entry-filename + (entry-filename_len - 100), 100); } else { memcpy(header.name, entry-filename, entry-filename_len); } Modified: pecl/phar/trunk/tests/tar/bignames.phpt === --- pecl/phar/trunk/tests/tar/bignames.phpt 2009-07-22 16:10:00 UTC (rev 284617) +++ pecl/phar/trunk/tests/tar/bignames.phpt 2009-07-22 18:13:38 UTC (rev 284618) @@ -11,11 +11,11 @@ $pname = 'phar://' . $fname; $p1 = new PharData($fname); -$p1[str_repeat('a', 101)] = 'hi'; +$p1[str_repeat('a', 100) . 'b'] = 'hi'; $p1[str_repeat('a', 255)] = 'hi2'; copy($fname, $fname2); $p2 = new PharData($fname2); -echo $p2[str_repeat('a', 101)]-getContent() . \n; +echo $p2[str_repeat('a', 100) . 'b']-getContent() . \n; echo $p2[str_repeat('a', 255)]-getContent() . \n; try { Modified: php/php-src/branches/PHP_5_3/NEWS === --- php/php-src/branches/PHP_5_3/NEWS 2009-07-22 16:10:00 UTC (rev 284617) +++ php/php-src/branches/PHP_5_3/NEWS 2009-07-22 18:13:38 UTC (rev 284618) @@ -6,6 +6,8 @@ - Fixed open_basedir circumvention for mail.log. (Maksymilian Arciemowicz, Stas) +- Fixed bug #49018 (phar tar stores long filenames wit prefix/name reversed). + (Greg) - Fixed bug #48962 (cURL does not upload files with specified filename). (Ilia) - Fixed bug #48929 (Double \r\n after HTTP headers when header context Modified: php/php-src/branches/PHP_5_3/ext/phar/tar.c === --- php/php-src/branches/PHP_5_3/ext/phar/tar.c 2009-07-22 16:10:00 UTC (rev 284617) +++ php/php-src/branches/PHP_5_3/ext/phar/tar.c 2009-07-22 18:13:38 UTC (rev 284618) @@ -343,6 +343,9 @@ } for (j = 0; j 100; j++) { name[i+j] = hdr-name[j]; + if (name[i+j] == '\0') { + break; + } } entry.filename_len = i+j; @@ -644,8 +647,8 @@ } return ZEND_HASH_APPLY_STOP; } - memcpy(header.prefix, entry-filename+100, entry-filename_len - 100); - memcpy(header.name, entry-filename, 100); + memcpy(header.prefix, entry-filename, entry-filename_len - 100); +
[PHP-CVS] svn: SVNROOT/ commit-bugs.php
gwynne Wed, 22 Jul 2009 18:29:28 + Revision: http://svn.php.net/viewvc?view=revisionrevision=284620 Log: whoops. fix the fix. Changed paths: U SVNROOT/commit-bugs.php Modified: SVNROOT/commit-bugs.php === --- SVNROOT/commit-bugs.php 2009-07-22 18:22:42 UTC (rev 284619) +++ SVNROOT/commit-bugs.php 2009-07-22 18:29:28 UTC (rev 284620) @@ -34,6 +34,7 @@ break; default: $bug_project_default = ''; +break; } // - @@ -56,7 +57,7 @@ include __DIR__ . '/secret.inc'; foreach ($bug_list as $k = $bug) { // Only do this for core PHP bugs -if ($bug['project'] !== '') { +if ($bug['project'] !== '' $bug['project'] !== 'php') { continue; } -- PHP CVS Mailing List (http://www.php.net/) To unsubscribe, visit: http://www.php.net/unsub.php
[PHP-CVS] svn: p ecl/phar/trunk/tar.c ecl/phar/trunk/tests/tar/bignames.phpt hp/php-src/branches/PHP_5_3/NEWS hp/php-src/branches/PHP_5_3/ext/phar/tar.c hp/php-src/branches/PHP_5_3/ext/phar/tests/tar/
cellog Wed, 22 Jul 2009 18:13:38 + Revision: http://svn.php.net/viewvc?view=revisionrevision=284618 Log: fix php bug #49018 (phar tar stores long filenames with prefix/name reversed) Bug: http://bugs.php.net/49018 (Closed) phar tar stores long filenames with prefix/name reversed Changed paths: U pecl/phar/trunk/tar.c U pecl/phar/trunk/tests/tar/bignames.phpt U php/php-src/branches/PHP_5_3/NEWS U php/php-src/branches/PHP_5_3/ext/phar/tar.c U php/php-src/branches/PHP_5_3/ext/phar/tests/tar/bignames.phpt U php/php-src/trunk/ext/phar/tar.c U php/php-src/trunk/ext/phar/tests/tar/bignames.phpt Modified: pecl/phar/trunk/tar.c === --- pecl/phar/trunk/tar.c 2009-07-22 16:10:00 UTC (rev 284617) +++ pecl/phar/trunk/tar.c 2009-07-22 18:13:38 UTC (rev 284618) @@ -2,7 +2,7 @@ +--+ | TAR archive support for Phar | +--+ - | Copyright (c) 2005-2008 The PHP Group| + | Copyright (c) 2005-2009 The PHP Group| +--+ | This source file is subject to version 3.01 of the PHP license, | | that is bundled with this package in the file LICENSE, and is| @@ -39,7 +39,7 @@ /* adapted from format_octal() in libarchive * - * Copyright (c) 2003-2008 Tim Kientzle + * Copyright (c) 2003-2009 Tim Kientzle * All rights reserved. * * Redistribution and use in source and binary forms, with or without @@ -343,6 +343,9 @@ } for (j = 0; j 100; j++) { name[i+j] = hdr-name[j]; + if (name[i+j] == '\0') { + break; + } } entry.filename_len = i+j; @@ -644,8 +647,8 @@ } return ZEND_HASH_APPLY_STOP; } - memcpy(header.prefix, entry-filename+100, entry-filename_len - 100); - memcpy(header.name, entry-filename, 100); + memcpy(header.prefix, entry-filename, entry-filename_len - 100); + memcpy(header.name, entry-filename + (entry-filename_len - 100), 100); } else { memcpy(header.name, entry-filename, entry-filename_len); } Modified: pecl/phar/trunk/tests/tar/bignames.phpt === --- pecl/phar/trunk/tests/tar/bignames.phpt 2009-07-22 16:10:00 UTC (rev 284617) +++ pecl/phar/trunk/tests/tar/bignames.phpt 2009-07-22 18:13:38 UTC (rev 284618) @@ -11,11 +11,11 @@ $pname = 'phar://' . $fname; $p1 = new PharData($fname); -$p1[str_repeat('a', 101)] = 'hi'; +$p1[str_repeat('a', 100) . 'b'] = 'hi'; $p1[str_repeat('a', 255)] = 'hi2'; copy($fname, $fname2); $p2 = new PharData($fname2); -echo $p2[str_repeat('a', 101)]-getContent() . \n; +echo $p2[str_repeat('a', 100) . 'b']-getContent() . \n; echo $p2[str_repeat('a', 255)]-getContent() . \n; try { Modified: php/php-src/branches/PHP_5_3/NEWS === --- php/php-src/branches/PHP_5_3/NEWS 2009-07-22 16:10:00 UTC (rev 284617) +++ php/php-src/branches/PHP_5_3/NEWS 2009-07-22 18:13:38 UTC (rev 284618) @@ -6,6 +6,8 @@ - Fixed open_basedir circumvention for mail.log. (Maksymilian Arciemowicz, Stas) +- Fixed bug #49018 (phar tar stores long filenames wit prefix/name reversed). + (Greg) - Fixed bug #48962 (cURL does not upload files with specified filename). (Ilia) - Fixed bug #48929 (Double \r\n after HTTP headers when header context Modified: php/php-src/branches/PHP_5_3/ext/phar/tar.c === --- php/php-src/branches/PHP_5_3/ext/phar/tar.c 2009-07-22 16:10:00 UTC (rev 284617) +++ php/php-src/branches/PHP_5_3/ext/phar/tar.c 2009-07-22 18:13:38 UTC (rev 284618) @@ -343,6 +343,9 @@ } for (j = 0; j 100; j++) { name[i+j] = hdr-name[j]; + if (name[i+j] == '\0') { + break; + } } entry.filename_len = i+j; @@ -644,8 +647,8 @@ } return ZEND_HASH_APPLY_STOP; } - memcpy(header.prefix, entry-filename+100, entry-filename_len - 100); - memcpy(header.name, entry-filename, 100); + memcpy(header.prefix, entry-filename,
[PHP-CVS] svn: p ecl/phar/trunk/Makefile.frag hp/php-src/branches/PHP_5_3/ext/phar/Makefile.frag hp/php-src/trunk/ext/phar/Makefile.frag
cellog Wed, 22 Jul 2009 18:37:32 + Revision: http://svn.php.net/viewvc?view=revisionrevision=284621 Log: don't package up subversion directory in phar.phar Changed paths: U pecl/phar/trunk/Makefile.frag U php/php-src/branches/PHP_5_3/ext/phar/Makefile.frag U php/php-src/trunk/ext/phar/Makefile.frag Modified: pecl/phar/trunk/Makefile.frag === --- pecl/phar/trunk/Makefile.frag 2009-07-22 18:29:28 UTC (rev 284620) +++ pecl/phar/trunk/Makefile.frag 2009-07-22 18:37:32 UTC (rev 284621) @@ -37,7 +37,7 @@ -...@echo Generating phar.phar -...@rm -f $(builddir)/phar.phar -...@rm -f $(srcdir)/phar.phar - @$(PHP_PHARCMD_EXECUTABLE) $(PHP_PHARCMD_SETTINGS) $(builddir)/phar.php pack -f $(builddir)/phar.phar -a pharcommand -c auto -x CVS -p 0 -s $(srcdir)/phar/phar.php -h sha1 -b $(PHP_PHARCMD_BANG) $(srcdir)/phar/ + @$(PHP_PHARCMD_EXECUTABLE) $(PHP_PHARCMD_SETTINGS) $(builddir)/phar.php pack -f $(builddir)/phar.phar -a pharcommand -c auto -x \\.svn -p 0 -s $(srcdir)/phar/phar.php -h sha1 -b $(PHP_PHARCMD_BANG) $(srcdir)/phar/ -...@chmod +x $(builddir)/phar.phar install-pharcmd: pharcmd Modified: php/php-src/branches/PHP_5_3/ext/phar/Makefile.frag === --- php/php-src/branches/PHP_5_3/ext/phar/Makefile.frag 2009-07-22 18:29:28 UTC (rev 284620) +++ php/php-src/branches/PHP_5_3/ext/phar/Makefile.frag 2009-07-22 18:37:32 UTC (rev 284621) @@ -37,7 +37,7 @@ -...@echo Generating phar.phar -...@rm -f $(builddir)/phar.phar -...@rm -f $(srcdir)/phar.phar - @$(PHP_PHARCMD_EXECUTABLE) $(PHP_PHARCMD_SETTINGS) $(builddir)/phar.php pack -f $(builddir)/phar.phar -a pharcommand -c auto -x CVS -p 0 -s $(srcdir)/phar/phar.php -h sha1 -b $(PHP_PHARCMD_BANG) $(srcdir)/phar/ + @$(PHP_PHARCMD_EXECUTABLE) $(PHP_PHARCMD_SETTINGS) $(builddir)/phar.php pack -f $(builddir)/phar.phar -a pharcommand -c auto -x \\.svn -p 0 -s $(srcdir)/phar/phar.php -h sha1 -b $(PHP_PHARCMD_BANG) $(srcdir)/phar/ -...@chmod +x $(builddir)/phar.phar install-pharcmd: pharcmd Modified: php/php-src/trunk/ext/phar/Makefile.frag === --- php/php-src/trunk/ext/phar/Makefile.frag2009-07-22 18:29:28 UTC (rev 284620) +++ php/php-src/trunk/ext/phar/Makefile.frag2009-07-22 18:37:32 UTC (rev 284621) @@ -37,7 +37,7 @@ -...@echo Generating phar.phar -...@rm -f $(builddir)/phar.phar -...@rm -f $(srcdir)/phar.phar - @$(PHP_PHARCMD_EXECUTABLE) $(PHP_PHARCMD_SETTINGS) $(builddir)/phar.php pack -f $(builddir)/phar.phar -a pharcommand -c auto -x CVS -p 0 -s $(srcdir)/phar/phar.php -h sha1 -b $(PHP_PHARCMD_BANG) $(srcdir)/phar/ + @$(PHP_PHARCMD_EXECUTABLE) $(PHP_PHARCMD_SETTINGS) $(builddir)/phar.php pack -f $(builddir)/phar.phar -a pharcommand -c auto -x \\.svn -p 0 -s $(srcdir)/phar/phar.php -h sha1 -b $(PHP_PHARCMD_BANG) $(srcdir)/phar/ -...@chmod +x $(builddir)/phar.phar install-pharcmd: pharcmd -- PHP CVS Mailing List (http://www.php.net/) To unsubscribe, visit: http://www.php.net/unsub.php
[PHP-CVS] svn: php/phpruntests/trunk/QA/ QATESTS.tgz
zoe Wed, 22 Jul 2009 20:08:50 + Revision: http://svn.php.net/viewvc?view=revisionrevision=284623 Log: fixed Changed paths: U php/phpruntests/trunk/QA/QATESTS.tgz Modified: php/phpruntests/trunk/QA/QATESTS.tgz === (Binary files differ) -- PHP CVS Mailing List (http://www.php.net/) To unsubscribe, visit: http://www.php.net/unsub.php
[PHP-CVS] svn: p ecl/phar/trunk/package.php ecl/phar/trunk/tar.c ecl/phar/trunk/tests/tar/bignames.phpt ecl/phar/trunk/tests/tar/bignames_overflow.phpt hp/php-src/branches/PHP_5_3/NEWS hp/php-src/bran
cellog Wed, 22 Jul 2009 19:51:37 + Revision: http://svn.php.net/viewvc?view=revisionrevision=284622 Log: Fix Bug #49020: phar misinterprets ustar long filename standard Bug: http://pecl.php.net/bugs/49020 (unknown) Changed paths: U pecl/phar/trunk/package.php U pecl/phar/trunk/tar.c U pecl/phar/trunk/tests/tar/bignames.phpt U pecl/phar/trunk/tests/tar/bignames_overflow.phpt U php/php-src/branches/PHP_5_3/NEWS U php/php-src/branches/PHP_5_3/ext/phar/tar.c U php/php-src/branches/PHP_5_3/ext/phar/tests/tar/bignames.phpt U php/php-src/branches/PHP_5_3/ext/phar/tests/tar/bignames_overflow.phpt U php/php-src/trunk/ext/phar/tar.c U php/php-src/trunk/ext/phar/tests/tar/bignames.phpt U php/php-src/trunk/ext/phar/tests/tar/bignames_overflow.phpt Modified: pecl/phar/trunk/package.php === --- pecl/phar/trunk/package.php 2009-07-22 18:37:32 UTC (rev 284621) +++ pecl/phar/trunk/package.php 2009-07-22 19:51:37 UTC (rev 284622) @@ -44,6 +44,8 @@ * on conversion to other formats, user-supplied aliases are validated Changes since 2.0.0RC2: + fixed PHP Bug #49018: phar tar stores long filenames with prefix/name reversed + fixed PHP Bug #49020: phar misinterprets ustar long filename standard fixed PHP Bug #48681: openssl signature verification for tar archives broken fixed isset() on sub-directories (isset(blah) if file blah/foo.php exists) Changes since 2.0.0RC1: Modified: pecl/phar/trunk/tar.c === --- pecl/phar/trunk/tar.c 2009-07-22 18:37:32 UTC (rev 284621) +++ pecl/phar/trunk/tar.c 2009-07-22 19:51:37 UTC (rev 284622) @@ -341,6 +341,7 @@ break; } } + name[i++] = '/'; for (j = 0; j 100; j++) { name[i+j] = hdr-name[j]; if (name[i+j] == '\0') { @@ -641,14 +642,25 @@ memset((char *) header, 0, sizeof(header)); if (entry-filename_len 100) { - if (entry-filename_len 255) { + char *boundary; + if (entry-filename_len 256) { if (fp-error) { spprintf(fp-error, 4096, tar-based phar \%s\ cannot be created, filename \%s\ is too long for tar file format, entry-phar-fname, entry-filename); } return ZEND_HASH_APPLY_STOP; } - memcpy(header.prefix, entry-filename, entry-filename_len - 100); - memcpy(header.name, entry-filename + (entry-filename_len - 100), 100); + boundary = entry-filename + entry-filename_len - 101; + while (*boundary *boundary != '/') { + ++boundary; + } + if (!*boundary || ((boundary - entry-filename) 155)) { + if (fp-error) { +spprintf(fp-error, 4096, tar-based phar \%s\ cannot be created, filename \%s\ is too long for tar file format, entry-phar-fname, entry-filename); + } + return ZEND_HASH_APPLY_STOP; + } + memcpy(header.prefix, entry-filename, boundary - entry-filename); + memcpy(header.name, boundary + 1, entry-filename_len - (boundary + 1 - entry-filename)); } else { memcpy(header.name, entry-filename, entry-filename_len); } Modified: pecl/phar/trunk/tests/tar/bignames.phpt === --- pecl/phar/trunk/tests/tar/bignames.phpt 2009-07-22 18:37:32 UTC (rev 284621) +++ pecl/phar/trunk/tests/tar/bignames.phpt 2009-07-22 19:51:37 UTC (rev 284622) @@ -8,30 +8,50 @@ ?php $fname = dirname(__FILE__) . '/' . basename(__FILE__, '.php') . '.tar'; $fname2 = dirname(__FILE__) . '/' . basename(__FILE__, '.php') . '.2.tar'; +$fname3 = dirname(__FILE__) . '/' . basename(__FILE__, '.php') . '.3.tar'; +$fname4 = dirname(__FILE__) . '/' . basename(__FILE__, '.php') . '.4.tar'; $pname = 'phar://' . $fname; $p1 = new PharData($fname); -$p1[str_repeat('a', 100) . 'b'] = 'hi'; -$p1[str_repeat('a', 255)] = 'hi2'; +$p1[str_repeat('a', 100) . '/b'] = 'hi'; +$p1[str_repeat('a', 155) . '/' . str_repeat('b', 100)] = 'hi2'; copy($fname, $fname2); $p2 = new PharData($fname2); -echo $p2[str_repeat('a', 100) . 'b']-getContent() . \n; -echo $p2[str_repeat('a', 255)]-getContent() . \n; +echo $p2[str_repeat('a', 100) . '/b']-getContent() . \n; +echo $p2[str_repeat('a', 155) . '/' . str_repeat('b', 100)]-getContent() . \n; try { $p2[str_repeat('a', 400)] = 'yuck'; } catch (Exception $e) { echo $e-getMessage() . \n; } + +try { + $p2 = new PharData($fname3); + $p2[str_repeat('a', 101)] = 'yuck'; +} catch (Exception $e) { + echo $e-getMessage() . \n; +} + +try { + $p2 = new PharData($fname4); + $p2[str_repeat('b', 160) . '/' . str_repeat('a', 90)] = 'yuck'; +} catch (Exception $e) { + echo $e-getMessage() . \n; +} ? ===DONE=== --CLEAN-- ?php unlink(dirname(__FILE__) . '/' . basename(__FILE__, '.clean.php') . '.tar'); unlink(dirname(__FILE__) . '/' . basename(__FILE__, '.clean.php') . '.2.tar'); +...@unlink(dirname(__FILE__) . '/' . basename(__FILE__, '.clean.php') . '.3.tar'); +...@unlink(dirname(__FILE__) . '/' .
[PHP-CVS] svn: p ecl/phar/trunk/package.php ecl/phar/trunk/tar.c hp/php-src/branches/PHP_5_3/NEWS hp/php-src/branches/PHP_5_3/ext/phar/tar.c hp/php-src/trunk/ext/phar/tar.c
cellog Wed, 22 Jul 2009 20:21:39 + Revision: http://svn.php.net/viewvc?view=revisionrevision=284624 Log: fix Bug #49021: phar tar signature algorithm reports as Unknown (0) in getSignature() call Bug: http://pecl.php.net/bugs/49021 (unknown) Changed paths: U pecl/phar/trunk/package.php U pecl/phar/trunk/tar.c U php/php-src/branches/PHP_5_3/NEWS U php/php-src/branches/PHP_5_3/ext/phar/tar.c U php/php-src/trunk/ext/phar/tar.c Modified: pecl/phar/trunk/package.php === --- pecl/phar/trunk/package.php 2009-07-22 20:08:50 UTC (rev 284623) +++ pecl/phar/trunk/package.php 2009-07-22 20:21:39 UTC (rev 284624) @@ -44,8 +44,10 @@ * on conversion to other formats, user-supplied aliases are validated Changes since 2.0.0RC2: + fixed PHP Bug #49021: phar tar signature algorithm reports as Unknown (0) in + getSignature() call + fixed PHP Bug #49020: phar misinterprets ustar long filename standard fixed PHP Bug #49018: phar tar stores long filenames with prefix/name reversed - fixed PHP Bug #49020: phar misinterprets ustar long filename standard fixed PHP Bug #48681: openssl signature verification for tar archives broken fixed isset() on sub-directories (isset(blah) if file blah/foo.php exists) Changes since 2.0.0RC1: Modified: pecl/phar/trunk/tar.c === --- pecl/phar/trunk/tar.c 2009-07-22 20:08:50 UTC (rev 284623) +++ pecl/phar/trunk/tar.c 2009-07-22 20:21:39 UTC (rev 284624) @@ -283,7 +283,8 @@ #else # define PHAR_GET_32(buffer) (php_uint32) *(buffer) #endif - if (FAILURE == phar_verify_signature(fp, php_stream_tell(fp) - size - 512, PHAR_GET_32(buf), buf + 8, size - 8, fname, myphar-signature, myphar-sig_len, error TSRMLS_CC)) { + myphar-sig_flags = PHAR_GET_32(buf); + if (FAILURE == phar_verify_signature(fp, php_stream_tell(fp) - size - 512, myphar-sig_flags, buf 8, size - 8, fname, myphar-signature, myphar-sig_len, error TSRMLS_CC)) { if (error) { char *save = *error; spprintf(error, 4096, phar error: tar-based phar \%s\ signature cannot be verified: %s, fname, save); Modified: php/php-src/branches/PHP_5_3/NEWS === --- php/php-src/branches/PHP_5_3/NEWS 2009-07-22 20:08:50 UTC (rev 284623) +++ php/php-src/branches/PHP_5_3/NEWS 2009-07-22 20:21:39 UTC (rev 284624) @@ -6,6 +6,8 @@ - Fixed open_basedir circumvention for mail.log. (Maksymilian Arciemowicz, Stas) +- Fixed bug #49012 (phar tar signature algorithm reports as Unknown (0) in + getSignature() call). (Greg) - Fixed bug #49020 (phar misinterprets ustar long filename standard). (Greg) - Fixed bug #49018 (phar tar stores long filenames wit prefix/name reversed). Modified: php/php-src/branches/PHP_5_3/ext/phar/tar.c === --- php/php-src/branches/PHP_5_3/ext/phar/tar.c 2009-07-22 20:08:50 UTC (rev 284623) +++ php/php-src/branches/PHP_5_3/ext/phar/tar.c 2009-07-22 20:21:39 UTC (rev 284624) @@ -283,7 +283,8 @@ #else # define PHAR_GET_32(buffer) (php_uint32) *(buffer) #endif - if (FAILURE == phar_verify_signature(fp, php_stream_tell(fp) - size - 512, PHAR_GET_32(buf), buf + 8, size - 8, fname, myphar-signature, myphar-sig_len, error TSRMLS_CC)) { + myphar-sig_flags = PHAR_GET_32(buf); + if (FAILURE == phar_verify_signature(fp, php_stream_tell(fp) - size - 512, myphar-sig_flags, buf + 8, size - 8, fname, myphar-signature, myphar-sig_len, error TSRMLS_CC)) { if (error) { char *save = *error; spprintf(error, 4096, phar error: tar-based phar \%s\ signature cannot be verified: %s, fname, save); Modified: php/php-src/trunk/ext/phar/tar.c === --- php/php-src/trunk/ext/phar/tar.c2009-07-22 20:08:50 UTC (rev 284623) +++ php/php-src/trunk/ext/phar/tar.c2009-07-22 20:21:39 UTC (rev 284624) @@ -283,7 +283,8 @@ #else # define PHAR_GET_32(buffer) (php_uint32) *(buffer) #endif - if (FAILURE == phar_verify_signature(fp, php_stream_tell(fp) - size - 512, PHAR_GET_32(buf), buf + 8, size - 8, fname, myphar-signature, myphar-sig_len, error TSRMLS_CC)) { + myphar-sig_flags = PHAR_GET_32(buf); + if (FAILURE == phar_verify_signature(fp, php_stream_tell(fp) - size - 512, myphar-sig_flags, buf 8, size - 8, fname, myphar-signature, myphar-sig_len, error TSRMLS_CC)) { if (error) {
[PHP-CVS] svn: php/php-src/trunk/ext/json/ JSON_parser.h json.c
rasmus Wed, 22 Jul 2009 21:32:58 + Revision: http://svn.php.net/viewvc?view=revisionrevision=284625 Log: There is no error code set for json_last_error if an invalid utf8 sequence is encountered. This fixes that. Might be worthwhile to merge to 5.3 despite the new constant. Changed paths: U php/php-src/trunk/ext/json/JSON_parser.h U php/php-src/trunk/ext/json/json.c Modified: php/php-src/trunk/ext/json/JSON_parser.h === --- php/php-src/trunk/ext/json/JSON_parser.h2009-07-22 20:21:39 UTC (rev 284624) +++ php/php-src/trunk/ext/json/JSON_parser.h2009-07-22 21:32:58 UTC (rev 284625) @@ -24,6 +24,7 @@ PHP_JSON_ERROR_STATE_MISMATCH, PHP_JSON_ERROR_CTRL_CHAR, PHP_JSON_ERROR_SYNTAX, +PHP_JSON_ERROR_UTF8, }; extern JSON_parser new_JSON_parser(int depth); Modified: php/php-src/trunk/ext/json/json.c === --- php/php-src/trunk/ext/json/json.c 2009-07-22 20:21:39 UTC (rev 284624) +++ php/php-src/trunk/ext/json/json.c 2009-07-22 21:32:58 UTC (rev 284625) @@ -93,6 +93,7 @@ REGISTER_LONG_CONSTANT(JSON_ERROR_STATE_MISMATCH, PHP_JSON_ERROR_STATE_MISMATCH, CONST_CS | CONST_PERSISTENT); REGISTER_LONG_CONSTANT(JSON_ERROR_CTRL_CHAR, PHP_JSON_ERROR_CTRL_CHAR, CONST_CS | CONST_PERSISTENT); REGISTER_LONG_CONSTANT(JSON_ERROR_SYNTAX, PHP_JSON_ERROR_SYNTAX, CONST_CS | CONST_PERSISTENT); + REGISTER_LONG_CONSTANT(JSON_ERROR_UTF8, PHP_JSON_ERROR_UTF8, CONST_CS | CONST_PERSISTENT); return SUCCESS; } @@ -311,6 +312,7 @@ efree(utf16); } if (len 0) { + JSON_G(error_code) = PHP_JSON_ERROR_UTF8; if (!PG(display_errors)) { php_error_docref(NULL TSRMLS_CC, E_WARNING, Invalid UTF-8 sequence in argument); } @@ -538,6 +540,7 @@ if (utf16) { efree(utf16); } + JSON_G(error_code) = PHP_JSON_ERROR_UTF8; RETURN_NULL(); } } -- PHP CVS Mailing List (http://www.php.net/) To unsubscribe, visit: http://www.php.net/unsub.php