summaryrefslogtreecommitdiff
path: root/tests/security/open_basedir_copy.phpt
diff options
context:
space:
mode:
authorJani Taskinen <jani@php.net>2009-07-25 00:43:42 +0000
committerJani Taskinen <jani@php.net>2009-07-25 00:43:42 +0000
commitee992d9ff7ba135f1a018aca840f33aa2aa3a7aa (patch)
tree0749a12fc307b230b854c9497c7d4450766740cb /tests/security/open_basedir_copy.phpt
parentdad7c68b27078eef50e22995c88c7db22becf9a5 (diff)
downloadphp-git-ee992d9ff7ba135f1a018aca840f33aa2aa3a7aa.tar.gz
- Fix tests .oO(why are there so many things broken in this branch..?)
Diffstat (limited to 'tests/security/open_basedir_copy.phpt')
-rw-r--r--tests/security/open_basedir_copy.phpt73
1 files changed, 70 insertions, 3 deletions
diff --git a/tests/security/open_basedir_copy.phpt b/tests/security/open_basedir_copy.phpt
index 8490b074a2..7cb902add0 100644
--- a/tests/security/open_basedir_copy.phpt
+++ b/tests/security/open_basedir_copy.phpt
@@ -1,11 +1,78 @@
--TEST--
Test open_basedir configuration
--INI--
-open_basedir={PWD}
+open_basedir=.
--FILE--
<?php
-$thisdir = dirname(__FILE__);
+require_once "open_basedir.inc";
+test_open_basedir_before("copy");
-var_dump(touch($thisdir . "afile"));
+var_dump(copy("ok.txt", "../bad"));
+var_dump(copy("ok.txt", "../bad/bad.txt"));
+var_dump(copy("ok.txt", ".."));
+var_dump(copy("ok.txt", "../"));
+var_dump(copy("ok.txt", "/"));
+var_dump(copy("ok.txt", "../bad/."));
+var_dump(copy("ok.txt", "../bad/./bad.txt"));
+var_dump(copy("ok.txt", "./../."));
+var_dump(copy("ok.txt", "copy.txt"));
+var_dump(unlink("copy.txt"));
+test_open_basedir_after("copy");
?>
+--CLEAN--
+<?php
+require_once "open_basedir.inc";
+delete_directories();
+?>
+--EXPECTF--
+*** Testing open_basedir configuration [copy] ***
+bool(true)
+bool(true)
+bool(true)
+bool(true)
+bool(true)
+
+Warning: copy(): open_basedir restriction in effect. File(../bad) is not within the allowed path(s): (.) in %s on line %d
+
+Warning: copy(../bad): failed to open stream: %s in %s on line %d
+bool(false)
+
+Warning: copy(): open_basedir restriction in effect. File(../bad/bad.txt) is not within the allowed path(s): (.) in %s on line %d
+
+Warning: copy(../bad/bad.txt): failed to open stream: %s in %s on line %d
+bool(false)
+
+Warning: copy(): open_basedir restriction in effect. File(..) is not within the allowed path(s): (.) in %s on line %d
+
+Warning: copy(..): failed to open stream: %s in %s on line %d
+bool(false)
+
+Warning: copy(): open_basedir restriction in effect. File(../) is not within the allowed path(s): (.) in %s on line %d
+
+Warning: copy(../): failed to open stream: %s in %s on line %d
+bool(false)
+
+Warning: copy(): open_basedir restriction in effect. File(/) is not within the allowed path(s): (.) in %s on line %d
+
+Warning: copy(/): failed to open stream: %s in %s on line %d
+bool(false)
+
+Warning: copy(): open_basedir restriction in effect. File(../bad/.) is not within the allowed path(s): (.) in %s on line %d
+
+Warning: copy(../bad/.): failed to open stream: %s in %s on line %d
+bool(false)
+
+Warning: copy(): open_basedir restriction in effect. File(../bad/./bad.txt) is not within the allowed path(s): (.) in %s on line %d
+
+Warning: copy(../bad/./bad.txt): failed to open stream: %s in %s on line %d
+bool(false)
+
+Warning: copy(): open_basedir restriction in effect. File(./../.) is not within the allowed path(s): (.) in %s on line %d
+
+Warning: copy(./../.): failed to open stream: %s in %s on line %d
+bool(false)
+bool(true)
+bool(true)
+*** Finished testing open_basedir configuration [copy] ***
+