Annotation of embedaddon/php/tests/security/open_basedir_symlink.phpt, revision 1.1.1.1

1.1       misho       1: --TEST--
                      2: Test open_basedir configuration
                      3: --SKIPIF--
                      4: <?php
                      5: if (substr(PHP_OS, 0, 3) == 'WIN') {
                      6:     die('skip no symlinks on Windows');
                      7: }
                      8: ?>
                      9: --INI--
                     10: open_basedir=.
                     11: --FILE--
                     12: <?php
                     13: require_once "open_basedir.inc";
                     14: $initdir = getcwd();
                     15: test_open_basedir_before("symlink");
                     16: 
                     17: $target = ($initdir."/test/ok/ok.txt");
                     18: var_dump(symlink($target, "../bad/symlink.txt"));
                     19: var_dump(symlink($target, "../symlink.txt"));
                     20: var_dump(symlink($target, "../bad/./symlink.txt"));
                     21: var_dump(symlink($target, "./.././symlink.txt"));
                     22: 
                     23: $symlink = ($initdir."/test/ok/symlink.txt");
                     24: var_dump(symlink("../bad/bad.txt", $symlink));
                     25: var_dump(symlink("../bad", $symlink));
                     26: var_dump(symlink("../bad/./bad.txt", $symlink));
                     27: var_dump(symlink("../bad/bad.txt", $symlink));
                     28: var_dump(symlink("./.././bad", $symlink));
                     29: 
                     30: $target = ($initdir."/test/ok/ok.txt");
                     31: 
                     32: var_dump(symlink($target, $symlink));
                     33: var_dump(unlink($symlink));
                     34: 
                     35: var_dump(mkdir("ok2"));
                     36: $symlink = ($initdir."/test/ok/ok2/ok.txt");
                     37: var_dump(symlink("../ok.txt", $symlink)); // $target == (dirname($symlink)."/".$target) == ($initdir."/test/ok/ok.txt");
                     38: var_dump(unlink($symlink));
                     39: 
                     40: test_open_basedir_after("symlink");
                     41: ?>
                     42: --CLEAN--
                     43: <?php
                     44: require_once "open_basedir.inc";
                     45: delete_directories();
                     46: ?>
                     47: --EXPECTF--
                     48: *** Testing open_basedir configuration [symlink] ***
                     49: bool(true)
                     50: bool(true)
                     51: bool(true)
                     52: bool(true)
                     53: bool(true)
                     54: 
                     55: Warning: symlink(): open_basedir restriction in effect. File(%s/test/bad/symlink.txt) is not within the allowed path(s): (.) in %s on line %d
                     56: bool(false)
                     57: 
                     58: Warning: symlink(): open_basedir restriction in effect. File(%s/test/symlink.txt) is not within the allowed path(s): (.) in %s on line %d
                     59: bool(false)
                     60: 
                     61: Warning: symlink(): open_basedir restriction in effect. File(%s/test/bad/symlink.txt) is not within the allowed path(s): (.) in %s on line %d
                     62: bool(false)
                     63: 
                     64: Warning: symlink(): open_basedir restriction in effect. File(%s/test/symlink.txt) is not within the allowed path(s): (.) in %s on line %d
                     65: bool(false)
                     66: 
                     67: Warning: symlink(): open_basedir restriction in effect. File(%s/test/bad/bad.txt) is not within the allowed path(s): (.) in %s on line %d
                     68: bool(false)
                     69: 
                     70: Warning: symlink(): open_basedir restriction in effect. File(%s/test/bad) is not within the allowed path(s): (.) in %s on line %d
                     71: bool(false)
                     72: 
                     73: Warning: symlink(): open_basedir restriction in effect. File(%s/test/bad/bad.txt) is not within the allowed path(s): (.) in %s on line %d
                     74: bool(false)
                     75: 
                     76: Warning: symlink(): open_basedir restriction in effect. File(%s/test/bad/bad.txt) is not within the allowed path(s): (.) in %s on line %d
                     77: bool(false)
                     78: 
                     79: Warning: symlink(): open_basedir restriction in effect. File(%s/test/bad) is not within the allowed path(s): (.) in %s on line %d
                     80: bool(false)
                     81: bool(true)
                     82: bool(true)
                     83: bool(true)
                     84: bool(true)
                     85: bool(true)
                     86: *** Finished testing open_basedir configuration [symlink] ***
                     87: 

FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>