From: Greg Beaver Date: Tue, 22 Jan 2008 20:24:52 +0000 (+0000) Subject: fix 2 tests, add phar.readonly checks to rmdir/mkdir X-Git-Tag: RELEASE_2_0_0a1~813 X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=47a60c4f16995fbba533dc71054278fd2a724a85;p=php fix 2 tests, add phar.readonly checks to rmdir/mkdir --- diff --git a/ext/phar/dirstream.c b/ext/phar/dirstream.c index 1ff835aa3b..0d43af991c 100644 --- a/ext/phar/dirstream.c +++ b/ext/phar/dirstream.c @@ -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; } diff --git a/ext/phar/tests/phar_convert_tar3.phpt b/ext/phar/tests/phar_convert_tar3.phpt index 5dbd5e8033..1623cec0f8 100644 --- a/ext/phar/tests/phar_convert_tar3.phpt +++ b/ext/phar/tests/phar_convert_tar3.phpt @@ -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=== diff --git a/ext/phar/tests/tar/phar_convert_phar3.phpt b/ext/phar/tests/tar/phar_convert_phar3.phpt index c3966c8ba5..23d3a3a81f 100644 --- a/ext/phar/tests/tar/phar_convert_phar3.phpt +++ b/ext/phar/tests/tar/phar_convert_phar3.phpt @@ -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===