]> granicus.if.org Git - php/commitdiff
fix 2 tests, add phar.readonly checks to rmdir/mkdir
authorGreg Beaver <cellog@php.net>
Tue, 22 Jan 2008 20:24:52 +0000 (20:24 +0000)
committerGreg Beaver <cellog@php.net>
Tue, 22 Jan 2008 20:24:52 +0000 (20:24 +0000)
ext/phar/dirstream.c
ext/phar/tests/phar_convert_tar3.phpt
ext/phar/tests/tar/phar_convert_phar3.phpt

index 1ff835aa3b1b786343347384fd6ce35490d295e9..0d43af991c3b79f8da13208e10e6e6227140c7f9 100644 (file)
@@ -406,6 +406,11 @@ int phar_wrapper_mkdir(php_stream_wrapper *wrapper, char *url_from, int mode, in
        php_url *resource = NULL;
        uint host_len;
 
+       if (PHAR_G(readonly)) {
+               php_stream_wrapper_log_error(wrapper, options TSRMLS_CC, "phar error: cannot create directory \"%s\", write operations disabled", url_from);
+               return FAILURE;
+       }
+
        if ((resource = phar_open_url(wrapper, url_from, "w", options TSRMLS_CC)) == NULL) {
                return FAILURE;
        }
@@ -506,6 +511,11 @@ int phar_wrapper_rmdir(php_stream_wrapper *wrapper, char *url, int options, php_
        php_url *resource = NULL;
        uint host_len;
 
+       if (PHAR_G(readonly)) {
+               php_stream_wrapper_log_error(wrapper, options TSRMLS_CC, "phar error: cannot rmdir directory \"%s\", write operations disabled", url);
+               return FAILURE;
+       }
+
        if ((resource = phar_open_url(wrapper, url, "w", options TSRMLS_CC)) == NULL) {
                return FAILURE;
        }
index 5dbd5e80338cdce53d61866e12a8d5066f3bb2f9..1623cec0f812e32b0207eaec3c9c2ef5ba9291bb 100644 (file)
@@ -25,7 +25,7 @@ include 'phar_test.inc';
 $phar = new Phar($fname);
 $phar->convertToTar(Phar::BZ2);
 var_dump($phar->isTar());
-var_dump($phar->isCompressed() === 0);
+var_dump($phar->isCompressed());
 copy($fname, $fname2);
 
 $phar = new Phar($fname2);
@@ -41,7 +41,7 @@ __HALT_COMPILER();
 ?>
 --EXPECT--
 bool(true)
-bool(true)
+bool(false)
 bool(true)
 bool(true)
 ===DONE===
index c3966c8ba58cfb1a56abc9e71b1281e10360158b..23d3a3a81ff6f9e3d5e97a3da38610b1b3ac7d07 100644 (file)
@@ -20,7 +20,7 @@ $phar['a'] = 'hi there';
 $phar = new Phar($fname);
 $phar->convertToPhar(Phar::BZ2);
 var_dump($phar->isPhar());
-var_dump($phar->isCompressed() === 0);
+var_dump($phar->isCompressed());
 copy($fname, $fname2);
 
 $phar = new Phar($fname2);
@@ -37,7 +37,7 @@ __HALT_COMPILER();
 --EXPECT--
 bool(true)
 bool(true)
-bool(true)
+bool(false)
 bool(true)
 bool(true)
 ===DONE===