import zend standard tests
[hiphop-php.git] / hphp / test / zend / bad / ext-standard-file / chmod_variation2.php
blob6e5dacddd16caca7478d6bd1686be6bc41447e34
1 <?php
3 define("PERMISSIONS_MASK", 0777);
5 $script_directory = dirname(__FILE__);
6 chdir($script_directory);
7 $test_dirname = basename(__FILE__, ".php") . "testdir";
8 mkdir($test_dirname);
10 $filepath = __FILE__ . ".tmp";
11 $filename = basename($filepath);
12 $fd = fopen($filepath, "w+");
13 fclose($fd);
15 echo "chmod() on a path containing .. and .\n";
16 var_dump(chmod("./$test_dirname/../$filename", 0777));
17 var_dump(chmod("./$test_dirname/../$filename", 0755));
18 clearstatcache();
19 printf("%o\n", fileperms($filepath) & PERMISSIONS_MASK);
21 echo "\nchmod() on a path containing .. with invalid directories\n";
22 var_dump(chmod($filepath, 0777));
23 var_dump(chmod("./$test_dirname/bad_dir/../../$filename", 0755));
24 clearstatcache();
25 printf("%o\n", fileperms($filepath) & PERMISSIONS_MASK);
27 echo "\nchmod() on a linked file\n";
28 $linkname = "somelink";
29 var_dump(symlink($filepath, $linkname));
30 var_dump(chmod($filepath, 0777));
31 var_dump(chmod($linkname, 0755));
32 clearstatcache();
33 printf("%o\n", fileperms($filepath) & PERMISSIONS_MASK);
34 var_dump(unlink($linkname));
36 echo "\nchmod() on a relative path from a different working directory\n";
37 chdir($test_dirname);
38 var_dump(chmod("../$filename", 0777));
39 var_dump(chmod("../$filename", 0755));
40 clearstatcache();
41 printf("%o\n", fileperms($filepath) & PERMISSIONS_MASK);
42 chdir($script_directory);
44 echo "\nchmod() on a directory with a trailing /\n";
45 var_dump(chmod($test_dirname, 0777));
46 var_dump(chmod("$test_dirname/", 0775));
47 clearstatcache();
48 printf("%o\n", fileperms($filepath) & PERMISSIONS_MASK);
50 chdir($script_directory);
51 rmdir($test_dirname);
52 unlink($filepath);