cellog          Fri Jun 13 22:07:45 2008 UTC

  Added files:                 (Branch: PHP_5_3)
    /php-src/ext/phar/tests/tar phar_setsignaturealgo2.phpt 
                                require_hash.phpt 

  Modified files:              
    /php-src/ext/phar   phar.phar phar_internal.h phar_object.c tar.c 
                        util.c 
    /php-src/ext/phar/tests     badparameters.phpt phar_convert_again.phpt 
                                phar_setsignaturealgo2.phpt stat2.phpt 
                                stat2_5.3.phpt zf_test.phpt 
    /php-src/ext/phar/tests/tar bignames.phpt links.phpt links3.phpt 
                                links4.phpt links5.phpt tar_003.phpt 
                                tar_004.phpt tar_bz2.phpt tar_gzip.phpt 
                                tar_nostub.phpt 
    /php-src/ext/phar/tests/tar/files   frontcontroller.phar.tar 
                                        frontcontroller10.phar.tar 
                                        frontcontroller11.phar.tar 
                                        frontcontroller12.phar.tar 
                                        frontcontroller2.phar.tar 
                                        frontcontroller3.phar.tar 
                                        frontcontroller4.phar.tar 
                                        frontcontroller5.phar.tar 
                                        frontcontroller6.phar.tar 
                                        frontcontroller7.phar.tar 
                                        frontcontroller8.phar.tar 
                                        frontcontroller9.phar.tar 
  Log:
  [DOC] implement full signature support for tar-based archives.  By default, 
data archives do
  not have a signature, but can have one set via setSignatureAlgorithm()
  
http://cvs.php.net/viewvc.cgi/php-src/ext/phar/phar.phar?r1=1.7.2.13&r2=1.7.2.14&diff_format=u
Index: php-src/ext/phar/phar.phar
http://cvs.php.net/viewvc.cgi/php-src/ext/phar/phar_internal.h?r1=1.109.2.10&r2=1.109.2.11&diff_format=u
Index: php-src/ext/phar/phar_internal.h
diff -u php-src/ext/phar/phar_internal.h:1.109.2.10 
php-src/ext/phar/phar_internal.h:1.109.2.11
--- php-src/ext/phar/phar_internal.h:1.109.2.10 Fri Jun 13 20:15:19 2008
+++ php-src/ext/phar/phar_internal.h    Fri Jun 13 22:07:44 2008
@@ -17,7 +17,7 @@
   +----------------------------------------------------------------------+
 */
 
-/* $Id: phar_internal.h,v 1.109.2.10 2008/06/13 20:15:19 cellog Exp $ */
+/* $Id: phar_internal.h,v 1.109.2.11 2008/06/13 22:07:44 cellog Exp $ */
 
 #ifdef HAVE_CONFIG_H
 #include "config.h"
@@ -420,7 +420,7 @@
 int phar_free_alias(phar_archive_data *phar, char *alias, int alias_len 
TSRMLS_DC);
 int phar_get_archive(phar_archive_data **archive, char *fname, int fname_len, 
char *alias, int alias_len, char **error TSRMLS_DC);
 int phar_open_parsed_phar(char *fname, int fname_len, char *alias, int 
alias_len, int is_data, int options, phar_archive_data** pphar, char **error 
TSRMLS_DC);
-int phar_verify_signature(php_stream *fp, size_t end_of_phar, int sig_type, 
char *sig, int sig_len, char *fname, char **signature, int *signature_len, char 
**error TSRMLS_DC);
+int phar_verify_signature(php_stream *fp, size_t end_of_phar, php_uint32 
sig_type, char *sig, int sig_len, char *fname, char **signature, int 
*signature_len, char **error TSRMLS_DC);
 int phar_create_signature(phar_archive_data *phar, php_stream *fp, char 
**signature, int *signature_length, char **error TSRMLS_DC);
 
 /* utility functions */
http://cvs.php.net/viewvc.cgi/php-src/ext/phar/phar_object.c?r1=1.266.2.18&r2=1.266.2.19&diff_format=u
Index: php-src/ext/phar/phar_object.c
diff -u php-src/ext/phar/phar_object.c:1.266.2.18 
php-src/ext/phar/phar_object.c:1.266.2.19
--- php-src/ext/phar/phar_object.c:1.266.2.18   Fri Jun 13 20:15:19 2008
+++ php-src/ext/phar/phar_object.c      Fri Jun 13 22:07:44 2008
@@ -17,7 +17,7 @@
   +----------------------------------------------------------------------+
 */
 
-/* $Id: phar_object.c,v 1.266.2.18 2008/06/13 20:15:19 cellog Exp $ */
+/* $Id: phar_object.c,v 1.266.2.19 2008/06/13 22:07:44 cellog Exp $ */
 
 #include "phar_internal.h"
 #include "func_interceptors.h"
