1--TEST--
2Test lstat() and stat() functions: usage variations - effects changing permissions of link
3--SKIPIF--
4<?php
5if (getenv("SKIP_SLOW_TESTS")) die("skip slow test");
6if (substr(PHP_OS, 0, 3) == 'WIN') {
7    die('skip.. lstat() not available on Windows');
8}
9?>
10--FILE--
11<?php
12/* Prototype: array lstat ( string $filename );
13   Description: Gives information about a file or symbolic link
14
15   Prototype: array stat ( string $filename );
16   Description: Gives information about a file
17*/
18
19/* test the effects on stats by changing permissions of link */
20
21$file_path = dirname(__FILE__);
22require "$file_path/file.inc";
23
24
25$filename = "$file_path/lstat_stat_variation15.tmp";
26$fp = fopen($filename, "w");  // temp file
27fclose($fp);
28
29// temp link
30$linkname = "$file_path/lstat_stat_variation15_link.tmp";
31symlink($filename, $linkname);
32
33// checking lstat() and stat() on links
34echo "*** Testing lstat() on a link after changing its access permission ***\n";
35clearstatcache();
36$old_stat = lstat($linkname);
37var_dump( chmod($linkname, 0777) );
38// clear the stat
39clearstatcache();
40sleep(2);
41$new_stat = lstat($linkname);
42// compare self stats
43var_dump( compare_self_stat($old_stat) );
44var_dump( compare_self_stat($new_stat) );
45// compare the stat
46var_dump( compare_stats($old_stat, $new_stat, $all_stat_keys, "=") );
47
48echo "\n--- Done ---";
49?>
50--CLEAN--
51<?php
52$file_path = dirname(__FILE__);
53unlink("$file_path/lstat_stat_variation15_link.tmp");
54unlink("$file_path/lstat_stat_variation15.tmp");
55?>
56--EXPECTF--
57*** Testing lstat() on a link after changing its access permission ***
58bool(true)
59bool(true)
60bool(true)
61bool(true)
62
63--- Done ---
64