[PHP-CVS] svn: php/phpruntests/trunk/src/testrun/ rtPhpTestRun.php

2009-07-22 Thread Zoe Slattery
zoe  Wed, 22 Jul 2009 10:44:08 +

Revision: http://svn.php.net/viewvc?view=revision&revision=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

2009-07-22 Thread Patrick Allaert
patrickallaert   Wed, 22 Jul 2009 12:20:56 +

Revision: http://svn.php.net/viewvc?view=revision&revision=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. Fil

[PHP-CVS] svn: php/phpruntests/trunk/ build.xml

2009-07-22 Thread Zoe Slattery
zoe  Wed, 22 Jul 2009 13:46:38 +

Revision: http://svn.php.net/viewvc?view=revision&revision=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 @@
 

 
-
-
-
+
+
+
   

   

-- 
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

2009-07-22 Thread David Soria Parra
dsp  Wed, 22 Jul 2009 13:57:34 +

Revision: http://svn.php.net/viewvc?view=revision&revision=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/

2009-07-22 Thread Greg Beaver
cellog   Wed, 22 Jul 2009 18:13:38 +

Revision: http://svn.php.net/viewvc?view=revision&revision=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 - 
1

[PHP-CVS] svn: SVNROOT/ commit-bugs.php

2009-07-22 Thread Gwynne Raskind
gwynne   Wed, 22 Jul 2009 18:22:42 +

Revision: http://svn.php.net/viewvc?view=revision&revision=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/

2009-07-22 Thread Greg Beaver
cellog   Wed, 22 Jul 2009 18:13:38 +

Revision: http://svn.php.net/viewvc?view=revision&revision=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

2009-07-22 Thread Gwynne Raskind
gwynne   Wed, 22 Jul 2009 18:29:28 +

Revision: http://svn.php.net/viewvc?view=revision&revision=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/

2009-07-22 Thread Greg Beaver
cellog   Wed, 22 Jul 2009 18:13:38 +

Revision: http://svn.php.net/viewvc?view=revision&revision=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(heade

[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

2009-07-22 Thread Greg Beaver
cellog   Wed, 22 Jul 2009 18:37:32 +

Revision: http://svn.php.net/viewvc?view=revision&revision=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

2009-07-22 Thread Zoe Slattery
zoe  Wed, 22 Jul 2009 20:08:50 +

Revision: http://svn.php.net/viewvc?view=revision&revision=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

2009-07-22 Thread Greg Beaver
cellog   Wed, 22 Jul 2009 19:51:37 +

Revision: http://svn.php.net/viewvc?view=revision&revision=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 @@
 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--
 
 --EXPECTF--
 hi
 hi2
 tar-based phar "%sbignames.2.tar" cannot be created, filename "" is too long for tar file format
+tar-based phar "%sbignames.3.tar" cannot be created, filename "a" is too long for tar file format
+tar-based phar "%sbignames.4.tar" cannot be created, filename "bbb

[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

2009-07-22 Thread Greg Beaver
cellog   Wed, 22 Jul 2009 20:21:39 +

Revision: http://svn.php.net/viewvc?view=revision&revision=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)) {
   

[PHP-CVS] svn: php/php-src/trunk/ext/json/ JSON_parser.h json.c

2009-07-22 Thread Rasmus Lerdorf
rasmus   Wed, 22 Jul 2009 21:32:58 +

Revision: http://svn.php.net/viewvc?view=revision&revision=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