@@ -2707,11 +2707,6 @@
                        "Cannot set signature algorithm, phar is read-only");
                return;
        }
-       if (phar_obj->arc.archive->is_tar) {
-               zend_throw_exception_ex(spl_ce_BadMethodCallException, 0 
TSRMLS_CC,
-                       "Cannot set signature algorithm, not possible with 
tar-based phar archives");
-               return;
-       }
        if (phar_obj->arc.archive->is_zip) {
                zend_throw_exception_ex(spl_ce_BadMethodCallException, 0 
TSRMLS_CC,
                        "Cannot set signature algorithm, not possible with 
zip-based phar archives");
http://cvs.php.net/viewvc.cgi/php-src/ext/phar/tar.c?r1=1.55.2.5&r2=1.55.2.6&diff_format=u
Index: php-src/ext/phar/tar.c
diff -u php-src/ext/phar/tar.c:1.55.2.5 php-src/ext/phar/tar.c:1.55.2.6
--- php-src/ext/phar/tar.c:1.55.2.5     Thu Jun 12 18:56:23 2008
+++ php-src/ext/phar/tar.c      Fri Jun 13 22:07:44 2008
@@ -243,6 +243,86 @@
                size = entry.uncompressed_filesize = entry.compressed_filesize =
                        phar_tar_number(hdr->size, sizeof(hdr->size));
 
+               if (((!old && hdr->prefix[0] == 0) || old) && strlen(hdr->name) 
== sizeof(".phar/signature.bin")-1 && !strncmp(hdr->name, 
".phar/signature.bin", sizeof(".phar/signature.bin")-1)) {
+                       size_t read;
+                       if (size > 511) {
+                               if (error) {
+                                       spprintf(error, 4096, "phar error: 
tar-based phar \"%s\" has signature that is larger than 511 bytes, cannot 
process", fname);
+                               }
+bail:
+                               php_stream_close(fp);
+                               zend_hash_destroy(&myphar->manifest);
+                               myphar->manifest.arBuckets = 0;
+                               zend_hash_destroy(&myphar->mounted_dirs);
+                               myphar->mounted_dirs.arBuckets = 0;
+                               pefree(myphar, myphar->is_persistent);
+                               return FAILURE;
+                       }
+                       read = php_stream_read(fp, buf, size);
+                       if (read != size) {
+                               if (error) {
+                                       spprintf(error, 4096, "phar error: 
tar-based phar \"%s\" signature cannot be read", fname);
+                               }
+                               goto bail;
+                       }
+#ifdef WORDS_BIGENDIAN
+# define PHAR_GET_32(buffer) \
+       (((((unsigned char*)(buffer))[3]) << 24) \
+               | ((((unsigned char*)(buffer))[2]) << 16) \
+               | ((((unsigned char*)(buffer))[1]) <<  8) \
+               | (((unsigned char*)(buffer))[0]))
+#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, PHAR_GET_32(buf + 
4), 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);
+                                       efree(save);
+                               }
+                               goto bail;
+                       }
+                       /* signature checked out, let's ensure this is the last 
file in the phar */
+                       size = ((size+511)&~511) + 512;
+                       if (((hdr->typeflag == 0) || (hdr->typeflag == 
TAR_FILE)) && size > 0) {
+                               /* this is not good enough - seek succeeds even 
on truncated tars */
+                               php_stream_seek(fp, size, SEEK_CUR);
+                               if ((uint)php_stream_tell(fp) > totalsize) {
+                                       if (error) {
+                                               spprintf(error, 4096, "phar 
error: \"%s\" is a corrupted tar file (truncated)", fname);
+                                       }
+                                       php_stream_close(fp);
+                                       zend_hash_destroy(&myphar->manifest);
+                                       myphar->manifest.arBuckets = 0;
+                                       
zend_hash_destroy(&myphar->mounted_dirs);
+                                       myphar->mounted_dirs.arBuckets = 0;
+                                       pefree(myphar, myphar->is_persistent);
+                                       return FAILURE;
+                               }
+                       }
+                       read = php_stream_read(fp, buf, sizeof(buf));
+                       if (read != sizeof(buf)) {
+                               if (error) {
+                                       spprintf(error, 4096, "phar error: 
\"%s\" is a corrupted tar file (truncated)", fname);
+                               }
+                               php_stream_close(fp);
+                               zend_hash_destroy(&myphar->manifest);
+                               myphar->manifest.arBuckets = 0;
+                               zend_hash_destroy(&myphar->mounted_dirs);
+                               myphar->mounted_dirs.arBuckets = 0;
+                               pefree(myphar, myphar->is_persistent);
+                               return FAILURE;
+                       }
+                       hdr = (tar_header*) buf;
+                       sum1 = phar_tar_number(hdr->checksum, 
sizeof(hdr->checksum));
+                       if (sum1 == 0 && phar_tar_checksum(buf, sizeof(buf)) == 
0) {
+                               break;
+                       }
+                       if (error) {
+                               spprintf(error, 4096, "phar error: \"%s\" has 
entries after signature, invalid phar", fname);
+                       }
+                       goto bail;
+               }
                if (!old && hdr->prefix[0] != 0) {
                        char name[256];
 
@@ -419,6 +499,21 @@
                        return FAILURE;
                }
        } while (read != 0);
+
+       /* ensure signature set */
+       if (PHAR_G(require_hash) && !myphar->signature) {
+               php_stream_close(fp);
+               zend_hash_destroy(&myphar->manifest);
+               myphar->manifest.arBuckets = 0;
+               zend_hash_destroy(&myphar->mounted_dirs);
+               myphar->mounted_dirs.arBuckets = 0;
+               pefree(myphar, myphar->is_persistent);
+               if (error) {
+                       spprintf(error, 0, "tar-based phar \"%s\" does not have 
a signature", fname);
+               }
+               return FAILURE;
+       }
+
        myphar->fname = pestrndup(fname, fname_len, myphar->is_persistent);
 #ifdef PHP_WIN32
        phar_unixify_path_separators(myphar->fname, fname_len);
@@ -712,9 +807,9 @@
        phar_entry_info entry = {0};
        static const char newstub[] = "<?php // tar-based phar archive stub 
file\n__HALT_COMPILER();";
        php_stream *oldfile, *newfile, *stubfile;
-       int closeoldfile, free_user_stub;
+       int closeoldfile, free_user_stub, signature_length;
        struct _phar_pass_tar_info pass;
-       char *buf;
+       char *buf, *signature, sigbuf[8];
 
        entry.flags = PHAR_ENT_PERM_DEF_FILE;
        entry.timestamp = time(NULL);
@@ -734,7 +829,6 @@
                entry.filename = estrndup(".phar/alias.txt", 
sizeof(".phar/alias.txt")-1);
                entry.filename_len = sizeof(".phar/alias.txt")-1;
                entry.fp = php_stream_fopen_tmpfile();
-               entry.crc32 = phar_tar_checksum(phar->alias, phar->alias_len);
                if (phar->alias_len != (int)php_stream_write(entry.fp, 
phar->alias, phar->alias_len)) {
                        if (error) {
                                spprintf(error, 0, "unable to set alias in 
tar-based phar \"%s\"", phar->fname);
@@ -926,6 +1020,62 @@
 
        zend_hash_apply_with_argument(&phar->manifest, (apply_func_arg_t) 
phar_tar_writeheaders, (void *) &pass TSRMLS_CC);
 
+       /* add signature for executable tars or tars explicitly set with 
setSignatureAlgorithm */
+       if (!phar->is_data || phar->sig_flags) {
+               if (FAILURE == phar_create_signature(phar, newfile, &signature, 
&signature_length, error TSRMLS_CC)) {
+                       if (error) {
+                               char *save = *error;
+                               spprintf(error, 0, "phar error: unable to write 
signature to tar-based phar: %s", save);
+                               efree(save);
+                       }
+                       if (closeoldfile) {
+                               php_stream_close(oldfile);
+                       }
+                       php_stream_close(newfile);
+                       return EOF;
+               }
+               entry.filename = ".phar/signature.bin";
+               entry.filename_len = sizeof(".phar/signature.bin")-1;
+               entry.fp = php_stream_fopen_tmpfile();
+
+#ifdef WORDS_BIGENDIAN
+# define PHAR_SET_32(var, buffer) \
+       *(php_uint32 *)(var) = (((((unsigned char*)(buffer))[3]) << 24) \
+               | ((((unsigned char*)(buffer))[2]) << 16) \
+               | ((((unsigned char*)(buffer))[1]) <<  8) \
+               | (((unsigned char*)(buffer))[0]))
+#else
+# define PHAR_SET_32(var, buffer) *(php_uint32 *)(var) = (php_uint32) (buffer)
+#endif
+               PHAR_SET_32(sigbuf, phar->sig_flags);
+               PHAR_SET_32(sigbuf + 4, signature_length);
+               if (8 != php_stream_write(entry.fp, sigbuf, 8) || 
signature_length != php_stream_write(entry.fp, signature, signature_length)) {
+                       efree(signature);
+                       if (error) {
+                               spprintf(error, 0, "phar error: unable to write 
signature to tar-based phar %s", phar->fname);
+                       }
+                       if (closeoldfile) {
+                               php_stream_close(oldfile);
+                       }
+                       php_stream_close(newfile);
+                       return EOF;
+               }
+               efree(signature);
+
+               entry.uncompressed_filesize = entry.compressed_filesize = 
signature_length + 8;
+               /* throw out return value and write the signature */
+               entry.filename_len = phar_tar_writeheaders((void *)&entry, 
(void *)&pass);
+
+               if (error && *error) {
+                       if (closeoldfile) {
+                               php_stream_close(oldfile);
+                       }
+                       /* error is set by writeheaders */
+                       php_stream_close(newfile);
+                       return EOF;
+               }
+       } /* signature */
+
        /* add final zero blocks */
        buf = (char *) ecalloc(1024, 1);
        php_stream_write(newfile, buf, 1024);
http://cvs.php.net/viewvc.cgi/php-src/ext/phar/util.c?r1=1.55.2.7&r2=1.55.2.8&diff_format=u
Index: php-src/ext/phar/util.c
diff -u php-src/ext/phar/util.c:1.55.2.7 php-src/ext/phar/util.c:1.55.2.8
--- php-src/ext/phar/util.c:1.55.2.7    Fri Jun 13 20:15:19 2008
+++ php-src/ext/phar/util.c     Fri Jun 13 22:07:44 2008
@@ -18,7 +18,7 @@
   +----------------------------------------------------------------------+
 */
 
-/* $Id: util.c,v 1.55.2.7 2008/06/13 20:15:19 cellog Exp $ */
+/* $Id: util.c,v 1.55.2.8 2008/06/13 22:07:44 cellog Exp $ */
 
 #include "phar_internal.h"
 #ifdef PHAR_HAVE_OPENSSL
@@ -1466,7 +1466,7 @@
 }
 #endif /* #ifndef PHAR_HAVE_OPENSSL */
 
-int phar_verify_signature(php_stream *fp, size_t end_of_phar, int sig_type, 
char *sig, int sig_len, char *fname, char **signature, int *signature_len, char 
**error TSRMLS_DC) /* {{{ */
+int phar_verify_signature(php_stream *fp, size_t end_of_phar, php_uint32 
sig_type, char *sig, int sig_len, char *fname, char **signature, int 
*signature_len, char **error TSRMLS_DC) /* {{{ */
 {
        int read_size, len;
        off_t read_len;
http://cvs.php.net/viewvc.cgi/php-src/ext/phar/tests/badparameters.phpt?r1=1.3.2.1&r2=1.3.2.2&diff_format=u
Index: php-src/ext/phar/tests/badparameters.phpt
diff -u php-src/ext/phar/tests/badparameters.phpt:1.3.2.1 
php-src/ext/phar/tests/badparameters.phpt:1.3.2.2
--- php-src/ext/phar/tests/badparameters.phpt:1.3.2.1   Thu May 15 23:46:29 2008
+++ php-src/ext/phar/tests/badparameters.phpt   Fri Jun 13 22:07:44 2008
@@ -77,11 +77,6 @@
 echo $e->getMessage() . "\n";
 }
 try {
-$b->setSignatureAlgorithm(Phar::MD5);
-} catch (Exception $e) {
-echo $e->getMessage() . "\n";
-}
-try {
 $c->setSignatureAlgorithm(Phar::MD5);
 } catch (Exception $e) {
 echo $e->getMessage() . "\n";
@@ -165,7 +160,6 @@
 Warning: Phar::setDefaultStub() expects parameter 1 to be string, array given 
in %sbadparameters.php on line %d
 Cannot change stub: phar.readonly=1
 Cannot set signature algorithm, phar is read-only
-Cannot set signature algorithm, not possible with tar-based phar archives
 Cannot set signature algorithm, not possible with zip-based phar archives
 
 Warning: Phar::compress() expects parameter 1 to be long, array given in 
%sbadparameters.php on line %d
http://cvs.php.net/viewvc.cgi/php-src/ext/phar/tests/phar_convert_again.phpt?r1=1.13&r2=1.13.2.1&diff_format=u
Index: php-src/ext/phar/tests/phar_convert_again.phpt
diff -u php-src/ext/phar/tests/phar_convert_again.phpt:1.13 
php-src/ext/phar/tests/phar_convert_again.phpt:1.13.2.1
--- php-src/ext/phar/tests/phar_convert_again.phpt:1.13 Wed May  7 17:24:21 2008
+++ php-src/ext/phar/tests/phar_convert_again.phpt      Fri Jun 13 22:07:44 2008
@@ -140,12 +140,6 @@
 echo $e->getMessage() . "\n";
 }
 try {
-$data->setSignatureAlgorithm(Phar::MD5);
-} catch (Exception $e) {
-echo $e->getMessage() . "\n";
-}
-
-try {
 $tgz->convertToData(Phar::TAR, Phar::GZ, '.phar.tgz.oops');
 } catch (Exception $e) {
 echo $e->getMessage() . "\n";
@@ -211,7 +205,6 @@
 A Phar stub cannot be set in a plain tar archive
 A Phar alias cannot be set in a plain tar archive
 A Phar stub cannot be set in a plain tar archive
-Cannot set signature algorithm, not possible with tar-based phar archives
 data phar "%sphar_convert_again2.phar.tgz.oops" has invalid extension 
phar.tgz.oops
 phar "%sphar_convert_again2.tgz.oops" has invalid extension tgz.oops
 data phar "%sphar_convert_again2.phar/.tgz.oops" has invalid extension 
phar/.tgz.oops
http://cvs.php.net/viewvc.cgi/php-src/ext/phar/tests/phar_setsignaturealgo2.phpt?r1=1.3.2.1&r2=1.3.2.2&diff_format=u
Index: php-src/ext/phar/tests/phar_setsignaturealgo2.phpt
diff -u php-src/ext/phar/tests/phar_setsignaturealgo2.phpt:1.3.2.1 
php-src/ext/phar/tests/phar_setsignaturealgo2.phpt:1.3.2.2
--- php-src/ext/phar/tests/phar_setsignaturealgo2.phpt:1.3.2.1  Sun Jun  1 
04:21:26 2008
+++ php-src/ext/phar/tests/phar_setsignaturealgo2.phpt  Fri Jun 13 22:07:44 2008
@@ -10,7 +10,7 @@
 --FILE--
 <?php
 $fname = dirname(__FILE__) . '/' . basename(__FILE__, '.php') . '.phar';
-$p = new Phar(dirname(__FILE__) . '/brandnewphar.phar', 0, 
'brandnewphar.phar');
+$p = new Phar($fname);
 $p['file1.txt'] = 'hi';
 var_dump($p->getSignature());
 $p->setSignatureAlgorithm(Phar::MD5);
@@ -42,7 +42,7 @@
 ===DONE===
 --CLEAN--
 <?php
-unlink(dirname(__FILE__) . '/brandnewphar.phar');
+unlink(dirname(__FILE__) . '/' . basename(__FILE__, '.clean.php') . '.phar');
 ?>
 --EXPECTF--
 array(2) {
http://cvs.php.net/viewvc.cgi/php-src/ext/phar/tests/stat2.phpt?r1=1.2&r2=1.2.2.1&diff_format=u
Index: php-src/ext/phar/tests/stat2.phpt
diff -u php-src/ext/phar/tests/stat2.phpt:1.2 
php-src/ext/phar/tests/stat2.phpt:1.2.2.1
--- php-src/ext/phar/tests/stat2.phpt:1.2       Sun May 11 19:41:44 2008
+++ php-src/ext/phar/tests/stat2.phpt   Fri Jun 13 22:07:44 2008
@@ -5,6 +5,7 @@
 <?php if (substr(phpversion(), 0, 3) != '5.2') die("skip PHP 5.2 required for 
this test");?>
 --INI--
 phar.readonly=0
+phar.require_hash=0
 --FILE--
 <?php
 Phar::interceptFileFuncs();
http://cvs.php.net/viewvc.cgi/php-src/ext/phar/tests/stat2_5.3.phpt?r1=1.1&r2=1.1.2.1&diff_format=u
Index: php-src/ext/phar/tests/stat2_5.3.phpt
diff -u php-src/ext/phar/tests/stat2_5.3.phpt:1.1 
php-src/ext/phar/tests/stat2_5.3.phpt:1.1.2.1
--- php-src/ext/phar/tests/stat2_5.3.phpt:1.1   Sun May 11 19:41:44 2008
+++ php-src/ext/phar/tests/stat2_5.3.phpt       Fri Jun 13 22:07:44 2008
@@ -5,6 +5,7 @@
 <?php if (substr(phpversion(), 0, 3) == '5.2') die("skip PHP 5.3+ required for 
this test");?>
 --INI--
 phar.readonly=0
+phar.require_hash=0
 --FILE--
 <?php
 Phar::interceptFileFuncs();
http://cvs.php.net/viewvc.cgi/php-src/ext/phar/tests/zf_test.phpt?r1=1.10.2.2&r2=1.10.2.3&diff_format=u
Index: php-src/ext/phar/tests/zf_test.phpt
diff -u php-src/ext/phar/tests/zf_test.phpt:1.10.2.2 
php-src/ext/phar/tests/zf_test.phpt:1.10.2.3
--- php-src/ext/phar/tests/zf_test.phpt:1.10.2.2        Thu May 15 16:09:01 2008
+++ php-src/ext/phar/tests/zf_test.phpt Fri Jun 13 22:07:44 2008
@@ -5,6 +5,7 @@
 <?php if (!extension_loaded("zlib")) die("skip zlib not available"); ?>
 --INI--
 phar.readonly=0
+phar.require_hash=0
 --FILE--
 <?php
 
http://cvs.php.net/viewvc.cgi/php-src/ext/phar/tests/tar/bignames.phpt?r1=1.1&r2=1.1.2.1&diff_format=u
Index: php-src/ext/phar/tests/tar/bignames.phpt
diff -u php-src/ext/phar/tests/tar/bignames.phpt:1.1 
php-src/ext/phar/tests/tar/bignames.phpt:1.1.2.1
--- php-src/ext/phar/tests/tar/bignames.phpt:1.1        Mon Apr 21 06:33:48 2008
+++ php-src/ext/phar/tests/tar/bignames.phpt    Fri Jun 13 22:07:44 2008
@@ -2,6 +2,8 @@
 Phar: tar with huge filenames
 --SKIPIF--
 <?php if (!extension_loaded("phar")) die("skip"); ?>
+--INI--
+phar.require_hash=0
 --FILE--
 <?php
 $fname = dirname(__FILE__) . '/' . basename(__FILE__, '.php') . '.tar';
http://cvs.php.net/viewvc.cgi/php-src/ext/phar/tests/tar/links.phpt?r1=1.4&r2=1.4.2.1&diff_format=u
Index: php-src/ext/phar/tests/tar/links.phpt
diff -u php-src/ext/phar/tests/tar/links.phpt:1.4 
php-src/ext/phar/tests/tar/links.phpt:1.4.2.1
--- php-src/ext/phar/tests/tar/links.phpt:1.4   Mon May 12 00:45:04 2008
+++ php-src/ext/phar/tests/tar/links.phpt       Fri Jun 13 22:07:44 2008
@@ -2,6 +2,8 @@
 Phar: tar with hard link and symbolic link
 --SKIPIF--
 <?php if (!extension_loaded("phar")) die("skip"); ?>
+--INI--
+phar.require_hash=0
 --FILE--
 <?php
 $fname = dirname(__FILE__) . '/' . basename(__FILE__, '.php') . '.tar';
http://cvs.php.net/viewvc.cgi/php-src/ext/phar/tests/tar/links3.phpt?r1=1.1&r2=1.1.2.1&diff_format=u
Index: php-src/ext/phar/tests/tar/links3.phpt
diff -u php-src/ext/phar/tests/tar/links3.phpt:1.1 
php-src/ext/phar/tests/tar/links3.phpt:1.1.2.1
--- php-src/ext/phar/tests/tar/links3.phpt:1.1  Sun May 11 22:59:15 2008
+++ php-src/ext/phar/tests/tar/links3.phpt      Fri Jun 13 22:07:44 2008
@@ -2,6 +2,8 @@
 Phar: tar with link to absolute path
 --SKIPIF--
 <?php if (!extension_loaded("phar")) die("skip"); ?>
+--INI--
+phar.require_hash=0
 --FILE--
 <?php
 try {
http://cvs.php.net/viewvc.cgi/php-src/ext/phar/tests/tar/links4.phpt?r1=1.1&r2=1.1.2.1&diff_format=u
Index: php-src/ext/phar/tests/tar/links4.phpt
diff -u php-src/ext/phar/tests/tar/links4.phpt:1.1 
php-src/ext/phar/tests/tar/links4.phpt:1.1.2.1
--- php-src/ext/phar/tests/tar/links4.phpt:1.1  Sun May 11 23:03:55 2008
+++ php-src/ext/phar/tests/tar/links4.phpt      Fri Jun 13 22:07:44 2008
@@ -2,6 +2,8 @@
 Phar: tar with link to root directory file from root directory file
 --SKIPIF--
 <?php if (!extension_loaded("phar")) die("skip"); ?>
+--INI--
+phar.require_hash=0
 --FILE--
 <?php
 try {
http://cvs.php.net/viewvc.cgi/php-src/ext/phar/tests/tar/links5.phpt?r1=1.1&r2=1.1.2.1&diff_format=u
Index: php-src/ext/phar/tests/tar/links5.phpt
diff -u php-src/ext/phar/tests/tar/links5.phpt:1.1 
php-src/ext/phar/tests/tar/links5.phpt:1.1.2.1
--- php-src/ext/phar/tests/tar/links5.phpt:1.1  Sun May 11 23:07:11 2008
+++ php-src/ext/phar/tests/tar/links5.phpt      Fri Jun 13 22:07:44 2008
@@ -2,6 +2,8 @@
 Phar: tar with relative link to subdirectory file from subdirectory file
 --SKIPIF--
 <?php if (!extension_loaded("phar")) die("skip"); ?>
+--INI--
+phar.require_hash=0
 --FILE--
 <?php
 try {
http://cvs.php.net/viewvc.cgi/php-src/ext/phar/tests/tar/tar_003.phpt?r1=1.5.2.1&r2=1.5.2.2&diff_format=u
Index: php-src/ext/phar/tests/tar/tar_003.phpt
diff -u php-src/ext/phar/tests/tar/tar_003.phpt:1.5.2.1 
php-src/ext/phar/tests/tar/tar_003.phpt:1.5.2.2
--- php-src/ext/phar/tests/tar/tar_003.phpt:1.5.2.1     Thu May 15 16:09:01 2008
+++ php-src/ext/phar/tests/tar/tar_003.phpt     Fri Jun 13 22:07:44 2008
@@ -5,6 +5,7 @@
 <?php if (!extension_loaded("spl")) die("skip SPL not available"); ?>
 --INI--
 phar.readonly=0
+phar.require_hash=0
 --FILE--
 <?php
 include dirname(__FILE__) . '/files/tarmaker.php.inc';
http://cvs.php.net/viewvc.cgi/php-src/ext/phar/tests/tar/tar_004.phpt?r1=1.3&r2=1.3.2.1&diff_format=u
Index: php-src/ext/phar/tests/tar/tar_004.phpt
diff -u php-src/ext/phar/tests/tar/tar_004.phpt:1.3 
php-src/ext/phar/tests/tar/tar_004.phpt:1.3.2.1
--- php-src/ext/phar/tests/tar/tar_004.phpt:1.3 Tue Feb 12 16:39:58 2008
+++ php-src/ext/phar/tests/tar/tar_004.phpt     Fri Jun 13 22:07:44 2008
@@ -5,6 +5,7 @@
 <?php if (!extension_loaded("spl")) die("skip SPL not available"); ?>
 --INI--
 phar.readonly=0
+phar.require_hash=0
 --FILE--
 <?php
 include dirname(__FILE__) . '/files/tarmaker.php.inc';
http://cvs.php.net/viewvc.cgi/php-src/ext/phar/tests/tar/tar_bz2.phpt?r1=1.3&r2=1.3.2.1&diff_format=u
Index: php-src/ext/phar/tests/tar/tar_bz2.phpt
diff -u php-src/ext/phar/tests/tar/tar_bz2.phpt:1.3 
php-src/ext/phar/tests/tar/tar_bz2.phpt:1.3.2.1
--- php-src/ext/phar/tests/tar/tar_bz2.phpt:1.3 Fri May  2 05:05:54 2008
+++ php-src/ext/phar/tests/tar/tar_bz2.phpt     Fri Jun 13 22:07:44 2008
@@ -6,6 +6,7 @@
 <?php if (!extension_loaded("bz2")) die("skip bz2 not available"); ?>
 --INI--
 phar.readonly=0
+phar.require_hash=0
 --FILE--
 <?php
 include dirname(__FILE__) . '/files/tarmaker.php.inc';
http://cvs.php.net/viewvc.cgi/php-src/ext/phar/tests/tar/tar_gzip.phpt?r1=1.4&r2=1.4.2.1&diff_format=u
Index: php-src/ext/phar/tests/tar/tar_gzip.phpt
diff -u php-src/ext/phar/tests/tar/tar_gzip.phpt:1.4 
php-src/ext/phar/tests/tar/tar_gzip.phpt:1.4.2.1
--- php-src/ext/phar/tests/tar/tar_gzip.phpt:1.4        Fri May  2 05:05:54 2008
+++ php-src/ext/phar/tests/tar/tar_gzip.phpt    Fri Jun 13 22:07:44 2008
@@ -7,6 +7,7 @@
 <?php if (version_compare(phpversion(), '5.2.6', '<')) die("skip zlib is buggy 
in PHP < 5.2.6"); ?>
 --INI--
 phar.readonly=0
+phar.require_hash=0
 --FILE--
 <?php
 include dirname(__FILE__) . '/files/tarmaker.php.inc';
http://cvs.php.net/viewvc.cgi/php-src/ext/phar/tests/tar/tar_nostub.phpt?r1=1.5&r2=1.5.2.1&diff_format=u
Index: php-src/ext/phar/tests/tar/tar_nostub.phpt
diff -u php-src/ext/phar/tests/tar/tar_nostub.phpt:1.5 
php-src/ext/phar/tests/tar/tar_nostub.phpt:1.5.2.1
--- php-src/ext/phar/tests/tar/tar_nostub.phpt:1.5      Mon Apr 14 15:58:11 2008
+++ php-src/ext/phar/tests/tar/tar_nostub.phpt  Fri Jun 13 22:07:44 2008
@@ -5,6 +5,7 @@
 <?php if (!extension_loaded("spl")) die("skip SPL not available"); ?>
 --INI--
 phar.readonly=1
+phar.require_hash=0
 --FILE--
 <?php
 include dirname(__FILE__) . '/files/tarmaker.php.inc';
http://cvs.php.net/viewvc.cgi/php-src/ext/phar/tests/tar/files/frontcontroller.phar.tar?r1=1.1&r2=1.1.2.1&diff_format=u
Index: php-src/ext/phar/tests/tar/files/frontcontroller.phar.tar
http://cvs.php.net/viewvc.cgi/php-src/ext/phar/tests/tar/files/frontcontroller10.phar.tar?r1=1.1&r2=1.1.2.1&diff_format=u
Index: php-src/ext/phar/tests/tar/files/frontcontroller10.phar.tar
http://cvs.php.net/viewvc.cgi/php-src/ext/phar/tests/tar/files/frontcontroller11.phar.tar?r1=1.1&r2=1.1.2.1&diff_format=u
Index: php-src/ext/phar/tests/tar/files/frontcontroller11.phar.tar
http://cvs.php.net/viewvc.cgi/php-src/ext/phar/tests/tar/files/frontcontroller12.phar.tar?r1=1.1&r2=1.1.2.1&diff_format=u
Index: php-src/ext/phar/tests/tar/files/frontcontroller12.phar.tar
http://cvs.php.net/viewvc.cgi/php-src/ext/phar/tests/tar/files/frontcontroller2.phar.tar?r1=1.1&r2=1.1.2.1&diff_format=u
Index: php-src/ext/phar/tests/tar/files/frontcontroller2.phar.tar
http://cvs.php.net/viewvc.cgi/php-src/ext/phar/tests/tar/files/frontcontroller3.phar.tar?r1=1.1&r2=1.1.2.1&diff_format=u
Index: php-src/ext/phar/tests/tar/files/frontcontroller3.phar.tar
http://cvs.php.net/viewvc.cgi/php-src/ext/phar/tests/tar/files/frontcontroller4.phar.tar?r1=1.1&r2=1.1.2.1&diff_format=u
Index: php-src/ext/phar/tests/tar/files/frontcontroller4.phar.tar
http://cvs.php.net/viewvc.cgi/php-src/ext/phar/tests/tar/files/frontcontroller5.phar.tar?r1=1.1&r2=1.1.2.1&diff_format=u
Index: php-src/ext/phar/tests/tar/files/frontcontroller5.phar.tar
http://cvs.php.net/viewvc.cgi/php-src/ext/phar/tests/tar/files/frontcontroller6.phar.tar?r1=1.1&r2=1.1.2.1&diff_format=u
Index: php-src/ext/phar/tests/tar/files/frontcontroller6.phar.tar
http://cvs.php.net/viewvc.cgi/php-src/ext/phar/tests/tar/files/frontcontroller7.phar.tar?r1=1.1&r2=1.1.2.1&diff_format=u
Index: php-src/ext/phar/tests/tar/files/frontcontroller7.phar.tar
http://cvs.php.net/viewvc.cgi/php-src/ext/phar/tests/tar/files/frontcontroller8.phar.tar?r1=1.1&r2=1.1.2.1&diff_format=u
Index: php-src/ext/phar/tests/tar/files/frontcontroller8.phar.tar
http://cvs.php.net/viewvc.cgi/php-src/ext/phar/tests/tar/files/frontcontroller9.phar.tar?r1=1.1&r2=1.1.2.1&diff_format=u
Index: php-src/ext/phar/tests/tar/files/frontcontroller9.phar.tar

http://cvs.php.net/viewvc.cgi/php-src/ext/phar/tests/tar/phar_setsignaturealgo2.phpt?view=markup&rev=1.1
Index: php-src/ext/phar/tests/tar/phar_setsignaturealgo2.phpt
+++ php-src/ext/phar/tests/tar/phar_setsignaturealgo2.phpt

http://cvs.php.net/viewvc.cgi/php-src/ext/phar/tests/tar/require_hash.phpt?view=markup&rev=1.1
Index: php-src/ext/phar/tests/tar/require_hash.phpt
+++ php-src/ext/phar/tests/tar/require_hash.phpt

-- 
PHP CVS Mailing List (http://www.php.net/)
To unsubscribe, visit: http://www.php.net/unsub.php

Reply via email to