I'm in the process of developing an updated version of the .htaccess security plugin, and one thing I have been working on is file permissions. Some people had problems trying to create files on their server and I realized it was bad programming on my part.. so I began researching permissions in detail. I went deep into the source code of Apache (which is why this site is called AskApache, BTW), PHP, Python, Ocaml, Perl, Ruby, and POSIX operating systems and got a pretty good handle on it now.. Show
Tips before we dig inHere's a few things I've learned that I didn't know before (using php). Deleting Files and DirectoriesDeleting a file may require chmodding the file to 666 or even 777 before you are able to delete it. You also might have to chmod the parent directory of the file as well. Also, you may have to chdir to the directory the file is in. And lastly you may have to change the owner or group of the file. Further than that you can try renaming the file first then deleting it.. Deleting a directory means you need to remove every file in it first. It needs to be empty. And if your file system uses NFS or some other networked FS you might have even more problems deleting files. If the file you are trying to delete is being used by say, Apache or php then you might have to kill that process first. Creating Files in Restrictive EnvironmentsMy research has been geared to try and make my code as robust as possible, I'm throwing everything but the kitchen sink into some of these functions because so many people are on such different types of servers. To create a file in a restrictive environment is a fun excercise to take.. You can write a file using many different functions, but there are some tricks if they all fail. One trick is instead of trying to "write" the data to the file, you can UPLOAD the data to the server and let PHP handle the file as if you used an upload form. I like to use fsockopen to do it, as some installations have been setup to prevent this type of fake upload. Then there are the various other hacks like using an ftp connection (if you know the user/pass) to send the file from php, using ssh from php, whatever is available on the hosts php installation. In addition to those more involved workarounds you can often get around this problem by doing little hacks discussed at php.net in the comments for various functions. Such as changing the umask, changing directories with chdir first, creating a temporary file using a function like tempfile and then renaming or copying the tempfile to your desired file which sometimes gives you the permissions needed to write to the location. If the php installation is newer than you can also look into creating your own stream context to pass write the data direct. Stat FunctionI've created a stat function in php that goes farther than the normal stat function... Just give the function a file to stat, and it returns an array of information. function askapache_stat($filename) { clearstatcache(); $ss=@stat($filename); if(!$ss) die("Couldnt stat {$filename}"); $file_convert=array(0140000=>'ssocket',0120000=>'llink',0100000=>'-file',0060000=>'bblock',0040000=>'ddir',0020000=>'cchar',0010000=>'pfifo'); $p=$ss['mode']; $t=decoct($ss['mode'] & 0170000); $str = (array_key_exists(octdec($t),$file_convert)) ? $file_convert[octdec($t)]{0} : 'u'; $str.=(($p&0x0100)?'r':'-').(($p&0x0080)?'w':'-').(($p&0x0040)?(($p&0x0800)?'s':'x'):(($p&0x0800)?'S':'-')); $str.=(($p&0x0020)?'r':'-').(($p&0x0010)?'w':'-').(($p&0x0008)?(($p&0x0400)?'s':'x'):(($p&0x0400)?'S':'-')); $str.=(($p&0x0004)?'r':'-').(($p&0x0002)?'w':'-').(($p&0x0001)?(($p&0x0200)?'t':'x'):(($p&0x0200)?'T':'-')); $s=array( 'perms'=>array( 'umask'=>sprintf("%04o",umask()), 'human'=>$str, 'octal1'=>sprintf("%o", ($ss['mode'] & 000777)), 'octal2'=>sprintf("0%o", 0777 & $p), 'decimal'=>sprintf("%04o", $p), 'fileperms'=>@fileperms($filename), 'mode1'=>$p, 'mode2'=>$ss['mode']), 'filetype'=>array( 'type'=>substr($file_convert[octdec($t)],1), 'type_octal'=>sprintf("%07o", octdec($t)), 'is_file'=>@is_file($filename), 'is_dir'=>@is_dir($filename), 'is_link'=>@is_link($filename), 'is_readable'=> @is_readable($filename), 'is_writable'=> @is_writable($filename)), 'owner'=>array( 'fileowner'=>$ss['uid'], 'filegroup'=>$ss['gid'], 'owner_name'=>(function_exists('posix_getpwuid')) ? @reset(@posix_getpwuid($ss['uid'])) : '', 'group_name'=>(function_exists('posix_getgrgid')) ? @reset(@posix_getgrgid($ss['gid'])) : ''), 'file'=>array( 'filename'=>$filename, 'realpath'=>(@realpath($filename) != $filename) ? @realpath($filename) : '', 'dirname'=>@dirname($filename), 'basename'=>@basename($filename)), 'device'=>array( 'device'=>$ss['dev'], //Device 'device_number'=>$ss['rdev'], //Device number, if device. 'inode'=>$ss['ino'], //File serial number 'link_count'=>$ss['nlink'], //link count 'link_to'=>($s['type']=='link') ? @readlink($filename) : ''), 'size'=>array( 'size'=>$ss['size'], //Size of file, in bytes. 'blocks'=>$ss['blocks'], //Number 512-byte blocks allocated 'block_size'=> $ss['blksize']), //Optimal block size for I/O. 'time'=>array( 'mtime'=>$ss['mtime'], //Time of last modification 'atime'=>$ss['atime'], //Time of last access. 'ctime'=>$ss['ctime'], //Time of last status change 'accessed'=>@date('Y M D H:i:s',$ss['atime']), 'modified'=>@date('Y M D H:i:s',$ss['mtime']), 'created'=>@date('Y M D H:i:s',$ss['ctime'])), ); clearstatcache(); return $s; } PHP Stat Function OutputExample output, say from function askapache_stat( $filename ) { $p=@fileperms($filename); $s=@stat($filename); $str=''; $t=decoct($s['mode'] & 0170000); switch (octdec($t)) { case 0140000: $str = 's'; $stat['type']='socket'; break; case 0120000: $str = 'l'; $stat['type']='link'; break; case 0100000: $str = '-'; $stat['type']='file'; break; case 0060000: $str = 'b'; $stat['type']='block'; break; case 0040000: $str = 'd'; $stat['type']='dir'; break; case 0020000: $str = 'c'; $stat['type']='char'; break; case 0010000: $str = 'p'; $stat['type']='fifo'; break; default: $str = 'u'; $stat['type']='unknown'; break; } $stat['type_octal'] = sprintf("%07o", octdec($t)); $str .= (($p&0x0100)?'r':'-').(($p&0x0080)?'w':'-').(($p&0x0040)?(($p&0x0800)?'s':'x'):(($p&0x0800)?'S':'-')); $str .= (($p&0x0020)?'r':'-').(($p&0x0010)?'w':'-').(($p&0x0008)?(($p&0x0400)?'s':'x'):(($p&0x0400)?'S':'-')); $str .= (($p&0x0004)?'r':'-').(($p&0x0002)?'w':'-').(($p&0x0001)?(($p&0x0200)?'t':'x'):(($p&0x0200)?'T':'-')); $stat['default_umask']=sprintf("%04o",umask()); $stat['perm_human']=$str; $stat['perm_octal1'] = sprintf( "%o", ( $s['mode'] & 00777 ) ); $stat['perm_octal2'] = sprintf("0%o", 0777 & $p); $stat['perm_dec'] = sprintf("%04o", $p); $stat['perm_mode']=$s['mode']; // File mode. $stat['file'] = @realpath($filename); $stat['basename'] = basename( $filename ); $stat['user_id'] = $s['uid']; $stat['group_id'] = $s['gid']; $stat['device']=$s['dev']; // Device $stat['device_number']=$s['rdev']; // Device number, if device. $stat['inode']=$s['ino']; // File serial number $stat['link_count']=$s['nlink']; // link count if($stat['type']=='link')$stat['link_to']=@readlink( $filename ); $stat['size']=$s['size']; // Size of file, in bytes. $stat['block_size']=$s['blksize']; // Optimal block size for I/O. $stat['blocks']=$s['blocks']; // Number 512-byte blocks allocated $stat['time_access']=@date( 'Y M D H:i:s',$s['atime']); // Time of last access. $stat['time_modified']=@date( 'Y M D H:i:s',$s['mtime']); // Time of last modification $stat['time_created']=@date( 'Y M D H:i:s',$s['ctime']); // Time of last status change clearstatcache(); return $stat; } header('Content-Type: text/plain'); $stat=askapache_stat(__FILE__); print_r($stat); 4Array( [perms] => Array ( [umask] => 0022 [human] => -rw-r--r-- [octal1] => 644 [octal2] => 0644 [decimal] => 100644 [fileperms] => 33188 [mode1] => 33188 [mode2] => 33188 ) [filetype] => Array ( [type] => file [type_octal] => 0100000 [is_file] => 1 [is_dir] => [is_link] => [is_readable] => 1 [is_writable] => 1 ) [owner] => Array ( [fileowner] => 035483 [filegroup] => 23472 [owner_name] => askapache [group_name] => grp22558 ) [file] => Array ( [filename] => /web/askapache/askapache-stat/public_html/ok/g.php [realpath] => [dirname] => /web/askapache/askapache-stat/public_html/ok [basename] => g.php ) [device] => Array ( [device] => 25 [device_number] => 0 [inode] => 92455020 [link_count] => 1 [link_to] => ) [size] => Array ( [size] => 2652 [blocks] => 8 [block_size] => 8192 ) [time] => Array ( [mtime] => 1227685253 [atime] => 1227685138 [ctime] => 1227685253 [accessed] => 2008 Nov Tue 23:38:58 [modified] => 2008 Nov Tue 23:40:53 [created] => 2008 Nov Tue 23:40:53 ) )Every Permission 0000 to 0777This shows what each numeric permission does to a REGULAR file. I'll provide the code to do this below so you can do the same thing on your server.chmod 0 function askapache_stat( $filename ) { $p=@fileperms($filename); $s=@stat($filename); $str=''; $t=decoct($s['mode'] & 0170000); switch (octdec($t)) { case 0140000: $str = 's'; $stat['type']='socket'; break; case 0120000: $str = 'l'; $stat['type']='link'; break; case 0100000: $str = '-'; $stat['type']='file'; break; case 0060000: $str = 'b'; $stat['type']='block'; break; case 0040000: $str = 'd'; $stat['type']='dir'; break; case 0020000: $str = 'c'; $stat['type']='char'; break; case 0010000: $str = 'p'; $stat['type']='fifo'; break; default: $str = 'u'; $stat['type']='unknown'; break; } $stat['type_octal'] = sprintf("%07o", octdec($t)); $str .= (($p&0x0100)?'r':'-').(($p&0x0080)?'w':'-').(($p&0x0040)?(($p&0x0800)?'s':'x'):(($p&0x0800)?'S':'-')); $str .= (($p&0x0020)?'r':'-').(($p&0x0010)?'w':'-').(($p&0x0008)?(($p&0x0400)?'s':'x'):(($p&0x0400)?'S':'-')); $str .= (($p&0x0004)?'r':'-').(($p&0x0002)?'w':'-').(($p&0x0001)?(($p&0x0200)?'t':'x'):(($p&0x0200)?'T':'-')); $stat['default_umask']=sprintf("%04o",umask()); $stat['perm_human']=$str; $stat['perm_octal1'] = sprintf( "%o", ( $s['mode'] & 00777 ) ); $stat['perm_octal2'] = sprintf("0%o", 0777 & $p); $stat['perm_dec'] = sprintf("%04o", $p); $stat['perm_mode']=$s['mode']; // File mode. $stat['file'] = @realpath($filename); $stat['basename'] = basename( $filename ); $stat['user_id'] = $s['uid']; $stat['group_id'] = $s['gid']; $stat['device']=$s['dev']; // Device $stat['device_number']=$s['rdev']; // Device number, if device. $stat['inode']=$s['ino']; // File serial number $stat['link_count']=$s['nlink']; // link count if($stat['type']=='link')$stat['link_to']=@readlink( $filename ); $stat['size']=$s['size']; // Size of file, in bytes. $stat['block_size']=$s['blksize']; // Optimal block size for I/O. $stat['blocks']=$s['blocks']; // Number 512-byte blocks allocated $stat['time_access']=@date( 'Y M D H:i:s',$s['atime']); // Time of last access. $stat['time_modified']=@date( 'Y M D H:i:s',$s['mtime']); // Time of last modification $stat['time_created']=@date( 'Y M D H:i:s',$s['ctime']); // Time of last status change clearstatcache(); return $stat; } header('Content-Type: text/plain'); $stat=askapache_stat(__FILE__); print_r($stat);5chmod 1 function askapache_stat( $filename ) { $p=@fileperms($filename); $s=@stat($filename); $str=''; $t=decoct($s['mode'] & 0170000); switch (octdec($t)) { case 0140000: $str = 's'; $stat['type']='socket'; break; case 0120000: $str = 'l'; $stat['type']='link'; break; case 0100000: $str = '-'; $stat['type']='file'; break; case 0060000: $str = 'b'; $stat['type']='block'; break; case 0040000: $str = 'd'; $stat['type']='dir'; break; case 0020000: $str = 'c'; $stat['type']='char'; break; case 0010000: $str = 'p'; $stat['type']='fifo'; break; default: $str = 'u'; $stat['type']='unknown'; break; } $stat['type_octal'] = sprintf("%07o", octdec($t)); $str .= (($p&0x0100)?'r':'-').(($p&0x0080)?'w':'-').(($p&0x0040)?(($p&0x0800)?'s':'x'):(($p&0x0800)?'S':'-')); $str .= (($p&0x0020)?'r':'-').(($p&0x0010)?'w':'-').(($p&0x0008)?(($p&0x0400)?'s':'x'):(($p&0x0400)?'S':'-')); $str .= (($p&0x0004)?'r':'-').(($p&0x0002)?'w':'-').(($p&0x0001)?(($p&0x0200)?'t':'x'):(($p&0x0200)?'T':'-')); $stat['default_umask']=sprintf("%04o",umask()); $stat['perm_human']=$str; $stat['perm_octal1'] = sprintf( "%o", ( $s['mode'] & 00777 ) ); $stat['perm_octal2'] = sprintf("0%o", 0777 & $p); $stat['perm_dec'] = sprintf("%04o", $p); $stat['perm_mode']=$s['mode']; // File mode. $stat['file'] = @realpath($filename); $stat['basename'] = basename( $filename ); $stat['user_id'] = $s['uid']; $stat['group_id'] = $s['gid']; $stat['device']=$s['dev']; // Device $stat['device_number']=$s['rdev']; // Device number, if device. $stat['inode']=$s['ino']; // File serial number $stat['link_count']=$s['nlink']; // link count if($stat['type']=='link')$stat['link_to']=@readlink( $filename ); $stat['size']=$s['size']; // Size of file, in bytes. $stat['block_size']=$s['blksize']; // Optimal block size for I/O. $stat['blocks']=$s['blocks']; // Number 512-byte blocks allocated $stat['time_access']=@date( 'Y M D H:i:s',$s['atime']); // Time of last access. $stat['time_modified']=@date( 'Y M D H:i:s',$s['mtime']); // Time of last modification $stat['time_created']=@date( 'Y M D H:i:s',$s['ctime']); // Time of last status change clearstatcache(); return $stat; } header('Content-Type: text/plain'); $stat=askapache_stat(__FILE__); print_r($stat);6chmod 2 function askapache_stat( $filename ) { $p=@fileperms($filename); $s=@stat($filename); $str=''; $t=decoct($s['mode'] & 0170000); switch (octdec($t)) { case 0140000: $str = 's'; $stat['type']='socket'; break; case 0120000: $str = 'l'; $stat['type']='link'; break; case 0100000: $str = '-'; $stat['type']='file'; break; case 0060000: $str = 'b'; $stat['type']='block'; break; case 0040000: $str = 'd'; $stat['type']='dir'; break; case 0020000: $str = 'c'; $stat['type']='char'; break; case 0010000: $str = 'p'; $stat['type']='fifo'; break; default: $str = 'u'; $stat['type']='unknown'; break; } $stat['type_octal'] = sprintf("%07o", octdec($t)); $str .= (($p&0x0100)?'r':'-').(($p&0x0080)?'w':'-').(($p&0x0040)?(($p&0x0800)?'s':'x'):(($p&0x0800)?'S':'-')); $str .= (($p&0x0020)?'r':'-').(($p&0x0010)?'w':'-').(($p&0x0008)?(($p&0x0400)?'s':'x'):(($p&0x0400)?'S':'-')); $str .= (($p&0x0004)?'r':'-').(($p&0x0002)?'w':'-').(($p&0x0001)?(($p&0x0200)?'t':'x'):(($p&0x0200)?'T':'-')); $stat['default_umask']=sprintf("%04o",umask()); $stat['perm_human']=$str; $stat['perm_octal1'] = sprintf( "%o", ( $s['mode'] & 00777 ) ); $stat['perm_octal2'] = sprintf("0%o", 0777 & $p); $stat['perm_dec'] = sprintf("%04o", $p); $stat['perm_mode']=$s['mode']; // File mode. $stat['file'] = @realpath($filename); $stat['basename'] = basename( $filename ); $stat['user_id'] = $s['uid']; $stat['group_id'] = $s['gid']; $stat['device']=$s['dev']; // Device $stat['device_number']=$s['rdev']; // Device number, if device. $stat['inode']=$s['ino']; // File serial number $stat['link_count']=$s['nlink']; // link count if($stat['type']=='link')$stat['link_to']=@readlink( $filename ); $stat['size']=$s['size']; // Size of file, in bytes. $stat['block_size']=$s['blksize']; // Optimal block size for I/O. $stat['blocks']=$s['blocks']; // Number 512-byte blocks allocated $stat['time_access']=@date( 'Y M D H:i:s',$s['atime']); // Time of last access. $stat['time_modified']=@date( 'Y M D H:i:s',$s['mtime']); // Time of last modification $stat['time_created']=@date( 'Y M D H:i:s',$s['ctime']); // Time of last status change clearstatcache(); return $stat; } header('Content-Type: text/plain'); $stat=askapache_stat(__FILE__); print_r($stat);7chmod 3 function askapache_stat( $filename ) { $p=@fileperms($filename); $s=@stat($filename); $str=''; $t=decoct($s['mode'] & 0170000); switch (octdec($t)) { case 0140000: $str = 's'; $stat['type']='socket'; break; case 0120000: $str = 'l'; $stat['type']='link'; break; case 0100000: $str = '-'; $stat['type']='file'; break; case 0060000: $str = 'b'; $stat['type']='block'; break; case 0040000: $str = 'd'; $stat['type']='dir'; break; case 0020000: $str = 'c'; $stat['type']='char'; break; case 0010000: $str = 'p'; $stat['type']='fifo'; break; default: $str = 'u'; $stat['type']='unknown'; break; } $stat['type_octal'] = sprintf("%07o", octdec($t)); $str .= (($p&0x0100)?'r':'-').(($p&0x0080)?'w':'-').(($p&0x0040)?(($p&0x0800)?'s':'x'):(($p&0x0800)?'S':'-')); $str .= (($p&0x0020)?'r':'-').(($p&0x0010)?'w':'-').(($p&0x0008)?(($p&0x0400)?'s':'x'):(($p&0x0400)?'S':'-')); $str .= (($p&0x0004)?'r':'-').(($p&0x0002)?'w':'-').(($p&0x0001)?(($p&0x0200)?'t':'x'):(($p&0x0200)?'T':'-')); $stat['default_umask']=sprintf("%04o",umask()); $stat['perm_human']=$str; $stat['perm_octal1'] = sprintf( "%o", ( $s['mode'] & 00777 ) ); $stat['perm_octal2'] = sprintf("0%o", 0777 & $p); $stat['perm_dec'] = sprintf("%04o", $p); $stat['perm_mode']=$s['mode']; // File mode. $stat['file'] = @realpath($filename); $stat['basename'] = basename( $filename ); $stat['user_id'] = $s['uid']; $stat['group_id'] = $s['gid']; $stat['device']=$s['dev']; // Device $stat['device_number']=$s['rdev']; // Device number, if device. $stat['inode']=$s['ino']; // File serial number $stat['link_count']=$s['nlink']; // link count if($stat['type']=='link')$stat['link_to']=@readlink( $filename ); $stat['size']=$s['size']; // Size of file, in bytes. $stat['block_size']=$s['blksize']; // Optimal block size for I/O. $stat['blocks']=$s['blocks']; // Number 512-byte blocks allocated $stat['time_access']=@date( 'Y M D H:i:s',$s['atime']); // Time of last access. $stat['time_modified']=@date( 'Y M D H:i:s',$s['mtime']); // Time of last modification $stat['time_created']=@date( 'Y M D H:i:s',$s['ctime']); // Time of last status change clearstatcache(); return $stat; } header('Content-Type: text/plain'); $stat=askapache_stat(__FILE__); print_r($stat);8chmod 4 function askapache_stat( $filename ) { $p=@fileperms($filename); $s=@stat($filename); $str=''; $t=decoct($s['mode'] & 0170000); switch (octdec($t)) { case 0140000: $str = 's'; $stat['type']='socket'; break; case 0120000: $str = 'l'; $stat['type']='link'; break; case 0100000: $str = '-'; $stat['type']='file'; break; case 0060000: $str = 'b'; $stat['type']='block'; break; case 0040000: $str = 'd'; $stat['type']='dir'; break; case 0020000: $str = 'c'; $stat['type']='char'; break; case 0010000: $str = 'p'; $stat['type']='fifo'; break; default: $str = 'u'; $stat['type']='unknown'; break; } $stat['type_octal'] = sprintf("%07o", octdec($t)); $str .= (($p&0x0100)?'r':'-').(($p&0x0080)?'w':'-').(($p&0x0040)?(($p&0x0800)?'s':'x'):(($p&0x0800)?'S':'-')); $str .= (($p&0x0020)?'r':'-').(($p&0x0010)?'w':'-').(($p&0x0008)?(($p&0x0400)?'s':'x'):(($p&0x0400)?'S':'-')); $str .= (($p&0x0004)?'r':'-').(($p&0x0002)?'w':'-').(($p&0x0001)?(($p&0x0200)?'t':'x'):(($p&0x0200)?'T':'-')); $stat['default_umask']=sprintf("%04o",umask()); $stat['perm_human']=$str; $stat['perm_octal1'] = sprintf( "%o", ( $s['mode'] & 00777 ) ); $stat['perm_octal2'] = sprintf("0%o", 0777 & $p); $stat['perm_dec'] = sprintf("%04o", $p); $stat['perm_mode']=$s['mode']; // File mode. $stat['file'] = @realpath($filename); $stat['basename'] = basename( $filename ); $stat['user_id'] = $s['uid']; $stat['group_id'] = $s['gid']; $stat['device']=$s['dev']; // Device $stat['device_number']=$s['rdev']; // Device number, if device. $stat['inode']=$s['ino']; // File serial number $stat['link_count']=$s['nlink']; // link count if($stat['type']=='link')$stat['link_to']=@readlink( $filename ); $stat['size']=$s['size']; // Size of file, in bytes. $stat['block_size']=$s['blksize']; // Optimal block size for I/O. $stat['blocks']=$s['blocks']; // Number 512-byte blocks allocated $stat['time_access']=@date( 'Y M D H:i:s',$s['atime']); // Time of last access. $stat['time_modified']=@date( 'Y M D H:i:s',$s['mtime']); // Time of last modification $stat['time_created']=@date( 'Y M D H:i:s',$s['ctime']); // Time of last status change clearstatcache(); return $stat; } header('Content-Type: text/plain'); $stat=askapache_stat(__FILE__); print_r($stat);9chmod 5 !defined('S_IFMT') && define('S_IFMT', 0170000); // mask for all types !defined('S_IFSOCK') && define('S_IFSOCK', 0140000); // type: socket !defined('S_IFLNK') && define('S_IFLNK', 0120000); // type: symbolic link !defined('S_IFREG') && define('S_IFREG', 0100000); // type: regular file !defined('S_IFBLK') && define('S_IFBLK', 0060000); // type: block device !defined('S_IFDIR') && define('S_IFDIR', 0040000); // type: directory !defined('S_IFCHR') && define('S_IFCHR', 0020000); // type: character device !defined('S_IFIFO') && define('S_IFIFO', 0010000); // type: fifo !defined('S_ISUID') && define('S_ISUID', 0004000); // set-uid bit !defined('S_ISGID') && define('S_ISGID', 0002000); // set-gid bit !defined('S_ISVTX') && define('S_ISVTX', 0001000); // sticky bit !defined('S_IRWXU') && define('S_IRWXU', 00700); // mask for owner permissions !defined('S_IRUSR') && define('S_IRUSR', 00400); // owner: read permission !defined('S_IWUSR') && define('S_IWUSR', 00200); // owner: write permission !defined('S_IXUSR') && define('S_IXUSR', 00100); // owner: execute permission !defined('S_IRWXG') && define('S_IRWXG', 00070); // mask for group permissions !defined('S_IRGRP') && define('S_IRGRP', 00040); // group: read permission !defined('S_IWGRP') && define('S_IWGRP', 00020); // group: write permission !defined('S_IXGRP') && define('S_IXGRP', 00010); // group: execute permission !defined('S_IRWXO') && define('S_IRWXO', 00007); // mask for others permissions !defined('S_IROTH') && define('S_IROTH', 00004); // others: read permission !defined('S_IWOTH') && define('S_IWOTH', 00002); // others: write permission !defined('S_IXOTH') && define('S_IXOTH', 00001); // others: execute permission !defined('S_IRWXUGO') && define('S_IRWXUGO', (S_IRWXU | S_IRWXG | S_IRWXO)); !defined('S_IALLUGO') && define('S_IALLUGO', (S_ISUID | S_ISGID | S_ISVTX | S_IRWXUGO)); !defined('S_IRUGO') && define('S_IRUGO', (S_IRUSR | S_IRGRP | S_IROTH)); !defined('S_IWUGO') && define('S_IWUGO', (S_IWUSR | S_IWGRP | S_IWOTH)); !defined('S_IXUGO') && define('S_IXUGO', (S_IXUSR | S_IXGRP | S_IXOTH)); !defined('S_IRWUGO') && define('S_IRWUGO', (S_IRUGO | S_IWUGO));0chmod 6 !defined('S_IFMT') && define('S_IFMT', 0170000); // mask for all types !defined('S_IFSOCK') && define('S_IFSOCK', 0140000); // type: socket !defined('S_IFLNK') && define('S_IFLNK', 0120000); // type: symbolic link !defined('S_IFREG') && define('S_IFREG', 0100000); // type: regular file !defined('S_IFBLK') && define('S_IFBLK', 0060000); // type: block device !defined('S_IFDIR') && define('S_IFDIR', 0040000); // type: directory !defined('S_IFCHR') && define('S_IFCHR', 0020000); // type: character device !defined('S_IFIFO') && define('S_IFIFO', 0010000); // type: fifo !defined('S_ISUID') && define('S_ISUID', 0004000); // set-uid bit !defined('S_ISGID') && define('S_ISGID', 0002000); // set-gid bit !defined('S_ISVTX') && define('S_ISVTX', 0001000); // sticky bit !defined('S_IRWXU') && define('S_IRWXU', 00700); // mask for owner permissions !defined('S_IRUSR') && define('S_IRUSR', 00400); // owner: read permission !defined('S_IWUSR') && define('S_IWUSR', 00200); // owner: write permission !defined('S_IXUSR') && define('S_IXUSR', 00100); // owner: execute permission !defined('S_IRWXG') && define('S_IRWXG', 00070); // mask for group permissions !defined('S_IRGRP') && define('S_IRGRP', 00040); // group: read permission !defined('S_IWGRP') && define('S_IWGRP', 00020); // group: write permission !defined('S_IXGRP') && define('S_IXGRP', 00010); // group: execute permission !defined('S_IRWXO') && define('S_IRWXO', 00007); // mask for others permissions !defined('S_IROTH') && define('S_IROTH', 00004); // others: read permission !defined('S_IWOTH') && define('S_IWOTH', 00002); // others: write permission !defined('S_IXOTH') && define('S_IXOTH', 00001); // others: execute permission !defined('S_IRWXUGO') && define('S_IRWXUGO', (S_IRWXU | S_IRWXG | S_IRWXO)); !defined('S_IALLUGO') && define('S_IALLUGO', (S_ISUID | S_ISGID | S_ISVTX | S_IRWXUGO)); !defined('S_IRUGO') && define('S_IRUGO', (S_IRUSR | S_IRGRP | S_IROTH)); !defined('S_IWUGO') && define('S_IWUGO', (S_IWUSR | S_IWGRP | S_IWOTH)); !defined('S_IXUGO') && define('S_IXUGO', (S_IXUSR | S_IXGRP | S_IXOTH)); !defined('S_IRWUGO') && define('S_IRWUGO', (S_IRUGO | S_IWUGO));1chmod 7 !defined('S_IFMT') && define('S_IFMT', 0170000); // mask for all types !defined('S_IFSOCK') && define('S_IFSOCK', 0140000); // type: socket !defined('S_IFLNK') && define('S_IFLNK', 0120000); // type: symbolic link !defined('S_IFREG') && define('S_IFREG', 0100000); // type: regular file !defined('S_IFBLK') && define('S_IFBLK', 0060000); // type: block device !defined('S_IFDIR') && define('S_IFDIR', 0040000); // type: directory !defined('S_IFCHR') && define('S_IFCHR', 0020000); // type: character device !defined('S_IFIFO') && define('S_IFIFO', 0010000); // type: fifo !defined('S_ISUID') && define('S_ISUID', 0004000); // set-uid bit !defined('S_ISGID') && define('S_ISGID', 0002000); // set-gid bit !defined('S_ISVTX') && define('S_ISVTX', 0001000); // sticky bit !defined('S_IRWXU') && define('S_IRWXU', 00700); // mask for owner permissions !defined('S_IRUSR') && define('S_IRUSR', 00400); // owner: read permission !defined('S_IWUSR') && define('S_IWUSR', 00200); // owner: write permission !defined('S_IXUSR') && define('S_IXUSR', 00100); // owner: execute permission !defined('S_IRWXG') && define('S_IRWXG', 00070); // mask for group permissions !defined('S_IRGRP') && define('S_IRGRP', 00040); // group: read permission !defined('S_IWGRP') && define('S_IWGRP', 00020); // group: write permission !defined('S_IXGRP') && define('S_IXGRP', 00010); // group: execute permission !defined('S_IRWXO') && define('S_IRWXO', 00007); // mask for others permissions !defined('S_IROTH') && define('S_IROTH', 00004); // others: read permission !defined('S_IWOTH') && define('S_IWOTH', 00002); // others: write permission !defined('S_IXOTH') && define('S_IXOTH', 00001); // others: execute permission !defined('S_IRWXUGO') && define('S_IRWXUGO', (S_IRWXU | S_IRWXG | S_IRWXO)); !defined('S_IALLUGO') && define('S_IALLUGO', (S_ISUID | S_ISGID | S_ISVTX | S_IRWXUGO)); !defined('S_IRUGO') && define('S_IRUGO', (S_IRUSR | S_IRGRP | S_IROTH)); !defined('S_IWUGO') && define('S_IWUGO', (S_IWUSR | S_IWGRP | S_IWOTH)); !defined('S_IXUGO') && define('S_IXUGO', (S_IXUSR | S_IXGRP | S_IXOTH)); !defined('S_IRWUGO') && define('S_IRWUGO', (S_IRUGO | S_IWUGO));2chmod 10 !defined('S_IFMT') && define('S_IFMT', 0170000); // mask for all types !defined('S_IFSOCK') && define('S_IFSOCK', 0140000); // type: socket !defined('S_IFLNK') && define('S_IFLNK', 0120000); // type: symbolic link !defined('S_IFREG') && define('S_IFREG', 0100000); // type: regular file !defined('S_IFBLK') && define('S_IFBLK', 0060000); // type: block device !defined('S_IFDIR') && define('S_IFDIR', 0040000); // type: directory !defined('S_IFCHR') && define('S_IFCHR', 0020000); // type: character device !defined('S_IFIFO') && define('S_IFIFO', 0010000); // type: fifo !defined('S_ISUID') && define('S_ISUID', 0004000); // set-uid bit !defined('S_ISGID') && define('S_ISGID', 0002000); // set-gid bit !defined('S_ISVTX') && define('S_ISVTX', 0001000); // sticky bit !defined('S_IRWXU') && define('S_IRWXU', 00700); // mask for owner permissions !defined('S_IRUSR') && define('S_IRUSR', 00400); // owner: read permission !defined('S_IWUSR') && define('S_IWUSR', 00200); // owner: write permission !defined('S_IXUSR') && define('S_IXUSR', 00100); // owner: execute permission !defined('S_IRWXG') && define('S_IRWXG', 00070); // mask for group permissions !defined('S_IRGRP') && define('S_IRGRP', 00040); // group: read permission !defined('S_IWGRP') && define('S_IWGRP', 00020); // group: write permission !defined('S_IXGRP') && define('S_IXGRP', 00010); // group: execute permission !defined('S_IRWXO') && define('S_IRWXO', 00007); // mask for others permissions !defined('S_IROTH') && define('S_IROTH', 00004); // others: read permission !defined('S_IWOTH') && define('S_IWOTH', 00002); // others: write permission !defined('S_IXOTH') && define('S_IXOTH', 00001); // others: execute permission !defined('S_IRWXUGO') && define('S_IRWXUGO', (S_IRWXU | S_IRWXG | S_IRWXO)); !defined('S_IALLUGO') && define('S_IALLUGO', (S_ISUID | S_ISGID | S_ISVTX | S_IRWXUGO)); !defined('S_IRUGO') && define('S_IRUGO', (S_IRUSR | S_IRGRP | S_IROTH)); !defined('S_IWUGO') && define('S_IWUGO', (S_IWUSR | S_IWGRP | S_IWOTH)); !defined('S_IXUGO') && define('S_IXUGO', (S_IXUSR | S_IXGRP | S_IXOTH)); !defined('S_IRWUGO') && define('S_IRWUGO', (S_IRUGO | S_IWUGO));3chmod 11 !defined('S_IFMT') && define('S_IFMT', 0170000); // mask for all types !defined('S_IFSOCK') && define('S_IFSOCK', 0140000); // type: socket !defined('S_IFLNK') && define('S_IFLNK', 0120000); // type: symbolic link !defined('S_IFREG') && define('S_IFREG', 0100000); // type: regular file !defined('S_IFBLK') && define('S_IFBLK', 0060000); // type: block device !defined('S_IFDIR') && define('S_IFDIR', 0040000); // type: directory !defined('S_IFCHR') && define('S_IFCHR', 0020000); // type: character device !defined('S_IFIFO') && define('S_IFIFO', 0010000); // type: fifo !defined('S_ISUID') && define('S_ISUID', 0004000); // set-uid bit !defined('S_ISGID') && define('S_ISGID', 0002000); // set-gid bit !defined('S_ISVTX') && define('S_ISVTX', 0001000); // sticky bit !defined('S_IRWXU') && define('S_IRWXU', 00700); // mask for owner permissions !defined('S_IRUSR') && define('S_IRUSR', 00400); // owner: read permission !defined('S_IWUSR') && define('S_IWUSR', 00200); // owner: write permission !defined('S_IXUSR') && define('S_IXUSR', 00100); // owner: execute permission !defined('S_IRWXG') && define('S_IRWXG', 00070); // mask for group permissions !defined('S_IRGRP') && define('S_IRGRP', 00040); // group: read permission !defined('S_IWGRP') && define('S_IWGRP', 00020); // group: write permission !defined('S_IXGRP') && define('S_IXGRP', 00010); // group: execute permission !defined('S_IRWXO') && define('S_IRWXO', 00007); // mask for others permissions !defined('S_IROTH') && define('S_IROTH', 00004); // others: read permission !defined('S_IWOTH') && define('S_IWOTH', 00002); // others: write permission !defined('S_IXOTH') && define('S_IXOTH', 00001); // others: execute permission !defined('S_IRWXUGO') && define('S_IRWXUGO', (S_IRWXU | S_IRWXG | S_IRWXO)); !defined('S_IALLUGO') && define('S_IALLUGO', (S_ISUID | S_ISGID | S_ISVTX | S_IRWXUGO)); !defined('S_IRUGO') && define('S_IRUGO', (S_IRUSR | S_IRGRP | S_IROTH)); !defined('S_IWUGO') && define('S_IWUGO', (S_IWUSR | S_IWGRP | S_IWOTH)); !defined('S_IXUGO') && define('S_IXUGO', (S_IXUSR | S_IXGRP | S_IXOTH)); !defined('S_IRWUGO') && define('S_IRWUGO', (S_IRUGO | S_IWUGO));4chmod 12 !defined('S_IFMT') && define('S_IFMT', 0170000); // mask for all types !defined('S_IFSOCK') && define('S_IFSOCK', 0140000); // type: socket !defined('S_IFLNK') && define('S_IFLNK', 0120000); // type: symbolic link !defined('S_IFREG') && define('S_IFREG', 0100000); // type: regular file !defined('S_IFBLK') && define('S_IFBLK', 0060000); // type: block device !defined('S_IFDIR') && define('S_IFDIR', 0040000); // type: directory !defined('S_IFCHR') && define('S_IFCHR', 0020000); // type: character device !defined('S_IFIFO') && define('S_IFIFO', 0010000); // type: fifo !defined('S_ISUID') && define('S_ISUID', 0004000); // set-uid bit !defined('S_ISGID') && define('S_ISGID', 0002000); // set-gid bit !defined('S_ISVTX') && define('S_ISVTX', 0001000); // sticky bit !defined('S_IRWXU') && define('S_IRWXU', 00700); // mask for owner permissions !defined('S_IRUSR') && define('S_IRUSR', 00400); // owner: read permission !defined('S_IWUSR') && define('S_IWUSR', 00200); // owner: write permission !defined('S_IXUSR') && define('S_IXUSR', 00100); // owner: execute permission !defined('S_IRWXG') && define('S_IRWXG', 00070); // mask for group permissions !defined('S_IRGRP') && define('S_IRGRP', 00040); // group: read permission !defined('S_IWGRP') && define('S_IWGRP', 00020); // group: write permission !defined('S_IXGRP') && define('S_IXGRP', 00010); // group: execute permission !defined('S_IRWXO') && define('S_IRWXO', 00007); // mask for others permissions !defined('S_IROTH') && define('S_IROTH', 00004); // others: read permission !defined('S_IWOTH') && define('S_IWOTH', 00002); // others: write permission !defined('S_IXOTH') && define('S_IXOTH', 00001); // others: execute permission !defined('S_IRWXUGO') && define('S_IRWXUGO', (S_IRWXU | S_IRWXG | S_IRWXO)); !defined('S_IALLUGO') && define('S_IALLUGO', (S_ISUID | S_ISGID | S_ISVTX | S_IRWXUGO)); !defined('S_IRUGO') && define('S_IRUGO', (S_IRUSR | S_IRGRP | S_IROTH)); !defined('S_IWUGO') && define('S_IWUGO', (S_IWUSR | S_IWGRP | S_IWOTH)); !defined('S_IXUGO') && define('S_IXUGO', (S_IXUSR | S_IXGRP | S_IXOTH)); !defined('S_IRWUGO') && define('S_IRWUGO', (S_IRUGO | S_IWUGO));5chmod 13 !defined('S_IFMT') && define('S_IFMT', 0170000); // mask for all types !defined('S_IFSOCK') && define('S_IFSOCK', 0140000); // type: socket !defined('S_IFLNK') && define('S_IFLNK', 0120000); // type: symbolic link !defined('S_IFREG') && define('S_IFREG', 0100000); // type: regular file !defined('S_IFBLK') && define('S_IFBLK', 0060000); // type: block device !defined('S_IFDIR') && define('S_IFDIR', 0040000); // type: directory !defined('S_IFCHR') && define('S_IFCHR', 0020000); // type: character device !defined('S_IFIFO') && define('S_IFIFO', 0010000); // type: fifo !defined('S_ISUID') && define('S_ISUID', 0004000); // set-uid bit !defined('S_ISGID') && define('S_ISGID', 0002000); // set-gid bit !defined('S_ISVTX') && define('S_ISVTX', 0001000); // sticky bit !defined('S_IRWXU') && define('S_IRWXU', 00700); // mask for owner permissions !defined('S_IRUSR') && define('S_IRUSR', 00400); // owner: read permission !defined('S_IWUSR') && define('S_IWUSR', 00200); // owner: write permission !defined('S_IXUSR') && define('S_IXUSR', 00100); // owner: execute permission !defined('S_IRWXG') && define('S_IRWXG', 00070); // mask for group permissions !defined('S_IRGRP') && define('S_IRGRP', 00040); // group: read permission !defined('S_IWGRP') && define('S_IWGRP', 00020); // group: write permission !defined('S_IXGRP') && define('S_IXGRP', 00010); // group: execute permission !defined('S_IRWXO') && define('S_IRWXO', 00007); // mask for others permissions !defined('S_IROTH') && define('S_IROTH', 00004); // others: read permission !defined('S_IWOTH') && define('S_IWOTH', 00002); // others: write permission !defined('S_IXOTH') && define('S_IXOTH', 00001); // others: execute permission !defined('S_IRWXUGO') && define('S_IRWXUGO', (S_IRWXU | S_IRWXG | S_IRWXO)); !defined('S_IALLUGO') && define('S_IALLUGO', (S_ISUID | S_ISGID | S_ISVTX | S_IRWXUGO)); !defined('S_IRUGO') && define('S_IRUGO', (S_IRUSR | S_IRGRP | S_IROTH)); !defined('S_IWUGO') && define('S_IWUGO', (S_IWUSR | S_IWGRP | S_IWOTH)); !defined('S_IXUGO') && define('S_IXUGO', (S_IXUSR | S_IXGRP | S_IXOTH)); !defined('S_IRWUGO') && define('S_IRWUGO', (S_IRUGO | S_IWUGO));6chmod 14 !defined('S_IFMT') && define('S_IFMT', 0170000); // mask for all types !defined('S_IFSOCK') && define('S_IFSOCK', 0140000); // type: socket !defined('S_IFLNK') && define('S_IFLNK', 0120000); // type: symbolic link !defined('S_IFREG') && define('S_IFREG', 0100000); // type: regular file !defined('S_IFBLK') && define('S_IFBLK', 0060000); // type: block device !defined('S_IFDIR') && define('S_IFDIR', 0040000); // type: directory !defined('S_IFCHR') && define('S_IFCHR', 0020000); // type: character device !defined('S_IFIFO') && define('S_IFIFO', 0010000); // type: fifo !defined('S_ISUID') && define('S_ISUID', 0004000); // set-uid bit !defined('S_ISGID') && define('S_ISGID', 0002000); // set-gid bit !defined('S_ISVTX') && define('S_ISVTX', 0001000); // sticky bit !defined('S_IRWXU') && define('S_IRWXU', 00700); // mask for owner permissions !defined('S_IRUSR') && define('S_IRUSR', 00400); // owner: read permission !defined('S_IWUSR') && define('S_IWUSR', 00200); // owner: write permission !defined('S_IXUSR') && define('S_IXUSR', 00100); // owner: execute permission !defined('S_IRWXG') && define('S_IRWXG', 00070); // mask for group permissions !defined('S_IRGRP') && define('S_IRGRP', 00040); // group: read permission !defined('S_IWGRP') && define('S_IWGRP', 00020); // group: write permission !defined('S_IXGRP') && define('S_IXGRP', 00010); // group: execute permission !defined('S_IRWXO') && define('S_IRWXO', 00007); // mask for others permissions !defined('S_IROTH') && define('S_IROTH', 00004); // others: read permission !defined('S_IWOTH') && define('S_IWOTH', 00002); // others: write permission !defined('S_IXOTH') && define('S_IXOTH', 00001); // others: execute permission !defined('S_IRWXUGO') && define('S_IRWXUGO', (S_IRWXU | S_IRWXG | S_IRWXO)); !defined('S_IALLUGO') && define('S_IALLUGO', (S_ISUID | S_ISGID | S_ISVTX | S_IRWXUGO)); !defined('S_IRUGO') && define('S_IRUGO', (S_IRUSR | S_IRGRP | S_IROTH)); !defined('S_IWUGO') && define('S_IWUGO', (S_IWUSR | S_IWGRP | S_IWOTH)); !defined('S_IXUGO') && define('S_IXUGO', (S_IXUSR | S_IXGRP | S_IXOTH)); !defined('S_IRWUGO') && define('S_IRWUGO', (S_IRUGO | S_IWUGO));7chmod 15 !defined('S_IFMT') && define('S_IFMT', 0170000); // mask for all types !defined('S_IFSOCK') && define('S_IFSOCK', 0140000); // type: socket !defined('S_IFLNK') && define('S_IFLNK', 0120000); // type: symbolic link !defined('S_IFREG') && define('S_IFREG', 0100000); // type: regular file !defined('S_IFBLK') && define('S_IFBLK', 0060000); // type: block device !defined('S_IFDIR') && define('S_IFDIR', 0040000); // type: directory !defined('S_IFCHR') && define('S_IFCHR', 0020000); // type: character device !defined('S_IFIFO') && define('S_IFIFO', 0010000); // type: fifo !defined('S_ISUID') && define('S_ISUID', 0004000); // set-uid bit !defined('S_ISGID') && define('S_ISGID', 0002000); // set-gid bit !defined('S_ISVTX') && define('S_ISVTX', 0001000); // sticky bit !defined('S_IRWXU') && define('S_IRWXU', 00700); // mask for owner permissions !defined('S_IRUSR') && define('S_IRUSR', 00400); // owner: read permission !defined('S_IWUSR') && define('S_IWUSR', 00200); // owner: write permission !defined('S_IXUSR') && define('S_IXUSR', 00100); // owner: execute permission !defined('S_IRWXG') && define('S_IRWXG', 00070); // mask for group permissions !defined('S_IRGRP') && define('S_IRGRP', 00040); // group: read permission !defined('S_IWGRP') && define('S_IWGRP', 00020); // group: write permission !defined('S_IXGRP') && define('S_IXGRP', 00010); // group: execute permission !defined('S_IRWXO') && define('S_IRWXO', 00007); // mask for others permissions !defined('S_IROTH') && define('S_IROTH', 00004); // others: read permission !defined('S_IWOTH') && define('S_IWOTH', 00002); // others: write permission !defined('S_IXOTH') && define('S_IXOTH', 00001); // others: execute permission !defined('S_IRWXUGO') && define('S_IRWXUGO', (S_IRWXU | S_IRWXG | S_IRWXO)); !defined('S_IALLUGO') && define('S_IALLUGO', (S_ISUID | S_ISGID | S_ISVTX | S_IRWXUGO)); !defined('S_IRUGO') && define('S_IRUGO', (S_IRUSR | S_IRGRP | S_IROTH)); !defined('S_IWUGO') && define('S_IWUGO', (S_IWUSR | S_IWGRP | S_IWOTH)); !defined('S_IXUGO') && define('S_IXUGO', (S_IXUSR | S_IXGRP | S_IXOTH)); !defined('S_IRWUGO') && define('S_IRWUGO', (S_IRUGO | S_IWUGO));8chmod 16 !defined('S_IFMT') && define('S_IFMT', 0170000); // mask for all types !defined('S_IFSOCK') && define('S_IFSOCK', 0140000); // type: socket !defined('S_IFLNK') && define('S_IFLNK', 0120000); // type: symbolic link !defined('S_IFREG') && define('S_IFREG', 0100000); // type: regular file !defined('S_IFBLK') && define('S_IFBLK', 0060000); // type: block device !defined('S_IFDIR') && define('S_IFDIR', 0040000); // type: directory !defined('S_IFCHR') && define('S_IFCHR', 0020000); // type: character device !defined('S_IFIFO') && define('S_IFIFO', 0010000); // type: fifo !defined('S_ISUID') && define('S_ISUID', 0004000); // set-uid bit !defined('S_ISGID') && define('S_ISGID', 0002000); // set-gid bit !defined('S_ISVTX') && define('S_ISVTX', 0001000); // sticky bit !defined('S_IRWXU') && define('S_IRWXU', 00700); // mask for owner permissions !defined('S_IRUSR') && define('S_IRUSR', 00400); // owner: read permission !defined('S_IWUSR') && define('S_IWUSR', 00200); // owner: write permission !defined('S_IXUSR') && define('S_IXUSR', 00100); // owner: execute permission !defined('S_IRWXG') && define('S_IRWXG', 00070); // mask for group permissions !defined('S_IRGRP') && define('S_IRGRP', 00040); // group: read permission !defined('S_IWGRP') && define('S_IWGRP', 00020); // group: write permission !defined('S_IXGRP') && define('S_IXGRP', 00010); // group: execute permission !defined('S_IRWXO') && define('S_IRWXO', 00007); // mask for others permissions !defined('S_IROTH') && define('S_IROTH', 00004); // others: read permission !defined('S_IWOTH') && define('S_IWOTH', 00002); // others: write permission !defined('S_IXOTH') && define('S_IXOTH', 00001); // others: execute permission !defined('S_IRWXUGO') && define('S_IRWXUGO', (S_IRWXU | S_IRWXG | S_IRWXO)); !defined('S_IALLUGO') && define('S_IALLUGO', (S_ISUID | S_ISGID | S_ISVTX | S_IRWXUGO)); !defined('S_IRUGO') && define('S_IRUGO', (S_IRUSR | S_IRGRP | S_IROTH)); !defined('S_IWUGO') && define('S_IWUGO', (S_IWUSR | S_IWGRP | S_IWOTH)); !defined('S_IXUGO') && define('S_IXUGO', (S_IXUSR | S_IXGRP | S_IXOTH)); !defined('S_IRWUGO') && define('S_IRWUGO', (S_IRUGO | S_IWUGO));9chmod 17 #define S_IRWXU 00700 #define S_IRUSR 00400 #define S_IWUSR 00200 #define S_IXUSR 001000chmod 20 #define S_IRWXU 00700 #define S_IRUSR 00400 #define S_IWUSR 00200 #define S_IXUSR 001001chmod 21 #define S_IRWXU 00700 #define S_IRUSR 00400 #define S_IWUSR 00200 #define S_IXUSR 001002chmod 22 #define S_IRWXU 00700 #define S_IRUSR 00400 #define S_IWUSR 00200 #define S_IXUSR 001003chmod 23 #define S_IRWXU 00700 #define S_IRUSR 00400 #define S_IWUSR 00200 #define S_IXUSR 001004chmod 24 #define S_IRWXU 00700 #define S_IRUSR 00400 #define S_IWUSR 00200 #define S_IXUSR 001005chmod 25 #define S_IRWXU 00700 #define S_IRUSR 00400 #define S_IWUSR 00200 #define S_IXUSR 001006chmod 26 #define S_IRWXU 00700 #define S_IRUSR 00400 #define S_IWUSR 00200 #define S_IXUSR 001007chmod 27 #define S_IRWXU 00700 #define S_IRUSR 00400 #define S_IWUSR 00200 #define S_IXUSR 001008chmod 30 #define S_IRWXU 00700 #define S_IRUSR 00400 #define S_IWUSR 00200 #define S_IXUSR 001009chmod 31 #define S_IRWXG 00070 #define S_IRGRP 00040 #define S_IWGRP 00020 #define S_IXGRP 000100chmod 32 #define S_IRWXG 00070 #define S_IRGRP 00040 #define S_IWGRP 00020 #define S_IXGRP 000101chmod 33 #define S_IRWXG 00070 #define S_IRGRP 00040 #define S_IWGRP 00020 #define S_IXGRP 000102chmod 34 #define S_IRWXG 00070 #define S_IRGRP 00040 #define S_IWGRP 00020 #define S_IXGRP 000103chmod 35 #define S_IRWXG 00070 #define S_IRGRP 00040 #define S_IWGRP 00020 #define S_IXGRP 000104chmod 36 #define S_IRWXG 00070 #define S_IRGRP 00040 #define S_IWGRP 00020 #define S_IXGRP 000105chmod 37 #define S_IRWXG 00070 #define S_IRGRP 00040 #define S_IWGRP 00020 #define S_IXGRP 000106chmod 40 #define S_IRWXG 00070 #define S_IRGRP 00040 #define S_IWGRP 00020 #define S_IXGRP 000107chmod 41 #define S_IRWXG 00070 #define S_IRGRP 00040 #define S_IWGRP 00020 #define S_IXGRP 000108chmod 42 #define S_IRWXG 00070 #define S_IRGRP 00040 #define S_IWGRP 00020 #define S_IXGRP 000109chmod 43 #define S_IRWXO 00007 #define S_IROTH 00004 #define S_IWOTH 00002 #define S_IXOTH 000010chmod 44 #define S_IRWXO 00007 #define S_IROTH 00004 #define S_IWOTH 00002 #define S_IXOTH 000011chmod 45 #define S_IRWXO 00007 #define S_IROTH 00004 #define S_IWOTH 00002 #define S_IXOTH 000012chmod 46 #define S_IRWXO 00007 #define S_IROTH 00004 #define S_IWOTH 00002 #define S_IXOTH 000013chmod 47 #define S_IRWXO 00007 #define S_IROTH 00004 #define S_IWOTH 00002 #define S_IXOTH 000014chmod 50 #define S_IRWXO 00007 #define S_IROTH 00004 #define S_IWOTH 00002 #define S_IXOTH 000015chmod 51 #define S_IRWXO 00007 #define S_IROTH 00004 #define S_IWOTH 00002 #define S_IXOTH 000016chmod 52 #define S_IRWXO 00007 #define S_IROTH 00004 #define S_IWOTH 00002 #define S_IXOTH 000017chmod 53 #define S_IRWXO 00007 #define S_IROTH 00004 #define S_IWOTH 00002 #define S_IXOTH 000018chmod 54 #define S_IRWXO 00007 #define S_IROTH 00004 #define S_IWOTH 00002 #define S_IXOTH 000019chmod 55 $ 711 -rwx--x--x /web/askapache/cgi-bin/php.cgi00chmod 56 $ 711 -rwx--x--x /web/askapache/cgi-bin/php.cgi01chmod 57 $ 711 -rwx--x--x /web/askapache/cgi-bin/php.cgi02chmod 60 $ 711 -rwx--x--x /web/askapache/cgi-bin/php.cgi03chmod 61 $ 711 -rwx--x--x /web/askapache/cgi-bin/php.cgi04chmod 62 $ 711 -rwx--x--x /web/askapache/cgi-bin/php.cgi05chmod 63 $ 711 -rwx--x--x /web/askapache/cgi-bin/php.cgi06chmod 64 $ 711 -rwx--x--x /web/askapache/cgi-bin/php.cgi07chmod 65 $ 711 -rwx--x--x /web/askapache/cgi-bin/php.cgi08chmod 66 $ 711 -rwx--x--x /web/askapache/cgi-bin/php.cgi09chmod 67 $ 711 -rwx--x--x /web/askapache/cgi-bin/php.cgi10chmod 70 $ 711 -rwx--x--x /web/askapache/cgi-bin/php.cgi11chmod 71 $ 711 -rwx--x--x /web/askapache/cgi-bin/php.cgi12chmod 72 $ 711 -rwx--x--x /web/askapache/cgi-bin/php.cgi13chmod 73 $ 711 -rwx--x--x /web/askapache/cgi-bin/php.cgi14chmod 74 $ 711 -rwx--x--x /web/askapache/cgi-bin/php.cgi15chmod 75 $ 711 -rwx--x--x /web/askapache/cgi-bin/php.cgi16chmod 76 $ 711 -rwx--x--x /web/askapache/cgi-bin/php.cgi17chmod 77 $ 711 -rwx--x--x /web/askapache/cgi-bin/php.cgi18chmod 100 $ 711 -rwx--x--x /web/askapache/cgi-bin/php.cgi19chmod 101 $ 711 -rwx--x--x /web/askapache/cgi-bin/php.cgi20chmod 102 $ 711 -rwx--x--x /web/askapache/cgi-bin/php.cgi21chmod 103 $ 711 -rwx--x--x /web/askapache/cgi-bin/php.cgi22chmod 104 $ 711 -rwx--x--x /web/askapache/cgi-bin/php.cgi23chmod 105 $ 711 -rwx--x--x /web/askapache/cgi-bin/php.cgi24chmod 106 $ 711 -rwx--x--x /web/askapache/cgi-bin/php.cgi25chmod 107 $ 711 -rwx--x--x /web/askapache/cgi-bin/php.cgi26chmod 110 $ 711 -rwx--x--x /web/askapache/cgi-bin/php.cgi27chmod 111 $ 711 -rwx--x--x /web/askapache/cgi-bin/php.cgi28chmod 112 $ 711 -rwx--x--x /web/askapache/cgi-bin/php.cgi29chmod 113 $ 711 -rwx--x--x /web/askapache/cgi-bin/php.cgi30chmod 114 $ 711 -rwx--x--x /web/askapache/cgi-bin/php.cgi31chmod 115 $ 711 -rwx--x--x /web/askapache/cgi-bin/php.cgi32chmod 116 $ 711 -rwx--x--x /web/askapache/cgi-bin/php.cgi33chmod 117 $ 711 -rwx--x--x /web/askapache/cgi-bin/php.cgi34chmod 120 $ 711 -rwx--x--x /web/askapache/cgi-bin/php.cgi35chmod 121 $ 711 -rwx--x--x /web/askapache/cgi-bin/php.cgi36chmod 122 $ 711 -rwx--x--x /web/askapache/cgi-bin/php.cgi37chmod 123 $ 711 -rwx--x--x /web/askapache/cgi-bin/php.cgi38chmod 124 $ 711 -rwx--x--x /web/askapache/cgi-bin/php.cgi39chmod 125 $ 711 -rwx--x--x /web/askapache/cgi-bin/php.cgi40chmod 126 $ 711 -rwx--x--x /web/askapache/cgi-bin/php.cgi41chmod 127 $ 711 -rwx--x--x /web/askapache/cgi-bin/php.cgi42chmod 130 $ 711 -rwx--x--x /web/askapache/cgi-bin/php.cgi43chmod 131 $ 711 -rwx--x--x /web/askapache/cgi-bin/php.cgi44chmod 132 $ 711 -rwx--x--x /web/askapache/cgi-bin/php.cgi45chmod 133 $ 711 -rwx--x--x /web/askapache/cgi-bin/php.cgi46chmod 134 $ 711 -rwx--x--x /web/askapache/cgi-bin/php.cgi47chmod 135 $ 711 -rwx--x--x /web/askapache/cgi-bin/php.cgi48chmod 136 $ 711 -rwx--x--x /web/askapache/cgi-bin/php.cgi49chmod 137 $ 711 -rwx--x--x /web/askapache/cgi-bin/php.cgi50chmod 140 $ 711 -rwx--x--x /web/askapache/cgi-bin/php.cgi51chmod 141 $ 711 -rwx--x--x /web/askapache/cgi-bin/php.cgi52chmod 142 $ 711 -rwx--x--x /web/askapache/cgi-bin/php.cgi53chmod 143 $ 711 -rwx--x--x /web/askapache/cgi-bin/php.cgi54chmod 144 $ 711 -rwx--x--x /web/askapache/cgi-bin/php.cgi55chmod 145 $ 711 -rwx--x--x /web/askapache/cgi-bin/php.cgi56chmod 146 $ 711 -rwx--x--x /web/askapache/cgi-bin/php.cgi57chmod 147 $ 711 -rwx--x--x /web/askapache/cgi-bin/php.cgi58chmod 150 $ 711 -rwx--x--x /web/askapache/cgi-bin/php.cgi59chmod 151 $ 711 -rwx--x--x /web/askapache/cgi-bin/php.cgi60chmod 152 $ 711 -rwx--x--x /web/askapache/cgi-bin/php.cgi61chmod 153 $ 711 -rwx--x--x /web/askapache/cgi-bin/php.cgi62chmod 154 $ 711 -rwx--x--x /web/askapache/cgi-bin/php.cgi63chmod 155 $ 711 -rwx--x--x /web/askapache/cgi-bin/php.cgi64chmod 156 $ 711 -rwx--x--x /web/askapache/cgi-bin/php.cgi65chmod 157 $ 711 -rwx--x--x /web/askapache/cgi-bin/php.cgi66chmod 160 $ 711 -rwx--x--x /web/askapache/cgi-bin/php.cgi67chmod 161 $ 711 -rwx--x--x /web/askapache/cgi-bin/php.cgi68chmod 162 $ 711 -rwx--x--x /web/askapache/cgi-bin/php.cgi69chmod 163 $ 711 -rwx--x--x /web/askapache/cgi-bin/php.cgi70chmod 164 $ 711 -rwx--x--x /web/askapache/cgi-bin/php.cgi71chmod 165 $ 711 -rwx--x--x /web/askapache/cgi-bin/php.cgi72chmod 166 $ 711 -rwx--x--x /web/askapache/cgi-bin/php.cgi73chmod 167 $ 711 -rwx--x--x /web/askapache/cgi-bin/php.cgi74chmod 170 $ 711 -rwx--x--x /web/askapache/cgi-bin/php.cgi75chmod 171 $ 711 -rwx--x--x /web/askapache/cgi-bin/php.cgi76chmod 172 $ 711 -rwx--x--x /web/askapache/cgi-bin/php.cgi77chmod 173 $ 711 -rwx--x--x /web/askapache/cgi-bin/php.cgi78chmod 174 $ 711 -rwx--x--x /web/askapache/cgi-bin/php.cgi79chmod 175 $ 711 -rwx--x--x /web/askapache/cgi-bin/php.cgi80chmod 176 $ 711 -rwx--x--x /web/askapache/cgi-bin/php.cgi81chmod 177 $ 711 -rwx--x--x /web/askapache/cgi-bin/php.cgi82chmod 200 $ 711 -rwx--x--x /web/askapache/cgi-bin/php.cgi83chmod 201 $ 711 -rwx--x--x /web/askapache/cgi-bin/php.cgi84chmod 202 $ 711 -rwx--x--x /web/askapache/cgi-bin/php.cgi85chmod 203 $ 711 -rwx--x--x /web/askapache/cgi-bin/php.cgi86chmod 204 $ 711 -rwx--x--x /web/askapache/cgi-bin/php.cgi87chmod 205 $ 711 -rwx--x--x /web/askapache/cgi-bin/php.cgi88chmod 206 $ 711 -rwx--x--x /web/askapache/cgi-bin/php.cgi89chmod 207 $ 711 -rwx--x--x /web/askapache/cgi-bin/php.cgi90chmod 210 $ 711 -rwx--x--x /web/askapache/cgi-bin/php.cgi91chmod 211 $ 711 -rwx--x--x /web/askapache/cgi-bin/php.cgi92chmod 212 $ 711 -rwx--x--x /web/askapache/cgi-bin/php.cgi93chmod 213 $ 711 -rwx--x--x /web/askapache/cgi-bin/php.cgi94chmod 214 $ 711 -rwx--x--x /web/askapache/cgi-bin/php.cgi95chmod 215 $ 711 -rwx--x--x /web/askapache/cgi-bin/php.cgi96chmod 216 $ 711 -rwx--x--x /web/askapache/cgi-bin/php.cgi97chmod 217 $ 711 -rwx--x--x /web/askapache/cgi-bin/php.cgi98chmod 220 $ 711 -rwx--x--x /web/askapache/cgi-bin/php.cgi99chmod 221 $ 600 -rw------- /web/askapache/cgi-bin/php.ini00chmod 222 $ 600 -rw------- /web/askapache/cgi-bin/php.ini01chmod 223 $ 600 -rw------- /web/askapache/cgi-bin/php.ini02chmod 224 $ 600 -rw------- /web/askapache/cgi-bin/php.ini03chmod 225 $ 600 -rw------- /web/askapache/cgi-bin/php.ini04chmod 226 $ 600 -rw------- /web/askapache/cgi-bin/php.ini05chmod 227 $ 600 -rw------- /web/askapache/cgi-bin/php.ini06chmod 230 $ 600 -rw------- /web/askapache/cgi-bin/php.ini07chmod 231 $ 600 -rw------- /web/askapache/cgi-bin/php.ini08chmod 232 $ 600 -rw------- /web/askapache/cgi-bin/php.ini09chmod 233 $ 600 -rw------- /web/askapache/cgi-bin/php.ini10chmod 234 $ 600 -rw------- /web/askapache/cgi-bin/php.ini11chmod 235 $ 600 -rw------- /web/askapache/cgi-bin/php.ini12chmod 236 $ 600 -rw------- /web/askapache/cgi-bin/php.ini13chmod 237 $ 600 -rw------- /web/askapache/cgi-bin/php.ini14chmod 240 $ 600 -rw------- /web/askapache/cgi-bin/php.ini15chmod 241 $ 600 -rw------- /web/askapache/cgi-bin/php.ini16chmod 242 $ 600 -rw------- /web/askapache/cgi-bin/php.ini17chmod 243 $ 600 -rw------- /web/askapache/cgi-bin/php.ini18chmod 244 $ 600 -rw------- /web/askapache/cgi-bin/php.ini19chmod 245 $ 600 -rw------- /web/askapache/cgi-bin/php.ini20chmod 246 $ 600 -rw------- /web/askapache/cgi-bin/php.ini21chmod 247 $ 600 -rw------- /web/askapache/cgi-bin/php.ini22chmod 250 $ 600 -rw------- /web/askapache/cgi-bin/php.ini23chmod 251 $ 600 -rw------- /web/askapache/cgi-bin/php.ini24chmod 252 $ 600 -rw------- /web/askapache/cgi-bin/php.ini25chmod 253 $ 600 -rw------- /web/askapache/cgi-bin/php.ini26chmod 254 $ 600 -rw------- /web/askapache/cgi-bin/php.ini27chmod 255 $ 600 -rw------- /web/askapache/cgi-bin/php.ini28chmod 256 $ 600 -rw------- /web/askapache/cgi-bin/php.ini29chmod 257 $ 600 -rw------- /web/askapache/cgi-bin/php.ini30chmod 260 $ 600 -rw------- /web/askapache/cgi-bin/php.ini31chmod 261 $ 600 -rw------- /web/askapache/cgi-bin/php.ini32chmod 262 $ 600 -rw------- /web/askapache/cgi-bin/php.ini33chmod 263 $ 600 -rw------- /web/askapache/cgi-bin/php.ini34chmod 264 $ 600 -rw------- /web/askapache/cgi-bin/php.ini35chmod 265 $ 600 -rw------- /web/askapache/cgi-bin/php.ini36chmod 266 $ 600 -rw------- /web/askapache/cgi-bin/php.ini37chmod 267 $ 600 -rw------- /web/askapache/cgi-bin/php.ini38chmod 270 $ 600 -rw------- /web/askapache/cgi-bin/php.ini39chmod 271 $ 600 -rw------- /web/askapache/cgi-bin/php.ini40chmod 272 $ 600 -rw------- /web/askapache/cgi-bin/php.ini41chmod 273 $ 600 -rw------- /web/askapache/cgi-bin/php.ini42chmod 274 $ 600 -rw------- /web/askapache/cgi-bin/php.ini43chmod 275 $ 600 -rw------- /web/askapache/cgi-bin/php.ini44chmod 276 $ 600 -rw------- /web/askapache/cgi-bin/php.ini45chmod 277 $ 600 -rw------- /web/askapache/cgi-bin/php.ini46chmod 300 $ 600 -rw------- /web/askapache/cgi-bin/php.ini47chmod 301 $ 600 -rw------- /web/askapache/cgi-bin/php.ini48chmod 302 $ 600 -rw------- /web/askapache/cgi-bin/php.ini49chmod 303 $ 600 -rw------- /web/askapache/cgi-bin/php.ini50chmod 304 $ 600 -rw------- /web/askapache/cgi-bin/php.ini51chmod 305 $ 600 -rw------- /web/askapache/cgi-bin/php.ini52chmod 306 $ 600 -rw------- /web/askapache/cgi-bin/php.ini53chmod 307 $ 600 -rw------- /web/askapache/cgi-bin/php.ini54chmod 310 $ 600 -rw------- /web/askapache/cgi-bin/php.ini55chmod 311 $ 600 -rw------- /web/askapache/cgi-bin/php.ini56chmod 312 $ 600 -rw------- /web/askapache/cgi-bin/php.ini57chmod 313 $ 600 -rw------- /web/askapache/cgi-bin/php.ini58chmod 314 $ 600 -rw------- /web/askapache/cgi-bin/php.ini59chmod 315 $ 600 -rw------- /web/askapache/cgi-bin/php.ini60chmod 316 $ 600 -rw------- /web/askapache/cgi-bin/php.ini61chmod 317 $ 600 -rw------- /web/askapache/cgi-bin/php.ini62chmod 320 $ 600 -rw------- /web/askapache/cgi-bin/php.ini63chmod 321 $ 600 -rw------- /web/askapache/cgi-bin/php.ini64chmod 322 $ 600 -rw------- /web/askapache/cgi-bin/php.ini65chmod 323 $ 600 -rw------- /web/askapache/cgi-bin/php.ini66chmod 324 $ 600 -rw------- /web/askapache/cgi-bin/php.ini67chmod 325 $ 600 -rw------- /web/askapache/cgi-bin/php.ini68chmod 326 $ 600 -rw------- /web/askapache/cgi-bin/php.ini69chmod 327 $ 600 -rw------- /web/askapache/cgi-bin/php.ini70chmod 330 $ 600 -rw------- /web/askapache/cgi-bin/php.ini71chmod 331 $ 600 -rw------- /web/askapache/cgi-bin/php.ini72chmod 332 $ 600 -rw------- /web/askapache/cgi-bin/php.ini73chmod 333 $ 600 -rw------- /web/askapache/cgi-bin/php.ini74chmod 334 $ 600 -rw------- /web/askapache/cgi-bin/php.ini75chmod 335 $ 600 -rw------- /web/askapache/cgi-bin/php.ini76chmod 336 $ 600 -rw------- /web/askapache/cgi-bin/php.ini77chmod 337 $ 600 -rw------- /web/askapache/cgi-bin/php.ini78chmod 340 $ 600 -rw------- /web/askapache/cgi-bin/php.ini79chmod 341 $ 600 -rw------- /web/askapache/cgi-bin/php.ini80chmod 342 $ 600 -rw------- /web/askapache/cgi-bin/php.ini81chmod 343 $ 600 -rw------- /web/askapache/cgi-bin/php.ini82chmod 344 $ 600 -rw------- /web/askapache/cgi-bin/php.ini83chmod 345 $ 600 -rw------- /web/askapache/cgi-bin/php.ini84chmod 346 $ 600 -rw------- /web/askapache/cgi-bin/php.ini85chmod 347 $ 600 -rw------- /web/askapache/cgi-bin/php.ini86chmod 350 $ 600 -rw------- /web/askapache/cgi-bin/php.ini87chmod 351 $ 600 -rw------- /web/askapache/cgi-bin/php.ini88chmod 352 $ 600 -rw------- /web/askapache/cgi-bin/php.ini89chmod 353 $ 600 -rw------- /web/askapache/cgi-bin/php.ini90chmod 354 $ 600 -rw------- /web/askapache/cgi-bin/php.ini91chmod 355 $ 600 -rw------- /web/askapache/cgi-bin/php.ini92chmod 356 $ 600 -rw------- /web/askapache/cgi-bin/php.ini93chmod 357 $ 600 -rw------- /web/askapache/cgi-bin/php.ini94chmod 360 $ 600 -rw------- /web/askapache/cgi-bin/php.ini95chmod 361 $ 600 -rw------- /web/askapache/cgi-bin/php.ini96chmod 362 $ 600 -rw------- /web/askapache/cgi-bin/php.ini97chmod 363 $ 600 -rw------- /web/askapache/cgi-bin/php.ini98chmod 364 $ 600 -rw------- /web/askapache/cgi-bin/php.ini99chmod 365 function askapache_stat($filename) { clearstatcache(); $ss=@stat($filename); if(!$ss) die("Couldnt stat {$filename}"); $file_convert=array(0140000=>'ssocket',0120000=>'llink',0100000=>'-file',0060000=>'bblock',0040000=>'ddir',0020000=>'cchar',0010000=>'pfifo'); $p=$ss['mode']; $t=decoct($ss['mode'] & 0170000); $str = (array_key_exists(octdec($t),$file_convert)) ? $file_convert[octdec($t)]{0} : 'u'; $str.=(($p&0x0100)?'r':'-').(($p&0x0080)?'w':'-').(($p&0x0040)?(($p&0x0800)?'s':'x'):(($p&0x0800)?'S':'-')); $str.=(($p&0x0020)?'r':'-').(($p&0x0010)?'w':'-').(($p&0x0008)?(($p&0x0400)?'s':'x'):(($p&0x0400)?'S':'-')); $str.=(($p&0x0004)?'r':'-').(($p&0x0002)?'w':'-').(($p&0x0001)?(($p&0x0200)?'t':'x'):(($p&0x0200)?'T':'-')); $s=array( 'perms'=>array( 'umask'=>sprintf("%04o",umask()), 'human'=>$str, 'octal1'=>sprintf("%o", ($ss['mode'] & 000777)), 'octal2'=>sprintf("0%o", 0777 & $p), 'decimal'=>sprintf("%04o", $p), 'fileperms'=>@fileperms($filename), 'mode1'=>$p, 'mode2'=>$ss['mode']), 'filetype'=>array( 'type'=>substr($file_convert[octdec($t)],1), 'type_octal'=>sprintf("%07o", octdec($t)), 'is_file'=>@is_file($filename), 'is_dir'=>@is_dir($filename), 'is_link'=>@is_link($filename), 'is_readable'=> @is_readable($filename), 'is_writable'=> @is_writable($filename)), 'owner'=>array( 'fileowner'=>$ss['uid'], 'filegroup'=>$ss['gid'], 'owner_name'=>(function_exists('posix_getpwuid')) ? @reset(@posix_getpwuid($ss['uid'])) : '', 'group_name'=>(function_exists('posix_getgrgid')) ? @reset(@posix_getgrgid($ss['gid'])) : ''), 'file'=>array( 'filename'=>$filename, 'realpath'=>(@realpath($filename) != $filename) ? @realpath($filename) : '', 'dirname'=>@dirname($filename), 'basename'=>@basename($filename)), 'device'=>array( 'device'=>$ss['dev'], //Device 'device_number'=>$ss['rdev'], //Device number, if device. 'inode'=>$ss['ino'], //File serial number 'link_count'=>$ss['nlink'], //link count 'link_to'=>($s['type']=='link') ? @readlink($filename) : ''), 'size'=>array( 'size'=>$ss['size'], //Size of file, in bytes. 'blocks'=>$ss['blocks'], //Number 512-byte blocks allocated 'block_size'=> $ss['blksize']), //Optimal block size for I/O. 'time'=>array( 'mtime'=>$ss['mtime'], //Time of last modification 'atime'=>$ss['atime'], //Time of last access. 'ctime'=>$ss['ctime'], //Time of last status change 'accessed'=>@date('Y M D H:i:s',$ss['atime']), 'modified'=>@date('Y M D H:i:s',$ss['mtime']), 'created'=>@date('Y M D H:i:s',$ss['ctime'])), ); clearstatcache(); return $s; }00chmod 366 function askapache_stat($filename) { clearstatcache(); $ss=@stat($filename); if(!$ss) die("Couldnt stat {$filename}"); $file_convert=array(0140000=>'ssocket',0120000=>'llink',0100000=>'-file',0060000=>'bblock',0040000=>'ddir',0020000=>'cchar',0010000=>'pfifo'); $p=$ss['mode']; $t=decoct($ss['mode'] & 0170000); $str = (array_key_exists(octdec($t),$file_convert)) ? $file_convert[octdec($t)]{0} : 'u'; $str.=(($p&0x0100)?'r':'-').(($p&0x0080)?'w':'-').(($p&0x0040)?(($p&0x0800)?'s':'x'):(($p&0x0800)?'S':'-')); $str.=(($p&0x0020)?'r':'-').(($p&0x0010)?'w':'-').(($p&0x0008)?(($p&0x0400)?'s':'x'):(($p&0x0400)?'S':'-')); $str.=(($p&0x0004)?'r':'-').(($p&0x0002)?'w':'-').(($p&0x0001)?(($p&0x0200)?'t':'x'):(($p&0x0200)?'T':'-')); $s=array( 'perms'=>array( 'umask'=>sprintf("%04o",umask()), 'human'=>$str, 'octal1'=>sprintf("%o", ($ss['mode'] & 000777)), 'octal2'=>sprintf("0%o", 0777 & $p), 'decimal'=>sprintf("%04o", $p), 'fileperms'=>@fileperms($filename), 'mode1'=>$p, 'mode2'=>$ss['mode']), 'filetype'=>array( 'type'=>substr($file_convert[octdec($t)],1), 'type_octal'=>sprintf("%07o", octdec($t)), 'is_file'=>@is_file($filename), 'is_dir'=>@is_dir($filename), 'is_link'=>@is_link($filename), 'is_readable'=> @is_readable($filename), 'is_writable'=> @is_writable($filename)), 'owner'=>array( 'fileowner'=>$ss['uid'], 'filegroup'=>$ss['gid'], 'owner_name'=>(function_exists('posix_getpwuid')) ? @reset(@posix_getpwuid($ss['uid'])) : '', 'group_name'=>(function_exists('posix_getgrgid')) ? @reset(@posix_getgrgid($ss['gid'])) : ''), 'file'=>array( 'filename'=>$filename, 'realpath'=>(@realpath($filename) != $filename) ? @realpath($filename) : '', 'dirname'=>@dirname($filename), 'basename'=>@basename($filename)), 'device'=>array( 'device'=>$ss['dev'], //Device 'device_number'=>$ss['rdev'], //Device number, if device. 'inode'=>$ss['ino'], //File serial number 'link_count'=>$ss['nlink'], //link count 'link_to'=>($s['type']=='link') ? @readlink($filename) : ''), 'size'=>array( 'size'=>$ss['size'], //Size of file, in bytes. 'blocks'=>$ss['blocks'], //Number 512-byte blocks allocated 'block_size'=> $ss['blksize']), //Optimal block size for I/O. 'time'=>array( 'mtime'=>$ss['mtime'], //Time of last modification 'atime'=>$ss['atime'], //Time of last access. 'ctime'=>$ss['ctime'], //Time of last status change 'accessed'=>@date('Y M D H:i:s',$ss['atime']), 'modified'=>@date('Y M D H:i:s',$ss['mtime']), 'created'=>@date('Y M D H:i:s',$ss['ctime'])), ); clearstatcache(); return $s; }01chmod 367 function askapache_stat($filename) { clearstatcache(); $ss=@stat($filename); if(!$ss) die("Couldnt stat {$filename}"); $file_convert=array(0140000=>'ssocket',0120000=>'llink',0100000=>'-file',0060000=>'bblock',0040000=>'ddir',0020000=>'cchar',0010000=>'pfifo'); $p=$ss['mode']; $t=decoct($ss['mode'] & 0170000); $str = (array_key_exists(octdec($t),$file_convert)) ? $file_convert[octdec($t)]{0} : 'u'; $str.=(($p&0x0100)?'r':'-').(($p&0x0080)?'w':'-').(($p&0x0040)?(($p&0x0800)?'s':'x'):(($p&0x0800)?'S':'-')); $str.=(($p&0x0020)?'r':'-').(($p&0x0010)?'w':'-').(($p&0x0008)?(($p&0x0400)?'s':'x'):(($p&0x0400)?'S':'-')); $str.=(($p&0x0004)?'r':'-').(($p&0x0002)?'w':'-').(($p&0x0001)?(($p&0x0200)?'t':'x'):(($p&0x0200)?'T':'-')); $s=array( 'perms'=>array( 'umask'=>sprintf("%04o",umask()), 'human'=>$str, 'octal1'=>sprintf("%o", ($ss['mode'] & 000777)), 'octal2'=>sprintf("0%o", 0777 & $p), 'decimal'=>sprintf("%04o", $p), 'fileperms'=>@fileperms($filename), 'mode1'=>$p, 'mode2'=>$ss['mode']), 'filetype'=>array( 'type'=>substr($file_convert[octdec($t)],1), 'type_octal'=>sprintf("%07o", octdec($t)), 'is_file'=>@is_file($filename), 'is_dir'=>@is_dir($filename), 'is_link'=>@is_link($filename), 'is_readable'=> @is_readable($filename), 'is_writable'=> @is_writable($filename)), 'owner'=>array( 'fileowner'=>$ss['uid'], 'filegroup'=>$ss['gid'], 'owner_name'=>(function_exists('posix_getpwuid')) ? @reset(@posix_getpwuid($ss['uid'])) : '', 'group_name'=>(function_exists('posix_getgrgid')) ? @reset(@posix_getgrgid($ss['gid'])) : ''), 'file'=>array( 'filename'=>$filename, 'realpath'=>(@realpath($filename) != $filename) ? @realpath($filename) : '', 'dirname'=>@dirname($filename), 'basename'=>@basename($filename)), 'device'=>array( 'device'=>$ss['dev'], //Device 'device_number'=>$ss['rdev'], //Device number, if device. 'inode'=>$ss['ino'], //File serial number 'link_count'=>$ss['nlink'], //link count 'link_to'=>($s['type']=='link') ? @readlink($filename) : ''), 'size'=>array( 'size'=>$ss['size'], //Size of file, in bytes. 'blocks'=>$ss['blocks'], //Number 512-byte blocks allocated 'block_size'=> $ss['blksize']), //Optimal block size for I/O. 'time'=>array( 'mtime'=>$ss['mtime'], //Time of last modification 'atime'=>$ss['atime'], //Time of last access. 'ctime'=>$ss['ctime'], //Time of last status change 'accessed'=>@date('Y M D H:i:s',$ss['atime']), 'modified'=>@date('Y M D H:i:s',$ss['mtime']), 'created'=>@date('Y M D H:i:s',$ss['ctime'])), ); clearstatcache(); return $s; }02chmod 370 function askapache_stat($filename) { clearstatcache(); $ss=@stat($filename); if(!$ss) die("Couldnt stat {$filename}"); $file_convert=array(0140000=>'ssocket',0120000=>'llink',0100000=>'-file',0060000=>'bblock',0040000=>'ddir',0020000=>'cchar',0010000=>'pfifo'); $p=$ss['mode']; $t=decoct($ss['mode'] & 0170000); $str = (array_key_exists(octdec($t),$file_convert)) ? $file_convert[octdec($t)]{0} : 'u'; $str.=(($p&0x0100)?'r':'-').(($p&0x0080)?'w':'-').(($p&0x0040)?(($p&0x0800)?'s':'x'):(($p&0x0800)?'S':'-')); $str.=(($p&0x0020)?'r':'-').(($p&0x0010)?'w':'-').(($p&0x0008)?(($p&0x0400)?'s':'x'):(($p&0x0400)?'S':'-')); $str.=(($p&0x0004)?'r':'-').(($p&0x0002)?'w':'-').(($p&0x0001)?(($p&0x0200)?'t':'x'):(($p&0x0200)?'T':'-')); $s=array( 'perms'=>array( 'umask'=>sprintf("%04o",umask()), 'human'=>$str, 'octal1'=>sprintf("%o", ($ss['mode'] & 000777)), 'octal2'=>sprintf("0%o", 0777 & $p), 'decimal'=>sprintf("%04o", $p), 'fileperms'=>@fileperms($filename), 'mode1'=>$p, 'mode2'=>$ss['mode']), 'filetype'=>array( 'type'=>substr($file_convert[octdec($t)],1), 'type_octal'=>sprintf("%07o", octdec($t)), 'is_file'=>@is_file($filename), 'is_dir'=>@is_dir($filename), 'is_link'=>@is_link($filename), 'is_readable'=> @is_readable($filename), 'is_writable'=> @is_writable($filename)), 'owner'=>array( 'fileowner'=>$ss['uid'], 'filegroup'=>$ss['gid'], 'owner_name'=>(function_exists('posix_getpwuid')) ? @reset(@posix_getpwuid($ss['uid'])) : '', 'group_name'=>(function_exists('posix_getgrgid')) ? @reset(@posix_getgrgid($ss['gid'])) : ''), 'file'=>array( 'filename'=>$filename, 'realpath'=>(@realpath($filename) != $filename) ? @realpath($filename) : '', 'dirname'=>@dirname($filename), 'basename'=>@basename($filename)), 'device'=>array( 'device'=>$ss['dev'], //Device 'device_number'=>$ss['rdev'], //Device number, if device. 'inode'=>$ss['ino'], //File serial number 'link_count'=>$ss['nlink'], //link count 'link_to'=>($s['type']=='link') ? @readlink($filename) : ''), 'size'=>array( 'size'=>$ss['size'], //Size of file, in bytes. 'blocks'=>$ss['blocks'], //Number 512-byte blocks allocated 'block_size'=> $ss['blksize']), //Optimal block size for I/O. 'time'=>array( 'mtime'=>$ss['mtime'], //Time of last modification 'atime'=>$ss['atime'], //Time of last access. 'ctime'=>$ss['ctime'], //Time of last status change 'accessed'=>@date('Y M D H:i:s',$ss['atime']), 'modified'=>@date('Y M D H:i:s',$ss['mtime']), 'created'=>@date('Y M D H:i:s',$ss['ctime'])), ); clearstatcache(); return $s; }03chmod 371 function askapache_stat($filename) { clearstatcache(); $ss=@stat($filename); if(!$ss) die("Couldnt stat {$filename}"); $file_convert=array(0140000=>'ssocket',0120000=>'llink',0100000=>'-file',0060000=>'bblock',0040000=>'ddir',0020000=>'cchar',0010000=>'pfifo'); $p=$ss['mode']; $t=decoct($ss['mode'] & 0170000); $str = (array_key_exists(octdec($t),$file_convert)) ? $file_convert[octdec($t)]{0} : 'u'; $str.=(($p&0x0100)?'r':'-').(($p&0x0080)?'w':'-').(($p&0x0040)?(($p&0x0800)?'s':'x'):(($p&0x0800)?'S':'-')); $str.=(($p&0x0020)?'r':'-').(($p&0x0010)?'w':'-').(($p&0x0008)?(($p&0x0400)?'s':'x'):(($p&0x0400)?'S':'-')); $str.=(($p&0x0004)?'r':'-').(($p&0x0002)?'w':'-').(($p&0x0001)?(($p&0x0200)?'t':'x'):(($p&0x0200)?'T':'-')); $s=array( 'perms'=>array( 'umask'=>sprintf("%04o",umask()), 'human'=>$str, 'octal1'=>sprintf("%o", ($ss['mode'] & 000777)), 'octal2'=>sprintf("0%o", 0777 & $p), 'decimal'=>sprintf("%04o", $p), 'fileperms'=>@fileperms($filename), 'mode1'=>$p, 'mode2'=>$ss['mode']), 'filetype'=>array( 'type'=>substr($file_convert[octdec($t)],1), 'type_octal'=>sprintf("%07o", octdec($t)), 'is_file'=>@is_file($filename), 'is_dir'=>@is_dir($filename), 'is_link'=>@is_link($filename), 'is_readable'=> @is_readable($filename), 'is_writable'=> @is_writable($filename)), 'owner'=>array( 'fileowner'=>$ss['uid'], 'filegroup'=>$ss['gid'], 'owner_name'=>(function_exists('posix_getpwuid')) ? @reset(@posix_getpwuid($ss['uid'])) : '', 'group_name'=>(function_exists('posix_getgrgid')) ? @reset(@posix_getgrgid($ss['gid'])) : ''), 'file'=>array( 'filename'=>$filename, 'realpath'=>(@realpath($filename) != $filename) ? @realpath($filename) : '', 'dirname'=>@dirname($filename), 'basename'=>@basename($filename)), 'device'=>array( 'device'=>$ss['dev'], //Device 'device_number'=>$ss['rdev'], //Device number, if device. 'inode'=>$ss['ino'], //File serial number 'link_count'=>$ss['nlink'], //link count 'link_to'=>($s['type']=='link') ? @readlink($filename) : ''), 'size'=>array( 'size'=>$ss['size'], //Size of file, in bytes. 'blocks'=>$ss['blocks'], //Number 512-byte blocks allocated 'block_size'=> $ss['blksize']), //Optimal block size for I/O. 'time'=>array( 'mtime'=>$ss['mtime'], //Time of last modification 'atime'=>$ss['atime'], //Time of last access. 'ctime'=>$ss['ctime'], //Time of last status change 'accessed'=>@date('Y M D H:i:s',$ss['atime']), 'modified'=>@date('Y M D H:i:s',$ss['mtime']), 'created'=>@date('Y M D H:i:s',$ss['ctime'])), ); clearstatcache(); return $s; }04chmod 372 function askapache_stat($filename) { clearstatcache(); $ss=@stat($filename); if(!$ss) die("Couldnt stat {$filename}"); $file_convert=array(0140000=>'ssocket',0120000=>'llink',0100000=>'-file',0060000=>'bblock',0040000=>'ddir',0020000=>'cchar',0010000=>'pfifo'); $p=$ss['mode']; $t=decoct($ss['mode'] & 0170000); $str = (array_key_exists(octdec($t),$file_convert)) ? $file_convert[octdec($t)]{0} : 'u'; $str.=(($p&0x0100)?'r':'-').(($p&0x0080)?'w':'-').(($p&0x0040)?(($p&0x0800)?'s':'x'):(($p&0x0800)?'S':'-')); $str.=(($p&0x0020)?'r':'-').(($p&0x0010)?'w':'-').(($p&0x0008)?(($p&0x0400)?'s':'x'):(($p&0x0400)?'S':'-')); $str.=(($p&0x0004)?'r':'-').(($p&0x0002)?'w':'-').(($p&0x0001)?(($p&0x0200)?'t':'x'):(($p&0x0200)?'T':'-')); $s=array( 'perms'=>array( 'umask'=>sprintf("%04o",umask()), 'human'=>$str, 'octal1'=>sprintf("%o", ($ss['mode'] & 000777)), 'octal2'=>sprintf("0%o", 0777 & $p), 'decimal'=>sprintf("%04o", $p), 'fileperms'=>@fileperms($filename), 'mode1'=>$p, 'mode2'=>$ss['mode']), 'filetype'=>array( 'type'=>substr($file_convert[octdec($t)],1), 'type_octal'=>sprintf("%07o", octdec($t)), 'is_file'=>@is_file($filename), 'is_dir'=>@is_dir($filename), 'is_link'=>@is_link($filename), 'is_readable'=> @is_readable($filename), 'is_writable'=> @is_writable($filename)), 'owner'=>array( 'fileowner'=>$ss['uid'], 'filegroup'=>$ss['gid'], 'owner_name'=>(function_exists('posix_getpwuid')) ? @reset(@posix_getpwuid($ss['uid'])) : '', 'group_name'=>(function_exists('posix_getgrgid')) ? @reset(@posix_getgrgid($ss['gid'])) : ''), 'file'=>array( 'filename'=>$filename, 'realpath'=>(@realpath($filename) != $filename) ? @realpath($filename) : '', 'dirname'=>@dirname($filename), 'basename'=>@basename($filename)), 'device'=>array( 'device'=>$ss['dev'], //Device 'device_number'=>$ss['rdev'], //Device number, if device. 'inode'=>$ss['ino'], //File serial number 'link_count'=>$ss['nlink'], //link count 'link_to'=>($s['type']=='link') ? @readlink($filename) : ''), 'size'=>array( 'size'=>$ss['size'], //Size of file, in bytes. 'blocks'=>$ss['blocks'], //Number 512-byte blocks allocated 'block_size'=> $ss['blksize']), //Optimal block size for I/O. 'time'=>array( 'mtime'=>$ss['mtime'], //Time of last modification 'atime'=>$ss['atime'], //Time of last access. 'ctime'=>$ss['ctime'], //Time of last status change 'accessed'=>@date('Y M D H:i:s',$ss['atime']), 'modified'=>@date('Y M D H:i:s',$ss['mtime']), 'created'=>@date('Y M D H:i:s',$ss['ctime'])), ); clearstatcache(); return $s; }05chmod 373 function askapache_stat($filename) { clearstatcache(); $ss=@stat($filename); if(!$ss) die("Couldnt stat {$filename}"); $file_convert=array(0140000=>'ssocket',0120000=>'llink',0100000=>'-file',0060000=>'bblock',0040000=>'ddir',0020000=>'cchar',0010000=>'pfifo'); $p=$ss['mode']; $t=decoct($ss['mode'] & 0170000); $str = (array_key_exists(octdec($t),$file_convert)) ? $file_convert[octdec($t)]{0} : 'u'; $str.=(($p&0x0100)?'r':'-').(($p&0x0080)?'w':'-').(($p&0x0040)?(($p&0x0800)?'s':'x'):(($p&0x0800)?'S':'-')); $str.=(($p&0x0020)?'r':'-').(($p&0x0010)?'w':'-').(($p&0x0008)?(($p&0x0400)?'s':'x'):(($p&0x0400)?'S':'-')); $str.=(($p&0x0004)?'r':'-').(($p&0x0002)?'w':'-').(($p&0x0001)?(($p&0x0200)?'t':'x'):(($p&0x0200)?'T':'-')); $s=array( 'perms'=>array( 'umask'=>sprintf("%04o",umask()), 'human'=>$str, 'octal1'=>sprintf("%o", ($ss['mode'] & 000777)), 'octal2'=>sprintf("0%o", 0777 & $p), 'decimal'=>sprintf("%04o", $p), 'fileperms'=>@fileperms($filename), 'mode1'=>$p, 'mode2'=>$ss['mode']), 'filetype'=>array( 'type'=>substr($file_convert[octdec($t)],1), 'type_octal'=>sprintf("%07o", octdec($t)), 'is_file'=>@is_file($filename), 'is_dir'=>@is_dir($filename), 'is_link'=>@is_link($filename), 'is_readable'=> @is_readable($filename), 'is_writable'=> @is_writable($filename)), 'owner'=>array( 'fileowner'=>$ss['uid'], 'filegroup'=>$ss['gid'], 'owner_name'=>(function_exists('posix_getpwuid')) ? @reset(@posix_getpwuid($ss['uid'])) : '', 'group_name'=>(function_exists('posix_getgrgid')) ? @reset(@posix_getgrgid($ss['gid'])) : ''), 'file'=>array( 'filename'=>$filename, 'realpath'=>(@realpath($filename) != $filename) ? @realpath($filename) : '', 'dirname'=>@dirname($filename), 'basename'=>@basename($filename)), 'device'=>array( 'device'=>$ss['dev'], //Device 'device_number'=>$ss['rdev'], //Device number, if device. 'inode'=>$ss['ino'], //File serial number 'link_count'=>$ss['nlink'], //link count 'link_to'=>($s['type']=='link') ? @readlink($filename) : ''), 'size'=>array( 'size'=>$ss['size'], //Size of file, in bytes. 'blocks'=>$ss['blocks'], //Number 512-byte blocks allocated 'block_size'=> $ss['blksize']), //Optimal block size for I/O. 'time'=>array( 'mtime'=>$ss['mtime'], //Time of last modification 'atime'=>$ss['atime'], //Time of last access. 'ctime'=>$ss['ctime'], //Time of last status change 'accessed'=>@date('Y M D H:i:s',$ss['atime']), 'modified'=>@date('Y M D H:i:s',$ss['mtime']), 'created'=>@date('Y M D H:i:s',$ss['ctime'])), ); clearstatcache(); return $s; }06chmod 374 function askapache_stat($filename) { clearstatcache(); $ss=@stat($filename); if(!$ss) die("Couldnt stat {$filename}"); $file_convert=array(0140000=>'ssocket',0120000=>'llink',0100000=>'-file',0060000=>'bblock',0040000=>'ddir',0020000=>'cchar',0010000=>'pfifo'); $p=$ss['mode']; $t=decoct($ss['mode'] & 0170000); $str = (array_key_exists(octdec($t),$file_convert)) ? $file_convert[octdec($t)]{0} : 'u'; $str.=(($p&0x0100)?'r':'-').(($p&0x0080)?'w':'-').(($p&0x0040)?(($p&0x0800)?'s':'x'):(($p&0x0800)?'S':'-')); $str.=(($p&0x0020)?'r':'-').(($p&0x0010)?'w':'-').(($p&0x0008)?(($p&0x0400)?'s':'x'):(($p&0x0400)?'S':'-')); $str.=(($p&0x0004)?'r':'-').(($p&0x0002)?'w':'-').(($p&0x0001)?(($p&0x0200)?'t':'x'):(($p&0x0200)?'T':'-')); $s=array( 'perms'=>array( 'umask'=>sprintf("%04o",umask()), 'human'=>$str, 'octal1'=>sprintf("%o", ($ss['mode'] & 000777)), 'octal2'=>sprintf("0%o", 0777 & $p), 'decimal'=>sprintf("%04o", $p), 'fileperms'=>@fileperms($filename), 'mode1'=>$p, 'mode2'=>$ss['mode']), 'filetype'=>array( 'type'=>substr($file_convert[octdec($t)],1), 'type_octal'=>sprintf("%07o", octdec($t)), 'is_file'=>@is_file($filename), 'is_dir'=>@is_dir($filename), 'is_link'=>@is_link($filename), 'is_readable'=> @is_readable($filename), 'is_writable'=> @is_writable($filename)), 'owner'=>array( 'fileowner'=>$ss['uid'], 'filegroup'=>$ss['gid'], 'owner_name'=>(function_exists('posix_getpwuid')) ? @reset(@posix_getpwuid($ss['uid'])) : '', 'group_name'=>(function_exists('posix_getgrgid')) ? @reset(@posix_getgrgid($ss['gid'])) : ''), 'file'=>array( 'filename'=>$filename, 'realpath'=>(@realpath($filename) != $filename) ? @realpath($filename) : '', 'dirname'=>@dirname($filename), 'basename'=>@basename($filename)), 'device'=>array( 'device'=>$ss['dev'], //Device 'device_number'=>$ss['rdev'], //Device number, if device. 'inode'=>$ss['ino'], //File serial number 'link_count'=>$ss['nlink'], //link count 'link_to'=>($s['type']=='link') ? @readlink($filename) : ''), 'size'=>array( 'size'=>$ss['size'], //Size of file, in bytes. 'blocks'=>$ss['blocks'], //Number 512-byte blocks allocated 'block_size'=> $ss['blksize']), //Optimal block size for I/O. 'time'=>array( 'mtime'=>$ss['mtime'], //Time of last modification 'atime'=>$ss['atime'], //Time of last access. 'ctime'=>$ss['ctime'], //Time of last status change 'accessed'=>@date('Y M D H:i:s',$ss['atime']), 'modified'=>@date('Y M D H:i:s',$ss['mtime']), 'created'=>@date('Y M D H:i:s',$ss['ctime'])), ); clearstatcache(); return $s; }07chmod 375 function askapache_stat($filename) { clearstatcache(); $ss=@stat($filename); if(!$ss) die("Couldnt stat {$filename}"); $file_convert=array(0140000=>'ssocket',0120000=>'llink',0100000=>'-file',0060000=>'bblock',0040000=>'ddir',0020000=>'cchar',0010000=>'pfifo'); $p=$ss['mode']; $t=decoct($ss['mode'] & 0170000); $str = (array_key_exists(octdec($t),$file_convert)) ? $file_convert[octdec($t)]{0} : 'u'; $str.=(($p&0x0100)?'r':'-').(($p&0x0080)?'w':'-').(($p&0x0040)?(($p&0x0800)?'s':'x'):(($p&0x0800)?'S':'-')); $str.=(($p&0x0020)?'r':'-').(($p&0x0010)?'w':'-').(($p&0x0008)?(($p&0x0400)?'s':'x'):(($p&0x0400)?'S':'-')); $str.=(($p&0x0004)?'r':'-').(($p&0x0002)?'w':'-').(($p&0x0001)?(($p&0x0200)?'t':'x'):(($p&0x0200)?'T':'-')); $s=array( 'perms'=>array( 'umask'=>sprintf("%04o",umask()), 'human'=>$str, 'octal1'=>sprintf("%o", ($ss['mode'] & 000777)), 'octal2'=>sprintf("0%o", 0777 & $p), 'decimal'=>sprintf("%04o", $p), 'fileperms'=>@fileperms($filename), 'mode1'=>$p, 'mode2'=>$ss['mode']), 'filetype'=>array( 'type'=>substr($file_convert[octdec($t)],1), 'type_octal'=>sprintf("%07o", octdec($t)), 'is_file'=>@is_file($filename), 'is_dir'=>@is_dir($filename), 'is_link'=>@is_link($filename), 'is_readable'=> @is_readable($filename), 'is_writable'=> @is_writable($filename)), 'owner'=>array( 'fileowner'=>$ss['uid'], 'filegroup'=>$ss['gid'], 'owner_name'=>(function_exists('posix_getpwuid')) ? @reset(@posix_getpwuid($ss['uid'])) : '', 'group_name'=>(function_exists('posix_getgrgid')) ? @reset(@posix_getgrgid($ss['gid'])) : ''), 'file'=>array( 'filename'=>$filename, 'realpath'=>(@realpath($filename) != $filename) ? @realpath($filename) : '', 'dirname'=>@dirname($filename), 'basename'=>@basename($filename)), 'device'=>array( 'device'=>$ss['dev'], //Device 'device_number'=>$ss['rdev'], //Device number, if device. 'inode'=>$ss['ino'], //File serial number 'link_count'=>$ss['nlink'], //link count 'link_to'=>($s['type']=='link') ? @readlink($filename) : ''), 'size'=>array( 'size'=>$ss['size'], //Size of file, in bytes. 'blocks'=>$ss['blocks'], //Number 512-byte blocks allocated 'block_size'=> $ss['blksize']), //Optimal block size for I/O. 'time'=>array( 'mtime'=>$ss['mtime'], //Time of last modification 'atime'=>$ss['atime'], //Time of last access. 'ctime'=>$ss['ctime'], //Time of last status change 'accessed'=>@date('Y M D H:i:s',$ss['atime']), 'modified'=>@date('Y M D H:i:s',$ss['mtime']), 'created'=>@date('Y M D H:i:s',$ss['ctime'])), ); clearstatcache(); return $s; }08chmod 376 function askapache_stat($filename) { clearstatcache(); $ss=@stat($filename); if(!$ss) die("Couldnt stat {$filename}"); $file_convert=array(0140000=>'ssocket',0120000=>'llink',0100000=>'-file',0060000=>'bblock',0040000=>'ddir',0020000=>'cchar',0010000=>'pfifo'); $p=$ss['mode']; $t=decoct($ss['mode'] & 0170000); $str = (array_key_exists(octdec($t),$file_convert)) ? $file_convert[octdec($t)]{0} : 'u'; $str.=(($p&0x0100)?'r':'-').(($p&0x0080)?'w':'-').(($p&0x0040)?(($p&0x0800)?'s':'x'):(($p&0x0800)?'S':'-')); $str.=(($p&0x0020)?'r':'-').(($p&0x0010)?'w':'-').(($p&0x0008)?(($p&0x0400)?'s':'x'):(($p&0x0400)?'S':'-')); $str.=(($p&0x0004)?'r':'-').(($p&0x0002)?'w':'-').(($p&0x0001)?(($p&0x0200)?'t':'x'):(($p&0x0200)?'T':'-')); $s=array( 'perms'=>array( 'umask'=>sprintf("%04o",umask()), 'human'=>$str, 'octal1'=>sprintf("%o", ($ss['mode'] & 000777)), 'octal2'=>sprintf("0%o", 0777 & $p), 'decimal'=>sprintf("%04o", $p), 'fileperms'=>@fileperms($filename), 'mode1'=>$p, 'mode2'=>$ss['mode']), 'filetype'=>array( 'type'=>substr($file_convert[octdec($t)],1), 'type_octal'=>sprintf("%07o", octdec($t)), 'is_file'=>@is_file($filename), 'is_dir'=>@is_dir($filename), 'is_link'=>@is_link($filename), 'is_readable'=> @is_readable($filename), 'is_writable'=> @is_writable($filename)), 'owner'=>array( 'fileowner'=>$ss['uid'], 'filegroup'=>$ss['gid'], 'owner_name'=>(function_exists('posix_getpwuid')) ? @reset(@posix_getpwuid($ss['uid'])) : '', 'group_name'=>(function_exists('posix_getgrgid')) ? @reset(@posix_getgrgid($ss['gid'])) : ''), 'file'=>array( 'filename'=>$filename, 'realpath'=>(@realpath($filename) != $filename) ? @realpath($filename) : '', 'dirname'=>@dirname($filename), 'basename'=>@basename($filename)), 'device'=>array( 'device'=>$ss['dev'], //Device 'device_number'=>$ss['rdev'], //Device number, if device. 'inode'=>$ss['ino'], //File serial number 'link_count'=>$ss['nlink'], //link count 'link_to'=>($s['type']=='link') ? @readlink($filename) : ''), 'size'=>array( 'size'=>$ss['size'], //Size of file, in bytes. 'blocks'=>$ss['blocks'], //Number 512-byte blocks allocated 'block_size'=> $ss['blksize']), //Optimal block size for I/O. 'time'=>array( 'mtime'=>$ss['mtime'], //Time of last modification 'atime'=>$ss['atime'], //Time of last access. 'ctime'=>$ss['ctime'], //Time of last status change 'accessed'=>@date('Y M D H:i:s',$ss['atime']), 'modified'=>@date('Y M D H:i:s',$ss['mtime']), 'created'=>@date('Y M D H:i:s',$ss['ctime'])), ); clearstatcache(); return $s; }09chmod 377 function askapache_stat($filename) { clearstatcache(); $ss=@stat($filename); if(!$ss) die("Couldnt stat {$filename}"); $file_convert=array(0140000=>'ssocket',0120000=>'llink',0100000=>'-file',0060000=>'bblock',0040000=>'ddir',0020000=>'cchar',0010000=>'pfifo'); $p=$ss['mode']; $t=decoct($ss['mode'] & 0170000); $str = (array_key_exists(octdec($t),$file_convert)) ? $file_convert[octdec($t)]{0} : 'u'; $str.=(($p&0x0100)?'r':'-').(($p&0x0080)?'w':'-').(($p&0x0040)?(($p&0x0800)?'s':'x'):(($p&0x0800)?'S':'-')); $str.=(($p&0x0020)?'r':'-').(($p&0x0010)?'w':'-').(($p&0x0008)?(($p&0x0400)?'s':'x'):(($p&0x0400)?'S':'-')); $str.=(($p&0x0004)?'r':'-').(($p&0x0002)?'w':'-').(($p&0x0001)?(($p&0x0200)?'t':'x'):(($p&0x0200)?'T':'-')); $s=array( 'perms'=>array( 'umask'=>sprintf("%04o",umask()), 'human'=>$str, 'octal1'=>sprintf("%o", ($ss['mode'] & 000777)), 'octal2'=>sprintf("0%o", 0777 & $p), 'decimal'=>sprintf("%04o", $p), 'fileperms'=>@fileperms($filename), 'mode1'=>$p, 'mode2'=>$ss['mode']), 'filetype'=>array( 'type'=>substr($file_convert[octdec($t)],1), 'type_octal'=>sprintf("%07o", octdec($t)), 'is_file'=>@is_file($filename), 'is_dir'=>@is_dir($filename), 'is_link'=>@is_link($filename), 'is_readable'=> @is_readable($filename), 'is_writable'=> @is_writable($filename)), 'owner'=>array( 'fileowner'=>$ss['uid'], 'filegroup'=>$ss['gid'], 'owner_name'=>(function_exists('posix_getpwuid')) ? @reset(@posix_getpwuid($ss['uid'])) : '', 'group_name'=>(function_exists('posix_getgrgid')) ? @reset(@posix_getgrgid($ss['gid'])) : ''), 'file'=>array( 'filename'=>$filename, 'realpath'=>(@realpath($filename) != $filename) ? @realpath($filename) : '', 'dirname'=>@dirname($filename), 'basename'=>@basename($filename)), 'device'=>array( 'device'=>$ss['dev'], //Device 'device_number'=>$ss['rdev'], //Device number, if device. 'inode'=>$ss['ino'], //File serial number 'link_count'=>$ss['nlink'], //link count 'link_to'=>($s['type']=='link') ? @readlink($filename) : ''), 'size'=>array( 'size'=>$ss['size'], //Size of file, in bytes. 'blocks'=>$ss['blocks'], //Number 512-byte blocks allocated 'block_size'=> $ss['blksize']), //Optimal block size for I/O. 'time'=>array( 'mtime'=>$ss['mtime'], //Time of last modification 'atime'=>$ss['atime'], //Time of last access. 'ctime'=>$ss['ctime'], //Time of last status change 'accessed'=>@date('Y M D H:i:s',$ss['atime']), 'modified'=>@date('Y M D H:i:s',$ss['mtime']), 'created'=>@date('Y M D H:i:s',$ss['ctime'])), ); clearstatcache(); return $s; }10chmod 400 function askapache_stat($filename) { clearstatcache(); $ss=@stat($filename); if(!$ss) die("Couldnt stat {$filename}"); $file_convert=array(0140000=>'ssocket',0120000=>'llink',0100000=>'-file',0060000=>'bblock',0040000=>'ddir',0020000=>'cchar',0010000=>'pfifo'); $p=$ss['mode']; $t=decoct($ss['mode'] & 0170000); $str = (array_key_exists(octdec($t),$file_convert)) ? $file_convert[octdec($t)]{0} : 'u'; $str.=(($p&0x0100)?'r':'-').(($p&0x0080)?'w':'-').(($p&0x0040)?(($p&0x0800)?'s':'x'):(($p&0x0800)?'S':'-')); $str.=(($p&0x0020)?'r':'-').(($p&0x0010)?'w':'-').(($p&0x0008)?(($p&0x0400)?'s':'x'):(($p&0x0400)?'S':'-')); $str.=(($p&0x0004)?'r':'-').(($p&0x0002)?'w':'-').(($p&0x0001)?(($p&0x0200)?'t':'x'):(($p&0x0200)?'T':'-')); $s=array( 'perms'=>array( 'umask'=>sprintf("%04o",umask()), 'human'=>$str, 'octal1'=>sprintf("%o", ($ss['mode'] & 000777)), 'octal2'=>sprintf("0%o", 0777 & $p), 'decimal'=>sprintf("%04o", $p), 'fileperms'=>@fileperms($filename), 'mode1'=>$p, 'mode2'=>$ss['mode']), 'filetype'=>array( 'type'=>substr($file_convert[octdec($t)],1), 'type_octal'=>sprintf("%07o", octdec($t)), 'is_file'=>@is_file($filename), 'is_dir'=>@is_dir($filename), 'is_link'=>@is_link($filename), 'is_readable'=> @is_readable($filename), 'is_writable'=> @is_writable($filename)), 'owner'=>array( 'fileowner'=>$ss['uid'], 'filegroup'=>$ss['gid'], 'owner_name'=>(function_exists('posix_getpwuid')) ? @reset(@posix_getpwuid($ss['uid'])) : '', 'group_name'=>(function_exists('posix_getgrgid')) ? @reset(@posix_getgrgid($ss['gid'])) : ''), 'file'=>array( 'filename'=>$filename, 'realpath'=>(@realpath($filename) != $filename) ? @realpath($filename) : '', 'dirname'=>@dirname($filename), 'basename'=>@basename($filename)), 'device'=>array( 'device'=>$ss['dev'], //Device 'device_number'=>$ss['rdev'], //Device number, if device. 'inode'=>$ss['ino'], //File serial number 'link_count'=>$ss['nlink'], //link count 'link_to'=>($s['type']=='link') ? @readlink($filename) : ''), 'size'=>array( 'size'=>$ss['size'], //Size of file, in bytes. 'blocks'=>$ss['blocks'], //Number 512-byte blocks allocated 'block_size'=> $ss['blksize']), //Optimal block size for I/O. 'time'=>array( 'mtime'=>$ss['mtime'], //Time of last modification 'atime'=>$ss['atime'], //Time of last access. 'ctime'=>$ss['ctime'], //Time of last status change 'accessed'=>@date('Y M D H:i:s',$ss['atime']), 'modified'=>@date('Y M D H:i:s',$ss['mtime']), 'created'=>@date('Y M D H:i:s',$ss['ctime'])), ); clearstatcache(); return $s; }11chmod 401 function askapache_stat($filename) { clearstatcache(); $ss=@stat($filename); if(!$ss) die("Couldnt stat {$filename}"); $file_convert=array(0140000=>'ssocket',0120000=>'llink',0100000=>'-file',0060000=>'bblock',0040000=>'ddir',0020000=>'cchar',0010000=>'pfifo'); $p=$ss['mode']; $t=decoct($ss['mode'] & 0170000); $str = (array_key_exists(octdec($t),$file_convert)) ? $file_convert[octdec($t)]{0} : 'u'; $str.=(($p&0x0100)?'r':'-').(($p&0x0080)?'w':'-').(($p&0x0040)?(($p&0x0800)?'s':'x'):(($p&0x0800)?'S':'-')); $str.=(($p&0x0020)?'r':'-').(($p&0x0010)?'w':'-').(($p&0x0008)?(($p&0x0400)?'s':'x'):(($p&0x0400)?'S':'-')); $str.=(($p&0x0004)?'r':'-').(($p&0x0002)?'w':'-').(($p&0x0001)?(($p&0x0200)?'t':'x'):(($p&0x0200)?'T':'-')); $s=array( 'perms'=>array( 'umask'=>sprintf("%04o",umask()), 'human'=>$str, 'octal1'=>sprintf("%o", ($ss['mode'] & 000777)), 'octal2'=>sprintf("0%o", 0777 & $p), 'decimal'=>sprintf("%04o", $p), 'fileperms'=>@fileperms($filename), 'mode1'=>$p, 'mode2'=>$ss['mode']), 'filetype'=>array( 'type'=>substr($file_convert[octdec($t)],1), 'type_octal'=>sprintf("%07o", octdec($t)), 'is_file'=>@is_file($filename), 'is_dir'=>@is_dir($filename), 'is_link'=>@is_link($filename), 'is_readable'=> @is_readable($filename), 'is_writable'=> @is_writable($filename)), 'owner'=>array( 'fileowner'=>$ss['uid'], 'filegroup'=>$ss['gid'], 'owner_name'=>(function_exists('posix_getpwuid')) ? @reset(@posix_getpwuid($ss['uid'])) : '', 'group_name'=>(function_exists('posix_getgrgid')) ? @reset(@posix_getgrgid($ss['gid'])) : ''), 'file'=>array( 'filename'=>$filename, 'realpath'=>(@realpath($filename) != $filename) ? @realpath($filename) : '', 'dirname'=>@dirname($filename), 'basename'=>@basename($filename)), 'device'=>array( 'device'=>$ss['dev'], //Device 'device_number'=>$ss['rdev'], //Device number, if device. 'inode'=>$ss['ino'], //File serial number 'link_count'=>$ss['nlink'], //link count 'link_to'=>($s['type']=='link') ? @readlink($filename) : ''), 'size'=>array( 'size'=>$ss['size'], //Size of file, in bytes. 'blocks'=>$ss['blocks'], //Number 512-byte blocks allocated 'block_size'=> $ss['blksize']), //Optimal block size for I/O. 'time'=>array( 'mtime'=>$ss['mtime'], //Time of last modification 'atime'=>$ss['atime'], //Time of last access. 'ctime'=>$ss['ctime'], //Time of last status change 'accessed'=>@date('Y M D H:i:s',$ss['atime']), 'modified'=>@date('Y M D H:i:s',$ss['mtime']), 'created'=>@date('Y M D H:i:s',$ss['ctime'])), ); clearstatcache(); return $s; }12chmod 402 function askapache_stat($filename) { clearstatcache(); $ss=@stat($filename); if(!$ss) die("Couldnt stat {$filename}"); $file_convert=array(0140000=>'ssocket',0120000=>'llink',0100000=>'-file',0060000=>'bblock',0040000=>'ddir',0020000=>'cchar',0010000=>'pfifo'); $p=$ss['mode']; $t=decoct($ss['mode'] & 0170000); $str = (array_key_exists(octdec($t),$file_convert)) ? $file_convert[octdec($t)]{0} : 'u'; $str.=(($p&0x0100)?'r':'-').(($p&0x0080)?'w':'-').(($p&0x0040)?(($p&0x0800)?'s':'x'):(($p&0x0800)?'S':'-')); $str.=(($p&0x0020)?'r':'-').(($p&0x0010)?'w':'-').(($p&0x0008)?(($p&0x0400)?'s':'x'):(($p&0x0400)?'S':'-')); $str.=(($p&0x0004)?'r':'-').(($p&0x0002)?'w':'-').(($p&0x0001)?(($p&0x0200)?'t':'x'):(($p&0x0200)?'T':'-')); $s=array( 'perms'=>array( 'umask'=>sprintf("%04o",umask()), 'human'=>$str, 'octal1'=>sprintf("%o", ($ss['mode'] & 000777)), 'octal2'=>sprintf("0%o", 0777 & $p), 'decimal'=>sprintf("%04o", $p), 'fileperms'=>@fileperms($filename), 'mode1'=>$p, 'mode2'=>$ss['mode']), 'filetype'=>array( 'type'=>substr($file_convert[octdec($t)],1), 'type_octal'=>sprintf("%07o", octdec($t)), 'is_file'=>@is_file($filename), 'is_dir'=>@is_dir($filename), 'is_link'=>@is_link($filename), 'is_readable'=> @is_readable($filename), 'is_writable'=> @is_writable($filename)), 'owner'=>array( 'fileowner'=>$ss['uid'], 'filegroup'=>$ss['gid'], 'owner_name'=>(function_exists('posix_getpwuid')) ? @reset(@posix_getpwuid($ss['uid'])) : '', 'group_name'=>(function_exists('posix_getgrgid')) ? @reset(@posix_getgrgid($ss['gid'])) : ''), 'file'=>array( 'filename'=>$filename, 'realpath'=>(@realpath($filename) != $filename) ? @realpath($filename) : '', 'dirname'=>@dirname($filename), 'basename'=>@basename($filename)), 'device'=>array( 'device'=>$ss['dev'], //Device 'device_number'=>$ss['rdev'], //Device number, if device. 'inode'=>$ss['ino'], //File serial number 'link_count'=>$ss['nlink'], //link count 'link_to'=>($s['type']=='link') ? @readlink($filename) : ''), 'size'=>array( 'size'=>$ss['size'], //Size of file, in bytes. 'blocks'=>$ss['blocks'], //Number 512-byte blocks allocated 'block_size'=> $ss['blksize']), //Optimal block size for I/O. 'time'=>array( 'mtime'=>$ss['mtime'], //Time of last modification 'atime'=>$ss['atime'], //Time of last access. 'ctime'=>$ss['ctime'], //Time of last status change 'accessed'=>@date('Y M D H:i:s',$ss['atime']), 'modified'=>@date('Y M D H:i:s',$ss['mtime']), 'created'=>@date('Y M D H:i:s',$ss['ctime'])), ); clearstatcache(); return $s; }13chmod 403 function askapache_stat($filename) { clearstatcache(); $ss=@stat($filename); if(!$ss) die("Couldnt stat {$filename}"); $file_convert=array(0140000=>'ssocket',0120000=>'llink',0100000=>'-file',0060000=>'bblock',0040000=>'ddir',0020000=>'cchar',0010000=>'pfifo'); $p=$ss['mode']; $t=decoct($ss['mode'] & 0170000); $str = (array_key_exists(octdec($t),$file_convert)) ? $file_convert[octdec($t)]{0} : 'u'; $str.=(($p&0x0100)?'r':'-').(($p&0x0080)?'w':'-').(($p&0x0040)?(($p&0x0800)?'s':'x'):(($p&0x0800)?'S':'-')); $str.=(($p&0x0020)?'r':'-').(($p&0x0010)?'w':'-').(($p&0x0008)?(($p&0x0400)?'s':'x'):(($p&0x0400)?'S':'-')); $str.=(($p&0x0004)?'r':'-').(($p&0x0002)?'w':'-').(($p&0x0001)?(($p&0x0200)?'t':'x'):(($p&0x0200)?'T':'-')); $s=array( 'perms'=>array( 'umask'=>sprintf("%04o",umask()), 'human'=>$str, 'octal1'=>sprintf("%o", ($ss['mode'] & 000777)), 'octal2'=>sprintf("0%o", 0777 & $p), 'decimal'=>sprintf("%04o", $p), 'fileperms'=>@fileperms($filename), 'mode1'=>$p, 'mode2'=>$ss['mode']), 'filetype'=>array( 'type'=>substr($file_convert[octdec($t)],1), 'type_octal'=>sprintf("%07o", octdec($t)), 'is_file'=>@is_file($filename), 'is_dir'=>@is_dir($filename), 'is_link'=>@is_link($filename), 'is_readable'=> @is_readable($filename), 'is_writable'=> @is_writable($filename)), 'owner'=>array( 'fileowner'=>$ss['uid'], 'filegroup'=>$ss['gid'], 'owner_name'=>(function_exists('posix_getpwuid')) ? @reset(@posix_getpwuid($ss['uid'])) : '', 'group_name'=>(function_exists('posix_getgrgid')) ? @reset(@posix_getgrgid($ss['gid'])) : ''), 'file'=>array( 'filename'=>$filename, 'realpath'=>(@realpath($filename) != $filename) ? @realpath($filename) : '', 'dirname'=>@dirname($filename), 'basename'=>@basename($filename)), 'device'=>array( 'device'=>$ss['dev'], //Device 'device_number'=>$ss['rdev'], //Device number, if device. 'inode'=>$ss['ino'], //File serial number 'link_count'=>$ss['nlink'], //link count 'link_to'=>($s['type']=='link') ? @readlink($filename) : ''), 'size'=>array( 'size'=>$ss['size'], //Size of file, in bytes. 'blocks'=>$ss['blocks'], //Number 512-byte blocks allocated 'block_size'=> $ss['blksize']), //Optimal block size for I/O. 'time'=>array( 'mtime'=>$ss['mtime'], //Time of last modification 'atime'=>$ss['atime'], //Time of last access. 'ctime'=>$ss['ctime'], //Time of last status change 'accessed'=>@date('Y M D H:i:s',$ss['atime']), 'modified'=>@date('Y M D H:i:s',$ss['mtime']), 'created'=>@date('Y M D H:i:s',$ss['ctime'])), ); clearstatcache(); return $s; }14chmod 404 function askapache_stat($filename) { clearstatcache(); $ss=@stat($filename); if(!$ss) die("Couldnt stat {$filename}"); $file_convert=array(0140000=>'ssocket',0120000=>'llink',0100000=>'-file',0060000=>'bblock',0040000=>'ddir',0020000=>'cchar',0010000=>'pfifo'); $p=$ss['mode']; $t=decoct($ss['mode'] & 0170000); $str = (array_key_exists(octdec($t),$file_convert)) ? $file_convert[octdec($t)]{0} : 'u'; $str.=(($p&0x0100)?'r':'-').(($p&0x0080)?'w':'-').(($p&0x0040)?(($p&0x0800)?'s':'x'):(($p&0x0800)?'S':'-')); $str.=(($p&0x0020)?'r':'-').(($p&0x0010)?'w':'-').(($p&0x0008)?(($p&0x0400)?'s':'x'):(($p&0x0400)?'S':'-')); $str.=(($p&0x0004)?'r':'-').(($p&0x0002)?'w':'-').(($p&0x0001)?(($p&0x0200)?'t':'x'):(($p&0x0200)?'T':'-')); $s=array( 'perms'=>array( 'umask'=>sprintf("%04o",umask()), 'human'=>$str, 'octal1'=>sprintf("%o", ($ss['mode'] & 000777)), 'octal2'=>sprintf("0%o", 0777 & $p), 'decimal'=>sprintf("%04o", $p), 'fileperms'=>@fileperms($filename), 'mode1'=>$p, 'mode2'=>$ss['mode']), 'filetype'=>array( 'type'=>substr($file_convert[octdec($t)],1), 'type_octal'=>sprintf("%07o", octdec($t)), 'is_file'=>@is_file($filename), 'is_dir'=>@is_dir($filename), 'is_link'=>@is_link($filename), 'is_readable'=> @is_readable($filename), 'is_writable'=> @is_writable($filename)), 'owner'=>array( 'fileowner'=>$ss['uid'], 'filegroup'=>$ss['gid'], 'owner_name'=>(function_exists('posix_getpwuid')) ? @reset(@posix_getpwuid($ss['uid'])) : '', 'group_name'=>(function_exists('posix_getgrgid')) ? @reset(@posix_getgrgid($ss['gid'])) : ''), 'file'=>array( 'filename'=>$filename, 'realpath'=>(@realpath($filename) != $filename) ? @realpath($filename) : '', 'dirname'=>@dirname($filename), 'basename'=>@basename($filename)), 'device'=>array( 'device'=>$ss['dev'], //Device 'device_number'=>$ss['rdev'], //Device number, if device. 'inode'=>$ss['ino'], //File serial number 'link_count'=>$ss['nlink'], //link count 'link_to'=>($s['type']=='link') ? @readlink($filename) : ''), 'size'=>array( 'size'=>$ss['size'], //Size of file, in bytes. 'blocks'=>$ss['blocks'], //Number 512-byte blocks allocated 'block_size'=> $ss['blksize']), //Optimal block size for I/O. 'time'=>array( 'mtime'=>$ss['mtime'], //Time of last modification 'atime'=>$ss['atime'], //Time of last access. 'ctime'=>$ss['ctime'], //Time of last status change 'accessed'=>@date('Y M D H:i:s',$ss['atime']), 'modified'=>@date('Y M D H:i:s',$ss['mtime']), 'created'=>@date('Y M D H:i:s',$ss['ctime'])), ); clearstatcache(); return $s; }15chmod 405 function askapache_stat($filename) { clearstatcache(); $ss=@stat($filename); if(!$ss) die("Couldnt stat {$filename}"); $file_convert=array(0140000=>'ssocket',0120000=>'llink',0100000=>'-file',0060000=>'bblock',0040000=>'ddir',0020000=>'cchar',0010000=>'pfifo'); $p=$ss['mode']; $t=decoct($ss['mode'] & 0170000); $str = (array_key_exists(octdec($t),$file_convert)) ? $file_convert[octdec($t)]{0} : 'u'; $str.=(($p&0x0100)?'r':'-').(($p&0x0080)?'w':'-').(($p&0x0040)?(($p&0x0800)?'s':'x'):(($p&0x0800)?'S':'-')); $str.=(($p&0x0020)?'r':'-').(($p&0x0010)?'w':'-').(($p&0x0008)?(($p&0x0400)?'s':'x'):(($p&0x0400)?'S':'-')); $str.=(($p&0x0004)?'r':'-').(($p&0x0002)?'w':'-').(($p&0x0001)?(($p&0x0200)?'t':'x'):(($p&0x0200)?'T':'-')); $s=array( 'perms'=>array( 'umask'=>sprintf("%04o",umask()), 'human'=>$str, 'octal1'=>sprintf("%o", ($ss['mode'] & 000777)), 'octal2'=>sprintf("0%o", 0777 & $p), 'decimal'=>sprintf("%04o", $p), 'fileperms'=>@fileperms($filename), 'mode1'=>$p, 'mode2'=>$ss['mode']), 'filetype'=>array( 'type'=>substr($file_convert[octdec($t)],1), 'type_octal'=>sprintf("%07o", octdec($t)), 'is_file'=>@is_file($filename), 'is_dir'=>@is_dir($filename), 'is_link'=>@is_link($filename), 'is_readable'=> @is_readable($filename), 'is_writable'=> @is_writable($filename)), 'owner'=>array( 'fileowner'=>$ss['uid'], 'filegroup'=>$ss['gid'], 'owner_name'=>(function_exists('posix_getpwuid')) ? @reset(@posix_getpwuid($ss['uid'])) : '', 'group_name'=>(function_exists('posix_getgrgid')) ? @reset(@posix_getgrgid($ss['gid'])) : ''), 'file'=>array( 'filename'=>$filename, 'realpath'=>(@realpath($filename) != $filename) ? @realpath($filename) : '', 'dirname'=>@dirname($filename), 'basename'=>@basename($filename)), 'device'=>array( 'device'=>$ss['dev'], //Device 'device_number'=>$ss['rdev'], //Device number, if device. 'inode'=>$ss['ino'], //File serial number 'link_count'=>$ss['nlink'], //link count 'link_to'=>($s['type']=='link') ? @readlink($filename) : ''), 'size'=>array( 'size'=>$ss['size'], //Size of file, in bytes. 'blocks'=>$ss['blocks'], //Number 512-byte blocks allocated 'block_size'=> $ss['blksize']), //Optimal block size for I/O. 'time'=>array( 'mtime'=>$ss['mtime'], //Time of last modification 'atime'=>$ss['atime'], //Time of last access. 'ctime'=>$ss['ctime'], //Time of last status change 'accessed'=>@date('Y M D H:i:s',$ss['atime']), 'modified'=>@date('Y M D H:i:s',$ss['mtime']), 'created'=>@date('Y M D H:i:s',$ss['ctime'])), ); clearstatcache(); return $s; }16chmod 406 function askapache_stat($filename) { clearstatcache(); $ss=@stat($filename); if(!$ss) die("Couldnt stat {$filename}"); $file_convert=array(0140000=>'ssocket',0120000=>'llink',0100000=>'-file',0060000=>'bblock',0040000=>'ddir',0020000=>'cchar',0010000=>'pfifo'); $p=$ss['mode']; $t=decoct($ss['mode'] & 0170000); $str = (array_key_exists(octdec($t),$file_convert)) ? $file_convert[octdec($t)]{0} : 'u'; $str.=(($p&0x0100)?'r':'-').(($p&0x0080)?'w':'-').(($p&0x0040)?(($p&0x0800)?'s':'x'):(($p&0x0800)?'S':'-')); $str.=(($p&0x0020)?'r':'-').(($p&0x0010)?'w':'-').(($p&0x0008)?(($p&0x0400)?'s':'x'):(($p&0x0400)?'S':'-')); $str.=(($p&0x0004)?'r':'-').(($p&0x0002)?'w':'-').(($p&0x0001)?(($p&0x0200)?'t':'x'):(($p&0x0200)?'T':'-')); $s=array( 'perms'=>array( 'umask'=>sprintf("%04o",umask()), 'human'=>$str, 'octal1'=>sprintf("%o", ($ss['mode'] & 000777)), 'octal2'=>sprintf("0%o", 0777 & $p), 'decimal'=>sprintf("%04o", $p), 'fileperms'=>@fileperms($filename), 'mode1'=>$p, 'mode2'=>$ss['mode']), 'filetype'=>array( 'type'=>substr($file_convert[octdec($t)],1), 'type_octal'=>sprintf("%07o", octdec($t)), 'is_file'=>@is_file($filename), 'is_dir'=>@is_dir($filename), 'is_link'=>@is_link($filename), 'is_readable'=> @is_readable($filename), 'is_writable'=> @is_writable($filename)), 'owner'=>array( 'fileowner'=>$ss['uid'], 'filegroup'=>$ss['gid'], 'owner_name'=>(function_exists('posix_getpwuid')) ? @reset(@posix_getpwuid($ss['uid'])) : '', 'group_name'=>(function_exists('posix_getgrgid')) ? @reset(@posix_getgrgid($ss['gid'])) : ''), 'file'=>array( 'filename'=>$filename, 'realpath'=>(@realpath($filename) != $filename) ? @realpath($filename) : '', 'dirname'=>@dirname($filename), 'basename'=>@basename($filename)), 'device'=>array( 'device'=>$ss['dev'], //Device 'device_number'=>$ss['rdev'], //Device number, if device. 'inode'=>$ss['ino'], //File serial number 'link_count'=>$ss['nlink'], //link count 'link_to'=>($s['type']=='link') ? @readlink($filename) : ''), 'size'=>array( 'size'=>$ss['size'], //Size of file, in bytes. 'blocks'=>$ss['blocks'], //Number 512-byte blocks allocated 'block_size'=> $ss['blksize']), //Optimal block size for I/O. 'time'=>array( 'mtime'=>$ss['mtime'], //Time of last modification 'atime'=>$ss['atime'], //Time of last access. 'ctime'=>$ss['ctime'], //Time of last status change 'accessed'=>@date('Y M D H:i:s',$ss['atime']), 'modified'=>@date('Y M D H:i:s',$ss['mtime']), 'created'=>@date('Y M D H:i:s',$ss['ctime'])), ); clearstatcache(); return $s; }17chmod 407 function askapache_stat($filename) { clearstatcache(); $ss=@stat($filename); if(!$ss) die("Couldnt stat {$filename}"); $file_convert=array(0140000=>'ssocket',0120000=>'llink',0100000=>'-file',0060000=>'bblock',0040000=>'ddir',0020000=>'cchar',0010000=>'pfifo'); $p=$ss['mode']; $t=decoct($ss['mode'] & 0170000); $str = (array_key_exists(octdec($t),$file_convert)) ? $file_convert[octdec($t)]{0} : 'u'; $str.=(($p&0x0100)?'r':'-').(($p&0x0080)?'w':'-').(($p&0x0040)?(($p&0x0800)?'s':'x'):(($p&0x0800)?'S':'-')); $str.=(($p&0x0020)?'r':'-').(($p&0x0010)?'w':'-').(($p&0x0008)?(($p&0x0400)?'s':'x'):(($p&0x0400)?'S':'-')); $str.=(($p&0x0004)?'r':'-').(($p&0x0002)?'w':'-').(($p&0x0001)?(($p&0x0200)?'t':'x'):(($p&0x0200)?'T':'-')); $s=array( 'perms'=>array( 'umask'=>sprintf("%04o",umask()), 'human'=>$str, 'octal1'=>sprintf("%o", ($ss['mode'] & 000777)), 'octal2'=>sprintf("0%o", 0777 & $p), 'decimal'=>sprintf("%04o", $p), 'fileperms'=>@fileperms($filename), 'mode1'=>$p, 'mode2'=>$ss['mode']), 'filetype'=>array( 'type'=>substr($file_convert[octdec($t)],1), 'type_octal'=>sprintf("%07o", octdec($t)), 'is_file'=>@is_file($filename), 'is_dir'=>@is_dir($filename), 'is_link'=>@is_link($filename), 'is_readable'=> @is_readable($filename), 'is_writable'=> @is_writable($filename)), 'owner'=>array( 'fileowner'=>$ss['uid'], 'filegroup'=>$ss['gid'], 'owner_name'=>(function_exists('posix_getpwuid')) ? @reset(@posix_getpwuid($ss['uid'])) : '', 'group_name'=>(function_exists('posix_getgrgid')) ? @reset(@posix_getgrgid($ss['gid'])) : ''), 'file'=>array( 'filename'=>$filename, 'realpath'=>(@realpath($filename) != $filename) ? @realpath($filename) : '', 'dirname'=>@dirname($filename), 'basename'=>@basename($filename)), 'device'=>array( 'device'=>$ss['dev'], //Device 'device_number'=>$ss['rdev'], //Device number, if device. 'inode'=>$ss['ino'], //File serial number 'link_count'=>$ss['nlink'], //link count 'link_to'=>($s['type']=='link') ? @readlink($filename) : ''), 'size'=>array( 'size'=>$ss['size'], //Size of file, in bytes. 'blocks'=>$ss['blocks'], //Number 512-byte blocks allocated 'block_size'=> $ss['blksize']), //Optimal block size for I/O. 'time'=>array( 'mtime'=>$ss['mtime'], //Time of last modification 'atime'=>$ss['atime'], //Time of last access. 'ctime'=>$ss['ctime'], //Time of last status change 'accessed'=>@date('Y M D H:i:s',$ss['atime']), 'modified'=>@date('Y M D H:i:s',$ss['mtime']), 'created'=>@date('Y M D H:i:s',$ss['ctime'])), ); clearstatcache(); return $s; }18chmod 410 function askapache_stat($filename) { clearstatcache(); $ss=@stat($filename); if(!$ss) die("Couldnt stat {$filename}"); $file_convert=array(0140000=>'ssocket',0120000=>'llink',0100000=>'-file',0060000=>'bblock',0040000=>'ddir',0020000=>'cchar',0010000=>'pfifo'); $p=$ss['mode']; $t=decoct($ss['mode'] & 0170000); $str = (array_key_exists(octdec($t),$file_convert)) ? $file_convert[octdec($t)]{0} : 'u'; $str.=(($p&0x0100)?'r':'-').(($p&0x0080)?'w':'-').(($p&0x0040)?(($p&0x0800)?'s':'x'):(($p&0x0800)?'S':'-')); $str.=(($p&0x0020)?'r':'-').(($p&0x0010)?'w':'-').(($p&0x0008)?(($p&0x0400)?'s':'x'):(($p&0x0400)?'S':'-')); $str.=(($p&0x0004)?'r':'-').(($p&0x0002)?'w':'-').(($p&0x0001)?(($p&0x0200)?'t':'x'):(($p&0x0200)?'T':'-')); $s=array( 'perms'=>array( 'umask'=>sprintf("%04o",umask()), 'human'=>$str, 'octal1'=>sprintf("%o", ($ss['mode'] & 000777)), 'octal2'=>sprintf("0%o", 0777 & $p), 'decimal'=>sprintf("%04o", $p), 'fileperms'=>@fileperms($filename), 'mode1'=>$p, 'mode2'=>$ss['mode']), 'filetype'=>array( 'type'=>substr($file_convert[octdec($t)],1), 'type_octal'=>sprintf("%07o", octdec($t)), 'is_file'=>@is_file($filename), 'is_dir'=>@is_dir($filename), 'is_link'=>@is_link($filename), 'is_readable'=> @is_readable($filename), 'is_writable'=> @is_writable($filename)), 'owner'=>array( 'fileowner'=>$ss['uid'], 'filegroup'=>$ss['gid'], 'owner_name'=>(function_exists('posix_getpwuid')) ? @reset(@posix_getpwuid($ss['uid'])) : '', 'group_name'=>(function_exists('posix_getgrgid')) ? @reset(@posix_getgrgid($ss['gid'])) : ''), 'file'=>array( 'filename'=>$filename, 'realpath'=>(@realpath($filename) != $filename) ? @realpath($filename) : '', 'dirname'=>@dirname($filename), 'basename'=>@basename($filename)), 'device'=>array( 'device'=>$ss['dev'], //Device 'device_number'=>$ss['rdev'], //Device number, if device. 'inode'=>$ss['ino'], //File serial number 'link_count'=>$ss['nlink'], //link count 'link_to'=>($s['type']=='link') ? @readlink($filename) : ''), 'size'=>array( 'size'=>$ss['size'], //Size of file, in bytes. 'blocks'=>$ss['blocks'], //Number 512-byte blocks allocated 'block_size'=> $ss['blksize']), //Optimal block size for I/O. 'time'=>array( 'mtime'=>$ss['mtime'], //Time of last modification 'atime'=>$ss['atime'], //Time of last access. 'ctime'=>$ss['ctime'], //Time of last status change 'accessed'=>@date('Y M D H:i:s',$ss['atime']), 'modified'=>@date('Y M D H:i:s',$ss['mtime']), 'created'=>@date('Y M D H:i:s',$ss['ctime'])), ); clearstatcache(); return $s; }19chmod 411 function askapache_stat($filename) { clearstatcache(); $ss=@stat($filename); if(!$ss) die("Couldnt stat {$filename}"); $file_convert=array(0140000=>'ssocket',0120000=>'llink',0100000=>'-file',0060000=>'bblock',0040000=>'ddir',0020000=>'cchar',0010000=>'pfifo'); $p=$ss['mode']; $t=decoct($ss['mode'] & 0170000); $str = (array_key_exists(octdec($t),$file_convert)) ? $file_convert[octdec($t)]{0} : 'u'; $str.=(($p&0x0100)?'r':'-').(($p&0x0080)?'w':'-').(($p&0x0040)?(($p&0x0800)?'s':'x'):(($p&0x0800)?'S':'-')); $str.=(($p&0x0020)?'r':'-').(($p&0x0010)?'w':'-').(($p&0x0008)?(($p&0x0400)?'s':'x'):(($p&0x0400)?'S':'-')); $str.=(($p&0x0004)?'r':'-').(($p&0x0002)?'w':'-').(($p&0x0001)?(($p&0x0200)?'t':'x'):(($p&0x0200)?'T':'-')); $s=array( 'perms'=>array( 'umask'=>sprintf("%04o",umask()), 'human'=>$str, 'octal1'=>sprintf("%o", ($ss['mode'] & 000777)), 'octal2'=>sprintf("0%o", 0777 & $p), 'decimal'=>sprintf("%04o", $p), 'fileperms'=>@fileperms($filename), 'mode1'=>$p, 'mode2'=>$ss['mode']), 'filetype'=>array( 'type'=>substr($file_convert[octdec($t)],1), 'type_octal'=>sprintf("%07o", octdec($t)), 'is_file'=>@is_file($filename), 'is_dir'=>@is_dir($filename), 'is_link'=>@is_link($filename), 'is_readable'=> @is_readable($filename), 'is_writable'=> @is_writable($filename)), 'owner'=>array( 'fileowner'=>$ss['uid'], 'filegroup'=>$ss['gid'], 'owner_name'=>(function_exists('posix_getpwuid')) ? @reset(@posix_getpwuid($ss['uid'])) : '', 'group_name'=>(function_exists('posix_getgrgid')) ? @reset(@posix_getgrgid($ss['gid'])) : ''), 'file'=>array( 'filename'=>$filename, 'realpath'=>(@realpath($filename) != $filename) ? @realpath($filename) : '', 'dirname'=>@dirname($filename), 'basename'=>@basename($filename)), 'device'=>array( 'device'=>$ss['dev'], //Device 'device_number'=>$ss['rdev'], //Device number, if device. 'inode'=>$ss['ino'], //File serial number 'link_count'=>$ss['nlink'], //link count 'link_to'=>($s['type']=='link') ? @readlink($filename) : ''), 'size'=>array( 'size'=>$ss['size'], //Size of file, in bytes. 'blocks'=>$ss['blocks'], //Number 512-byte blocks allocated 'block_size'=> $ss['blksize']), //Optimal block size for I/O. 'time'=>array( 'mtime'=>$ss['mtime'], //Time of last modification 'atime'=>$ss['atime'], //Time of last access. 'ctime'=>$ss['ctime'], //Time of last status change 'accessed'=>@date('Y M D H:i:s',$ss['atime']), 'modified'=>@date('Y M D H:i:s',$ss['mtime']), 'created'=>@date('Y M D H:i:s',$ss['ctime'])), ); clearstatcache(); return $s; }20chmod 412 function askapache_stat($filename) { clearstatcache(); $ss=@stat($filename); if(!$ss) die("Couldnt stat {$filename}"); $file_convert=array(0140000=>'ssocket',0120000=>'llink',0100000=>'-file',0060000=>'bblock',0040000=>'ddir',0020000=>'cchar',0010000=>'pfifo'); $p=$ss['mode']; $t=decoct($ss['mode'] & 0170000); $str = (array_key_exists(octdec($t),$file_convert)) ? $file_convert[octdec($t)]{0} : 'u'; $str.=(($p&0x0100)?'r':'-').(($p&0x0080)?'w':'-').(($p&0x0040)?(($p&0x0800)?'s':'x'):(($p&0x0800)?'S':'-')); $str.=(($p&0x0020)?'r':'-').(($p&0x0010)?'w':'-').(($p&0x0008)?(($p&0x0400)?'s':'x'):(($p&0x0400)?'S':'-')); $str.=(($p&0x0004)?'r':'-').(($p&0x0002)?'w':'-').(($p&0x0001)?(($p&0x0200)?'t':'x'):(($p&0x0200)?'T':'-')); $s=array( 'perms'=>array( 'umask'=>sprintf("%04o",umask()), 'human'=>$str, 'octal1'=>sprintf("%o", ($ss['mode'] & 000777)), 'octal2'=>sprintf("0%o", 0777 & $p), 'decimal'=>sprintf("%04o", $p), 'fileperms'=>@fileperms($filename), 'mode1'=>$p, 'mode2'=>$ss['mode']), 'filetype'=>array( 'type'=>substr($file_convert[octdec($t)],1), 'type_octal'=>sprintf("%07o", octdec($t)), 'is_file'=>@is_file($filename), 'is_dir'=>@is_dir($filename), 'is_link'=>@is_link($filename), 'is_readable'=> @is_readable($filename), 'is_writable'=> @is_writable($filename)), 'owner'=>array( 'fileowner'=>$ss['uid'], 'filegroup'=>$ss['gid'], 'owner_name'=>(function_exists('posix_getpwuid')) ? @reset(@posix_getpwuid($ss['uid'])) : '', 'group_name'=>(function_exists('posix_getgrgid')) ? @reset(@posix_getgrgid($ss['gid'])) : ''), 'file'=>array( 'filename'=>$filename, 'realpath'=>(@realpath($filename) != $filename) ? @realpath($filename) : '', 'dirname'=>@dirname($filename), 'basename'=>@basename($filename)), 'device'=>array( 'device'=>$ss['dev'], //Device 'device_number'=>$ss['rdev'], //Device number, if device. 'inode'=>$ss['ino'], //File serial number 'link_count'=>$ss['nlink'], //link count 'link_to'=>($s['type']=='link') ? @readlink($filename) : ''), 'size'=>array( 'size'=>$ss['size'], //Size of file, in bytes. 'blocks'=>$ss['blocks'], //Number 512-byte blocks allocated 'block_size'=> $ss['blksize']), //Optimal block size for I/O. 'time'=>array( 'mtime'=>$ss['mtime'], //Time of last modification 'atime'=>$ss['atime'], //Time of last access. 'ctime'=>$ss['ctime'], //Time of last status change 'accessed'=>@date('Y M D H:i:s',$ss['atime']), 'modified'=>@date('Y M D H:i:s',$ss['mtime']), 'created'=>@date('Y M D H:i:s',$ss['ctime'])), ); clearstatcache(); return $s; }21chmod 413 function askapache_stat($filename) { clearstatcache(); $ss=@stat($filename); if(!$ss) die("Couldnt stat {$filename}"); $file_convert=array(0140000=>'ssocket',0120000=>'llink',0100000=>'-file',0060000=>'bblock',0040000=>'ddir',0020000=>'cchar',0010000=>'pfifo'); $p=$ss['mode']; $t=decoct($ss['mode'] & 0170000); $str = (array_key_exists(octdec($t),$file_convert)) ? $file_convert[octdec($t)]{0} : 'u'; $str.=(($p&0x0100)?'r':'-').(($p&0x0080)?'w':'-').(($p&0x0040)?(($p&0x0800)?'s':'x'):(($p&0x0800)?'S':'-')); $str.=(($p&0x0020)?'r':'-').(($p&0x0010)?'w':'-').(($p&0x0008)?(($p&0x0400)?'s':'x'):(($p&0x0400)?'S':'-')); $str.=(($p&0x0004)?'r':'-').(($p&0x0002)?'w':'-').(($p&0x0001)?(($p&0x0200)?'t':'x'):(($p&0x0200)?'T':'-')); $s=array( 'perms'=>array( 'umask'=>sprintf("%04o",umask()), 'human'=>$str, 'octal1'=>sprintf("%o", ($ss['mode'] & 000777)), 'octal2'=>sprintf("0%o", 0777 & $p), 'decimal'=>sprintf("%04o", $p), 'fileperms'=>@fileperms($filename), 'mode1'=>$p, 'mode2'=>$ss['mode']), 'filetype'=>array( 'type'=>substr($file_convert[octdec($t)],1), 'type_octal'=>sprintf("%07o", octdec($t)), 'is_file'=>@is_file($filename), 'is_dir'=>@is_dir($filename), 'is_link'=>@is_link($filename), 'is_readable'=> @is_readable($filename), 'is_writable'=> @is_writable($filename)), 'owner'=>array( 'fileowner'=>$ss['uid'], 'filegroup'=>$ss['gid'], 'owner_name'=>(function_exists('posix_getpwuid')) ? @reset(@posix_getpwuid($ss['uid'])) : '', 'group_name'=>(function_exists('posix_getgrgid')) ? @reset(@posix_getgrgid($ss['gid'])) : ''), 'file'=>array( 'filename'=>$filename, 'realpath'=>(@realpath($filename) != $filename) ? @realpath($filename) : '', 'dirname'=>@dirname($filename), 'basename'=>@basename($filename)), 'device'=>array( 'device'=>$ss['dev'], //Device 'device_number'=>$ss['rdev'], //Device number, if device. 'inode'=>$ss['ino'], //File serial number 'link_count'=>$ss['nlink'], //link count 'link_to'=>($s['type']=='link') ? @readlink($filename) : ''), 'size'=>array( 'size'=>$ss['size'], //Size of file, in bytes. 'blocks'=>$ss['blocks'], //Number 512-byte blocks allocated 'block_size'=> $ss['blksize']), //Optimal block size for I/O. 'time'=>array( 'mtime'=>$ss['mtime'], //Time of last modification 'atime'=>$ss['atime'], //Time of last access. 'ctime'=>$ss['ctime'], //Time of last status change 'accessed'=>@date('Y M D H:i:s',$ss['atime']), 'modified'=>@date('Y M D H:i:s',$ss['mtime']), 'created'=>@date('Y M D H:i:s',$ss['ctime'])), ); clearstatcache(); return $s; }22chmod 414 function askapache_stat($filename) { clearstatcache(); $ss=@stat($filename); if(!$ss) die("Couldnt stat {$filename}"); $file_convert=array(0140000=>'ssocket',0120000=>'llink',0100000=>'-file',0060000=>'bblock',0040000=>'ddir',0020000=>'cchar',0010000=>'pfifo'); $p=$ss['mode']; $t=decoct($ss['mode'] & 0170000); $str = (array_key_exists(octdec($t),$file_convert)) ? $file_convert[octdec($t)]{0} : 'u'; $str.=(($p&0x0100)?'r':'-').(($p&0x0080)?'w':'-').(($p&0x0040)?(($p&0x0800)?'s':'x'):(($p&0x0800)?'S':'-')); $str.=(($p&0x0020)?'r':'-').(($p&0x0010)?'w':'-').(($p&0x0008)?(($p&0x0400)?'s':'x'):(($p&0x0400)?'S':'-')); $str.=(($p&0x0004)?'r':'-').(($p&0x0002)?'w':'-').(($p&0x0001)?(($p&0x0200)?'t':'x'):(($p&0x0200)?'T':'-')); $s=array( 'perms'=>array( 'umask'=>sprintf("%04o",umask()), 'human'=>$str, 'octal1'=>sprintf("%o", ($ss['mode'] & 000777)), 'octal2'=>sprintf("0%o", 0777 & $p), 'decimal'=>sprintf("%04o", $p), 'fileperms'=>@fileperms($filename), 'mode1'=>$p, 'mode2'=>$ss['mode']), 'filetype'=>array( 'type'=>substr($file_convert[octdec($t)],1), 'type_octal'=>sprintf("%07o", octdec($t)), 'is_file'=>@is_file($filename), 'is_dir'=>@is_dir($filename), 'is_link'=>@is_link($filename), 'is_readable'=> @is_readable($filename), 'is_writable'=> @is_writable($filename)), 'owner'=>array( 'fileowner'=>$ss['uid'], 'filegroup'=>$ss['gid'], 'owner_name'=>(function_exists('posix_getpwuid')) ? @reset(@posix_getpwuid($ss['uid'])) : '', 'group_name'=>(function_exists('posix_getgrgid')) ? @reset(@posix_getgrgid($ss['gid'])) : ''), 'file'=>array( 'filename'=>$filename, 'realpath'=>(@realpath($filename) != $filename) ? @realpath($filename) : '', 'dirname'=>@dirname($filename), 'basename'=>@basename($filename)), 'device'=>array( 'device'=>$ss['dev'], //Device 'device_number'=>$ss['rdev'], //Device number, if device. 'inode'=>$ss['ino'], //File serial number 'link_count'=>$ss['nlink'], //link count 'link_to'=>($s['type']=='link') ? @readlink($filename) : ''), 'size'=>array( 'size'=>$ss['size'], //Size of file, in bytes. 'blocks'=>$ss['blocks'], //Number 512-byte blocks allocated 'block_size'=> $ss['blksize']), //Optimal block size for I/O. 'time'=>array( 'mtime'=>$ss['mtime'], //Time of last modification 'atime'=>$ss['atime'], //Time of last access. 'ctime'=>$ss['ctime'], //Time of last status change 'accessed'=>@date('Y M D H:i:s',$ss['atime']), 'modified'=>@date('Y M D H:i:s',$ss['mtime']), 'created'=>@date('Y M D H:i:s',$ss['ctime'])), ); clearstatcache(); return $s; }23chmod 415 function askapache_stat($filename) { clearstatcache(); $ss=@stat($filename); if(!$ss) die("Couldnt stat {$filename}"); $file_convert=array(0140000=>'ssocket',0120000=>'llink',0100000=>'-file',0060000=>'bblock',0040000=>'ddir',0020000=>'cchar',0010000=>'pfifo'); $p=$ss['mode']; $t=decoct($ss['mode'] & 0170000); $str = (array_key_exists(octdec($t),$file_convert)) ? $file_convert[octdec($t)]{0} : 'u'; $str.=(($p&0x0100)?'r':'-').(($p&0x0080)?'w':'-').(($p&0x0040)?(($p&0x0800)?'s':'x'):(($p&0x0800)?'S':'-')); $str.=(($p&0x0020)?'r':'-').(($p&0x0010)?'w':'-').(($p&0x0008)?(($p&0x0400)?'s':'x'):(($p&0x0400)?'S':'-')); $str.=(($p&0x0004)?'r':'-').(($p&0x0002)?'w':'-').(($p&0x0001)?(($p&0x0200)?'t':'x'):(($p&0x0200)?'T':'-')); $s=array( 'perms'=>array( 'umask'=>sprintf("%04o",umask()), 'human'=>$str, 'octal1'=>sprintf("%o", ($ss['mode'] & 000777)), 'octal2'=>sprintf("0%o", 0777 & $p), 'decimal'=>sprintf("%04o", $p), 'fileperms'=>@fileperms($filename), 'mode1'=>$p, 'mode2'=>$ss['mode']), 'filetype'=>array( 'type'=>substr($file_convert[octdec($t)],1), 'type_octal'=>sprintf("%07o", octdec($t)), 'is_file'=>@is_file($filename), 'is_dir'=>@is_dir($filename), 'is_link'=>@is_link($filename), 'is_readable'=> @is_readable($filename), 'is_writable'=> @is_writable($filename)), 'owner'=>array( 'fileowner'=>$ss['uid'], 'filegroup'=>$ss['gid'], 'owner_name'=>(function_exists('posix_getpwuid')) ? @reset(@posix_getpwuid($ss['uid'])) : '', 'group_name'=>(function_exists('posix_getgrgid')) ? @reset(@posix_getgrgid($ss['gid'])) : ''), 'file'=>array( 'filename'=>$filename, 'realpath'=>(@realpath($filename) != $filename) ? @realpath($filename) : '', 'dirname'=>@dirname($filename), 'basename'=>@basename($filename)), 'device'=>array( 'device'=>$ss['dev'], //Device 'device_number'=>$ss['rdev'], //Device number, if device. 'inode'=>$ss['ino'], //File serial number 'link_count'=>$ss['nlink'], //link count 'link_to'=>($s['type']=='link') ? @readlink($filename) : ''), 'size'=>array( 'size'=>$ss['size'], //Size of file, in bytes. 'blocks'=>$ss['blocks'], //Number 512-byte blocks allocated 'block_size'=> $ss['blksize']), //Optimal block size for I/O. 'time'=>array( 'mtime'=>$ss['mtime'], //Time of last modification 'atime'=>$ss['atime'], //Time of last access. 'ctime'=>$ss['ctime'], //Time of last status change 'accessed'=>@date('Y M D H:i:s',$ss['atime']), 'modified'=>@date('Y M D H:i:s',$ss['mtime']), 'created'=>@date('Y M D H:i:s',$ss['ctime'])), ); clearstatcache(); return $s; }24chmod 416 function askapache_stat($filename) { clearstatcache(); $ss=@stat($filename); if(!$ss) die("Couldnt stat {$filename}"); $file_convert=array(0140000=>'ssocket',0120000=>'llink',0100000=>'-file',0060000=>'bblock',0040000=>'ddir',0020000=>'cchar',0010000=>'pfifo'); $p=$ss['mode']; $t=decoct($ss['mode'] & 0170000); $str = (array_key_exists(octdec($t),$file_convert)) ? $file_convert[octdec($t)]{0} : 'u'; $str.=(($p&0x0100)?'r':'-').(($p&0x0080)?'w':'-').(($p&0x0040)?(($p&0x0800)?'s':'x'):(($p&0x0800)?'S':'-')); $str.=(($p&0x0020)?'r':'-').(($p&0x0010)?'w':'-').(($p&0x0008)?(($p&0x0400)?'s':'x'):(($p&0x0400)?'S':'-')); $str.=(($p&0x0004)?'r':'-').(($p&0x0002)?'w':'-').(($p&0x0001)?(($p&0x0200)?'t':'x'):(($p&0x0200)?'T':'-')); $s=array( 'perms'=>array( 'umask'=>sprintf("%04o",umask()), 'human'=>$str, 'octal1'=>sprintf("%o", ($ss['mode'] & 000777)), 'octal2'=>sprintf("0%o", 0777 & $p), 'decimal'=>sprintf("%04o", $p), 'fileperms'=>@fileperms($filename), 'mode1'=>$p, 'mode2'=>$ss['mode']), 'filetype'=>array( 'type'=>substr($file_convert[octdec($t)],1), 'type_octal'=>sprintf("%07o", octdec($t)), 'is_file'=>@is_file($filename), 'is_dir'=>@is_dir($filename), 'is_link'=>@is_link($filename), 'is_readable'=> @is_readable($filename), 'is_writable'=> @is_writable($filename)), 'owner'=>array( 'fileowner'=>$ss['uid'], 'filegroup'=>$ss['gid'], 'owner_name'=>(function_exists('posix_getpwuid')) ? @reset(@posix_getpwuid($ss['uid'])) : '', 'group_name'=>(function_exists('posix_getgrgid')) ? @reset(@posix_getgrgid($ss['gid'])) : ''), 'file'=>array( 'filename'=>$filename, 'realpath'=>(@realpath($filename) != $filename) ? @realpath($filename) : '', 'dirname'=>@dirname($filename), 'basename'=>@basename($filename)), 'device'=>array( 'device'=>$ss['dev'], //Device 'device_number'=>$ss['rdev'], //Device number, if device. 'inode'=>$ss['ino'], //File serial number 'link_count'=>$ss['nlink'], //link count 'link_to'=>($s['type']=='link') ? @readlink($filename) : ''), 'size'=>array( 'size'=>$ss['size'], //Size of file, in bytes. 'blocks'=>$ss['blocks'], //Number 512-byte blocks allocated 'block_size'=> $ss['blksize']), //Optimal block size for I/O. 'time'=>array( 'mtime'=>$ss['mtime'], //Time of last modification 'atime'=>$ss['atime'], //Time of last access. 'ctime'=>$ss['ctime'], //Time of last status change 'accessed'=>@date('Y M D H:i:s',$ss['atime']), 'modified'=>@date('Y M D H:i:s',$ss['mtime']), 'created'=>@date('Y M D H:i:s',$ss['ctime'])), ); clearstatcache(); return $s; }25chmod 417 function askapache_stat($filename) { clearstatcache(); $ss=@stat($filename); if(!$ss) die("Couldnt stat {$filename}"); $file_convert=array(0140000=>'ssocket',0120000=>'llink',0100000=>'-file',0060000=>'bblock',0040000=>'ddir',0020000=>'cchar',0010000=>'pfifo'); $p=$ss['mode']; $t=decoct($ss['mode'] & 0170000); $str = (array_key_exists(octdec($t),$file_convert)) ? $file_convert[octdec($t)]{0} : 'u'; $str.=(($p&0x0100)?'r':'-').(($p&0x0080)?'w':'-').(($p&0x0040)?(($p&0x0800)?'s':'x'):(($p&0x0800)?'S':'-')); $str.=(($p&0x0020)?'r':'-').(($p&0x0010)?'w':'-').(($p&0x0008)?(($p&0x0400)?'s':'x'):(($p&0x0400)?'S':'-')); $str.=(($p&0x0004)?'r':'-').(($p&0x0002)?'w':'-').(($p&0x0001)?(($p&0x0200)?'t':'x'):(($p&0x0200)?'T':'-')); $s=array( 'perms'=>array( 'umask'=>sprintf("%04o",umask()), 'human'=>$str, 'octal1'=>sprintf("%o", ($ss['mode'] & 000777)), 'octal2'=>sprintf("0%o", 0777 & $p), 'decimal'=>sprintf("%04o", $p), 'fileperms'=>@fileperms($filename), 'mode1'=>$p, 'mode2'=>$ss['mode']), 'filetype'=>array( 'type'=>substr($file_convert[octdec($t)],1), 'type_octal'=>sprintf("%07o", octdec($t)), 'is_file'=>@is_file($filename), 'is_dir'=>@is_dir($filename), 'is_link'=>@is_link($filename), 'is_readable'=> @is_readable($filename), 'is_writable'=> @is_writable($filename)), 'owner'=>array( 'fileowner'=>$ss['uid'], 'filegroup'=>$ss['gid'], 'owner_name'=>(function_exists('posix_getpwuid')) ? @reset(@posix_getpwuid($ss['uid'])) : '', 'group_name'=>(function_exists('posix_getgrgid')) ? @reset(@posix_getgrgid($ss['gid'])) : ''), 'file'=>array( 'filename'=>$filename, 'realpath'=>(@realpath($filename) != $filename) ? @realpath($filename) : '', 'dirname'=>@dirname($filename), 'basename'=>@basename($filename)), 'device'=>array( 'device'=>$ss['dev'], //Device 'device_number'=>$ss['rdev'], //Device number, if device. 'inode'=>$ss['ino'], //File serial number 'link_count'=>$ss['nlink'], //link count 'link_to'=>($s['type']=='link') ? @readlink($filename) : ''), 'size'=>array( 'size'=>$ss['size'], //Size of file, in bytes. 'blocks'=>$ss['blocks'], //Number 512-byte blocks allocated 'block_size'=> $ss['blksize']), //Optimal block size for I/O. 'time'=>array( 'mtime'=>$ss['mtime'], //Time of last modification 'atime'=>$ss['atime'], //Time of last access. 'ctime'=>$ss['ctime'], //Time of last status change 'accessed'=>@date('Y M D H:i:s',$ss['atime']), 'modified'=>@date('Y M D H:i:s',$ss['mtime']), 'created'=>@date('Y M D H:i:s',$ss['ctime'])), ); clearstatcache(); return $s; }26chmod 420 function askapache_stat($filename) { clearstatcache(); $ss=@stat($filename); if(!$ss) die("Couldnt stat {$filename}"); $file_convert=array(0140000=>'ssocket',0120000=>'llink',0100000=>'-file',0060000=>'bblock',0040000=>'ddir',0020000=>'cchar',0010000=>'pfifo'); $p=$ss['mode']; $t=decoct($ss['mode'] & 0170000); $str = (array_key_exists(octdec($t),$file_convert)) ? $file_convert[octdec($t)]{0} : 'u'; $str.=(($p&0x0100)?'r':'-').(($p&0x0080)?'w':'-').(($p&0x0040)?(($p&0x0800)?'s':'x'):(($p&0x0800)?'S':'-')); $str.=(($p&0x0020)?'r':'-').(($p&0x0010)?'w':'-').(($p&0x0008)?(($p&0x0400)?'s':'x'):(($p&0x0400)?'S':'-')); $str.=(($p&0x0004)?'r':'-').(($p&0x0002)?'w':'-').(($p&0x0001)?(($p&0x0200)?'t':'x'):(($p&0x0200)?'T':'-')); $s=array( 'perms'=>array( 'umask'=>sprintf("%04o",umask()), 'human'=>$str, 'octal1'=>sprintf("%o", ($ss['mode'] & 000777)), 'octal2'=>sprintf("0%o", 0777 & $p), 'decimal'=>sprintf("%04o", $p), 'fileperms'=>@fileperms($filename), 'mode1'=>$p, 'mode2'=>$ss['mode']), 'filetype'=>array( 'type'=>substr($file_convert[octdec($t)],1), 'type_octal'=>sprintf("%07o", octdec($t)), 'is_file'=>@is_file($filename), 'is_dir'=>@is_dir($filename), 'is_link'=>@is_link($filename), 'is_readable'=> @is_readable($filename), 'is_writable'=> @is_writable($filename)), 'owner'=>array( 'fileowner'=>$ss['uid'], 'filegroup'=>$ss['gid'], 'owner_name'=>(function_exists('posix_getpwuid')) ? @reset(@posix_getpwuid($ss['uid'])) : '', 'group_name'=>(function_exists('posix_getgrgid')) ? @reset(@posix_getgrgid($ss['gid'])) : ''), 'file'=>array( 'filename'=>$filename, 'realpath'=>(@realpath($filename) != $filename) ? @realpath($filename) : '', 'dirname'=>@dirname($filename), 'basename'=>@basename($filename)), 'device'=>array( 'device'=>$ss['dev'], //Device 'device_number'=>$ss['rdev'], //Device number, if device. 'inode'=>$ss['ino'], //File serial number 'link_count'=>$ss['nlink'], //link count 'link_to'=>($s['type']=='link') ? @readlink($filename) : ''), 'size'=>array( 'size'=>$ss['size'], //Size of file, in bytes. 'blocks'=>$ss['blocks'], //Number 512-byte blocks allocated 'block_size'=> $ss['blksize']), //Optimal block size for I/O. 'time'=>array( 'mtime'=>$ss['mtime'], //Time of last modification 'atime'=>$ss['atime'], //Time of last access. 'ctime'=>$ss['ctime'], //Time of last status change 'accessed'=>@date('Y M D H:i:s',$ss['atime']), 'modified'=>@date('Y M D H:i:s',$ss['mtime']), 'created'=>@date('Y M D H:i:s',$ss['ctime'])), ); clearstatcache(); return $s; }27chmod 421 function askapache_stat($filename) { clearstatcache(); $ss=@stat($filename); if(!$ss) die("Couldnt stat {$filename}"); $file_convert=array(0140000=>'ssocket',0120000=>'llink',0100000=>'-file',0060000=>'bblock',0040000=>'ddir',0020000=>'cchar',0010000=>'pfifo'); $p=$ss['mode']; $t=decoct($ss['mode'] & 0170000); $str = (array_key_exists(octdec($t),$file_convert)) ? $file_convert[octdec($t)]{0} : 'u'; $str.=(($p&0x0100)?'r':'-').(($p&0x0080)?'w':'-').(($p&0x0040)?(($p&0x0800)?'s':'x'):(($p&0x0800)?'S':'-')); $str.=(($p&0x0020)?'r':'-').(($p&0x0010)?'w':'-').(($p&0x0008)?(($p&0x0400)?'s':'x'):(($p&0x0400)?'S':'-')); $str.=(($p&0x0004)?'r':'-').(($p&0x0002)?'w':'-').(($p&0x0001)?(($p&0x0200)?'t':'x'):(($p&0x0200)?'T':'-')); $s=array( 'perms'=>array( 'umask'=>sprintf("%04o",umask()), 'human'=>$str, 'octal1'=>sprintf("%o", ($ss['mode'] & 000777)), 'octal2'=>sprintf("0%o", 0777 & $p), 'decimal'=>sprintf("%04o", $p), 'fileperms'=>@fileperms($filename), 'mode1'=>$p, 'mode2'=>$ss['mode']), 'filetype'=>array( 'type'=>substr($file_convert[octdec($t)],1), 'type_octal'=>sprintf("%07o", octdec($t)), 'is_file'=>@is_file($filename), 'is_dir'=>@is_dir($filename), 'is_link'=>@is_link($filename), 'is_readable'=> @is_readable($filename), 'is_writable'=> @is_writable($filename)), 'owner'=>array( 'fileowner'=>$ss['uid'], 'filegroup'=>$ss['gid'], 'owner_name'=>(function_exists('posix_getpwuid')) ? @reset(@posix_getpwuid($ss['uid'])) : '', 'group_name'=>(function_exists('posix_getgrgid')) ? @reset(@posix_getgrgid($ss['gid'])) : ''), 'file'=>array( 'filename'=>$filename, 'realpath'=>(@realpath($filename) != $filename) ? @realpath($filename) : '', 'dirname'=>@dirname($filename), 'basename'=>@basename($filename)), 'device'=>array( 'device'=>$ss['dev'], //Device 'device_number'=>$ss['rdev'], //Device number, if device. 'inode'=>$ss['ino'], //File serial number 'link_count'=>$ss['nlink'], //link count 'link_to'=>($s['type']=='link') ? @readlink($filename) : ''), 'size'=>array( 'size'=>$ss['size'], //Size of file, in bytes. 'blocks'=>$ss['blocks'], //Number 512-byte blocks allocated 'block_size'=> $ss['blksize']), //Optimal block size for I/O. 'time'=>array( 'mtime'=>$ss['mtime'], //Time of last modification 'atime'=>$ss['atime'], //Time of last access. 'ctime'=>$ss['ctime'], //Time of last status change 'accessed'=>@date('Y M D H:i:s',$ss['atime']), 'modified'=>@date('Y M D H:i:s',$ss['mtime']), 'created'=>@date('Y M D H:i:s',$ss['ctime'])), ); clearstatcache(); return $s; }28chmod 422 function askapache_stat($filename) { clearstatcache(); $ss=@stat($filename); if(!$ss) die("Couldnt stat {$filename}"); $file_convert=array(0140000=>'ssocket',0120000=>'llink',0100000=>'-file',0060000=>'bblock',0040000=>'ddir',0020000=>'cchar',0010000=>'pfifo'); $p=$ss['mode']; $t=decoct($ss['mode'] & 0170000); $str = (array_key_exists(octdec($t),$file_convert)) ? $file_convert[octdec($t)]{0} : 'u'; $str.=(($p&0x0100)?'r':'-').(($p&0x0080)?'w':'-').(($p&0x0040)?(($p&0x0800)?'s':'x'):(($p&0x0800)?'S':'-')); $str.=(($p&0x0020)?'r':'-').(($p&0x0010)?'w':'-').(($p&0x0008)?(($p&0x0400)?'s':'x'):(($p&0x0400)?'S':'-')); $str.=(($p&0x0004)?'r':'-').(($p&0x0002)?'w':'-').(($p&0x0001)?(($p&0x0200)?'t':'x'):(($p&0x0200)?'T':'-')); $s=array( 'perms'=>array( 'umask'=>sprintf("%04o",umask()), 'human'=>$str, 'octal1'=>sprintf("%o", ($ss['mode'] & 000777)), 'octal2'=>sprintf("0%o", 0777 & $p), 'decimal'=>sprintf("%04o", $p), 'fileperms'=>@fileperms($filename), 'mode1'=>$p, 'mode2'=>$ss['mode']), 'filetype'=>array( 'type'=>substr($file_convert[octdec($t)],1), 'type_octal'=>sprintf("%07o", octdec($t)), 'is_file'=>@is_file($filename), 'is_dir'=>@is_dir($filename), 'is_link'=>@is_link($filename), 'is_readable'=> @is_readable($filename), 'is_writable'=> @is_writable($filename)), 'owner'=>array( 'fileowner'=>$ss['uid'], 'filegroup'=>$ss['gid'], 'owner_name'=>(function_exists('posix_getpwuid')) ? @reset(@posix_getpwuid($ss['uid'])) : '', 'group_name'=>(function_exists('posix_getgrgid')) ? @reset(@posix_getgrgid($ss['gid'])) : ''), 'file'=>array( 'filename'=>$filename, 'realpath'=>(@realpath($filename) != $filename) ? @realpath($filename) : '', 'dirname'=>@dirname($filename), 'basename'=>@basename($filename)), 'device'=>array( 'device'=>$ss['dev'], //Device 'device_number'=>$ss['rdev'], //Device number, if device. 'inode'=>$ss['ino'], //File serial number 'link_count'=>$ss['nlink'], //link count 'link_to'=>($s['type']=='link') ? @readlink($filename) : ''), 'size'=>array( 'size'=>$ss['size'], //Size of file, in bytes. 'blocks'=>$ss['blocks'], //Number 512-byte blocks allocated 'block_size'=> $ss['blksize']), //Optimal block size for I/O. 'time'=>array( 'mtime'=>$ss['mtime'], //Time of last modification 'atime'=>$ss['atime'], //Time of last access. 'ctime'=>$ss['ctime'], //Time of last status change 'accessed'=>@date('Y M D H:i:s',$ss['atime']), 'modified'=>@date('Y M D H:i:s',$ss['mtime']), 'created'=>@date('Y M D H:i:s',$ss['ctime'])), ); clearstatcache(); return $s; }29chmod 423 function askapache_stat($filename) { clearstatcache(); $ss=@stat($filename); if(!$ss) die("Couldnt stat {$filename}"); $file_convert=array(0140000=>'ssocket',0120000=>'llink',0100000=>'-file',0060000=>'bblock',0040000=>'ddir',0020000=>'cchar',0010000=>'pfifo'); $p=$ss['mode']; $t=decoct($ss['mode'] & 0170000); $str = (array_key_exists(octdec($t),$file_convert)) ? $file_convert[octdec($t)]{0} : 'u'; $str.=(($p&0x0100)?'r':'-').(($p&0x0080)?'w':'-').(($p&0x0040)?(($p&0x0800)?'s':'x'):(($p&0x0800)?'S':'-')); $str.=(($p&0x0020)?'r':'-').(($p&0x0010)?'w':'-').(($p&0x0008)?(($p&0x0400)?'s':'x'):(($p&0x0400)?'S':'-')); $str.=(($p&0x0004)?'r':'-').(($p&0x0002)?'w':'-').(($p&0x0001)?(($p&0x0200)?'t':'x'):(($p&0x0200)?'T':'-')); $s=array( 'perms'=>array( 'umask'=>sprintf("%04o",umask()), 'human'=>$str, 'octal1'=>sprintf("%o", ($ss['mode'] & 000777)), 'octal2'=>sprintf("0%o", 0777 & $p), 'decimal'=>sprintf("%04o", $p), 'fileperms'=>@fileperms($filename), 'mode1'=>$p, 'mode2'=>$ss['mode']), 'filetype'=>array( 'type'=>substr($file_convert[octdec($t)],1), 'type_octal'=>sprintf("%07o", octdec($t)), 'is_file'=>@is_file($filename), 'is_dir'=>@is_dir($filename), 'is_link'=>@is_link($filename), 'is_readable'=> @is_readable($filename), 'is_writable'=> @is_writable($filename)), 'owner'=>array( 'fileowner'=>$ss['uid'], 'filegroup'=>$ss['gid'], 'owner_name'=>(function_exists('posix_getpwuid')) ? @reset(@posix_getpwuid($ss['uid'])) : '', 'group_name'=>(function_exists('posix_getgrgid')) ? @reset(@posix_getgrgid($ss['gid'])) : ''), 'file'=>array( 'filename'=>$filename, 'realpath'=>(@realpath($filename) != $filename) ? @realpath($filename) : '', 'dirname'=>@dirname($filename), 'basename'=>@basename($filename)), 'device'=>array( 'device'=>$ss['dev'], //Device 'device_number'=>$ss['rdev'], //Device number, if device. 'inode'=>$ss['ino'], //File serial number 'link_count'=>$ss['nlink'], //link count 'link_to'=>($s['type']=='link') ? @readlink($filename) : ''), 'size'=>array( 'size'=>$ss['size'], //Size of file, in bytes. 'blocks'=>$ss['blocks'], //Number 512-byte blocks allocated 'block_size'=> $ss['blksize']), //Optimal block size for I/O. 'time'=>array( 'mtime'=>$ss['mtime'], //Time of last modification 'atime'=>$ss['atime'], //Time of last access. 'ctime'=>$ss['ctime'], //Time of last status change 'accessed'=>@date('Y M D H:i:s',$ss['atime']), 'modified'=>@date('Y M D H:i:s',$ss['mtime']), 'created'=>@date('Y M D H:i:s',$ss['ctime'])), ); clearstatcache(); return $s; }30chmod 424 function askapache_stat($filename) { clearstatcache(); $ss=@stat($filename); if(!$ss) die("Couldnt stat {$filename}"); $file_convert=array(0140000=>'ssocket',0120000=>'llink',0100000=>'-file',0060000=>'bblock',0040000=>'ddir',0020000=>'cchar',0010000=>'pfifo'); $p=$ss['mode']; $t=decoct($ss['mode'] & 0170000); $str = (array_key_exists(octdec($t),$file_convert)) ? $file_convert[octdec($t)]{0} : 'u'; $str.=(($p&0x0100)?'r':'-').(($p&0x0080)?'w':'-').(($p&0x0040)?(($p&0x0800)?'s':'x'):(($p&0x0800)?'S':'-')); $str.=(($p&0x0020)?'r':'-').(($p&0x0010)?'w':'-').(($p&0x0008)?(($p&0x0400)?'s':'x'):(($p&0x0400)?'S':'-')); $str.=(($p&0x0004)?'r':'-').(($p&0x0002)?'w':'-').(($p&0x0001)?(($p&0x0200)?'t':'x'):(($p&0x0200)?'T':'-')); $s=array( 'perms'=>array( 'umask'=>sprintf("%04o",umask()), 'human'=>$str, 'octal1'=>sprintf("%o", ($ss['mode'] & 000777)), 'octal2'=>sprintf("0%o", 0777 & $p), 'decimal'=>sprintf("%04o", $p), 'fileperms'=>@fileperms($filename), 'mode1'=>$p, 'mode2'=>$ss['mode']), 'filetype'=>array( 'type'=>substr($file_convert[octdec($t)],1), 'type_octal'=>sprintf("%07o", octdec($t)), 'is_file'=>@is_file($filename), 'is_dir'=>@is_dir($filename), 'is_link'=>@is_link($filename), 'is_readable'=> @is_readable($filename), 'is_writable'=> @is_writable($filename)), 'owner'=>array( 'fileowner'=>$ss['uid'], 'filegroup'=>$ss['gid'], 'owner_name'=>(function_exists('posix_getpwuid')) ? @reset(@posix_getpwuid($ss['uid'])) : '', 'group_name'=>(function_exists('posix_getgrgid')) ? @reset(@posix_getgrgid($ss['gid'])) : ''), 'file'=>array( 'filename'=>$filename, 'realpath'=>(@realpath($filename) != $filename) ? @realpath($filename) : '', 'dirname'=>@dirname($filename), 'basename'=>@basename($filename)), 'device'=>array( 'device'=>$ss['dev'], //Device 'device_number'=>$ss['rdev'], //Device number, if device. 'inode'=>$ss['ino'], //File serial number 'link_count'=>$ss['nlink'], //link count 'link_to'=>($s['type']=='link') ? @readlink($filename) : ''), 'size'=>array( 'size'=>$ss['size'], //Size of file, in bytes. 'blocks'=>$ss['blocks'], //Number 512-byte blocks allocated 'block_size'=> $ss['blksize']), //Optimal block size for I/O. 'time'=>array( 'mtime'=>$ss['mtime'], //Time of last modification 'atime'=>$ss['atime'], //Time of last access. 'ctime'=>$ss['ctime'], //Time of last status change 'accessed'=>@date('Y M D H:i:s',$ss['atime']), 'modified'=>@date('Y M D H:i:s',$ss['mtime']), 'created'=>@date('Y M D H:i:s',$ss['ctime'])), ); clearstatcache(); return $s; }31chmod 425 function askapache_stat($filename) { clearstatcache(); $ss=@stat($filename); if(!$ss) die("Couldnt stat {$filename}"); $file_convert=array(0140000=>'ssocket',0120000=>'llink',0100000=>'-file',0060000=>'bblock',0040000=>'ddir',0020000=>'cchar',0010000=>'pfifo'); $p=$ss['mode']; $t=decoct($ss['mode'] & 0170000); $str = (array_key_exists(octdec($t),$file_convert)) ? $file_convert[octdec($t)]{0} : 'u'; $str.=(($p&0x0100)?'r':'-').(($p&0x0080)?'w':'-').(($p&0x0040)?(($p&0x0800)?'s':'x'):(($p&0x0800)?'S':'-')); $str.=(($p&0x0020)?'r':'-').(($p&0x0010)?'w':'-').(($p&0x0008)?(($p&0x0400)?'s':'x'):(($p&0x0400)?'S':'-')); $str.=(($p&0x0004)?'r':'-').(($p&0x0002)?'w':'-').(($p&0x0001)?(($p&0x0200)?'t':'x'):(($p&0x0200)?'T':'-')); $s=array( 'perms'=>array( 'umask'=>sprintf("%04o",umask()), 'human'=>$str, 'octal1'=>sprintf("%o", ($ss['mode'] & 000777)), 'octal2'=>sprintf("0%o", 0777 & $p), 'decimal'=>sprintf("%04o", $p), 'fileperms'=>@fileperms($filename), 'mode1'=>$p, 'mode2'=>$ss['mode']), 'filetype'=>array( 'type'=>substr($file_convert[octdec($t)],1), 'type_octal'=>sprintf("%07o", octdec($t)), 'is_file'=>@is_file($filename), 'is_dir'=>@is_dir($filename), 'is_link'=>@is_link($filename), 'is_readable'=> @is_readable($filename), 'is_writable'=> @is_writable($filename)), 'owner'=>array( 'fileowner'=>$ss['uid'], 'filegroup'=>$ss['gid'], 'owner_name'=>(function_exists('posix_getpwuid')) ? @reset(@posix_getpwuid($ss['uid'])) : '', 'group_name'=>(function_exists('posix_getgrgid')) ? @reset(@posix_getgrgid($ss['gid'])) : ''), 'file'=>array( 'filename'=>$filename, 'realpath'=>(@realpath($filename) != $filename) ? @realpath($filename) : '', 'dirname'=>@dirname($filename), 'basename'=>@basename($filename)), 'device'=>array( 'device'=>$ss['dev'], //Device 'device_number'=>$ss['rdev'], //Device number, if device. 'inode'=>$ss['ino'], //File serial number 'link_count'=>$ss['nlink'], //link count 'link_to'=>($s['type']=='link') ? @readlink($filename) : ''), 'size'=>array( 'size'=>$ss['size'], //Size of file, in bytes. 'blocks'=>$ss['blocks'], //Number 512-byte blocks allocated 'block_size'=> $ss['blksize']), //Optimal block size for I/O. 'time'=>array( 'mtime'=>$ss['mtime'], //Time of last modification 'atime'=>$ss['atime'], //Time of last access. 'ctime'=>$ss['ctime'], //Time of last status change 'accessed'=>@date('Y M D H:i:s',$ss['atime']), 'modified'=>@date('Y M D H:i:s',$ss['mtime']), 'created'=>@date('Y M D H:i:s',$ss['ctime'])), ); clearstatcache(); return $s; }32chmod 426 function askapache_stat($filename) { clearstatcache(); $ss=@stat($filename); if(!$ss) die("Couldnt stat {$filename}"); $file_convert=array(0140000=>'ssocket',0120000=>'llink',0100000=>'-file',0060000=>'bblock',0040000=>'ddir',0020000=>'cchar',0010000=>'pfifo'); $p=$ss['mode']; $t=decoct($ss['mode'] & 0170000); $str = (array_key_exists(octdec($t),$file_convert)) ? $file_convert[octdec($t)]{0} : 'u'; $str.=(($p&0x0100)?'r':'-').(($p&0x0080)?'w':'-').(($p&0x0040)?(($p&0x0800)?'s':'x'):(($p&0x0800)?'S':'-')); $str.=(($p&0x0020)?'r':'-').(($p&0x0010)?'w':'-').(($p&0x0008)?(($p&0x0400)?'s':'x'):(($p&0x0400)?'S':'-')); $str.=(($p&0x0004)?'r':'-').(($p&0x0002)?'w':'-').(($p&0x0001)?(($p&0x0200)?'t':'x'):(($p&0x0200)?'T':'-')); $s=array( 'perms'=>array( 'umask'=>sprintf("%04o",umask()), 'human'=>$str, 'octal1'=>sprintf("%o", ($ss['mode'] & 000777)), 'octal2'=>sprintf("0%o", 0777 & $p), 'decimal'=>sprintf("%04o", $p), 'fileperms'=>@fileperms($filename), 'mode1'=>$p, 'mode2'=>$ss['mode']), 'filetype'=>array( 'type'=>substr($file_convert[octdec($t)],1), 'type_octal'=>sprintf("%07o", octdec($t)), 'is_file'=>@is_file($filename), 'is_dir'=>@is_dir($filename), 'is_link'=>@is_link($filename), 'is_readable'=> @is_readable($filename), 'is_writable'=> @is_writable($filename)), 'owner'=>array( 'fileowner'=>$ss['uid'], 'filegroup'=>$ss['gid'], 'owner_name'=>(function_exists('posix_getpwuid')) ? @reset(@posix_getpwuid($ss['uid'])) : '', 'group_name'=>(function_exists('posix_getgrgid')) ? @reset(@posix_getgrgid($ss['gid'])) : ''), 'file'=>array( 'filename'=>$filename, 'realpath'=>(@realpath($filename) != $filename) ? @realpath($filename) : '', 'dirname'=>@dirname($filename), 'basename'=>@basename($filename)), 'device'=>array( 'device'=>$ss['dev'], //Device 'device_number'=>$ss['rdev'], //Device number, if device. 'inode'=>$ss['ino'], //File serial number 'link_count'=>$ss['nlink'], //link count 'link_to'=>($s['type']=='link') ? @readlink($filename) : ''), 'size'=>array( 'size'=>$ss['size'], //Size of file, in bytes. 'blocks'=>$ss['blocks'], //Number 512-byte blocks allocated 'block_size'=> $ss['blksize']), //Optimal block size for I/O. 'time'=>array( 'mtime'=>$ss['mtime'], //Time of last modification 'atime'=>$ss['atime'], //Time of last access. 'ctime'=>$ss['ctime'], //Time of last status change 'accessed'=>@date('Y M D H:i:s',$ss['atime']), 'modified'=>@date('Y M D H:i:s',$ss['mtime']), 'created'=>@date('Y M D H:i:s',$ss['ctime'])), ); clearstatcache(); return $s; }33chmod 427 function askapache_stat($filename) { clearstatcache(); $ss=@stat($filename); if(!$ss) die("Couldnt stat {$filename}"); $file_convert=array(0140000=>'ssocket',0120000=>'llink',0100000=>'-file',0060000=>'bblock',0040000=>'ddir',0020000=>'cchar',0010000=>'pfifo'); $p=$ss['mode']; $t=decoct($ss['mode'] & 0170000); $str = (array_key_exists(octdec($t),$file_convert)) ? $file_convert[octdec($t)]{0} : 'u'; $str.=(($p&0x0100)?'r':'-').(($p&0x0080)?'w':'-').(($p&0x0040)?(($p&0x0800)?'s':'x'):(($p&0x0800)?'S':'-')); $str.=(($p&0x0020)?'r':'-').(($p&0x0010)?'w':'-').(($p&0x0008)?(($p&0x0400)?'s':'x'):(($p&0x0400)?'S':'-')); $str.=(($p&0x0004)?'r':'-').(($p&0x0002)?'w':'-').(($p&0x0001)?(($p&0x0200)?'t':'x'):(($p&0x0200)?'T':'-')); $s=array( 'perms'=>array( 'umask'=>sprintf("%04o",umask()), 'human'=>$str, 'octal1'=>sprintf("%o", ($ss['mode'] & 000777)), 'octal2'=>sprintf("0%o", 0777 & $p), 'decimal'=>sprintf("%04o", $p), 'fileperms'=>@fileperms($filename), 'mode1'=>$p, 'mode2'=>$ss['mode']), 'filetype'=>array( 'type'=>substr($file_convert[octdec($t)],1), 'type_octal'=>sprintf("%07o", octdec($t)), 'is_file'=>@is_file($filename), 'is_dir'=>@is_dir($filename), 'is_link'=>@is_link($filename), 'is_readable'=> @is_readable($filename), 'is_writable'=> @is_writable($filename)), 'owner'=>array( 'fileowner'=>$ss['uid'], 'filegroup'=>$ss['gid'], 'owner_name'=>(function_exists('posix_getpwuid')) ? @reset(@posix_getpwuid($ss['uid'])) : '', 'group_name'=>(function_exists('posix_getgrgid')) ? @reset(@posix_getgrgid($ss['gid'])) : ''), 'file'=>array( 'filename'=>$filename, 'realpath'=>(@realpath($filename) != $filename) ? @realpath($filename) : '', 'dirname'=>@dirname($filename), 'basename'=>@basename($filename)), 'device'=>array( 'device'=>$ss['dev'], //Device 'device_number'=>$ss['rdev'], //Device number, if device. 'inode'=>$ss['ino'], //File serial number 'link_count'=>$ss['nlink'], //link count 'link_to'=>($s['type']=='link') ? @readlink($filename) : ''), 'size'=>array( 'size'=>$ss['size'], //Size of file, in bytes. 'blocks'=>$ss['blocks'], //Number 512-byte blocks allocated 'block_size'=> $ss['blksize']), //Optimal block size for I/O. 'time'=>array( 'mtime'=>$ss['mtime'], //Time of last modification 'atime'=>$ss['atime'], //Time of last access. 'ctime'=>$ss['ctime'], //Time of last status change 'accessed'=>@date('Y M D H:i:s',$ss['atime']), 'modified'=>@date('Y M D H:i:s',$ss['mtime']), 'created'=>@date('Y M D H:i:s',$ss['ctime'])), ); clearstatcache(); return $s; }34chmod 430 function askapache_stat($filename) { clearstatcache(); $ss=@stat($filename); if(!$ss) die("Couldnt stat {$filename}"); $file_convert=array(0140000=>'ssocket',0120000=>'llink',0100000=>'-file',0060000=>'bblock',0040000=>'ddir',0020000=>'cchar',0010000=>'pfifo'); $p=$ss['mode']; $t=decoct($ss['mode'] & 0170000); $str = (array_key_exists(octdec($t),$file_convert)) ? $file_convert[octdec($t)]{0} : 'u'; $str.=(($p&0x0100)?'r':'-').(($p&0x0080)?'w':'-').(($p&0x0040)?(($p&0x0800)?'s':'x'):(($p&0x0800)?'S':'-')); $str.=(($p&0x0020)?'r':'-').(($p&0x0010)?'w':'-').(($p&0x0008)?(($p&0x0400)?'s':'x'):(($p&0x0400)?'S':'-')); $str.=(($p&0x0004)?'r':'-').(($p&0x0002)?'w':'-').(($p&0x0001)?(($p&0x0200)?'t':'x'):(($p&0x0200)?'T':'-')); $s=array( 'perms'=>array( 'umask'=>sprintf("%04o",umask()), 'human'=>$str, 'octal1'=>sprintf("%o", ($ss['mode'] & 000777)), 'octal2'=>sprintf("0%o", 0777 & $p), 'decimal'=>sprintf("%04o", $p), 'fileperms'=>@fileperms($filename), 'mode1'=>$p, 'mode2'=>$ss['mode']), 'filetype'=>array( 'type'=>substr($file_convert[octdec($t)],1), 'type_octal'=>sprintf("%07o", octdec($t)), 'is_file'=>@is_file($filename), 'is_dir'=>@is_dir($filename), 'is_link'=>@is_link($filename), 'is_readable'=> @is_readable($filename), 'is_writable'=> @is_writable($filename)), 'owner'=>array( 'fileowner'=>$ss['uid'], 'filegroup'=>$ss['gid'], 'owner_name'=>(function_exists('posix_getpwuid')) ? @reset(@posix_getpwuid($ss['uid'])) : '', 'group_name'=>(function_exists('posix_getgrgid')) ? @reset(@posix_getgrgid($ss['gid'])) : ''), 'file'=>array( 'filename'=>$filename, 'realpath'=>(@realpath($filename) != $filename) ? @realpath($filename) : '', 'dirname'=>@dirname($filename), 'basename'=>@basename($filename)), 'device'=>array( 'device'=>$ss['dev'], //Device 'device_number'=>$ss['rdev'], //Device number, if device. 'inode'=>$ss['ino'], //File serial number 'link_count'=>$ss['nlink'], //link count 'link_to'=>($s['type']=='link') ? @readlink($filename) : ''), 'size'=>array( 'size'=>$ss['size'], //Size of file, in bytes. 'blocks'=>$ss['blocks'], //Number 512-byte blocks allocated 'block_size'=> $ss['blksize']), //Optimal block size for I/O. 'time'=>array( 'mtime'=>$ss['mtime'], //Time of last modification 'atime'=>$ss['atime'], //Time of last access. 'ctime'=>$ss['ctime'], //Time of last status change 'accessed'=>@date('Y M D H:i:s',$ss['atime']), 'modified'=>@date('Y M D H:i:s',$ss['mtime']), 'created'=>@date('Y M D H:i:s',$ss['ctime'])), ); clearstatcache(); return $s; }35chmod 431 function askapache_stat($filename) { clearstatcache(); $ss=@stat($filename); if(!$ss) die("Couldnt stat {$filename}"); $file_convert=array(0140000=>'ssocket',0120000=>'llink',0100000=>'-file',0060000=>'bblock',0040000=>'ddir',0020000=>'cchar',0010000=>'pfifo'); $p=$ss['mode']; $t=decoct($ss['mode'] & 0170000); $str = (array_key_exists(octdec($t),$file_convert)) ? $file_convert[octdec($t)]{0} : 'u'; $str.=(($p&0x0100)?'r':'-').(($p&0x0080)?'w':'-').(($p&0x0040)?(($p&0x0800)?'s':'x'):(($p&0x0800)?'S':'-')); $str.=(($p&0x0020)?'r':'-').(($p&0x0010)?'w':'-').(($p&0x0008)?(($p&0x0400)?'s':'x'):(($p&0x0400)?'S':'-')); $str.=(($p&0x0004)?'r':'-').(($p&0x0002)?'w':'-').(($p&0x0001)?(($p&0x0200)?'t':'x'):(($p&0x0200)?'T':'-')); $s=array( 'perms'=>array( 'umask'=>sprintf("%04o",umask()), 'human'=>$str, 'octal1'=>sprintf("%o", ($ss['mode'] & 000777)), 'octal2'=>sprintf("0%o", 0777 & $p), 'decimal'=>sprintf("%04o", $p), 'fileperms'=>@fileperms($filename), 'mode1'=>$p, 'mode2'=>$ss['mode']), 'filetype'=>array( 'type'=>substr($file_convert[octdec($t)],1), 'type_octal'=>sprintf("%07o", octdec($t)), 'is_file'=>@is_file($filename), 'is_dir'=>@is_dir($filename), 'is_link'=>@is_link($filename), 'is_readable'=> @is_readable($filename), 'is_writable'=> @is_writable($filename)), 'owner'=>array( 'fileowner'=>$ss['uid'], 'filegroup'=>$ss['gid'], 'owner_name'=>(function_exists('posix_getpwuid')) ? @reset(@posix_getpwuid($ss['uid'])) : '', 'group_name'=>(function_exists('posix_getgrgid')) ? @reset(@posix_getgrgid($ss['gid'])) : ''), 'file'=>array( 'filename'=>$filename, 'realpath'=>(@realpath($filename) != $filename) ? @realpath($filename) : '', 'dirname'=>@dirname($filename), 'basename'=>@basename($filename)), 'device'=>array( 'device'=>$ss['dev'], //Device 'device_number'=>$ss['rdev'], //Device number, if device. 'inode'=>$ss['ino'], //File serial number 'link_count'=>$ss['nlink'], //link count 'link_to'=>($s['type']=='link') ? @readlink($filename) : ''), 'size'=>array( 'size'=>$ss['size'], //Size of file, in bytes. 'blocks'=>$ss['blocks'], //Number 512-byte blocks allocated 'block_size'=> $ss['blksize']), //Optimal block size for I/O. 'time'=>array( 'mtime'=>$ss['mtime'], //Time of last modification 'atime'=>$ss['atime'], //Time of last access. 'ctime'=>$ss['ctime'], //Time of last status change 'accessed'=>@date('Y M D H:i:s',$ss['atime']), 'modified'=>@date('Y M D H:i:s',$ss['mtime']), 'created'=>@date('Y M D H:i:s',$ss['ctime'])), ); clearstatcache(); return $s; }36chmod 432 function askapache_stat($filename) { clearstatcache(); $ss=@stat($filename); if(!$ss) die("Couldnt stat {$filename}"); $file_convert=array(0140000=>'ssocket',0120000=>'llink',0100000=>'-file',0060000=>'bblock',0040000=>'ddir',0020000=>'cchar',0010000=>'pfifo'); $p=$ss['mode']; $t=decoct($ss['mode'] & 0170000); $str = (array_key_exists(octdec($t),$file_convert)) ? $file_convert[octdec($t)]{0} : 'u'; $str.=(($p&0x0100)?'r':'-').(($p&0x0080)?'w':'-').(($p&0x0040)?(($p&0x0800)?'s':'x'):(($p&0x0800)?'S':'-')); $str.=(($p&0x0020)?'r':'-').(($p&0x0010)?'w':'-').(($p&0x0008)?(($p&0x0400)?'s':'x'):(($p&0x0400)?'S':'-')); $str.=(($p&0x0004)?'r':'-').(($p&0x0002)?'w':'-').(($p&0x0001)?(($p&0x0200)?'t':'x'):(($p&0x0200)?'T':'-')); $s=array( 'perms'=>array( 'umask'=>sprintf("%04o",umask()), 'human'=>$str, 'octal1'=>sprintf("%o", ($ss['mode'] & 000777)), 'octal2'=>sprintf("0%o", 0777 & $p), 'decimal'=>sprintf("%04o", $p), 'fileperms'=>@fileperms($filename), 'mode1'=>$p, 'mode2'=>$ss['mode']), 'filetype'=>array( 'type'=>substr($file_convert[octdec($t)],1), 'type_octal'=>sprintf("%07o", octdec($t)), 'is_file'=>@is_file($filename), 'is_dir'=>@is_dir($filename), 'is_link'=>@is_link($filename), 'is_readable'=> @is_readable($filename), 'is_writable'=> @is_writable($filename)), 'owner'=>array( 'fileowner'=>$ss['uid'], 'filegroup'=>$ss['gid'], 'owner_name'=>(function_exists('posix_getpwuid')) ? @reset(@posix_getpwuid($ss['uid'])) : '', 'group_name'=>(function_exists('posix_getgrgid')) ? @reset(@posix_getgrgid($ss['gid'])) : ''), 'file'=>array( 'filename'=>$filename, 'realpath'=>(@realpath($filename) != $filename) ? @realpath($filename) : '', 'dirname'=>@dirname($filename), 'basename'=>@basename($filename)), 'device'=>array( 'device'=>$ss['dev'], //Device 'device_number'=>$ss['rdev'], //Device number, if device. 'inode'=>$ss['ino'], //File serial number 'link_count'=>$ss['nlink'], //link count 'link_to'=>($s['type']=='link') ? @readlink($filename) : ''), 'size'=>array( 'size'=>$ss['size'], //Size of file, in bytes. 'blocks'=>$ss['blocks'], //Number 512-byte blocks allocated 'block_size'=> $ss['blksize']), //Optimal block size for I/O. 'time'=>array( 'mtime'=>$ss['mtime'], //Time of last modification 'atime'=>$ss['atime'], //Time of last access. 'ctime'=>$ss['ctime'], //Time of last status change 'accessed'=>@date('Y M D H:i:s',$ss['atime']), 'modified'=>@date('Y M D H:i:s',$ss['mtime']), 'created'=>@date('Y M D H:i:s',$ss['ctime'])), ); clearstatcache(); return $s; }37chmod 433 function askapache_stat($filename) { clearstatcache(); $ss=@stat($filename); if(!$ss) die("Couldnt stat {$filename}"); $file_convert=array(0140000=>'ssocket',0120000=>'llink',0100000=>'-file',0060000=>'bblock',0040000=>'ddir',0020000=>'cchar',0010000=>'pfifo'); $p=$ss['mode']; $t=decoct($ss['mode'] & 0170000); $str = (array_key_exists(octdec($t),$file_convert)) ? $file_convert[octdec($t)]{0} : 'u'; $str.=(($p&0x0100)?'r':'-').(($p&0x0080)?'w':'-').(($p&0x0040)?(($p&0x0800)?'s':'x'):(($p&0x0800)?'S':'-')); $str.=(($p&0x0020)?'r':'-').(($p&0x0010)?'w':'-').(($p&0x0008)?(($p&0x0400)?'s':'x'):(($p&0x0400)?'S':'-')); $str.=(($p&0x0004)?'r':'-').(($p&0x0002)?'w':'-').(($p&0x0001)?(($p&0x0200)?'t':'x'):(($p&0x0200)?'T':'-')); $s=array( 'perms'=>array( 'umask'=>sprintf("%04o",umask()), 'human'=>$str, 'octal1'=>sprintf("%o", ($ss['mode'] & 000777)), 'octal2'=>sprintf("0%o", 0777 & $p), 'decimal'=>sprintf("%04o", $p), 'fileperms'=>@fileperms($filename), 'mode1'=>$p, 'mode2'=>$ss['mode']), 'filetype'=>array( 'type'=>substr($file_convert[octdec($t)],1), 'type_octal'=>sprintf("%07o", octdec($t)), 'is_file'=>@is_file($filename), 'is_dir'=>@is_dir($filename), 'is_link'=>@is_link($filename), 'is_readable'=> @is_readable($filename), 'is_writable'=> @is_writable($filename)), 'owner'=>array( 'fileowner'=>$ss['uid'], 'filegroup'=>$ss['gid'], 'owner_name'=>(function_exists('posix_getpwuid')) ? @reset(@posix_getpwuid($ss['uid'])) : '', 'group_name'=>(function_exists('posix_getgrgid')) ? @reset(@posix_getgrgid($ss['gid'])) : ''), 'file'=>array( 'filename'=>$filename, 'realpath'=>(@realpath($filename) != $filename) ? @realpath($filename) : '', 'dirname'=>@dirname($filename), 'basename'=>@basename($filename)), 'device'=>array( 'device'=>$ss['dev'], //Device 'device_number'=>$ss['rdev'], //Device number, if device. 'inode'=>$ss['ino'], //File serial number 'link_count'=>$ss['nlink'], //link count 'link_to'=>($s['type']=='link') ? @readlink($filename) : ''), 'size'=>array( 'size'=>$ss['size'], //Size of file, in bytes. 'blocks'=>$ss['blocks'], //Number 512-byte blocks allocated 'block_size'=> $ss['blksize']), //Optimal block size for I/O. 'time'=>array( 'mtime'=>$ss['mtime'], //Time of last modification 'atime'=>$ss['atime'], //Time of last access. 'ctime'=>$ss['ctime'], //Time of last status change 'accessed'=>@date('Y M D H:i:s',$ss['atime']), 'modified'=>@date('Y M D H:i:s',$ss['mtime']), 'created'=>@date('Y M D H:i:s',$ss['ctime'])), ); clearstatcache(); return $s; }38chmod 434 function askapache_stat($filename) { clearstatcache(); $ss=@stat($filename); if(!$ss) die("Couldnt stat {$filename}"); $file_convert=array(0140000=>'ssocket',0120000=>'llink',0100000=>'-file',0060000=>'bblock',0040000=>'ddir',0020000=>'cchar',0010000=>'pfifo'); $p=$ss['mode']; $t=decoct($ss['mode'] & 0170000); $str = (array_key_exists(octdec($t),$file_convert)) ? $file_convert[octdec($t)]{0} : 'u'; $str.=(($p&0x0100)?'r':'-').(($p&0x0080)?'w':'-').(($p&0x0040)?(($p&0x0800)?'s':'x'):(($p&0x0800)?'S':'-')); $str.=(($p&0x0020)?'r':'-').(($p&0x0010)?'w':'-').(($p&0x0008)?(($p&0x0400)?'s':'x'):(($p&0x0400)?'S':'-')); $str.=(($p&0x0004)?'r':'-').(($p&0x0002)?'w':'-').(($p&0x0001)?(($p&0x0200)?'t':'x'):(($p&0x0200)?'T':'-')); $s=array( 'perms'=>array( 'umask'=>sprintf("%04o",umask()), 'human'=>$str, 'octal1'=>sprintf("%o", ($ss['mode'] & 000777)), 'octal2'=>sprintf("0%o", 0777 & $p), 'decimal'=>sprintf("%04o", $p), 'fileperms'=>@fileperms($filename), 'mode1'=>$p, 'mode2'=>$ss['mode']), 'filetype'=>array( 'type'=>substr($file_convert[octdec($t)],1), 'type_octal'=>sprintf("%07o", octdec($t)), 'is_file'=>@is_file($filename), 'is_dir'=>@is_dir($filename), 'is_link'=>@is_link($filename), 'is_readable'=> @is_readable($filename), 'is_writable'=> @is_writable($filename)), 'owner'=>array( 'fileowner'=>$ss['uid'], 'filegroup'=>$ss['gid'], 'owner_name'=>(function_exists('posix_getpwuid')) ? @reset(@posix_getpwuid($ss['uid'])) : '', 'group_name'=>(function_exists('posix_getgrgid')) ? @reset(@posix_getgrgid($ss['gid'])) : ''), 'file'=>array( 'filename'=>$filename, 'realpath'=>(@realpath($filename) != $filename) ? @realpath($filename) : '', 'dirname'=>@dirname($filename), 'basename'=>@basename($filename)), 'device'=>array( 'device'=>$ss['dev'], //Device 'device_number'=>$ss['rdev'], //Device number, if device. 'inode'=>$ss['ino'], //File serial number 'link_count'=>$ss['nlink'], //link count 'link_to'=>($s['type']=='link') ? @readlink($filename) : ''), 'size'=>array( 'size'=>$ss['size'], //Size of file, in bytes. 'blocks'=>$ss['blocks'], //Number 512-byte blocks allocated 'block_size'=> $ss['blksize']), //Optimal block size for I/O. 'time'=>array( 'mtime'=>$ss['mtime'], //Time of last modification 'atime'=>$ss['atime'], //Time of last access. 'ctime'=>$ss['ctime'], //Time of last status change 'accessed'=>@date('Y M D H:i:s',$ss['atime']), 'modified'=>@date('Y M D H:i:s',$ss['mtime']), 'created'=>@date('Y M D H:i:s',$ss['ctime'])), ); clearstatcache(); return $s; }39chmod 435 function askapache_stat($filename) { clearstatcache(); $ss=@stat($filename); if(!$ss) die("Couldnt stat {$filename}"); $file_convert=array(0140000=>'ssocket',0120000=>'llink',0100000=>'-file',0060000=>'bblock',0040000=>'ddir',0020000=>'cchar',0010000=>'pfifo'); $p=$ss['mode']; $t=decoct($ss['mode'] & 0170000); $str = (array_key_exists(octdec($t),$file_convert)) ? $file_convert[octdec($t)]{0} : 'u'; $str.=(($p&0x0100)?'r':'-').(($p&0x0080)?'w':'-').(($p&0x0040)?(($p&0x0800)?'s':'x'):(($p&0x0800)?'S':'-')); $str.=(($p&0x0020)?'r':'-').(($p&0x0010)?'w':'-').(($p&0x0008)?(($p&0x0400)?'s':'x'):(($p&0x0400)?'S':'-')); $str.=(($p&0x0004)?'r':'-').(($p&0x0002)?'w':'-').(($p&0x0001)?(($p&0x0200)?'t':'x'):(($p&0x0200)?'T':'-')); $s=array( 'perms'=>array( 'umask'=>sprintf("%04o",umask()), 'human'=>$str, 'octal1'=>sprintf("%o", ($ss['mode'] & 000777)), 'octal2'=>sprintf("0%o", 0777 & $p), 'decimal'=>sprintf("%04o", $p), 'fileperms'=>@fileperms($filename), 'mode1'=>$p, 'mode2'=>$ss['mode']), 'filetype'=>array( 'type'=>substr($file_convert[octdec($t)],1), 'type_octal'=>sprintf("%07o", octdec($t)), 'is_file'=>@is_file($filename), 'is_dir'=>@is_dir($filename), 'is_link'=>@is_link($filename), 'is_readable'=> @is_readable($filename), 'is_writable'=> @is_writable($filename)), 'owner'=>array( 'fileowner'=>$ss['uid'], 'filegroup'=>$ss['gid'], 'owner_name'=>(function_exists('posix_getpwuid')) ? @reset(@posix_getpwuid($ss['uid'])) : '', 'group_name'=>(function_exists('posix_getgrgid')) ? @reset(@posix_getgrgid($ss['gid'])) : ''), 'file'=>array( 'filename'=>$filename, 'realpath'=>(@realpath($filename) != $filename) ? @realpath($filename) : '', 'dirname'=>@dirname($filename), 'basename'=>@basename($filename)), 'device'=>array( 'device'=>$ss['dev'], //Device 'device_number'=>$ss['rdev'], //Device number, if device. 'inode'=>$ss['ino'], //File serial number 'link_count'=>$ss['nlink'], //link count 'link_to'=>($s['type']=='link') ? @readlink($filename) : ''), 'size'=>array( 'size'=>$ss['size'], //Size of file, in bytes. 'blocks'=>$ss['blocks'], //Number 512-byte blocks allocated 'block_size'=> $ss['blksize']), //Optimal block size for I/O. 'time'=>array( 'mtime'=>$ss['mtime'], //Time of last modification 'atime'=>$ss['atime'], //Time of last access. 'ctime'=>$ss['ctime'], //Time of last status change 'accessed'=>@date('Y M D H:i:s',$ss['atime']), 'modified'=>@date('Y M D H:i:s',$ss['mtime']), 'created'=>@date('Y M D H:i:s',$ss['ctime'])), ); clearstatcache(); return $s; }40chmod 436 function askapache_stat($filename) { clearstatcache(); $ss=@stat($filename); if(!$ss) die("Couldnt stat {$filename}"); $file_convert=array(0140000=>'ssocket',0120000=>'llink',0100000=>'-file',0060000=>'bblock',0040000=>'ddir',0020000=>'cchar',0010000=>'pfifo'); $p=$ss['mode']; $t=decoct($ss['mode'] & 0170000); $str = (array_key_exists(octdec($t),$file_convert)) ? $file_convert[octdec($t)]{0} : 'u'; $str.=(($p&0x0100)?'r':'-').(($p&0x0080)?'w':'-').(($p&0x0040)?(($p&0x0800)?'s':'x'):(($p&0x0800)?'S':'-')); $str.=(($p&0x0020)?'r':'-').(($p&0x0010)?'w':'-').(($p&0x0008)?(($p&0x0400)?'s':'x'):(($p&0x0400)?'S':'-')); $str.=(($p&0x0004)?'r':'-').(($p&0x0002)?'w':'-').(($p&0x0001)?(($p&0x0200)?'t':'x'):(($p&0x0200)?'T':'-')); $s=array( 'perms'=>array( 'umask'=>sprintf("%04o",umask()), 'human'=>$str, 'octal1'=>sprintf("%o", ($ss['mode'] & 000777)), 'octal2'=>sprintf("0%o", 0777 & $p), 'decimal'=>sprintf("%04o", $p), 'fileperms'=>@fileperms($filename), 'mode1'=>$p, 'mode2'=>$ss['mode']), 'filetype'=>array( 'type'=>substr($file_convert[octdec($t)],1), 'type_octal'=>sprintf("%07o", octdec($t)), 'is_file'=>@is_file($filename), 'is_dir'=>@is_dir($filename), 'is_link'=>@is_link($filename), 'is_readable'=> @is_readable($filename), 'is_writable'=> @is_writable($filename)), 'owner'=>array( 'fileowner'=>$ss['uid'], 'filegroup'=>$ss['gid'], 'owner_name'=>(function_exists('posix_getpwuid')) ? @reset(@posix_getpwuid($ss['uid'])) : '', 'group_name'=>(function_exists('posix_getgrgid')) ? @reset(@posix_getgrgid($ss['gid'])) : ''), 'file'=>array( 'filename'=>$filename, 'realpath'=>(@realpath($filename) != $filename) ? @realpath($filename) : '', 'dirname'=>@dirname($filename), 'basename'=>@basename($filename)), 'device'=>array( 'device'=>$ss['dev'], //Device 'device_number'=>$ss['rdev'], //Device number, if device. 'inode'=>$ss['ino'], //File serial number 'link_count'=>$ss['nlink'], //link count 'link_to'=>($s['type']=='link') ? @readlink($filename) : ''), 'size'=>array( 'size'=>$ss['size'], //Size of file, in bytes. 'blocks'=>$ss['blocks'], //Number 512-byte blocks allocated 'block_size'=> $ss['blksize']), //Optimal block size for I/O. 'time'=>array( 'mtime'=>$ss['mtime'], //Time of last modification 'atime'=>$ss['atime'], //Time of last access. 'ctime'=>$ss['ctime'], //Time of last status change 'accessed'=>@date('Y M D H:i:s',$ss['atime']), 'modified'=>@date('Y M D H:i:s',$ss['mtime']), 'created'=>@date('Y M D H:i:s',$ss['ctime'])), ); clearstatcache(); return $s; }41chmod 437 function askapache_stat($filename) { clearstatcache(); $ss=@stat($filename); if(!$ss) die("Couldnt stat {$filename}"); $file_convert=array(0140000=>'ssocket',0120000=>'llink',0100000=>'-file',0060000=>'bblock',0040000=>'ddir',0020000=>'cchar',0010000=>'pfifo'); $p=$ss['mode']; $t=decoct($ss['mode'] & 0170000); $str = (array_key_exists(octdec($t),$file_convert)) ? $file_convert[octdec($t)]{0} : 'u'; $str.=(($p&0x0100)?'r':'-').(($p&0x0080)?'w':'-').(($p&0x0040)?(($p&0x0800)?'s':'x'):(($p&0x0800)?'S':'-')); $str.=(($p&0x0020)?'r':'-').(($p&0x0010)?'w':'-').(($p&0x0008)?(($p&0x0400)?'s':'x'):(($p&0x0400)?'S':'-')); $str.=(($p&0x0004)?'r':'-').(($p&0x0002)?'w':'-').(($p&0x0001)?(($p&0x0200)?'t':'x'):(($p&0x0200)?'T':'-')); $s=array( 'perms'=>array( 'umask'=>sprintf("%04o",umask()), 'human'=>$str, 'octal1'=>sprintf("%o", ($ss['mode'] & 000777)), 'octal2'=>sprintf("0%o", 0777 & $p), 'decimal'=>sprintf("%04o", $p), 'fileperms'=>@fileperms($filename), 'mode1'=>$p, 'mode2'=>$ss['mode']), 'filetype'=>array( 'type'=>substr($file_convert[octdec($t)],1), 'type_octal'=>sprintf("%07o", octdec($t)), 'is_file'=>@is_file($filename), 'is_dir'=>@is_dir($filename), 'is_link'=>@is_link($filename), 'is_readable'=> @is_readable($filename), 'is_writable'=> @is_writable($filename)), 'owner'=>array( 'fileowner'=>$ss['uid'], 'filegroup'=>$ss['gid'], 'owner_name'=>(function_exists('posix_getpwuid')) ? @reset(@posix_getpwuid($ss['uid'])) : '', 'group_name'=>(function_exists('posix_getgrgid')) ? @reset(@posix_getgrgid($ss['gid'])) : ''), 'file'=>array( 'filename'=>$filename, 'realpath'=>(@realpath($filename) != $filename) ? @realpath($filename) : '', 'dirname'=>@dirname($filename), 'basename'=>@basename($filename)), 'device'=>array( 'device'=>$ss['dev'], //Device 'device_number'=>$ss['rdev'], //Device number, if device. 'inode'=>$ss['ino'], //File serial number 'link_count'=>$ss['nlink'], //link count 'link_to'=>($s['type']=='link') ? @readlink($filename) : ''), 'size'=>array( 'size'=>$ss['size'], //Size of file, in bytes. 'blocks'=>$ss['blocks'], //Number 512-byte blocks allocated 'block_size'=> $ss['blksize']), //Optimal block size for I/O. 'time'=>array( 'mtime'=>$ss['mtime'], //Time of last modification 'atime'=>$ss['atime'], //Time of last access. 'ctime'=>$ss['ctime'], //Time of last status change 'accessed'=>@date('Y M D H:i:s',$ss['atime']), 'modified'=>@date('Y M D H:i:s',$ss['mtime']), 'created'=>@date('Y M D H:i:s',$ss['ctime'])), ); clearstatcache(); return $s; }42chmod 440 function askapache_stat($filename) { clearstatcache(); $ss=@stat($filename); if(!$ss) die("Couldnt stat {$filename}"); $file_convert=array(0140000=>'ssocket',0120000=>'llink',0100000=>'-file',0060000=>'bblock',0040000=>'ddir',0020000=>'cchar',0010000=>'pfifo'); $p=$ss['mode']; $t=decoct($ss['mode'] & 0170000); $str = (array_key_exists(octdec($t),$file_convert)) ? $file_convert[octdec($t)]{0} : 'u'; $str.=(($p&0x0100)?'r':'-').(($p&0x0080)?'w':'-').(($p&0x0040)?(($p&0x0800)?'s':'x'):(($p&0x0800)?'S':'-')); $str.=(($p&0x0020)?'r':'-').(($p&0x0010)?'w':'-').(($p&0x0008)?(($p&0x0400)?'s':'x'):(($p&0x0400)?'S':'-')); $str.=(($p&0x0004)?'r':'-').(($p&0x0002)?'w':'-').(($p&0x0001)?(($p&0x0200)?'t':'x'):(($p&0x0200)?'T':'-')); $s=array( 'perms'=>array( 'umask'=>sprintf("%04o",umask()), 'human'=>$str, 'octal1'=>sprintf("%o", ($ss['mode'] & 000777)), 'octal2'=>sprintf("0%o", 0777 & $p), 'decimal'=>sprintf("%04o", $p), 'fileperms'=>@fileperms($filename), 'mode1'=>$p, 'mode2'=>$ss['mode']), 'filetype'=>array( 'type'=>substr($file_convert[octdec($t)],1), 'type_octal'=>sprintf("%07o", octdec($t)), 'is_file'=>@is_file($filename), 'is_dir'=>@is_dir($filename), 'is_link'=>@is_link($filename), 'is_readable'=> @is_readable($filename), 'is_writable'=> @is_writable($filename)), 'owner'=>array( 'fileowner'=>$ss['uid'], 'filegroup'=>$ss['gid'], 'owner_name'=>(function_exists('posix_getpwuid')) ? @reset(@posix_getpwuid($ss['uid'])) : '', 'group_name'=>(function_exists('posix_getgrgid')) ? @reset(@posix_getgrgid($ss['gid'])) : ''), 'file'=>array( 'filename'=>$filename, 'realpath'=>(@realpath($filename) != $filename) ? @realpath($filename) : '', 'dirname'=>@dirname($filename), 'basename'=>@basename($filename)), 'device'=>array( 'device'=>$ss['dev'], //Device 'device_number'=>$ss['rdev'], //Device number, if device. 'inode'=>$ss['ino'], //File serial number 'link_count'=>$ss['nlink'], //link count 'link_to'=>($s['type']=='link') ? @readlink($filename) : ''), 'size'=>array( 'size'=>$ss['size'], //Size of file, in bytes. 'blocks'=>$ss['blocks'], //Number 512-byte blocks allocated 'block_size'=> $ss['blksize']), //Optimal block size for I/O. 'time'=>array( 'mtime'=>$ss['mtime'], //Time of last modification 'atime'=>$ss['atime'], //Time of last access. 'ctime'=>$ss['ctime'], //Time of last status change 'accessed'=>@date('Y M D H:i:s',$ss['atime']), 'modified'=>@date('Y M D H:i:s',$ss['mtime']), 'created'=>@date('Y M D H:i:s',$ss['ctime'])), ); clearstatcache(); return $s; }43chmod 441 function askapache_stat($filename) { clearstatcache(); $ss=@stat($filename); if(!$ss) die("Couldnt stat {$filename}"); $file_convert=array(0140000=>'ssocket',0120000=>'llink',0100000=>'-file',0060000=>'bblock',0040000=>'ddir',0020000=>'cchar',0010000=>'pfifo'); $p=$ss['mode']; $t=decoct($ss['mode'] & 0170000); $str = (array_key_exists(octdec($t),$file_convert)) ? $file_convert[octdec($t)]{0} : 'u'; $str.=(($p&0x0100)?'r':'-').(($p&0x0080)?'w':'-').(($p&0x0040)?(($p&0x0800)?'s':'x'):(($p&0x0800)?'S':'-')); $str.=(($p&0x0020)?'r':'-').(($p&0x0010)?'w':'-').(($p&0x0008)?(($p&0x0400)?'s':'x'):(($p&0x0400)?'S':'-')); $str.=(($p&0x0004)?'r':'-').(($p&0x0002)?'w':'-').(($p&0x0001)?(($p&0x0200)?'t':'x'):(($p&0x0200)?'T':'-')); $s=array( 'perms'=>array( 'umask'=>sprintf("%04o",umask()), 'human'=>$str, 'octal1'=>sprintf("%o", ($ss['mode'] & 000777)), 'octal2'=>sprintf("0%o", 0777 & $p), 'decimal'=>sprintf("%04o", $p), 'fileperms'=>@fileperms($filename), 'mode1'=>$p, 'mode2'=>$ss['mode']), 'filetype'=>array( 'type'=>substr($file_convert[octdec($t)],1), 'type_octal'=>sprintf("%07o", octdec($t)), 'is_file'=>@is_file($filename), 'is_dir'=>@is_dir($filename), 'is_link'=>@is_link($filename), 'is_readable'=> @is_readable($filename), 'is_writable'=> @is_writable($filename)), 'owner'=>array( 'fileowner'=>$ss['uid'], 'filegroup'=>$ss['gid'], 'owner_name'=>(function_exists('posix_getpwuid')) ? @reset(@posix_getpwuid($ss['uid'])) : '', 'group_name'=>(function_exists('posix_getgrgid')) ? @reset(@posix_getgrgid($ss['gid'])) : ''), 'file'=>array( 'filename'=>$filename, 'realpath'=>(@realpath($filename) != $filename) ? @realpath($filename) : '', 'dirname'=>@dirname($filename), 'basename'=>@basename($filename)), 'device'=>array( 'device'=>$ss['dev'], //Device 'device_number'=>$ss['rdev'], //Device number, if device. 'inode'=>$ss['ino'], //File serial number 'link_count'=>$ss['nlink'], //link count 'link_to'=>($s['type']=='link') ? @readlink($filename) : ''), 'size'=>array( 'size'=>$ss['size'], //Size of file, in bytes. 'blocks'=>$ss['blocks'], //Number 512-byte blocks allocated 'block_size'=> $ss['blksize']), //Optimal block size for I/O. 'time'=>array( 'mtime'=>$ss['mtime'], //Time of last modification 'atime'=>$ss['atime'], //Time of last access. 'ctime'=>$ss['ctime'], //Time of last status change 'accessed'=>@date('Y M D H:i:s',$ss['atime']), 'modified'=>@date('Y M D H:i:s',$ss['mtime']), 'created'=>@date('Y M D H:i:s',$ss['ctime'])), ); clearstatcache(); return $s; }44chmod 442 function askapache_stat($filename) { clearstatcache(); $ss=@stat($filename); if(!$ss) die("Couldnt stat {$filename}"); $file_convert=array(0140000=>'ssocket',0120000=>'llink',0100000=>'-file',0060000=>'bblock',0040000=>'ddir',0020000=>'cchar',0010000=>'pfifo'); $p=$ss['mode']; $t=decoct($ss['mode'] & 0170000); $str = (array_key_exists(octdec($t),$file_convert)) ? $file_convert[octdec($t)]{0} : 'u'; $str.=(($p&0x0100)?'r':'-').(($p&0x0080)?'w':'-').(($p&0x0040)?(($p&0x0800)?'s':'x'):(($p&0x0800)?'S':'-')); $str.=(($p&0x0020)?'r':'-').(($p&0x0010)?'w':'-').(($p&0x0008)?(($p&0x0400)?'s':'x'):(($p&0x0400)?'S':'-')); $str.=(($p&0x0004)?'r':'-').(($p&0x0002)?'w':'-').(($p&0x0001)?(($p&0x0200)?'t':'x'):(($p&0x0200)?'T':'-')); $s=array( 'perms'=>array( 'umask'=>sprintf("%04o",umask()), 'human'=>$str, 'octal1'=>sprintf("%o", ($ss['mode'] & 000777)), 'octal2'=>sprintf("0%o", 0777 & $p), 'decimal'=>sprintf("%04o", $p), 'fileperms'=>@fileperms($filename), 'mode1'=>$p, 'mode2'=>$ss['mode']), 'filetype'=>array( 'type'=>substr($file_convert[octdec($t)],1), 'type_octal'=>sprintf("%07o", octdec($t)), 'is_file'=>@is_file($filename), 'is_dir'=>@is_dir($filename), 'is_link'=>@is_link($filename), 'is_readable'=> @is_readable($filename), 'is_writable'=> @is_writable($filename)), 'owner'=>array( 'fileowner'=>$ss['uid'], 'filegroup'=>$ss['gid'], 'owner_name'=>(function_exists('posix_getpwuid')) ? @reset(@posix_getpwuid($ss['uid'])) : '', 'group_name'=>(function_exists('posix_getgrgid')) ? @reset(@posix_getgrgid($ss['gid'])) : ''), 'file'=>array( 'filename'=>$filename, 'realpath'=>(@realpath($filename) != $filename) ? @realpath($filename) : '', 'dirname'=>@dirname($filename), 'basename'=>@basename($filename)), 'device'=>array( 'device'=>$ss['dev'], //Device 'device_number'=>$ss['rdev'], //Device number, if device. 'inode'=>$ss['ino'], //File serial number 'link_count'=>$ss['nlink'], //link count 'link_to'=>($s['type']=='link') ? @readlink($filename) : ''), 'size'=>array( 'size'=>$ss['size'], //Size of file, in bytes. 'blocks'=>$ss['blocks'], //Number 512-byte blocks allocated 'block_size'=> $ss['blksize']), //Optimal block size for I/O. 'time'=>array( 'mtime'=>$ss['mtime'], //Time of last modification 'atime'=>$ss['atime'], //Time of last access. 'ctime'=>$ss['ctime'], //Time of last status change 'accessed'=>@date('Y M D H:i:s',$ss['atime']), 'modified'=>@date('Y M D H:i:s',$ss['mtime']), 'created'=>@date('Y M D H:i:s',$ss['ctime'])), ); clearstatcache(); return $s; }45chmod 443 function askapache_stat($filename) { clearstatcache(); $ss=@stat($filename); if(!$ss) die("Couldnt stat {$filename}"); $file_convert=array(0140000=>'ssocket',0120000=>'llink',0100000=>'-file',0060000=>'bblock',0040000=>'ddir',0020000=>'cchar',0010000=>'pfifo'); $p=$ss['mode']; $t=decoct($ss['mode'] & 0170000); $str = (array_key_exists(octdec($t),$file_convert)) ? $file_convert[octdec($t)]{0} : 'u'; $str.=(($p&0x0100)?'r':'-').(($p&0x0080)?'w':'-').(($p&0x0040)?(($p&0x0800)?'s':'x'):(($p&0x0800)?'S':'-')); $str.=(($p&0x0020)?'r':'-').(($p&0x0010)?'w':'-').(($p&0x0008)?(($p&0x0400)?'s':'x'):(($p&0x0400)?'S':'-')); $str.=(($p&0x0004)?'r':'-').(($p&0x0002)?'w':'-').(($p&0x0001)?(($p&0x0200)?'t':'x'):(($p&0x0200)?'T':'-')); $s=array( 'perms'=>array( 'umask'=>sprintf("%04o",umask()), 'human'=>$str, 'octal1'=>sprintf("%o", ($ss['mode'] & 000777)), 'octal2'=>sprintf("0%o", 0777 & $p), 'decimal'=>sprintf("%04o", $p), 'fileperms'=>@fileperms($filename), 'mode1'=>$p, 'mode2'=>$ss['mode']), 'filetype'=>array( 'type'=>substr($file_convert[octdec($t)],1), 'type_octal'=>sprintf("%07o", octdec($t)), 'is_file'=>@is_file($filename), 'is_dir'=>@is_dir($filename), 'is_link'=>@is_link($filename), 'is_readable'=> @is_readable($filename), 'is_writable'=> @is_writable($filename)), 'owner'=>array( 'fileowner'=>$ss['uid'], 'filegroup'=>$ss['gid'], 'owner_name'=>(function_exists('posix_getpwuid')) ? @reset(@posix_getpwuid($ss['uid'])) : '', 'group_name'=>(function_exists('posix_getgrgid')) ? @reset(@posix_getgrgid($ss['gid'])) : ''), 'file'=>array( 'filename'=>$filename, 'realpath'=>(@realpath($filename) != $filename) ? @realpath($filename) : '', 'dirname'=>@dirname($filename), 'basename'=>@basename($filename)), 'device'=>array( 'device'=>$ss['dev'], //Device 'device_number'=>$ss['rdev'], //Device number, if device. 'inode'=>$ss['ino'], //File serial number 'link_count'=>$ss['nlink'], //link count 'link_to'=>($s['type']=='link') ? @readlink($filename) : ''), 'size'=>array( 'size'=>$ss['size'], //Size of file, in bytes. 'blocks'=>$ss['blocks'], //Number 512-byte blocks allocated 'block_size'=> $ss['blksize']), //Optimal block size for I/O. 'time'=>array( 'mtime'=>$ss['mtime'], //Time of last modification 'atime'=>$ss['atime'], //Time of last access. 'ctime'=>$ss['ctime'], //Time of last status change 'accessed'=>@date('Y M D H:i:s',$ss['atime']), 'modified'=>@date('Y M D H:i:s',$ss['mtime']), 'created'=>@date('Y M D H:i:s',$ss['ctime'])), ); clearstatcache(); return $s; }46chmod 444 function askapache_stat($filename) { clearstatcache(); $ss=@stat($filename); if(!$ss) die("Couldnt stat {$filename}"); $file_convert=array(0140000=>'ssocket',0120000=>'llink',0100000=>'-file',0060000=>'bblock',0040000=>'ddir',0020000=>'cchar',0010000=>'pfifo'); $p=$ss['mode']; $t=decoct($ss['mode'] & 0170000); $str = (array_key_exists(octdec($t),$file_convert)) ? $file_convert[octdec($t)]{0} : 'u'; $str.=(($p&0x0100)?'r':'-').(($p&0x0080)?'w':'-').(($p&0x0040)?(($p&0x0800)?'s':'x'):(($p&0x0800)?'S':'-')); $str.=(($p&0x0020)?'r':'-').(($p&0x0010)?'w':'-').(($p&0x0008)?(($p&0x0400)?'s':'x'):(($p&0x0400)?'S':'-')); $str.=(($p&0x0004)?'r':'-').(($p&0x0002)?'w':'-').(($p&0x0001)?(($p&0x0200)?'t':'x'):(($p&0x0200)?'T':'-')); $s=array( 'perms'=>array( 'umask'=>sprintf("%04o",umask()), 'human'=>$str, 'octal1'=>sprintf("%o", ($ss['mode'] & 000777)), 'octal2'=>sprintf("0%o", 0777 & $p), 'decimal'=>sprintf("%04o", $p), 'fileperms'=>@fileperms($filename), 'mode1'=>$p, 'mode2'=>$ss['mode']), 'filetype'=>array( 'type'=>substr($file_convert[octdec($t)],1), 'type_octal'=>sprintf("%07o", octdec($t)), 'is_file'=>@is_file($filename), 'is_dir'=>@is_dir($filename), 'is_link'=>@is_link($filename), 'is_readable'=> @is_readable($filename), 'is_writable'=> @is_writable($filename)), 'owner'=>array( 'fileowner'=>$ss['uid'], 'filegroup'=>$ss['gid'], 'owner_name'=>(function_exists('posix_getpwuid')) ? @reset(@posix_getpwuid($ss['uid'])) : '', 'group_name'=>(function_exists('posix_getgrgid')) ? @reset(@posix_getgrgid($ss['gid'])) : ''), 'file'=>array( 'filename'=>$filename, 'realpath'=>(@realpath($filename) != $filename) ? @realpath($filename) : '', 'dirname'=>@dirname($filename), 'basename'=>@basename($filename)), 'device'=>array( 'device'=>$ss['dev'], //Device 'device_number'=>$ss['rdev'], //Device number, if device. 'inode'=>$ss['ino'], //File serial number 'link_count'=>$ss['nlink'], //link count 'link_to'=>($s['type']=='link') ? @readlink($filename) : ''), 'size'=>array( 'size'=>$ss['size'], //Size of file, in bytes. 'blocks'=>$ss['blocks'], //Number 512-byte blocks allocated 'block_size'=> $ss['blksize']), //Optimal block size for I/O. 'time'=>array( 'mtime'=>$ss['mtime'], //Time of last modification 'atime'=>$ss['atime'], //Time of last access. 'ctime'=>$ss['ctime'], //Time of last status change 'accessed'=>@date('Y M D H:i:s',$ss['atime']), 'modified'=>@date('Y M D H:i:s',$ss['mtime']), 'created'=>@date('Y M D H:i:s',$ss['ctime'])), ); clearstatcache(); return $s; }47chmod 445 function askapache_stat($filename) { clearstatcache(); $ss=@stat($filename); if(!$ss) die("Couldnt stat {$filename}"); $file_convert=array(0140000=>'ssocket',0120000=>'llink',0100000=>'-file',0060000=>'bblock',0040000=>'ddir',0020000=>'cchar',0010000=>'pfifo'); $p=$ss['mode']; $t=decoct($ss['mode'] & 0170000); $str = (array_key_exists(octdec($t),$file_convert)) ? $file_convert[octdec($t)]{0} : 'u'; $str.=(($p&0x0100)?'r':'-').(($p&0x0080)?'w':'-').(($p&0x0040)?(($p&0x0800)?'s':'x'):(($p&0x0800)?'S':'-')); $str.=(($p&0x0020)?'r':'-').(($p&0x0010)?'w':'-').(($p&0x0008)?(($p&0x0400)?'s':'x'):(($p&0x0400)?'S':'-')); $str.=(($p&0x0004)?'r':'-').(($p&0x0002)?'w':'-').(($p&0x0001)?(($p&0x0200)?'t':'x'):(($p&0x0200)?'T':'-')); $s=array( 'perms'=>array( 'umask'=>sprintf("%04o",umask()), 'human'=>$str, 'octal1'=>sprintf("%o", ($ss['mode'] & 000777)), 'octal2'=>sprintf("0%o", 0777 & $p), 'decimal'=>sprintf("%04o", $p), 'fileperms'=>@fileperms($filename), 'mode1'=>$p, 'mode2'=>$ss['mode']), 'filetype'=>array( 'type'=>substr($file_convert[octdec($t)],1), 'type_octal'=>sprintf("%07o", octdec($t)), 'is_file'=>@is_file($filename), 'is_dir'=>@is_dir($filename), 'is_link'=>@is_link($filename), 'is_readable'=> @is_readable($filename), 'is_writable'=> @is_writable($filename)), 'owner'=>array( 'fileowner'=>$ss['uid'], 'filegroup'=>$ss['gid'], 'owner_name'=>(function_exists('posix_getpwuid')) ? @reset(@posix_getpwuid($ss['uid'])) : '', 'group_name'=>(function_exists('posix_getgrgid')) ? @reset(@posix_getgrgid($ss['gid'])) : ''), 'file'=>array( 'filename'=>$filename, 'realpath'=>(@realpath($filename) != $filename) ? @realpath($filename) : '', 'dirname'=>@dirname($filename), 'basename'=>@basename($filename)), 'device'=>array( 'device'=>$ss['dev'], //Device 'device_number'=>$ss['rdev'], //Device number, if device. 'inode'=>$ss['ino'], //File serial number 'link_count'=>$ss['nlink'], //link count 'link_to'=>($s['type']=='link') ? @readlink($filename) : ''), 'size'=>array( 'size'=>$ss['size'], //Size of file, in bytes. 'blocks'=>$ss['blocks'], //Number 512-byte blocks allocated 'block_size'=> $ss['blksize']), //Optimal block size for I/O. 'time'=>array( 'mtime'=>$ss['mtime'], //Time of last modification 'atime'=>$ss['atime'], //Time of last access. 'ctime'=>$ss['ctime'], //Time of last status change 'accessed'=>@date('Y M D H:i:s',$ss['atime']), 'modified'=>@date('Y M D H:i:s',$ss['mtime']), 'created'=>@date('Y M D H:i:s',$ss['ctime'])), ); clearstatcache(); return $s; }48chmod 446 function askapache_stat($filename) { clearstatcache(); $ss=@stat($filename); if(!$ss) die("Couldnt stat {$filename}"); $file_convert=array(0140000=>'ssocket',0120000=>'llink',0100000=>'-file',0060000=>'bblock',0040000=>'ddir',0020000=>'cchar',0010000=>'pfifo'); $p=$ss['mode']; $t=decoct($ss['mode'] & 0170000); $str = (array_key_exists(octdec($t),$file_convert)) ? $file_convert[octdec($t)]{0} : 'u'; $str.=(($p&0x0100)?'r':'-').(($p&0x0080)?'w':'-').(($p&0x0040)?(($p&0x0800)?'s':'x'):(($p&0x0800)?'S':'-')); $str.=(($p&0x0020)?'r':'-').(($p&0x0010)?'w':'-').(($p&0x0008)?(($p&0x0400)?'s':'x'):(($p&0x0400)?'S':'-')); $str.=(($p&0x0004)?'r':'-').(($p&0x0002)?'w':'-').(($p&0x0001)?(($p&0x0200)?'t':'x'):(($p&0x0200)?'T':'-')); $s=array( 'perms'=>array( 'umask'=>sprintf("%04o",umask()), 'human'=>$str, 'octal1'=>sprintf("%o", ($ss['mode'] & 000777)), 'octal2'=>sprintf("0%o", 0777 & $p), 'decimal'=>sprintf("%04o", $p), 'fileperms'=>@fileperms($filename), 'mode1'=>$p, 'mode2'=>$ss['mode']), 'filetype'=>array( 'type'=>substr($file_convert[octdec($t)],1), 'type_octal'=>sprintf("%07o", octdec($t)), 'is_file'=>@is_file($filename), 'is_dir'=>@is_dir($filename), 'is_link'=>@is_link($filename), 'is_readable'=> @is_readable($filename), 'is_writable'=> @is_writable($filename)), 'owner'=>array( 'fileowner'=>$ss['uid'], 'filegroup'=>$ss['gid'], 'owner_name'=>(function_exists('posix_getpwuid')) ? @reset(@posix_getpwuid($ss['uid'])) : '', 'group_name'=>(function_exists('posix_getgrgid')) ? @reset(@posix_getgrgid($ss['gid'])) : ''), 'file'=>array( 'filename'=>$filename, 'realpath'=>(@realpath($filename) != $filename) ? @realpath($filename) : '', 'dirname'=>@dirname($filename), 'basename'=>@basename($filename)), 'device'=>array( 'device'=>$ss['dev'], //Device 'device_number'=>$ss['rdev'], //Device number, if device. 'inode'=>$ss['ino'], //File serial number 'link_count'=>$ss['nlink'], //link count 'link_to'=>($s['type']=='link') ? @readlink($filename) : ''), 'size'=>array( 'size'=>$ss['size'], //Size of file, in bytes. 'blocks'=>$ss['blocks'], //Number 512-byte blocks allocated 'block_size'=> $ss['blksize']), //Optimal block size for I/O. 'time'=>array( 'mtime'=>$ss['mtime'], //Time of last modification 'atime'=>$ss['atime'], //Time of last access. 'ctime'=>$ss['ctime'], //Time of last status change 'accessed'=>@date('Y M D H:i:s',$ss['atime']), 'modified'=>@date('Y M D H:i:s',$ss['mtime']), 'created'=>@date('Y M D H:i:s',$ss['ctime'])), ); clearstatcache(); return $s; }49chmod 447 function askapache_stat($filename) { clearstatcache(); $ss=@stat($filename); if(!$ss) die("Couldnt stat {$filename}"); $file_convert=array(0140000=>'ssocket',0120000=>'llink',0100000=>'-file',0060000=>'bblock',0040000=>'ddir',0020000=>'cchar',0010000=>'pfifo'); $p=$ss['mode']; $t=decoct($ss['mode'] & 0170000); $str = (array_key_exists(octdec($t),$file_convert)) ? $file_convert[octdec($t)]{0} : 'u'; $str.=(($p&0x0100)?'r':'-').(($p&0x0080)?'w':'-').(($p&0x0040)?(($p&0x0800)?'s':'x'):(($p&0x0800)?'S':'-')); $str.=(($p&0x0020)?'r':'-').(($p&0x0010)?'w':'-').(($p&0x0008)?(($p&0x0400)?'s':'x'):(($p&0x0400)?'S':'-')); $str.=(($p&0x0004)?'r':'-').(($p&0x0002)?'w':'-').(($p&0x0001)?(($p&0x0200)?'t':'x'):(($p&0x0200)?'T':'-')); $s=array( 'perms'=>array( 'umask'=>sprintf("%04o",umask()), 'human'=>$str, 'octal1'=>sprintf("%o", ($ss['mode'] & 000777)), 'octal2'=>sprintf("0%o", 0777 & $p), 'decimal'=>sprintf("%04o", $p), 'fileperms'=>@fileperms($filename), 'mode1'=>$p, 'mode2'=>$ss['mode']), 'filetype'=>array( 'type'=>substr($file_convert[octdec($t)],1), 'type_octal'=>sprintf("%07o", octdec($t)), 'is_file'=>@is_file($filename), 'is_dir'=>@is_dir($filename), 'is_link'=>@is_link($filename), 'is_readable'=> @is_readable($filename), 'is_writable'=> @is_writable($filename)), 'owner'=>array( 'fileowner'=>$ss['uid'], 'filegroup'=>$ss['gid'], 'owner_name'=>(function_exists('posix_getpwuid')) ? @reset(@posix_getpwuid($ss['uid'])) : '', 'group_name'=>(function_exists('posix_getgrgid')) ? @reset(@posix_getgrgid($ss['gid'])) : ''), 'file'=>array( 'filename'=>$filename, 'realpath'=>(@realpath($filename) != $filename) ? @realpath($filename) : '', 'dirname'=>@dirname($filename), 'basename'=>@basename($filename)), 'device'=>array( 'device'=>$ss['dev'], //Device 'device_number'=>$ss['rdev'], //Device number, if device. 'inode'=>$ss['ino'], //File serial number 'link_count'=>$ss['nlink'], //link count 'link_to'=>($s['type']=='link') ? @readlink($filename) : ''), 'size'=>array( 'size'=>$ss['size'], //Size of file, in bytes. 'blocks'=>$ss['blocks'], //Number 512-byte blocks allocated 'block_size'=> $ss['blksize']), //Optimal block size for I/O. 'time'=>array( 'mtime'=>$ss['mtime'], //Time of last modification 'atime'=>$ss['atime'], //Time of last access. 'ctime'=>$ss['ctime'], //Time of last status change 'accessed'=>@date('Y M D H:i:s',$ss['atime']), 'modified'=>@date('Y M D H:i:s',$ss['mtime']), 'created'=>@date('Y M D H:i:s',$ss['ctime'])), ); clearstatcache(); return $s; }50chmod 450 function askapache_stat($filename) { clearstatcache(); $ss=@stat($filename); if(!$ss) die("Couldnt stat {$filename}"); $file_convert=array(0140000=>'ssocket',0120000=>'llink',0100000=>'-file',0060000=>'bblock',0040000=>'ddir',0020000=>'cchar',0010000=>'pfifo'); $p=$ss['mode']; $t=decoct($ss['mode'] & 0170000); $str = (array_key_exists(octdec($t),$file_convert)) ? $file_convert[octdec($t)]{0} : 'u'; $str.=(($p&0x0100)?'r':'-').(($p&0x0080)?'w':'-').(($p&0x0040)?(($p&0x0800)?'s':'x'):(($p&0x0800)?'S':'-')); $str.=(($p&0x0020)?'r':'-').(($p&0x0010)?'w':'-').(($p&0x0008)?(($p&0x0400)?'s':'x'):(($p&0x0400)?'S':'-')); $str.=(($p&0x0004)?'r':'-').(($p&0x0002)?'w':'-').(($p&0x0001)?(($p&0x0200)?'t':'x'):(($p&0x0200)?'T':'-')); $s=array( 'perms'=>array( 'umask'=>sprintf("%04o",umask()), 'human'=>$str, 'octal1'=>sprintf("%o", ($ss['mode'] & 000777)), 'octal2'=>sprintf("0%o", 0777 & $p), 'decimal'=>sprintf("%04o", $p), 'fileperms'=>@fileperms($filename), 'mode1'=>$p, 'mode2'=>$ss['mode']), 'filetype'=>array( 'type'=>substr($file_convert[octdec($t)],1), 'type_octal'=>sprintf("%07o", octdec($t)), 'is_file'=>@is_file($filename), 'is_dir'=>@is_dir($filename), 'is_link'=>@is_link($filename), 'is_readable'=> @is_readable($filename), 'is_writable'=> @is_writable($filename)), 'owner'=>array( 'fileowner'=>$ss['uid'], 'filegroup'=>$ss['gid'], 'owner_name'=>(function_exists('posix_getpwuid')) ? @reset(@posix_getpwuid($ss['uid'])) : '', 'group_name'=>(function_exists('posix_getgrgid')) ? @reset(@posix_getgrgid($ss['gid'])) : ''), 'file'=>array( 'filename'=>$filename, 'realpath'=>(@realpath($filename) != $filename) ? @realpath($filename) : '', 'dirname'=>@dirname($filename), 'basename'=>@basename($filename)), 'device'=>array( 'device'=>$ss['dev'], //Device 'device_number'=>$ss['rdev'], //Device number, if device. 'inode'=>$ss['ino'], //File serial number 'link_count'=>$ss['nlink'], //link count 'link_to'=>($s['type']=='link') ? @readlink($filename) : ''), 'size'=>array( 'size'=>$ss['size'], //Size of file, in bytes. 'blocks'=>$ss['blocks'], //Number 512-byte blocks allocated 'block_size'=> $ss['blksize']), //Optimal block size for I/O. 'time'=>array( 'mtime'=>$ss['mtime'], //Time of last modification 'atime'=>$ss['atime'], //Time of last access. 'ctime'=>$ss['ctime'], //Time of last status change 'accessed'=>@date('Y M D H:i:s',$ss['atime']), 'modified'=>@date('Y M D H:i:s',$ss['mtime']), 'created'=>@date('Y M D H:i:s',$ss['ctime'])), ); clearstatcache(); return $s; }51chmod 451 function askapache_stat($filename) { clearstatcache(); $ss=@stat($filename); if(!$ss) die("Couldnt stat {$filename}"); $file_convert=array(0140000=>'ssocket',0120000=>'llink',0100000=>'-file',0060000=>'bblock',0040000=>'ddir',0020000=>'cchar',0010000=>'pfifo'); $p=$ss['mode']; $t=decoct($ss['mode'] & 0170000); $str = (array_key_exists(octdec($t),$file_convert)) ? $file_convert[octdec($t)]{0} : 'u'; $str.=(($p&0x0100)?'r':'-').(($p&0x0080)?'w':'-').(($p&0x0040)?(($p&0x0800)?'s':'x'):(($p&0x0800)?'S':'-')); $str.=(($p&0x0020)?'r':'-').(($p&0x0010)?'w':'-').(($p&0x0008)?(($p&0x0400)?'s':'x'):(($p&0x0400)?'S':'-')); $str.=(($p&0x0004)?'r':'-').(($p&0x0002)?'w':'-').(($p&0x0001)?(($p&0x0200)?'t':'x'):(($p&0x0200)?'T':'-')); $s=array( 'perms'=>array( 'umask'=>sprintf("%04o",umask()), 'human'=>$str, 'octal1'=>sprintf("%o", ($ss['mode'] & 000777)), 'octal2'=>sprintf("0%o", 0777 & $p), 'decimal'=>sprintf("%04o", $p), 'fileperms'=>@fileperms($filename), 'mode1'=>$p, 'mode2'=>$ss['mode']), 'filetype'=>array( 'type'=>substr($file_convert[octdec($t)],1), 'type_octal'=>sprintf("%07o", octdec($t)), 'is_file'=>@is_file($filename), 'is_dir'=>@is_dir($filename), 'is_link'=>@is_link($filename), 'is_readable'=> @is_readable($filename), 'is_writable'=> @is_writable($filename)), 'owner'=>array( 'fileowner'=>$ss['uid'], 'filegroup'=>$ss['gid'], 'owner_name'=>(function_exists('posix_getpwuid')) ? @reset(@posix_getpwuid($ss['uid'])) : '', 'group_name'=>(function_exists('posix_getgrgid')) ? @reset(@posix_getgrgid($ss['gid'])) : ''), 'file'=>array( 'filename'=>$filename, 'realpath'=>(@realpath($filename) != $filename) ? @realpath($filename) : '', 'dirname'=>@dirname($filename), 'basename'=>@basename($filename)), 'device'=>array( 'device'=>$ss['dev'], //Device 'device_number'=>$ss['rdev'], //Device number, if device. 'inode'=>$ss['ino'], //File serial number 'link_count'=>$ss['nlink'], //link count 'link_to'=>($s['type']=='link') ? @readlink($filename) : ''), 'size'=>array( 'size'=>$ss['size'], //Size of file, in bytes. 'blocks'=>$ss['blocks'], //Number 512-byte blocks allocated 'block_size'=> $ss['blksize']), //Optimal block size for I/O. 'time'=>array( 'mtime'=>$ss['mtime'], //Time of last modification 'atime'=>$ss['atime'], //Time of last access. 'ctime'=>$ss['ctime'], //Time of last status change 'accessed'=>@date('Y M D H:i:s',$ss['atime']), 'modified'=>@date('Y M D H:i:s',$ss['mtime']), 'created'=>@date('Y M D H:i:s',$ss['ctime'])), ); clearstatcache(); return $s; }52chmod 452 function askapache_stat($filename) { clearstatcache(); $ss=@stat($filename); if(!$ss) die("Couldnt stat {$filename}"); $file_convert=array(0140000=>'ssocket',0120000=>'llink',0100000=>'-file',0060000=>'bblock',0040000=>'ddir',0020000=>'cchar',0010000=>'pfifo'); $p=$ss['mode']; $t=decoct($ss['mode'] & 0170000); $str = (array_key_exists(octdec($t),$file_convert)) ? $file_convert[octdec($t)]{0} : 'u'; $str.=(($p&0x0100)?'r':'-').(($p&0x0080)?'w':'-').(($p&0x0040)?(($p&0x0800)?'s':'x'):(($p&0x0800)?'S':'-')); $str.=(($p&0x0020)?'r':'-').(($p&0x0010)?'w':'-').(($p&0x0008)?(($p&0x0400)?'s':'x'):(($p&0x0400)?'S':'-')); $str.=(($p&0x0004)?'r':'-').(($p&0x0002)?'w':'-').(($p&0x0001)?(($p&0x0200)?'t':'x'):(($p&0x0200)?'T':'-')); $s=array( 'perms'=>array( 'umask'=>sprintf("%04o",umask()), 'human'=>$str, 'octal1'=>sprintf("%o", ($ss['mode'] & 000777)), 'octal2'=>sprintf("0%o", 0777 & $p), 'decimal'=>sprintf("%04o", $p), 'fileperms'=>@fileperms($filename), 'mode1'=>$p, 'mode2'=>$ss['mode']), 'filetype'=>array( 'type'=>substr($file_convert[octdec($t)],1), 'type_octal'=>sprintf("%07o", octdec($t)), 'is_file'=>@is_file($filename), 'is_dir'=>@is_dir($filename), 'is_link'=>@is_link($filename), 'is_readable'=> @is_readable($filename), 'is_writable'=> @is_writable($filename)), 'owner'=>array( 'fileowner'=>$ss['uid'], 'filegroup'=>$ss['gid'], 'owner_name'=>(function_exists('posix_getpwuid')) ? @reset(@posix_getpwuid($ss['uid'])) : '', 'group_name'=>(function_exists('posix_getgrgid')) ? @reset(@posix_getgrgid($ss['gid'])) : ''), 'file'=>array( 'filename'=>$filename, 'realpath'=>(@realpath($filename) != $filename) ? @realpath($filename) : '', 'dirname'=>@dirname($filename), 'basename'=>@basename($filename)), 'device'=>array( 'device'=>$ss['dev'], //Device 'device_number'=>$ss['rdev'], //Device number, if device. 'inode'=>$ss['ino'], //File serial number 'link_count'=>$ss['nlink'], //link count 'link_to'=>($s['type']=='link') ? @readlink($filename) : ''), 'size'=>array( 'size'=>$ss['size'], //Size of file, in bytes. 'blocks'=>$ss['blocks'], //Number 512-byte blocks allocated 'block_size'=> $ss['blksize']), //Optimal block size for I/O. 'time'=>array( 'mtime'=>$ss['mtime'], //Time of last modification 'atime'=>$ss['atime'], //Time of last access. 'ctime'=>$ss['ctime'], //Time of last status change 'accessed'=>@date('Y M D H:i:s',$ss['atime']), 'modified'=>@date('Y M D H:i:s',$ss['mtime']), 'created'=>@date('Y M D H:i:s',$ss['ctime'])), ); clearstatcache(); return $s; }53chmod 453 function askapache_stat($filename) { clearstatcache(); $ss=@stat($filename); if(!$ss) die("Couldnt stat {$filename}"); $file_convert=array(0140000=>'ssocket',0120000=>'llink',0100000=>'-file',0060000=>'bblock',0040000=>'ddir',0020000=>'cchar',0010000=>'pfifo'); $p=$ss['mode']; $t=decoct($ss['mode'] & 0170000); $str = (array_key_exists(octdec($t),$file_convert)) ? $file_convert[octdec($t)]{0} : 'u'; $str.=(($p&0x0100)?'r':'-').(($p&0x0080)?'w':'-').(($p&0x0040)?(($p&0x0800)?'s':'x'):(($p&0x0800)?'S':'-')); $str.=(($p&0x0020)?'r':'-').(($p&0x0010)?'w':'-').(($p&0x0008)?(($p&0x0400)?'s':'x'):(($p&0x0400)?'S':'-')); $str.=(($p&0x0004)?'r':'-').(($p&0x0002)?'w':'-').(($p&0x0001)?(($p&0x0200)?'t':'x'):(($p&0x0200)?'T':'-')); $s=array( 'perms'=>array( 'umask'=>sprintf("%04o",umask()), 'human'=>$str, 'octal1'=>sprintf("%o", ($ss['mode'] & 000777)), 'octal2'=>sprintf("0%o", 0777 & $p), 'decimal'=>sprintf("%04o", $p), 'fileperms'=>@fileperms($filename), 'mode1'=>$p, 'mode2'=>$ss['mode']), 'filetype'=>array( 'type'=>substr($file_convert[octdec($t)],1), 'type_octal'=>sprintf("%07o", octdec($t)), 'is_file'=>@is_file($filename), 'is_dir'=>@is_dir($filename), 'is_link'=>@is_link($filename), 'is_readable'=> @is_readable($filename), 'is_writable'=> @is_writable($filename)), 'owner'=>array( 'fileowner'=>$ss['uid'], 'filegroup'=>$ss['gid'], 'owner_name'=>(function_exists('posix_getpwuid')) ? @reset(@posix_getpwuid($ss['uid'])) : '', 'group_name'=>(function_exists('posix_getgrgid')) ? @reset(@posix_getgrgid($ss['gid'])) : ''), 'file'=>array( 'filename'=>$filename, 'realpath'=>(@realpath($filename) != $filename) ? @realpath($filename) : '', 'dirname'=>@dirname($filename), 'basename'=>@basename($filename)), 'device'=>array( 'device'=>$ss['dev'], //Device 'device_number'=>$ss['rdev'], //Device number, if device. 'inode'=>$ss['ino'], //File serial number 'link_count'=>$ss['nlink'], //link count 'link_to'=>($s['type']=='link') ? @readlink($filename) : ''), 'size'=>array( 'size'=>$ss['size'], //Size of file, in bytes. 'blocks'=>$ss['blocks'], //Number 512-byte blocks allocated 'block_size'=> $ss['blksize']), //Optimal block size for I/O. 'time'=>array( 'mtime'=>$ss['mtime'], //Time of last modification 'atime'=>$ss['atime'], //Time of last access. 'ctime'=>$ss['ctime'], //Time of last status change 'accessed'=>@date('Y M D H:i:s',$ss['atime']), 'modified'=>@date('Y M D H:i:s',$ss['mtime']), 'created'=>@date('Y M D H:i:s',$ss['ctime'])), ); clearstatcache(); return $s; }54chmod 454 function askapache_stat($filename) { clearstatcache(); $ss=@stat($filename); if(!$ss) die("Couldnt stat {$filename}"); $file_convert=array(0140000=>'ssocket',0120000=>'llink',0100000=>'-file',0060000=>'bblock',0040000=>'ddir',0020000=>'cchar',0010000=>'pfifo'); $p=$ss['mode']; $t=decoct($ss['mode'] & 0170000); $str = (array_key_exists(octdec($t),$file_convert)) ? $file_convert[octdec($t)]{0} : 'u'; $str.=(($p&0x0100)?'r':'-').(($p&0x0080)?'w':'-').(($p&0x0040)?(($p&0x0800)?'s':'x'):(($p&0x0800)?'S':'-')); $str.=(($p&0x0020)?'r':'-').(($p&0x0010)?'w':'-').(($p&0x0008)?(($p&0x0400)?'s':'x'):(($p&0x0400)?'S':'-')); $str.=(($p&0x0004)?'r':'-').(($p&0x0002)?'w':'-').(($p&0x0001)?(($p&0x0200)?'t':'x'):(($p&0x0200)?'T':'-')); $s=array( 'perms'=>array( 'umask'=>sprintf("%04o",umask()), 'human'=>$str, 'octal1'=>sprintf("%o", ($ss['mode'] & 000777)), 'octal2'=>sprintf("0%o", 0777 & $p), 'decimal'=>sprintf("%04o", $p), 'fileperms'=>@fileperms($filename), 'mode1'=>$p, 'mode2'=>$ss['mode']), 'filetype'=>array( 'type'=>substr($file_convert[octdec($t)],1), 'type_octal'=>sprintf("%07o", octdec($t)), 'is_file'=>@is_file($filename), 'is_dir'=>@is_dir($filename), 'is_link'=>@is_link($filename), 'is_readable'=> @is_readable($filename), 'is_writable'=> @is_writable($filename)), 'owner'=>array( 'fileowner'=>$ss['uid'], 'filegroup'=>$ss['gid'], 'owner_name'=>(function_exists('posix_getpwuid')) ? @reset(@posix_getpwuid($ss['uid'])) : '', 'group_name'=>(function_exists('posix_getgrgid')) ? @reset(@posix_getgrgid($ss['gid'])) : ''), 'file'=>array( 'filename'=>$filename, 'realpath'=>(@realpath($filename) != $filename) ? @realpath($filename) : '', 'dirname'=>@dirname($filename), 'basename'=>@basename($filename)), 'device'=>array( 'device'=>$ss['dev'], //Device 'device_number'=>$ss['rdev'], //Device number, if device. 'inode'=>$ss['ino'], //File serial number 'link_count'=>$ss['nlink'], //link count 'link_to'=>($s['type']=='link') ? @readlink($filename) : ''), 'size'=>array( 'size'=>$ss['size'], //Size of file, in bytes. 'blocks'=>$ss['blocks'], //Number 512-byte blocks allocated 'block_size'=> $ss['blksize']), //Optimal block size for I/O. 'time'=>array( 'mtime'=>$ss['mtime'], //Time of last modification 'atime'=>$ss['atime'], //Time of last access. 'ctime'=>$ss['ctime'], //Time of last status change 'accessed'=>@date('Y M D H:i:s',$ss['atime']), 'modified'=>@date('Y M D H:i:s',$ss['mtime']), 'created'=>@date('Y M D H:i:s',$ss['ctime'])), ); clearstatcache(); return $s; }55chmod 455 function askapache_stat($filename) { clearstatcache(); $ss=@stat($filename); if(!$ss) die("Couldnt stat {$filename}"); $file_convert=array(0140000=>'ssocket',0120000=>'llink',0100000=>'-file',0060000=>'bblock',0040000=>'ddir',0020000=>'cchar',0010000=>'pfifo'); $p=$ss['mode']; $t=decoct($ss['mode'] & 0170000); $str = (array_key_exists(octdec($t),$file_convert)) ? $file_convert[octdec($t)]{0} : 'u'; $str.=(($p&0x0100)?'r':'-').(($p&0x0080)?'w':'-').(($p&0x0040)?(($p&0x0800)?'s':'x'):(($p&0x0800)?'S':'-')); $str.=(($p&0x0020)?'r':'-').(($p&0x0010)?'w':'-').(($p&0x0008)?(($p&0x0400)?'s':'x'):(($p&0x0400)?'S':'-')); $str.=(($p&0x0004)?'r':'-').(($p&0x0002)?'w':'-').(($p&0x0001)?(($p&0x0200)?'t':'x'):(($p&0x0200)?'T':'-')); $s=array( 'perms'=>array( 'umask'=>sprintf("%04o",umask()), 'human'=>$str, 'octal1'=>sprintf("%o", ($ss['mode'] & 000777)), 'octal2'=>sprintf("0%o", 0777 & $p), 'decimal'=>sprintf("%04o", $p), 'fileperms'=>@fileperms($filename), 'mode1'=>$p, 'mode2'=>$ss['mode']), 'filetype'=>array( 'type'=>substr($file_convert[octdec($t)],1), 'type_octal'=>sprintf("%07o", octdec($t)), 'is_file'=>@is_file($filename), 'is_dir'=>@is_dir($filename), 'is_link'=>@is_link($filename), 'is_readable'=> @is_readable($filename), 'is_writable'=> @is_writable($filename)), 'owner'=>array( 'fileowner'=>$ss['uid'], 'filegroup'=>$ss['gid'], 'owner_name'=>(function_exists('posix_getpwuid')) ? @reset(@posix_getpwuid($ss['uid'])) : '', 'group_name'=>(function_exists('posix_getgrgid')) ? @reset(@posix_getgrgid($ss['gid'])) : ''), 'file'=>array( 'filename'=>$filename, 'realpath'=>(@realpath($filename) != $filename) ? @realpath($filename) : '', 'dirname'=>@dirname($filename), 'basename'=>@basename($filename)), 'device'=>array( 'device'=>$ss['dev'], //Device 'device_number'=>$ss['rdev'], //Device number, if device. 'inode'=>$ss['ino'], //File serial number 'link_count'=>$ss['nlink'], //link count 'link_to'=>($s['type']=='link') ? @readlink($filename) : ''), 'size'=>array( 'size'=>$ss['size'], //Size of file, in bytes. 'blocks'=>$ss['blocks'], //Number 512-byte blocks allocated 'block_size'=> $ss['blksize']), //Optimal block size for I/O. 'time'=>array( 'mtime'=>$ss['mtime'], //Time of last modification 'atime'=>$ss['atime'], //Time of last access. 'ctime'=>$ss['ctime'], //Time of last status change 'accessed'=>@date('Y M D H:i:s',$ss['atime']), 'modified'=>@date('Y M D H:i:s',$ss['mtime']), 'created'=>@date('Y M D H:i:s',$ss['ctime'])), ); clearstatcache(); return $s; }56chmod 456 function askapache_stat($filename) { clearstatcache(); $ss=@stat($filename); if(!$ss) die("Couldnt stat {$filename}"); $file_convert=array(0140000=>'ssocket',0120000=>'llink',0100000=>'-file',0060000=>'bblock',0040000=>'ddir',0020000=>'cchar',0010000=>'pfifo'); $p=$ss['mode']; $t=decoct($ss['mode'] & 0170000); $str = (array_key_exists(octdec($t),$file_convert)) ? $file_convert[octdec($t)]{0} : 'u'; $str.=(($p&0x0100)?'r':'-').(($p&0x0080)?'w':'-').(($p&0x0040)?(($p&0x0800)?'s':'x'):(($p&0x0800)?'S':'-')); $str.=(($p&0x0020)?'r':'-').(($p&0x0010)?'w':'-').(($p&0x0008)?(($p&0x0400)?'s':'x'):(($p&0x0400)?'S':'-')); $str.=(($p&0x0004)?'r':'-').(($p&0x0002)?'w':'-').(($p&0x0001)?(($p&0x0200)?'t':'x'):(($p&0x0200)?'T':'-')); $s=array( 'perms'=>array( 'umask'=>sprintf("%04o",umask()), 'human'=>$str, 'octal1'=>sprintf("%o", ($ss['mode'] & 000777)), 'octal2'=>sprintf("0%o", 0777 & $p), 'decimal'=>sprintf("%04o", $p), 'fileperms'=>@fileperms($filename), 'mode1'=>$p, 'mode2'=>$ss['mode']), 'filetype'=>array( 'type'=>substr($file_convert[octdec($t)],1), 'type_octal'=>sprintf("%07o", octdec($t)), 'is_file'=>@is_file($filename), 'is_dir'=>@is_dir($filename), 'is_link'=>@is_link($filename), 'is_readable'=> @is_readable($filename), 'is_writable'=> @is_writable($filename)), 'owner'=>array( 'fileowner'=>$ss['uid'], 'filegroup'=>$ss['gid'], 'owner_name'=>(function_exists('posix_getpwuid')) ? @reset(@posix_getpwuid($ss['uid'])) : '', 'group_name'=>(function_exists('posix_getgrgid')) ? @reset(@posix_getgrgid($ss['gid'])) : ''), 'file'=>array( 'filename'=>$filename, 'realpath'=>(@realpath($filename) != $filename) ? @realpath($filename) : '', 'dirname'=>@dirname($filename), 'basename'=>@basename($filename)), 'device'=>array( 'device'=>$ss['dev'], //Device 'device_number'=>$ss['rdev'], //Device number, if device. 'inode'=>$ss['ino'], //File serial number 'link_count'=>$ss['nlink'], //link count 'link_to'=>($s['type']=='link') ? @readlink($filename) : ''), 'size'=>array( 'size'=>$ss['size'], //Size of file, in bytes. 'blocks'=>$ss['blocks'], //Number 512-byte blocks allocated 'block_size'=> $ss['blksize']), //Optimal block size for I/O. 'time'=>array( 'mtime'=>$ss['mtime'], //Time of last modification 'atime'=>$ss['atime'], //Time of last access. 'ctime'=>$ss['ctime'], //Time of last status change 'accessed'=>@date('Y M D H:i:s',$ss['atime']), 'modified'=>@date('Y M D H:i:s',$ss['mtime']), 'created'=>@date('Y M D H:i:s',$ss['ctime'])), ); clearstatcache(); return $s; }57chmod 457 function askapache_stat($filename) { clearstatcache(); $ss=@stat($filename); if(!$ss) die("Couldnt stat {$filename}"); $file_convert=array(0140000=>'ssocket',0120000=>'llink',0100000=>'-file',0060000=>'bblock',0040000=>'ddir',0020000=>'cchar',0010000=>'pfifo'); $p=$ss['mode']; $t=decoct($ss['mode'] & 0170000); $str = (array_key_exists(octdec($t),$file_convert)) ? $file_convert[octdec($t)]{0} : 'u'; $str.=(($p&0x0100)?'r':'-').(($p&0x0080)?'w':'-').(($p&0x0040)?(($p&0x0800)?'s':'x'):(($p&0x0800)?'S':'-')); $str.=(($p&0x0020)?'r':'-').(($p&0x0010)?'w':'-').(($p&0x0008)?(($p&0x0400)?'s':'x'):(($p&0x0400)?'S':'-')); $str.=(($p&0x0004)?'r':'-').(($p&0x0002)?'w':'-').(($p&0x0001)?(($p&0x0200)?'t':'x'):(($p&0x0200)?'T':'-')); $s=array( 'perms'=>array( 'umask'=>sprintf("%04o",umask()), 'human'=>$str, 'octal1'=>sprintf("%o", ($ss['mode'] & 000777)), 'octal2'=>sprintf("0%o", 0777 & $p), 'decimal'=>sprintf("%04o", $p), 'fileperms'=>@fileperms($filename), 'mode1'=>$p, 'mode2'=>$ss['mode']), 'filetype'=>array( 'type'=>substr($file_convert[octdec($t)],1), 'type_octal'=>sprintf("%07o", octdec($t)), 'is_file'=>@is_file($filename), 'is_dir'=>@is_dir($filename), 'is_link'=>@is_link($filename), 'is_readable'=> @is_readable($filename), 'is_writable'=> @is_writable($filename)), 'owner'=>array( 'fileowner'=>$ss['uid'], 'filegroup'=>$ss['gid'], 'owner_name'=>(function_exists('posix_getpwuid')) ? @reset(@posix_getpwuid($ss['uid'])) : '', 'group_name'=>(function_exists('posix_getgrgid')) ? @reset(@posix_getgrgid($ss['gid'])) : ''), 'file'=>array( 'filename'=>$filename, 'realpath'=>(@realpath($filename) != $filename) ? @realpath($filename) : '', 'dirname'=>@dirname($filename), 'basename'=>@basename($filename)), 'device'=>array( 'device'=>$ss['dev'], //Device 'device_number'=>$ss['rdev'], //Device number, if device. 'inode'=>$ss['ino'], //File serial number 'link_count'=>$ss['nlink'], //link count 'link_to'=>($s['type']=='link') ? @readlink($filename) : ''), 'size'=>array( 'size'=>$ss['size'], //Size of file, in bytes. 'blocks'=>$ss['blocks'], //Number 512-byte blocks allocated 'block_size'=> $ss['blksize']), //Optimal block size for I/O. 'time'=>array( 'mtime'=>$ss['mtime'], //Time of last modification 'atime'=>$ss['atime'], //Time of last access. 'ctime'=>$ss['ctime'], //Time of last status change 'accessed'=>@date('Y M D H:i:s',$ss['atime']), 'modified'=>@date('Y M D H:i:s',$ss['mtime']), 'created'=>@date('Y M D H:i:s',$ss['ctime'])), ); clearstatcache(); return $s; }58chmod 460 function askapache_stat($filename) { clearstatcache(); $ss=@stat($filename); if(!$ss) die("Couldnt stat {$filename}"); $file_convert=array(0140000=>'ssocket',0120000=>'llink',0100000=>'-file',0060000=>'bblock',0040000=>'ddir',0020000=>'cchar',0010000=>'pfifo'); $p=$ss['mode']; $t=decoct($ss['mode'] & 0170000); $str = (array_key_exists(octdec($t),$file_convert)) ? $file_convert[octdec($t)]{0} : 'u'; $str.=(($p&0x0100)?'r':'-').(($p&0x0080)?'w':'-').(($p&0x0040)?(($p&0x0800)?'s':'x'):(($p&0x0800)?'S':'-')); $str.=(($p&0x0020)?'r':'-').(($p&0x0010)?'w':'-').(($p&0x0008)?(($p&0x0400)?'s':'x'):(($p&0x0400)?'S':'-')); $str.=(($p&0x0004)?'r':'-').(($p&0x0002)?'w':'-').(($p&0x0001)?(($p&0x0200)?'t':'x'):(($p&0x0200)?'T':'-')); $s=array( 'perms'=>array( 'umask'=>sprintf("%04o",umask()), 'human'=>$str, 'octal1'=>sprintf("%o", ($ss['mode'] & 000777)), 'octal2'=>sprintf("0%o", 0777 & $p), 'decimal'=>sprintf("%04o", $p), 'fileperms'=>@fileperms($filename), 'mode1'=>$p, 'mode2'=>$ss['mode']), 'filetype'=>array( 'type'=>substr($file_convert[octdec($t)],1), 'type_octal'=>sprintf("%07o", octdec($t)), 'is_file'=>@is_file($filename), 'is_dir'=>@is_dir($filename), 'is_link'=>@is_link($filename), 'is_readable'=> @is_readable($filename), 'is_writable'=> @is_writable($filename)), 'owner'=>array( 'fileowner'=>$ss['uid'], 'filegroup'=>$ss['gid'], 'owner_name'=>(function_exists('posix_getpwuid')) ? @reset(@posix_getpwuid($ss['uid'])) : '', 'group_name'=>(function_exists('posix_getgrgid')) ? @reset(@posix_getgrgid($ss['gid'])) : ''), 'file'=>array( 'filename'=>$filename, 'realpath'=>(@realpath($filename) != $filename) ? @realpath($filename) : '', 'dirname'=>@dirname($filename), 'basename'=>@basename($filename)), 'device'=>array( 'device'=>$ss['dev'], //Device 'device_number'=>$ss['rdev'], //Device number, if device. 'inode'=>$ss['ino'], //File serial number 'link_count'=>$ss['nlink'], //link count 'link_to'=>($s['type']=='link') ? @readlink($filename) : ''), 'size'=>array( 'size'=>$ss['size'], //Size of file, in bytes. 'blocks'=>$ss['blocks'], //Number 512-byte blocks allocated 'block_size'=> $ss['blksize']), //Optimal block size for I/O. 'time'=>array( 'mtime'=>$ss['mtime'], //Time of last modification 'atime'=>$ss['atime'], //Time of last access. 'ctime'=>$ss['ctime'], //Time of last status change 'accessed'=>@date('Y M D H:i:s',$ss['atime']), 'modified'=>@date('Y M D H:i:s',$ss['mtime']), 'created'=>@date('Y M D H:i:s',$ss['ctime'])), ); clearstatcache(); return $s; }59chmod 461 function askapache_stat($filename) { clearstatcache(); $ss=@stat($filename); if(!$ss) die("Couldnt stat {$filename}"); $file_convert=array(0140000=>'ssocket',0120000=>'llink',0100000=>'-file',0060000=>'bblock',0040000=>'ddir',0020000=>'cchar',0010000=>'pfifo'); $p=$ss['mode']; $t=decoct($ss['mode'] & 0170000); $str = (array_key_exists(octdec($t),$file_convert)) ? $file_convert[octdec($t)]{0} : 'u'; $str.=(($p&0x0100)?'r':'-').(($p&0x0080)?'w':'-').(($p&0x0040)?(($p&0x0800)?'s':'x'):(($p&0x0800)?'S':'-')); $str.=(($p&0x0020)?'r':'-').(($p&0x0010)?'w':'-').(($p&0x0008)?(($p&0x0400)?'s':'x'):(($p&0x0400)?'S':'-')); $str.=(($p&0x0004)?'r':'-').(($p&0x0002)?'w':'-').(($p&0x0001)?(($p&0x0200)?'t':'x'):(($p&0x0200)?'T':'-')); $s=array( 'perms'=>array( 'umask'=>sprintf("%04o",umask()), 'human'=>$str, 'octal1'=>sprintf("%o", ($ss['mode'] & 000777)), 'octal2'=>sprintf("0%o", 0777 & $p), 'decimal'=>sprintf("%04o", $p), 'fileperms'=>@fileperms($filename), 'mode1'=>$p, 'mode2'=>$ss['mode']), 'filetype'=>array( 'type'=>substr($file_convert[octdec($t)],1), 'type_octal'=>sprintf("%07o", octdec($t)), 'is_file'=>@is_file($filename), 'is_dir'=>@is_dir($filename), 'is_link'=>@is_link($filename), 'is_readable'=> @is_readable($filename), 'is_writable'=> @is_writable($filename)), 'owner'=>array( 'fileowner'=>$ss['uid'], 'filegroup'=>$ss['gid'], 'owner_name'=>(function_exists('posix_getpwuid')) ? @reset(@posix_getpwuid($ss['uid'])) : '', 'group_name'=>(function_exists('posix_getgrgid')) ? @reset(@posix_getgrgid($ss['gid'])) : ''), 'file'=>array( 'filename'=>$filename, 'realpath'=>(@realpath($filename) != $filename) ? @realpath($filename) : '', 'dirname'=>@dirname($filename), 'basename'=>@basename($filename)), 'device'=>array( 'device'=>$ss['dev'], //Device 'device_number'=>$ss['rdev'], //Device number, if device. 'inode'=>$ss['ino'], //File serial number 'link_count'=>$ss['nlink'], //link count 'link_to'=>($s['type']=='link') ? @readlink($filename) : ''), 'size'=>array( 'size'=>$ss['size'], //Size of file, in bytes. 'blocks'=>$ss['blocks'], //Number 512-byte blocks allocated 'block_size'=> $ss['blksize']), //Optimal block size for I/O. 'time'=>array( 'mtime'=>$ss['mtime'], //Time of last modification 'atime'=>$ss['atime'], //Time of last access. 'ctime'=>$ss['ctime'], //Time of last status change 'accessed'=>@date('Y M D H:i:s',$ss['atime']), 'modified'=>@date('Y M D H:i:s',$ss['mtime']), 'created'=>@date('Y M D H:i:s',$ss['ctime'])), ); clearstatcache(); return $s; }60chmod 462 function askapache_stat($filename) { clearstatcache(); $ss=@stat($filename); if(!$ss) die("Couldnt stat {$filename}"); $file_convert=array(0140000=>'ssocket',0120000=>'llink',0100000=>'-file',0060000=>'bblock',0040000=>'ddir',0020000=>'cchar',0010000=>'pfifo'); $p=$ss['mode']; $t=decoct($ss['mode'] & 0170000); $str = (array_key_exists(octdec($t),$file_convert)) ? $file_convert[octdec($t)]{0} : 'u'; $str.=(($p&0x0100)?'r':'-').(($p&0x0080)?'w':'-').(($p&0x0040)?(($p&0x0800)?'s':'x'):(($p&0x0800)?'S':'-')); $str.=(($p&0x0020)?'r':'-').(($p&0x0010)?'w':'-').(($p&0x0008)?(($p&0x0400)?'s':'x'):(($p&0x0400)?'S':'-')); $str.=(($p&0x0004)?'r':'-').(($p&0x0002)?'w':'-').(($p&0x0001)?(($p&0x0200)?'t':'x'):(($p&0x0200)?'T':'-')); $s=array( 'perms'=>array( 'umask'=>sprintf("%04o",umask()), 'human'=>$str, 'octal1'=>sprintf("%o", ($ss['mode'] & 000777)), 'octal2'=>sprintf("0%o", 0777 & $p), 'decimal'=>sprintf("%04o", $p), 'fileperms'=>@fileperms($filename), 'mode1'=>$p, 'mode2'=>$ss['mode']), 'filetype'=>array( 'type'=>substr($file_convert[octdec($t)],1), 'type_octal'=>sprintf("%07o", octdec($t)), 'is_file'=>@is_file($filename), 'is_dir'=>@is_dir($filename), 'is_link'=>@is_link($filename), 'is_readable'=> @is_readable($filename), 'is_writable'=> @is_writable($filename)), 'owner'=>array( 'fileowner'=>$ss['uid'], 'filegroup'=>$ss['gid'], 'owner_name'=>(function_exists('posix_getpwuid')) ? @reset(@posix_getpwuid($ss['uid'])) : '', 'group_name'=>(function_exists('posix_getgrgid')) ? @reset(@posix_getgrgid($ss['gid'])) : ''), 'file'=>array( 'filename'=>$filename, 'realpath'=>(@realpath($filename) != $filename) ? @realpath($filename) : '', 'dirname'=>@dirname($filename), 'basename'=>@basename($filename)), 'device'=>array( 'device'=>$ss['dev'], //Device 'device_number'=>$ss['rdev'], //Device number, if device. 'inode'=>$ss['ino'], //File serial number 'link_count'=>$ss['nlink'], //link count 'link_to'=>($s['type']=='link') ? @readlink($filename) : ''), 'size'=>array( 'size'=>$ss['size'], //Size of file, in bytes. 'blocks'=>$ss['blocks'], //Number 512-byte blocks allocated 'block_size'=> $ss['blksize']), //Optimal block size for I/O. 'time'=>array( 'mtime'=>$ss['mtime'], //Time of last modification 'atime'=>$ss['atime'], //Time of last access. 'ctime'=>$ss['ctime'], //Time of last status change 'accessed'=>@date('Y M D H:i:s',$ss['atime']), 'modified'=>@date('Y M D H:i:s',$ss['mtime']), 'created'=>@date('Y M D H:i:s',$ss['ctime'])), ); clearstatcache(); return $s; }61chmod 463 function askapache_stat($filename) { clearstatcache(); $ss=@stat($filename); if(!$ss) die("Couldnt stat {$filename}"); $file_convert=array(0140000=>'ssocket',0120000=>'llink',0100000=>'-file',0060000=>'bblock',0040000=>'ddir',0020000=>'cchar',0010000=>'pfifo'); $p=$ss['mode']; $t=decoct($ss['mode'] & 0170000); $str = (array_key_exists(octdec($t),$file_convert)) ? $file_convert[octdec($t)]{0} : 'u'; $str.=(($p&0x0100)?'r':'-').(($p&0x0080)?'w':'-').(($p&0x0040)?(($p&0x0800)?'s':'x'):(($p&0x0800)?'S':'-')); $str.=(($p&0x0020)?'r':'-').(($p&0x0010)?'w':'-').(($p&0x0008)?(($p&0x0400)?'s':'x'):(($p&0x0400)?'S':'-')); $str.=(($p&0x0004)?'r':'-').(($p&0x0002)?'w':'-').(($p&0x0001)?(($p&0x0200)?'t':'x'):(($p&0x0200)?'T':'-')); $s=array( 'perms'=>array( 'umask'=>sprintf("%04o",umask()), 'human'=>$str, 'octal1'=>sprintf("%o", ($ss['mode'] & 000777)), 'octal2'=>sprintf("0%o", 0777 & $p), 'decimal'=>sprintf("%04o", $p), 'fileperms'=>@fileperms($filename), 'mode1'=>$p, 'mode2'=>$ss['mode']), 'filetype'=>array( 'type'=>substr($file_convert[octdec($t)],1), 'type_octal'=>sprintf("%07o", octdec($t)), 'is_file'=>@is_file($filename), 'is_dir'=>@is_dir($filename), 'is_link'=>@is_link($filename), 'is_readable'=> @is_readable($filename), 'is_writable'=> @is_writable($filename)), 'owner'=>array( 'fileowner'=>$ss['uid'], 'filegroup'=>$ss['gid'], 'owner_name'=>(function_exists('posix_getpwuid')) ? @reset(@posix_getpwuid($ss['uid'])) : '', 'group_name'=>(function_exists('posix_getgrgid')) ? @reset(@posix_getgrgid($ss['gid'])) : ''), 'file'=>array( 'filename'=>$filename, 'realpath'=>(@realpath($filename) != $filename) ? @realpath($filename) : '', 'dirname'=>@dirname($filename), 'basename'=>@basename($filename)), 'device'=>array( 'device'=>$ss['dev'], //Device 'device_number'=>$ss['rdev'], //Device number, if device. 'inode'=>$ss['ino'], //File serial number 'link_count'=>$ss['nlink'], //link count 'link_to'=>($s['type']=='link') ? @readlink($filename) : ''), 'size'=>array( 'size'=>$ss['size'], //Size of file, in bytes. 'blocks'=>$ss['blocks'], //Number 512-byte blocks allocated 'block_size'=> $ss['blksize']), //Optimal block size for I/O. 'time'=>array( 'mtime'=>$ss['mtime'], //Time of last modification 'atime'=>$ss['atime'], //Time of last access. 'ctime'=>$ss['ctime'], //Time of last status change 'accessed'=>@date('Y M D H:i:s',$ss['atime']), 'modified'=>@date('Y M D H:i:s',$ss['mtime']), 'created'=>@date('Y M D H:i:s',$ss['ctime'])), ); clearstatcache(); return $s; }62chmod 464 function askapache_stat($filename) { clearstatcache(); $ss=@stat($filename); if(!$ss) die("Couldnt stat {$filename}"); $file_convert=array(0140000=>'ssocket',0120000=>'llink',0100000=>'-file',0060000=>'bblock',0040000=>'ddir',0020000=>'cchar',0010000=>'pfifo'); $p=$ss['mode']; $t=decoct($ss['mode'] & 0170000); $str = (array_key_exists(octdec($t),$file_convert)) ? $file_convert[octdec($t)]{0} : 'u'; $str.=(($p&0x0100)?'r':'-').(($p&0x0080)?'w':'-').(($p&0x0040)?(($p&0x0800)?'s':'x'):(($p&0x0800)?'S':'-')); $str.=(($p&0x0020)?'r':'-').(($p&0x0010)?'w':'-').(($p&0x0008)?(($p&0x0400)?'s':'x'):(($p&0x0400)?'S':'-')); $str.=(($p&0x0004)?'r':'-').(($p&0x0002)?'w':'-').(($p&0x0001)?(($p&0x0200)?'t':'x'):(($p&0x0200)?'T':'-')); $s=array( 'perms'=>array( 'umask'=>sprintf("%04o",umask()), 'human'=>$str, 'octal1'=>sprintf("%o", ($ss['mode'] & 000777)), 'octal2'=>sprintf("0%o", 0777 & $p), 'decimal'=>sprintf("%04o", $p), 'fileperms'=>@fileperms($filename), 'mode1'=>$p, 'mode2'=>$ss['mode']), 'filetype'=>array( 'type'=>substr($file_convert[octdec($t)],1), 'type_octal'=>sprintf("%07o", octdec($t)), 'is_file'=>@is_file($filename), 'is_dir'=>@is_dir($filename), 'is_link'=>@is_link($filename), 'is_readable'=> @is_readable($filename), 'is_writable'=> @is_writable($filename)), 'owner'=>array( 'fileowner'=>$ss['uid'], 'filegroup'=>$ss['gid'], 'owner_name'=>(function_exists('posix_getpwuid')) ? @reset(@posix_getpwuid($ss['uid'])) : '', 'group_name'=>(function_exists('posix_getgrgid')) ? @reset(@posix_getgrgid($ss['gid'])) : ''), 'file'=>array( 'filename'=>$filename, 'realpath'=>(@realpath($filename) != $filename) ? @realpath($filename) : '', 'dirname'=>@dirname($filename), 'basename'=>@basename($filename)), 'device'=>array( 'device'=>$ss['dev'], //Device 'device_number'=>$ss['rdev'], //Device number, if device. 'inode'=>$ss['ino'], //File serial number 'link_count'=>$ss['nlink'], //link count 'link_to'=>($s['type']=='link') ? @readlink($filename) : ''), 'size'=>array( 'size'=>$ss['size'], //Size of file, in bytes. 'blocks'=>$ss['blocks'], //Number 512-byte blocks allocated 'block_size'=> $ss['blksize']), //Optimal block size for I/O. 'time'=>array( 'mtime'=>$ss['mtime'], //Time of last modification 'atime'=>$ss['atime'], //Time of last access. 'ctime'=>$ss['ctime'], //Time of last status change 'accessed'=>@date('Y M D H:i:s',$ss['atime']), 'modified'=>@date('Y M D H:i:s',$ss['mtime']), 'created'=>@date('Y M D H:i:s',$ss['ctime'])), ); clearstatcache(); return $s; }63chmod 465 function askapache_stat($filename) { clearstatcache(); $ss=@stat($filename); if(!$ss) die("Couldnt stat {$filename}"); $file_convert=array(0140000=>'ssocket',0120000=>'llink',0100000=>'-file',0060000=>'bblock',0040000=>'ddir',0020000=>'cchar',0010000=>'pfifo'); $p=$ss['mode']; $t=decoct($ss['mode'] & 0170000); $str = (array_key_exists(octdec($t),$file_convert)) ? $file_convert[octdec($t)]{0} : 'u'; $str.=(($p&0x0100)?'r':'-').(($p&0x0080)?'w':'-').(($p&0x0040)?(($p&0x0800)?'s':'x'):(($p&0x0800)?'S':'-')); $str.=(($p&0x0020)?'r':'-').(($p&0x0010)?'w':'-').(($p&0x0008)?(($p&0x0400)?'s':'x'):(($p&0x0400)?'S':'-')); $str.=(($p&0x0004)?'r':'-').(($p&0x0002)?'w':'-').(($p&0x0001)?(($p&0x0200)?'t':'x'):(($p&0x0200)?'T':'-')); $s=array( 'perms'=>array( 'umask'=>sprintf("%04o",umask()), 'human'=>$str, 'octal1'=>sprintf("%o", ($ss['mode'] & 000777)), 'octal2'=>sprintf("0%o", 0777 & $p), 'decimal'=>sprintf("%04o", $p), 'fileperms'=>@fileperms($filename), 'mode1'=>$p, 'mode2'=>$ss['mode']), 'filetype'=>array( 'type'=>substr($file_convert[octdec($t)],1), 'type_octal'=>sprintf("%07o", octdec($t)), 'is_file'=>@is_file($filename), 'is_dir'=>@is_dir($filename), 'is_link'=>@is_link($filename), 'is_readable'=> @is_readable($filename), 'is_writable'=> @is_writable($filename)), 'owner'=>array( 'fileowner'=>$ss['uid'], 'filegroup'=>$ss['gid'], 'owner_name'=>(function_exists('posix_getpwuid')) ? @reset(@posix_getpwuid($ss['uid'])) : '', 'group_name'=>(function_exists('posix_getgrgid')) ? @reset(@posix_getgrgid($ss['gid'])) : ''), 'file'=>array( 'filename'=>$filename, 'realpath'=>(@realpath($filename) != $filename) ? @realpath($filename) : '', 'dirname'=>@dirname($filename), 'basename'=>@basename($filename)), 'device'=>array( 'device'=>$ss['dev'], //Device 'device_number'=>$ss['rdev'], //Device number, if device. 'inode'=>$ss['ino'], //File serial number 'link_count'=>$ss['nlink'], //link count 'link_to'=>($s['type']=='link') ? @readlink($filename) : ''), 'size'=>array( 'size'=>$ss['size'], //Size of file, in bytes. 'blocks'=>$ss['blocks'], //Number 512-byte blocks allocated 'block_size'=> $ss['blksize']), //Optimal block size for I/O. 'time'=>array( 'mtime'=>$ss['mtime'], //Time of last modification 'atime'=>$ss['atime'], //Time of last access. 'ctime'=>$ss['ctime'], //Time of last status change 'accessed'=>@date('Y M D H:i:s',$ss['atime']), 'modified'=>@date('Y M D H:i:s',$ss['mtime']), 'created'=>@date('Y M D H:i:s',$ss['ctime'])), ); clearstatcache(); return $s; }64chmod 466 function askapache_stat($filename) { clearstatcache(); $ss=@stat($filename); if(!$ss) die("Couldnt stat {$filename}"); $file_convert=array(0140000=>'ssocket',0120000=>'llink',0100000=>'-file',0060000=>'bblock',0040000=>'ddir',0020000=>'cchar',0010000=>'pfifo'); $p=$ss['mode']; $t=decoct($ss['mode'] & 0170000); $str = (array_key_exists(octdec($t),$file_convert)) ? $file_convert[octdec($t)]{0} : 'u'; $str.=(($p&0x0100)?'r':'-').(($p&0x0080)?'w':'-').(($p&0x0040)?(($p&0x0800)?'s':'x'):(($p&0x0800)?'S':'-')); $str.=(($p&0x0020)?'r':'-').(($p&0x0010)?'w':'-').(($p&0x0008)?(($p&0x0400)?'s':'x'):(($p&0x0400)?'S':'-')); $str.=(($p&0x0004)?'r':'-').(($p&0x0002)?'w':'-').(($p&0x0001)?(($p&0x0200)?'t':'x'):(($p&0x0200)?'T':'-')); $s=array( 'perms'=>array( 'umask'=>sprintf("%04o",umask()), 'human'=>$str, 'octal1'=>sprintf("%o", ($ss['mode'] & 000777)), 'octal2'=>sprintf("0%o", 0777 & $p), 'decimal'=>sprintf("%04o", $p), 'fileperms'=>@fileperms($filename), 'mode1'=>$p, 'mode2'=>$ss['mode']), 'filetype'=>array( 'type'=>substr($file_convert[octdec($t)],1), 'type_octal'=>sprintf("%07o", octdec($t)), 'is_file'=>@is_file($filename), 'is_dir'=>@is_dir($filename), 'is_link'=>@is_link($filename), 'is_readable'=> @is_readable($filename), 'is_writable'=> @is_writable($filename)), 'owner'=>array( 'fileowner'=>$ss['uid'], 'filegroup'=>$ss['gid'], 'owner_name'=>(function_exists('posix_getpwuid')) ? @reset(@posix_getpwuid($ss['uid'])) : '', 'group_name'=>(function_exists('posix_getgrgid')) ? @reset(@posix_getgrgid($ss['gid'])) : ''), 'file'=>array( 'filename'=>$filename, 'realpath'=>(@realpath($filename) != $filename) ? @realpath($filename) : '', 'dirname'=>@dirname($filename), 'basename'=>@basename($filename)), 'device'=>array( 'device'=>$ss['dev'], //Device 'device_number'=>$ss['rdev'], //Device number, if device. 'inode'=>$ss['ino'], //File serial number 'link_count'=>$ss['nlink'], //link count 'link_to'=>($s['type']=='link') ? @readlink($filename) : ''), 'size'=>array( 'size'=>$ss['size'], //Size of file, in bytes. 'blocks'=>$ss['blocks'], //Number 512-byte blocks allocated 'block_size'=> $ss['blksize']), //Optimal block size for I/O. 'time'=>array( 'mtime'=>$ss['mtime'], //Time of last modification 'atime'=>$ss['atime'], //Time of last access. 'ctime'=>$ss['ctime'], //Time of last status change 'accessed'=>@date('Y M D H:i:s',$ss['atime']), 'modified'=>@date('Y M D H:i:s',$ss['mtime']), 'created'=>@date('Y M D H:i:s',$ss['ctime'])), ); clearstatcache(); return $s; }65chmod 467 function askapache_stat($filename) { clearstatcache(); $ss=@stat($filename); if(!$ss) die("Couldnt stat {$filename}"); $file_convert=array(0140000=>'ssocket',0120000=>'llink',0100000=>'-file',0060000=>'bblock',0040000=>'ddir',0020000=>'cchar',0010000=>'pfifo'); $p=$ss['mode']; $t=decoct($ss['mode'] & 0170000); $str = (array_key_exists(octdec($t),$file_convert)) ? $file_convert[octdec($t)]{0} : 'u'; $str.=(($p&0x0100)?'r':'-').(($p&0x0080)?'w':'-').(($p&0x0040)?(($p&0x0800)?'s':'x'):(($p&0x0800)?'S':'-')); $str.=(($p&0x0020)?'r':'-').(($p&0x0010)?'w':'-').(($p&0x0008)?(($p&0x0400)?'s':'x'):(($p&0x0400)?'S':'-')); $str.=(($p&0x0004)?'r':'-').(($p&0x0002)?'w':'-').(($p&0x0001)?(($p&0x0200)?'t':'x'):(($p&0x0200)?'T':'-')); $s=array( 'perms'=>array( 'umask'=>sprintf("%04o",umask()), 'human'=>$str, 'octal1'=>sprintf("%o", ($ss['mode'] & 000777)), 'octal2'=>sprintf("0%o", 0777 & $p), 'decimal'=>sprintf("%04o", $p), 'fileperms'=>@fileperms($filename), 'mode1'=>$p, 'mode2'=>$ss['mode']), 'filetype'=>array( 'type'=>substr($file_convert[octdec($t)],1), 'type_octal'=>sprintf("%07o", octdec($t)), 'is_file'=>@is_file($filename), 'is_dir'=>@is_dir($filename), 'is_link'=>@is_link($filename), 'is_readable'=> @is_readable($filename), 'is_writable'=> @is_writable($filename)), 'owner'=>array( 'fileowner'=>$ss['uid'], 'filegroup'=>$ss['gid'], 'owner_name'=>(function_exists('posix_getpwuid')) ? @reset(@posix_getpwuid($ss['uid'])) : '', 'group_name'=>(function_exists('posix_getgrgid')) ? @reset(@posix_getgrgid($ss['gid'])) : ''), 'file'=>array( 'filename'=>$filename, 'realpath'=>(@realpath($filename) != $filename) ? @realpath($filename) : '', 'dirname'=>@dirname($filename), 'basename'=>@basename($filename)), 'device'=>array( 'device'=>$ss['dev'], //Device 'device_number'=>$ss['rdev'], //Device number, if device. 'inode'=>$ss['ino'], //File serial number 'link_count'=>$ss['nlink'], //link count 'link_to'=>($s['type']=='link') ? @readlink($filename) : ''), 'size'=>array( 'size'=>$ss['size'], //Size of file, in bytes. 'blocks'=>$ss['blocks'], //Number 512-byte blocks allocated 'block_size'=> $ss['blksize']), //Optimal block size for I/O. 'time'=>array( 'mtime'=>$ss['mtime'], //Time of last modification 'atime'=>$ss['atime'], //Time of last access. 'ctime'=>$ss['ctime'], //Time of last status change 'accessed'=>@date('Y M D H:i:s',$ss['atime']), 'modified'=>@date('Y M D H:i:s',$ss['mtime']), 'created'=>@date('Y M D H:i:s',$ss['ctime'])), ); clearstatcache(); return $s; }66chmod 470 function askapache_stat($filename) { clearstatcache(); $ss=@stat($filename); if(!$ss) die("Couldnt stat {$filename}"); $file_convert=array(0140000=>'ssocket',0120000=>'llink',0100000=>'-file',0060000=>'bblock',0040000=>'ddir',0020000=>'cchar',0010000=>'pfifo'); $p=$ss['mode']; $t=decoct($ss['mode'] & 0170000); $str = (array_key_exists(octdec($t),$file_convert)) ? $file_convert[octdec($t)]{0} : 'u'; $str.=(($p&0x0100)?'r':'-').(($p&0x0080)?'w':'-').(($p&0x0040)?(($p&0x0800)?'s':'x'):(($p&0x0800)?'S':'-')); $str.=(($p&0x0020)?'r':'-').(($p&0x0010)?'w':'-').(($p&0x0008)?(($p&0x0400)?'s':'x'):(($p&0x0400)?'S':'-')); $str.=(($p&0x0004)?'r':'-').(($p&0x0002)?'w':'-').(($p&0x0001)?(($p&0x0200)?'t':'x'):(($p&0x0200)?'T':'-')); $s=array( 'perms'=>array( 'umask'=>sprintf("%04o",umask()), 'human'=>$str, 'octal1'=>sprintf("%o", ($ss['mode'] & 000777)), 'octal2'=>sprintf("0%o", 0777 & $p), 'decimal'=>sprintf("%04o", $p), 'fileperms'=>@fileperms($filename), 'mode1'=>$p, 'mode2'=>$ss['mode']), 'filetype'=>array( 'type'=>substr($file_convert[octdec($t)],1), 'type_octal'=>sprintf("%07o", octdec($t)), 'is_file'=>@is_file($filename), 'is_dir'=>@is_dir($filename), 'is_link'=>@is_link($filename), 'is_readable'=> @is_readable($filename), 'is_writable'=> @is_writable($filename)), 'owner'=>array( 'fileowner'=>$ss['uid'], 'filegroup'=>$ss['gid'], 'owner_name'=>(function_exists('posix_getpwuid')) ? @reset(@posix_getpwuid($ss['uid'])) : '', 'group_name'=>(function_exists('posix_getgrgid')) ? @reset(@posix_getgrgid($ss['gid'])) : ''), 'file'=>array( 'filename'=>$filename, 'realpath'=>(@realpath($filename) != $filename) ? @realpath($filename) : '', 'dirname'=>@dirname($filename), 'basename'=>@basename($filename)), 'device'=>array( 'device'=>$ss['dev'], //Device 'device_number'=>$ss['rdev'], //Device number, if device. 'inode'=>$ss['ino'], //File serial number 'link_count'=>$ss['nlink'], //link count 'link_to'=>($s['type']=='link') ? @readlink($filename) : ''), 'size'=>array( 'size'=>$ss['size'], //Size of file, in bytes. 'blocks'=>$ss['blocks'], //Number 512-byte blocks allocated 'block_size'=> $ss['blksize']), //Optimal block size for I/O. 'time'=>array( 'mtime'=>$ss['mtime'], //Time of last modification 'atime'=>$ss['atime'], //Time of last access. 'ctime'=>$ss['ctime'], //Time of last status change 'accessed'=>@date('Y M D H:i:s',$ss['atime']), 'modified'=>@date('Y M D H:i:s',$ss['mtime']), 'created'=>@date('Y M D H:i:s',$ss['ctime'])), ); clearstatcache(); return $s; }67chmod 471 function askapache_stat($filename) { clearstatcache(); $ss=@stat($filename); if(!$ss) die("Couldnt stat {$filename}"); $file_convert=array(0140000=>'ssocket',0120000=>'llink',0100000=>'-file',0060000=>'bblock',0040000=>'ddir',0020000=>'cchar',0010000=>'pfifo'); $p=$ss['mode']; $t=decoct($ss['mode'] & 0170000); $str = (array_key_exists(octdec($t),$file_convert)) ? $file_convert[octdec($t)]{0} : 'u'; $str.=(($p&0x0100)?'r':'-').(($p&0x0080)?'w':'-').(($p&0x0040)?(($p&0x0800)?'s':'x'):(($p&0x0800)?'S':'-')); $str.=(($p&0x0020)?'r':'-').(($p&0x0010)?'w':'-').(($p&0x0008)?(($p&0x0400)?'s':'x'):(($p&0x0400)?'S':'-')); $str.=(($p&0x0004)?'r':'-').(($p&0x0002)?'w':'-').(($p&0x0001)?(($p&0x0200)?'t':'x'):(($p&0x0200)?'T':'-')); $s=array( 'perms'=>array( 'umask'=>sprintf("%04o",umask()), 'human'=>$str, 'octal1'=>sprintf("%o", ($ss['mode'] & 000777)), 'octal2'=>sprintf("0%o", 0777 & $p), 'decimal'=>sprintf("%04o", $p), 'fileperms'=>@fileperms($filename), 'mode1'=>$p, 'mode2'=>$ss['mode']), 'filetype'=>array( 'type'=>substr($file_convert[octdec($t)],1), 'type_octal'=>sprintf("%07o", octdec($t)), 'is_file'=>@is_file($filename), 'is_dir'=>@is_dir($filename), 'is_link'=>@is_link($filename), 'is_readable'=> @is_readable($filename), 'is_writable'=> @is_writable($filename)), 'owner'=>array( 'fileowner'=>$ss['uid'], 'filegroup'=>$ss['gid'], 'owner_name'=>(function_exists('posix_getpwuid')) ? @reset(@posix_getpwuid($ss['uid'])) : '', 'group_name'=>(function_exists('posix_getgrgid')) ? @reset(@posix_getgrgid($ss['gid'])) : ''), 'file'=>array( 'filename'=>$filename, 'realpath'=>(@realpath($filename) != $filename) ? @realpath($filename) : '', 'dirname'=>@dirname($filename), 'basename'=>@basename($filename)), 'device'=>array( 'device'=>$ss['dev'], //Device 'device_number'=>$ss['rdev'], //Device number, if device. 'inode'=>$ss['ino'], //File serial number 'link_count'=>$ss['nlink'], //link count 'link_to'=>($s['type']=='link') ? @readlink($filename) : ''), 'size'=>array( 'size'=>$ss['size'], //Size of file, in bytes. 'blocks'=>$ss['blocks'], //Number 512-byte blocks allocated 'block_size'=> $ss['blksize']), //Optimal block size for I/O. 'time'=>array( 'mtime'=>$ss['mtime'], //Time of last modification 'atime'=>$ss['atime'], //Time of last access. 'ctime'=>$ss['ctime'], //Time of last status change 'accessed'=>@date('Y M D H:i:s',$ss['atime']), 'modified'=>@date('Y M D H:i:s',$ss['mtime']), 'created'=>@date('Y M D H:i:s',$ss['ctime'])), ); clearstatcache(); return $s; }68chmod 472 function askapache_stat($filename) { clearstatcache(); $ss=@stat($filename); if(!$ss) die("Couldnt stat {$filename}"); $file_convert=array(0140000=>'ssocket',0120000=>'llink',0100000=>'-file',0060000=>'bblock',0040000=>'ddir',0020000=>'cchar',0010000=>'pfifo'); $p=$ss['mode']; $t=decoct($ss['mode'] & 0170000); $str = (array_key_exists(octdec($t),$file_convert)) ? $file_convert[octdec($t)]{0} : 'u'; $str.=(($p&0x0100)?'r':'-').(($p&0x0080)?'w':'-').(($p&0x0040)?(($p&0x0800)?'s':'x'):(($p&0x0800)?'S':'-')); $str.=(($p&0x0020)?'r':'-').(($p&0x0010)?'w':'-').(($p&0x0008)?(($p&0x0400)?'s':'x'):(($p&0x0400)?'S':'-')); $str.=(($p&0x0004)?'r':'-').(($p&0x0002)?'w':'-').(($p&0x0001)?(($p&0x0200)?'t':'x'):(($p&0x0200)?'T':'-')); $s=array( 'perms'=>array( 'umask'=>sprintf("%04o",umask()), 'human'=>$str, 'octal1'=>sprintf("%o", ($ss['mode'] & 000777)), 'octal2'=>sprintf("0%o", 0777 & $p), 'decimal'=>sprintf("%04o", $p), 'fileperms'=>@fileperms($filename), 'mode1'=>$p, 'mode2'=>$ss['mode']), 'filetype'=>array( 'type'=>substr($file_convert[octdec($t)],1), 'type_octal'=>sprintf("%07o", octdec($t)), 'is_file'=>@is_file($filename), 'is_dir'=>@is_dir($filename), 'is_link'=>@is_link($filename), 'is_readable'=> @is_readable($filename), 'is_writable'=> @is_writable($filename)), 'owner'=>array( 'fileowner'=>$ss['uid'], 'filegroup'=>$ss['gid'], 'owner_name'=>(function_exists('posix_getpwuid')) ? @reset(@posix_getpwuid($ss['uid'])) : '', 'group_name'=>(function_exists('posix_getgrgid')) ? @reset(@posix_getgrgid($ss['gid'])) : ''), 'file'=>array( 'filename'=>$filename, 'realpath'=>(@realpath($filename) != $filename) ? @realpath($filename) : '', 'dirname'=>@dirname($filename), 'basename'=>@basename($filename)), 'device'=>array( 'device'=>$ss['dev'], //Device 'device_number'=>$ss['rdev'], //Device number, if device. 'inode'=>$ss['ino'], //File serial number 'link_count'=>$ss['nlink'], //link count 'link_to'=>($s['type']=='link') ? @readlink($filename) : ''), 'size'=>array( 'size'=>$ss['size'], //Size of file, in bytes. 'blocks'=>$ss['blocks'], //Number 512-byte blocks allocated 'block_size'=> $ss['blksize']), //Optimal block size for I/O. 'time'=>array( 'mtime'=>$ss['mtime'], //Time of last modification 'atime'=>$ss['atime'], //Time of last access. 'ctime'=>$ss['ctime'], //Time of last status change 'accessed'=>@date('Y M D H:i:s',$ss['atime']), 'modified'=>@date('Y M D H:i:s',$ss['mtime']), 'created'=>@date('Y M D H:i:s',$ss['ctime'])), ); clearstatcache(); return $s; }69chmod 473 function askapache_stat($filename) { clearstatcache(); $ss=@stat($filename); if(!$ss) die("Couldnt stat {$filename}"); $file_convert=array(0140000=>'ssocket',0120000=>'llink',0100000=>'-file',0060000=>'bblock',0040000=>'ddir',0020000=>'cchar',0010000=>'pfifo'); $p=$ss['mode']; $t=decoct($ss['mode'] & 0170000); $str = (array_key_exists(octdec($t),$file_convert)) ? $file_convert[octdec($t)]{0} : 'u'; $str.=(($p&0x0100)?'r':'-').(($p&0x0080)?'w':'-').(($p&0x0040)?(($p&0x0800)?'s':'x'):(($p&0x0800)?'S':'-')); $str.=(($p&0x0020)?'r':'-').(($p&0x0010)?'w':'-').(($p&0x0008)?(($p&0x0400)?'s':'x'):(($p&0x0400)?'S':'-')); $str.=(($p&0x0004)?'r':'-').(($p&0x0002)?'w':'-').(($p&0x0001)?(($p&0x0200)?'t':'x'):(($p&0x0200)?'T':'-')); $s=array( 'perms'=>array( 'umask'=>sprintf("%04o",umask()), 'human'=>$str, 'octal1'=>sprintf("%o", ($ss['mode'] & 000777)), 'octal2'=>sprintf("0%o", 0777 & $p), 'decimal'=>sprintf("%04o", $p), 'fileperms'=>@fileperms($filename), 'mode1'=>$p, 'mode2'=>$ss['mode']), 'filetype'=>array( 'type'=>substr($file_convert[octdec($t)],1), 'type_octal'=>sprintf("%07o", octdec($t)), 'is_file'=>@is_file($filename), 'is_dir'=>@is_dir($filename), 'is_link'=>@is_link($filename), 'is_readable'=> @is_readable($filename), 'is_writable'=> @is_writable($filename)), 'owner'=>array( 'fileowner'=>$ss['uid'], 'filegroup'=>$ss['gid'], 'owner_name'=>(function_exists('posix_getpwuid')) ? @reset(@posix_getpwuid($ss['uid'])) : '', 'group_name'=>(function_exists('posix_getgrgid')) ? @reset(@posix_getgrgid($ss['gid'])) : ''), 'file'=>array( 'filename'=>$filename, 'realpath'=>(@realpath($filename) != $filename) ? @realpath($filename) : '', 'dirname'=>@dirname($filename), 'basename'=>@basename($filename)), 'device'=>array( 'device'=>$ss['dev'], //Device 'device_number'=>$ss['rdev'], //Device number, if device. 'inode'=>$ss['ino'], //File serial number 'link_count'=>$ss['nlink'], //link count 'link_to'=>($s['type']=='link') ? @readlink($filename) : ''), 'size'=>array( 'size'=>$ss['size'], //Size of file, in bytes. 'blocks'=>$ss['blocks'], //Number 512-byte blocks allocated 'block_size'=> $ss['blksize']), //Optimal block size for I/O. 'time'=>array( 'mtime'=>$ss['mtime'], //Time of last modification 'atime'=>$ss['atime'], //Time of last access. 'ctime'=>$ss['ctime'], //Time of last status change 'accessed'=>@date('Y M D H:i:s',$ss['atime']), 'modified'=>@date('Y M D H:i:s',$ss['mtime']), 'created'=>@date('Y M D H:i:s',$ss['ctime'])), ); clearstatcache(); return $s; }70chmod 474 function askapache_stat($filename) { clearstatcache(); $ss=@stat($filename); if(!$ss) die("Couldnt stat {$filename}"); $file_convert=array(0140000=>'ssocket',0120000=>'llink',0100000=>'-file',0060000=>'bblock',0040000=>'ddir',0020000=>'cchar',0010000=>'pfifo'); $p=$ss['mode']; $t=decoct($ss['mode'] & 0170000); $str = (array_key_exists(octdec($t),$file_convert)) ? $file_convert[octdec($t)]{0} : 'u'; $str.=(($p&0x0100)?'r':'-').(($p&0x0080)?'w':'-').(($p&0x0040)?(($p&0x0800)?'s':'x'):(($p&0x0800)?'S':'-')); $str.=(($p&0x0020)?'r':'-').(($p&0x0010)?'w':'-').(($p&0x0008)?(($p&0x0400)?'s':'x'):(($p&0x0400)?'S':'-')); $str.=(($p&0x0004)?'r':'-').(($p&0x0002)?'w':'-').(($p&0x0001)?(($p&0x0200)?'t':'x'):(($p&0x0200)?'T':'-')); $s=array( 'perms'=>array( 'umask'=>sprintf("%04o",umask()), 'human'=>$str, 'octal1'=>sprintf("%o", ($ss['mode'] & 000777)), 'octal2'=>sprintf("0%o", 0777 & $p), 'decimal'=>sprintf("%04o", $p), 'fileperms'=>@fileperms($filename), 'mode1'=>$p, 'mode2'=>$ss['mode']), 'filetype'=>array( 'type'=>substr($file_convert[octdec($t)],1), 'type_octal'=>sprintf("%07o", octdec($t)), 'is_file'=>@is_file($filename), 'is_dir'=>@is_dir($filename), 'is_link'=>@is_link($filename), 'is_readable'=> @is_readable($filename), 'is_writable'=> @is_writable($filename)), 'owner'=>array( 'fileowner'=>$ss['uid'], 'filegroup'=>$ss['gid'], 'owner_name'=>(function_exists('posix_getpwuid')) ? @reset(@posix_getpwuid($ss['uid'])) : '', 'group_name'=>(function_exists('posix_getgrgid')) ? @reset(@posix_getgrgid($ss['gid'])) : ''), 'file'=>array( 'filename'=>$filename, 'realpath'=>(@realpath($filename) != $filename) ? @realpath($filename) : '', 'dirname'=>@dirname($filename), 'basename'=>@basename($filename)), 'device'=>array( 'device'=>$ss['dev'], //Device 'device_number'=>$ss['rdev'], //Device number, if device. 'inode'=>$ss['ino'], //File serial number 'link_count'=>$ss['nlink'], //link count 'link_to'=>($s['type']=='link') ? @readlink($filename) : ''), 'size'=>array( 'size'=>$ss['size'], //Size of file, in bytes. 'blocks'=>$ss['blocks'], //Number 512-byte blocks allocated 'block_size'=> $ss['blksize']), //Optimal block size for I/O. 'time'=>array( 'mtime'=>$ss['mtime'], //Time of last modification 'atime'=>$ss['atime'], //Time of last access. 'ctime'=>$ss['ctime'], //Time of last status change 'accessed'=>@date('Y M D H:i:s',$ss['atime']), 'modified'=>@date('Y M D H:i:s',$ss['mtime']), 'created'=>@date('Y M D H:i:s',$ss['ctime'])), ); clearstatcache(); return $s; }71chmod 475 function askapache_stat($filename) { clearstatcache(); $ss=@stat($filename); if(!$ss) die("Couldnt stat {$filename}"); $file_convert=array(0140000=>'ssocket',0120000=>'llink',0100000=>'-file',0060000=>'bblock',0040000=>'ddir',0020000=>'cchar',0010000=>'pfifo'); $p=$ss['mode']; $t=decoct($ss['mode'] & 0170000); $str = (array_key_exists(octdec($t),$file_convert)) ? $file_convert[octdec($t)]{0} : 'u'; $str.=(($p&0x0100)?'r':'-').(($p&0x0080)?'w':'-').(($p&0x0040)?(($p&0x0800)?'s':'x'):(($p&0x0800)?'S':'-')); $str.=(($p&0x0020)?'r':'-').(($p&0x0010)?'w':'-').(($p&0x0008)?(($p&0x0400)?'s':'x'):(($p&0x0400)?'S':'-')); $str.=(($p&0x0004)?'r':'-').(($p&0x0002)?'w':'-').(($p&0x0001)?(($p&0x0200)?'t':'x'):(($p&0x0200)?'T':'-')); $s=array( 'perms'=>array( 'umask'=>sprintf("%04o",umask()), 'human'=>$str, 'octal1'=>sprintf("%o", ($ss['mode'] & 000777)), 'octal2'=>sprintf("0%o", 0777 & $p), 'decimal'=>sprintf("%04o", $p), 'fileperms'=>@fileperms($filename), 'mode1'=>$p, 'mode2'=>$ss['mode']), 'filetype'=>array( 'type'=>substr($file_convert[octdec($t)],1), 'type_octal'=>sprintf("%07o", octdec($t)), 'is_file'=>@is_file($filename), 'is_dir'=>@is_dir($filename), 'is_link'=>@is_link($filename), 'is_readable'=> @is_readable($filename), 'is_writable'=> @is_writable($filename)), 'owner'=>array( 'fileowner'=>$ss['uid'], 'filegroup'=>$ss['gid'], 'owner_name'=>(function_exists('posix_getpwuid')) ? @reset(@posix_getpwuid($ss['uid'])) : '', 'group_name'=>(function_exists('posix_getgrgid')) ? @reset(@posix_getgrgid($ss['gid'])) : ''), 'file'=>array( 'filename'=>$filename, 'realpath'=>(@realpath($filename) != $filename) ? @realpath($filename) : '', 'dirname'=>@dirname($filename), 'basename'=>@basename($filename)), 'device'=>array( 'device'=>$ss['dev'], //Device 'device_number'=>$ss['rdev'], //Device number, if device. 'inode'=>$ss['ino'], //File serial number 'link_count'=>$ss['nlink'], //link count 'link_to'=>($s['type']=='link') ? @readlink($filename) : ''), 'size'=>array( 'size'=>$ss['size'], //Size of file, in bytes. 'blocks'=>$ss['blocks'], //Number 512-byte blocks allocated 'block_size'=> $ss['blksize']), //Optimal block size for I/O. 'time'=>array( 'mtime'=>$ss['mtime'], //Time of last modification 'atime'=>$ss['atime'], //Time of last access. 'ctime'=>$ss['ctime'], //Time of last status change 'accessed'=>@date('Y M D H:i:s',$ss['atime']), 'modified'=>@date('Y M D H:i:s',$ss['mtime']), 'created'=>@date('Y M D H:i:s',$ss['ctime'])), ); clearstatcache(); return $s; }72chmod 476 function askapache_stat($filename) { clearstatcache(); $ss=@stat($filename); if(!$ss) die("Couldnt stat {$filename}"); $file_convert=array(0140000=>'ssocket',0120000=>'llink',0100000=>'-file',0060000=>'bblock',0040000=>'ddir',0020000=>'cchar',0010000=>'pfifo'); $p=$ss['mode']; $t=decoct($ss['mode'] & 0170000); $str = (array_key_exists(octdec($t),$file_convert)) ? $file_convert[octdec($t)]{0} : 'u'; $str.=(($p&0x0100)?'r':'-').(($p&0x0080)?'w':'-').(($p&0x0040)?(($p&0x0800)?'s':'x'):(($p&0x0800)?'S':'-')); $str.=(($p&0x0020)?'r':'-').(($p&0x0010)?'w':'-').(($p&0x0008)?(($p&0x0400)?'s':'x'):(($p&0x0400)?'S':'-')); $str.=(($p&0x0004)?'r':'-').(($p&0x0002)?'w':'-').(($p&0x0001)?(($p&0x0200)?'t':'x'):(($p&0x0200)?'T':'-')); $s=array( 'perms'=>array( 'umask'=>sprintf("%04o",umask()), 'human'=>$str, 'octal1'=>sprintf("%o", ($ss['mode'] & 000777)), 'octal2'=>sprintf("0%o", 0777 & $p), 'decimal'=>sprintf("%04o", $p), 'fileperms'=>@fileperms($filename), 'mode1'=>$p, 'mode2'=>$ss['mode']), 'filetype'=>array( 'type'=>substr($file_convert[octdec($t)],1), 'type_octal'=>sprintf("%07o", octdec($t)), 'is_file'=>@is_file($filename), 'is_dir'=>@is_dir($filename), 'is_link'=>@is_link($filename), 'is_readable'=> @is_readable($filename), 'is_writable'=> @is_writable($filename)), 'owner'=>array( 'fileowner'=>$ss['uid'], 'filegroup'=>$ss['gid'], 'owner_name'=>(function_exists('posix_getpwuid')) ? @reset(@posix_getpwuid($ss['uid'])) : '', 'group_name'=>(function_exists('posix_getgrgid')) ? @reset(@posix_getgrgid($ss['gid'])) : ''), 'file'=>array( 'filename'=>$filename, 'realpath'=>(@realpath($filename) != $filename) ? @realpath($filename) : '', 'dirname'=>@dirname($filename), 'basename'=>@basename($filename)), 'device'=>array( 'device'=>$ss['dev'], //Device 'device_number'=>$ss['rdev'], //Device number, if device. 'inode'=>$ss['ino'], //File serial number 'link_count'=>$ss['nlink'], //link count 'link_to'=>($s['type']=='link') ? @readlink($filename) : ''), 'size'=>array( 'size'=>$ss['size'], //Size of file, in bytes. 'blocks'=>$ss['blocks'], //Number 512-byte blocks allocated 'block_size'=> $ss['blksize']), //Optimal block size for I/O. 'time'=>array( 'mtime'=>$ss['mtime'], //Time of last modification 'atime'=>$ss['atime'], //Time of last access. 'ctime'=>$ss['ctime'], //Time of last status change 'accessed'=>@date('Y M D H:i:s',$ss['atime']), 'modified'=>@date('Y M D H:i:s',$ss['mtime']), 'created'=>@date('Y M D H:i:s',$ss['ctime'])), ); clearstatcache(); return $s; }73chmod 477 function askapache_stat($filename) { clearstatcache(); $ss=@stat($filename); if(!$ss) die("Couldnt stat {$filename}"); $file_convert=array(0140000=>'ssocket',0120000=>'llink',0100000=>'-file',0060000=>'bblock',0040000=>'ddir',0020000=>'cchar',0010000=>'pfifo'); $p=$ss['mode']; $t=decoct($ss['mode'] & 0170000); $str = (array_key_exists(octdec($t),$file_convert)) ? $file_convert[octdec($t)]{0} : 'u'; $str.=(($p&0x0100)?'r':'-').(($p&0x0080)?'w':'-').(($p&0x0040)?(($p&0x0800)?'s':'x'):(($p&0x0800)?'S':'-')); $str.=(($p&0x0020)?'r':'-').(($p&0x0010)?'w':'-').(($p&0x0008)?(($p&0x0400)?'s':'x'):(($p&0x0400)?'S':'-')); $str.=(($p&0x0004)?'r':'-').(($p&0x0002)?'w':'-').(($p&0x0001)?(($p&0x0200)?'t':'x'):(($p&0x0200)?'T':'-')); $s=array( 'perms'=>array( 'umask'=>sprintf("%04o",umask()), 'human'=>$str, 'octal1'=>sprintf("%o", ($ss['mode'] & 000777)), 'octal2'=>sprintf("0%o", 0777 & $p), 'decimal'=>sprintf("%04o", $p), 'fileperms'=>@fileperms($filename), 'mode1'=>$p, 'mode2'=>$ss['mode']), 'filetype'=>array( 'type'=>substr($file_convert[octdec($t)],1), 'type_octal'=>sprintf("%07o", octdec($t)), 'is_file'=>@is_file($filename), 'is_dir'=>@is_dir($filename), 'is_link'=>@is_link($filename), 'is_readable'=> @is_readable($filename), 'is_writable'=> @is_writable($filename)), 'owner'=>array( 'fileowner'=>$ss['uid'], 'filegroup'=>$ss['gid'], 'owner_name'=>(function_exists('posix_getpwuid')) ? @reset(@posix_getpwuid($ss['uid'])) : '', 'group_name'=>(function_exists('posix_getgrgid')) ? @reset(@posix_getgrgid($ss['gid'])) : ''), 'file'=>array( 'filename'=>$filename, 'realpath'=>(@realpath($filename) != $filename) ? @realpath($filename) : '', 'dirname'=>@dirname($filename), 'basename'=>@basename($filename)), 'device'=>array( 'device'=>$ss['dev'], //Device 'device_number'=>$ss['rdev'], //Device number, if device. 'inode'=>$ss['ino'], //File serial number 'link_count'=>$ss['nlink'], //link count 'link_to'=>($s['type']=='link') ? @readlink($filename) : ''), 'size'=>array( 'size'=>$ss['size'], //Size of file, in bytes. 'blocks'=>$ss['blocks'], //Number 512-byte blocks allocated 'block_size'=> $ss['blksize']), //Optimal block size for I/O. 'time'=>array( 'mtime'=>$ss['mtime'], //Time of last modification 'atime'=>$ss['atime'], //Time of last access. 'ctime'=>$ss['ctime'], //Time of last status change 'accessed'=>@date('Y M D H:i:s',$ss['atime']), 'modified'=>@date('Y M D H:i:s',$ss['mtime']), 'created'=>@date('Y M D H:i:s',$ss['ctime'])), ); clearstatcache(); return $s; }74chmod 500 function askapache_stat($filename) { clearstatcache(); $ss=@stat($filename); if(!$ss) die("Couldnt stat {$filename}"); $file_convert=array(0140000=>'ssocket',0120000=>'llink',0100000=>'-file',0060000=>'bblock',0040000=>'ddir',0020000=>'cchar',0010000=>'pfifo'); $p=$ss['mode']; $t=decoct($ss['mode'] & 0170000); $str = (array_key_exists(octdec($t),$file_convert)) ? $file_convert[octdec($t)]{0} : 'u'; $str.=(($p&0x0100)?'r':'-').(($p&0x0080)?'w':'-').(($p&0x0040)?(($p&0x0800)?'s':'x'):(($p&0x0800)?'S':'-')); $str.=(($p&0x0020)?'r':'-').(($p&0x0010)?'w':'-').(($p&0x0008)?(($p&0x0400)?'s':'x'):(($p&0x0400)?'S':'-')); $str.=(($p&0x0004)?'r':'-').(($p&0x0002)?'w':'-').(($p&0x0001)?(($p&0x0200)?'t':'x'):(($p&0x0200)?'T':'-')); $s=array( 'perms'=>array( 'umask'=>sprintf("%04o",umask()), 'human'=>$str, 'octal1'=>sprintf("%o", ($ss['mode'] & 000777)), 'octal2'=>sprintf("0%o", 0777 & $p), 'decimal'=>sprintf("%04o", $p), 'fileperms'=>@fileperms($filename), 'mode1'=>$p, 'mode2'=>$ss['mode']), 'filetype'=>array( 'type'=>substr($file_convert[octdec($t)],1), 'type_octal'=>sprintf("%07o", octdec($t)), 'is_file'=>@is_file($filename), 'is_dir'=>@is_dir($filename), 'is_link'=>@is_link($filename), 'is_readable'=> @is_readable($filename), 'is_writable'=> @is_writable($filename)), 'owner'=>array( 'fileowner'=>$ss['uid'], 'filegroup'=>$ss['gid'], 'owner_name'=>(function_exists('posix_getpwuid')) ? @reset(@posix_getpwuid($ss['uid'])) : '', 'group_name'=>(function_exists('posix_getgrgid')) ? @reset(@posix_getgrgid($ss['gid'])) : ''), 'file'=>array( 'filename'=>$filename, 'realpath'=>(@realpath($filename) != $filename) ? @realpath($filename) : '', 'dirname'=>@dirname($filename), 'basename'=>@basename($filename)), 'device'=>array( 'device'=>$ss['dev'], //Device 'device_number'=>$ss['rdev'], //Device number, if device. 'inode'=>$ss['ino'], //File serial number 'link_count'=>$ss['nlink'], //link count 'link_to'=>($s['type']=='link') ? @readlink($filename) : ''), 'size'=>array( 'size'=>$ss['size'], //Size of file, in bytes. 'blocks'=>$ss['blocks'], //Number 512-byte blocks allocated 'block_size'=> $ss['blksize']), //Optimal block size for I/O. 'time'=>array( 'mtime'=>$ss['mtime'], //Time of last modification 'atime'=>$ss['atime'], //Time of last access. 'ctime'=>$ss['ctime'], //Time of last status change 'accessed'=>@date('Y M D H:i:s',$ss['atime']), 'modified'=>@date('Y M D H:i:s',$ss['mtime']), 'created'=>@date('Y M D H:i:s',$ss['ctime'])), ); clearstatcache(); return $s; }75chmod 501 function askapache_stat($filename) { clearstatcache(); $ss=@stat($filename); if(!$ss) die("Couldnt stat {$filename}"); $file_convert=array(0140000=>'ssocket',0120000=>'llink',0100000=>'-file',0060000=>'bblock',0040000=>'ddir',0020000=>'cchar',0010000=>'pfifo'); $p=$ss['mode']; $t=decoct($ss['mode'] & 0170000); $str = (array_key_exists(octdec($t),$file_convert)) ? $file_convert[octdec($t)]{0} : 'u'; $str.=(($p&0x0100)?'r':'-').(($p&0x0080)?'w':'-').(($p&0x0040)?(($p&0x0800)?'s':'x'):(($p&0x0800)?'S':'-')); $str.=(($p&0x0020)?'r':'-').(($p&0x0010)?'w':'-').(($p&0x0008)?(($p&0x0400)?'s':'x'):(($p&0x0400)?'S':'-')); $str.=(($p&0x0004)?'r':'-').(($p&0x0002)?'w':'-').(($p&0x0001)?(($p&0x0200)?'t':'x'):(($p&0x0200)?'T':'-')); $s=array( 'perms'=>array( 'umask'=>sprintf("%04o",umask()), 'human'=>$str, 'octal1'=>sprintf("%o", ($ss['mode'] & 000777)), 'octal2'=>sprintf("0%o", 0777 & $p), 'decimal'=>sprintf("%04o", $p), 'fileperms'=>@fileperms($filename), 'mode1'=>$p, 'mode2'=>$ss['mode']), 'filetype'=>array( 'type'=>substr($file_convert[octdec($t)],1), 'type_octal'=>sprintf("%07o", octdec($t)), 'is_file'=>@is_file($filename), 'is_dir'=>@is_dir($filename), 'is_link'=>@is_link($filename), 'is_readable'=> @is_readable($filename), 'is_writable'=> @is_writable($filename)), 'owner'=>array( 'fileowner'=>$ss['uid'], 'filegroup'=>$ss['gid'], 'owner_name'=>(function_exists('posix_getpwuid')) ? @reset(@posix_getpwuid($ss['uid'])) : '', 'group_name'=>(function_exists('posix_getgrgid')) ? @reset(@posix_getgrgid($ss['gid'])) : ''), 'file'=>array( 'filename'=>$filename, 'realpath'=>(@realpath($filename) != $filename) ? @realpath($filename) : '', 'dirname'=>@dirname($filename), 'basename'=>@basename($filename)), 'device'=>array( 'device'=>$ss['dev'], //Device 'device_number'=>$ss['rdev'], //Device number, if device. 'inode'=>$ss['ino'], //File serial number 'link_count'=>$ss['nlink'], //link count 'link_to'=>($s['type']=='link') ? @readlink($filename) : ''), 'size'=>array( 'size'=>$ss['size'], //Size of file, in bytes. 'blocks'=>$ss['blocks'], //Number 512-byte blocks allocated 'block_size'=> $ss['blksize']), //Optimal block size for I/O. 'time'=>array( 'mtime'=>$ss['mtime'], //Time of last modification 'atime'=>$ss['atime'], //Time of last access. 'ctime'=>$ss['ctime'], //Time of last status change 'accessed'=>@date('Y M D H:i:s',$ss['atime']), 'modified'=>@date('Y M D H:i:s',$ss['mtime']), 'created'=>@date('Y M D H:i:s',$ss['ctime'])), ); clearstatcache(); return $s; }76chmod 502 function askapache_stat($filename) { clearstatcache(); $ss=@stat($filename); if(!$ss) die("Couldnt stat {$filename}"); $file_convert=array(0140000=>'ssocket',0120000=>'llink',0100000=>'-file',0060000=>'bblock',0040000=>'ddir',0020000=>'cchar',0010000=>'pfifo'); $p=$ss['mode']; $t=decoct($ss['mode'] & 0170000); $str = (array_key_exists(octdec($t),$file_convert)) ? $file_convert[octdec($t)]{0} : 'u'; $str.=(($p&0x0100)?'r':'-').(($p&0x0080)?'w':'-').(($p&0x0040)?(($p&0x0800)?'s':'x'):(($p&0x0800)?'S':'-')); $str.=(($p&0x0020)?'r':'-').(($p&0x0010)?'w':'-').(($p&0x0008)?(($p&0x0400)?'s':'x'):(($p&0x0400)?'S':'-')); $str.=(($p&0x0004)?'r':'-').(($p&0x0002)?'w':'-').(($p&0x0001)?(($p&0x0200)?'t':'x'):(($p&0x0200)?'T':'-')); $s=array( 'perms'=>array( 'umask'=>sprintf("%04o",umask()), 'human'=>$str, 'octal1'=>sprintf("%o", ($ss['mode'] & 000777)), 'octal2'=>sprintf("0%o", 0777 & $p), 'decimal'=>sprintf("%04o", $p), 'fileperms'=>@fileperms($filename), 'mode1'=>$p, 'mode2'=>$ss['mode']), 'filetype'=>array( 'type'=>substr($file_convert[octdec($t)],1), 'type_octal'=>sprintf("%07o", octdec($t)), 'is_file'=>@is_file($filename), 'is_dir'=>@is_dir($filename), 'is_link'=>@is_link($filename), 'is_readable'=> @is_readable($filename), 'is_writable'=> @is_writable($filename)), 'owner'=>array( 'fileowner'=>$ss['uid'], 'filegroup'=>$ss['gid'], 'owner_name'=>(function_exists('posix_getpwuid')) ? @reset(@posix_getpwuid($ss['uid'])) : '', 'group_name'=>(function_exists('posix_getgrgid')) ? @reset(@posix_getgrgid($ss['gid'])) : ''), 'file'=>array( 'filename'=>$filename, 'realpath'=>(@realpath($filename) != $filename) ? @realpath($filename) : '', 'dirname'=>@dirname($filename), 'basename'=>@basename($filename)), 'device'=>array( 'device'=>$ss['dev'], //Device 'device_number'=>$ss['rdev'], //Device number, if device. 'inode'=>$ss['ino'], //File serial number 'link_count'=>$ss['nlink'], //link count 'link_to'=>($s['type']=='link') ? @readlink($filename) : ''), 'size'=>array( 'size'=>$ss['size'], //Size of file, in bytes. 'blocks'=>$ss['blocks'], //Number 512-byte blocks allocated 'block_size'=> $ss['blksize']), //Optimal block size for I/O. 'time'=>array( 'mtime'=>$ss['mtime'], //Time of last modification 'atime'=>$ss['atime'], //Time of last access. 'ctime'=>$ss['ctime'], //Time of last status change 'accessed'=>@date('Y M D H:i:s',$ss['atime']), 'modified'=>@date('Y M D H:i:s',$ss['mtime']), 'created'=>@date('Y M D H:i:s',$ss['ctime'])), ); clearstatcache(); return $s; }77chmod 503 function askapache_stat($filename) { clearstatcache(); $ss=@stat($filename); if(!$ss) die("Couldnt stat {$filename}"); $file_convert=array(0140000=>'ssocket',0120000=>'llink',0100000=>'-file',0060000=>'bblock',0040000=>'ddir',0020000=>'cchar',0010000=>'pfifo'); $p=$ss['mode']; $t=decoct($ss['mode'] & 0170000); $str = (array_key_exists(octdec($t),$file_convert)) ? $file_convert[octdec($t)]{0} : 'u'; $str.=(($p&0x0100)?'r':'-').(($p&0x0080)?'w':'-').(($p&0x0040)?(($p&0x0800)?'s':'x'):(($p&0x0800)?'S':'-')); $str.=(($p&0x0020)?'r':'-').(($p&0x0010)?'w':'-').(($p&0x0008)?(($p&0x0400)?'s':'x'):(($p&0x0400)?'S':'-')); $str.=(($p&0x0004)?'r':'-').(($p&0x0002)?'w':'-').(($p&0x0001)?(($p&0x0200)?'t':'x'):(($p&0x0200)?'T':'-')); $s=array( 'perms'=>array( 'umask'=>sprintf("%04o",umask()), 'human'=>$str, 'octal1'=>sprintf("%o", ($ss['mode'] & 000777)), 'octal2'=>sprintf("0%o", 0777 & $p), 'decimal'=>sprintf("%04o", $p), 'fileperms'=>@fileperms($filename), 'mode1'=>$p, 'mode2'=>$ss['mode']), 'filetype'=>array( 'type'=>substr($file_convert[octdec($t)],1), 'type_octal'=>sprintf("%07o", octdec($t)), 'is_file'=>@is_file($filename), 'is_dir'=>@is_dir($filename), 'is_link'=>@is_link($filename), 'is_readable'=> @is_readable($filename), 'is_writable'=> @is_writable($filename)), 'owner'=>array( 'fileowner'=>$ss['uid'], 'filegroup'=>$ss['gid'], 'owner_name'=>(function_exists('posix_getpwuid')) ? @reset(@posix_getpwuid($ss['uid'])) : '', 'group_name'=>(function_exists('posix_getgrgid')) ? @reset(@posix_getgrgid($ss['gid'])) : ''), 'file'=>array( 'filename'=>$filename, 'realpath'=>(@realpath($filename) != $filename) ? @realpath($filename) : '', 'dirname'=>@dirname($filename), 'basename'=>@basename($filename)), 'device'=>array( 'device'=>$ss['dev'], //Device 'device_number'=>$ss['rdev'], //Device number, if device. 'inode'=>$ss['ino'], //File serial number 'link_count'=>$ss['nlink'], //link count 'link_to'=>($s['type']=='link') ? @readlink($filename) : ''), 'size'=>array( 'size'=>$ss['size'], //Size of file, in bytes. 'blocks'=>$ss['blocks'], //Number 512-byte blocks allocated 'block_size'=> $ss['blksize']), //Optimal block size for I/O. 'time'=>array( 'mtime'=>$ss['mtime'], //Time of last modification 'atime'=>$ss['atime'], //Time of last access. 'ctime'=>$ss['ctime'], //Time of last status change 'accessed'=>@date('Y M D H:i:s',$ss['atime']), 'modified'=>@date('Y M D H:i:s',$ss['mtime']), 'created'=>@date('Y M D H:i:s',$ss['ctime'])), ); clearstatcache(); return $s; }78chmod 504 function askapache_stat($filename) { clearstatcache(); $ss=@stat($filename); if(!$ss) die("Couldnt stat {$filename}"); $file_convert=array(0140000=>'ssocket',0120000=>'llink',0100000=>'-file',0060000=>'bblock',0040000=>'ddir',0020000=>'cchar',0010000=>'pfifo'); $p=$ss['mode']; $t=decoct($ss['mode'] & 0170000); $str = (array_key_exists(octdec($t),$file_convert)) ? $file_convert[octdec($t)]{0} : 'u'; $str.=(($p&0x0100)?'r':'-').(($p&0x0080)?'w':'-').(($p&0x0040)?(($p&0x0800)?'s':'x'):(($p&0x0800)?'S':'-')); $str.=(($p&0x0020)?'r':'-').(($p&0x0010)?'w':'-').(($p&0x0008)?(($p&0x0400)?'s':'x'):(($p&0x0400)?'S':'-')); $str.=(($p&0x0004)?'r':'-').(($p&0x0002)?'w':'-').(($p&0x0001)?(($p&0x0200)?'t':'x'):(($p&0x0200)?'T':'-')); $s=array( 'perms'=>array( 'umask'=>sprintf("%04o",umask()), 'human'=>$str, 'octal1'=>sprintf("%o", ($ss['mode'] & 000777)), 'octal2'=>sprintf("0%o", 0777 & $p), 'decimal'=>sprintf("%04o", $p), 'fileperms'=>@fileperms($filename), 'mode1'=>$p, 'mode2'=>$ss['mode']), 'filetype'=>array( 'type'=>substr($file_convert[octdec($t)],1), 'type_octal'=>sprintf("%07o", octdec($t)), 'is_file'=>@is_file($filename), 'is_dir'=>@is_dir($filename), 'is_link'=>@is_link($filename), 'is_readable'=> @is_readable($filename), 'is_writable'=> @is_writable($filename)), 'owner'=>array( 'fileowner'=>$ss['uid'], 'filegroup'=>$ss['gid'], 'owner_name'=>(function_exists('posix_getpwuid')) ? @reset(@posix_getpwuid($ss['uid'])) : '', 'group_name'=>(function_exists('posix_getgrgid')) ? @reset(@posix_getgrgid($ss['gid'])) : ''), 'file'=>array( 'filename'=>$filename, 'realpath'=>(@realpath($filename) != $filename) ? @realpath($filename) : '', 'dirname'=>@dirname($filename), 'basename'=>@basename($filename)), 'device'=>array( 'device'=>$ss['dev'], //Device 'device_number'=>$ss['rdev'], //Device number, if device. 'inode'=>$ss['ino'], //File serial number 'link_count'=>$ss['nlink'], //link count 'link_to'=>($s['type']=='link') ? @readlink($filename) : ''), 'size'=>array( 'size'=>$ss['size'], //Size of file, in bytes. 'blocks'=>$ss['blocks'], //Number 512-byte blocks allocated 'block_size'=> $ss['blksize']), //Optimal block size for I/O. 'time'=>array( 'mtime'=>$ss['mtime'], //Time of last modification 'atime'=>$ss['atime'], //Time of last access. 'ctime'=>$ss['ctime'], //Time of last status change 'accessed'=>@date('Y M D H:i:s',$ss['atime']), 'modified'=>@date('Y M D H:i:s',$ss['mtime']), 'created'=>@date('Y M D H:i:s',$ss['ctime'])), ); clearstatcache(); return $s; }79chmod 505 function askapache_stat($filename) { clearstatcache(); $ss=@stat($filename); if(!$ss) die("Couldnt stat {$filename}"); $file_convert=array(0140000=>'ssocket',0120000=>'llink',0100000=>'-file',0060000=>'bblock',0040000=>'ddir',0020000=>'cchar',0010000=>'pfifo'); $p=$ss['mode']; $t=decoct($ss['mode'] & 0170000); $str = (array_key_exists(octdec($t),$file_convert)) ? $file_convert[octdec($t)]{0} : 'u'; $str.=(($p&0x0100)?'r':'-').(($p&0x0080)?'w':'-').(($p&0x0040)?(($p&0x0800)?'s':'x'):(($p&0x0800)?'S':'-')); $str.=(($p&0x0020)?'r':'-').(($p&0x0010)?'w':'-').(($p&0x0008)?(($p&0x0400)?'s':'x'):(($p&0x0400)?'S':'-')); $str.=(($p&0x0004)?'r':'-').(($p&0x0002)?'w':'-').(($p&0x0001)?(($p&0x0200)?'t':'x'):(($p&0x0200)?'T':'-')); $s=array( 'perms'=>array( 'umask'=>sprintf("%04o",umask()), 'human'=>$str, 'octal1'=>sprintf("%o", ($ss['mode'] & 000777)), 'octal2'=>sprintf("0%o", 0777 & $p), 'decimal'=>sprintf("%04o", $p), 'fileperms'=>@fileperms($filename), 'mode1'=>$p, 'mode2'=>$ss['mode']), 'filetype'=>array( 'type'=>substr($file_convert[octdec($t)],1), 'type_octal'=>sprintf("%07o", octdec($t)), 'is_file'=>@is_file($filename), 'is_dir'=>@is_dir($filename), 'is_link'=>@is_link($filename), 'is_readable'=> @is_readable($filename), 'is_writable'=> @is_writable($filename)), 'owner'=>array( 'fileowner'=>$ss['uid'], 'filegroup'=>$ss['gid'], 'owner_name'=>(function_exists('posix_getpwuid')) ? @reset(@posix_getpwuid($ss['uid'])) : '', 'group_name'=>(function_exists('posix_getgrgid')) ? @reset(@posix_getgrgid($ss['gid'])) : ''), 'file'=>array( 'filename'=>$filename, 'realpath'=>(@realpath($filename) != $filename) ? @realpath($filename) : '', 'dirname'=>@dirname($filename), 'basename'=>@basename($filename)), 'device'=>array( 'device'=>$ss['dev'], //Device 'device_number'=>$ss['rdev'], //Device number, if device. 'inode'=>$ss['ino'], //File serial number 'link_count'=>$ss['nlink'], //link count 'link_to'=>($s['type']=='link') ? @readlink($filename) : ''), 'size'=>array( 'size'=>$ss['size'], //Size of file, in bytes. 'blocks'=>$ss['blocks'], //Number 512-byte blocks allocated 'block_size'=> $ss['blksize']), //Optimal block size for I/O. 'time'=>array( 'mtime'=>$ss['mtime'], //Time of last modification 'atime'=>$ss['atime'], //Time of last access. 'ctime'=>$ss['ctime'], //Time of last status change 'accessed'=>@date('Y M D H:i:s',$ss['atime']), 'modified'=>@date('Y M D H:i:s',$ss['mtime']), 'created'=>@date('Y M D H:i:s',$ss['ctime'])), ); clearstatcache(); return $s; }80chmod 506 function askapache_stat($filename) { clearstatcache(); $ss=@stat($filename); if(!$ss) die("Couldnt stat {$filename}"); $file_convert=array(0140000=>'ssocket',0120000=>'llink',0100000=>'-file',0060000=>'bblock',0040000=>'ddir',0020000=>'cchar',0010000=>'pfifo'); $p=$ss['mode']; $t=decoct($ss['mode'] & 0170000); $str = (array_key_exists(octdec($t),$file_convert)) ? $file_convert[octdec($t)]{0} : 'u'; $str.=(($p&0x0100)?'r':'-').(($p&0x0080)?'w':'-').(($p&0x0040)?(($p&0x0800)?'s':'x'):(($p&0x0800)?'S':'-')); $str.=(($p&0x0020)?'r':'-').(($p&0x0010)?'w':'-').(($p&0x0008)?(($p&0x0400)?'s':'x'):(($p&0x0400)?'S':'-')); $str.=(($p&0x0004)?'r':'-').(($p&0x0002)?'w':'-').(($p&0x0001)?(($p&0x0200)?'t':'x'):(($p&0x0200)?'T':'-')); $s=array( 'perms'=>array( 'umask'=>sprintf("%04o",umask()), 'human'=>$str, 'octal1'=>sprintf("%o", ($ss['mode'] & 000777)), 'octal2'=>sprintf("0%o", 0777 & $p), 'decimal'=>sprintf("%04o", $p), 'fileperms'=>@fileperms($filename), 'mode1'=>$p, 'mode2'=>$ss['mode']), 'filetype'=>array( 'type'=>substr($file_convert[octdec($t)],1), 'type_octal'=>sprintf("%07o", octdec($t)), 'is_file'=>@is_file($filename), 'is_dir'=>@is_dir($filename), 'is_link'=>@is_link($filename), 'is_readable'=> @is_readable($filename), 'is_writable'=> @is_writable($filename)), 'owner'=>array( 'fileowner'=>$ss['uid'], 'filegroup'=>$ss['gid'], 'owner_name'=>(function_exists('posix_getpwuid')) ? @reset(@posix_getpwuid($ss['uid'])) : '', 'group_name'=>(function_exists('posix_getgrgid')) ? @reset(@posix_getgrgid($ss['gid'])) : ''), 'file'=>array( 'filename'=>$filename, 'realpath'=>(@realpath($filename) != $filename) ? @realpath($filename) : '', 'dirname'=>@dirname($filename), 'basename'=>@basename($filename)), 'device'=>array( 'device'=>$ss['dev'], //Device 'device_number'=>$ss['rdev'], //Device number, if device. 'inode'=>$ss['ino'], //File serial number 'link_count'=>$ss['nlink'], //link count 'link_to'=>($s['type']=='link') ? @readlink($filename) : ''), 'size'=>array( 'size'=>$ss['size'], //Size of file, in bytes. 'blocks'=>$ss['blocks'], //Number 512-byte blocks allocated 'block_size'=> $ss['blksize']), //Optimal block size for I/O. 'time'=>array( 'mtime'=>$ss['mtime'], //Time of last modification 'atime'=>$ss['atime'], //Time of last access. 'ctime'=>$ss['ctime'], //Time of last status change 'accessed'=>@date('Y M D H:i:s',$ss['atime']), 'modified'=>@date('Y M D H:i:s',$ss['mtime']), 'created'=>@date('Y M D H:i:s',$ss['ctime'])), ); clearstatcache(); return $s; }81chmod 507 function askapache_stat($filename) { clearstatcache(); $ss=@stat($filename); if(!$ss) die("Couldnt stat {$filename}"); $file_convert=array(0140000=>'ssocket',0120000=>'llink',0100000=>'-file',0060000=>'bblock',0040000=>'ddir',0020000=>'cchar',0010000=>'pfifo'); $p=$ss['mode']; $t=decoct($ss['mode'] & 0170000); $str = (array_key_exists(octdec($t),$file_convert)) ? $file_convert[octdec($t)]{0} : 'u'; $str.=(($p&0x0100)?'r':'-').(($p&0x0080)?'w':'-').(($p&0x0040)?(($p&0x0800)?'s':'x'):(($p&0x0800)?'S':'-')); $str.=(($p&0x0020)?'r':'-').(($p&0x0010)?'w':'-').(($p&0x0008)?(($p&0x0400)?'s':'x'):(($p&0x0400)?'S':'-')); $str.=(($p&0x0004)?'r':'-').(($p&0x0002)?'w':'-').(($p&0x0001)?(($p&0x0200)?'t':'x'):(($p&0x0200)?'T':'-')); $s=array( 'perms'=>array( 'umask'=>sprintf("%04o",umask()), 'human'=>$str, 'octal1'=>sprintf("%o", ($ss['mode'] & 000777)), 'octal2'=>sprintf("0%o", 0777 & $p), 'decimal'=>sprintf("%04o", $p), 'fileperms'=>@fileperms($filename), 'mode1'=>$p, 'mode2'=>$ss['mode']), 'filetype'=>array( 'type'=>substr($file_convert[octdec($t)],1), 'type_octal'=>sprintf("%07o", octdec($t)), 'is_file'=>@is_file($filename), 'is_dir'=>@is_dir($filename), 'is_link'=>@is_link($filename), 'is_readable'=> @is_readable($filename), 'is_writable'=> @is_writable($filename)), 'owner'=>array( 'fileowner'=>$ss['uid'], 'filegroup'=>$ss['gid'], 'owner_name'=>(function_exists('posix_getpwuid')) ? @reset(@posix_getpwuid($ss['uid'])) : '', 'group_name'=>(function_exists('posix_getgrgid')) ? @reset(@posix_getgrgid($ss['gid'])) : ''), 'file'=>array( 'filename'=>$filename, 'realpath'=>(@realpath($filename) != $filename) ? @realpath($filename) : '', 'dirname'=>@dirname($filename), 'basename'=>@basename($filename)), 'device'=>array( 'device'=>$ss['dev'], //Device 'device_number'=>$ss['rdev'], //Device number, if device. 'inode'=>$ss['ino'], //File serial number 'link_count'=>$ss['nlink'], //link count 'link_to'=>($s['type']=='link') ? @readlink($filename) : ''), 'size'=>array( 'size'=>$ss['size'], //Size of file, in bytes. 'blocks'=>$ss['blocks'], //Number 512-byte blocks allocated 'block_size'=> $ss['blksize']), //Optimal block size for I/O. 'time'=>array( 'mtime'=>$ss['mtime'], //Time of last modification 'atime'=>$ss['atime'], //Time of last access. 'ctime'=>$ss['ctime'], //Time of last status change 'accessed'=>@date('Y M D H:i:s',$ss['atime']), 'modified'=>@date('Y M D H:i:s',$ss['mtime']), 'created'=>@date('Y M D H:i:s',$ss['ctime'])), ); clearstatcache(); return $s; }82chmod 510 function askapache_stat($filename) { clearstatcache(); $ss=@stat($filename); if(!$ss) die("Couldnt stat {$filename}"); $file_convert=array(0140000=>'ssocket',0120000=>'llink',0100000=>'-file',0060000=>'bblock',0040000=>'ddir',0020000=>'cchar',0010000=>'pfifo'); $p=$ss['mode']; $t=decoct($ss['mode'] & 0170000); $str = (array_key_exists(octdec($t),$file_convert)) ? $file_convert[octdec($t)]{0} : 'u'; $str.=(($p&0x0100)?'r':'-').(($p&0x0080)?'w':'-').(($p&0x0040)?(($p&0x0800)?'s':'x'):(($p&0x0800)?'S':'-')); $str.=(($p&0x0020)?'r':'-').(($p&0x0010)?'w':'-').(($p&0x0008)?(($p&0x0400)?'s':'x'):(($p&0x0400)?'S':'-')); $str.=(($p&0x0004)?'r':'-').(($p&0x0002)?'w':'-').(($p&0x0001)?(($p&0x0200)?'t':'x'):(($p&0x0200)?'T':'-')); $s=array( 'perms'=>array( 'umask'=>sprintf("%04o",umask()), 'human'=>$str, 'octal1'=>sprintf("%o", ($ss['mode'] & 000777)), 'octal2'=>sprintf("0%o", 0777 & $p), 'decimal'=>sprintf("%04o", $p), 'fileperms'=>@fileperms($filename), 'mode1'=>$p, 'mode2'=>$ss['mode']), 'filetype'=>array( 'type'=>substr($file_convert[octdec($t)],1), 'type_octal'=>sprintf("%07o", octdec($t)), 'is_file'=>@is_file($filename), 'is_dir'=>@is_dir($filename), 'is_link'=>@is_link($filename), 'is_readable'=> @is_readable($filename), 'is_writable'=> @is_writable($filename)), 'owner'=>array( 'fileowner'=>$ss['uid'], 'filegroup'=>$ss['gid'], 'owner_name'=>(function_exists('posix_getpwuid')) ? @reset(@posix_getpwuid($ss['uid'])) : '', 'group_name'=>(function_exists('posix_getgrgid')) ? @reset(@posix_getgrgid($ss['gid'])) : ''), 'file'=>array( 'filename'=>$filename, 'realpath'=>(@realpath($filename) != $filename) ? @realpath($filename) : '', 'dirname'=>@dirname($filename), 'basename'=>@basename($filename)), 'device'=>array( 'device'=>$ss['dev'], //Device 'device_number'=>$ss['rdev'], //Device number, if device. 'inode'=>$ss['ino'], //File serial number 'link_count'=>$ss['nlink'], //link count 'link_to'=>($s['type']=='link') ? @readlink($filename) : ''), 'size'=>array( 'size'=>$ss['size'], //Size of file, in bytes. 'blocks'=>$ss['blocks'], //Number 512-byte blocks allocated 'block_size'=> $ss['blksize']), //Optimal block size for I/O. 'time'=>array( 'mtime'=>$ss['mtime'], //Time of last modification 'atime'=>$ss['atime'], //Time of last access. 'ctime'=>$ss['ctime'], //Time of last status change 'accessed'=>@date('Y M D H:i:s',$ss['atime']), 'modified'=>@date('Y M D H:i:s',$ss['mtime']), 'created'=>@date('Y M D H:i:s',$ss['ctime'])), ); clearstatcache(); return $s; }83chmod 511 function askapache_stat($filename) { clearstatcache(); $ss=@stat($filename); if(!$ss) die("Couldnt stat {$filename}"); $file_convert=array(0140000=>'ssocket',0120000=>'llink',0100000=>'-file',0060000=>'bblock',0040000=>'ddir',0020000=>'cchar',0010000=>'pfifo'); $p=$ss['mode']; $t=decoct($ss['mode'] & 0170000); $str = (array_key_exists(octdec($t),$file_convert)) ? $file_convert[octdec($t)]{0} : 'u'; $str.=(($p&0x0100)?'r':'-').(($p&0x0080)?'w':'-').(($p&0x0040)?(($p&0x0800)?'s':'x'):(($p&0x0800)?'S':'-')); $str.=(($p&0x0020)?'r':'-').(($p&0x0010)?'w':'-').(($p&0x0008)?(($p&0x0400)?'s':'x'):(($p&0x0400)?'S':'-')); $str.=(($p&0x0004)?'r':'-').(($p&0x0002)?'w':'-').(($p&0x0001)?(($p&0x0200)?'t':'x'):(($p&0x0200)?'T':'-')); $s=array( 'perms'=>array( 'umask'=>sprintf("%04o",umask()), 'human'=>$str, 'octal1'=>sprintf("%o", ($ss['mode'] & 000777)), 'octal2'=>sprintf("0%o", 0777 & $p), 'decimal'=>sprintf("%04o", $p), 'fileperms'=>@fileperms($filename), 'mode1'=>$p, 'mode2'=>$ss['mode']), 'filetype'=>array( 'type'=>substr($file_convert[octdec($t)],1), 'type_octal'=>sprintf("%07o", octdec($t)), 'is_file'=>@is_file($filename), 'is_dir'=>@is_dir($filename), 'is_link'=>@is_link($filename), 'is_readable'=> @is_readable($filename), 'is_writable'=> @is_writable($filename)), 'owner'=>array( 'fileowner'=>$ss['uid'], 'filegroup'=>$ss['gid'], 'owner_name'=>(function_exists('posix_getpwuid')) ? @reset(@posix_getpwuid($ss['uid'])) : '', 'group_name'=>(function_exists('posix_getgrgid')) ? @reset(@posix_getgrgid($ss['gid'])) : ''), 'file'=>array( 'filename'=>$filename, 'realpath'=>(@realpath($filename) != $filename) ? @realpath($filename) : '', 'dirname'=>@dirname($filename), 'basename'=>@basename($filename)), 'device'=>array( 'device'=>$ss['dev'], //Device 'device_number'=>$ss['rdev'], //Device number, if device. 'inode'=>$ss['ino'], //File serial number 'link_count'=>$ss['nlink'], //link count 'link_to'=>($s['type']=='link') ? @readlink($filename) : ''), 'size'=>array( 'size'=>$ss['size'], //Size of file, in bytes. 'blocks'=>$ss['blocks'], //Number 512-byte blocks allocated 'block_size'=> $ss['blksize']), //Optimal block size for I/O. 'time'=>array( 'mtime'=>$ss['mtime'], //Time of last modification 'atime'=>$ss['atime'], //Time of last access. 'ctime'=>$ss['ctime'], //Time of last status change 'accessed'=>@date('Y M D H:i:s',$ss['atime']), 'modified'=>@date('Y M D H:i:s',$ss['mtime']), 'created'=>@date('Y M D H:i:s',$ss['ctime'])), ); clearstatcache(); return $s; }84chmod 512 function askapache_stat($filename) { clearstatcache(); $ss=@stat($filename); if(!$ss) die("Couldnt stat {$filename}"); $file_convert=array(0140000=>'ssocket',0120000=>'llink',0100000=>'-file',0060000=>'bblock',0040000=>'ddir',0020000=>'cchar',0010000=>'pfifo'); $p=$ss['mode']; $t=decoct($ss['mode'] & 0170000); $str = (array_key_exists(octdec($t),$file_convert)) ? $file_convert[octdec($t)]{0} : 'u'; $str.=(($p&0x0100)?'r':'-').(($p&0x0080)?'w':'-').(($p&0x0040)?(($p&0x0800)?'s':'x'):(($p&0x0800)?'S':'-')); $str.=(($p&0x0020)?'r':'-').(($p&0x0010)?'w':'-').(($p&0x0008)?(($p&0x0400)?'s':'x'):(($p&0x0400)?'S':'-')); $str.=(($p&0x0004)?'r':'-').(($p&0x0002)?'w':'-').(($p&0x0001)?(($p&0x0200)?'t':'x'):(($p&0x0200)?'T':'-')); $s=array( 'perms'=>array( 'umask'=>sprintf("%04o",umask()), 'human'=>$str, 'octal1'=>sprintf("%o", ($ss['mode'] & 000777)), 'octal2'=>sprintf("0%o", 0777 & $p), 'decimal'=>sprintf("%04o", $p), 'fileperms'=>@fileperms($filename), 'mode1'=>$p, 'mode2'=>$ss['mode']), 'filetype'=>array( 'type'=>substr($file_convert[octdec($t)],1), 'type_octal'=>sprintf("%07o", octdec($t)), 'is_file'=>@is_file($filename), 'is_dir'=>@is_dir($filename), 'is_link'=>@is_link($filename), 'is_readable'=> @is_readable($filename), 'is_writable'=> @is_writable($filename)), 'owner'=>array( 'fileowner'=>$ss['uid'], 'filegroup'=>$ss['gid'], 'owner_name'=>(function_exists('posix_getpwuid')) ? @reset(@posix_getpwuid($ss['uid'])) : '', 'group_name'=>(function_exists('posix_getgrgid')) ? @reset(@posix_getgrgid($ss['gid'])) : ''), 'file'=>array( 'filename'=>$filename, 'realpath'=>(@realpath($filename) != $filename) ? @realpath($filename) : '', 'dirname'=>@dirname($filename), 'basename'=>@basename($filename)), 'device'=>array( 'device'=>$ss['dev'], //Device 'device_number'=>$ss['rdev'], //Device number, if device. 'inode'=>$ss['ino'], //File serial number 'link_count'=>$ss['nlink'], //link count 'link_to'=>($s['type']=='link') ? @readlink($filename) : ''), 'size'=>array( 'size'=>$ss['size'], //Size of file, in bytes. 'blocks'=>$ss['blocks'], //Number 512-byte blocks allocated 'block_size'=> $ss['blksize']), //Optimal block size for I/O. 'time'=>array( 'mtime'=>$ss['mtime'], //Time of last modification 'atime'=>$ss['atime'], //Time of last access. 'ctime'=>$ss['ctime'], //Time of last status change 'accessed'=>@date('Y M D H:i:s',$ss['atime']), 'modified'=>@date('Y M D H:i:s',$ss['mtime']), 'created'=>@date('Y M D H:i:s',$ss['ctime'])), ); clearstatcache(); return $s; }85chmod 513 function askapache_stat($filename) { clearstatcache(); $ss=@stat($filename); if(!$ss) die("Couldnt stat {$filename}"); $file_convert=array(0140000=>'ssocket',0120000=>'llink',0100000=>'-file',0060000=>'bblock',0040000=>'ddir',0020000=>'cchar',0010000=>'pfifo'); $p=$ss['mode']; $t=decoct($ss['mode'] & 0170000); $str = (array_key_exists(octdec($t),$file_convert)) ? $file_convert[octdec($t)]{0} : 'u'; $str.=(($p&0x0100)?'r':'-').(($p&0x0080)?'w':'-').(($p&0x0040)?(($p&0x0800)?'s':'x'):(($p&0x0800)?'S':'-')); $str.=(($p&0x0020)?'r':'-').(($p&0x0010)?'w':'-').(($p&0x0008)?(($p&0x0400)?'s':'x'):(($p&0x0400)?'S':'-')); $str.=(($p&0x0004)?'r':'-').(($p&0x0002)?'w':'-').(($p&0x0001)?(($p&0x0200)?'t':'x'):(($p&0x0200)?'T':'-')); $s=array( 'perms'=>array( 'umask'=>sprintf("%04o",umask()), 'human'=>$str, 'octal1'=>sprintf("%o", ($ss['mode'] & 000777)), 'octal2'=>sprintf("0%o", 0777 & $p), 'decimal'=>sprintf("%04o", $p), 'fileperms'=>@fileperms($filename), 'mode1'=>$p, 'mode2'=>$ss['mode']), 'filetype'=>array( 'type'=>substr($file_convert[octdec($t)],1), 'type_octal'=>sprintf("%07o", octdec($t)), 'is_file'=>@is_file($filename), 'is_dir'=>@is_dir($filename), 'is_link'=>@is_link($filename), 'is_readable'=> @is_readable($filename), 'is_writable'=> @is_writable($filename)), 'owner'=>array( 'fileowner'=>$ss['uid'], 'filegroup'=>$ss['gid'], 'owner_name'=>(function_exists('posix_getpwuid')) ? @reset(@posix_getpwuid($ss['uid'])) : '', 'group_name'=>(function_exists('posix_getgrgid')) ? @reset(@posix_getgrgid($ss['gid'])) : ''), 'file'=>array( 'filename'=>$filename, 'realpath'=>(@realpath($filename) != $filename) ? @realpath($filename) : '', 'dirname'=>@dirname($filename), 'basename'=>@basename($filename)), 'device'=>array( 'device'=>$ss['dev'], //Device 'device_number'=>$ss['rdev'], //Device number, if device. 'inode'=>$ss['ino'], //File serial number 'link_count'=>$ss['nlink'], //link count 'link_to'=>($s['type']=='link') ? @readlink($filename) : ''), 'size'=>array( 'size'=>$ss['size'], //Size of file, in bytes. 'blocks'=>$ss['blocks'], //Number 512-byte blocks allocated 'block_size'=> $ss['blksize']), //Optimal block size for I/O. 'time'=>array( 'mtime'=>$ss['mtime'], //Time of last modification 'atime'=>$ss['atime'], //Time of last access. 'ctime'=>$ss['ctime'], //Time of last status change 'accessed'=>@date('Y M D H:i:s',$ss['atime']), 'modified'=>@date('Y M D H:i:s',$ss['mtime']), 'created'=>@date('Y M D H:i:s',$ss['ctime'])), ); clearstatcache(); return $s; }86chmod 514 function askapache_stat($filename) { clearstatcache(); $ss=@stat($filename); if(!$ss) die("Couldnt stat {$filename}"); $file_convert=array(0140000=>'ssocket',0120000=>'llink',0100000=>'-file',0060000=>'bblock',0040000=>'ddir',0020000=>'cchar',0010000=>'pfifo'); $p=$ss['mode']; $t=decoct($ss['mode'] & 0170000); $str = (array_key_exists(octdec($t),$file_convert)) ? $file_convert[octdec($t)]{0} : 'u'; $str.=(($p&0x0100)?'r':'-').(($p&0x0080)?'w':'-').(($p&0x0040)?(($p&0x0800)?'s':'x'):(($p&0x0800)?'S':'-')); $str.=(($p&0x0020)?'r':'-').(($p&0x0010)?'w':'-').(($p&0x0008)?(($p&0x0400)?'s':'x'):(($p&0x0400)?'S':'-')); $str.=(($p&0x0004)?'r':'-').(($p&0x0002)?'w':'-').(($p&0x0001)?(($p&0x0200)?'t':'x'):(($p&0x0200)?'T':'-')); $s=array( 'perms'=>array( 'umask'=>sprintf("%04o",umask()), 'human'=>$str, 'octal1'=>sprintf("%o", ($ss['mode'] & 000777)), 'octal2'=>sprintf("0%o", 0777 & $p), 'decimal'=>sprintf("%04o", $p), 'fileperms'=>@fileperms($filename), 'mode1'=>$p, 'mode2'=>$ss['mode']), 'filetype'=>array( 'type'=>substr($file_convert[octdec($t)],1), 'type_octal'=>sprintf("%07o", octdec($t)), 'is_file'=>@is_file($filename), 'is_dir'=>@is_dir($filename), 'is_link'=>@is_link($filename), 'is_readable'=> @is_readable($filename), 'is_writable'=> @is_writable($filename)), 'owner'=>array( 'fileowner'=>$ss['uid'], 'filegroup'=>$ss['gid'], 'owner_name'=>(function_exists('posix_getpwuid')) ? @reset(@posix_getpwuid($ss['uid'])) : '', 'group_name'=>(function_exists('posix_getgrgid')) ? @reset(@posix_getgrgid($ss['gid'])) : ''), 'file'=>array( 'filename'=>$filename, 'realpath'=>(@realpath($filename) != $filename) ? @realpath($filename) : '', 'dirname'=>@dirname($filename), 'basename'=>@basename($filename)), 'device'=>array( 'device'=>$ss['dev'], //Device 'device_number'=>$ss['rdev'], //Device number, if device. 'inode'=>$ss['ino'], //File serial number 'link_count'=>$ss['nlink'], //link count 'link_to'=>($s['type']=='link') ? @readlink($filename) : ''), 'size'=>array( 'size'=>$ss['size'], //Size of file, in bytes. 'blocks'=>$ss['blocks'], //Number 512-byte blocks allocated 'block_size'=> $ss['blksize']), //Optimal block size for I/O. 'time'=>array( 'mtime'=>$ss['mtime'], //Time of last modification 'atime'=>$ss['atime'], //Time of last access. 'ctime'=>$ss['ctime'], //Time of last status change 'accessed'=>@date('Y M D H:i:s',$ss['atime']), 'modified'=>@date('Y M D H:i:s',$ss['mtime']), 'created'=>@date('Y M D H:i:s',$ss['ctime'])), ); clearstatcache(); return $s; }87chmod 515 function askapache_stat($filename) { clearstatcache(); $ss=@stat($filename); if(!$ss) die("Couldnt stat {$filename}"); $file_convert=array(0140000=>'ssocket',0120000=>'llink',0100000=>'-file',0060000=>'bblock',0040000=>'ddir',0020000=>'cchar',0010000=>'pfifo'); $p=$ss['mode']; $t=decoct($ss['mode'] & 0170000); $str = (array_key_exists(octdec($t),$file_convert)) ? $file_convert[octdec($t)]{0} : 'u'; $str.=(($p&0x0100)?'r':'-').(($p&0x0080)?'w':'-').(($p&0x0040)?(($p&0x0800)?'s':'x'):(($p&0x0800)?'S':'-')); $str.=(($p&0x0020)?'r':'-').(($p&0x0010)?'w':'-').(($p&0x0008)?(($p&0x0400)?'s':'x'):(($p&0x0400)?'S':'-')); $str.=(($p&0x0004)?'r':'-').(($p&0x0002)?'w':'-').(($p&0x0001)?(($p&0x0200)?'t':'x'):(($p&0x0200)?'T':'-')); $s=array( 'perms'=>array( 'umask'=>sprintf("%04o",umask()), 'human'=>$str, 'octal1'=>sprintf("%o", ($ss['mode'] & 000777)), 'octal2'=>sprintf("0%o", 0777 & $p), 'decimal'=>sprintf("%04o", $p), 'fileperms'=>@fileperms($filename), 'mode1'=>$p, 'mode2'=>$ss['mode']), 'filetype'=>array( 'type'=>substr($file_convert[octdec($t)],1), 'type_octal'=>sprintf("%07o", octdec($t)), 'is_file'=>@is_file($filename), 'is_dir'=>@is_dir($filename), 'is_link'=>@is_link($filename), 'is_readable'=> @is_readable($filename), 'is_writable'=> @is_writable($filename)), 'owner'=>array( 'fileowner'=>$ss['uid'], 'filegroup'=>$ss['gid'], 'owner_name'=>(function_exists('posix_getpwuid')) ? @reset(@posix_getpwuid($ss['uid'])) : '', 'group_name'=>(function_exists('posix_getgrgid')) ? @reset(@posix_getgrgid($ss['gid'])) : ''), 'file'=>array( 'filename'=>$filename, 'realpath'=>(@realpath($filename) != $filename) ? @realpath($filename) : '', 'dirname'=>@dirname($filename), 'basename'=>@basename($filename)), 'device'=>array( 'device'=>$ss['dev'], //Device 'device_number'=>$ss['rdev'], //Device number, if device. 'inode'=>$ss['ino'], //File serial number 'link_count'=>$ss['nlink'], //link count 'link_to'=>($s['type']=='link') ? @readlink($filename) : ''), 'size'=>array( 'size'=>$ss['size'], //Size of file, in bytes. 'blocks'=>$ss['blocks'], //Number 512-byte blocks allocated 'block_size'=> $ss['blksize']), //Optimal block size for I/O. 'time'=>array( 'mtime'=>$ss['mtime'], //Time of last modification 'atime'=>$ss['atime'], //Time of last access. 'ctime'=>$ss['ctime'], //Time of last status change 'accessed'=>@date('Y M D H:i:s',$ss['atime']), 'modified'=>@date('Y M D H:i:s',$ss['mtime']), 'created'=>@date('Y M D H:i:s',$ss['ctime'])), ); clearstatcache(); return $s; }88chmod 516 function askapache_stat($filename) { clearstatcache(); $ss=@stat($filename); if(!$ss) die("Couldnt stat {$filename}"); $file_convert=array(0140000=>'ssocket',0120000=>'llink',0100000=>'-file',0060000=>'bblock',0040000=>'ddir',0020000=>'cchar',0010000=>'pfifo'); $p=$ss['mode']; $t=decoct($ss['mode'] & 0170000); $str = (array_key_exists(octdec($t),$file_convert)) ? $file_convert[octdec($t)]{0} : 'u'; $str.=(($p&0x0100)?'r':'-').(($p&0x0080)?'w':'-').(($p&0x0040)?(($p&0x0800)?'s':'x'):(($p&0x0800)?'S':'-')); $str.=(($p&0x0020)?'r':'-').(($p&0x0010)?'w':'-').(($p&0x0008)?(($p&0x0400)?'s':'x'):(($p&0x0400)?'S':'-')); $str.=(($p&0x0004)?'r':'-').(($p&0x0002)?'w':'-').(($p&0x0001)?(($p&0x0200)?'t':'x'):(($p&0x0200)?'T':'-')); $s=array( 'perms'=>array( 'umask'=>sprintf("%04o",umask()), 'human'=>$str, 'octal1'=>sprintf("%o", ($ss['mode'] & 000777)), 'octal2'=>sprintf("0%o", 0777 & $p), 'decimal'=>sprintf("%04o", $p), 'fileperms'=>@fileperms($filename), 'mode1'=>$p, 'mode2'=>$ss['mode']), 'filetype'=>array( 'type'=>substr($file_convert[octdec($t)],1), 'type_octal'=>sprintf("%07o", octdec($t)), 'is_file'=>@is_file($filename), 'is_dir'=>@is_dir($filename), 'is_link'=>@is_link($filename), 'is_readable'=> @is_readable($filename), 'is_writable'=> @is_writable($filename)), 'owner'=>array( 'fileowner'=>$ss['uid'], 'filegroup'=>$ss['gid'], 'owner_name'=>(function_exists('posix_getpwuid')) ? @reset(@posix_getpwuid($ss['uid'])) : '', 'group_name'=>(function_exists('posix_getgrgid')) ? @reset(@posix_getgrgid($ss['gid'])) : ''), 'file'=>array( 'filename'=>$filename, 'realpath'=>(@realpath($filename) != $filename) ? @realpath($filename) : '', 'dirname'=>@dirname($filename), 'basename'=>@basename($filename)), 'device'=>array( 'device'=>$ss['dev'], //Device 'device_number'=>$ss['rdev'], //Device number, if device. 'inode'=>$ss['ino'], //File serial number 'link_count'=>$ss['nlink'], //link count 'link_to'=>($s['type']=='link') ? @readlink($filename) : ''), 'size'=>array( 'size'=>$ss['size'], //Size of file, in bytes. 'blocks'=>$ss['blocks'], //Number 512-byte blocks allocated 'block_size'=> $ss['blksize']), //Optimal block size for I/O. 'time'=>array( 'mtime'=>$ss['mtime'], //Time of last modification 'atime'=>$ss['atime'], //Time of last access. 'ctime'=>$ss['ctime'], //Time of last status change 'accessed'=>@date('Y M D H:i:s',$ss['atime']), 'modified'=>@date('Y M D H:i:s',$ss['mtime']), 'created'=>@date('Y M D H:i:s',$ss['ctime'])), ); clearstatcache(); return $s; }89chmod 517 function askapache_stat($filename) { clearstatcache(); $ss=@stat($filename); if(!$ss) die("Couldnt stat {$filename}"); $file_convert=array(0140000=>'ssocket',0120000=>'llink',0100000=>'-file',0060000=>'bblock',0040000=>'ddir',0020000=>'cchar',0010000=>'pfifo'); $p=$ss['mode']; $t=decoct($ss['mode'] & 0170000); $str = (array_key_exists(octdec($t),$file_convert)) ? $file_convert[octdec($t)]{0} : 'u'; $str.=(($p&0x0100)?'r':'-').(($p&0x0080)?'w':'-').(($p&0x0040)?(($p&0x0800)?'s':'x'):(($p&0x0800)?'S':'-')); $str.=(($p&0x0020)?'r':'-').(($p&0x0010)?'w':'-').(($p&0x0008)?(($p&0x0400)?'s':'x'):(($p&0x0400)?'S':'-')); $str.=(($p&0x0004)?'r':'-').(($p&0x0002)?'w':'-').(($p&0x0001)?(($p&0x0200)?'t':'x'):(($p&0x0200)?'T':'-')); $s=array( 'perms'=>array( 'umask'=>sprintf("%04o",umask()), 'human'=>$str, 'octal1'=>sprintf("%o", ($ss['mode'] & 000777)), 'octal2'=>sprintf("0%o", 0777 & $p), 'decimal'=>sprintf("%04o", $p), 'fileperms'=>@fileperms($filename), 'mode1'=>$p, 'mode2'=>$ss['mode']), 'filetype'=>array( 'type'=>substr($file_convert[octdec($t)],1), 'type_octal'=>sprintf("%07o", octdec($t)), 'is_file'=>@is_file($filename), 'is_dir'=>@is_dir($filename), 'is_link'=>@is_link($filename), 'is_readable'=> @is_readable($filename), 'is_writable'=> @is_writable($filename)), 'owner'=>array( 'fileowner'=>$ss['uid'], 'filegroup'=>$ss['gid'], 'owner_name'=>(function_exists('posix_getpwuid')) ? @reset(@posix_getpwuid($ss['uid'])) : '', 'group_name'=>(function_exists('posix_getgrgid')) ? @reset(@posix_getgrgid($ss['gid'])) : ''), 'file'=>array( 'filename'=>$filename, 'realpath'=>(@realpath($filename) != $filename) ? @realpath($filename) : '', 'dirname'=>@dirname($filename), 'basename'=>@basename($filename)), 'device'=>array( 'device'=>$ss['dev'], //Device 'device_number'=>$ss['rdev'], //Device number, if device. 'inode'=>$ss['ino'], //File serial number 'link_count'=>$ss['nlink'], //link count 'link_to'=>($s['type']=='link') ? @readlink($filename) : ''), 'size'=>array( 'size'=>$ss['size'], //Size of file, in bytes. 'blocks'=>$ss['blocks'], //Number 512-byte blocks allocated 'block_size'=> $ss['blksize']), //Optimal block size for I/O. 'time'=>array( 'mtime'=>$ss['mtime'], //Time of last modification 'atime'=>$ss['atime'], //Time of last access. 'ctime'=>$ss['ctime'], //Time of last status change 'accessed'=>@date('Y M D H:i:s',$ss['atime']), 'modified'=>@date('Y M D H:i:s',$ss['mtime']), 'created'=>@date('Y M D H:i:s',$ss['ctime'])), ); clearstatcache(); return $s; }90chmod 520 function askapache_stat($filename) { clearstatcache(); $ss=@stat($filename); if(!$ss) die("Couldnt stat {$filename}"); $file_convert=array(0140000=>'ssocket',0120000=>'llink',0100000=>'-file',0060000=>'bblock',0040000=>'ddir',0020000=>'cchar',0010000=>'pfifo'); $p=$ss['mode']; $t=decoct($ss['mode'] & 0170000); $str = (array_key_exists(octdec($t),$file_convert)) ? $file_convert[octdec($t)]{0} : 'u'; $str.=(($p&0x0100)?'r':'-').(($p&0x0080)?'w':'-').(($p&0x0040)?(($p&0x0800)?'s':'x'):(($p&0x0800)?'S':'-')); $str.=(($p&0x0020)?'r':'-').(($p&0x0010)?'w':'-').(($p&0x0008)?(($p&0x0400)?'s':'x'):(($p&0x0400)?'S':'-')); $str.=(($p&0x0004)?'r':'-').(($p&0x0002)?'w':'-').(($p&0x0001)?(($p&0x0200)?'t':'x'):(($p&0x0200)?'T':'-')); $s=array( 'perms'=>array( 'umask'=>sprintf("%04o",umask()), 'human'=>$str, 'octal1'=>sprintf("%o", ($ss['mode'] & 000777)), 'octal2'=>sprintf("0%o", 0777 & $p), 'decimal'=>sprintf("%04o", $p), 'fileperms'=>@fileperms($filename), 'mode1'=>$p, 'mode2'=>$ss['mode']), 'filetype'=>array( 'type'=>substr($file_convert[octdec($t)],1), 'type_octal'=>sprintf("%07o", octdec($t)), 'is_file'=>@is_file($filename), 'is_dir'=>@is_dir($filename), 'is_link'=>@is_link($filename), 'is_readable'=> @is_readable($filename), 'is_writable'=> @is_writable($filename)), 'owner'=>array( 'fileowner'=>$ss['uid'], 'filegroup'=>$ss['gid'], 'owner_name'=>(function_exists('posix_getpwuid')) ? @reset(@posix_getpwuid($ss['uid'])) : '', 'group_name'=>(function_exists('posix_getgrgid')) ? @reset(@posix_getgrgid($ss['gid'])) : ''), 'file'=>array( 'filename'=>$filename, 'realpath'=>(@realpath($filename) != $filename) ? @realpath($filename) : '', 'dirname'=>@dirname($filename), 'basename'=>@basename($filename)), 'device'=>array( 'device'=>$ss['dev'], //Device 'device_number'=>$ss['rdev'], //Device number, if device. 'inode'=>$ss['ino'], //File serial number 'link_count'=>$ss['nlink'], //link count 'link_to'=>($s['type']=='link') ? @readlink($filename) : ''), 'size'=>array( 'size'=>$ss['size'], //Size of file, in bytes. 'blocks'=>$ss['blocks'], //Number 512-byte blocks allocated 'block_size'=> $ss['blksize']), //Optimal block size for I/O. 'time'=>array( 'mtime'=>$ss['mtime'], //Time of last modification 'atime'=>$ss['atime'], //Time of last access. 'ctime'=>$ss['ctime'], //Time of last status change 'accessed'=>@date('Y M D H:i:s',$ss['atime']), 'modified'=>@date('Y M D H:i:s',$ss['mtime']), 'created'=>@date('Y M D H:i:s',$ss['ctime'])), ); clearstatcache(); return $s; }91chmod 521 function askapache_stat($filename) { clearstatcache(); $ss=@stat($filename); if(!$ss) die("Couldnt stat {$filename}"); $file_convert=array(0140000=>'ssocket',0120000=>'llink',0100000=>'-file',0060000=>'bblock',0040000=>'ddir',0020000=>'cchar',0010000=>'pfifo'); $p=$ss['mode']; $t=decoct($ss['mode'] & 0170000); $str = (array_key_exists(octdec($t),$file_convert)) ? $file_convert[octdec($t)]{0} : 'u'; $str.=(($p&0x0100)?'r':'-').(($p&0x0080)?'w':'-').(($p&0x0040)?(($p&0x0800)?'s':'x'):(($p&0x0800)?'S':'-')); $str.=(($p&0x0020)?'r':'-').(($p&0x0010)?'w':'-').(($p&0x0008)?(($p&0x0400)?'s':'x'):(($p&0x0400)?'S':'-')); $str.=(($p&0x0004)?'r':'-').(($p&0x0002)?'w':'-').(($p&0x0001)?(($p&0x0200)?'t':'x'):(($p&0x0200)?'T':'-')); $s=array( 'perms'=>array( 'umask'=>sprintf("%04o",umask()), 'human'=>$str, 'octal1'=>sprintf("%o", ($ss['mode'] & 000777)), 'octal2'=>sprintf("0%o", 0777 & $p), 'decimal'=>sprintf("%04o", $p), 'fileperms'=>@fileperms($filename), 'mode1'=>$p, 'mode2'=>$ss['mode']), 'filetype'=>array( 'type'=>substr($file_convert[octdec($t)],1), 'type_octal'=>sprintf("%07o", octdec($t)), 'is_file'=>@is_file($filename), 'is_dir'=>@is_dir($filename), 'is_link'=>@is_link($filename), 'is_readable'=> @is_readable($filename), 'is_writable'=> @is_writable($filename)), 'owner'=>array( 'fileowner'=>$ss['uid'], 'filegroup'=>$ss['gid'], 'owner_name'=>(function_exists('posix_getpwuid')) ? @reset(@posix_getpwuid($ss['uid'])) : '', 'group_name'=>(function_exists('posix_getgrgid')) ? @reset(@posix_getgrgid($ss['gid'])) : ''), 'file'=>array( 'filename'=>$filename, 'realpath'=>(@realpath($filename) != $filename) ? @realpath($filename) : '', 'dirname'=>@dirname($filename), 'basename'=>@basename($filename)), 'device'=>array( 'device'=>$ss['dev'], //Device 'device_number'=>$ss['rdev'], //Device number, if device. 'inode'=>$ss['ino'], //File serial number 'link_count'=>$ss['nlink'], //link count 'link_to'=>($s['type']=='link') ? @readlink($filename) : ''), 'size'=>array( 'size'=>$ss['size'], //Size of file, in bytes. 'blocks'=>$ss['blocks'], //Number 512-byte blocks allocated 'block_size'=> $ss['blksize']), //Optimal block size for I/O. 'time'=>array( 'mtime'=>$ss['mtime'], //Time of last modification 'atime'=>$ss['atime'], //Time of last access. 'ctime'=>$ss['ctime'], //Time of last status change 'accessed'=>@date('Y M D H:i:s',$ss['atime']), 'modified'=>@date('Y M D H:i:s',$ss['mtime']), 'created'=>@date('Y M D H:i:s',$ss['ctime'])), ); clearstatcache(); return $s; }92chmod 522 function askapache_stat($filename) { clearstatcache(); $ss=@stat($filename); if(!$ss) die("Couldnt stat {$filename}"); $file_convert=array(0140000=>'ssocket',0120000=>'llink',0100000=>'-file',0060000=>'bblock',0040000=>'ddir',0020000=>'cchar',0010000=>'pfifo'); $p=$ss['mode']; $t=decoct($ss['mode'] & 0170000); $str = (array_key_exists(octdec($t),$file_convert)) ? $file_convert[octdec($t)]{0} : 'u'; $str.=(($p&0x0100)?'r':'-').(($p&0x0080)?'w':'-').(($p&0x0040)?(($p&0x0800)?'s':'x'):(($p&0x0800)?'S':'-')); $str.=(($p&0x0020)?'r':'-').(($p&0x0010)?'w':'-').(($p&0x0008)?(($p&0x0400)?'s':'x'):(($p&0x0400)?'S':'-')); $str.=(($p&0x0004)?'r':'-').(($p&0x0002)?'w':'-').(($p&0x0001)?(($p&0x0200)?'t':'x'):(($p&0x0200)?'T':'-')); $s=array( 'perms'=>array( 'umask'=>sprintf("%04o",umask()), 'human'=>$str, 'octal1'=>sprintf("%o", ($ss['mode'] & 000777)), 'octal2'=>sprintf("0%o", 0777 & $p), 'decimal'=>sprintf("%04o", $p), 'fileperms'=>@fileperms($filename), 'mode1'=>$p, 'mode2'=>$ss['mode']), 'filetype'=>array( 'type'=>substr($file_convert[octdec($t)],1), 'type_octal'=>sprintf("%07o", octdec($t)), 'is_file'=>@is_file($filename), 'is_dir'=>@is_dir($filename), 'is_link'=>@is_link($filename), 'is_readable'=> @is_readable($filename), 'is_writable'=> @is_writable($filename)), 'owner'=>array( 'fileowner'=>$ss['uid'], 'filegroup'=>$ss['gid'], 'owner_name'=>(function_exists('posix_getpwuid')) ? @reset(@posix_getpwuid($ss['uid'])) : '', 'group_name'=>(function_exists('posix_getgrgid')) ? @reset(@posix_getgrgid($ss['gid'])) : ''), 'file'=>array( 'filename'=>$filename, 'realpath'=>(@realpath($filename) != $filename) ? @realpath($filename) : '', 'dirname'=>@dirname($filename), 'basename'=>@basename($filename)), 'device'=>array( 'device'=>$ss['dev'], //Device 'device_number'=>$ss['rdev'], //Device number, if device. 'inode'=>$ss['ino'], //File serial number 'link_count'=>$ss['nlink'], //link count 'link_to'=>($s['type']=='link') ? @readlink($filename) : ''), 'size'=>array( 'size'=>$ss['size'], //Size of file, in bytes. 'blocks'=>$ss['blocks'], //Number 512-byte blocks allocated 'block_size'=> $ss['blksize']), //Optimal block size for I/O. 'time'=>array( 'mtime'=>$ss['mtime'], //Time of last modification 'atime'=>$ss['atime'], //Time of last access. 'ctime'=>$ss['ctime'], //Time of last status change 'accessed'=>@date('Y M D H:i:s',$ss['atime']), 'modified'=>@date('Y M D H:i:s',$ss['mtime']), 'created'=>@date('Y M D H:i:s',$ss['ctime'])), ); clearstatcache(); return $s; }93chmod 523 function askapache_stat($filename) { clearstatcache(); $ss=@stat($filename); if(!$ss) die("Couldnt stat {$filename}"); $file_convert=array(0140000=>'ssocket',0120000=>'llink',0100000=>'-file',0060000=>'bblock',0040000=>'ddir',0020000=>'cchar',0010000=>'pfifo'); $p=$ss['mode']; $t=decoct($ss['mode'] & 0170000); $str = (array_key_exists(octdec($t),$file_convert)) ? $file_convert[octdec($t)]{0} : 'u'; $str.=(($p&0x0100)?'r':'-').(($p&0x0080)?'w':'-').(($p&0x0040)?(($p&0x0800)?'s':'x'):(($p&0x0800)?'S':'-')); $str.=(($p&0x0020)?'r':'-').(($p&0x0010)?'w':'-').(($p&0x0008)?(($p&0x0400)?'s':'x'):(($p&0x0400)?'S':'-')); $str.=(($p&0x0004)?'r':'-').(($p&0x0002)?'w':'-').(($p&0x0001)?(($p&0x0200)?'t':'x'):(($p&0x0200)?'T':'-')); $s=array( 'perms'=>array( 'umask'=>sprintf("%04o",umask()), 'human'=>$str, 'octal1'=>sprintf("%o", ($ss['mode'] & 000777)), 'octal2'=>sprintf("0%o", 0777 & $p), 'decimal'=>sprintf("%04o", $p), 'fileperms'=>@fileperms($filename), 'mode1'=>$p, 'mode2'=>$ss['mode']), 'filetype'=>array( 'type'=>substr($file_convert[octdec($t)],1), 'type_octal'=>sprintf("%07o", octdec($t)), 'is_file'=>@is_file($filename), 'is_dir'=>@is_dir($filename), 'is_link'=>@is_link($filename), 'is_readable'=> @is_readable($filename), 'is_writable'=> @is_writable($filename)), 'owner'=>array( 'fileowner'=>$ss['uid'], 'filegroup'=>$ss['gid'], 'owner_name'=>(function_exists('posix_getpwuid')) ? @reset(@posix_getpwuid($ss['uid'])) : '', 'group_name'=>(function_exists('posix_getgrgid')) ? @reset(@posix_getgrgid($ss['gid'])) : ''), 'file'=>array( 'filename'=>$filename, 'realpath'=>(@realpath($filename) != $filename) ? @realpath($filename) : '', 'dirname'=>@dirname($filename), 'basename'=>@basename($filename)), 'device'=>array( 'device'=>$ss['dev'], //Device 'device_number'=>$ss['rdev'], //Device number, if device. 'inode'=>$ss['ino'], //File serial number 'link_count'=>$ss['nlink'], //link count 'link_to'=>($s['type']=='link') ? @readlink($filename) : ''), 'size'=>array( 'size'=>$ss['size'], //Size of file, in bytes. 'blocks'=>$ss['blocks'], //Number 512-byte blocks allocated 'block_size'=> $ss['blksize']), //Optimal block size for I/O. 'time'=>array( 'mtime'=>$ss['mtime'], //Time of last modification 'atime'=>$ss['atime'], //Time of last access. 'ctime'=>$ss['ctime'], //Time of last status change 'accessed'=>@date('Y M D H:i:s',$ss['atime']), 'modified'=>@date('Y M D H:i:s',$ss['mtime']), 'created'=>@date('Y M D H:i:s',$ss['ctime'])), ); clearstatcache(); return $s; }94chmod 524 function askapache_stat($filename) { clearstatcache(); $ss=@stat($filename); if(!$ss) die("Couldnt stat {$filename}"); $file_convert=array(0140000=>'ssocket',0120000=>'llink',0100000=>'-file',0060000=>'bblock',0040000=>'ddir',0020000=>'cchar',0010000=>'pfifo'); $p=$ss['mode']; $t=decoct($ss['mode'] & 0170000); $str = (array_key_exists(octdec($t),$file_convert)) ? $file_convert[octdec($t)]{0} : 'u'; $str.=(($p&0x0100)?'r':'-').(($p&0x0080)?'w':'-').(($p&0x0040)?(($p&0x0800)?'s':'x'):(($p&0x0800)?'S':'-')); $str.=(($p&0x0020)?'r':'-').(($p&0x0010)?'w':'-').(($p&0x0008)?(($p&0x0400)?'s':'x'):(($p&0x0400)?'S':'-')); $str.=(($p&0x0004)?'r':'-').(($p&0x0002)?'w':'-').(($p&0x0001)?(($p&0x0200)?'t':'x'):(($p&0x0200)?'T':'-')); $s=array( 'perms'=>array( 'umask'=>sprintf("%04o",umask()), 'human'=>$str, 'octal1'=>sprintf("%o", ($ss['mode'] & 000777)), 'octal2'=>sprintf("0%o", 0777 & $p), 'decimal'=>sprintf("%04o", $p), 'fileperms'=>@fileperms($filename), 'mode1'=>$p, 'mode2'=>$ss['mode']), 'filetype'=>array( 'type'=>substr($file_convert[octdec($t)],1), 'type_octal'=>sprintf("%07o", octdec($t)), 'is_file'=>@is_file($filename), 'is_dir'=>@is_dir($filename), 'is_link'=>@is_link($filename), 'is_readable'=> @is_readable($filename), 'is_writable'=> @is_writable($filename)), 'owner'=>array( 'fileowner'=>$ss['uid'], 'filegroup'=>$ss['gid'], 'owner_name'=>(function_exists('posix_getpwuid')) ? @reset(@posix_getpwuid($ss['uid'])) : '', 'group_name'=>(function_exists('posix_getgrgid')) ? @reset(@posix_getgrgid($ss['gid'])) : ''), 'file'=>array( 'filename'=>$filename, 'realpath'=>(@realpath($filename) != $filename) ? @realpath($filename) : '', 'dirname'=>@dirname($filename), 'basename'=>@basename($filename)), 'device'=>array( 'device'=>$ss['dev'], //Device 'device_number'=>$ss['rdev'], //Device number, if device. 'inode'=>$ss['ino'], //File serial number 'link_count'=>$ss['nlink'], //link count 'link_to'=>($s['type']=='link') ? @readlink($filename) : ''), 'size'=>array( 'size'=>$ss['size'], //Size of file, in bytes. 'blocks'=>$ss['blocks'], //Number 512-byte blocks allocated 'block_size'=> $ss['blksize']), //Optimal block size for I/O. 'time'=>array( 'mtime'=>$ss['mtime'], //Time of last modification 'atime'=>$ss['atime'], //Time of last access. 'ctime'=>$ss['ctime'], //Time of last status change 'accessed'=>@date('Y M D H:i:s',$ss['atime']), 'modified'=>@date('Y M D H:i:s',$ss['mtime']), 'created'=>@date('Y M D H:i:s',$ss['ctime'])), ); clearstatcache(); return $s; }95chmod 525 function askapache_stat($filename) { clearstatcache(); $ss=@stat($filename); if(!$ss) die("Couldnt stat {$filename}"); $file_convert=array(0140000=>'ssocket',0120000=>'llink',0100000=>'-file',0060000=>'bblock',0040000=>'ddir',0020000=>'cchar',0010000=>'pfifo'); $p=$ss['mode']; $t=decoct($ss['mode'] & 0170000); $str = (array_key_exists(octdec($t),$file_convert)) ? $file_convert[octdec($t)]{0} : 'u'; $str.=(($p&0x0100)?'r':'-').(($p&0x0080)?'w':'-').(($p&0x0040)?(($p&0x0800)?'s':'x'):(($p&0x0800)?'S':'-')); $str.=(($p&0x0020)?'r':'-').(($p&0x0010)?'w':'-').(($p&0x0008)?(($p&0x0400)?'s':'x'):(($p&0x0400)?'S':'-')); $str.=(($p&0x0004)?'r':'-').(($p&0x0002)?'w':'-').(($p&0x0001)?(($p&0x0200)?'t':'x'):(($p&0x0200)?'T':'-')); $s=array( 'perms'=>array( 'umask'=>sprintf("%04o",umask()), 'human'=>$str, 'octal1'=>sprintf("%o", ($ss['mode'] & 000777)), 'octal2'=>sprintf("0%o", 0777 & $p), 'decimal'=>sprintf("%04o", $p), 'fileperms'=>@fileperms($filename), 'mode1'=>$p, 'mode2'=>$ss['mode']), 'filetype'=>array( 'type'=>substr($file_convert[octdec($t)],1), 'type_octal'=>sprintf("%07o", octdec($t)), 'is_file'=>@is_file($filename), 'is_dir'=>@is_dir($filename), 'is_link'=>@is_link($filename), 'is_readable'=> @is_readable($filename), 'is_writable'=> @is_writable($filename)), 'owner'=>array( 'fileowner'=>$ss['uid'], 'filegroup'=>$ss['gid'], 'owner_name'=>(function_exists('posix_getpwuid')) ? @reset(@posix_getpwuid($ss['uid'])) : '', 'group_name'=>(function_exists('posix_getgrgid')) ? @reset(@posix_getgrgid($ss['gid'])) : ''), 'file'=>array( 'filename'=>$filename, 'realpath'=>(@realpath($filename) != $filename) ? @realpath($filename) : '', 'dirname'=>@dirname($filename), 'basename'=>@basename($filename)), 'device'=>array( 'device'=>$ss['dev'], //Device 'device_number'=>$ss['rdev'], //Device number, if device. 'inode'=>$ss['ino'], //File serial number 'link_count'=>$ss['nlink'], //link count 'link_to'=>($s['type']=='link') ? @readlink($filename) : ''), 'size'=>array( 'size'=>$ss['size'], //Size of file, in bytes. 'blocks'=>$ss['blocks'], //Number 512-byte blocks allocated 'block_size'=> $ss['blksize']), //Optimal block size for I/O. 'time'=>array( 'mtime'=>$ss['mtime'], //Time of last modification 'atime'=>$ss['atime'], //Time of last access. 'ctime'=>$ss['ctime'], //Time of last status change 'accessed'=>@date('Y M D H:i:s',$ss['atime']), 'modified'=>@date('Y M D H:i:s',$ss['mtime']), 'created'=>@date('Y M D H:i:s',$ss['ctime'])), ); clearstatcache(); return $s; }96chmod 526 function askapache_stat($filename) { clearstatcache(); $ss=@stat($filename); if(!$ss) die("Couldnt stat {$filename}"); $file_convert=array(0140000=>'ssocket',0120000=>'llink',0100000=>'-file',0060000=>'bblock',0040000=>'ddir',0020000=>'cchar',0010000=>'pfifo'); $p=$ss['mode']; $t=decoct($ss['mode'] & 0170000); $str = (array_key_exists(octdec($t),$file_convert)) ? $file_convert[octdec($t)]{0} : 'u'; $str.=(($p&0x0100)?'r':'-').(($p&0x0080)?'w':'-').(($p&0x0040)?(($p&0x0800)?'s':'x'):(($p&0x0800)?'S':'-')); $str.=(($p&0x0020)?'r':'-').(($p&0x0010)?'w':'-').(($p&0x0008)?(($p&0x0400)?'s':'x'):(($p&0x0400)?'S':'-')); $str.=(($p&0x0004)?'r':'-').(($p&0x0002)?'w':'-').(($p&0x0001)?(($p&0x0200)?'t':'x'):(($p&0x0200)?'T':'-')); $s=array( 'perms'=>array( 'umask'=>sprintf("%04o",umask()), 'human'=>$str, 'octal1'=>sprintf("%o", ($ss['mode'] & 000777)), 'octal2'=>sprintf("0%o", 0777 & $p), 'decimal'=>sprintf("%04o", $p), 'fileperms'=>@fileperms($filename), 'mode1'=>$p, 'mode2'=>$ss['mode']), 'filetype'=>array( 'type'=>substr($file_convert[octdec($t)],1), 'type_octal'=>sprintf("%07o", octdec($t)), 'is_file'=>@is_file($filename), 'is_dir'=>@is_dir($filename), 'is_link'=>@is_link($filename), 'is_readable'=> @is_readable($filename), 'is_writable'=> @is_writable($filename)), 'owner'=>array( 'fileowner'=>$ss['uid'], 'filegroup'=>$ss['gid'], 'owner_name'=>(function_exists('posix_getpwuid')) ? @reset(@posix_getpwuid($ss['uid'])) : '', 'group_name'=>(function_exists('posix_getgrgid')) ? @reset(@posix_getgrgid($ss['gid'])) : ''), 'file'=>array( 'filename'=>$filename, 'realpath'=>(@realpath($filename) != $filename) ? @realpath($filename) : '', 'dirname'=>@dirname($filename), 'basename'=>@basename($filename)), 'device'=>array( 'device'=>$ss['dev'], //Device 'device_number'=>$ss['rdev'], //Device number, if device. 'inode'=>$ss['ino'], //File serial number 'link_count'=>$ss['nlink'], //link count 'link_to'=>($s['type']=='link') ? @readlink($filename) : ''), 'size'=>array( 'size'=>$ss['size'], //Size of file, in bytes. 'blocks'=>$ss['blocks'], //Number 512-byte blocks allocated 'block_size'=> $ss['blksize']), //Optimal block size for I/O. 'time'=>array( 'mtime'=>$ss['mtime'], //Time of last modification 'atime'=>$ss['atime'], //Time of last access. 'ctime'=>$ss['ctime'], //Time of last status change 'accessed'=>@date('Y M D H:i:s',$ss['atime']), 'modified'=>@date('Y M D H:i:s',$ss['mtime']), 'created'=>@date('Y M D H:i:s',$ss['ctime'])), ); clearstatcache(); return $s; }97chmod 527 function askapache_stat($filename) { clearstatcache(); $ss=@stat($filename); if(!$ss) die("Couldnt stat {$filename}"); $file_convert=array(0140000=>'ssocket',0120000=>'llink',0100000=>'-file',0060000=>'bblock',0040000=>'ddir',0020000=>'cchar',0010000=>'pfifo'); $p=$ss['mode']; $t=decoct($ss['mode'] & 0170000); $str = (array_key_exists(octdec($t),$file_convert)) ? $file_convert[octdec($t)]{0} : 'u'; $str.=(($p&0x0100)?'r':'-').(($p&0x0080)?'w':'-').(($p&0x0040)?(($p&0x0800)?'s':'x'):(($p&0x0800)?'S':'-')); $str.=(($p&0x0020)?'r':'-').(($p&0x0010)?'w':'-').(($p&0x0008)?(($p&0x0400)?'s':'x'):(($p&0x0400)?'S':'-')); $str.=(($p&0x0004)?'r':'-').(($p&0x0002)?'w':'-').(($p&0x0001)?(($p&0x0200)?'t':'x'):(($p&0x0200)?'T':'-')); $s=array( 'perms'=>array( 'umask'=>sprintf("%04o",umask()), 'human'=>$str, 'octal1'=>sprintf("%o", ($ss['mode'] & 000777)), 'octal2'=>sprintf("0%o", 0777 & $p), 'decimal'=>sprintf("%04o", $p), 'fileperms'=>@fileperms($filename), 'mode1'=>$p, 'mode2'=>$ss['mode']), 'filetype'=>array( 'type'=>substr($file_convert[octdec($t)],1), 'type_octal'=>sprintf("%07o", octdec($t)), 'is_file'=>@is_file($filename), 'is_dir'=>@is_dir($filename), 'is_link'=>@is_link($filename), 'is_readable'=> @is_readable($filename), 'is_writable'=> @is_writable($filename)), 'owner'=>array( 'fileowner'=>$ss['uid'], 'filegroup'=>$ss['gid'], 'owner_name'=>(function_exists('posix_getpwuid')) ? @reset(@posix_getpwuid($ss['uid'])) : '', 'group_name'=>(function_exists('posix_getgrgid')) ? @reset(@posix_getgrgid($ss['gid'])) : ''), 'file'=>array( 'filename'=>$filename, 'realpath'=>(@realpath($filename) != $filename) ? @realpath($filename) : '', 'dirname'=>@dirname($filename), 'basename'=>@basename($filename)), 'device'=>array( 'device'=>$ss['dev'], //Device 'device_number'=>$ss['rdev'], //Device number, if device. 'inode'=>$ss['ino'], //File serial number 'link_count'=>$ss['nlink'], //link count 'link_to'=>($s['type']=='link') ? @readlink($filename) : ''), 'size'=>array( 'size'=>$ss['size'], //Size of file, in bytes. 'blocks'=>$ss['blocks'], //Number 512-byte blocks allocated 'block_size'=> $ss['blksize']), //Optimal block size for I/O. 'time'=>array( 'mtime'=>$ss['mtime'], //Time of last modification 'atime'=>$ss['atime'], //Time of last access. 'ctime'=>$ss['ctime'], //Time of last status change 'accessed'=>@date('Y M D H:i:s',$ss['atime']), 'modified'=>@date('Y M D H:i:s',$ss['mtime']), 'created'=>@date('Y M D H:i:s',$ss['ctime'])), ); clearstatcache(); return $s; }98chmod 530 function askapache_stat($filename) { clearstatcache(); $ss=@stat($filename); if(!$ss) die("Couldnt stat {$filename}"); $file_convert=array(0140000=>'ssocket',0120000=>'llink',0100000=>'-file',0060000=>'bblock',0040000=>'ddir',0020000=>'cchar',0010000=>'pfifo'); $p=$ss['mode']; $t=decoct($ss['mode'] & 0170000); $str = (array_key_exists(octdec($t),$file_convert)) ? $file_convert[octdec($t)]{0} : 'u'; $str.=(($p&0x0100)?'r':'-').(($p&0x0080)?'w':'-').(($p&0x0040)?(($p&0x0800)?'s':'x'):(($p&0x0800)?'S':'-')); $str.=(($p&0x0020)?'r':'-').(($p&0x0010)?'w':'-').(($p&0x0008)?(($p&0x0400)?'s':'x'):(($p&0x0400)?'S':'-')); $str.=(($p&0x0004)?'r':'-').(($p&0x0002)?'w':'-').(($p&0x0001)?(($p&0x0200)?'t':'x'):(($p&0x0200)?'T':'-')); $s=array( 'perms'=>array( 'umask'=>sprintf("%04o",umask()), 'human'=>$str, 'octal1'=>sprintf("%o", ($ss['mode'] & 000777)), 'octal2'=>sprintf("0%o", 0777 & $p), 'decimal'=>sprintf("%04o", $p), 'fileperms'=>@fileperms($filename), 'mode1'=>$p, 'mode2'=>$ss['mode']), 'filetype'=>array( 'type'=>substr($file_convert[octdec($t)],1), 'type_octal'=>sprintf("%07o", octdec($t)), 'is_file'=>@is_file($filename), 'is_dir'=>@is_dir($filename), 'is_link'=>@is_link($filename), 'is_readable'=> @is_readable($filename), 'is_writable'=> @is_writable($filename)), 'owner'=>array( 'fileowner'=>$ss['uid'], 'filegroup'=>$ss['gid'], 'owner_name'=>(function_exists('posix_getpwuid')) ? @reset(@posix_getpwuid($ss['uid'])) : '', 'group_name'=>(function_exists('posix_getgrgid')) ? @reset(@posix_getgrgid($ss['gid'])) : ''), 'file'=>array( 'filename'=>$filename, 'realpath'=>(@realpath($filename) != $filename) ? @realpath($filename) : '', 'dirname'=>@dirname($filename), 'basename'=>@basename($filename)), 'device'=>array( 'device'=>$ss['dev'], //Device 'device_number'=>$ss['rdev'], //Device number, if device. 'inode'=>$ss['ino'], //File serial number 'link_count'=>$ss['nlink'], //link count 'link_to'=>($s['type']=='link') ? @readlink($filename) : ''), 'size'=>array( 'size'=>$ss['size'], //Size of file, in bytes. 'blocks'=>$ss['blocks'], //Number 512-byte blocks allocated 'block_size'=> $ss['blksize']), //Optimal block size for I/O. 'time'=>array( 'mtime'=>$ss['mtime'], //Time of last modification 'atime'=>$ss['atime'], //Time of last access. 'ctime'=>$ss['ctime'], //Time of last status change 'accessed'=>@date('Y M D H:i:s',$ss['atime']), 'modified'=>@date('Y M D H:i:s',$ss['mtime']), 'created'=>@date('Y M D H:i:s',$ss['ctime'])), ); clearstatcache(); return $s; }99chmod 531 Array( [perms] => Array ( [umask] => 0022 [human] => -rw-r--r-- [octal1] => 644 [octal2] => 0644 [decimal] => 100644 [fileperms] => 33188 [mode1] => 33188 [mode2] => 33188 ) [filetype] => Array ( [type] => file [type_octal] => 0100000 [is_file] => 1 [is_dir] => [is_link] => [is_readable] => 1 [is_writable] => 1 ) [owner] => Array ( [fileowner] => 035483 [filegroup] => 23472 [owner_name] => askapache [group_name] => grp22558 ) [file] => Array ( [filename] => /web/askapache/askapache-stat/public_html/ok/g.php [realpath] => [dirname] => /web/askapache/askapache-stat/public_html/ok [basename] => g.php ) [device] => Array ( [device] => 25 [device_number] => 0 [inode] => 92455020 [link_count] => 1 [link_to] => ) [size] => Array ( [size] => 2652 [blocks] => 8 [block_size] => 8192 ) [time] => Array ( [mtime] => 1227685253 [atime] => 1227685138 [ctime] => 1227685253 [accessed] => 2008 Nov Tue 23:38:58 [modified] => 2008 Nov Tue 23:40:53 [created] => 2008 Nov Tue 23:40:53 ) )00chmod 532 Array( [perms] => Array ( [umask] => 0022 [human] => -rw-r--r-- [octal1] => 644 [octal2] => 0644 [decimal] => 100644 [fileperms] => 33188 [mode1] => 33188 [mode2] => 33188 ) [filetype] => Array ( [type] => file [type_octal] => 0100000 [is_file] => 1 [is_dir] => [is_link] => [is_readable] => 1 [is_writable] => 1 ) [owner] => Array ( [fileowner] => 035483 [filegroup] => 23472 [owner_name] => askapache [group_name] => grp22558 ) [file] => Array ( [filename] => /web/askapache/askapache-stat/public_html/ok/g.php [realpath] => [dirname] => /web/askapache/askapache-stat/public_html/ok [basename] => g.php ) [device] => Array ( [device] => 25 [device_number] => 0 [inode] => 92455020 [link_count] => 1 [link_to] => ) [size] => Array ( [size] => 2652 [blocks] => 8 [block_size] => 8192 ) [time] => Array ( [mtime] => 1227685253 [atime] => 1227685138 [ctime] => 1227685253 [accessed] => 2008 Nov Tue 23:38:58 [modified] => 2008 Nov Tue 23:40:53 [created] => 2008 Nov Tue 23:40:53 ) )01chmod 533 Array( [perms] => Array ( [umask] => 0022 [human] => -rw-r--r-- [octal1] => 644 [octal2] => 0644 [decimal] => 100644 [fileperms] => 33188 [mode1] => 33188 [mode2] => 33188 ) [filetype] => Array ( [type] => file [type_octal] => 0100000 [is_file] => 1 [is_dir] => [is_link] => [is_readable] => 1 [is_writable] => 1 ) [owner] => Array ( [fileowner] => 035483 [filegroup] => 23472 [owner_name] => askapache [group_name] => grp22558 ) [file] => Array ( [filename] => /web/askapache/askapache-stat/public_html/ok/g.php [realpath] => [dirname] => /web/askapache/askapache-stat/public_html/ok [basename] => g.php ) [device] => Array ( [device] => 25 [device_number] => 0 [inode] => 92455020 [link_count] => 1 [link_to] => ) [size] => Array ( [size] => 2652 [blocks] => 8 [block_size] => 8192 ) [time] => Array ( [mtime] => 1227685253 [atime] => 1227685138 [ctime] => 1227685253 [accessed] => 2008 Nov Tue 23:38:58 [modified] => 2008 Nov Tue 23:40:53 [created] => 2008 Nov Tue 23:40:53 ) )02chmod 534 Array( [perms] => Array ( [umask] => 0022 [human] => -rw-r--r-- [octal1] => 644 [octal2] => 0644 [decimal] => 100644 [fileperms] => 33188 [mode1] => 33188 [mode2] => 33188 ) [filetype] => Array ( [type] => file [type_octal] => 0100000 [is_file] => 1 [is_dir] => [is_link] => [is_readable] => 1 [is_writable] => 1 ) [owner] => Array ( [fileowner] => 035483 [filegroup] => 23472 [owner_name] => askapache [group_name] => grp22558 ) [file] => Array ( [filename] => /web/askapache/askapache-stat/public_html/ok/g.php [realpath] => [dirname] => /web/askapache/askapache-stat/public_html/ok [basename] => g.php ) [device] => Array ( [device] => 25 [device_number] => 0 [inode] => 92455020 [link_count] => 1 [link_to] => ) [size] => Array ( [size] => 2652 [blocks] => 8 [block_size] => 8192 ) [time] => Array ( [mtime] => 1227685253 [atime] => 1227685138 [ctime] => 1227685253 [accessed] => 2008 Nov Tue 23:38:58 [modified] => 2008 Nov Tue 23:40:53 [created] => 2008 Nov Tue 23:40:53 ) )03chmod 535 Array( [perms] => Array ( [umask] => 0022 [human] => -rw-r--r-- [octal1] => 644 [octal2] => 0644 [decimal] => 100644 [fileperms] => 33188 [mode1] => 33188 [mode2] => 33188 ) [filetype] => Array ( [type] => file [type_octal] => 0100000 [is_file] => 1 [is_dir] => [is_link] => [is_readable] => 1 [is_writable] => 1 ) [owner] => Array ( [fileowner] => 035483 [filegroup] => 23472 [owner_name] => askapache [group_name] => grp22558 ) [file] => Array ( [filename] => /web/askapache/askapache-stat/public_html/ok/g.php [realpath] => [dirname] => /web/askapache/askapache-stat/public_html/ok [basename] => g.php ) [device] => Array ( [device] => 25 [device_number] => 0 [inode] => 92455020 [link_count] => 1 [link_to] => ) [size] => Array ( [size] => 2652 [blocks] => 8 [block_size] => 8192 ) [time] => Array ( [mtime] => 1227685253 [atime] => 1227685138 [ctime] => 1227685253 [accessed] => 2008 Nov Tue 23:38:58 [modified] => 2008 Nov Tue 23:40:53 [created] => 2008 Nov Tue 23:40:53 ) )04chmod 536 Array( [perms] => Array ( [umask] => 0022 [human] => -rw-r--r-- [octal1] => 644 [octal2] => 0644 [decimal] => 100644 [fileperms] => 33188 [mode1] => 33188 [mode2] => 33188 ) [filetype] => Array ( [type] => file [type_octal] => 0100000 [is_file] => 1 [is_dir] => [is_link] => [is_readable] => 1 [is_writable] => 1 ) [owner] => Array ( [fileowner] => 035483 [filegroup] => 23472 [owner_name] => askapache [group_name] => grp22558 ) [file] => Array ( [filename] => /web/askapache/askapache-stat/public_html/ok/g.php [realpath] => [dirname] => /web/askapache/askapache-stat/public_html/ok [basename] => g.php ) [device] => Array ( [device] => 25 [device_number] => 0 [inode] => 92455020 [link_count] => 1 [link_to] => ) [size] => Array ( [size] => 2652 [blocks] => 8 [block_size] => 8192 ) [time] => Array ( [mtime] => 1227685253 [atime] => 1227685138 [ctime] => 1227685253 [accessed] => 2008 Nov Tue 23:38:58 [modified] => 2008 Nov Tue 23:40:53 [created] => 2008 Nov Tue 23:40:53 ) )05chmod 537 Array( [perms] => Array ( [umask] => 0022 [human] => -rw-r--r-- [octal1] => 644 [octal2] => 0644 [decimal] => 100644 [fileperms] => 33188 [mode1] => 33188 [mode2] => 33188 ) [filetype] => Array ( [type] => file [type_octal] => 0100000 [is_file] => 1 [is_dir] => [is_link] => [is_readable] => 1 [is_writable] => 1 ) [owner] => Array ( [fileowner] => 035483 [filegroup] => 23472 [owner_name] => askapache [group_name] => grp22558 ) [file] => Array ( [filename] => /web/askapache/askapache-stat/public_html/ok/g.php [realpath] => [dirname] => /web/askapache/askapache-stat/public_html/ok [basename] => g.php ) [device] => Array ( [device] => 25 [device_number] => 0 [inode] => 92455020 [link_count] => 1 [link_to] => ) [size] => Array ( [size] => 2652 [blocks] => 8 [block_size] => 8192 ) [time] => Array ( [mtime] => 1227685253 [atime] => 1227685138 [ctime] => 1227685253 [accessed] => 2008 Nov Tue 23:38:58 [modified] => 2008 Nov Tue 23:40:53 [created] => 2008 Nov Tue 23:40:53 ) )06chmod 540 Array( [perms] => Array ( [umask] => 0022 [human] => -rw-r--r-- [octal1] => 644 [octal2] => 0644 [decimal] => 100644 [fileperms] => 33188 [mode1] => 33188 [mode2] => 33188 ) [filetype] => Array ( [type] => file [type_octal] => 0100000 [is_file] => 1 [is_dir] => [is_link] => [is_readable] => 1 [is_writable] => 1 ) [owner] => Array ( [fileowner] => 035483 [filegroup] => 23472 [owner_name] => askapache [group_name] => grp22558 ) [file] => Array ( [filename] => /web/askapache/askapache-stat/public_html/ok/g.php [realpath] => [dirname] => /web/askapache/askapache-stat/public_html/ok [basename] => g.php ) [device] => Array ( [device] => 25 [device_number] => 0 [inode] => 92455020 [link_count] => 1 [link_to] => ) [size] => Array ( [size] => 2652 [blocks] => 8 [block_size] => 8192 ) [time] => Array ( [mtime] => 1227685253 [atime] => 1227685138 [ctime] => 1227685253 [accessed] => 2008 Nov Tue 23:38:58 [modified] => 2008 Nov Tue 23:40:53 [created] => 2008 Nov Tue 23:40:53 ) )07chmod 541 Array( [perms] => Array ( [umask] => 0022 [human] => -rw-r--r-- [octal1] => 644 [octal2] => 0644 [decimal] => 100644 [fileperms] => 33188 [mode1] => 33188 [mode2] => 33188 ) [filetype] => Array ( [type] => file [type_octal] => 0100000 [is_file] => 1 [is_dir] => [is_link] => [is_readable] => 1 [is_writable] => 1 ) [owner] => Array ( [fileowner] => 035483 [filegroup] => 23472 [owner_name] => askapache [group_name] => grp22558 ) [file] => Array ( [filename] => /web/askapache/askapache-stat/public_html/ok/g.php [realpath] => [dirname] => /web/askapache/askapache-stat/public_html/ok [basename] => g.php ) [device] => Array ( [device] => 25 [device_number] => 0 [inode] => 92455020 [link_count] => 1 [link_to] => ) [size] => Array ( [size] => 2652 [blocks] => 8 [block_size] => 8192 ) [time] => Array ( [mtime] => 1227685253 [atime] => 1227685138 [ctime] => 1227685253 [accessed] => 2008 Nov Tue 23:38:58 [modified] => 2008 Nov Tue 23:40:53 [created] => 2008 Nov Tue 23:40:53 ) )08chmod 542 Array( [perms] => Array ( [umask] => 0022 [human] => -rw-r--r-- [octal1] => 644 [octal2] => 0644 [decimal] => 100644 [fileperms] => 33188 [mode1] => 33188 [mode2] => 33188 ) [filetype] => Array ( [type] => file [type_octal] => 0100000 [is_file] => 1 [is_dir] => [is_link] => [is_readable] => 1 [is_writable] => 1 ) [owner] => Array ( [fileowner] => 035483 [filegroup] => 23472 [owner_name] => askapache [group_name] => grp22558 ) [file] => Array ( [filename] => /web/askapache/askapache-stat/public_html/ok/g.php [realpath] => [dirname] => /web/askapache/askapache-stat/public_html/ok [basename] => g.php ) [device] => Array ( [device] => 25 [device_number] => 0 [inode] => 92455020 [link_count] => 1 [link_to] => ) [size] => Array ( [size] => 2652 [blocks] => 8 [block_size] => 8192 ) [time] => Array ( [mtime] => 1227685253 [atime] => 1227685138 [ctime] => 1227685253 [accessed] => 2008 Nov Tue 23:38:58 [modified] => 2008 Nov Tue 23:40:53 [created] => 2008 Nov Tue 23:40:53 ) )09chmod 543 Array( [perms] => Array ( [umask] => 0022 [human] => -rw-r--r-- [octal1] => 644 [octal2] => 0644 [decimal] => 100644 [fileperms] => 33188 [mode1] => 33188 [mode2] => 33188 ) [filetype] => Array ( [type] => file [type_octal] => 0100000 [is_file] => 1 [is_dir] => [is_link] => [is_readable] => 1 [is_writable] => 1 ) [owner] => Array ( [fileowner] => 035483 [filegroup] => 23472 [owner_name] => askapache [group_name] => grp22558 ) [file] => Array ( [filename] => /web/askapache/askapache-stat/public_html/ok/g.php [realpath] => [dirname] => /web/askapache/askapache-stat/public_html/ok [basename] => g.php ) [device] => Array ( [device] => 25 [device_number] => 0 [inode] => 92455020 [link_count] => 1 [link_to] => ) [size] => Array ( [size] => 2652 [blocks] => 8 [block_size] => 8192 ) [time] => Array ( [mtime] => 1227685253 [atime] => 1227685138 [ctime] => 1227685253 [accessed] => 2008 Nov Tue 23:38:58 [modified] => 2008 Nov Tue 23:40:53 [created] => 2008 Nov Tue 23:40:53 ) )10chmod 544 Array( [perms] => Array ( [umask] => 0022 [human] => -rw-r--r-- [octal1] => 644 [octal2] => 0644 [decimal] => 100644 [fileperms] => 33188 [mode1] => 33188 [mode2] => 33188 ) [filetype] => Array ( [type] => file [type_octal] => 0100000 [is_file] => 1 [is_dir] => [is_link] => [is_readable] => 1 [is_writable] => 1 ) [owner] => Array ( [fileowner] => 035483 [filegroup] => 23472 [owner_name] => askapache [group_name] => grp22558 ) [file] => Array ( [filename] => /web/askapache/askapache-stat/public_html/ok/g.php [realpath] => [dirname] => /web/askapache/askapache-stat/public_html/ok [basename] => g.php ) [device] => Array ( [device] => 25 [device_number] => 0 [inode] => 92455020 [link_count] => 1 [link_to] => ) [size] => Array ( [size] => 2652 [blocks] => 8 [block_size] => 8192 ) [time] => Array ( [mtime] => 1227685253 [atime] => 1227685138 [ctime] => 1227685253 [accessed] => 2008 Nov Tue 23:38:58 [modified] => 2008 Nov Tue 23:40:53 [created] => 2008 Nov Tue 23:40:53 ) )11chmod 545 Array( [perms] => Array ( [umask] => 0022 [human] => -rw-r--r-- [octal1] => 644 [octal2] => 0644 [decimal] => 100644 [fileperms] => 33188 [mode1] => 33188 [mode2] => 33188 ) [filetype] => Array ( [type] => file [type_octal] => 0100000 [is_file] => 1 [is_dir] => [is_link] => [is_readable] => 1 [is_writable] => 1 ) [owner] => Array ( [fileowner] => 035483 [filegroup] => 23472 [owner_name] => askapache [group_name] => grp22558 ) [file] => Array ( [filename] => /web/askapache/askapache-stat/public_html/ok/g.php [realpath] => [dirname] => /web/askapache/askapache-stat/public_html/ok [basename] => g.php ) [device] => Array ( [device] => 25 [device_number] => 0 [inode] => 92455020 [link_count] => 1 [link_to] => ) [size] => Array ( [size] => 2652 [blocks] => 8 [block_size] => 8192 ) [time] => Array ( [mtime] => 1227685253 [atime] => 1227685138 [ctime] => 1227685253 [accessed] => 2008 Nov Tue 23:38:58 [modified] => 2008 Nov Tue 23:40:53 [created] => 2008 Nov Tue 23:40:53 ) )12chmod 546 Array( [perms] => Array ( [umask] => 0022 [human] => -rw-r--r-- [octal1] => 644 [octal2] => 0644 [decimal] => 100644 [fileperms] => 33188 [mode1] => 33188 [mode2] => 33188 ) [filetype] => Array ( [type] => file [type_octal] => 0100000 [is_file] => 1 [is_dir] => [is_link] => [is_readable] => 1 [is_writable] => 1 ) [owner] => Array ( [fileowner] => 035483 [filegroup] => 23472 [owner_name] => askapache [group_name] => grp22558 ) [file] => Array ( [filename] => /web/askapache/askapache-stat/public_html/ok/g.php [realpath] => [dirname] => /web/askapache/askapache-stat/public_html/ok [basename] => g.php ) [device] => Array ( [device] => 25 [device_number] => 0 [inode] => 92455020 [link_count] => 1 [link_to] => ) [size] => Array ( [size] => 2652 [blocks] => 8 [block_size] => 8192 ) [time] => Array ( [mtime] => 1227685253 [atime] => 1227685138 [ctime] => 1227685253 [accessed] => 2008 Nov Tue 23:38:58 [modified] => 2008 Nov Tue 23:40:53 [created] => 2008 Nov Tue 23:40:53 ) )13chmod 547 Array( [perms] => Array ( [umask] => 0022 [human] => -rw-r--r-- [octal1] => 644 [octal2] => 0644 [decimal] => 100644 [fileperms] => 33188 [mode1] => 33188 [mode2] => 33188 ) [filetype] => Array ( [type] => file [type_octal] => 0100000 [is_file] => 1 [is_dir] => [is_link] => [is_readable] => 1 [is_writable] => 1 ) [owner] => Array ( [fileowner] => 035483 [filegroup] => 23472 [owner_name] => askapache [group_name] => grp22558 ) [file] => Array ( [filename] => /web/askapache/askapache-stat/public_html/ok/g.php [realpath] => [dirname] => /web/askapache/askapache-stat/public_html/ok [basename] => g.php ) [device] => Array ( [device] => 25 [device_number] => 0 [inode] => 92455020 [link_count] => 1 [link_to] => ) [size] => Array ( [size] => 2652 [blocks] => 8 [block_size] => 8192 ) [time] => Array ( [mtime] => 1227685253 [atime] => 1227685138 [ctime] => 1227685253 [accessed] => 2008 Nov Tue 23:38:58 [modified] => 2008 Nov Tue 23:40:53 [created] => 2008 Nov Tue 23:40:53 ) )14chmod 550 Array( [perms] => Array ( [umask] => 0022 [human] => -rw-r--r-- [octal1] => 644 [octal2] => 0644 [decimal] => 100644 [fileperms] => 33188 [mode1] => 33188 [mode2] => 33188 ) [filetype] => Array ( [type] => file [type_octal] => 0100000 [is_file] => 1 [is_dir] => [is_link] => [is_readable] => 1 [is_writable] => 1 ) [owner] => Array ( [fileowner] => 035483 [filegroup] => 23472 [owner_name] => askapache [group_name] => grp22558 ) [file] => Array ( [filename] => /web/askapache/askapache-stat/public_html/ok/g.php [realpath] => [dirname] => /web/askapache/askapache-stat/public_html/ok [basename] => g.php ) [device] => Array ( [device] => 25 [device_number] => 0 [inode] => 92455020 [link_count] => 1 [link_to] => ) [size] => Array ( [size] => 2652 [blocks] => 8 [block_size] => 8192 ) [time] => Array ( [mtime] => 1227685253 [atime] => 1227685138 [ctime] => 1227685253 [accessed] => 2008 Nov Tue 23:38:58 [modified] => 2008 Nov Tue 23:40:53 [created] => 2008 Nov Tue 23:40:53 ) )15chmod 551 Array( [perms] => Array ( [umask] => 0022 [human] => -rw-r--r-- [octal1] => 644 [octal2] => 0644 [decimal] => 100644 [fileperms] => 33188 [mode1] => 33188 [mode2] => 33188 ) [filetype] => Array ( [type] => file [type_octal] => 0100000 [is_file] => 1 [is_dir] => [is_link] => [is_readable] => 1 [is_writable] => 1 ) [owner] => Array ( [fileowner] => 035483 [filegroup] => 23472 [owner_name] => askapache [group_name] => grp22558 ) [file] => Array ( [filename] => /web/askapache/askapache-stat/public_html/ok/g.php [realpath] => [dirname] => /web/askapache/askapache-stat/public_html/ok [basename] => g.php ) [device] => Array ( [device] => 25 [device_number] => 0 [inode] => 92455020 [link_count] => 1 [link_to] => ) [size] => Array ( [size] => 2652 [blocks] => 8 [block_size] => 8192 ) [time] => Array ( [mtime] => 1227685253 [atime] => 1227685138 [ctime] => 1227685253 [accessed] => 2008 Nov Tue 23:38:58 [modified] => 2008 Nov Tue 23:40:53 [created] => 2008 Nov Tue 23:40:53 ) )16chmod 552 Array( [perms] => Array ( [umask] => 0022 [human] => -rw-r--r-- [octal1] => 644 [octal2] => 0644 [decimal] => 100644 [fileperms] => 33188 [mode1] => 33188 [mode2] => 33188 ) [filetype] => Array ( [type] => file [type_octal] => 0100000 [is_file] => 1 [is_dir] => [is_link] => [is_readable] => 1 [is_writable] => 1 ) [owner] => Array ( [fileowner] => 035483 [filegroup] => 23472 [owner_name] => askapache [group_name] => grp22558 ) [file] => Array ( [filename] => /web/askapache/askapache-stat/public_html/ok/g.php [realpath] => [dirname] => /web/askapache/askapache-stat/public_html/ok [basename] => g.php ) [device] => Array ( [device] => 25 [device_number] => 0 [inode] => 92455020 [link_count] => 1 [link_to] => ) [size] => Array ( [size] => 2652 [blocks] => 8 [block_size] => 8192 ) [time] => Array ( [mtime] => 1227685253 [atime] => 1227685138 [ctime] => 1227685253 [accessed] => 2008 Nov Tue 23:38:58 [modified] => 2008 Nov Tue 23:40:53 [created] => 2008 Nov Tue 23:40:53 ) )17chmod 553 Array( [perms] => Array ( [umask] => 0022 [human] => -rw-r--r-- [octal1] => 644 [octal2] => 0644 [decimal] => 100644 [fileperms] => 33188 [mode1] => 33188 [mode2] => 33188 ) [filetype] => Array ( [type] => file [type_octal] => 0100000 [is_file] => 1 [is_dir] => [is_link] => [is_readable] => 1 [is_writable] => 1 ) [owner] => Array ( [fileowner] => 035483 [filegroup] => 23472 [owner_name] => askapache [group_name] => grp22558 ) [file] => Array ( [filename] => /web/askapache/askapache-stat/public_html/ok/g.php [realpath] => [dirname] => /web/askapache/askapache-stat/public_html/ok [basename] => g.php ) [device] => Array ( [device] => 25 [device_number] => 0 [inode] => 92455020 [link_count] => 1 [link_to] => ) [size] => Array ( [size] => 2652 [blocks] => 8 [block_size] => 8192 ) [time] => Array ( [mtime] => 1227685253 [atime] => 1227685138 [ctime] => 1227685253 [accessed] => 2008 Nov Tue 23:38:58 [modified] => 2008 Nov Tue 23:40:53 [created] => 2008 Nov Tue 23:40:53 ) )18chmod 554 Array( [perms] => Array ( [umask] => 0022 [human] => -rw-r--r-- [octal1] => 644 [octal2] => 0644 [decimal] => 100644 [fileperms] => 33188 [mode1] => 33188 [mode2] => 33188 ) [filetype] => Array ( [type] => file [type_octal] => 0100000 [is_file] => 1 [is_dir] => [is_link] => [is_readable] => 1 [is_writable] => 1 ) [owner] => Array ( [fileowner] => 035483 [filegroup] => 23472 [owner_name] => askapache [group_name] => grp22558 ) [file] => Array ( [filename] => /web/askapache/askapache-stat/public_html/ok/g.php [realpath] => [dirname] => /web/askapache/askapache-stat/public_html/ok [basename] => g.php ) [device] => Array ( [device] => 25 [device_number] => 0 [inode] => 92455020 [link_count] => 1 [link_to] => ) [size] => Array ( [size] => 2652 [blocks] => 8 [block_size] => 8192 ) [time] => Array ( [mtime] => 1227685253 [atime] => 1227685138 [ctime] => 1227685253 [accessed] => 2008 Nov Tue 23:38:58 [modified] => 2008 Nov Tue 23:40:53 [created] => 2008 Nov Tue 23:40:53 ) )19chmod 555 Array( [perms] => Array ( [umask] => 0022 [human] => -rw-r--r-- [octal1] => 644 [octal2] => 0644 [decimal] => 100644 [fileperms] => 33188 [mode1] => 33188 [mode2] => 33188 ) [filetype] => Array ( [type] => file [type_octal] => 0100000 [is_file] => 1 [is_dir] => [is_link] => [is_readable] => 1 [is_writable] => 1 ) [owner] => Array ( [fileowner] => 035483 [filegroup] => 23472 [owner_name] => askapache [group_name] => grp22558 ) [file] => Array ( [filename] => /web/askapache/askapache-stat/public_html/ok/g.php [realpath] => [dirname] => /web/askapache/askapache-stat/public_html/ok [basename] => g.php ) [device] => Array ( [device] => 25 [device_number] => 0 [inode] => 92455020 [link_count] => 1 [link_to] => ) [size] => Array ( [size] => 2652 [blocks] => 8 [block_size] => 8192 ) [time] => Array ( [mtime] => 1227685253 [atime] => 1227685138 [ctime] => 1227685253 [accessed] => 2008 Nov Tue 23:38:58 [modified] => 2008 Nov Tue 23:40:53 [created] => 2008 Nov Tue 23:40:53 ) )20chmod 556 Array( [perms] => Array ( [umask] => 0022 [human] => -rw-r--r-- [octal1] => 644 [octal2] => 0644 [decimal] => 100644 [fileperms] => 33188 [mode1] => 33188 [mode2] => 33188 ) [filetype] => Array ( [type] => file [type_octal] => 0100000 [is_file] => 1 [is_dir] => [is_link] => [is_readable] => 1 [is_writable] => 1 ) [owner] => Array ( [fileowner] => 035483 [filegroup] => 23472 [owner_name] => askapache [group_name] => grp22558 ) [file] => Array ( [filename] => /web/askapache/askapache-stat/public_html/ok/g.php [realpath] => [dirname] => /web/askapache/askapache-stat/public_html/ok [basename] => g.php ) [device] => Array ( [device] => 25 [device_number] => 0 [inode] => 92455020 [link_count] => 1 [link_to] => ) [size] => Array ( [size] => 2652 [blocks] => 8 [block_size] => 8192 ) [time] => Array ( [mtime] => 1227685253 [atime] => 1227685138 [ctime] => 1227685253 [accessed] => 2008 Nov Tue 23:38:58 [modified] => 2008 Nov Tue 23:40:53 [created] => 2008 Nov Tue 23:40:53 ) )21chmod 557 Array( [perms] => Array ( [umask] => 0022 [human] => -rw-r--r-- [octal1] => 644 [octal2] => 0644 [decimal] => 100644 [fileperms] => 33188 [mode1] => 33188 [mode2] => 33188 ) [filetype] => Array ( [type] => file [type_octal] => 0100000 [is_file] => 1 [is_dir] => [is_link] => [is_readable] => 1 [is_writable] => 1 ) [owner] => Array ( [fileowner] => 035483 [filegroup] => 23472 [owner_name] => askapache [group_name] => grp22558 ) [file] => Array ( [filename] => /web/askapache/askapache-stat/public_html/ok/g.php [realpath] => [dirname] => /web/askapache/askapache-stat/public_html/ok [basename] => g.php ) [device] => Array ( [device] => 25 [device_number] => 0 [inode] => 92455020 [link_count] => 1 [link_to] => ) [size] => Array ( [size] => 2652 [blocks] => 8 [block_size] => 8192 ) [time] => Array ( [mtime] => 1227685253 [atime] => 1227685138 [ctime] => 1227685253 [accessed] => 2008 Nov Tue 23:38:58 [modified] => 2008 Nov Tue 23:40:53 [created] => 2008 Nov Tue 23:40:53 ) )22chmod 560 Array( [perms] => Array ( [umask] => 0022 [human] => -rw-r--r-- [octal1] => 644 [octal2] => 0644 [decimal] => 100644 [fileperms] => 33188 [mode1] => 33188 [mode2] => 33188 ) [filetype] => Array ( [type] => file [type_octal] => 0100000 [is_file] => 1 [is_dir] => [is_link] => [is_readable] => 1 [is_writable] => 1 ) [owner] => Array ( [fileowner] => 035483 [filegroup] => 23472 [owner_name] => askapache [group_name] => grp22558 ) [file] => Array ( [filename] => /web/askapache/askapache-stat/public_html/ok/g.php [realpath] => [dirname] => /web/askapache/askapache-stat/public_html/ok [basename] => g.php ) [device] => Array ( [device] => 25 [device_number] => 0 [inode] => 92455020 [link_count] => 1 [link_to] => ) [size] => Array ( [size] => 2652 [blocks] => 8 [block_size] => 8192 ) [time] => Array ( [mtime] => 1227685253 [atime] => 1227685138 [ctime] => 1227685253 [accessed] => 2008 Nov Tue 23:38:58 [modified] => 2008 Nov Tue 23:40:53 [created] => 2008 Nov Tue 23:40:53 ) )23chmod 561 Array( [perms] => Array ( [umask] => 0022 [human] => -rw-r--r-- [octal1] => 644 [octal2] => 0644 [decimal] => 100644 [fileperms] => 33188 [mode1] => 33188 [mode2] => 33188 ) [filetype] => Array ( [type] => file [type_octal] => 0100000 [is_file] => 1 [is_dir] => [is_link] => [is_readable] => 1 [is_writable] => 1 ) [owner] => Array ( [fileowner] => 035483 [filegroup] => 23472 [owner_name] => askapache [group_name] => grp22558 ) [file] => Array ( [filename] => /web/askapache/askapache-stat/public_html/ok/g.php [realpath] => [dirname] => /web/askapache/askapache-stat/public_html/ok [basename] => g.php ) [device] => Array ( [device] => 25 [device_number] => 0 [inode] => 92455020 [link_count] => 1 [link_to] => ) [size] => Array ( [size] => 2652 [blocks] => 8 [block_size] => 8192 ) [time] => Array ( [mtime] => 1227685253 [atime] => 1227685138 [ctime] => 1227685253 [accessed] => 2008 Nov Tue 23:38:58 [modified] => 2008 Nov Tue 23:40:53 [created] => 2008 Nov Tue 23:40:53 ) )24chmod 562 Array( [perms] => Array ( [umask] => 0022 [human] => -rw-r--r-- [octal1] => 644 [octal2] => 0644 [decimal] => 100644 [fileperms] => 33188 [mode1] => 33188 [mode2] => 33188 ) [filetype] => Array ( [type] => file [type_octal] => 0100000 [is_file] => 1 [is_dir] => [is_link] => [is_readable] => 1 [is_writable] => 1 ) [owner] => Array ( [fileowner] => 035483 [filegroup] => 23472 [owner_name] => askapache [group_name] => grp22558 ) [file] => Array ( [filename] => /web/askapache/askapache-stat/public_html/ok/g.php [realpath] => [dirname] => /web/askapache/askapache-stat/public_html/ok [basename] => g.php ) [device] => Array ( [device] => 25 [device_number] => 0 [inode] => 92455020 [link_count] => 1 [link_to] => ) [size] => Array ( [size] => 2652 [blocks] => 8 [block_size] => 8192 ) [time] => Array ( [mtime] => 1227685253 [atime] => 1227685138 [ctime] => 1227685253 [accessed] => 2008 Nov Tue 23:38:58 [modified] => 2008 Nov Tue 23:40:53 [created] => 2008 Nov Tue 23:40:53 ) )25chmod 563 Array( [perms] => Array ( [umask] => 0022 [human] => -rw-r--r-- [octal1] => 644 [octal2] => 0644 [decimal] => 100644 [fileperms] => 33188 [mode1] => 33188 [mode2] => 33188 ) [filetype] => Array ( [type] => file [type_octal] => 0100000 [is_file] => 1 [is_dir] => [is_link] => [is_readable] => 1 [is_writable] => 1 ) [owner] => Array ( [fileowner] => 035483 [filegroup] => 23472 [owner_name] => askapache [group_name] => grp22558 ) [file] => Array ( [filename] => /web/askapache/askapache-stat/public_html/ok/g.php [realpath] => [dirname] => /web/askapache/askapache-stat/public_html/ok [basename] => g.php ) [device] => Array ( [device] => 25 [device_number] => 0 [inode] => 92455020 [link_count] => 1 [link_to] => ) [size] => Array ( [size] => 2652 [blocks] => 8 [block_size] => 8192 ) [time] => Array ( [mtime] => 1227685253 [atime] => 1227685138 [ctime] => 1227685253 [accessed] => 2008 Nov Tue 23:38:58 [modified] => 2008 Nov Tue 23:40:53 [created] => 2008 Nov Tue 23:40:53 ) )26chmod 564 Array( [perms] => Array ( [umask] => 0022 [human] => -rw-r--r-- [octal1] => 644 [octal2] => 0644 [decimal] => 100644 [fileperms] => 33188 [mode1] => 33188 [mode2] => 33188 ) [filetype] => Array ( [type] => file [type_octal] => 0100000 [is_file] => 1 [is_dir] => [is_link] => [is_readable] => 1 [is_writable] => 1 ) [owner] => Array ( [fileowner] => 035483 [filegroup] => 23472 [owner_name] => askapache [group_name] => grp22558 ) [file] => Array ( [filename] => /web/askapache/askapache-stat/public_html/ok/g.php [realpath] => [dirname] => /web/askapache/askapache-stat/public_html/ok [basename] => g.php ) [device] => Array ( [device] => 25 [device_number] => 0 [inode] => 92455020 [link_count] => 1 [link_to] => ) [size] => Array ( [size] => 2652 [blocks] => 8 [block_size] => 8192 ) [time] => Array ( [mtime] => 1227685253 [atime] => 1227685138 [ctime] => 1227685253 [accessed] => 2008 Nov Tue 23:38:58 [modified] => 2008 Nov Tue 23:40:53 [created] => 2008 Nov Tue 23:40:53 ) )27chmod 565 Array( [perms] => Array ( [umask] => 0022 [human] => -rw-r--r-- [octal1] => 644 [octal2] => 0644 [decimal] => 100644 [fileperms] => 33188 [mode1] => 33188 [mode2] => 33188 ) [filetype] => Array ( [type] => file [type_octal] => 0100000 [is_file] => 1 [is_dir] => [is_link] => [is_readable] => 1 [is_writable] => 1 ) [owner] => Array ( [fileowner] => 035483 [filegroup] => 23472 [owner_name] => askapache [group_name] => grp22558 ) [file] => Array ( [filename] => /web/askapache/askapache-stat/public_html/ok/g.php [realpath] => [dirname] => /web/askapache/askapache-stat/public_html/ok [basename] => g.php ) [device] => Array ( [device] => 25 [device_number] => 0 [inode] => 92455020 [link_count] => 1 [link_to] => ) [size] => Array ( [size] => 2652 [blocks] => 8 [block_size] => 8192 ) [time] => Array ( [mtime] => 1227685253 [atime] => 1227685138 [ctime] => 1227685253 [accessed] => 2008 Nov Tue 23:38:58 [modified] => 2008 Nov Tue 23:40:53 [created] => 2008 Nov Tue 23:40:53 ) )28chmod 566 Array( [perms] => Array ( [umask] => 0022 [human] => -rw-r--r-- [octal1] => 644 [octal2] => 0644 [decimal] => 100644 [fileperms] => 33188 [mode1] => 33188 [mode2] => 33188 ) [filetype] => Array ( [type] => file [type_octal] => 0100000 [is_file] => 1 [is_dir] => [is_link] => [is_readable] => 1 [is_writable] => 1 ) [owner] => Array ( [fileowner] => 035483 [filegroup] => 23472 [owner_name] => askapache [group_name] => grp22558 ) [file] => Array ( [filename] => /web/askapache/askapache-stat/public_html/ok/g.php [realpath] => [dirname] => /web/askapache/askapache-stat/public_html/ok [basename] => g.php ) [device] => Array ( [device] => 25 [device_number] => 0 [inode] => 92455020 [link_count] => 1 [link_to] => ) [size] => Array ( [size] => 2652 [blocks] => 8 [block_size] => 8192 ) [time] => Array ( [mtime] => 1227685253 [atime] => 1227685138 [ctime] => 1227685253 [accessed] => 2008 Nov Tue 23:38:58 [modified] => 2008 Nov Tue 23:40:53 [created] => 2008 Nov Tue 23:40:53 ) )29chmod 567 Array( [perms] => Array ( [umask] => 0022 [human] => -rw-r--r-- [octal1] => 644 [octal2] => 0644 [decimal] => 100644 [fileperms] => 33188 [mode1] => 33188 [mode2] => 33188 ) [filetype] => Array ( [type] => file [type_octal] => 0100000 [is_file] => 1 [is_dir] => [is_link] => [is_readable] => 1 [is_writable] => 1 ) [owner] => Array ( [fileowner] => 035483 [filegroup] => 23472 [owner_name] => askapache [group_name] => grp22558 ) [file] => Array ( [filename] => /web/askapache/askapache-stat/public_html/ok/g.php [realpath] => [dirname] => /web/askapache/askapache-stat/public_html/ok [basename] => g.php ) [device] => Array ( [device] => 25 [device_number] => 0 [inode] => 92455020 [link_count] => 1 [link_to] => ) [size] => Array ( [size] => 2652 [blocks] => 8 [block_size] => 8192 ) [time] => Array ( [mtime] => 1227685253 [atime] => 1227685138 [ctime] => 1227685253 [accessed] => 2008 Nov Tue 23:38:58 [modified] => 2008 Nov Tue 23:40:53 [created] => 2008 Nov Tue 23:40:53 ) )30chmod 570 Array( [perms] => Array ( [umask] => 0022 [human] => -rw-r--r-- [octal1] => 644 [octal2] => 0644 [decimal] => 100644 [fileperms] => 33188 [mode1] => 33188 [mode2] => 33188 ) [filetype] => Array ( [type] => file [type_octal] => 0100000 [is_file] => 1 [is_dir] => [is_link] => [is_readable] => 1 [is_writable] => 1 ) [owner] => Array ( [fileowner] => 035483 [filegroup] => 23472 [owner_name] => askapache [group_name] => grp22558 ) [file] => Array ( [filename] => /web/askapache/askapache-stat/public_html/ok/g.php [realpath] => [dirname] => /web/askapache/askapache-stat/public_html/ok [basename] => g.php ) [device] => Array ( [device] => 25 [device_number] => 0 [inode] => 92455020 [link_count] => 1 [link_to] => ) [size] => Array ( [size] => 2652 [blocks] => 8 [block_size] => 8192 ) [time] => Array ( [mtime] => 1227685253 [atime] => 1227685138 [ctime] => 1227685253 [accessed] => 2008 Nov Tue 23:38:58 [modified] => 2008 Nov Tue 23:40:53 [created] => 2008 Nov Tue 23:40:53 ) )31chmod 571 Array( [perms] => Array ( [umask] => 0022 [human] => -rw-r--r-- [octal1] => 644 [octal2] => 0644 [decimal] => 100644 [fileperms] => 33188 [mode1] => 33188 [mode2] => 33188 ) [filetype] => Array ( [type] => file [type_octal] => 0100000 [is_file] => 1 [is_dir] => [is_link] => [is_readable] => 1 [is_writable] => 1 ) [owner] => Array ( [fileowner] => 035483 [filegroup] => 23472 [owner_name] => askapache [group_name] => grp22558 ) [file] => Array ( [filename] => /web/askapache/askapache-stat/public_html/ok/g.php [realpath] => [dirname] => /web/askapache/askapache-stat/public_html/ok [basename] => g.php ) [device] => Array ( [device] => 25 [device_number] => 0 [inode] => 92455020 [link_count] => 1 [link_to] => ) [size] => Array ( [size] => 2652 [blocks] => 8 [block_size] => 8192 ) [time] => Array ( [mtime] => 1227685253 [atime] => 1227685138 [ctime] => 1227685253 [accessed] => 2008 Nov Tue 23:38:58 [modified] => 2008 Nov Tue 23:40:53 [created] => 2008 Nov Tue 23:40:53 ) )32chmod 572 Array( [perms] => Array ( [umask] => 0022 [human] => -rw-r--r-- [octal1] => 644 [octal2] => 0644 [decimal] => 100644 [fileperms] => 33188 [mode1] => 33188 [mode2] => 33188 ) [filetype] => Array ( [type] => file [type_octal] => 0100000 [is_file] => 1 [is_dir] => [is_link] => [is_readable] => 1 [is_writable] => 1 ) [owner] => Array ( [fileowner] => 035483 [filegroup] => 23472 [owner_name] => askapache [group_name] => grp22558 ) [file] => Array ( [filename] => /web/askapache/askapache-stat/public_html/ok/g.php [realpath] => [dirname] => /web/askapache/askapache-stat/public_html/ok [basename] => g.php ) [device] => Array ( [device] => 25 [device_number] => 0 [inode] => 92455020 [link_count] => 1 [link_to] => ) [size] => Array ( [size] => 2652 [blocks] => 8 [block_size] => 8192 ) [time] => Array ( [mtime] => 1227685253 [atime] => 1227685138 [ctime] => 1227685253 [accessed] => 2008 Nov Tue 23:38:58 [modified] => 2008 Nov Tue 23:40:53 [created] => 2008 Nov Tue 23:40:53 ) )33chmod 573 Array( [perms] => Array ( [umask] => 0022 [human] => -rw-r--r-- [octal1] => 644 [octal2] => 0644 [decimal] => 100644 [fileperms] => 33188 [mode1] => 33188 [mode2] => 33188 ) [filetype] => Array ( [type] => file [type_octal] => 0100000 [is_file] => 1 [is_dir] => [is_link] => [is_readable] => 1 [is_writable] => 1 ) [owner] => Array ( [fileowner] => 035483 [filegroup] => 23472 [owner_name] => askapache [group_name] => grp22558 ) [file] => Array ( [filename] => /web/askapache/askapache-stat/public_html/ok/g.php [realpath] => [dirname] => /web/askapache/askapache-stat/public_html/ok [basename] => g.php ) [device] => Array ( [device] => 25 [device_number] => 0 [inode] => 92455020 [link_count] => 1 [link_to] => ) [size] => Array ( [size] => 2652 [blocks] => 8 [block_size] => 8192 ) [time] => Array ( [mtime] => 1227685253 [atime] => 1227685138 [ctime] => 1227685253 [accessed] => 2008 Nov Tue 23:38:58 [modified] => 2008 Nov Tue 23:40:53 [created] => 2008 Nov Tue 23:40:53 ) )34chmod 574 Array( [perms] => Array ( [umask] => 0022 [human] => -rw-r--r-- [octal1] => 644 [octal2] => 0644 [decimal] => 100644 [fileperms] => 33188 [mode1] => 33188 [mode2] => 33188 ) [filetype] => Array ( [type] => file [type_octal] => 0100000 [is_file] => 1 [is_dir] => [is_link] => [is_readable] => 1 [is_writable] => 1 ) [owner] => Array ( [fileowner] => 035483 [filegroup] => 23472 [owner_name] => askapache [group_name] => grp22558 ) [file] => Array ( [filename] => /web/askapache/askapache-stat/public_html/ok/g.php [realpath] => [dirname] => /web/askapache/askapache-stat/public_html/ok [basename] => g.php ) [device] => Array ( [device] => 25 [device_number] => 0 [inode] => 92455020 [link_count] => 1 [link_to] => ) [size] => Array ( [size] => 2652 [blocks] => 8 [block_size] => 8192 ) [time] => Array ( [mtime] => 1227685253 [atime] => 1227685138 [ctime] => 1227685253 [accessed] => 2008 Nov Tue 23:38:58 [modified] => 2008 Nov Tue 23:40:53 [created] => 2008 Nov Tue 23:40:53 ) )35chmod 575 Array( [perms] => Array ( [umask] => 0022 [human] => -rw-r--r-- [octal1] => 644 [octal2] => 0644 [decimal] => 100644 [fileperms] => 33188 [mode1] => 33188 [mode2] => 33188 ) [filetype] => Array ( [type] => file [type_octal] => 0100000 [is_file] => 1 [is_dir] => [is_link] => [is_readable] => 1 [is_writable] => 1 ) [owner] => Array ( [fileowner] => 035483 [filegroup] => 23472 [owner_name] => askapache [group_name] => grp22558 ) [file] => Array ( [filename] => /web/askapache/askapache-stat/public_html/ok/g.php [realpath] => [dirname] => /web/askapache/askapache-stat/public_html/ok [basename] => g.php ) [device] => Array ( [device] => 25 [device_number] => 0 [inode] => 92455020 [link_count] => 1 [link_to] => ) [size] => Array ( [size] => 2652 [blocks] => 8 [block_size] => 8192 ) [time] => Array ( [mtime] => 1227685253 [atime] => 1227685138 [ctime] => 1227685253 [accessed] => 2008 Nov Tue 23:38:58 [modified] => 2008 Nov Tue 23:40:53 [created] => 2008 Nov Tue 23:40:53 ) )36chmod 576 Array( [perms] => Array ( [umask] => 0022 [human] => -rw-r--r-- [octal1] => 644 [octal2] => 0644 [decimal] => 100644 [fileperms] => 33188 [mode1] => 33188 [mode2] => 33188 ) [filetype] => Array ( [type] => file [type_octal] => 0100000 [is_file] => 1 [is_dir] => [is_link] => [is_readable] => 1 [is_writable] => 1 ) [owner] => Array ( [fileowner] => 035483 [filegroup] => 23472 [owner_name] => askapache [group_name] => grp22558 ) [file] => Array ( [filename] => /web/askapache/askapache-stat/public_html/ok/g.php [realpath] => [dirname] => /web/askapache/askapache-stat/public_html/ok [basename] => g.php ) [device] => Array ( [device] => 25 [device_number] => 0 [inode] => 92455020 [link_count] => 1 [link_to] => ) [size] => Array ( [size] => 2652 [blocks] => 8 [block_size] => 8192 ) [time] => Array ( [mtime] => 1227685253 [atime] => 1227685138 [ctime] => 1227685253 [accessed] => 2008 Nov Tue 23:38:58 [modified] => 2008 Nov Tue 23:40:53 [created] => 2008 Nov Tue 23:40:53 ) )37chmod 577 Array( [perms] => Array ( [umask] => 0022 [human] => -rw-r--r-- [octal1] => 644 [octal2] => 0644 [decimal] => 100644 [fileperms] => 33188 [mode1] => 33188 [mode2] => 33188 ) [filetype] => Array ( [type] => file [type_octal] => 0100000 [is_file] => 1 [is_dir] => [is_link] => [is_readable] => 1 [is_writable] => 1 ) [owner] => Array ( [fileowner] => 035483 [filegroup] => 23472 [owner_name] => askapache [group_name] => grp22558 ) [file] => Array ( [filename] => /web/askapache/askapache-stat/public_html/ok/g.php [realpath] => [dirname] => /web/askapache/askapache-stat/public_html/ok [basename] => g.php ) [device] => Array ( [device] => 25 [device_number] => 0 [inode] => 92455020 [link_count] => 1 [link_to] => ) [size] => Array ( [size] => 2652 [blocks] => 8 [block_size] => 8192 ) [time] => Array ( [mtime] => 1227685253 [atime] => 1227685138 [ctime] => 1227685253 [accessed] => 2008 Nov Tue 23:38:58 [modified] => 2008 Nov Tue 23:40:53 [created] => 2008 Nov Tue 23:40:53 ) )38chmod 600 Array( [perms] => Array ( [umask] => 0022 [human] => -rw-r--r-- [octal1] => 644 [octal2] => 0644 [decimal] => 100644 [fileperms] => 33188 [mode1] => 33188 [mode2] => 33188 ) [filetype] => Array ( [type] => file [type_octal] => 0100000 [is_file] => 1 [is_dir] => [is_link] => [is_readable] => 1 [is_writable] => 1 ) [owner] => Array ( [fileowner] => 035483 [filegroup] => 23472 [owner_name] => askapache [group_name] => grp22558 ) [file] => Array ( [filename] => /web/askapache/askapache-stat/public_html/ok/g.php [realpath] => [dirname] => /web/askapache/askapache-stat/public_html/ok [basename] => g.php ) [device] => Array ( [device] => 25 [device_number] => 0 [inode] => 92455020 [link_count] => 1 [link_to] => ) [size] => Array ( [size] => 2652 [blocks] => 8 [block_size] => 8192 ) [time] => Array ( [mtime] => 1227685253 [atime] => 1227685138 [ctime] => 1227685253 [accessed] => 2008 Nov Tue 23:38:58 [modified] => 2008 Nov Tue 23:40:53 [created] => 2008 Nov Tue 23:40:53 ) )39chmod 601 Array( [perms] => Array ( [umask] => 0022 [human] => -rw-r--r-- [octal1] => 644 [octal2] => 0644 [decimal] => 100644 [fileperms] => 33188 [mode1] => 33188 [mode2] => 33188 ) [filetype] => Array ( [type] => file [type_octal] => 0100000 [is_file] => 1 [is_dir] => [is_link] => [is_readable] => 1 [is_writable] => 1 ) [owner] => Array ( [fileowner] => 035483 [filegroup] => 23472 [owner_name] => askapache [group_name] => grp22558 ) [file] => Array ( [filename] => /web/askapache/askapache-stat/public_html/ok/g.php [realpath] => [dirname] => /web/askapache/askapache-stat/public_html/ok [basename] => g.php ) [device] => Array ( [device] => 25 [device_number] => 0 [inode] => 92455020 [link_count] => 1 [link_to] => ) [size] => Array ( [size] => 2652 [blocks] => 8 [block_size] => 8192 ) [time] => Array ( [mtime] => 1227685253 [atime] => 1227685138 [ctime] => 1227685253 [accessed] => 2008 Nov Tue 23:38:58 [modified] => 2008 Nov Tue 23:40:53 [created] => 2008 Nov Tue 23:40:53 ) )40chmod 602 Array( [perms] => Array ( [umask] => 0022 [human] => -rw-r--r-- [octal1] => 644 [octal2] => 0644 [decimal] => 100644 [fileperms] => 33188 [mode1] => 33188 [mode2] => 33188 ) [filetype] => Array ( [type] => file [type_octal] => 0100000 [is_file] => 1 [is_dir] => [is_link] => [is_readable] => 1 [is_writable] => 1 ) [owner] => Array ( [fileowner] => 035483 [filegroup] => 23472 [owner_name] => askapache [group_name] => grp22558 ) [file] => Array ( [filename] => /web/askapache/askapache-stat/public_html/ok/g.php [realpath] => [dirname] => /web/askapache/askapache-stat/public_html/ok [basename] => g.php ) [device] => Array ( [device] => 25 [device_number] => 0 [inode] => 92455020 [link_count] => 1 [link_to] => ) [size] => Array ( [size] => 2652 [blocks] => 8 [block_size] => 8192 ) [time] => Array ( [mtime] => 1227685253 [atime] => 1227685138 [ctime] => 1227685253 [accessed] => 2008 Nov Tue 23:38:58 [modified] => 2008 Nov Tue 23:40:53 [created] => 2008 Nov Tue 23:40:53 ) )41chmod 603 Array( [perms] => Array ( [umask] => 0022 [human] => -rw-r--r-- [octal1] => 644 [octal2] => 0644 [decimal] => 100644 [fileperms] => 33188 [mode1] => 33188 [mode2] => 33188 ) [filetype] => Array ( [type] => file [type_octal] => 0100000 [is_file] => 1 [is_dir] => [is_link] => [is_readable] => 1 [is_writable] => 1 ) [owner] => Array ( [fileowner] => 035483 [filegroup] => 23472 [owner_name] => askapache [group_name] => grp22558 ) [file] => Array ( [filename] => /web/askapache/askapache-stat/public_html/ok/g.php [realpath] => [dirname] => /web/askapache/askapache-stat/public_html/ok [basename] => g.php ) [device] => Array ( [device] => 25 [device_number] => 0 [inode] => 92455020 [link_count] => 1 [link_to] => ) [size] => Array ( [size] => 2652 [blocks] => 8 [block_size] => 8192 ) [time] => Array ( [mtime] => 1227685253 [atime] => 1227685138 [ctime] => 1227685253 [accessed] => 2008 Nov Tue 23:38:58 [modified] => 2008 Nov Tue 23:40:53 [created] => 2008 Nov Tue 23:40:53 ) )42chmod 604 Array( [perms] => Array ( [umask] => 0022 [human] => -rw-r--r-- [octal1] => 644 [octal2] => 0644 [decimal] => 100644 [fileperms] => 33188 [mode1] => 33188 [mode2] => 33188 ) [filetype] => Array ( [type] => file [type_octal] => 0100000 [is_file] => 1 [is_dir] => [is_link] => [is_readable] => 1 [is_writable] => 1 ) [owner] => Array ( [fileowner] => 035483 [filegroup] => 23472 [owner_name] => askapache [group_name] => grp22558 ) [file] => Array ( [filename] => /web/askapache/askapache-stat/public_html/ok/g.php [realpath] => [dirname] => /web/askapache/askapache-stat/public_html/ok [basename] => g.php ) [device] => Array ( [device] => 25 [device_number] => 0 [inode] => 92455020 [link_count] => 1 [link_to] => ) [size] => Array ( [size] => 2652 [blocks] => 8 [block_size] => 8192 ) [time] => Array ( [mtime] => 1227685253 [atime] => 1227685138 [ctime] => 1227685253 [accessed] => 2008 Nov Tue 23:38:58 [modified] => 2008 Nov Tue 23:40:53 [created] => 2008 Nov Tue 23:40:53 ) )43chmod 605 Array( [perms] => Array ( [umask] => 0022 [human] => -rw-r--r-- [octal1] => 644 [octal2] => 0644 [decimal] => 100644 [fileperms] => 33188 [mode1] => 33188 [mode2] => 33188 ) [filetype] => Array ( [type] => file [type_octal] => 0100000 [is_file] => 1 [is_dir] => [is_link] => [is_readable] => 1 [is_writable] => 1 ) [owner] => Array ( [fileowner] => 035483 [filegroup] => 23472 [owner_name] => askapache [group_name] => grp22558 ) [file] => Array ( [filename] => /web/askapache/askapache-stat/public_html/ok/g.php [realpath] => [dirname] => /web/askapache/askapache-stat/public_html/ok [basename] => g.php ) [device] => Array ( [device] => 25 [device_number] => 0 [inode] => 92455020 [link_count] => 1 [link_to] => ) [size] => Array ( [size] => 2652 [blocks] => 8 [block_size] => 8192 ) [time] => Array ( [mtime] => 1227685253 [atime] => 1227685138 [ctime] => 1227685253 [accessed] => 2008 Nov Tue 23:38:58 [modified] => 2008 Nov Tue 23:40:53 [created] => 2008 Nov Tue 23:40:53 ) )44chmod 606 Array( [perms] => Array ( [umask] => 0022 [human] => -rw-r--r-- [octal1] => 644 [octal2] => 0644 [decimal] => 100644 [fileperms] => 33188 [mode1] => 33188 [mode2] => 33188 ) [filetype] => Array ( [type] => file [type_octal] => 0100000 [is_file] => 1 [is_dir] => [is_link] => [is_readable] => 1 [is_writable] => 1 ) [owner] => Array ( [fileowner] => 035483 [filegroup] => 23472 [owner_name] => askapache [group_name] => grp22558 ) [file] => Array ( [filename] => /web/askapache/askapache-stat/public_html/ok/g.php [realpath] => [dirname] => /web/askapache/askapache-stat/public_html/ok [basename] => g.php ) [device] => Array ( [device] => 25 [device_number] => 0 [inode] => 92455020 [link_count] => 1 [link_to] => ) [size] => Array ( [size] => 2652 [blocks] => 8 [block_size] => 8192 ) [time] => Array ( [mtime] => 1227685253 [atime] => 1227685138 [ctime] => 1227685253 [accessed] => 2008 Nov Tue 23:38:58 [modified] => 2008 Nov Tue 23:40:53 [created] => 2008 Nov Tue 23:40:53 ) )45chmod 607 Array( [perms] => Array ( [umask] => 0022 [human] => -rw-r--r-- [octal1] => 644 [octal2] => 0644 [decimal] => 100644 [fileperms] => 33188 [mode1] => 33188 [mode2] => 33188 ) [filetype] => Array ( [type] => file [type_octal] => 0100000 [is_file] => 1 [is_dir] => [is_link] => [is_readable] => 1 [is_writable] => 1 ) [owner] => Array ( [fileowner] => 035483 [filegroup] => 23472 [owner_name] => askapache [group_name] => grp22558 ) [file] => Array ( [filename] => /web/askapache/askapache-stat/public_html/ok/g.php [realpath] => [dirname] => /web/askapache/askapache-stat/public_html/ok [basename] => g.php ) [device] => Array ( [device] => 25 [device_number] => 0 [inode] => 92455020 [link_count] => 1 [link_to] => ) [size] => Array ( [size] => 2652 [blocks] => 8 [block_size] => 8192 ) [time] => Array ( [mtime] => 1227685253 [atime] => 1227685138 [ctime] => 1227685253 [accessed] => 2008 Nov Tue 23:38:58 [modified] => 2008 Nov Tue 23:40:53 [created] => 2008 Nov Tue 23:40:53 ) )46chmod 610 Array( [perms] => Array ( [umask] => 0022 [human] => -rw-r--r-- [octal1] => 644 [octal2] => 0644 [decimal] => 100644 [fileperms] => 33188 [mode1] => 33188 [mode2] => 33188 ) [filetype] => Array ( [type] => file [type_octal] => 0100000 [is_file] => 1 [is_dir] => [is_link] => [is_readable] => 1 [is_writable] => 1 ) [owner] => Array ( [fileowner] => 035483 [filegroup] => 23472 [owner_name] => askapache [group_name] => grp22558 ) [file] => Array ( [filename] => /web/askapache/askapache-stat/public_html/ok/g.php [realpath] => [dirname] => /web/askapache/askapache-stat/public_html/ok [basename] => g.php ) [device] => Array ( [device] => 25 [device_number] => 0 [inode] => 92455020 [link_count] => 1 [link_to] => ) [size] => Array ( [size] => 2652 [blocks] => 8 [block_size] => 8192 ) [time] => Array ( [mtime] => 1227685253 [atime] => 1227685138 [ctime] => 1227685253 [accessed] => 2008 Nov Tue 23:38:58 [modified] => 2008 Nov Tue 23:40:53 [created] => 2008 Nov Tue 23:40:53 ) )47chmod 611 Array( [perms] => Array ( [umask] => 0022 [human] => -rw-r--r-- [octal1] => 644 [octal2] => 0644 [decimal] => 100644 [fileperms] => 33188 [mode1] => 33188 [mode2] => 33188 ) [filetype] => Array ( [type] => file [type_octal] => 0100000 [is_file] => 1 [is_dir] => [is_link] => [is_readable] => 1 [is_writable] => 1 ) [owner] => Array ( [fileowner] => 035483 [filegroup] => 23472 [owner_name] => askapache [group_name] => grp22558 ) [file] => Array ( [filename] => /web/askapache/askapache-stat/public_html/ok/g.php [realpath] => [dirname] => /web/askapache/askapache-stat/public_html/ok [basename] => g.php ) [device] => Array ( [device] => 25 [device_number] => 0 [inode] => 92455020 [link_count] => 1 [link_to] => ) [size] => Array ( [size] => 2652 [blocks] => 8 [block_size] => 8192 ) [time] => Array ( [mtime] => 1227685253 [atime] => 1227685138 [ctime] => 1227685253 [accessed] => 2008 Nov Tue 23:38:58 [modified] => 2008 Nov Tue 23:40:53 [created] => 2008 Nov Tue 23:40:53 ) )48chmod 612 Array( [perms] => Array ( [umask] => 0022 [human] => -rw-r--r-- [octal1] => 644 [octal2] => 0644 [decimal] => 100644 [fileperms] => 33188 [mode1] => 33188 [mode2] => 33188 ) [filetype] => Array ( [type] => file [type_octal] => 0100000 [is_file] => 1 [is_dir] => [is_link] => [is_readable] => 1 [is_writable] => 1 ) [owner] => Array ( [fileowner] => 035483 [filegroup] => 23472 [owner_name] => askapache [group_name] => grp22558 ) [file] => Array ( [filename] => /web/askapache/askapache-stat/public_html/ok/g.php [realpath] => [dirname] => /web/askapache/askapache-stat/public_html/ok [basename] => g.php ) [device] => Array ( [device] => 25 [device_number] => 0 [inode] => 92455020 [link_count] => 1 [link_to] => ) [size] => Array ( [size] => 2652 [blocks] => 8 [block_size] => 8192 ) [time] => Array ( [mtime] => 1227685253 [atime] => 1227685138 [ctime] => 1227685253 [accessed] => 2008 Nov Tue 23:38:58 [modified] => 2008 Nov Tue 23:40:53 [created] => 2008 Nov Tue 23:40:53 ) )49chmod 613 Array( [perms] => Array ( [umask] => 0022 [human] => -rw-r--r-- [octal1] => 644 [octal2] => 0644 [decimal] => 100644 [fileperms] => 33188 [mode1] => 33188 [mode2] => 33188 ) [filetype] => Array ( [type] => file [type_octal] => 0100000 [is_file] => 1 [is_dir] => [is_link] => [is_readable] => 1 [is_writable] => 1 ) [owner] => Array ( [fileowner] => 035483 [filegroup] => 23472 [owner_name] => askapache [group_name] => grp22558 ) [file] => Array ( [filename] => /web/askapache/askapache-stat/public_html/ok/g.php [realpath] => [dirname] => /web/askapache/askapache-stat/public_html/ok [basename] => g.php ) [device] => Array ( [device] => 25 [device_number] => 0 [inode] => 92455020 [link_count] => 1 [link_to] => ) [size] => Array ( [size] => 2652 [blocks] => 8 [block_size] => 8192 ) [time] => Array ( [mtime] => 1227685253 [atime] => 1227685138 [ctime] => 1227685253 [accessed] => 2008 Nov Tue 23:38:58 [modified] => 2008 Nov Tue 23:40:53 [created] => 2008 Nov Tue 23:40:53 ) )50chmod 614 Array( [perms] => Array ( [umask] => 0022 [human] => -rw-r--r-- [octal1] => 644 [octal2] => 0644 [decimal] => 100644 [fileperms] => 33188 [mode1] => 33188 [mode2] => 33188 ) [filetype] => Array ( [type] => file [type_octal] => 0100000 [is_file] => 1 [is_dir] => [is_link] => [is_readable] => 1 [is_writable] => 1 ) [owner] => Array ( [fileowner] => 035483 [filegroup] => 23472 [owner_name] => askapache [group_name] => grp22558 ) [file] => Array ( [filename] => /web/askapache/askapache-stat/public_html/ok/g.php [realpath] => [dirname] => /web/askapache/askapache-stat/public_html/ok [basename] => g.php ) [device] => Array ( [device] => 25 [device_number] => 0 [inode] => 92455020 [link_count] => 1 [link_to] => ) [size] => Array ( [size] => 2652 [blocks] => 8 [block_size] => 8192 ) [time] => Array ( [mtime] => 1227685253 [atime] => 1227685138 [ctime] => 1227685253 [accessed] => 2008 Nov Tue 23:38:58 [modified] => 2008 Nov Tue 23:40:53 [created] => 2008 Nov Tue 23:40:53 ) )51chmod 615 Array( [perms] => Array ( [umask] => 0022 [human] => -rw-r--r-- [octal1] => 644 [octal2] => 0644 [decimal] => 100644 [fileperms] => 33188 [mode1] => 33188 [mode2] => 33188 ) [filetype] => Array ( [type] => file [type_octal] => 0100000 [is_file] => 1 [is_dir] => [is_link] => [is_readable] => 1 [is_writable] => 1 ) [owner] => Array ( [fileowner] => 035483 [filegroup] => 23472 [owner_name] => askapache [group_name] => grp22558 ) [file] => Array ( [filename] => /web/askapache/askapache-stat/public_html/ok/g.php [realpath] => [dirname] => /web/askapache/askapache-stat/public_html/ok [basename] => g.php ) [device] => Array ( [device] => 25 [device_number] => 0 [inode] => 92455020 [link_count] => 1 [link_to] => ) [size] => Array ( [size] => 2652 [blocks] => 8 [block_size] => 8192 ) [time] => Array ( [mtime] => 1227685253 [atime] => 1227685138 [ctime] => 1227685253 [accessed] => 2008 Nov Tue 23:38:58 [modified] => 2008 Nov Tue 23:40:53 [created] => 2008 Nov Tue 23:40:53 ) )52chmod 616 Array( [perms] => Array ( [umask] => 0022 [human] => -rw-r--r-- [octal1] => 644 [octal2] => 0644 [decimal] => 100644 [fileperms] => 33188 [mode1] => 33188 [mode2] => 33188 ) [filetype] => Array ( [type] => file [type_octal] => 0100000 [is_file] => 1 [is_dir] => [is_link] => [is_readable] => 1 [is_writable] => 1 ) [owner] => Array ( [fileowner] => 035483 [filegroup] => 23472 [owner_name] => askapache [group_name] => grp22558 ) [file] => Array ( [filename] => /web/askapache/askapache-stat/public_html/ok/g.php [realpath] => [dirname] => /web/askapache/askapache-stat/public_html/ok [basename] => g.php ) [device] => Array ( [device] => 25 [device_number] => 0 [inode] => 92455020 [link_count] => 1 [link_to] => ) [size] => Array ( [size] => 2652 [blocks] => 8 [block_size] => 8192 ) [time] => Array ( [mtime] => 1227685253 [atime] => 1227685138 [ctime] => 1227685253 [accessed] => 2008 Nov Tue 23:38:58 [modified] => 2008 Nov Tue 23:40:53 [created] => 2008 Nov Tue 23:40:53 ) )53chmod 617 Array( [perms] => Array ( [umask] => 0022 [human] => -rw-r--r-- [octal1] => 644 [octal2] => 0644 [decimal] => 100644 [fileperms] => 33188 [mode1] => 33188 [mode2] => 33188 ) [filetype] => Array ( [type] => file [type_octal] => 0100000 [is_file] => 1 [is_dir] => [is_link] => [is_readable] => 1 [is_writable] => 1 ) [owner] => Array ( [fileowner] => 035483 [filegroup] => 23472 [owner_name] => askapache [group_name] => grp22558 ) [file] => Array ( [filename] => /web/askapache/askapache-stat/public_html/ok/g.php [realpath] => [dirname] => /web/askapache/askapache-stat/public_html/ok [basename] => g.php ) [device] => Array ( [device] => 25 [device_number] => 0 [inode] => 92455020 [link_count] => 1 [link_to] => ) [size] => Array ( [size] => 2652 [blocks] => 8 [block_size] => 8192 ) [time] => Array ( [mtime] => 1227685253 [atime] => 1227685138 [ctime] => 1227685253 [accessed] => 2008 Nov Tue 23:38:58 [modified] => 2008 Nov Tue 23:40:53 [created] => 2008 Nov Tue 23:40:53 ) )54chmod 620 Array( [perms] => Array ( [umask] => 0022 [human] => -rw-r--r-- [octal1] => 644 [octal2] => 0644 [decimal] => 100644 [fileperms] => 33188 [mode1] => 33188 [mode2] => 33188 ) [filetype] => Array ( [type] => file [type_octal] => 0100000 [is_file] => 1 [is_dir] => [is_link] => [is_readable] => 1 [is_writable] => 1 ) [owner] => Array ( [fileowner] => 035483 [filegroup] => 23472 [owner_name] => askapache [group_name] => grp22558 ) [file] => Array ( [filename] => /web/askapache/askapache-stat/public_html/ok/g.php [realpath] => [dirname] => /web/askapache/askapache-stat/public_html/ok [basename] => g.php ) [device] => Array ( [device] => 25 [device_number] => 0 [inode] => 92455020 [link_count] => 1 [link_to] => ) [size] => Array ( [size] => 2652 [blocks] => 8 [block_size] => 8192 ) [time] => Array ( [mtime] => 1227685253 [atime] => 1227685138 [ctime] => 1227685253 [accessed] => 2008 Nov Tue 23:38:58 [modified] => 2008 Nov Tue 23:40:53 [created] => 2008 Nov Tue 23:40:53 ) )55chmod 621 Array( [perms] => Array ( [umask] => 0022 [human] => -rw-r--r-- [octal1] => 644 [octal2] => 0644 [decimal] => 100644 [fileperms] => 33188 [mode1] => 33188 [mode2] => 33188 ) [filetype] => Array ( [type] => file [type_octal] => 0100000 [is_file] => 1 [is_dir] => [is_link] => [is_readable] => 1 [is_writable] => 1 ) [owner] => Array ( [fileowner] => 035483 [filegroup] => 23472 [owner_name] => askapache [group_name] => grp22558 ) [file] => Array ( [filename] => /web/askapache/askapache-stat/public_html/ok/g.php [realpath] => [dirname] => /web/askapache/askapache-stat/public_html/ok [basename] => g.php ) [device] => Array ( [device] => 25 [device_number] => 0 [inode] => 92455020 [link_count] => 1 [link_to] => ) [size] => Array ( [size] => 2652 [blocks] => 8 [block_size] => 8192 ) [time] => Array ( [mtime] => 1227685253 [atime] => 1227685138 [ctime] => 1227685253 [accessed] => 2008 Nov Tue 23:38:58 [modified] => 2008 Nov Tue 23:40:53 [created] => 2008 Nov Tue 23:40:53 ) )56chmod 622 Array( [perms] => Array ( [umask] => 0022 [human] => -rw-r--r-- [octal1] => 644 [octal2] => 0644 [decimal] => 100644 [fileperms] => 33188 [mode1] => 33188 [mode2] => 33188 ) [filetype] => Array ( [type] => file [type_octal] => 0100000 [is_file] => 1 [is_dir] => [is_link] => [is_readable] => 1 [is_writable] => 1 ) [owner] => Array ( [fileowner] => 035483 [filegroup] => 23472 [owner_name] => askapache [group_name] => grp22558 ) [file] => Array ( [filename] => /web/askapache/askapache-stat/public_html/ok/g.php [realpath] => [dirname] => /web/askapache/askapache-stat/public_html/ok [basename] => g.php ) [device] => Array ( [device] => 25 [device_number] => 0 [inode] => 92455020 [link_count] => 1 [link_to] => ) [size] => Array ( [size] => 2652 [blocks] => 8 [block_size] => 8192 ) [time] => Array ( [mtime] => 1227685253 [atime] => 1227685138 [ctime] => 1227685253 [accessed] => 2008 Nov Tue 23:38:58 [modified] => 2008 Nov Tue 23:40:53 [created] => 2008 Nov Tue 23:40:53 ) )57chmod 623 Array( [perms] => Array ( [umask] => 0022 [human] => -rw-r--r-- [octal1] => 644 [octal2] => 0644 [decimal] => 100644 [fileperms] => 33188 [mode1] => 33188 [mode2] => 33188 ) [filetype] => Array ( [type] => file [type_octal] => 0100000 [is_file] => 1 [is_dir] => [is_link] => [is_readable] => 1 [is_writable] => 1 ) [owner] => Array ( [fileowner] => 035483 [filegroup] => 23472 [owner_name] => askapache [group_name] => grp22558 ) [file] => Array ( [filename] => /web/askapache/askapache-stat/public_html/ok/g.php [realpath] => [dirname] => /web/askapache/askapache-stat/public_html/ok [basename] => g.php ) [device] => Array ( [device] => 25 [device_number] => 0 [inode] => 92455020 [link_count] => 1 [link_to] => ) [size] => Array ( [size] => 2652 [blocks] => 8 [block_size] => 8192 ) [time] => Array ( [mtime] => 1227685253 [atime] => 1227685138 [ctime] => 1227685253 [accessed] => 2008 Nov Tue 23:38:58 [modified] => 2008 Nov Tue 23:40:53 [created] => 2008 Nov Tue 23:40:53 ) )58chmod 624 Array( [perms] => Array ( [umask] => 0022 [human] => -rw-r--r-- [octal1] => 644 [octal2] => 0644 [decimal] => 100644 [fileperms] => 33188 [mode1] => 33188 [mode2] => 33188 ) [filetype] => Array ( [type] => file [type_octal] => 0100000 [is_file] => 1 [is_dir] => [is_link] => [is_readable] => 1 [is_writable] => 1 ) [owner] => Array ( [fileowner] => 035483 [filegroup] => 23472 [owner_name] => askapache [group_name] => grp22558 ) [file] => Array ( [filename] => /web/askapache/askapache-stat/public_html/ok/g.php [realpath] => [dirname] => /web/askapache/askapache-stat/public_html/ok [basename] => g.php ) [device] => Array ( [device] => 25 [device_number] => 0 [inode] => 92455020 [link_count] => 1 [link_to] => ) [size] => Array ( [size] => 2652 [blocks] => 8 [block_size] => 8192 ) [time] => Array ( [mtime] => 1227685253 [atime] => 1227685138 [ctime] => 1227685253 [accessed] => 2008 Nov Tue 23:38:58 [modified] => 2008 Nov Tue 23:40:53 [created] => 2008 Nov Tue 23:40:53 ) )59chmod 625 Array( [perms] => Array ( [umask] => 0022 [human] => -rw-r--r-- [octal1] => 644 [octal2] => 0644 [decimal] => 100644 [fileperms] => 33188 [mode1] => 33188 [mode2] => 33188 ) [filetype] => Array ( [type] => file [type_octal] => 0100000 [is_file] => 1 [is_dir] => [is_link] => [is_readable] => 1 [is_writable] => 1 ) [owner] => Array ( [fileowner] => 035483 [filegroup] => 23472 [owner_name] => askapache [group_name] => grp22558 ) [file] => Array ( [filename] => /web/askapache/askapache-stat/public_html/ok/g.php [realpath] => [dirname] => /web/askapache/askapache-stat/public_html/ok [basename] => g.php ) [device] => Array ( [device] => 25 [device_number] => 0 [inode] => 92455020 [link_count] => 1 [link_to] => ) [size] => Array ( [size] => 2652 [blocks] => 8 [block_size] => 8192 ) [time] => Array ( [mtime] => 1227685253 [atime] => 1227685138 [ctime] => 1227685253 [accessed] => 2008 Nov Tue 23:38:58 [modified] => 2008 Nov Tue 23:40:53 [created] => 2008 Nov Tue 23:40:53 ) )60chmod 626 Array( [perms] => Array ( [umask] => 0022 [human] => -rw-r--r-- [octal1] => 644 [octal2] => 0644 [decimal] => 100644 [fileperms] => 33188 [mode1] => 33188 [mode2] => 33188 ) [filetype] => Array ( [type] => file [type_octal] => 0100000 [is_file] => 1 [is_dir] => [is_link] => [is_readable] => 1 [is_writable] => 1 ) [owner] => Array ( [fileowner] => 035483 [filegroup] => 23472 [owner_name] => askapache [group_name] => grp22558 ) [file] => Array ( [filename] => /web/askapache/askapache-stat/public_html/ok/g.php [realpath] => [dirname] => /web/askapache/askapache-stat/public_html/ok [basename] => g.php ) [device] => Array ( [device] => 25 [device_number] => 0 [inode] => 92455020 [link_count] => 1 [link_to] => ) [size] => Array ( [size] => 2652 [blocks] => 8 [block_size] => 8192 ) [time] => Array ( [mtime] => 1227685253 [atime] => 1227685138 [ctime] => 1227685253 [accessed] => 2008 Nov Tue 23:38:58 [modified] => 2008 Nov Tue 23:40:53 [created] => 2008 Nov Tue 23:40:53 ) )61chmod 627 Array( [perms] => Array ( [umask] => 0022 [human] => -rw-r--r-- [octal1] => 644 [octal2] => 0644 [decimal] => 100644 [fileperms] => 33188 [mode1] => 33188 [mode2] => 33188 ) [filetype] => Array ( [type] => file [type_octal] => 0100000 [is_file] => 1 [is_dir] => [is_link] => [is_readable] => 1 [is_writable] => 1 ) [owner] => Array ( [fileowner] => 035483 [filegroup] => 23472 [owner_name] => askapache [group_name] => grp22558 ) [file] => Array ( [filename] => /web/askapache/askapache-stat/public_html/ok/g.php [realpath] => [dirname] => /web/askapache/askapache-stat/public_html/ok [basename] => g.php ) [device] => Array ( [device] => 25 [device_number] => 0 [inode] => 92455020 [link_count] => 1 [link_to] => ) [size] => Array ( [size] => 2652 [blocks] => 8 [block_size] => 8192 ) [time] => Array ( [mtime] => 1227685253 [atime] => 1227685138 [ctime] => 1227685253 [accessed] => 2008 Nov Tue 23:38:58 [modified] => 2008 Nov Tue 23:40:53 [created] => 2008 Nov Tue 23:40:53 ) )62chmod 630 Array( [perms] => Array ( [umask] => 0022 [human] => -rw-r--r-- [octal1] => 644 [octal2] => 0644 [decimal] => 100644 [fileperms] => 33188 [mode1] => 33188 [mode2] => 33188 ) [filetype] => Array ( [type] => file [type_octal] => 0100000 [is_file] => 1 [is_dir] => [is_link] => [is_readable] => 1 [is_writable] => 1 ) [owner] => Array ( [fileowner] => 035483 [filegroup] => 23472 [owner_name] => askapache [group_name] => grp22558 ) [file] => Array ( [filename] => /web/askapache/askapache-stat/public_html/ok/g.php [realpath] => [dirname] => /web/askapache/askapache-stat/public_html/ok [basename] => g.php ) [device] => Array ( [device] => 25 [device_number] => 0 [inode] => 92455020 [link_count] => 1 [link_to] => ) [size] => Array ( [size] => 2652 [blocks] => 8 [block_size] => 8192 ) [time] => Array ( [mtime] => 1227685253 [atime] => 1227685138 [ctime] => 1227685253 [accessed] => 2008 Nov Tue 23:38:58 [modified] => 2008 Nov Tue 23:40:53 [created] => 2008 Nov Tue 23:40:53 ) )63chmod 631 Array( [perms] => Array ( [umask] => 0022 [human] => -rw-r--r-- [octal1] => 644 [octal2] => 0644 [decimal] => 100644 [fileperms] => 33188 [mode1] => 33188 [mode2] => 33188 ) [filetype] => Array ( [type] => file [type_octal] => 0100000 [is_file] => 1 [is_dir] => [is_link] => [is_readable] => 1 [is_writable] => 1 ) [owner] => Array ( [fileowner] => 035483 [filegroup] => 23472 [owner_name] => askapache [group_name] => grp22558 ) [file] => Array ( [filename] => /web/askapache/askapache-stat/public_html/ok/g.php [realpath] => [dirname] => /web/askapache/askapache-stat/public_html/ok [basename] => g.php ) [device] => Array ( [device] => 25 [device_number] => 0 [inode] => 92455020 [link_count] => 1 [link_to] => ) [size] => Array ( [size] => 2652 [blocks] => 8 [block_size] => 8192 ) [time] => Array ( [mtime] => 1227685253 [atime] => 1227685138 [ctime] => 1227685253 [accessed] => 2008 Nov Tue 23:38:58 [modified] => 2008 Nov Tue 23:40:53 [created] => 2008 Nov Tue 23:40:53 ) )64chmod 632 Array( [perms] => Array ( [umask] => 0022 [human] => -rw-r--r-- [octal1] => 644 [octal2] => 0644 [decimal] => 100644 [fileperms] => 33188 [mode1] => 33188 [mode2] => 33188 ) [filetype] => Array ( [type] => file [type_octal] => 0100000 [is_file] => 1 [is_dir] => [is_link] => [is_readable] => 1 [is_writable] => 1 ) [owner] => Array ( [fileowner] => 035483 [filegroup] => 23472 [owner_name] => askapache [group_name] => grp22558 ) [file] => Array ( [filename] => /web/askapache/askapache-stat/public_html/ok/g.php [realpath] => [dirname] => /web/askapache/askapache-stat/public_html/ok [basename] => g.php ) [device] => Array ( [device] => 25 [device_number] => 0 [inode] => 92455020 [link_count] => 1 [link_to] => ) [size] => Array ( [size] => 2652 [blocks] => 8 [block_size] => 8192 ) [time] => Array ( [mtime] => 1227685253 [atime] => 1227685138 [ctime] => 1227685253 [accessed] => 2008 Nov Tue 23:38:58 [modified] => 2008 Nov Tue 23:40:53 [created] => 2008 Nov Tue 23:40:53 ) )65chmod 633 Array( [perms] => Array ( [umask] => 0022 [human] => -rw-r--r-- [octal1] => 644 [octal2] => 0644 [decimal] => 100644 [fileperms] => 33188 [mode1] => 33188 [mode2] => 33188 ) [filetype] => Array ( [type] => file [type_octal] => 0100000 [is_file] => 1 [is_dir] => [is_link] => [is_readable] => 1 [is_writable] => 1 ) [owner] => Array ( [fileowner] => 035483 [filegroup] => 23472 [owner_name] => askapache [group_name] => grp22558 ) [file] => Array ( [filename] => /web/askapache/askapache-stat/public_html/ok/g.php [realpath] => [dirname] => /web/askapache/askapache-stat/public_html/ok [basename] => g.php ) [device] => Array ( [device] => 25 [device_number] => 0 [inode] => 92455020 [link_count] => 1 [link_to] => ) [size] => Array ( [size] => 2652 [blocks] => 8 [block_size] => 8192 ) [time] => Array ( [mtime] => 1227685253 [atime] => 1227685138 [ctime] => 1227685253 [accessed] => 2008 Nov Tue 23:38:58 [modified] => 2008 Nov Tue 23:40:53 [created] => 2008 Nov Tue 23:40:53 ) )66chmod 634 Array( [perms] => Array ( [umask] => 0022 [human] => -rw-r--r-- [octal1] => 644 [octal2] => 0644 [decimal] => 100644 [fileperms] => 33188 [mode1] => 33188 [mode2] => 33188 ) [filetype] => Array ( [type] => file [type_octal] => 0100000 [is_file] => 1 [is_dir] => [is_link] => [is_readable] => 1 [is_writable] => 1 ) [owner] => Array ( [fileowner] => 035483 [filegroup] => 23472 [owner_name] => askapache [group_name] => grp22558 ) [file] => Array ( [filename] => /web/askapache/askapache-stat/public_html/ok/g.php [realpath] => [dirname] => /web/askapache/askapache-stat/public_html/ok [basename] => g.php ) [device] => Array ( [device] => 25 [device_number] => 0 [inode] => 92455020 [link_count] => 1 [link_to] => ) [size] => Array ( [size] => 2652 [blocks] => 8 [block_size] => 8192 ) [time] => Array ( [mtime] => 1227685253 [atime] => 1227685138 [ctime] => 1227685253 [accessed] => 2008 Nov Tue 23:38:58 [modified] => 2008 Nov Tue 23:40:53 [created] => 2008 Nov Tue 23:40:53 ) )67chmod 635 Array( [perms] => Array ( [umask] => 0022 [human] => -rw-r--r-- [octal1] => 644 [octal2] => 0644 [decimal] => 100644 [fileperms] => 33188 [mode1] => 33188 [mode2] => 33188 ) [filetype] => Array ( [type] => file [type_octal] => 0100000 [is_file] => 1 [is_dir] => [is_link] => [is_readable] => 1 [is_writable] => 1 ) [owner] => Array ( [fileowner] => 035483 [filegroup] => 23472 [owner_name] => askapache [group_name] => grp22558 ) [file] => Array ( [filename] => /web/askapache/askapache-stat/public_html/ok/g.php [realpath] => [dirname] => /web/askapache/askapache-stat/public_html/ok [basename] => g.php ) [device] => Array ( [device] => 25 [device_number] => 0 [inode] => 92455020 [link_count] => 1 [link_to] => ) [size] => Array ( [size] => 2652 [blocks] => 8 [block_size] => 8192 ) [time] => Array ( [mtime] => 1227685253 [atime] => 1227685138 [ctime] => 1227685253 [accessed] => 2008 Nov Tue 23:38:58 [modified] => 2008 Nov Tue 23:40:53 [created] => 2008 Nov Tue 23:40:53 ) )68chmod 636 Array( [perms] => Array ( [umask] => 0022 [human] => -rw-r--r-- [octal1] => 644 [octal2] => 0644 [decimal] => 100644 [fileperms] => 33188 [mode1] => 33188 [mode2] => 33188 ) [filetype] => Array ( [type] => file [type_octal] => 0100000 [is_file] => 1 [is_dir] => [is_link] => [is_readable] => 1 [is_writable] => 1 ) [owner] => Array ( [fileowner] => 035483 [filegroup] => 23472 [owner_name] => askapache [group_name] => grp22558 ) [file] => Array ( [filename] => /web/askapache/askapache-stat/public_html/ok/g.php [realpath] => [dirname] => /web/askapache/askapache-stat/public_html/ok [basename] => g.php ) [device] => Array ( [device] => 25 [device_number] => 0 [inode] => 92455020 [link_count] => 1 [link_to] => ) [size] => Array ( [size] => 2652 [blocks] => 8 [block_size] => 8192 ) [time] => Array ( [mtime] => 1227685253 [atime] => 1227685138 [ctime] => 1227685253 [accessed] => 2008 Nov Tue 23:38:58 [modified] => 2008 Nov Tue 23:40:53 [created] => 2008 Nov Tue 23:40:53 ) )69chmod 637 Array( [perms] => Array ( [umask] => 0022 [human] => -rw-r--r-- [octal1] => 644 [octal2] => 0644 [decimal] => 100644 [fileperms] => 33188 [mode1] => 33188 [mode2] => 33188 ) [filetype] => Array ( [type] => file [type_octal] => 0100000 [is_file] => 1 [is_dir] => [is_link] => [is_readable] => 1 [is_writable] => 1 ) [owner] => Array ( [fileowner] => 035483 [filegroup] => 23472 [owner_name] => askapache [group_name] => grp22558 ) [file] => Array ( [filename] => /web/askapache/askapache-stat/public_html/ok/g.php [realpath] => [dirname] => /web/askapache/askapache-stat/public_html/ok [basename] => g.php ) [device] => Array ( [device] => 25 [device_number] => 0 [inode] => 92455020 [link_count] => 1 [link_to] => ) [size] => Array ( [size] => 2652 [blocks] => 8 [block_size] => 8192 ) [time] => Array ( [mtime] => 1227685253 [atime] => 1227685138 [ctime] => 1227685253 [accessed] => 2008 Nov Tue 23:38:58 [modified] => 2008 Nov Tue 23:40:53 [created] => 2008 Nov Tue 23:40:53 ) )70chmod 640 Array( [perms] => Array ( [umask] => 0022 [human] => -rw-r--r-- [octal1] => 644 [octal2] => 0644 [decimal] => 100644 [fileperms] => 33188 [mode1] => 33188 [mode2] => 33188 ) [filetype] => Array ( [type] => file [type_octal] => 0100000 [is_file] => 1 [is_dir] => [is_link] => [is_readable] => 1 [is_writable] => 1 ) [owner] => Array ( [fileowner] => 035483 [filegroup] => 23472 [owner_name] => askapache [group_name] => grp22558 ) [file] => Array ( [filename] => /web/askapache/askapache-stat/public_html/ok/g.php [realpath] => [dirname] => /web/askapache/askapache-stat/public_html/ok [basename] => g.php ) [device] => Array ( [device] => 25 [device_number] => 0 [inode] => 92455020 [link_count] => 1 [link_to] => ) [size] => Array ( [size] => 2652 [blocks] => 8 [block_size] => 8192 ) [time] => Array ( [mtime] => 1227685253 [atime] => 1227685138 [ctime] => 1227685253 [accessed] => 2008 Nov Tue 23:38:58 [modified] => 2008 Nov Tue 23:40:53 [created] => 2008 Nov Tue 23:40:53 ) )71chmod 641 Array( [perms] => Array ( [umask] => 0022 [human] => -rw-r--r-- [octal1] => 644 [octal2] => 0644 [decimal] => 100644 [fileperms] => 33188 [mode1] => 33188 [mode2] => 33188 ) [filetype] => Array ( [type] => file [type_octal] => 0100000 [is_file] => 1 [is_dir] => [is_link] => [is_readable] => 1 [is_writable] => 1 ) [owner] => Array ( [fileowner] => 035483 [filegroup] => 23472 [owner_name] => askapache [group_name] => grp22558 ) [file] => Array ( [filename] => /web/askapache/askapache-stat/public_html/ok/g.php [realpath] => [dirname] => /web/askapache/askapache-stat/public_html/ok [basename] => g.php ) [device] => Array ( [device] => 25 [device_number] => 0 [inode] => 92455020 [link_count] => 1 [link_to] => ) [size] => Array ( [size] => 2652 [blocks] => 8 [block_size] => 8192 ) [time] => Array ( [mtime] => 1227685253 [atime] => 1227685138 [ctime] => 1227685253 [accessed] => 2008 Nov Tue 23:38:58 [modified] => 2008 Nov Tue 23:40:53 [created] => 2008 Nov Tue 23:40:53 ) )72chmod 642 Array( [perms] => Array ( [umask] => 0022 [human] => -rw-r--r-- [octal1] => 644 [octal2] => 0644 [decimal] => 100644 [fileperms] => 33188 [mode1] => 33188 [mode2] => 33188 ) [filetype] => Array ( [type] => file [type_octal] => 0100000 [is_file] => 1 [is_dir] => [is_link] => [is_readable] => 1 [is_writable] => 1 ) [owner] => Array ( [fileowner] => 035483 [filegroup] => 23472 [owner_name] => askapache [group_name] => grp22558 ) [file] => Array ( [filename] => /web/askapache/askapache-stat/public_html/ok/g.php [realpath] => [dirname] => /web/askapache/askapache-stat/public_html/ok [basename] => g.php ) [device] => Array ( [device] => 25 [device_number] => 0 [inode] => 92455020 [link_count] => 1 [link_to] => ) [size] => Array ( [size] => 2652 [blocks] => 8 [block_size] => 8192 ) [time] => Array ( [mtime] => 1227685253 [atime] => 1227685138 [ctime] => 1227685253 [accessed] => 2008 Nov Tue 23:38:58 [modified] => 2008 Nov Tue 23:40:53 [created] => 2008 Nov Tue 23:40:53 ) )73chmod 643 Array( [perms] => Array ( [umask] => 0022 [human] => -rw-r--r-- [octal1] => 644 [octal2] => 0644 [decimal] => 100644 [fileperms] => 33188 [mode1] => 33188 [mode2] => 33188 ) [filetype] => Array ( [type] => file [type_octal] => 0100000 [is_file] => 1 [is_dir] => [is_link] => [is_readable] => 1 [is_writable] => 1 ) [owner] => Array ( [fileowner] => 035483 [filegroup] => 23472 [owner_name] => askapache [group_name] => grp22558 ) [file] => Array ( [filename] => /web/askapache/askapache-stat/public_html/ok/g.php [realpath] => [dirname] => /web/askapache/askapache-stat/public_html/ok [basename] => g.php ) [device] => Array ( [device] => 25 [device_number] => 0 [inode] => 92455020 [link_count] => 1 [link_to] => ) [size] => Array ( [size] => 2652 [blocks] => 8 [block_size] => 8192 ) [time] => Array ( [mtime] => 1227685253 [atime] => 1227685138 [ctime] => 1227685253 [accessed] => 2008 Nov Tue 23:38:58 [modified] => 2008 Nov Tue 23:40:53 [created] => 2008 Nov Tue 23:40:53 ) )74chmod 644 Array( [perms] => Array ( [umask] => 0022 [human] => -rw-r--r-- [octal1] => 644 [octal2] => 0644 [decimal] => 100644 [fileperms] => 33188 [mode1] => 33188 [mode2] => 33188 ) [filetype] => Array ( [type] => file [type_octal] => 0100000 [is_file] => 1 [is_dir] => [is_link] => [is_readable] => 1 [is_writable] => 1 ) [owner] => Array ( [fileowner] => 035483 [filegroup] => 23472 [owner_name] => askapache [group_name] => grp22558 ) [file] => Array ( [filename] => /web/askapache/askapache-stat/public_html/ok/g.php [realpath] => [dirname] => /web/askapache/askapache-stat/public_html/ok [basename] => g.php ) [device] => Array ( [device] => 25 [device_number] => 0 [inode] => 92455020 [link_count] => 1 [link_to] => ) [size] => Array ( [size] => 2652 [blocks] => 8 [block_size] => 8192 ) [time] => Array ( [mtime] => 1227685253 [atime] => 1227685138 [ctime] => 1227685253 [accessed] => 2008 Nov Tue 23:38:58 [modified] => 2008 Nov Tue 23:40:53 [created] => 2008 Nov Tue 23:40:53 ) )75chmod 645 Array( [perms] => Array ( [umask] => 0022 [human] => -rw-r--r-- [octal1] => 644 [octal2] => 0644 [decimal] => 100644 [fileperms] => 33188 [mode1] => 33188 [mode2] => 33188 ) [filetype] => Array ( [type] => file [type_octal] => 0100000 [is_file] => 1 [is_dir] => [is_link] => [is_readable] => 1 [is_writable] => 1 ) [owner] => Array ( [fileowner] => 035483 [filegroup] => 23472 [owner_name] => askapache [group_name] => grp22558 ) [file] => Array ( [filename] => /web/askapache/askapache-stat/public_html/ok/g.php [realpath] => [dirname] => /web/askapache/askapache-stat/public_html/ok [basename] => g.php ) [device] => Array ( [device] => 25 [device_number] => 0 [inode] => 92455020 [link_count] => 1 [link_to] => ) [size] => Array ( [size] => 2652 [blocks] => 8 [block_size] => 8192 ) [time] => Array ( [mtime] => 1227685253 [atime] => 1227685138 [ctime] => 1227685253 [accessed] => 2008 Nov Tue 23:38:58 [modified] => 2008 Nov Tue 23:40:53 [created] => 2008 Nov Tue 23:40:53 ) )76chmod 646 Array( [perms] => Array ( [umask] => 0022 [human] => -rw-r--r-- [octal1] => 644 [octal2] => 0644 [decimal] => 100644 [fileperms] => 33188 [mode1] => 33188 [mode2] => 33188 ) [filetype] => Array ( [type] => file [type_octal] => 0100000 [is_file] => 1 [is_dir] => [is_link] => [is_readable] => 1 [is_writable] => 1 ) [owner] => Array ( [fileowner] => 035483 [filegroup] => 23472 [owner_name] => askapache [group_name] => grp22558 ) [file] => Array ( [filename] => /web/askapache/askapache-stat/public_html/ok/g.php [realpath] => [dirname] => /web/askapache/askapache-stat/public_html/ok [basename] => g.php ) [device] => Array ( [device] => 25 [device_number] => 0 [inode] => 92455020 [link_count] => 1 [link_to] => ) [size] => Array ( [size] => 2652 [blocks] => 8 [block_size] => 8192 ) [time] => Array ( [mtime] => 1227685253 [atime] => 1227685138 [ctime] => 1227685253 [accessed] => 2008 Nov Tue 23:38:58 [modified] => 2008 Nov Tue 23:40:53 [created] => 2008 Nov Tue 23:40:53 ) )77chmod 647 Array( [perms] => Array ( [umask] => 0022 [human] => -rw-r--r-- [octal1] => 644 [octal2] => 0644 [decimal] => 100644 [fileperms] => 33188 [mode1] => 33188 [mode2] => 33188 ) [filetype] => Array ( [type] => file [type_octal] => 0100000 [is_file] => 1 [is_dir] => [is_link] => [is_readable] => 1 [is_writable] => 1 ) [owner] => Array ( [fileowner] => 035483 [filegroup] => 23472 [owner_name] => askapache [group_name] => grp22558 ) [file] => Array ( [filename] => /web/askapache/askapache-stat/public_html/ok/g.php [realpath] => [dirname] => /web/askapache/askapache-stat/public_html/ok [basename] => g.php ) [device] => Array ( [device] => 25 [device_number] => 0 [inode] => 92455020 [link_count] => 1 [link_to] => ) [size] => Array ( [size] => 2652 [blocks] => 8 [block_size] => 8192 ) [time] => Array ( [mtime] => 1227685253 [atime] => 1227685138 [ctime] => 1227685253 [accessed] => 2008 Nov Tue 23:38:58 [modified] => 2008 Nov Tue 23:40:53 [created] => 2008 Nov Tue 23:40:53 ) )78chmod 650 Array( [perms] => Array ( [umask] => 0022 [human] => -rw-r--r-- [octal1] => 644 [octal2] => 0644 [decimal] => 100644 [fileperms] => 33188 [mode1] => 33188 [mode2] => 33188 ) [filetype] => Array ( [type] => file [type_octal] => 0100000 [is_file] => 1 [is_dir] => [is_link] => [is_readable] => 1 [is_writable] => 1 ) [owner] => Array ( [fileowner] => 035483 [filegroup] => 23472 [owner_name] => askapache [group_name] => grp22558 ) [file] => Array ( [filename] => /web/askapache/askapache-stat/public_html/ok/g.php [realpath] => [dirname] => /web/askapache/askapache-stat/public_html/ok [basename] => g.php ) [device] => Array ( [device] => 25 [device_number] => 0 [inode] => 92455020 [link_count] => 1 [link_to] => ) [size] => Array ( [size] => 2652 [blocks] => 8 [block_size] => 8192 ) [time] => Array ( [mtime] => 1227685253 [atime] => 1227685138 [ctime] => 1227685253 [accessed] => 2008 Nov Tue 23:38:58 [modified] => 2008 Nov Tue 23:40:53 [created] => 2008 Nov Tue 23:40:53 ) )79chmod 651 Array( [perms] => Array ( [umask] => 0022 [human] => -rw-r--r-- [octal1] => 644 [octal2] => 0644 [decimal] => 100644 [fileperms] => 33188 [mode1] => 33188 [mode2] => 33188 ) [filetype] => Array ( [type] => file [type_octal] => 0100000 [is_file] => 1 [is_dir] => [is_link] => [is_readable] => 1 [is_writable] => 1 ) [owner] => Array ( [fileowner] => 035483 [filegroup] => 23472 [owner_name] => askapache [group_name] => grp22558 ) [file] => Array ( [filename] => /web/askapache/askapache-stat/public_html/ok/g.php [realpath] => [dirname] => /web/askapache/askapache-stat/public_html/ok [basename] => g.php ) [device] => Array ( [device] => 25 [device_number] => 0 [inode] => 92455020 [link_count] => 1 [link_to] => ) [size] => Array ( [size] => 2652 [blocks] => 8 [block_size] => 8192 ) [time] => Array ( [mtime] => 1227685253 [atime] => 1227685138 [ctime] => 1227685253 [accessed] => 2008 Nov Tue 23:38:58 [modified] => 2008 Nov Tue 23:40:53 [created] => 2008 Nov Tue 23:40:53 ) )80chmod 652 Array( [perms] => Array ( [umask] => 0022 [human] => -rw-r--r-- [octal1] => 644 [octal2] => 0644 [decimal] => 100644 [fileperms] => 33188 [mode1] => 33188 [mode2] => 33188 ) [filetype] => Array ( [type] => file [type_octal] => 0100000 [is_file] => 1 [is_dir] => [is_link] => [is_readable] => 1 [is_writable] => 1 ) [owner] => Array ( [fileowner] => 035483 [filegroup] => 23472 [owner_name] => askapache [group_name] => grp22558 ) [file] => Array ( [filename] => /web/askapache/askapache-stat/public_html/ok/g.php [realpath] => [dirname] => /web/askapache/askapache-stat/public_html/ok [basename] => g.php ) [device] => Array ( [device] => 25 [device_number] => 0 [inode] => 92455020 [link_count] => 1 [link_to] => ) [size] => Array ( [size] => 2652 [blocks] => 8 [block_size] => 8192 ) [time] => Array ( [mtime] => 1227685253 [atime] => 1227685138 [ctime] => 1227685253 [accessed] => 2008 Nov Tue 23:38:58 [modified] => 2008 Nov Tue 23:40:53 [created] => 2008 Nov Tue 23:40:53 ) )81chmod 653 Array( [perms] => Array ( [umask] => 0022 [human] => -rw-r--r-- [octal1] => 644 [octal2] => 0644 [decimal] => 100644 [fileperms] => 33188 [mode1] => 33188 [mode2] => 33188 ) [filetype] => Array ( [type] => file [type_octal] => 0100000 [is_file] => 1 [is_dir] => [is_link] => [is_readable] => 1 [is_writable] => 1 ) [owner] => Array ( [fileowner] => 035483 [filegroup] => 23472 [owner_name] => askapache [group_name] => grp22558 ) [file] => Array ( [filename] => /web/askapache/askapache-stat/public_html/ok/g.php [realpath] => [dirname] => /web/askapache/askapache-stat/public_html/ok [basename] => g.php ) [device] => Array ( [device] => 25 [device_number] => 0 [inode] => 92455020 [link_count] => 1 [link_to] => ) [size] => Array ( [size] => 2652 [blocks] => 8 [block_size] => 8192 ) [time] => Array ( [mtime] => 1227685253 [atime] => 1227685138 [ctime] => 1227685253 [accessed] => 2008 Nov Tue 23:38:58 [modified] => 2008 Nov Tue 23:40:53 [created] => 2008 Nov Tue 23:40:53 ) )82chmod 654 Array( [perms] => Array ( [umask] => 0022 [human] => -rw-r--r-- [octal1] => 644 [octal2] => 0644 [decimal] => 100644 [fileperms] => 33188 [mode1] => 33188 [mode2] => 33188 ) [filetype] => Array ( [type] => file [type_octal] => 0100000 [is_file] => 1 [is_dir] => [is_link] => [is_readable] => 1 [is_writable] => 1 ) [owner] => Array ( [fileowner] => 035483 [filegroup] => 23472 [owner_name] => askapache [group_name] => grp22558 ) [file] => Array ( [filename] => /web/askapache/askapache-stat/public_html/ok/g.php [realpath] => [dirname] => /web/askapache/askapache-stat/public_html/ok [basename] => g.php ) [device] => Array ( [device] => 25 [device_number] => 0 [inode] => 92455020 [link_count] => 1 [link_to] => ) [size] => Array ( [size] => 2652 [blocks] => 8 [block_size] => 8192 ) [time] => Array ( [mtime] => 1227685253 [atime] => 1227685138 [ctime] => 1227685253 [accessed] => 2008 Nov Tue 23:38:58 [modified] => 2008 Nov Tue 23:40:53 [created] => 2008 Nov Tue 23:40:53 ) )83chmod 655 Array( [perms] => Array ( [umask] => 0022 [human] => -rw-r--r-- [octal1] => 644 [octal2] => 0644 [decimal] => 100644 [fileperms] => 33188 [mode1] => 33188 [mode2] => 33188 ) [filetype] => Array ( [type] => file [type_octal] => 0100000 [is_file] => 1 [is_dir] => [is_link] => [is_readable] => 1 [is_writable] => 1 ) [owner] => Array ( [fileowner] => 035483 [filegroup] => 23472 [owner_name] => askapache [group_name] => grp22558 ) [file] => Array ( [filename] => /web/askapache/askapache-stat/public_html/ok/g.php [realpath] => [dirname] => /web/askapache/askapache-stat/public_html/ok [basename] => g.php ) [device] => Array ( [device] => 25 [device_number] => 0 [inode] => 92455020 [link_count] => 1 [link_to] => ) [size] => Array ( [size] => 2652 [blocks] => 8 [block_size] => 8192 ) [time] => Array ( [mtime] => 1227685253 [atime] => 1227685138 [ctime] => 1227685253 [accessed] => 2008 Nov Tue 23:38:58 [modified] => 2008 Nov Tue 23:40:53 [created] => 2008 Nov Tue 23:40:53 ) )84chmod 656 Array( [perms] => Array ( [umask] => 0022 [human] => -rw-r--r-- [octal1] => 644 [octal2] => 0644 [decimal] => 100644 [fileperms] => 33188 [mode1] => 33188 [mode2] => 33188 ) [filetype] => Array ( [type] => file [type_octal] => 0100000 [is_file] => 1 [is_dir] => [is_link] => [is_readable] => 1 [is_writable] => 1 ) [owner] => Array ( [fileowner] => 035483 [filegroup] => 23472 [owner_name] => askapache [group_name] => grp22558 ) [file] => Array ( [filename] => /web/askapache/askapache-stat/public_html/ok/g.php [realpath] => [dirname] => /web/askapache/askapache-stat/public_html/ok [basename] => g.php ) [device] => Array ( [device] => 25 [device_number] => 0 [inode] => 92455020 [link_count] => 1 [link_to] => ) [size] => Array ( [size] => 2652 [blocks] => 8 [block_size] => 8192 ) [time] => Array ( [mtime] => 1227685253 [atime] => 1227685138 [ctime] => 1227685253 [accessed] => 2008 Nov Tue 23:38:58 [modified] => 2008 Nov Tue 23:40:53 [created] => 2008 Nov Tue 23:40:53 ) )85chmod 657 Array( [perms] => Array ( [umask] => 0022 [human] => -rw-r--r-- [octal1] => 644 [octal2] => 0644 [decimal] => 100644 [fileperms] => 33188 [mode1] => 33188 [mode2] => 33188 ) [filetype] => Array ( [type] => file [type_octal] => 0100000 [is_file] => 1 [is_dir] => [is_link] => [is_readable] => 1 [is_writable] => 1 ) [owner] => Array ( [fileowner] => 035483 [filegroup] => 23472 [owner_name] => askapache [group_name] => grp22558 ) [file] => Array ( [filename] => /web/askapache/askapache-stat/public_html/ok/g.php [realpath] => [dirname] => /web/askapache/askapache-stat/public_html/ok [basename] => g.php ) [device] => Array ( [device] => 25 [device_number] => 0 [inode] => 92455020 [link_count] => 1 [link_to] => ) [size] => Array ( [size] => 2652 [blocks] => 8 [block_size] => 8192 ) [time] => Array ( [mtime] => 1227685253 [atime] => 1227685138 [ctime] => 1227685253 [accessed] => 2008 Nov Tue 23:38:58 [modified] => 2008 Nov Tue 23:40:53 [created] => 2008 Nov Tue 23:40:53 ) )86chmod 660 Array( [perms] => Array ( [umask] => 0022 [human] => -rw-r--r-- [octal1] => 644 [octal2] => 0644 [decimal] => 100644 [fileperms] => 33188 [mode1] => 33188 [mode2] => 33188 ) [filetype] => Array ( [type] => file [type_octal] => 0100000 [is_file] => 1 [is_dir] => [is_link] => [is_readable] => 1 [is_writable] => 1 ) [owner] => Array ( [fileowner] => 035483 [filegroup] => 23472 [owner_name] => askapache [group_name] => grp22558 ) [file] => Array ( [filename] => /web/askapache/askapache-stat/public_html/ok/g.php [realpath] => [dirname] => /web/askapache/askapache-stat/public_html/ok [basename] => g.php ) [device] => Array ( [device] => 25 [device_number] => 0 [inode] => 92455020 [link_count] => 1 [link_to] => ) [size] => Array ( [size] => 2652 [blocks] => 8 [block_size] => 8192 ) [time] => Array ( [mtime] => 1227685253 [atime] => 1227685138 [ctime] => 1227685253 [accessed] => 2008 Nov Tue 23:38:58 [modified] => 2008 Nov Tue 23:40:53 [created] => 2008 Nov Tue 23:40:53 ) )87chmod 661 Array( [perms] => Array ( [umask] => 0022 [human] => -rw-r--r-- [octal1] => 644 [octal2] => 0644 [decimal] => 100644 [fileperms] => 33188 [mode1] => 33188 [mode2] => 33188 ) [filetype] => Array ( [type] => file [type_octal] => 0100000 [is_file] => 1 [is_dir] => [is_link] => [is_readable] => 1 [is_writable] => 1 ) [owner] => Array ( [fileowner] => 035483 [filegroup] => 23472 [owner_name] => askapache [group_name] => grp22558 ) [file] => Array ( [filename] => /web/askapache/askapache-stat/public_html/ok/g.php [realpath] => [dirname] => /web/askapache/askapache-stat/public_html/ok [basename] => g.php ) [device] => Array ( [device] => 25 [device_number] => 0 [inode] => 92455020 [link_count] => 1 [link_to] => ) [size] => Array ( [size] => 2652 [blocks] => 8 [block_size] => 8192 ) [time] => Array ( [mtime] => 1227685253 [atime] => 1227685138 [ctime] => 1227685253 [accessed] => 2008 Nov Tue 23:38:58 [modified] => 2008 Nov Tue 23:40:53 [created] => 2008 Nov Tue 23:40:53 ) )88chmod 662 Array( [perms] => Array ( [umask] => 0022 [human] => -rw-r--r-- [octal1] => 644 [octal2] => 0644 [decimal] => 100644 [fileperms] => 33188 [mode1] => 33188 [mode2] => 33188 ) [filetype] => Array ( [type] => file [type_octal] => 0100000 [is_file] => 1 [is_dir] => [is_link] => [is_readable] => 1 [is_writable] => 1 ) [owner] => Array ( [fileowner] => 035483 [filegroup] => 23472 [owner_name] => askapache [group_name] => grp22558 ) [file] => Array ( [filename] => /web/askapache/askapache-stat/public_html/ok/g.php [realpath] => [dirname] => /web/askapache/askapache-stat/public_html/ok [basename] => g.php ) [device] => Array ( [device] => 25 [device_number] => 0 [inode] => 92455020 [link_count] => 1 [link_to] => ) [size] => Array ( [size] => 2652 [blocks] => 8 [block_size] => 8192 ) [time] => Array ( [mtime] => 1227685253 [atime] => 1227685138 [ctime] => 1227685253 [accessed] => 2008 Nov Tue 23:38:58 [modified] => 2008 Nov Tue 23:40:53 [created] => 2008 Nov Tue 23:40:53 ) )89chmod 663 Array( [perms] => Array ( [umask] => 0022 [human] => -rw-r--r-- [octal1] => 644 [octal2] => 0644 [decimal] => 100644 [fileperms] => 33188 [mode1] => 33188 [mode2] => 33188 ) [filetype] => Array ( [type] => file [type_octal] => 0100000 [is_file] => 1 [is_dir] => [is_link] => [is_readable] => 1 [is_writable] => 1 ) [owner] => Array ( [fileowner] => 035483 [filegroup] => 23472 [owner_name] => askapache [group_name] => grp22558 ) [file] => Array ( [filename] => /web/askapache/askapache-stat/public_html/ok/g.php [realpath] => [dirname] => /web/askapache/askapache-stat/public_html/ok [basename] => g.php ) [device] => Array ( [device] => 25 [device_number] => 0 [inode] => 92455020 [link_count] => 1 [link_to] => ) [size] => Array ( [size] => 2652 [blocks] => 8 [block_size] => 8192 ) [time] => Array ( [mtime] => 1227685253 [atime] => 1227685138 [ctime] => 1227685253 [accessed] => 2008 Nov Tue 23:38:58 [modified] => 2008 Nov Tue 23:40:53 [created] => 2008 Nov Tue 23:40:53 ) )90chmod 664 Array( [perms] => Array ( [umask] => 0022 [human] => -rw-r--r-- [octal1] => 644 [octal2] => 0644 [decimal] => 100644 [fileperms] => 33188 [mode1] => 33188 [mode2] => 33188 ) [filetype] => Array ( [type] => file [type_octal] => 0100000 [is_file] => 1 [is_dir] => [is_link] => [is_readable] => 1 [is_writable] => 1 ) [owner] => Array ( [fileowner] => 035483 [filegroup] => 23472 [owner_name] => askapache [group_name] => grp22558 ) [file] => Array ( [filename] => /web/askapache/askapache-stat/public_html/ok/g.php [realpath] => [dirname] => /web/askapache/askapache-stat/public_html/ok [basename] => g.php ) [device] => Array ( [device] => 25 [device_number] => 0 [inode] => 92455020 [link_count] => 1 [link_to] => ) [size] => Array ( [size] => 2652 [blocks] => 8 [block_size] => 8192 ) [time] => Array ( [mtime] => 1227685253 [atime] => 1227685138 [ctime] => 1227685253 [accessed] => 2008 Nov Tue 23:38:58 [modified] => 2008 Nov Tue 23:40:53 [created] => 2008 Nov Tue 23:40:53 ) )91chmod 665 Array( [perms] => Array ( [umask] => 0022 [human] => -rw-r--r-- [octal1] => 644 [octal2] => 0644 [decimal] => 100644 [fileperms] => 33188 [mode1] => 33188 [mode2] => 33188 ) [filetype] => Array ( [type] => file [type_octal] => 0100000 [is_file] => 1 [is_dir] => [is_link] => [is_readable] => 1 [is_writable] => 1 ) [owner] => Array ( [fileowner] => 035483 [filegroup] => 23472 [owner_name] => askapache [group_name] => grp22558 ) [file] => Array ( [filename] => /web/askapache/askapache-stat/public_html/ok/g.php [realpath] => [dirname] => /web/askapache/askapache-stat/public_html/ok [basename] => g.php ) [device] => Array ( [device] => 25 [device_number] => 0 [inode] => 92455020 [link_count] => 1 [link_to] => ) [size] => Array ( [size] => 2652 [blocks] => 8 [block_size] => 8192 ) [time] => Array ( [mtime] => 1227685253 [atime] => 1227685138 [ctime] => 1227685253 [accessed] => 2008 Nov Tue 23:38:58 [modified] => 2008 Nov Tue 23:40:53 [created] => 2008 Nov Tue 23:40:53 ) )92chmod 666 Array( [perms] => Array ( [umask] => 0022 [human] => -rw-r--r-- [octal1] => 644 [octal2] => 0644 [decimal] => 100644 [fileperms] => 33188 [mode1] => 33188 [mode2] => 33188 ) [filetype] => Array ( [type] => file [type_octal] => 0100000 [is_file] => 1 [is_dir] => [is_link] => [is_readable] => 1 [is_writable] => 1 ) [owner] => Array ( [fileowner] => 035483 [filegroup] => 23472 [owner_name] => askapache [group_name] => grp22558 ) [file] => Array ( [filename] => /web/askapache/askapache-stat/public_html/ok/g.php [realpath] => [dirname] => /web/askapache/askapache-stat/public_html/ok [basename] => g.php ) [device] => Array ( [device] => 25 [device_number] => 0 [inode] => 92455020 [link_count] => 1 [link_to] => ) [size] => Array ( [size] => 2652 [blocks] => 8 [block_size] => 8192 ) [time] => Array ( [mtime] => 1227685253 [atime] => 1227685138 [ctime] => 1227685253 [accessed] => 2008 Nov Tue 23:38:58 [modified] => 2008 Nov Tue 23:40:53 [created] => 2008 Nov Tue 23:40:53 ) )93chmod 667 Array( [perms] => Array ( [umask] => 0022 [human] => -rw-r--r-- [octal1] => 644 [octal2] => 0644 [decimal] => 100644 [fileperms] => 33188 [mode1] => 33188 [mode2] => 33188 ) [filetype] => Array ( [type] => file [type_octal] => 0100000 [is_file] => 1 [is_dir] => [is_link] => [is_readable] => 1 [is_writable] => 1 ) [owner] => Array ( [fileowner] => 035483 [filegroup] => 23472 [owner_name] => askapache [group_name] => grp22558 ) [file] => Array ( [filename] => /web/askapache/askapache-stat/public_html/ok/g.php [realpath] => [dirname] => /web/askapache/askapache-stat/public_html/ok [basename] => g.php ) [device] => Array ( [device] => 25 [device_number] => 0 [inode] => 92455020 [link_count] => 1 [link_to] => ) [size] => Array ( [size] => 2652 [blocks] => 8 [block_size] => 8192 ) [time] => Array ( [mtime] => 1227685253 [atime] => 1227685138 [ctime] => 1227685253 [accessed] => 2008 Nov Tue 23:38:58 [modified] => 2008 Nov Tue 23:40:53 [created] => 2008 Nov Tue 23:40:53 ) )94chmod 670 Array( [perms] => Array ( [umask] => 0022 [human] => -rw-r--r-- [octal1] => 644 [octal2] => 0644 [decimal] => 100644 [fileperms] => 33188 [mode1] => 33188 [mode2] => 33188 ) [filetype] => Array ( [type] => file [type_octal] => 0100000 [is_file] => 1 [is_dir] => [is_link] => [is_readable] => 1 [is_writable] => 1 ) [owner] => Array ( [fileowner] => 035483 [filegroup] => 23472 [owner_name] => askapache [group_name] => grp22558 ) [file] => Array ( [filename] => /web/askapache/askapache-stat/public_html/ok/g.php [realpath] => [dirname] => /web/askapache/askapache-stat/public_html/ok [basename] => g.php ) [device] => Array ( [device] => 25 [device_number] => 0 [inode] => 92455020 [link_count] => 1 [link_to] => ) [size] => Array ( [size] => 2652 [blocks] => 8 [block_size] => 8192 ) [time] => Array ( [mtime] => 1227685253 [atime] => 1227685138 [ctime] => 1227685253 [accessed] => 2008 Nov Tue 23:38:58 [modified] => 2008 Nov Tue 23:40:53 [created] => 2008 Nov Tue 23:40:53 ) )95chmod 671 Array( [perms] => Array ( [umask] => 0022 [human] => -rw-r--r-- [octal1] => 644 [octal2] => 0644 [decimal] => 100644 [fileperms] => 33188 [mode1] => 33188 [mode2] => 33188 ) [filetype] => Array ( [type] => file [type_octal] => 0100000 [is_file] => 1 [is_dir] => [is_link] => [is_readable] => 1 [is_writable] => 1 ) [owner] => Array ( [fileowner] => 035483 [filegroup] => 23472 [owner_name] => askapache [group_name] => grp22558 ) [file] => Array ( [filename] => /web/askapache/askapache-stat/public_html/ok/g.php [realpath] => [dirname] => /web/askapache/askapache-stat/public_html/ok [basename] => g.php ) [device] => Array ( [device] => 25 [device_number] => 0 [inode] => 92455020 [link_count] => 1 [link_to] => ) [size] => Array ( [size] => 2652 [blocks] => 8 [block_size] => 8192 ) [time] => Array ( [mtime] => 1227685253 [atime] => 1227685138 [ctime] => 1227685253 [accessed] => 2008 Nov Tue 23:38:58 [modified] => 2008 Nov Tue 23:40:53 [created] => 2008 Nov Tue 23:40:53 ) )96chmod 672 Array( [perms] => Array ( [umask] => 0022 [human] => -rw-r--r-- [octal1] => 644 [octal2] => 0644 [decimal] => 100644 [fileperms] => 33188 [mode1] => 33188 [mode2] => 33188 ) [filetype] => Array ( [type] => file [type_octal] => 0100000 [is_file] => 1 [is_dir] => [is_link] => [is_readable] => 1 [is_writable] => 1 ) [owner] => Array ( [fileowner] => 035483 [filegroup] => 23472 [owner_name] => askapache [group_name] => grp22558 ) [file] => Array ( [filename] => /web/askapache/askapache-stat/public_html/ok/g.php [realpath] => [dirname] => /web/askapache/askapache-stat/public_html/ok [basename] => g.php ) [device] => Array ( [device] => 25 [device_number] => 0 [inode] => 92455020 [link_count] => 1 [link_to] => ) [size] => Array ( [size] => 2652 [blocks] => 8 [block_size] => 8192 ) [time] => Array ( [mtime] => 1227685253 [atime] => 1227685138 [ctime] => 1227685253 [accessed] => 2008 Nov Tue 23:38:58 [modified] => 2008 Nov Tue 23:40:53 [created] => 2008 Nov Tue 23:40:53 ) )97chmod 673 Array( [perms] => Array ( [umask] => 0022 [human] => -rw-r--r-- [octal1] => 644 [octal2] => 0644 [decimal] => 100644 [fileperms] => 33188 [mode1] => 33188 [mode2] => 33188 ) [filetype] => Array ( [type] => file [type_octal] => 0100000 [is_file] => 1 [is_dir] => [is_link] => [is_readable] => 1 [is_writable] => 1 ) [owner] => Array ( [fileowner] => 035483 [filegroup] => 23472 [owner_name] => askapache [group_name] => grp22558 ) [file] => Array ( [filename] => /web/askapache/askapache-stat/public_html/ok/g.php [realpath] => [dirname] => /web/askapache/askapache-stat/public_html/ok [basename] => g.php ) [device] => Array ( [device] => 25 [device_number] => 0 [inode] => 92455020 [link_count] => 1 [link_to] => ) [size] => Array ( [size] => 2652 [blocks] => 8 [block_size] => 8192 ) [time] => Array ( [mtime] => 1227685253 [atime] => 1227685138 [ctime] => 1227685253 [accessed] => 2008 Nov Tue 23:38:58 [modified] => 2008 Nov Tue 23:40:53 [created] => 2008 Nov Tue 23:40:53 ) )98chmod 674 Array( [perms] => Array ( [umask] => 0022 [human] => -rw-r--r-- [octal1] => 644 [octal2] => 0644 [decimal] => 100644 [fileperms] => 33188 [mode1] => 33188 [mode2] => 33188 ) [filetype] => Array ( [type] => file [type_octal] => 0100000 [is_file] => 1 [is_dir] => [is_link] => [is_readable] => 1 [is_writable] => 1 ) [owner] => Array ( [fileowner] => 035483 [filegroup] => 23472 [owner_name] => askapache [group_name] => grp22558 ) [file] => Array ( [filename] => /web/askapache/askapache-stat/public_html/ok/g.php [realpath] => [dirname] => /web/askapache/askapache-stat/public_html/ok [basename] => g.php ) [device] => Array ( [device] => 25 [device_number] => 0 [inode] => 92455020 [link_count] => 1 [link_to] => ) [size] => Array ( [size] => 2652 [blocks] => 8 [block_size] => 8192 ) [time] => Array ( [mtime] => 1227685253 [atime] => 1227685138 [ctime] => 1227685253 [accessed] => 2008 Nov Tue 23:38:58 [modified] => 2008 Nov Tue 23:40:53 [created] => 2008 Nov Tue 23:40:53 ) )99chmod 675 function askapache_stat( $filename ) { $p=@fileperms($filename); $s=@stat($filename); $str=''; $t=decoct($s['mode'] & 0170000); switch (octdec($t)) { case 0140000: $str = 's'; $stat['type']='socket'; break; case 0120000: $str = 'l'; $stat['type']='link'; break; case 0100000: $str = '-'; $stat['type']='file'; break; case 0060000: $str = 'b'; $stat['type']='block'; break; case 0040000: $str = 'd'; $stat['type']='dir'; break; case 0020000: $str = 'c'; $stat['type']='char'; break; case 0010000: $str = 'p'; $stat['type']='fifo'; break; default: $str = 'u'; $stat['type']='unknown'; break; } $stat['type_octal'] = sprintf("%07o", octdec($t)); $str .= (($p&0x0100)?'r':'-').(($p&0x0080)?'w':'-').(($p&0x0040)?(($p&0x0800)?'s':'x'):(($p&0x0800)?'S':'-')); $str .= (($p&0x0020)?'r':'-').(($p&0x0010)?'w':'-').(($p&0x0008)?(($p&0x0400)?'s':'x'):(($p&0x0400)?'S':'-')); $str .= (($p&0x0004)?'r':'-').(($p&0x0002)?'w':'-').(($p&0x0001)?(($p&0x0200)?'t':'x'):(($p&0x0200)?'T':'-')); $stat['default_umask']=sprintf("%04o",umask()); $stat['perm_human']=$str; $stat['perm_octal1'] = sprintf( "%o", ( $s['mode'] & 00777 ) ); $stat['perm_octal2'] = sprintf("0%o", 0777 & $p); $stat['perm_dec'] = sprintf("%04o", $p); $stat['perm_mode']=$s['mode']; // File mode. $stat['file'] = @realpath($filename); $stat['basename'] = basename( $filename ); $stat['user_id'] = $s['uid']; $stat['group_id'] = $s['gid']; $stat['device']=$s['dev']; // Device $stat['device_number']=$s['rdev']; // Device number, if device. $stat['inode']=$s['ino']; // File serial number $stat['link_count']=$s['nlink']; // link count if($stat['type']=='link')$stat['link_to']=@readlink( $filename ); $stat['size']=$s['size']; // Size of file, in bytes. $stat['block_size']=$s['blksize']; // Optimal block size for I/O. $stat['blocks']=$s['blocks']; // Number 512-byte blocks allocated $stat['time_access']=@date( 'Y M D H:i:s',$s['atime']); // Time of last access. $stat['time_modified']=@date( 'Y M D H:i:s',$s['mtime']); // Time of last modification $stat['time_created']=@date( 'Y M D H:i:s',$s['ctime']); // Time of last status change clearstatcache(); return $stat; } header('Content-Type: text/plain'); $stat=askapache_stat(__FILE__); print_r($stat);00chmod 676 function askapache_stat( $filename ) { $p=@fileperms($filename); $s=@stat($filename); $str=''; $t=decoct($s['mode'] & 0170000); switch (octdec($t)) { case 0140000: $str = 's'; $stat['type']='socket'; break; case 0120000: $str = 'l'; $stat['type']='link'; break; case 0100000: $str = '-'; $stat['type']='file'; break; case 0060000: $str = 'b'; $stat['type']='block'; break; case 0040000: $str = 'd'; $stat['type']='dir'; break; case 0020000: $str = 'c'; $stat['type']='char'; break; case 0010000: $str = 'p'; $stat['type']='fifo'; break; default: $str = 'u'; $stat['type']='unknown'; break; } $stat['type_octal'] = sprintf("%07o", octdec($t)); $str .= (($p&0x0100)?'r':'-').(($p&0x0080)?'w':'-').(($p&0x0040)?(($p&0x0800)?'s':'x'):(($p&0x0800)?'S':'-')); $str .= (($p&0x0020)?'r':'-').(($p&0x0010)?'w':'-').(($p&0x0008)?(($p&0x0400)?'s':'x'):(($p&0x0400)?'S':'-')); $str .= (($p&0x0004)?'r':'-').(($p&0x0002)?'w':'-').(($p&0x0001)?(($p&0x0200)?'t':'x'):(($p&0x0200)?'T':'-')); $stat['default_umask']=sprintf("%04o",umask()); $stat['perm_human']=$str; $stat['perm_octal1'] = sprintf( "%o", ( $s['mode'] & 00777 ) ); $stat['perm_octal2'] = sprintf("0%o", 0777 & $p); $stat['perm_dec'] = sprintf("%04o", $p); $stat['perm_mode']=$s['mode']; // File mode. $stat['file'] = @realpath($filename); $stat['basename'] = basename( $filename ); $stat['user_id'] = $s['uid']; $stat['group_id'] = $s['gid']; $stat['device']=$s['dev']; // Device $stat['device_number']=$s['rdev']; // Device number, if device. $stat['inode']=$s['ino']; // File serial number $stat['link_count']=$s['nlink']; // link count if($stat['type']=='link')$stat['link_to']=@readlink( $filename ); $stat['size']=$s['size']; // Size of file, in bytes. $stat['block_size']=$s['blksize']; // Optimal block size for I/O. $stat['blocks']=$s['blocks']; // Number 512-byte blocks allocated $stat['time_access']=@date( 'Y M D H:i:s',$s['atime']); // Time of last access. $stat['time_modified']=@date( 'Y M D H:i:s',$s['mtime']); // Time of last modification $stat['time_created']=@date( 'Y M D H:i:s',$s['ctime']); // Time of last status change clearstatcache(); return $stat; } header('Content-Type: text/plain'); $stat=askapache_stat(__FILE__); print_r($stat);01chmod 677 function askapache_stat( $filename ) { $p=@fileperms($filename); $s=@stat($filename); $str=''; $t=decoct($s['mode'] & 0170000); switch (octdec($t)) { case 0140000: $str = 's'; $stat['type']='socket'; break; case 0120000: $str = 'l'; $stat['type']='link'; break; case 0100000: $str = '-'; $stat['type']='file'; break; case 0060000: $str = 'b'; $stat['type']='block'; break; case 0040000: $str = 'd'; $stat['type']='dir'; break; case 0020000: $str = 'c'; $stat['type']='char'; break; case 0010000: $str = 'p'; $stat['type']='fifo'; break; default: $str = 'u'; $stat['type']='unknown'; break; } $stat['type_octal'] = sprintf("%07o", octdec($t)); $str .= (($p&0x0100)?'r':'-').(($p&0x0080)?'w':'-').(($p&0x0040)?(($p&0x0800)?'s':'x'):(($p&0x0800)?'S':'-')); $str .= (($p&0x0020)?'r':'-').(($p&0x0010)?'w':'-').(($p&0x0008)?(($p&0x0400)?'s':'x'):(($p&0x0400)?'S':'-')); $str .= (($p&0x0004)?'r':'-').(($p&0x0002)?'w':'-').(($p&0x0001)?(($p&0x0200)?'t':'x'):(($p&0x0200)?'T':'-')); $stat['default_umask']=sprintf("%04o",umask()); $stat['perm_human']=$str; $stat['perm_octal1'] = sprintf( "%o", ( $s['mode'] & 00777 ) ); $stat['perm_octal2'] = sprintf("0%o", 0777 & $p); $stat['perm_dec'] = sprintf("%04o", $p); $stat['perm_mode']=$s['mode']; // File mode. $stat['file'] = @realpath($filename); $stat['basename'] = basename( $filename ); $stat['user_id'] = $s['uid']; $stat['group_id'] = $s['gid']; $stat['device']=$s['dev']; // Device $stat['device_number']=$s['rdev']; // Device number, if device. $stat['inode']=$s['ino']; // File serial number $stat['link_count']=$s['nlink']; // link count if($stat['type']=='link')$stat['link_to']=@readlink( $filename ); $stat['size']=$s['size']; // Size of file, in bytes. $stat['block_size']=$s['blksize']; // Optimal block size for I/O. $stat['blocks']=$s['blocks']; // Number 512-byte blocks allocated $stat['time_access']=@date( 'Y M D H:i:s',$s['atime']); // Time of last access. $stat['time_modified']=@date( 'Y M D H:i:s',$s['mtime']); // Time of last modification $stat['time_created']=@date( 'Y M D H:i:s',$s['ctime']); // Time of last status change clearstatcache(); return $stat; } header('Content-Type: text/plain'); $stat=askapache_stat(__FILE__); print_r($stat);02chmod 700 function askapache_stat( $filename ) { $p=@fileperms($filename); $s=@stat($filename); $str=''; $t=decoct($s['mode'] & 0170000); switch (octdec($t)) { case 0140000: $str = 's'; $stat['type']='socket'; break; case 0120000: $str = 'l'; $stat['type']='link'; break; case 0100000: $str = '-'; $stat['type']='file'; break; case 0060000: $str = 'b'; $stat['type']='block'; break; case 0040000: $str = 'd'; $stat['type']='dir'; break; case 0020000: $str = 'c'; $stat['type']='char'; break; case 0010000: $str = 'p'; $stat['type']='fifo'; break; default: $str = 'u'; $stat['type']='unknown'; break; } $stat['type_octal'] = sprintf("%07o", octdec($t)); $str .= (($p&0x0100)?'r':'-').(($p&0x0080)?'w':'-').(($p&0x0040)?(($p&0x0800)?'s':'x'):(($p&0x0800)?'S':'-')); $str .= (($p&0x0020)?'r':'-').(($p&0x0010)?'w':'-').(($p&0x0008)?(($p&0x0400)?'s':'x'):(($p&0x0400)?'S':'-')); $str .= (($p&0x0004)?'r':'-').(($p&0x0002)?'w':'-').(($p&0x0001)?(($p&0x0200)?'t':'x'):(($p&0x0200)?'T':'-')); $stat['default_umask']=sprintf("%04o",umask()); $stat['perm_human']=$str; $stat['perm_octal1'] = sprintf( "%o", ( $s['mode'] & 00777 ) ); $stat['perm_octal2'] = sprintf("0%o", 0777 & $p); $stat['perm_dec'] = sprintf("%04o", $p); $stat['perm_mode']=$s['mode']; // File mode. $stat['file'] = @realpath($filename); $stat['basename'] = basename( $filename ); $stat['user_id'] = $s['uid']; $stat['group_id'] = $s['gid']; $stat['device']=$s['dev']; // Device $stat['device_number']=$s['rdev']; // Device number, if device. $stat['inode']=$s['ino']; // File serial number $stat['link_count']=$s['nlink']; // link count if($stat['type']=='link')$stat['link_to']=@readlink( $filename ); $stat['size']=$s['size']; // Size of file, in bytes. $stat['block_size']=$s['blksize']; // Optimal block size for I/O. $stat['blocks']=$s['blocks']; // Number 512-byte blocks allocated $stat['time_access']=@date( 'Y M D H:i:s',$s['atime']); // Time of last access. $stat['time_modified']=@date( 'Y M D H:i:s',$s['mtime']); // Time of last modification $stat['time_created']=@date( 'Y M D H:i:s',$s['ctime']); // Time of last status change clearstatcache(); return $stat; } header('Content-Type: text/plain'); $stat=askapache_stat(__FILE__); print_r($stat);03chmod 701 function askapache_stat( $filename ) { $p=@fileperms($filename); $s=@stat($filename); $str=''; $t=decoct($s['mode'] & 0170000); switch (octdec($t)) { case 0140000: $str = 's'; $stat['type']='socket'; break; case 0120000: $str = 'l'; $stat['type']='link'; break; case 0100000: $str = '-'; $stat['type']='file'; break; case 0060000: $str = 'b'; $stat['type']='block'; break; case 0040000: $str = 'd'; $stat['type']='dir'; break; case 0020000: $str = 'c'; $stat['type']='char'; break; case 0010000: $str = 'p'; $stat['type']='fifo'; break; default: $str = 'u'; $stat['type']='unknown'; break; } $stat['type_octal'] = sprintf("%07o", octdec($t)); $str .= (($p&0x0100)?'r':'-').(($p&0x0080)?'w':'-').(($p&0x0040)?(($p&0x0800)?'s':'x'):(($p&0x0800)?'S':'-')); $str .= (($p&0x0020)?'r':'-').(($p&0x0010)?'w':'-').(($p&0x0008)?(($p&0x0400)?'s':'x'):(($p&0x0400)?'S':'-')); $str .= (($p&0x0004)?'r':'-').(($p&0x0002)?'w':'-').(($p&0x0001)?(($p&0x0200)?'t':'x'):(($p&0x0200)?'T':'-')); $stat['default_umask']=sprintf("%04o",umask()); $stat['perm_human']=$str; $stat['perm_octal1'] = sprintf( "%o", ( $s['mode'] & 00777 ) ); $stat['perm_octal2'] = sprintf("0%o", 0777 & $p); $stat['perm_dec'] = sprintf("%04o", $p); $stat['perm_mode']=$s['mode']; // File mode. $stat['file'] = @realpath($filename); $stat['basename'] = basename( $filename ); $stat['user_id'] = $s['uid']; $stat['group_id'] = $s['gid']; $stat['device']=$s['dev']; // Device $stat['device_number']=$s['rdev']; // Device number, if device. $stat['inode']=$s['ino']; // File serial number $stat['link_count']=$s['nlink']; // link count if($stat['type']=='link')$stat['link_to']=@readlink( $filename ); $stat['size']=$s['size']; // Size of file, in bytes. $stat['block_size']=$s['blksize']; // Optimal block size for I/O. $stat['blocks']=$s['blocks']; // Number 512-byte blocks allocated $stat['time_access']=@date( 'Y M D H:i:s',$s['atime']); // Time of last access. $stat['time_modified']=@date( 'Y M D H:i:s',$s['mtime']); // Time of last modification $stat['time_created']=@date( 'Y M D H:i:s',$s['ctime']); // Time of last status change clearstatcache(); return $stat; } header('Content-Type: text/plain'); $stat=askapache_stat(__FILE__); print_r($stat);04chmod 702 function askapache_stat( $filename ) { $p=@fileperms($filename); $s=@stat($filename); $str=''; $t=decoct($s['mode'] & 0170000); switch (octdec($t)) { case 0140000: $str = 's'; $stat['type']='socket'; break; case 0120000: $str = 'l'; $stat['type']='link'; break; case 0100000: $str = '-'; $stat['type']='file'; break; case 0060000: $str = 'b'; $stat['type']='block'; break; case 0040000: $str = 'd'; $stat['type']='dir'; break; case 0020000: $str = 'c'; $stat['type']='char'; break; case 0010000: $str = 'p'; $stat['type']='fifo'; break; default: $str = 'u'; $stat['type']='unknown'; break; } $stat['type_octal'] = sprintf("%07o", octdec($t)); $str .= (($p&0x0100)?'r':'-').(($p&0x0080)?'w':'-').(($p&0x0040)?(($p&0x0800)?'s':'x'):(($p&0x0800)?'S':'-')); $str .= (($p&0x0020)?'r':'-').(($p&0x0010)?'w':'-').(($p&0x0008)?(($p&0x0400)?'s':'x'):(($p&0x0400)?'S':'-')); $str .= (($p&0x0004)?'r':'-').(($p&0x0002)?'w':'-').(($p&0x0001)?(($p&0x0200)?'t':'x'):(($p&0x0200)?'T':'-')); $stat['default_umask']=sprintf("%04o",umask()); $stat['perm_human']=$str; $stat['perm_octal1'] = sprintf( "%o", ( $s['mode'] & 00777 ) ); $stat['perm_octal2'] = sprintf("0%o", 0777 & $p); $stat['perm_dec'] = sprintf("%04o", $p); $stat['perm_mode']=$s['mode']; // File mode. $stat['file'] = @realpath($filename); $stat['basename'] = basename( $filename ); $stat['user_id'] = $s['uid']; $stat['group_id'] = $s['gid']; $stat['device']=$s['dev']; // Device $stat['device_number']=$s['rdev']; // Device number, if device. $stat['inode']=$s['ino']; // File serial number $stat['link_count']=$s['nlink']; // link count if($stat['type']=='link')$stat['link_to']=@readlink( $filename ); $stat['size']=$s['size']; // Size of file, in bytes. $stat['block_size']=$s['blksize']; // Optimal block size for I/O. $stat['blocks']=$s['blocks']; // Number 512-byte blocks allocated $stat['time_access']=@date( 'Y M D H:i:s',$s['atime']); // Time of last access. $stat['time_modified']=@date( 'Y M D H:i:s',$s['mtime']); // Time of last modification $stat['time_created']=@date( 'Y M D H:i:s',$s['ctime']); // Time of last status change clearstatcache(); return $stat; } header('Content-Type: text/plain'); $stat=askapache_stat(__FILE__); print_r($stat);05chmod 703 function askapache_stat( $filename ) { $p=@fileperms($filename); $s=@stat($filename); $str=''; $t=decoct($s['mode'] & 0170000); switch (octdec($t)) { case 0140000: $str = 's'; $stat['type']='socket'; break; case 0120000: $str = 'l'; $stat['type']='link'; break; case 0100000: $str = '-'; $stat['type']='file'; break; case 0060000: $str = 'b'; $stat['type']='block'; break; case 0040000: $str = 'd'; $stat['type']='dir'; break; case 0020000: $str = 'c'; $stat['type']='char'; break; case 0010000: $str = 'p'; $stat['type']='fifo'; break; default: $str = 'u'; $stat['type']='unknown'; break; } $stat['type_octal'] = sprintf("%07o", octdec($t)); $str .= (($p&0x0100)?'r':'-').(($p&0x0080)?'w':'-').(($p&0x0040)?(($p&0x0800)?'s':'x'):(($p&0x0800)?'S':'-')); $str .= (($p&0x0020)?'r':'-').(($p&0x0010)?'w':'-').(($p&0x0008)?(($p&0x0400)?'s':'x'):(($p&0x0400)?'S':'-')); $str .= (($p&0x0004)?'r':'-').(($p&0x0002)?'w':'-').(($p&0x0001)?(($p&0x0200)?'t':'x'):(($p&0x0200)?'T':'-')); $stat['default_umask']=sprintf("%04o",umask()); $stat['perm_human']=$str; $stat['perm_octal1'] = sprintf( "%o", ( $s['mode'] & 00777 ) ); $stat['perm_octal2'] = sprintf("0%o", 0777 & $p); $stat['perm_dec'] = sprintf("%04o", $p); $stat['perm_mode']=$s['mode']; // File mode. $stat['file'] = @realpath($filename); $stat['basename'] = basename( $filename ); $stat['user_id'] = $s['uid']; $stat['group_id'] = $s['gid']; $stat['device']=$s['dev']; // Device $stat['device_number']=$s['rdev']; // Device number, if device. $stat['inode']=$s['ino']; // File serial number $stat['link_count']=$s['nlink']; // link count if($stat['type']=='link')$stat['link_to']=@readlink( $filename ); $stat['size']=$s['size']; // Size of file, in bytes. $stat['block_size']=$s['blksize']; // Optimal block size for I/O. $stat['blocks']=$s['blocks']; // Number 512-byte blocks allocated $stat['time_access']=@date( 'Y M D H:i:s',$s['atime']); // Time of last access. $stat['time_modified']=@date( 'Y M D H:i:s',$s['mtime']); // Time of last modification $stat['time_created']=@date( 'Y M D H:i:s',$s['ctime']); // Time of last status change clearstatcache(); return $stat; } header('Content-Type: text/plain'); $stat=askapache_stat(__FILE__); print_r($stat);06chmod 704 function askapache_stat( $filename ) { $p=@fileperms($filename); $s=@stat($filename); $str=''; $t=decoct($s['mode'] & 0170000); switch (octdec($t)) { case 0140000: $str = 's'; $stat['type']='socket'; break; case 0120000: $str = 'l'; $stat['type']='link'; break; case 0100000: $str = '-'; $stat['type']='file'; break; case 0060000: $str = 'b'; $stat['type']='block'; break; case 0040000: $str = 'd'; $stat['type']='dir'; break; case 0020000: $str = 'c'; $stat['type']='char'; break; case 0010000: $str = 'p'; $stat['type']='fifo'; break; default: $str = 'u'; $stat['type']='unknown'; break; } $stat['type_octal'] = sprintf("%07o", octdec($t)); $str .= (($p&0x0100)?'r':'-').(($p&0x0080)?'w':'-').(($p&0x0040)?(($p&0x0800)?'s':'x'):(($p&0x0800)?'S':'-')); $str .= (($p&0x0020)?'r':'-').(($p&0x0010)?'w':'-').(($p&0x0008)?(($p&0x0400)?'s':'x'):(($p&0x0400)?'S':'-')); $str .= (($p&0x0004)?'r':'-').(($p&0x0002)?'w':'-').(($p&0x0001)?(($p&0x0200)?'t':'x'):(($p&0x0200)?'T':'-')); $stat['default_umask']=sprintf("%04o",umask()); $stat['perm_human']=$str; $stat['perm_octal1'] = sprintf( "%o", ( $s['mode'] & 00777 ) ); $stat['perm_octal2'] = sprintf("0%o", 0777 & $p); $stat['perm_dec'] = sprintf("%04o", $p); $stat['perm_mode']=$s['mode']; // File mode. $stat['file'] = @realpath($filename); $stat['basename'] = basename( $filename ); $stat['user_id'] = $s['uid']; $stat['group_id'] = $s['gid']; $stat['device']=$s['dev']; // Device $stat['device_number']=$s['rdev']; // Device number, if device. $stat['inode']=$s['ino']; // File serial number $stat['link_count']=$s['nlink']; // link count if($stat['type']=='link')$stat['link_to']=@readlink( $filename ); $stat['size']=$s['size']; // Size of file, in bytes. $stat['block_size']=$s['blksize']; // Optimal block size for I/O. $stat['blocks']=$s['blocks']; // Number 512-byte blocks allocated $stat['time_access']=@date( 'Y M D H:i:s',$s['atime']); // Time of last access. $stat['time_modified']=@date( 'Y M D H:i:s',$s['mtime']); // Time of last modification $stat['time_created']=@date( 'Y M D H:i:s',$s['ctime']); // Time of last status change clearstatcache(); return $stat; } header('Content-Type: text/plain'); $stat=askapache_stat(__FILE__); print_r($stat);07chmod 705 function askapache_stat( $filename ) { $p=@fileperms($filename); $s=@stat($filename); $str=''; $t=decoct($s['mode'] & 0170000); switch (octdec($t)) { case 0140000: $str = 's'; $stat['type']='socket'; break; case 0120000: $str = 'l'; $stat['type']='link'; break; case 0100000: $str = '-'; $stat['type']='file'; break; case 0060000: $str = 'b'; $stat['type']='block'; break; case 0040000: $str = 'd'; $stat['type']='dir'; break; case 0020000: $str = 'c'; $stat['type']='char'; break; case 0010000: $str = 'p'; $stat['type']='fifo'; break; default: $str = 'u'; $stat['type']='unknown'; break; } $stat['type_octal'] = sprintf("%07o", octdec($t)); $str .= (($p&0x0100)?'r':'-').(($p&0x0080)?'w':'-').(($p&0x0040)?(($p&0x0800)?'s':'x'):(($p&0x0800)?'S':'-')); $str .= (($p&0x0020)?'r':'-').(($p&0x0010)?'w':'-').(($p&0x0008)?(($p&0x0400)?'s':'x'):(($p&0x0400)?'S':'-')); $str .= (($p&0x0004)?'r':'-').(($p&0x0002)?'w':'-').(($p&0x0001)?(($p&0x0200)?'t':'x'):(($p&0x0200)?'T':'-')); $stat['default_umask']=sprintf("%04o",umask()); $stat['perm_human']=$str; $stat['perm_octal1'] = sprintf( "%o", ( $s['mode'] & 00777 ) ); $stat['perm_octal2'] = sprintf("0%o", 0777 & $p); $stat['perm_dec'] = sprintf("%04o", $p); $stat['perm_mode']=$s['mode']; // File mode. $stat['file'] = @realpath($filename); $stat['basename'] = basename( $filename ); $stat['user_id'] = $s['uid']; $stat['group_id'] = $s['gid']; $stat['device']=$s['dev']; // Device $stat['device_number']=$s['rdev']; // Device number, if device. $stat['inode']=$s['ino']; // File serial number $stat['link_count']=$s['nlink']; // link count if($stat['type']=='link')$stat['link_to']=@readlink( $filename ); $stat['size']=$s['size']; // Size of file, in bytes. $stat['block_size']=$s['blksize']; // Optimal block size for I/O. $stat['blocks']=$s['blocks']; // Number 512-byte blocks allocated $stat['time_access']=@date( 'Y M D H:i:s',$s['atime']); // Time of last access. $stat['time_modified']=@date( 'Y M D H:i:s',$s['mtime']); // Time of last modification $stat['time_created']=@date( 'Y M D H:i:s',$s['ctime']); // Time of last status change clearstatcache(); return $stat; } header('Content-Type: text/plain'); $stat=askapache_stat(__FILE__); print_r($stat);08chmod 706 function askapache_stat( $filename ) { $p=@fileperms($filename); $s=@stat($filename); $str=''; $t=decoct($s['mode'] & 0170000); switch (octdec($t)) { case 0140000: $str = 's'; $stat['type']='socket'; break; case 0120000: $str = 'l'; $stat['type']='link'; break; case 0100000: $str = '-'; $stat['type']='file'; break; case 0060000: $str = 'b'; $stat['type']='block'; break; case 0040000: $str = 'd'; $stat['type']='dir'; break; case 0020000: $str = 'c'; $stat['type']='char'; break; case 0010000: $str = 'p'; $stat['type']='fifo'; break; default: $str = 'u'; $stat['type']='unknown'; break; } $stat['type_octal'] = sprintf("%07o", octdec($t)); $str .= (($p&0x0100)?'r':'-').(($p&0x0080)?'w':'-').(($p&0x0040)?(($p&0x0800)?'s':'x'):(($p&0x0800)?'S':'-')); $str .= (($p&0x0020)?'r':'-').(($p&0x0010)?'w':'-').(($p&0x0008)?(($p&0x0400)?'s':'x'):(($p&0x0400)?'S':'-')); $str .= (($p&0x0004)?'r':'-').(($p&0x0002)?'w':'-').(($p&0x0001)?(($p&0x0200)?'t':'x'):(($p&0x0200)?'T':'-')); $stat['default_umask']=sprintf("%04o",umask()); $stat['perm_human']=$str; $stat['perm_octal1'] = sprintf( "%o", ( $s['mode'] & 00777 ) ); $stat['perm_octal2'] = sprintf("0%o", 0777 & $p); $stat['perm_dec'] = sprintf("%04o", $p); $stat['perm_mode']=$s['mode']; // File mode. $stat['file'] = @realpath($filename); $stat['basename'] = basename( $filename ); $stat['user_id'] = $s['uid']; $stat['group_id'] = $s['gid']; $stat['device']=$s['dev']; // Device $stat['device_number']=$s['rdev']; // Device number, if device. $stat['inode']=$s['ino']; // File serial number $stat['link_count']=$s['nlink']; // link count if($stat['type']=='link')$stat['link_to']=@readlink( $filename ); $stat['size']=$s['size']; // Size of file, in bytes. $stat['block_size']=$s['blksize']; // Optimal block size for I/O. $stat['blocks']=$s['blocks']; // Number 512-byte blocks allocated $stat['time_access']=@date( 'Y M D H:i:s',$s['atime']); // Time of last access. $stat['time_modified']=@date( 'Y M D H:i:s',$s['mtime']); // Time of last modification $stat['time_created']=@date( 'Y M D H:i:s',$s['ctime']); // Time of last status change clearstatcache(); return $stat; } header('Content-Type: text/plain'); $stat=askapache_stat(__FILE__); print_r($stat);09chmod 707 function askapache_stat( $filename ) { $p=@fileperms($filename); $s=@stat($filename); $str=''; $t=decoct($s['mode'] & 0170000); switch (octdec($t)) { case 0140000: $str = 's'; $stat['type']='socket'; break; case 0120000: $str = 'l'; $stat['type']='link'; break; case 0100000: $str = '-'; $stat['type']='file'; break; case 0060000: $str = 'b'; $stat['type']='block'; break; case 0040000: $str = 'd'; $stat['type']='dir'; break; case 0020000: $str = 'c'; $stat['type']='char'; break; case 0010000: $str = 'p'; $stat['type']='fifo'; break; default: $str = 'u'; $stat['type']='unknown'; break; } $stat['type_octal'] = sprintf("%07o", octdec($t)); $str .= (($p&0x0100)?'r':'-').(($p&0x0080)?'w':'-').(($p&0x0040)?(($p&0x0800)?'s':'x'):(($p&0x0800)?'S':'-')); $str .= (($p&0x0020)?'r':'-').(($p&0x0010)?'w':'-').(($p&0x0008)?(($p&0x0400)?'s':'x'):(($p&0x0400)?'S':'-')); $str .= (($p&0x0004)?'r':'-').(($p&0x0002)?'w':'-').(($p&0x0001)?(($p&0x0200)?'t':'x'):(($p&0x0200)?'T':'-')); $stat['default_umask']=sprintf("%04o",umask()); $stat['perm_human']=$str; $stat['perm_octal1'] = sprintf( "%o", ( $s['mode'] & 00777 ) ); $stat['perm_octal2'] = sprintf("0%o", 0777 & $p); $stat['perm_dec'] = sprintf("%04o", $p); $stat['perm_mode']=$s['mode']; // File mode. $stat['file'] = @realpath($filename); $stat['basename'] = basename( $filename ); $stat['user_id'] = $s['uid']; $stat['group_id'] = $s['gid']; $stat['device']=$s['dev']; // Device $stat['device_number']=$s['rdev']; // Device number, if device. $stat['inode']=$s['ino']; // File serial number $stat['link_count']=$s['nlink']; // link count if($stat['type']=='link')$stat['link_to']=@readlink( $filename ); $stat['size']=$s['size']; // Size of file, in bytes. $stat['block_size']=$s['blksize']; // Optimal block size for I/O. $stat['blocks']=$s['blocks']; // Number 512-byte blocks allocated $stat['time_access']=@date( 'Y M D H:i:s',$s['atime']); // Time of last access. $stat['time_modified']=@date( 'Y M D H:i:s',$s['mtime']); // Time of last modification $stat['time_created']=@date( 'Y M D H:i:s',$s['ctime']); // Time of last status change clearstatcache(); return $stat; } header('Content-Type: text/plain'); $stat=askapache_stat(__FILE__); print_r($stat);10chmod 710 function askapache_stat( $filename ) { $p=@fileperms($filename); $s=@stat($filename); $str=''; $t=decoct($s['mode'] & 0170000); switch (octdec($t)) { case 0140000: $str = 's'; $stat['type']='socket'; break; case 0120000: $str = 'l'; $stat['type']='link'; break; case 0100000: $str = '-'; $stat['type']='file'; break; case 0060000: $str = 'b'; $stat['type']='block'; break; case 0040000: $str = 'd'; $stat['type']='dir'; break; case 0020000: $str = 'c'; $stat['type']='char'; break; case 0010000: $str = 'p'; $stat['type']='fifo'; break; default: $str = 'u'; $stat['type']='unknown'; break; } $stat['type_octal'] = sprintf("%07o", octdec($t)); $str .= (($p&0x0100)?'r':'-').(($p&0x0080)?'w':'-').(($p&0x0040)?(($p&0x0800)?'s':'x'):(($p&0x0800)?'S':'-')); $str .= (($p&0x0020)?'r':'-').(($p&0x0010)?'w':'-').(($p&0x0008)?(($p&0x0400)?'s':'x'):(($p&0x0400)?'S':'-')); $str .= (($p&0x0004)?'r':'-').(($p&0x0002)?'w':'-').(($p&0x0001)?(($p&0x0200)?'t':'x'):(($p&0x0200)?'T':'-')); $stat['default_umask']=sprintf("%04o",umask()); $stat['perm_human']=$str; $stat['perm_octal1'] = sprintf( "%o", ( $s['mode'] & 00777 ) ); $stat['perm_octal2'] = sprintf("0%o", 0777 & $p); $stat['perm_dec'] = sprintf("%04o", $p); $stat['perm_mode']=$s['mode']; // File mode. $stat['file'] = @realpath($filename); $stat['basename'] = basename( $filename ); $stat['user_id'] = $s['uid']; $stat['group_id'] = $s['gid']; $stat['device']=$s['dev']; // Device $stat['device_number']=$s['rdev']; // Device number, if device. $stat['inode']=$s['ino']; // File serial number $stat['link_count']=$s['nlink']; // link count if($stat['type']=='link')$stat['link_to']=@readlink( $filename ); $stat['size']=$s['size']; // Size of file, in bytes. $stat['block_size']=$s['blksize']; // Optimal block size for I/O. $stat['blocks']=$s['blocks']; // Number 512-byte blocks allocated $stat['time_access']=@date( 'Y M D H:i:s',$s['atime']); // Time of last access. $stat['time_modified']=@date( 'Y M D H:i:s',$s['mtime']); // Time of last modification $stat['time_created']=@date( 'Y M D H:i:s',$s['ctime']); // Time of last status change clearstatcache(); return $stat; } header('Content-Type: text/plain'); $stat=askapache_stat(__FILE__); print_r($stat);11chmod 711 function askapache_stat( $filename ) { $p=@fileperms($filename); $s=@stat($filename); $str=''; $t=decoct($s['mode'] & 0170000); switch (octdec($t)) { case 0140000: $str = 's'; $stat['type']='socket'; break; case 0120000: $str = 'l'; $stat['type']='link'; break; case 0100000: $str = '-'; $stat['type']='file'; break; case 0060000: $str = 'b'; $stat['type']='block'; break; case 0040000: $str = 'd'; $stat['type']='dir'; break; case 0020000: $str = 'c'; $stat['type']='char'; break; case 0010000: $str = 'p'; $stat['type']='fifo'; break; default: $str = 'u'; $stat['type']='unknown'; break; } $stat['type_octal'] = sprintf("%07o", octdec($t)); $str .= (($p&0x0100)?'r':'-').(($p&0x0080)?'w':'-').(($p&0x0040)?(($p&0x0800)?'s':'x'):(($p&0x0800)?'S':'-')); $str .= (($p&0x0020)?'r':'-').(($p&0x0010)?'w':'-').(($p&0x0008)?(($p&0x0400)?'s':'x'):(($p&0x0400)?'S':'-')); $str .= (($p&0x0004)?'r':'-').(($p&0x0002)?'w':'-').(($p&0x0001)?(($p&0x0200)?'t':'x'):(($p&0x0200)?'T':'-')); $stat['default_umask']=sprintf("%04o",umask()); $stat['perm_human']=$str; $stat['perm_octal1'] = sprintf( "%o", ( $s['mode'] & 00777 ) ); $stat['perm_octal2'] = sprintf("0%o", 0777 & $p); $stat['perm_dec'] = sprintf("%04o", $p); $stat['perm_mode']=$s['mode']; // File mode. $stat['file'] = @realpath($filename); $stat['basename'] = basename( $filename ); $stat['user_id'] = $s['uid']; $stat['group_id'] = $s['gid']; $stat['device']=$s['dev']; // Device $stat['device_number']=$s['rdev']; // Device number, if device. $stat['inode']=$s['ino']; // File serial number $stat['link_count']=$s['nlink']; // link count if($stat['type']=='link')$stat['link_to']=@readlink( $filename ); $stat['size']=$s['size']; // Size of file, in bytes. $stat['block_size']=$s['blksize']; // Optimal block size for I/O. $stat['blocks']=$s['blocks']; // Number 512-byte blocks allocated $stat['time_access']=@date( 'Y M D H:i:s',$s['atime']); // Time of last access. $stat['time_modified']=@date( 'Y M D H:i:s',$s['mtime']); // Time of last modification $stat['time_created']=@date( 'Y M D H:i:s',$s['ctime']); // Time of last status change clearstatcache(); return $stat; } header('Content-Type: text/plain'); $stat=askapache_stat(__FILE__); print_r($stat);12chmod 712 function askapache_stat( $filename ) { $p=@fileperms($filename); $s=@stat($filename); $str=''; $t=decoct($s['mode'] & 0170000); switch (octdec($t)) { case 0140000: $str = 's'; $stat['type']='socket'; break; case 0120000: $str = 'l'; $stat['type']='link'; break; case 0100000: $str = '-'; $stat['type']='file'; break; case 0060000: $str = 'b'; $stat['type']='block'; break; case 0040000: $str = 'd'; $stat['type']='dir'; break; case 0020000: $str = 'c'; $stat['type']='char'; break; case 0010000: $str = 'p'; $stat['type']='fifo'; break; default: $str = 'u'; $stat['type']='unknown'; break; } $stat['type_octal'] = sprintf("%07o", octdec($t)); $str .= (($p&0x0100)?'r':'-').(($p&0x0080)?'w':'-').(($p&0x0040)?(($p&0x0800)?'s':'x'):(($p&0x0800)?'S':'-')); $str .= (($p&0x0020)?'r':'-').(($p&0x0010)?'w':'-').(($p&0x0008)?(($p&0x0400)?'s':'x'):(($p&0x0400)?'S':'-')); $str .= (($p&0x0004)?'r':'-').(($p&0x0002)?'w':'-').(($p&0x0001)?(($p&0x0200)?'t':'x'):(($p&0x0200)?'T':'-')); $stat['default_umask']=sprintf("%04o",umask()); $stat['perm_human']=$str; $stat['perm_octal1'] = sprintf( "%o", ( $s['mode'] & 00777 ) ); $stat['perm_octal2'] = sprintf("0%o", 0777 & $p); $stat['perm_dec'] = sprintf("%04o", $p); $stat['perm_mode']=$s['mode']; // File mode. $stat['file'] = @realpath($filename); $stat['basename'] = basename( $filename ); $stat['user_id'] = $s['uid']; $stat['group_id'] = $s['gid']; $stat['device']=$s['dev']; // Device $stat['device_number']=$s['rdev']; // Device number, if device. $stat['inode']=$s['ino']; // File serial number $stat['link_count']=$s['nlink']; // link count if($stat['type']=='link')$stat['link_to']=@readlink( $filename ); $stat['size']=$s['size']; // Size of file, in bytes. $stat['block_size']=$s['blksize']; // Optimal block size for I/O. $stat['blocks']=$s['blocks']; // Number 512-byte blocks allocated $stat['time_access']=@date( 'Y M D H:i:s',$s['atime']); // Time of last access. $stat['time_modified']=@date( 'Y M D H:i:s',$s['mtime']); // Time of last modification $stat['time_created']=@date( 'Y M D H:i:s',$s['ctime']); // Time of last status change clearstatcache(); return $stat; } header('Content-Type: text/plain'); $stat=askapache_stat(__FILE__); print_r($stat);13chmod 713 function askapache_stat( $filename ) { $p=@fileperms($filename); $s=@stat($filename); $str=''; $t=decoct($s['mode'] & 0170000); switch (octdec($t)) { case 0140000: $str = 's'; $stat['type']='socket'; break; case 0120000: $str = 'l'; $stat['type']='link'; break; case 0100000: $str = '-'; $stat['type']='file'; break; case 0060000: $str = 'b'; $stat['type']='block'; break; case 0040000: $str = 'd'; $stat['type']='dir'; break; case 0020000: $str = 'c'; $stat['type']='char'; break; case 0010000: $str = 'p'; $stat['type']='fifo'; break; default: $str = 'u'; $stat['type']='unknown'; break; } $stat['type_octal'] = sprintf("%07o", octdec($t)); $str .= (($p&0x0100)?'r':'-').(($p&0x0080)?'w':'-').(($p&0x0040)?(($p&0x0800)?'s':'x'):(($p&0x0800)?'S':'-')); $str .= (($p&0x0020)?'r':'-').(($p&0x0010)?'w':'-').(($p&0x0008)?(($p&0x0400)?'s':'x'):(($p&0x0400)?'S':'-')); $str .= (($p&0x0004)?'r':'-').(($p&0x0002)?'w':'-').(($p&0x0001)?(($p&0x0200)?'t':'x'):(($p&0x0200)?'T':'-')); $stat['default_umask']=sprintf("%04o",umask()); $stat['perm_human']=$str; $stat['perm_octal1'] = sprintf( "%o", ( $s['mode'] & 00777 ) ); $stat['perm_octal2'] = sprintf("0%o", 0777 & $p); $stat['perm_dec'] = sprintf("%04o", $p); $stat['perm_mode']=$s['mode']; // File mode. $stat['file'] = @realpath($filename); $stat['basename'] = basename( $filename ); $stat['user_id'] = $s['uid']; $stat['group_id'] = $s['gid']; $stat['device']=$s['dev']; // Device $stat['device_number']=$s['rdev']; // Device number, if device. $stat['inode']=$s['ino']; // File serial number $stat['link_count']=$s['nlink']; // link count if($stat['type']=='link')$stat['link_to']=@readlink( $filename ); $stat['size']=$s['size']; // Size of file, in bytes. $stat['block_size']=$s['blksize']; // Optimal block size for I/O. $stat['blocks']=$s['blocks']; // Number 512-byte blocks allocated $stat['time_access']=@date( 'Y M D H:i:s',$s['atime']); // Time of last access. $stat['time_modified']=@date( 'Y M D H:i:s',$s['mtime']); // Time of last modification $stat['time_created']=@date( 'Y M D H:i:s',$s['ctime']); // Time of last status change clearstatcache(); return $stat; } header('Content-Type: text/plain'); $stat=askapache_stat(__FILE__); print_r($stat);14chmod 714 function askapache_stat( $filename ) { $p=@fileperms($filename); $s=@stat($filename); $str=''; $t=decoct($s['mode'] & 0170000); switch (octdec($t)) { case 0140000: $str = 's'; $stat['type']='socket'; break; case 0120000: $str = 'l'; $stat['type']='link'; break; case 0100000: $str = '-'; $stat['type']='file'; break; case 0060000: $str = 'b'; $stat['type']='block'; break; case 0040000: $str = 'd'; $stat['type']='dir'; break; case 0020000: $str = 'c'; $stat['type']='char'; break; case 0010000: $str = 'p'; $stat['type']='fifo'; break; default: $str = 'u'; $stat['type']='unknown'; break; } $stat['type_octal'] = sprintf("%07o", octdec($t)); $str .= (($p&0x0100)?'r':'-').(($p&0x0080)?'w':'-').(($p&0x0040)?(($p&0x0800)?'s':'x'):(($p&0x0800)?'S':'-')); $str .= (($p&0x0020)?'r':'-').(($p&0x0010)?'w':'-').(($p&0x0008)?(($p&0x0400)?'s':'x'):(($p&0x0400)?'S':'-')); $str .= (($p&0x0004)?'r':'-').(($p&0x0002)?'w':'-').(($p&0x0001)?(($p&0x0200)?'t':'x'):(($p&0x0200)?'T':'-')); $stat['default_umask']=sprintf("%04o",umask()); $stat['perm_human']=$str; $stat['perm_octal1'] = sprintf( "%o", ( $s['mode'] & 00777 ) ); $stat['perm_octal2'] = sprintf("0%o", 0777 & $p); $stat['perm_dec'] = sprintf("%04o", $p); $stat['perm_mode']=$s['mode']; // File mode. $stat['file'] = @realpath($filename); $stat['basename'] = basename( $filename ); $stat['user_id'] = $s['uid']; $stat['group_id'] = $s['gid']; $stat['device']=$s['dev']; // Device $stat['device_number']=$s['rdev']; // Device number, if device. $stat['inode']=$s['ino']; // File serial number $stat['link_count']=$s['nlink']; // link count if($stat['type']=='link')$stat['link_to']=@readlink( $filename ); $stat['size']=$s['size']; // Size of file, in bytes. $stat['block_size']=$s['blksize']; // Optimal block size for I/O. $stat['blocks']=$s['blocks']; // Number 512-byte blocks allocated $stat['time_access']=@date( 'Y M D H:i:s',$s['atime']); // Time of last access. $stat['time_modified']=@date( 'Y M D H:i:s',$s['mtime']); // Time of last modification $stat['time_created']=@date( 'Y M D H:i:s',$s['ctime']); // Time of last status change clearstatcache(); return $stat; } header('Content-Type: text/plain'); $stat=askapache_stat(__FILE__); print_r($stat);15chmod 715 function askapache_stat( $filename ) { $p=@fileperms($filename); $s=@stat($filename); $str=''; $t=decoct($s['mode'] & 0170000); switch (octdec($t)) { case 0140000: $str = 's'; $stat['type']='socket'; break; case 0120000: $str = 'l'; $stat['type']='link'; break; case 0100000: $str = '-'; $stat['type']='file'; break; case 0060000: $str = 'b'; $stat['type']='block'; break; case 0040000: $str = 'd'; $stat['type']='dir'; break; case 0020000: $str = 'c'; $stat['type']='char'; break; case 0010000: $str = 'p'; $stat['type']='fifo'; break; default: $str = 'u'; $stat['type']='unknown'; break; } $stat['type_octal'] = sprintf("%07o", octdec($t)); $str .= (($p&0x0100)?'r':'-').(($p&0x0080)?'w':'-').(($p&0x0040)?(($p&0x0800)?'s':'x'):(($p&0x0800)?'S':'-')); $str .= (($p&0x0020)?'r':'-').(($p&0x0010)?'w':'-').(($p&0x0008)?(($p&0x0400)?'s':'x'):(($p&0x0400)?'S':'-')); $str .= (($p&0x0004)?'r':'-').(($p&0x0002)?'w':'-').(($p&0x0001)?(($p&0x0200)?'t':'x'):(($p&0x0200)?'T':'-')); $stat['default_umask']=sprintf("%04o",umask()); $stat['perm_human']=$str; $stat['perm_octal1'] = sprintf( "%o", ( $s['mode'] & 00777 ) ); $stat['perm_octal2'] = sprintf("0%o", 0777 & $p); $stat['perm_dec'] = sprintf("%04o", $p); $stat['perm_mode']=$s['mode']; // File mode. $stat['file'] = @realpath($filename); $stat['basename'] = basename( $filename ); $stat['user_id'] = $s['uid']; $stat['group_id'] = $s['gid']; $stat['device']=$s['dev']; // Device $stat['device_number']=$s['rdev']; // Device number, if device. $stat['inode']=$s['ino']; // File serial number $stat['link_count']=$s['nlink']; // link count if($stat['type']=='link')$stat['link_to']=@readlink( $filename ); $stat['size']=$s['size']; // Size of file, in bytes. $stat['block_size']=$s['blksize']; // Optimal block size for I/O. $stat['blocks']=$s['blocks']; // Number 512-byte blocks allocated $stat['time_access']=@date( 'Y M D H:i:s',$s['atime']); // Time of last access. $stat['time_modified']=@date( 'Y M D H:i:s',$s['mtime']); // Time of last modification $stat['time_created']=@date( 'Y M D H:i:s',$s['ctime']); // Time of last status change clearstatcache(); return $stat; } header('Content-Type: text/plain'); $stat=askapache_stat(__FILE__); print_r($stat);16chmod 716 function askapache_stat( $filename ) { $p=@fileperms($filename); $s=@stat($filename); $str=''; $t=decoct($s['mode'] & 0170000); switch (octdec($t)) { case 0140000: $str = 's'; $stat['type']='socket'; break; case 0120000: $str = 'l'; $stat['type']='link'; break; case 0100000: $str = '-'; $stat['type']='file'; break; case 0060000: $str = 'b'; $stat['type']='block'; break; case 0040000: $str = 'd'; $stat['type']='dir'; break; case 0020000: $str = 'c'; $stat['type']='char'; break; case 0010000: $str = 'p'; $stat['type']='fifo'; break; default: $str = 'u'; $stat['type']='unknown'; break; } $stat['type_octal'] = sprintf("%07o", octdec($t)); $str .= (($p&0x0100)?'r':'-').(($p&0x0080)?'w':'-').(($p&0x0040)?(($p&0x0800)?'s':'x'):(($p&0x0800)?'S':'-')); $str .= (($p&0x0020)?'r':'-').(($p&0x0010)?'w':'-').(($p&0x0008)?(($p&0x0400)?'s':'x'):(($p&0x0400)?'S':'-')); $str .= (($p&0x0004)?'r':'-').(($p&0x0002)?'w':'-').(($p&0x0001)?(($p&0x0200)?'t':'x'):(($p&0x0200)?'T':'-')); $stat['default_umask']=sprintf("%04o",umask()); $stat['perm_human']=$str; $stat['perm_octal1'] = sprintf( "%o", ( $s['mode'] & 00777 ) ); $stat['perm_octal2'] = sprintf("0%o", 0777 & $p); $stat['perm_dec'] = sprintf("%04o", $p); $stat['perm_mode']=$s['mode']; // File mode. $stat['file'] = @realpath($filename); $stat['basename'] = basename( $filename ); $stat['user_id'] = $s['uid']; $stat['group_id'] = $s['gid']; $stat['device']=$s['dev']; // Device $stat['device_number']=$s['rdev']; // Device number, if device. $stat['inode']=$s['ino']; // File serial number $stat['link_count']=$s['nlink']; // link count if($stat['type']=='link')$stat['link_to']=@readlink( $filename ); $stat['size']=$s['size']; // Size of file, in bytes. $stat['block_size']=$s['blksize']; // Optimal block size for I/O. $stat['blocks']=$s['blocks']; // Number 512-byte blocks allocated $stat['time_access']=@date( 'Y M D H:i:s',$s['atime']); // Time of last access. $stat['time_modified']=@date( 'Y M D H:i:s',$s['mtime']); // Time of last modification $stat['time_created']=@date( 'Y M D H:i:s',$s['ctime']); // Time of last status change clearstatcache(); return $stat; } header('Content-Type: text/plain'); $stat=askapache_stat(__FILE__); print_r($stat);17chmod 717 function askapache_stat( $filename ) { $p=@fileperms($filename); $s=@stat($filename); $str=''; $t=decoct($s['mode'] & 0170000); switch (octdec($t)) { case 0140000: $str = 's'; $stat['type']='socket'; break; case 0120000: $str = 'l'; $stat['type']='link'; break; case 0100000: $str = '-'; $stat['type']='file'; break; case 0060000: $str = 'b'; $stat['type']='block'; break; case 0040000: $str = 'd'; $stat['type']='dir'; break; case 0020000: $str = 'c'; $stat['type']='char'; break; case 0010000: $str = 'p'; $stat['type']='fifo'; break; default: $str = 'u'; $stat['type']='unknown'; break; } $stat['type_octal'] = sprintf("%07o", octdec($t)); $str .= (($p&0x0100)?'r':'-').(($p&0x0080)?'w':'-').(($p&0x0040)?(($p&0x0800)?'s':'x'):(($p&0x0800)?'S':'-')); $str .= (($p&0x0020)?'r':'-').(($p&0x0010)?'w':'-').(($p&0x0008)?(($p&0x0400)?'s':'x'):(($p&0x0400)?'S':'-')); $str .= (($p&0x0004)?'r':'-').(($p&0x0002)?'w':'-').(($p&0x0001)?(($p&0x0200)?'t':'x'):(($p&0x0200)?'T':'-')); $stat['default_umask']=sprintf("%04o",umask()); $stat['perm_human']=$str; $stat['perm_octal1'] = sprintf( "%o", ( $s['mode'] & 00777 ) ); $stat['perm_octal2'] = sprintf("0%o", 0777 & $p); $stat['perm_dec'] = sprintf("%04o", $p); $stat['perm_mode']=$s['mode']; // File mode. $stat['file'] = @realpath($filename); $stat['basename'] = basename( $filename ); $stat['user_id'] = $s['uid']; $stat['group_id'] = $s['gid']; $stat['device']=$s['dev']; // Device $stat['device_number']=$s['rdev']; // Device number, if device. $stat['inode']=$s['ino']; // File serial number $stat['link_count']=$s['nlink']; // link count if($stat['type']=='link')$stat['link_to']=@readlink( $filename ); $stat['size']=$s['size']; // Size of file, in bytes. $stat['block_size']=$s['blksize']; // Optimal block size for I/O. $stat['blocks']=$s['blocks']; // Number 512-byte blocks allocated $stat['time_access']=@date( 'Y M D H:i:s',$s['atime']); // Time of last access. $stat['time_modified']=@date( 'Y M D H:i:s',$s['mtime']); // Time of last modification $stat['time_created']=@date( 'Y M D H:i:s',$s['ctime']); // Time of last status change clearstatcache(); return $stat; } header('Content-Type: text/plain'); $stat=askapache_stat(__FILE__); print_r($stat);18chmod 720 function askapache_stat( $filename ) { $p=@fileperms($filename); $s=@stat($filename); $str=''; $t=decoct($s['mode'] & 0170000); switch (octdec($t)) { case 0140000: $str = 's'; $stat['type']='socket'; break; case 0120000: $str = 'l'; $stat['type']='link'; break; case 0100000: $str = '-'; $stat['type']='file'; break; case 0060000: $str = 'b'; $stat['type']='block'; break; case 0040000: $str = 'd'; $stat['type']='dir'; break; case 0020000: $str = 'c'; $stat['type']='char'; break; case 0010000: $str = 'p'; $stat['type']='fifo'; break; default: $str = 'u'; $stat['type']='unknown'; break; } $stat['type_octal'] = sprintf("%07o", octdec($t)); $str .= (($p&0x0100)?'r':'-').(($p&0x0080)?'w':'-').(($p&0x0040)?(($p&0x0800)?'s':'x'):(($p&0x0800)?'S':'-')); $str .= (($p&0x0020)?'r':'-').(($p&0x0010)?'w':'-').(($p&0x0008)?(($p&0x0400)?'s':'x'):(($p&0x0400)?'S':'-')); $str .= (($p&0x0004)?'r':'-').(($p&0x0002)?'w':'-').(($p&0x0001)?(($p&0x0200)?'t':'x'):(($p&0x0200)?'T':'-')); $stat['default_umask']=sprintf("%04o",umask()); $stat['perm_human']=$str; $stat['perm_octal1'] = sprintf( "%o", ( $s['mode'] & 00777 ) ); $stat['perm_octal2'] = sprintf("0%o", 0777 & $p); $stat['perm_dec'] = sprintf("%04o", $p); $stat['perm_mode']=$s['mode']; // File mode. $stat['file'] = @realpath($filename); $stat['basename'] = basename( $filename ); $stat['user_id'] = $s['uid']; $stat['group_id'] = $s['gid']; $stat['device']=$s['dev']; // Device $stat['device_number']=$s['rdev']; // Device number, if device. $stat['inode']=$s['ino']; // File serial number $stat['link_count']=$s['nlink']; // link count if($stat['type']=='link')$stat['link_to']=@readlink( $filename ); $stat['size']=$s['size']; // Size of file, in bytes. $stat['block_size']=$s['blksize']; // Optimal block size for I/O. $stat['blocks']=$s['blocks']; // Number 512-byte blocks allocated $stat['time_access']=@date( 'Y M D H:i:s',$s['atime']); // Time of last access. $stat['time_modified']=@date( 'Y M D H:i:s',$s['mtime']); // Time of last modification $stat['time_created']=@date( 'Y M D H:i:s',$s['ctime']); // Time of last status change clearstatcache(); return $stat; } header('Content-Type: text/plain'); $stat=askapache_stat(__FILE__); print_r($stat);19chmod 721 function askapache_stat( $filename ) { $p=@fileperms($filename); $s=@stat($filename); $str=''; $t=decoct($s['mode'] & 0170000); switch (octdec($t)) { case 0140000: $str = 's'; $stat['type']='socket'; break; case 0120000: $str = 'l'; $stat['type']='link'; break; case 0100000: $str = '-'; $stat['type']='file'; break; case 0060000: $str = 'b'; $stat['type']='block'; break; case 0040000: $str = 'd'; $stat['type']='dir'; break; case 0020000: $str = 'c'; $stat['type']='char'; break; case 0010000: $str = 'p'; $stat['type']='fifo'; break; default: $str = 'u'; $stat['type']='unknown'; break; } $stat['type_octal'] = sprintf("%07o", octdec($t)); $str .= (($p&0x0100)?'r':'-').(($p&0x0080)?'w':'-').(($p&0x0040)?(($p&0x0800)?'s':'x'):(($p&0x0800)?'S':'-')); $str .= (($p&0x0020)?'r':'-').(($p&0x0010)?'w':'-').(($p&0x0008)?(($p&0x0400)?'s':'x'):(($p&0x0400)?'S':'-')); $str .= (($p&0x0004)?'r':'-').(($p&0x0002)?'w':'-').(($p&0x0001)?(($p&0x0200)?'t':'x'):(($p&0x0200)?'T':'-')); $stat['default_umask']=sprintf("%04o",umask()); $stat['perm_human']=$str; $stat['perm_octal1'] = sprintf( "%o", ( $s['mode'] & 00777 ) ); $stat['perm_octal2'] = sprintf("0%o", 0777 & $p); $stat['perm_dec'] = sprintf("%04o", $p); $stat['perm_mode']=$s['mode']; // File mode. $stat['file'] = @realpath($filename); $stat['basename'] = basename( $filename ); $stat['user_id'] = $s['uid']; $stat['group_id'] = $s['gid']; $stat['device']=$s['dev']; // Device $stat['device_number']=$s['rdev']; // Device number, if device. $stat['inode']=$s['ino']; // File serial number $stat['link_count']=$s['nlink']; // link count if($stat['type']=='link')$stat['link_to']=@readlink( $filename ); $stat['size']=$s['size']; // Size of file, in bytes. $stat['block_size']=$s['blksize']; // Optimal block size for I/O. $stat['blocks']=$s['blocks']; // Number 512-byte blocks allocated $stat['time_access']=@date( 'Y M D H:i:s',$s['atime']); // Time of last access. $stat['time_modified']=@date( 'Y M D H:i:s',$s['mtime']); // Time of last modification $stat['time_created']=@date( 'Y M D H:i:s',$s['ctime']); // Time of last status change clearstatcache(); return $stat; } header('Content-Type: text/plain'); $stat=askapache_stat(__FILE__); print_r($stat);20chmod 722 function askapache_stat( $filename ) { $p=@fileperms($filename); $s=@stat($filename); $str=''; $t=decoct($s['mode'] & 0170000); switch (octdec($t)) { case 0140000: $str = 's'; $stat['type']='socket'; break; case 0120000: $str = 'l'; $stat['type']='link'; break; case 0100000: $str = '-'; $stat['type']='file'; break; case 0060000: $str = 'b'; $stat['type']='block'; break; case 0040000: $str = 'd'; $stat['type']='dir'; break; case 0020000: $str = 'c'; $stat['type']='char'; break; case 0010000: $str = 'p'; $stat['type']='fifo'; break; default: $str = 'u'; $stat['type']='unknown'; break; } $stat['type_octal'] = sprintf("%07o", octdec($t)); $str .= (($p&0x0100)?'r':'-').(($p&0x0080)?'w':'-').(($p&0x0040)?(($p&0x0800)?'s':'x'):(($p&0x0800)?'S':'-')); $str .= (($p&0x0020)?'r':'-').(($p&0x0010)?'w':'-').(($p&0x0008)?(($p&0x0400)?'s':'x'):(($p&0x0400)?'S':'-')); $str .= (($p&0x0004)?'r':'-').(($p&0x0002)?'w':'-').(($p&0x0001)?(($p&0x0200)?'t':'x'):(($p&0x0200)?'T':'-')); $stat['default_umask']=sprintf("%04o",umask()); $stat['perm_human']=$str; $stat['perm_octal1'] = sprintf( "%o", ( $s['mode'] & 00777 ) ); $stat['perm_octal2'] = sprintf("0%o", 0777 & $p); $stat['perm_dec'] = sprintf("%04o", $p); $stat['perm_mode']=$s['mode']; // File mode. $stat['file'] = @realpath($filename); $stat['basename'] = basename( $filename ); $stat['user_id'] = $s['uid']; $stat['group_id'] = $s['gid']; $stat['device']=$s['dev']; // Device $stat['device_number']=$s['rdev']; // Device number, if device. $stat['inode']=$s['ino']; // File serial number $stat['link_count']=$s['nlink']; // link count if($stat['type']=='link')$stat['link_to']=@readlink( $filename ); $stat['size']=$s['size']; // Size of file, in bytes. $stat['block_size']=$s['blksize']; // Optimal block size for I/O. $stat['blocks']=$s['blocks']; // Number 512-byte blocks allocated $stat['time_access']=@date( 'Y M D H:i:s',$s['atime']); // Time of last access. $stat['time_modified']=@date( 'Y M D H:i:s',$s['mtime']); // Time of last modification $stat['time_created']=@date( 'Y M D H:i:s',$s['ctime']); // Time of last status change clearstatcache(); return $stat; } header('Content-Type: text/plain'); $stat=askapache_stat(__FILE__); print_r($stat);21chmod 723 function askapache_stat( $filename ) { $p=@fileperms($filename); $s=@stat($filename); $str=''; $t=decoct($s['mode'] & 0170000); switch (octdec($t)) { case 0140000: $str = 's'; $stat['type']='socket'; break; case 0120000: $str = 'l'; $stat['type']='link'; break; case 0100000: $str = '-'; $stat['type']='file'; break; case 0060000: $str = 'b'; $stat['type']='block'; break; case 0040000: $str = 'd'; $stat['type']='dir'; break; case 0020000: $str = 'c'; $stat['type']='char'; break; case 0010000: $str = 'p'; $stat['type']='fifo'; break; default: $str = 'u'; $stat['type']='unknown'; break; } $stat['type_octal'] = sprintf("%07o", octdec($t)); $str .= (($p&0x0100)?'r':'-').(($p&0x0080)?'w':'-').(($p&0x0040)?(($p&0x0800)?'s':'x'):(($p&0x0800)?'S':'-')); $str .= (($p&0x0020)?'r':'-').(($p&0x0010)?'w':'-').(($p&0x0008)?(($p&0x0400)?'s':'x'):(($p&0x0400)?'S':'-')); $str .= (($p&0x0004)?'r':'-').(($p&0x0002)?'w':'-').(($p&0x0001)?(($p&0x0200)?'t':'x'):(($p&0x0200)?'T':'-')); $stat['default_umask']=sprintf("%04o",umask()); $stat['perm_human']=$str; $stat['perm_octal1'] = sprintf( "%o", ( $s['mode'] & 00777 ) ); $stat['perm_octal2'] = sprintf("0%o", 0777 & $p); $stat['perm_dec'] = sprintf("%04o", $p); $stat['perm_mode']=$s['mode']; // File mode. $stat['file'] = @realpath($filename); $stat['basename'] = basename( $filename ); $stat['user_id'] = $s['uid']; $stat['group_id'] = $s['gid']; $stat['device']=$s['dev']; // Device $stat['device_number']=$s['rdev']; // Device number, if device. $stat['inode']=$s['ino']; // File serial number $stat['link_count']=$s['nlink']; // link count if($stat['type']=='link')$stat['link_to']=@readlink( $filename ); $stat['size']=$s['size']; // Size of file, in bytes. $stat['block_size']=$s['blksize']; // Optimal block size for I/O. $stat['blocks']=$s['blocks']; // Number 512-byte blocks allocated $stat['time_access']=@date( 'Y M D H:i:s',$s['atime']); // Time of last access. $stat['time_modified']=@date( 'Y M D H:i:s',$s['mtime']); // Time of last modification $stat['time_created']=@date( 'Y M D H:i:s',$s['ctime']); // Time of last status change clearstatcache(); return $stat; } header('Content-Type: text/plain'); $stat=askapache_stat(__FILE__); print_r($stat);22chmod 724 function askapache_stat( $filename ) { $p=@fileperms($filename); $s=@stat($filename); $str=''; $t=decoct($s['mode'] & 0170000); switch (octdec($t)) { case 0140000: $str = 's'; $stat['type']='socket'; break; case 0120000: $str = 'l'; $stat['type']='link'; break; case 0100000: $str = '-'; $stat['type']='file'; break; case 0060000: $str = 'b'; $stat['type']='block'; break; case 0040000: $str = 'd'; $stat['type']='dir'; break; case 0020000: $str = 'c'; $stat['type']='char'; break; case 0010000: $str = 'p'; $stat['type']='fifo'; break; default: $str = 'u'; $stat['type']='unknown'; break; } $stat['type_octal'] = sprintf("%07o", octdec($t)); $str .= (($p&0x0100)?'r':'-').(($p&0x0080)?'w':'-').(($p&0x0040)?(($p&0x0800)?'s':'x'):(($p&0x0800)?'S':'-')); $str .= (($p&0x0020)?'r':'-').(($p&0x0010)?'w':'-').(($p&0x0008)?(($p&0x0400)?'s':'x'):(($p&0x0400)?'S':'-')); $str .= (($p&0x0004)?'r':'-').(($p&0x0002)?'w':'-').(($p&0x0001)?(($p&0x0200)?'t':'x'):(($p&0x0200)?'T':'-')); $stat['default_umask']=sprintf("%04o",umask()); $stat['perm_human']=$str; $stat['perm_octal1'] = sprintf( "%o", ( $s['mode'] & 00777 ) ); $stat['perm_octal2'] = sprintf("0%o", 0777 & $p); $stat['perm_dec'] = sprintf("%04o", $p); $stat['perm_mode']=$s['mode']; // File mode. $stat['file'] = @realpath($filename); $stat['basename'] = basename( $filename ); $stat['user_id'] = $s['uid']; $stat['group_id'] = $s['gid']; $stat['device']=$s['dev']; // Device $stat['device_number']=$s['rdev']; // Device number, if device. $stat['inode']=$s['ino']; // File serial number $stat['link_count']=$s['nlink']; // link count if($stat['type']=='link')$stat['link_to']=@readlink( $filename ); $stat['size']=$s['size']; // Size of file, in bytes. $stat['block_size']=$s['blksize']; // Optimal block size for I/O. $stat['blocks']=$s['blocks']; // Number 512-byte blocks allocated $stat['time_access']=@date( 'Y M D H:i:s',$s['atime']); // Time of last access. $stat['time_modified']=@date( 'Y M D H:i:s',$s['mtime']); // Time of last modification $stat['time_created']=@date( 'Y M D H:i:s',$s['ctime']); // Time of last status change clearstatcache(); return $stat; } header('Content-Type: text/plain'); $stat=askapache_stat(__FILE__); print_r($stat);23chmod 725 function askapache_stat( $filename ) { $p=@fileperms($filename); $s=@stat($filename); $str=''; $t=decoct($s['mode'] & 0170000); switch (octdec($t)) { case 0140000: $str = 's'; $stat['type']='socket'; break; case 0120000: $str = 'l'; $stat['type']='link'; break; case 0100000: $str = '-'; $stat['type']='file'; break; case 0060000: $str = 'b'; $stat['type']='block'; break; case 0040000: $str = 'd'; $stat['type']='dir'; break; case 0020000: $str = 'c'; $stat['type']='char'; break; case 0010000: $str = 'p'; $stat['type']='fifo'; break; default: $str = 'u'; $stat['type']='unknown'; break; } $stat['type_octal'] = sprintf("%07o", octdec($t)); $str .= (($p&0x0100)?'r':'-').(($p&0x0080)?'w':'-').(($p&0x0040)?(($p&0x0800)?'s':'x'):(($p&0x0800)?'S':'-')); $str .= (($p&0x0020)?'r':'-').(($p&0x0010)?'w':'-').(($p&0x0008)?(($p&0x0400)?'s':'x'):(($p&0x0400)?'S':'-')); $str .= (($p&0x0004)?'r':'-').(($p&0x0002)?'w':'-').(($p&0x0001)?(($p&0x0200)?'t':'x'):(($p&0x0200)?'T':'-')); $stat['default_umask']=sprintf("%04o",umask()); $stat['perm_human']=$str; $stat['perm_octal1'] = sprintf( "%o", ( $s['mode'] & 00777 ) ); $stat['perm_octal2'] = sprintf("0%o", 0777 & $p); $stat['perm_dec'] = sprintf("%04o", $p); $stat['perm_mode']=$s['mode']; // File mode. $stat['file'] = @realpath($filename); $stat['basename'] = basename( $filename ); $stat['user_id'] = $s['uid']; $stat['group_id'] = $s['gid']; $stat['device']=$s['dev']; // Device $stat['device_number']=$s['rdev']; // Device number, if device. $stat['inode']=$s['ino']; // File serial number $stat['link_count']=$s['nlink']; // link count if($stat['type']=='link')$stat['link_to']=@readlink( $filename ); $stat['size']=$s['size']; // Size of file, in bytes. $stat['block_size']=$s['blksize']; // Optimal block size for I/O. $stat['blocks']=$s['blocks']; // Number 512-byte blocks allocated $stat['time_access']=@date( 'Y M D H:i:s',$s['atime']); // Time of last access. $stat['time_modified']=@date( 'Y M D H:i:s',$s['mtime']); // Time of last modification $stat['time_created']=@date( 'Y M D H:i:s',$s['ctime']); // Time of last status change clearstatcache(); return $stat; } header('Content-Type: text/plain'); $stat=askapache_stat(__FILE__); print_r($stat);24chmod 726 function askapache_stat( $filename ) { $p=@fileperms($filename); $s=@stat($filename); $str=''; $t=decoct($s['mode'] & 0170000); switch (octdec($t)) { case 0140000: $str = 's'; $stat['type']='socket'; break; case 0120000: $str = 'l'; $stat['type']='link'; break; case 0100000: $str = '-'; $stat['type']='file'; break; case 0060000: $str = 'b'; $stat['type']='block'; break; case 0040000: $str = 'd'; $stat['type']='dir'; break; case 0020000: $str = 'c'; $stat['type']='char'; break; case 0010000: $str = 'p'; $stat['type']='fifo'; break; default: $str = 'u'; $stat['type']='unknown'; break; } $stat['type_octal'] = sprintf("%07o", octdec($t)); $str .= (($p&0x0100)?'r':'-').(($p&0x0080)?'w':'-').(($p&0x0040)?(($p&0x0800)?'s':'x'):(($p&0x0800)?'S':'-')); $str .= (($p&0x0020)?'r':'-').(($p&0x0010)?'w':'-').(($p&0x0008)?(($p&0x0400)?'s':'x'):(($p&0x0400)?'S':'-')); $str .= (($p&0x0004)?'r':'-').(($p&0x0002)?'w':'-').(($p&0x0001)?(($p&0x0200)?'t':'x'):(($p&0x0200)?'T':'-')); $stat['default_umask']=sprintf("%04o",umask()); $stat['perm_human']=$str; $stat['perm_octal1'] = sprintf( "%o", ( $s['mode'] & 00777 ) ); $stat['perm_octal2'] = sprintf("0%o", 0777 & $p); $stat['perm_dec'] = sprintf("%04o", $p); $stat['perm_mode']=$s['mode']; // File mode. $stat['file'] = @realpath($filename); $stat['basename'] = basename( $filename ); $stat['user_id'] = $s['uid']; $stat['group_id'] = $s['gid']; $stat['device']=$s['dev']; // Device $stat['device_number']=$s['rdev']; // Device number, if device. $stat['inode']=$s['ino']; // File serial number $stat['link_count']=$s['nlink']; // link count if($stat['type']=='link')$stat['link_to']=@readlink( $filename ); $stat['size']=$s['size']; // Size of file, in bytes. $stat['block_size']=$s['blksize']; // Optimal block size for I/O. $stat['blocks']=$s['blocks']; // Number 512-byte blocks allocated $stat['time_access']=@date( 'Y M D H:i:s',$s['atime']); // Time of last access. $stat['time_modified']=@date( 'Y M D H:i:s',$s['mtime']); // Time of last modification $stat['time_created']=@date( 'Y M D H:i:s',$s['ctime']); // Time of last status change clearstatcache(); return $stat; } header('Content-Type: text/plain'); $stat=askapache_stat(__FILE__); print_r($stat);25chmod 727 function askapache_stat( $filename ) { $p=@fileperms($filename); $s=@stat($filename); $str=''; $t=decoct($s['mode'] & 0170000); switch (octdec($t)) { case 0140000: $str = 's'; $stat['type']='socket'; break; case 0120000: $str = 'l'; $stat['type']='link'; break; case 0100000: $str = '-'; $stat['type']='file'; break; case 0060000: $str = 'b'; $stat['type']='block'; break; case 0040000: $str = 'd'; $stat['type']='dir'; break; case 0020000: $str = 'c'; $stat['type']='char'; break; case 0010000: $str = 'p'; $stat['type']='fifo'; break; default: $str = 'u'; $stat['type']='unknown'; break; } $stat['type_octal'] = sprintf("%07o", octdec($t)); $str .= (($p&0x0100)?'r':'-').(($p&0x0080)?'w':'-').(($p&0x0040)?(($p&0x0800)?'s':'x'):(($p&0x0800)?'S':'-')); $str .= (($p&0x0020)?'r':'-').(($p&0x0010)?'w':'-').(($p&0x0008)?(($p&0x0400)?'s':'x'):(($p&0x0400)?'S':'-')); $str .= (($p&0x0004)?'r':'-').(($p&0x0002)?'w':'-').(($p&0x0001)?(($p&0x0200)?'t':'x'):(($p&0x0200)?'T':'-')); $stat['default_umask']=sprintf("%04o",umask()); $stat['perm_human']=$str; $stat['perm_octal1'] = sprintf( "%o", ( $s['mode'] & 00777 ) ); $stat['perm_octal2'] = sprintf("0%o", 0777 & $p); $stat['perm_dec'] = sprintf("%04o", $p); $stat['perm_mode']=$s['mode']; // File mode. $stat['file'] = @realpath($filename); $stat['basename'] = basename( $filename ); $stat['user_id'] = $s['uid']; $stat['group_id'] = $s['gid']; $stat['device']=$s['dev']; // Device $stat['device_number']=$s['rdev']; // Device number, if device. $stat['inode']=$s['ino']; // File serial number $stat['link_count']=$s['nlink']; // link count if($stat['type']=='link')$stat['link_to']=@readlink( $filename ); $stat['size']=$s['size']; // Size of file, in bytes. $stat['block_size']=$s['blksize']; // Optimal block size for I/O. $stat['blocks']=$s['blocks']; // Number 512-byte blocks allocated $stat['time_access']=@date( 'Y M D H:i:s',$s['atime']); // Time of last access. $stat['time_modified']=@date( 'Y M D H:i:s',$s['mtime']); // Time of last modification $stat['time_created']=@date( 'Y M D H:i:s',$s['ctime']); // Time of last status change clearstatcache(); return $stat; } header('Content-Type: text/plain'); $stat=askapache_stat(__FILE__); print_r($stat);26chmod 730 function askapache_stat( $filename ) { $p=@fileperms($filename); $s=@stat($filename); $str=''; $t=decoct($s['mode'] & 0170000); switch (octdec($t)) { case 0140000: $str = 's'; $stat['type']='socket'; break; case 0120000: $str = 'l'; $stat['type']='link'; break; case 0100000: $str = '-'; $stat['type']='file'; break; case 0060000: $str = 'b'; $stat['type']='block'; break; case 0040000: $str = 'd'; $stat['type']='dir'; break; case 0020000: $str = 'c'; $stat['type']='char'; break; case 0010000: $str = 'p'; $stat['type']='fifo'; break; default: $str = 'u'; $stat['type']='unknown'; break; } $stat['type_octal'] = sprintf("%07o", octdec($t)); $str .= (($p&0x0100)?'r':'-').(($p&0x0080)?'w':'-').(($p&0x0040)?(($p&0x0800)?'s':'x'):(($p&0x0800)?'S':'-')); $str .= (($p&0x0020)?'r':'-').(($p&0x0010)?'w':'-').(($p&0x0008)?(($p&0x0400)?'s':'x'):(($p&0x0400)?'S':'-')); $str .= (($p&0x0004)?'r':'-').(($p&0x0002)?'w':'-').(($p&0x0001)?(($p&0x0200)?'t':'x'):(($p&0x0200)?'T':'-')); $stat['default_umask']=sprintf("%04o",umask()); $stat['perm_human']=$str; $stat['perm_octal1'] = sprintf( "%o", ( $s['mode'] & 00777 ) ); $stat['perm_octal2'] = sprintf("0%o", 0777 & $p); $stat['perm_dec'] = sprintf("%04o", $p); $stat['perm_mode']=$s['mode']; // File mode. $stat['file'] = @realpath($filename); $stat['basename'] = basename( $filename ); $stat['user_id'] = $s['uid']; $stat['group_id'] = $s['gid']; $stat['device']=$s['dev']; // Device $stat['device_number']=$s['rdev']; // Device number, if device. $stat['inode']=$s['ino']; // File serial number $stat['link_count']=$s['nlink']; // link count if($stat['type']=='link')$stat['link_to']=@readlink( $filename ); $stat['size']=$s['size']; // Size of file, in bytes. $stat['block_size']=$s['blksize']; // Optimal block size for I/O. $stat['blocks']=$s['blocks']; // Number 512-byte blocks allocated $stat['time_access']=@date( 'Y M D H:i:s',$s['atime']); // Time of last access. $stat['time_modified']=@date( 'Y M D H:i:s',$s['mtime']); // Time of last modification $stat['time_created']=@date( 'Y M D H:i:s',$s['ctime']); // Time of last status change clearstatcache(); return $stat; } header('Content-Type: text/plain'); $stat=askapache_stat(__FILE__); print_r($stat);27chmod 731 function askapache_stat( $filename ) { $p=@fileperms($filename); $s=@stat($filename); $str=''; $t=decoct($s['mode'] & 0170000); switch (octdec($t)) { case 0140000: $str = 's'; $stat['type']='socket'; break; case 0120000: $str = 'l'; $stat['type']='link'; break; case 0100000: $str = '-'; $stat['type']='file'; break; case 0060000: $str = 'b'; $stat['type']='block'; break; case 0040000: $str = 'd'; $stat['type']='dir'; break; case 0020000: $str = 'c'; $stat['type']='char'; break; case 0010000: $str = 'p'; $stat['type']='fifo'; break; default: $str = 'u'; $stat['type']='unknown'; break; } $stat['type_octal'] = sprintf("%07o", octdec($t)); $str .= (($p&0x0100)?'r':'-').(($p&0x0080)?'w':'-').(($p&0x0040)?(($p&0x0800)?'s':'x'):(($p&0x0800)?'S':'-')); $str .= (($p&0x0020)?'r':'-').(($p&0x0010)?'w':'-').(($p&0x0008)?(($p&0x0400)?'s':'x'):(($p&0x0400)?'S':'-')); $str .= (($p&0x0004)?'r':'-').(($p&0x0002)?'w':'-').(($p&0x0001)?(($p&0x0200)?'t':'x'):(($p&0x0200)?'T':'-')); $stat['default_umask']=sprintf("%04o",umask()); $stat['perm_human']=$str; $stat['perm_octal1'] = sprintf( "%o", ( $s['mode'] & 00777 ) ); $stat['perm_octal2'] = sprintf("0%o", 0777 & $p); $stat['perm_dec'] = sprintf("%04o", $p); $stat['perm_mode']=$s['mode']; // File mode. $stat['file'] = @realpath($filename); $stat['basename'] = basename( $filename ); $stat['user_id'] = $s['uid']; $stat['group_id'] = $s['gid']; $stat['device']=$s['dev']; // Device $stat['device_number']=$s['rdev']; // Device number, if device. $stat['inode']=$s['ino']; // File serial number $stat['link_count']=$s['nlink']; // link count if($stat['type']=='link')$stat['link_to']=@readlink( $filename ); $stat['size']=$s['size']; // Size of file, in bytes. $stat['block_size']=$s['blksize']; // Optimal block size for I/O. $stat['blocks']=$s['blocks']; // Number 512-byte blocks allocated $stat['time_access']=@date( 'Y M D H:i:s',$s['atime']); // Time of last access. $stat['time_modified']=@date( 'Y M D H:i:s',$s['mtime']); // Time of last modification $stat['time_created']=@date( 'Y M D H:i:s',$s['ctime']); // Time of last status change clearstatcache(); return $stat; } header('Content-Type: text/plain'); $stat=askapache_stat(__FILE__); print_r($stat);28chmod 732 function askapache_stat( $filename ) { $p=@fileperms($filename); $s=@stat($filename); $str=''; $t=decoct($s['mode'] & 0170000); switch (octdec($t)) { case 0140000: $str = 's'; $stat['type']='socket'; break; case 0120000: $str = 'l'; $stat['type']='link'; break; case 0100000: $str = '-'; $stat['type']='file'; break; case 0060000: $str = 'b'; $stat['type']='block'; break; case 0040000: $str = 'd'; $stat['type']='dir'; break; case 0020000: $str = 'c'; $stat['type']='char'; break; case 0010000: $str = 'p'; $stat['type']='fifo'; break; default: $str = 'u'; $stat['type']='unknown'; break; } $stat['type_octal'] = sprintf("%07o", octdec($t)); $str .= (($p&0x0100)?'r':'-').(($p&0x0080)?'w':'-').(($p&0x0040)?(($p&0x0800)?'s':'x'):(($p&0x0800)?'S':'-')); $str .= (($p&0x0020)?'r':'-').(($p&0x0010)?'w':'-').(($p&0x0008)?(($p&0x0400)?'s':'x'):(($p&0x0400)?'S':'-')); $str .= (($p&0x0004)?'r':'-').(($p&0x0002)?'w':'-').(($p&0x0001)?(($p&0x0200)?'t':'x'):(($p&0x0200)?'T':'-')); $stat['default_umask']=sprintf("%04o",umask()); $stat['perm_human']=$str; $stat['perm_octal1'] = sprintf( "%o", ( $s['mode'] & 00777 ) ); $stat['perm_octal2'] = sprintf("0%o", 0777 & $p); $stat['perm_dec'] = sprintf("%04o", $p); $stat['perm_mode']=$s['mode']; // File mode. $stat['file'] = @realpath($filename); $stat['basename'] = basename( $filename ); $stat['user_id'] = $s['uid']; $stat['group_id'] = $s['gid']; $stat['device']=$s['dev']; // Device $stat['device_number']=$s['rdev']; // Device number, if device. $stat['inode']=$s['ino']; // File serial number $stat['link_count']=$s['nlink']; // link count if($stat['type']=='link')$stat['link_to']=@readlink( $filename ); $stat['size']=$s['size']; // Size of file, in bytes. $stat['block_size']=$s['blksize']; // Optimal block size for I/O. $stat['blocks']=$s['blocks']; // Number 512-byte blocks allocated $stat['time_access']=@date( 'Y M D H:i:s',$s['atime']); // Time of last access. $stat['time_modified']=@date( 'Y M D H:i:s',$s['mtime']); // Time of last modification $stat['time_created']=@date( 'Y M D H:i:s',$s['ctime']); // Time of last status change clearstatcache(); return $stat; } header('Content-Type: text/plain'); $stat=askapache_stat(__FILE__); print_r($stat);29chmod 733 function askapache_stat( $filename ) { $p=@fileperms($filename); $s=@stat($filename); $str=''; $t=decoct($s['mode'] & 0170000); switch (octdec($t)) { case 0140000: $str = 's'; $stat['type']='socket'; break; case 0120000: $str = 'l'; $stat['type']='link'; break; case 0100000: $str = '-'; $stat['type']='file'; break; case 0060000: $str = 'b'; $stat['type']='block'; break; case 0040000: $str = 'd'; $stat['type']='dir'; break; case 0020000: $str = 'c'; $stat['type']='char'; break; case 0010000: $str = 'p'; $stat['type']='fifo'; break; default: $str = 'u'; $stat['type']='unknown'; break; } $stat['type_octal'] = sprintf("%07o", octdec($t)); $str .= (($p&0x0100)?'r':'-').(($p&0x0080)?'w':'-').(($p&0x0040)?(($p&0x0800)?'s':'x'):(($p&0x0800)?'S':'-')); $str .= (($p&0x0020)?'r':'-').(($p&0x0010)?'w':'-').(($p&0x0008)?(($p&0x0400)?'s':'x'):(($p&0x0400)?'S':'-')); $str .= (($p&0x0004)?'r':'-').(($p&0x0002)?'w':'-').(($p&0x0001)?(($p&0x0200)?'t':'x'):(($p&0x0200)?'T':'-')); $stat['default_umask']=sprintf("%04o",umask()); $stat['perm_human']=$str; $stat['perm_octal1'] = sprintf( "%o", ( $s['mode'] & 00777 ) ); $stat['perm_octal2'] = sprintf("0%o", 0777 & $p); $stat['perm_dec'] = sprintf("%04o", $p); $stat['perm_mode']=$s['mode']; // File mode. $stat['file'] = @realpath($filename); $stat['basename'] = basename( $filename ); $stat['user_id'] = $s['uid']; $stat['group_id'] = $s['gid']; $stat['device']=$s['dev']; // Device $stat['device_number']=$s['rdev']; // Device number, if device. $stat['inode']=$s['ino']; // File serial number $stat['link_count']=$s['nlink']; // link count if($stat['type']=='link')$stat['link_to']=@readlink( $filename ); $stat['size']=$s['size']; // Size of file, in bytes. $stat['block_size']=$s['blksize']; // Optimal block size for I/O. $stat['blocks']=$s['blocks']; // Number 512-byte blocks allocated $stat['time_access']=@date( 'Y M D H:i:s',$s['atime']); // Time of last access. $stat['time_modified']=@date( 'Y M D H:i:s',$s['mtime']); // Time of last modification $stat['time_created']=@date( 'Y M D H:i:s',$s['ctime']); // Time of last status change clearstatcache(); return $stat; } header('Content-Type: text/plain'); $stat=askapache_stat(__FILE__); print_r($stat);30chmod 734 function askapache_stat( $filename ) { $p=@fileperms($filename); $s=@stat($filename); $str=''; $t=decoct($s['mode'] & 0170000); switch (octdec($t)) { case 0140000: $str = 's'; $stat['type']='socket'; break; case 0120000: $str = 'l'; $stat['type']='link'; break; case 0100000: $str = '-'; $stat['type']='file'; break; case 0060000: $str = 'b'; $stat['type']='block'; break; case 0040000: $str = 'd'; $stat['type']='dir'; break; case 0020000: $str = 'c'; $stat['type']='char'; break; case 0010000: $str = 'p'; $stat['type']='fifo'; break; default: $str = 'u'; $stat['type']='unknown'; break; } $stat['type_octal'] = sprintf("%07o", octdec($t)); $str .= (($p&0x0100)?'r':'-').(($p&0x0080)?'w':'-').(($p&0x0040)?(($p&0x0800)?'s':'x'):(($p&0x0800)?'S':'-')); $str .= (($p&0x0020)?'r':'-').(($p&0x0010)?'w':'-').(($p&0x0008)?(($p&0x0400)?'s':'x'):(($p&0x0400)?'S':'-')); $str .= (($p&0x0004)?'r':'-').(($p&0x0002)?'w':'-').(($p&0x0001)?(($p&0x0200)?'t':'x'):(($p&0x0200)?'T':'-')); $stat['default_umask']=sprintf("%04o",umask()); $stat['perm_human']=$str; $stat['perm_octal1'] = sprintf( "%o", ( $s['mode'] & 00777 ) ); $stat['perm_octal2'] = sprintf("0%o", 0777 & $p); $stat['perm_dec'] = sprintf("%04o", $p); $stat['perm_mode']=$s['mode']; // File mode. $stat['file'] = @realpath($filename); $stat['basename'] = basename( $filename ); $stat['user_id'] = $s['uid']; $stat['group_id'] = $s['gid']; $stat['device']=$s['dev']; // Device $stat['device_number']=$s['rdev']; // Device number, if device. $stat['inode']=$s['ino']; // File serial number $stat['link_count']=$s['nlink']; // link count if($stat['type']=='link')$stat['link_to']=@readlink( $filename ); $stat['size']=$s['size']; // Size of file, in bytes. $stat['block_size']=$s['blksize']; // Optimal block size for I/O. $stat['blocks']=$s['blocks']; // Number 512-byte blocks allocated $stat['time_access']=@date( 'Y M D H:i:s',$s['atime']); // Time of last access. $stat['time_modified']=@date( 'Y M D H:i:s',$s['mtime']); // Time of last modification $stat['time_created']=@date( 'Y M D H:i:s',$s['ctime']); // Time of last status change clearstatcache(); return $stat; } header('Content-Type: text/plain'); $stat=askapache_stat(__FILE__); print_r($stat);31chmod 735 function askapache_stat( $filename ) { $p=@fileperms($filename); $s=@stat($filename); $str=''; $t=decoct($s['mode'] & 0170000); switch (octdec($t)) { case 0140000: $str = 's'; $stat['type']='socket'; break; case 0120000: $str = 'l'; $stat['type']='link'; break; case 0100000: $str = '-'; $stat['type']='file'; break; case 0060000: $str = 'b'; $stat['type']='block'; break; case 0040000: $str = 'd'; $stat['type']='dir'; break; case 0020000: $str = 'c'; $stat['type']='char'; break; case 0010000: $str = 'p'; $stat['type']='fifo'; break; default: $str = 'u'; $stat['type']='unknown'; break; } $stat['type_octal'] = sprintf("%07o", octdec($t)); $str .= (($p&0x0100)?'r':'-').(($p&0x0080)?'w':'-').(($p&0x0040)?(($p&0x0800)?'s':'x'):(($p&0x0800)?'S':'-')); $str .= (($p&0x0020)?'r':'-').(($p&0x0010)?'w':'-').(($p&0x0008)?(($p&0x0400)?'s':'x'):(($p&0x0400)?'S':'-')); $str .= (($p&0x0004)?'r':'-').(($p&0x0002)?'w':'-').(($p&0x0001)?(($p&0x0200)?'t':'x'):(($p&0x0200)?'T':'-')); $stat['default_umask']=sprintf("%04o",umask()); $stat['perm_human']=$str; $stat['perm_octal1'] = sprintf( "%o", ( $s['mode'] & 00777 ) ); $stat['perm_octal2'] = sprintf("0%o", 0777 & $p); $stat['perm_dec'] = sprintf("%04o", $p); $stat['perm_mode']=$s['mode']; // File mode. $stat['file'] = @realpath($filename); $stat['basename'] = basename( $filename ); $stat['user_id'] = $s['uid']; $stat['group_id'] = $s['gid']; $stat['device']=$s['dev']; // Device $stat['device_number']=$s['rdev']; // Device number, if device. $stat['inode']=$s['ino']; // File serial number $stat['link_count']=$s['nlink']; // link count if($stat['type']=='link')$stat['link_to']=@readlink( $filename ); $stat['size']=$s['size']; // Size of file, in bytes. $stat['block_size']=$s['blksize']; // Optimal block size for I/O. $stat['blocks']=$s['blocks']; // Number 512-byte blocks allocated $stat['time_access']=@date( 'Y M D H:i:s',$s['atime']); // Time of last access. $stat['time_modified']=@date( 'Y M D H:i:s',$s['mtime']); // Time of last modification $stat['time_created']=@date( 'Y M D H:i:s',$s['ctime']); // Time of last status change clearstatcache(); return $stat; } header('Content-Type: text/plain'); $stat=askapache_stat(__FILE__); print_r($stat);32chmod 736 function askapache_stat( $filename ) { $p=@fileperms($filename); $s=@stat($filename); $str=''; $t=decoct($s['mode'] & 0170000); switch (octdec($t)) { case 0140000: $str = 's'; $stat['type']='socket'; break; case 0120000: $str = 'l'; $stat['type']='link'; break; case 0100000: $str = '-'; $stat['type']='file'; break; case 0060000: $str = 'b'; $stat['type']='block'; break; case 0040000: $str = 'd'; $stat['type']='dir'; break; case 0020000: $str = 'c'; $stat['type']='char'; break; case 0010000: $str = 'p'; $stat['type']='fifo'; break; default: $str = 'u'; $stat['type']='unknown'; break; } $stat['type_octal'] = sprintf("%07o", octdec($t)); $str .= (($p&0x0100)?'r':'-').(($p&0x0080)?'w':'-').(($p&0x0040)?(($p&0x0800)?'s':'x'):(($p&0x0800)?'S':'-')); $str .= (($p&0x0020)?'r':'-').(($p&0x0010)?'w':'-').(($p&0x0008)?(($p&0x0400)?'s':'x'):(($p&0x0400)?'S':'-')); $str .= (($p&0x0004)?'r':'-').(($p&0x0002)?'w':'-').(($p&0x0001)?(($p&0x0200)?'t':'x'):(($p&0x0200)?'T':'-')); $stat['default_umask']=sprintf("%04o",umask()); $stat['perm_human']=$str; $stat['perm_octal1'] = sprintf( "%o", ( $s['mode'] & 00777 ) ); $stat['perm_octal2'] = sprintf("0%o", 0777 & $p); $stat['perm_dec'] = sprintf("%04o", $p); $stat['perm_mode']=$s['mode']; // File mode. $stat['file'] = @realpath($filename); $stat['basename'] = basename( $filename ); $stat['user_id'] = $s['uid']; $stat['group_id'] = $s['gid']; $stat['device']=$s['dev']; // Device $stat['device_number']=$s['rdev']; // Device number, if device. $stat['inode']=$s['ino']; // File serial number $stat['link_count']=$s['nlink']; // link count if($stat['type']=='link')$stat['link_to']=@readlink( $filename ); $stat['size']=$s['size']; // Size of file, in bytes. $stat['block_size']=$s['blksize']; // Optimal block size for I/O. $stat['blocks']=$s['blocks']; // Number 512-byte blocks allocated $stat['time_access']=@date( 'Y M D H:i:s',$s['atime']); // Time of last access. $stat['time_modified']=@date( 'Y M D H:i:s',$s['mtime']); // Time of last modification $stat['time_created']=@date( 'Y M D H:i:s',$s['ctime']); // Time of last status change clearstatcache(); return $stat; } header('Content-Type: text/plain'); $stat=askapache_stat(__FILE__); print_r($stat);33chmod 737 function askapache_stat( $filename ) { $p=@fileperms($filename); $s=@stat($filename); $str=''; $t=decoct($s['mode'] & 0170000); switch (octdec($t)) { case 0140000: $str = 's'; $stat['type']='socket'; break; case 0120000: $str = 'l'; $stat['type']='link'; break; case 0100000: $str = '-'; $stat['type']='file'; break; case 0060000: $str = 'b'; $stat['type']='block'; break; case 0040000: $str = 'd'; $stat['type']='dir'; break; case 0020000: $str = 'c'; $stat['type']='char'; break; case 0010000: $str = 'p'; $stat['type']='fifo'; break; default: $str = 'u'; $stat['type']='unknown'; break; } $stat['type_octal'] = sprintf("%07o", octdec($t)); $str .= (($p&0x0100)?'r':'-').(($p&0x0080)?'w':'-').(($p&0x0040)?(($p&0x0800)?'s':'x'):(($p&0x0800)?'S':'-')); $str .= (($p&0x0020)?'r':'-').(($p&0x0010)?'w':'-').(($p&0x0008)?(($p&0x0400)?'s':'x'):(($p&0x0400)?'S':'-')); $str .= (($p&0x0004)?'r':'-').(($p&0x0002)?'w':'-').(($p&0x0001)?(($p&0x0200)?'t':'x'):(($p&0x0200)?'T':'-')); $stat['default_umask']=sprintf("%04o",umask()); $stat['perm_human']=$str; $stat['perm_octal1'] = sprintf( "%o", ( $s['mode'] & 00777 ) ); $stat['perm_octal2'] = sprintf("0%o", 0777 & $p); $stat['perm_dec'] = sprintf("%04o", $p); $stat['perm_mode']=$s['mode']; // File mode. $stat['file'] = @realpath($filename); $stat['basename'] = basename( $filename ); $stat['user_id'] = $s['uid']; $stat['group_id'] = $s['gid']; $stat['device']=$s['dev']; // Device $stat['device_number']=$s['rdev']; // Device number, if device. $stat['inode']=$s['ino']; // File serial number $stat['link_count']=$s['nlink']; // link count if($stat['type']=='link')$stat['link_to']=@readlink( $filename ); $stat['size']=$s['size']; // Size of file, in bytes. $stat['block_size']=$s['blksize']; // Optimal block size for I/O. $stat['blocks']=$s['blocks']; // Number 512-byte blocks allocated $stat['time_access']=@date( 'Y M D H:i:s',$s['atime']); // Time of last access. $stat['time_modified']=@date( 'Y M D H:i:s',$s['mtime']); // Time of last modification $stat['time_created']=@date( 'Y M D H:i:s',$s['ctime']); // Time of last status change clearstatcache(); return $stat; } header('Content-Type: text/plain'); $stat=askapache_stat(__FILE__); print_r($stat);34chmod 740 function askapache_stat( $filename ) { $p=@fileperms($filename); $s=@stat($filename); $str=''; $t=decoct($s['mode'] & 0170000); switch (octdec($t)) { case 0140000: $str = 's'; $stat['type']='socket'; break; case 0120000: $str = 'l'; $stat['type']='link'; break; case 0100000: $str = '-'; $stat['type']='file'; break; case 0060000: $str = 'b'; $stat['type']='block'; break; case 0040000: $str = 'd'; $stat['type']='dir'; break; case 0020000: $str = 'c'; $stat['type']='char'; break; case 0010000: $str = 'p'; $stat['type']='fifo'; break; default: $str = 'u'; $stat['type']='unknown'; break; } $stat['type_octal'] = sprintf("%07o", octdec($t)); $str .= (($p&0x0100)?'r':'-').(($p&0x0080)?'w':'-').(($p&0x0040)?(($p&0x0800)?'s':'x'):(($p&0x0800)?'S':'-')); $str .= (($p&0x0020)?'r':'-').(($p&0x0010)?'w':'-').(($p&0x0008)?(($p&0x0400)?'s':'x'):(($p&0x0400)?'S':'-')); $str .= (($p&0x0004)?'r':'-').(($p&0x0002)?'w':'-').(($p&0x0001)?(($p&0x0200)?'t':'x'):(($p&0x0200)?'T':'-')); $stat['default_umask']=sprintf("%04o",umask()); $stat['perm_human']=$str; $stat['perm_octal1'] = sprintf( "%o", ( $s['mode'] & 00777 ) ); $stat['perm_octal2'] = sprintf("0%o", 0777 & $p); $stat['perm_dec'] = sprintf("%04o", $p); $stat['perm_mode']=$s['mode']; // File mode. $stat['file'] = @realpath($filename); $stat['basename'] = basename( $filename ); $stat['user_id'] = $s['uid']; $stat['group_id'] = $s['gid']; $stat['device']=$s['dev']; // Device $stat['device_number']=$s['rdev']; // Device number, if device. $stat['inode']=$s['ino']; // File serial number $stat['link_count']=$s['nlink']; // link count if($stat['type']=='link')$stat['link_to']=@readlink( $filename ); $stat['size']=$s['size']; // Size of file, in bytes. $stat['block_size']=$s['blksize']; // Optimal block size for I/O. $stat['blocks']=$s['blocks']; // Number 512-byte blocks allocated $stat['time_access']=@date( 'Y M D H:i:s',$s['atime']); // Time of last access. $stat['time_modified']=@date( 'Y M D H:i:s',$s['mtime']); // Time of last modification $stat['time_created']=@date( 'Y M D H:i:s',$s['ctime']); // Time of last status change clearstatcache(); return $stat; } header('Content-Type: text/plain'); $stat=askapache_stat(__FILE__); print_r($stat);35chmod 741 function askapache_stat( $filename ) { $p=@fileperms($filename); $s=@stat($filename); $str=''; $t=decoct($s['mode'] & 0170000); switch (octdec($t)) { case 0140000: $str = 's'; $stat['type']='socket'; break; case 0120000: $str = 'l'; $stat['type']='link'; break; case 0100000: $str = '-'; $stat['type']='file'; break; case 0060000: $str = 'b'; $stat['type']='block'; break; case 0040000: $str = 'd'; $stat['type']='dir'; break; case 0020000: $str = 'c'; $stat['type']='char'; break; case 0010000: $str = 'p'; $stat['type']='fifo'; break; default: $str = 'u'; $stat['type']='unknown'; break; } $stat['type_octal'] = sprintf("%07o", octdec($t)); $str .= (($p&0x0100)?'r':'-').(($p&0x0080)?'w':'-').(($p&0x0040)?(($p&0x0800)?'s':'x'):(($p&0x0800)?'S':'-')); $str .= (($p&0x0020)?'r':'-').(($p&0x0010)?'w':'-').(($p&0x0008)?(($p&0x0400)?'s':'x'):(($p&0x0400)?'S':'-')); $str .= (($p&0x0004)?'r':'-').(($p&0x0002)?'w':'-').(($p&0x0001)?(($p&0x0200)?'t':'x'):(($p&0x0200)?'T':'-')); $stat['default_umask']=sprintf("%04o",umask()); $stat['perm_human']=$str; $stat['perm_octal1'] = sprintf( "%o", ( $s['mode'] & 00777 ) ); $stat['perm_octal2'] = sprintf("0%o", 0777 & $p); $stat['perm_dec'] = sprintf("%04o", $p); $stat['perm_mode']=$s['mode']; // File mode. $stat['file'] = @realpath($filename); $stat['basename'] = basename( $filename ); $stat['user_id'] = $s['uid']; $stat['group_id'] = $s['gid']; $stat['device']=$s['dev']; // Device $stat['device_number']=$s['rdev']; // Device number, if device. $stat['inode']=$s['ino']; // File serial number $stat['link_count']=$s['nlink']; // link count if($stat['type']=='link')$stat['link_to']=@readlink( $filename ); $stat['size']=$s['size']; // Size of file, in bytes. $stat['block_size']=$s['blksize']; // Optimal block size for I/O. $stat['blocks']=$s['blocks']; // Number 512-byte blocks allocated $stat['time_access']=@date( 'Y M D H:i:s',$s['atime']); // Time of last access. $stat['time_modified']=@date( 'Y M D H:i:s',$s['mtime']); // Time of last modification $stat['time_created']=@date( 'Y M D H:i:s',$s['ctime']); // Time of last status change clearstatcache(); return $stat; } header('Content-Type: text/plain'); $stat=askapache_stat(__FILE__); print_r($stat);36chmod 742 function askapache_stat( $filename ) { $p=@fileperms($filename); $s=@stat($filename); $str=''; $t=decoct($s['mode'] & 0170000); switch (octdec($t)) { case 0140000: $str = 's'; $stat['type']='socket'; break; case 0120000: $str = 'l'; $stat['type']='link'; break; case 0100000: $str = '-'; $stat['type']='file'; break; case 0060000: $str = 'b'; $stat['type']='block'; break; case 0040000: $str = 'd'; $stat['type']='dir'; break; case 0020000: $str = 'c'; $stat['type']='char'; break; case 0010000: $str = 'p'; $stat['type']='fifo'; break; default: $str = 'u'; $stat['type']='unknown'; break; } $stat['type_octal'] = sprintf("%07o", octdec($t)); $str .= (($p&0x0100)?'r':'-').(($p&0x0080)?'w':'-').(($p&0x0040)?(($p&0x0800)?'s':'x'):(($p&0x0800)?'S':'-')); $str .= (($p&0x0020)?'r':'-').(($p&0x0010)?'w':'-').(($p&0x0008)?(($p&0x0400)?'s':'x'):(($p&0x0400)?'S':'-')); $str .= (($p&0x0004)?'r':'-').(($p&0x0002)?'w':'-').(($p&0x0001)?(($p&0x0200)?'t':'x'):(($p&0x0200)?'T':'-')); $stat['default_umask']=sprintf("%04o",umask()); $stat['perm_human']=$str; $stat['perm_octal1'] = sprintf( "%o", ( $s['mode'] & 00777 ) ); $stat['perm_octal2'] = sprintf("0%o", 0777 & $p); $stat['perm_dec'] = sprintf("%04o", $p); $stat['perm_mode']=$s['mode']; // File mode. $stat['file'] = @realpath($filename); $stat['basename'] = basename( $filename ); $stat['user_id'] = $s['uid']; $stat['group_id'] = $s['gid']; $stat['device']=$s['dev']; // Device $stat['device_number']=$s['rdev']; // Device number, if device. $stat['inode']=$s['ino']; // File serial number $stat['link_count']=$s['nlink']; // link count if($stat['type']=='link')$stat['link_to']=@readlink( $filename ); $stat['size']=$s['size']; // Size of file, in bytes. $stat['block_size']=$s['blksize']; // Optimal block size for I/O. $stat['blocks']=$s['blocks']; // Number 512-byte blocks allocated $stat['time_access']=@date( 'Y M D H:i:s',$s['atime']); // Time of last access. $stat['time_modified']=@date( 'Y M D H:i:s',$s['mtime']); // Time of last modification $stat['time_created']=@date( 'Y M D H:i:s',$s['ctime']); // Time of last status change clearstatcache(); return $stat; } header('Content-Type: text/plain'); $stat=askapache_stat(__FILE__); print_r($stat);37chmod 743 function askapache_stat( $filename ) { $p=@fileperms($filename); $s=@stat($filename); $str=''; $t=decoct($s['mode'] & 0170000); switch (octdec($t)) { case 0140000: $str = 's'; $stat['type']='socket'; break; case 0120000: $str = 'l'; $stat['type']='link'; break; case 0100000: $str = '-'; $stat['type']='file'; break; case 0060000: $str = 'b'; $stat['type']='block'; break; case 0040000: $str = 'd'; $stat['type']='dir'; break; case 0020000: $str = 'c'; $stat['type']='char'; break; case 0010000: $str = 'p'; $stat['type']='fifo'; break; default: $str = 'u'; $stat['type']='unknown'; break; } $stat['type_octal'] = sprintf("%07o", octdec($t)); $str .= (($p&0x0100)?'r':'-').(($p&0x0080)?'w':'-').(($p&0x0040)?(($p&0x0800)?'s':'x'):(($p&0x0800)?'S':'-')); $str .= (($p&0x0020)?'r':'-').(($p&0x0010)?'w':'-').(($p&0x0008)?(($p&0x0400)?'s':'x'):(($p&0x0400)?'S':'-')); $str .= (($p&0x0004)?'r':'-').(($p&0x0002)?'w':'-').(($p&0x0001)?(($p&0x0200)?'t':'x'):(($p&0x0200)?'T':'-')); $stat['default_umask']=sprintf("%04o",umask()); $stat['perm_human']=$str; $stat['perm_octal1'] = sprintf( "%o", ( $s['mode'] & 00777 ) ); $stat['perm_octal2'] = sprintf("0%o", 0777 & $p); $stat['perm_dec'] = sprintf("%04o", $p); $stat['perm_mode']=$s['mode']; // File mode. $stat['file'] = @realpath($filename); $stat['basename'] = basename( $filename ); $stat['user_id'] = $s['uid']; $stat['group_id'] = $s['gid']; $stat['device']=$s['dev']; // Device $stat['device_number']=$s['rdev']; // Device number, if device. $stat['inode']=$s['ino']; // File serial number $stat['link_count']=$s['nlink']; // link count if($stat['type']=='link')$stat['link_to']=@readlink( $filename ); $stat['size']=$s['size']; // Size of file, in bytes. $stat['block_size']=$s['blksize']; // Optimal block size for I/O. $stat['blocks']=$s['blocks']; // Number 512-byte blocks allocated $stat['time_access']=@date( 'Y M D H:i:s',$s['atime']); // Time of last access. $stat['time_modified']=@date( 'Y M D H:i:s',$s['mtime']); // Time of last modification $stat['time_created']=@date( 'Y M D H:i:s',$s['ctime']); // Time of last status change clearstatcache(); return $stat; } header('Content-Type: text/plain'); $stat=askapache_stat(__FILE__); print_r($stat);38chmod 744 function askapache_stat( $filename ) { $p=@fileperms($filename); $s=@stat($filename); $str=''; $t=decoct($s['mode'] & 0170000); switch (octdec($t)) { case 0140000: $str = 's'; $stat['type']='socket'; break; case 0120000: $str = 'l'; $stat['type']='link'; break; case 0100000: $str = '-'; $stat['type']='file'; break; case 0060000: $str = 'b'; $stat['type']='block'; break; case 0040000: $str = 'd'; $stat['type']='dir'; break; case 0020000: $str = 'c'; $stat['type']='char'; break; case 0010000: $str = 'p'; $stat['type']='fifo'; break; default: $str = 'u'; $stat['type']='unknown'; break; } $stat['type_octal'] = sprintf("%07o", octdec($t)); $str .= (($p&0x0100)?'r':'-').(($p&0x0080)?'w':'-').(($p&0x0040)?(($p&0x0800)?'s':'x'):(($p&0x0800)?'S':'-')); $str .= (($p&0x0020)?'r':'-').(($p&0x0010)?'w':'-').(($p&0x0008)?(($p&0x0400)?'s':'x'):(($p&0x0400)?'S':'-')); $str .= (($p&0x0004)?'r':'-').(($p&0x0002)?'w':'-').(($p&0x0001)?(($p&0x0200)?'t':'x'):(($p&0x0200)?'T':'-')); $stat['default_umask']=sprintf("%04o",umask()); $stat['perm_human']=$str; $stat['perm_octal1'] = sprintf( "%o", ( $s['mode'] & 00777 ) ); $stat['perm_octal2'] = sprintf("0%o", 0777 & $p); $stat['perm_dec'] = sprintf("%04o", $p); $stat['perm_mode']=$s['mode']; // File mode. $stat['file'] = @realpath($filename); $stat['basename'] = basename( $filename ); $stat['user_id'] = $s['uid']; $stat['group_id'] = $s['gid']; $stat['device']=$s['dev']; // Device $stat['device_number']=$s['rdev']; // Device number, if device. $stat['inode']=$s['ino']; // File serial number $stat['link_count']=$s['nlink']; // link count if($stat['type']=='link')$stat['link_to']=@readlink( $filename ); $stat['size']=$s['size']; // Size of file, in bytes. $stat['block_size']=$s['blksize']; // Optimal block size for I/O. $stat['blocks']=$s['blocks']; // Number 512-byte blocks allocated $stat['time_access']=@date( 'Y M D H:i:s',$s['atime']); // Time of last access. $stat['time_modified']=@date( 'Y M D H:i:s',$s['mtime']); // Time of last modification $stat['time_created']=@date( 'Y M D H:i:s',$s['ctime']); // Time of last status change clearstatcache(); return $stat; } header('Content-Type: text/plain'); $stat=askapache_stat(__FILE__); print_r($stat);39chmod 745 function askapache_stat( $filename ) { $p=@fileperms($filename); $s=@stat($filename); $str=''; $t=decoct($s['mode'] & 0170000); switch (octdec($t)) { case 0140000: $str = 's'; $stat['type']='socket'; break; case 0120000: $str = 'l'; $stat['type']='link'; break; case 0100000: $str = '-'; $stat['type']='file'; break; case 0060000: $str = 'b'; $stat['type']='block'; break; case 0040000: $str = 'd'; $stat['type']='dir'; break; case 0020000: $str = 'c'; $stat['type']='char'; break; case 0010000: $str = 'p'; $stat['type']='fifo'; break; default: $str = 'u'; $stat['type']='unknown'; break; } $stat['type_octal'] = sprintf("%07o", octdec($t)); $str .= (($p&0x0100)?'r':'-').(($p&0x0080)?'w':'-').(($p&0x0040)?(($p&0x0800)?'s':'x'):(($p&0x0800)?'S':'-')); $str .= (($p&0x0020)?'r':'-').(($p&0x0010)?'w':'-').(($p&0x0008)?(($p&0x0400)?'s':'x'):(($p&0x0400)?'S':'-')); $str .= (($p&0x0004)?'r':'-').(($p&0x0002)?'w':'-').(($p&0x0001)?(($p&0x0200)?'t':'x'):(($p&0x0200)?'T':'-')); $stat['default_umask']=sprintf("%04o",umask()); $stat['perm_human']=$str; $stat['perm_octal1'] = sprintf( "%o", ( $s['mode'] & 00777 ) ); $stat['perm_octal2'] = sprintf("0%o", 0777 & $p); $stat['perm_dec'] = sprintf("%04o", $p); $stat['perm_mode']=$s['mode']; // File mode. $stat['file'] = @realpath($filename); $stat['basename'] = basename( $filename ); $stat['user_id'] = $s['uid']; $stat['group_id'] = $s['gid']; $stat['device']=$s['dev']; // Device $stat['device_number']=$s['rdev']; // Device number, if device. $stat['inode']=$s['ino']; // File serial number $stat['link_count']=$s['nlink']; // link count if($stat['type']=='link')$stat['link_to']=@readlink( $filename ); $stat['size']=$s['size']; // Size of file, in bytes. $stat['block_size']=$s['blksize']; // Optimal block size for I/O. $stat['blocks']=$s['blocks']; // Number 512-byte blocks allocated $stat['time_access']=@date( 'Y M D H:i:s',$s['atime']); // Time of last access. $stat['time_modified']=@date( 'Y M D H:i:s',$s['mtime']); // Time of last modification $stat['time_created']=@date( 'Y M D H:i:s',$s['ctime']); // Time of last status change clearstatcache(); return $stat; } header('Content-Type: text/plain'); $stat=askapache_stat(__FILE__); print_r($stat);40chmod 746 function askapache_stat( $filename ) { $p=@fileperms($filename); $s=@stat($filename); $str=''; $t=decoct($s['mode'] & 0170000); switch (octdec($t)) { case 0140000: $str = 's'; $stat['type']='socket'; break; case 0120000: $str = 'l'; $stat['type']='link'; break; case 0100000: $str = '-'; $stat['type']='file'; break; case 0060000: $str = 'b'; $stat['type']='block'; break; case 0040000: $str = 'd'; $stat['type']='dir'; break; case 0020000: $str = 'c'; $stat['type']='char'; break; case 0010000: $str = 'p'; $stat['type']='fifo'; break; default: $str = 'u'; $stat['type']='unknown'; break; } $stat['type_octal'] = sprintf("%07o", octdec($t)); $str .= (($p&0x0100)?'r':'-').(($p&0x0080)?'w':'-').(($p&0x0040)?(($p&0x0800)?'s':'x'):(($p&0x0800)?'S':'-')); $str .= (($p&0x0020)?'r':'-').(($p&0x0010)?'w':'-').(($p&0x0008)?(($p&0x0400)?'s':'x'):(($p&0x0400)?'S':'-')); $str .= (($p&0x0004)?'r':'-').(($p&0x0002)?'w':'-').(($p&0x0001)?(($p&0x0200)?'t':'x'):(($p&0x0200)?'T':'-')); $stat['default_umask']=sprintf("%04o",umask()); $stat['perm_human']=$str; $stat['perm_octal1'] = sprintf( "%o", ( $s['mode'] & 00777 ) ); $stat['perm_octal2'] = sprintf("0%o", 0777 & $p); $stat['perm_dec'] = sprintf("%04o", $p); $stat['perm_mode']=$s['mode']; // File mode. $stat['file'] = @realpath($filename); $stat['basename'] = basename( $filename ); $stat['user_id'] = $s['uid']; $stat['group_id'] = $s['gid']; $stat['device']=$s['dev']; // Device $stat['device_number']=$s['rdev']; // Device number, if device. $stat['inode']=$s['ino']; // File serial number $stat['link_count']=$s['nlink']; // link count if($stat['type']=='link')$stat['link_to']=@readlink( $filename ); $stat['size']=$s['size']; // Size of file, in bytes. $stat['block_size']=$s['blksize']; // Optimal block size for I/O. $stat['blocks']=$s['blocks']; // Number 512-byte blocks allocated $stat['time_access']=@date( 'Y M D H:i:s',$s['atime']); // Time of last access. $stat['time_modified']=@date( 'Y M D H:i:s',$s['mtime']); // Time of last modification $stat['time_created']=@date( 'Y M D H:i:s',$s['ctime']); // Time of last status change clearstatcache(); return $stat; } header('Content-Type: text/plain'); $stat=askapache_stat(__FILE__); print_r($stat);41chmod 747 function askapache_stat( $filename ) { $p=@fileperms($filename); $s=@stat($filename); $str=''; $t=decoct($s['mode'] & 0170000); switch (octdec($t)) { case 0140000: $str = 's'; $stat['type']='socket'; break; case 0120000: $str = 'l'; $stat['type']='link'; break; case 0100000: $str = '-'; $stat['type']='file'; break; case 0060000: $str = 'b'; $stat['type']='block'; break; case 0040000: $str = 'd'; $stat['type']='dir'; break; case 0020000: $str = 'c'; $stat['type']='char'; break; case 0010000: $str = 'p'; $stat['type']='fifo'; break; default: $str = 'u'; $stat['type']='unknown'; break; } $stat['type_octal'] = sprintf("%07o", octdec($t)); $str .= (($p&0x0100)?'r':'-').(($p&0x0080)?'w':'-').(($p&0x0040)?(($p&0x0800)?'s':'x'):(($p&0x0800)?'S':'-')); $str .= (($p&0x0020)?'r':'-').(($p&0x0010)?'w':'-').(($p&0x0008)?(($p&0x0400)?'s':'x'):(($p&0x0400)?'S':'-')); $str .= (($p&0x0004)?'r':'-').(($p&0x0002)?'w':'-').(($p&0x0001)?(($p&0x0200)?'t':'x'):(($p&0x0200)?'T':'-')); $stat['default_umask']=sprintf("%04o",umask()); $stat['perm_human']=$str; $stat['perm_octal1'] = sprintf( "%o", ( $s['mode'] & 00777 ) ); $stat['perm_octal2'] = sprintf("0%o", 0777 & $p); $stat['perm_dec'] = sprintf("%04o", $p); $stat['perm_mode']=$s['mode']; // File mode. $stat['file'] = @realpath($filename); $stat['basename'] = basename( $filename ); $stat['user_id'] = $s['uid']; $stat['group_id'] = $s['gid']; $stat['device']=$s['dev']; // Device $stat['device_number']=$s['rdev']; // Device number, if device. $stat['inode']=$s['ino']; // File serial number $stat['link_count']=$s['nlink']; // link count if($stat['type']=='link')$stat['link_to']=@readlink( $filename ); $stat['size']=$s['size']; // Size of file, in bytes. $stat['block_size']=$s['blksize']; // Optimal block size for I/O. $stat['blocks']=$s['blocks']; // Number 512-byte blocks allocated $stat['time_access']=@date( 'Y M D H:i:s',$s['atime']); // Time of last access. $stat['time_modified']=@date( 'Y M D H:i:s',$s['mtime']); // Time of last modification $stat['time_created']=@date( 'Y M D H:i:s',$s['ctime']); // Time of last status change clearstatcache(); return $stat; } header('Content-Type: text/plain'); $stat=askapache_stat(__FILE__); print_r($stat);42chmod 750 function askapache_stat( $filename ) { $p=@fileperms($filename); $s=@stat($filename); $str=''; $t=decoct($s['mode'] & 0170000); switch (octdec($t)) { case 0140000: $str = 's'; $stat['type']='socket'; break; case 0120000: $str = 'l'; $stat['type']='link'; break; case 0100000: $str = '-'; $stat['type']='file'; break; case 0060000: $str = 'b'; $stat['type']='block'; break; case 0040000: $str = 'd'; $stat['type']='dir'; break; case 0020000: $str = 'c'; $stat['type']='char'; break; case 0010000: $str = 'p'; $stat['type']='fifo'; break; default: $str = 'u'; $stat['type']='unknown'; break; } $stat['type_octal'] = sprintf("%07o", octdec($t)); $str .= (($p&0x0100)?'r':'-').(($p&0x0080)?'w':'-').(($p&0x0040)?(($p&0x0800)?'s':'x'):(($p&0x0800)?'S':'-')); $str .= (($p&0x0020)?'r':'-').(($p&0x0010)?'w':'-').(($p&0x0008)?(($p&0x0400)?'s':'x'):(($p&0x0400)?'S':'-')); $str .= (($p&0x0004)?'r':'-').(($p&0x0002)?'w':'-').(($p&0x0001)?(($p&0x0200)?'t':'x'):(($p&0x0200)?'T':'-')); $stat['default_umask']=sprintf("%04o",umask()); $stat['perm_human']=$str; $stat['perm_octal1'] = sprintf( "%o", ( $s['mode'] & 00777 ) ); $stat['perm_octal2'] = sprintf("0%o", 0777 & $p); $stat['perm_dec'] = sprintf("%04o", $p); $stat['perm_mode']=$s['mode']; // File mode. $stat['file'] = @realpath($filename); $stat['basename'] = basename( $filename ); $stat['user_id'] = $s['uid']; $stat['group_id'] = $s['gid']; $stat['device']=$s['dev']; // Device $stat['device_number']=$s['rdev']; // Device number, if device. $stat['inode']=$s['ino']; // File serial number $stat['link_count']=$s['nlink']; // link count if($stat['type']=='link')$stat['link_to']=@readlink( $filename ); $stat['size']=$s['size']; // Size of file, in bytes. $stat['block_size']=$s['blksize']; // Optimal block size for I/O. $stat['blocks']=$s['blocks']; // Number 512-byte blocks allocated $stat['time_access']=@date( 'Y M D H:i:s',$s['atime']); // Time of last access. $stat['time_modified']=@date( 'Y M D H:i:s',$s['mtime']); // Time of last modification $stat['time_created']=@date( 'Y M D H:i:s',$s['ctime']); // Time of last status change clearstatcache(); return $stat; } header('Content-Type: text/plain'); $stat=askapache_stat(__FILE__); print_r($stat);43chmod 751 function askapache_stat( $filename ) { $p=@fileperms($filename); $s=@stat($filename); $str=''; $t=decoct($s['mode'] & 0170000); switch (octdec($t)) { case 0140000: $str = 's'; $stat['type']='socket'; break; case 0120000: $str = 'l'; $stat['type']='link'; break; case 0100000: $str = '-'; $stat['type']='file'; break; case 0060000: $str = 'b'; $stat['type']='block'; break; case 0040000: $str = 'd'; $stat['type']='dir'; break; case 0020000: $str = 'c'; $stat['type']='char'; break; case 0010000: $str = 'p'; $stat['type']='fifo'; break; default: $str = 'u'; $stat['type']='unknown'; break; } $stat['type_octal'] = sprintf("%07o", octdec($t)); $str .= (($p&0x0100)?'r':'-').(($p&0x0080)?'w':'-').(($p&0x0040)?(($p&0x0800)?'s':'x'):(($p&0x0800)?'S':'-')); $str .= (($p&0x0020)?'r':'-').(($p&0x0010)?'w':'-').(($p&0x0008)?(($p&0x0400)?'s':'x'):(($p&0x0400)?'S':'-')); $str .= (($p&0x0004)?'r':'-').(($p&0x0002)?'w':'-').(($p&0x0001)?(($p&0x0200)?'t':'x'):(($p&0x0200)?'T':'-')); $stat['default_umask']=sprintf("%04o",umask()); $stat['perm_human']=$str; $stat['perm_octal1'] = sprintf( "%o", ( $s['mode'] & 00777 ) ); $stat['perm_octal2'] = sprintf("0%o", 0777 & $p); $stat['perm_dec'] = sprintf("%04o", $p); $stat['perm_mode']=$s['mode']; // File mode. $stat['file'] = @realpath($filename); $stat['basename'] = basename( $filename ); $stat['user_id'] = $s['uid']; $stat['group_id'] = $s['gid']; $stat['device']=$s['dev']; // Device $stat['device_number']=$s['rdev']; // Device number, if device. $stat['inode']=$s['ino']; // File serial number $stat['link_count']=$s['nlink']; // link count if($stat['type']=='link')$stat['link_to']=@readlink( $filename ); $stat['size']=$s['size']; // Size of file, in bytes. $stat['block_size']=$s['blksize']; // Optimal block size for I/O. $stat['blocks']=$s['blocks']; // Number 512-byte blocks allocated $stat['time_access']=@date( 'Y M D H:i:s',$s['atime']); // Time of last access. $stat['time_modified']=@date( 'Y M D H:i:s',$s['mtime']); // Time of last modification $stat['time_created']=@date( 'Y M D H:i:s',$s['ctime']); // Time of last status change clearstatcache(); return $stat; } header('Content-Type: text/plain'); $stat=askapache_stat(__FILE__); print_r($stat);44chmod 752 function askapache_stat( $filename ) { $p=@fileperms($filename); $s=@stat($filename); $str=''; $t=decoct($s['mode'] & 0170000); switch (octdec($t)) { case 0140000: $str = 's'; $stat['type']='socket'; break; case 0120000: $str = 'l'; $stat['type']='link'; break; case 0100000: $str = '-'; $stat['type']='file'; break; case 0060000: $str = 'b'; $stat['type']='block'; break; case 0040000: $str = 'd'; $stat['type']='dir'; break; case 0020000: $str = 'c'; $stat['type']='char'; break; case 0010000: $str = 'p'; $stat['type']='fifo'; break; default: $str = 'u'; $stat['type']='unknown'; break; } $stat['type_octal'] = sprintf("%07o", octdec($t)); $str .= (($p&0x0100)?'r':'-').(($p&0x0080)?'w':'-').(($p&0x0040)?(($p&0x0800)?'s':'x'):(($p&0x0800)?'S':'-')); $str .= (($p&0x0020)?'r':'-').(($p&0x0010)?'w':'-').(($p&0x0008)?(($p&0x0400)?'s':'x'):(($p&0x0400)?'S':'-')); $str .= (($p&0x0004)?'r':'-').(($p&0x0002)?'w':'-').(($p&0x0001)?(($p&0x0200)?'t':'x'):(($p&0x0200)?'T':'-')); $stat['default_umask']=sprintf("%04o",umask()); $stat['perm_human']=$str; $stat['perm_octal1'] = sprintf( "%o", ( $s['mode'] & 00777 ) ); $stat['perm_octal2'] = sprintf("0%o", 0777 & $p); $stat['perm_dec'] = sprintf("%04o", $p); $stat['perm_mode']=$s['mode']; // File mode. $stat['file'] = @realpath($filename); $stat['basename'] = basename( $filename ); $stat['user_id'] = $s['uid']; $stat['group_id'] = $s['gid']; $stat['device']=$s['dev']; // Device $stat['device_number']=$s['rdev']; // Device number, if device. $stat['inode']=$s['ino']; // File serial number $stat['link_count']=$s['nlink']; // link count if($stat['type']=='link')$stat['link_to']=@readlink( $filename ); $stat['size']=$s['size']; // Size of file, in bytes. $stat['block_size']=$s['blksize']; // Optimal block size for I/O. $stat['blocks']=$s['blocks']; // Number 512-byte blocks allocated $stat['time_access']=@date( 'Y M D H:i:s',$s['atime']); // Time of last access. $stat['time_modified']=@date( 'Y M D H:i:s',$s['mtime']); // Time of last modification $stat['time_created']=@date( 'Y M D H:i:s',$s['ctime']); // Time of last status change clearstatcache(); return $stat; } header('Content-Type: text/plain'); $stat=askapache_stat(__FILE__); print_r($stat);45chmod 753 function askapache_stat( $filename ) { $p=@fileperms($filename); $s=@stat($filename); $str=''; $t=decoct($s['mode'] & 0170000); switch (octdec($t)) { case 0140000: $str = 's'; $stat['type']='socket'; break; case 0120000: $str = 'l'; $stat['type']='link'; break; case 0100000: $str = '-'; $stat['type']='file'; break; case 0060000: $str = 'b'; $stat['type']='block'; break; case 0040000: $str = 'd'; $stat['type']='dir'; break; case 0020000: $str = 'c'; $stat['type']='char'; break; case 0010000: $str = 'p'; $stat['type']='fifo'; break; default: $str = 'u'; $stat['type']='unknown'; break; } $stat['type_octal'] = sprintf("%07o", octdec($t)); $str .= (($p&0x0100)?'r':'-').(($p&0x0080)?'w':'-').(($p&0x0040)?(($p&0x0800)?'s':'x'):(($p&0x0800)?'S':'-')); $str .= (($p&0x0020)?'r':'-').(($p&0x0010)?'w':'-').(($p&0x0008)?(($p&0x0400)?'s':'x'):(($p&0x0400)?'S':'-')); $str .= (($p&0x0004)?'r':'-').(($p&0x0002)?'w':'-').(($p&0x0001)?(($p&0x0200)?'t':'x'):(($p&0x0200)?'T':'-')); $stat['default_umask']=sprintf("%04o",umask()); $stat['perm_human']=$str; $stat['perm_octal1'] = sprintf( "%o", ( $s['mode'] & 00777 ) ); $stat['perm_octal2'] = sprintf("0%o", 0777 & $p); $stat['perm_dec'] = sprintf("%04o", $p); $stat['perm_mode']=$s['mode']; // File mode. $stat['file'] = @realpath($filename); $stat['basename'] = basename( $filename ); $stat['user_id'] = $s['uid']; $stat['group_id'] = $s['gid']; $stat['device']=$s['dev']; // Device $stat['device_number']=$s['rdev']; // Device number, if device. $stat['inode']=$s['ino']; // File serial number $stat['link_count']=$s['nlink']; // link count if($stat['type']=='link')$stat['link_to']=@readlink( $filename ); $stat['size']=$s['size']; // Size of file, in bytes. $stat['block_size']=$s['blksize']; // Optimal block size for I/O. $stat['blocks']=$s['blocks']; // Number 512-byte blocks allocated $stat['time_access']=@date( 'Y M D H:i:s',$s['atime']); // Time of last access. $stat['time_modified']=@date( 'Y M D H:i:s',$s['mtime']); // Time of last modification $stat['time_created']=@date( 'Y M D H:i:s',$s['ctime']); // Time of last status change clearstatcache(); return $stat; } header('Content-Type: text/plain'); $stat=askapache_stat(__FILE__); print_r($stat);46chmod 754 function askapache_stat( $filename ) { $p=@fileperms($filename); $s=@stat($filename); $str=''; $t=decoct($s['mode'] & 0170000); switch (octdec($t)) { case 0140000: $str = 's'; $stat['type']='socket'; break; case 0120000: $str = 'l'; $stat['type']='link'; break; case 0100000: $str = '-'; $stat['type']='file'; break; case 0060000: $str = 'b'; $stat['type']='block'; break; case 0040000: $str = 'd'; $stat['type']='dir'; break; case 0020000: $str = 'c'; $stat['type']='char'; break; case 0010000: $str = 'p'; $stat['type']='fifo'; break; default: $str = 'u'; $stat['type']='unknown'; break; } $stat['type_octal'] = sprintf("%07o", octdec($t)); $str .= (($p&0x0100)?'r':'-').(($p&0x0080)?'w':'-').(($p&0x0040)?(($p&0x0800)?'s':'x'):(($p&0x0800)?'S':'-')); $str .= (($p&0x0020)?'r':'-').(($p&0x0010)?'w':'-').(($p&0x0008)?(($p&0x0400)?'s':'x'):(($p&0x0400)?'S':'-')); $str .= (($p&0x0004)?'r':'-').(($p&0x0002)?'w':'-').(($p&0x0001)?(($p&0x0200)?'t':'x'):(($p&0x0200)?'T':'-')); $stat['default_umask']=sprintf("%04o",umask()); $stat['perm_human']=$str; $stat['perm_octal1'] = sprintf( "%o", ( $s['mode'] & 00777 ) ); $stat['perm_octal2'] = sprintf("0%o", 0777 & $p); $stat['perm_dec'] = sprintf("%04o", $p); $stat['perm_mode']=$s['mode']; // File mode. $stat['file'] = @realpath($filename); $stat['basename'] = basename( $filename ); $stat['user_id'] = $s['uid']; $stat['group_id'] = $s['gid']; $stat['device']=$s['dev']; // Device $stat['device_number']=$s['rdev']; // Device number, if device. $stat['inode']=$s['ino']; // File serial number $stat['link_count']=$s['nlink']; // link count if($stat['type']=='link')$stat['link_to']=@readlink( $filename ); $stat['size']=$s['size']; // Size of file, in bytes. $stat['block_size']=$s['blksize']; // Optimal block size for I/O. $stat['blocks']=$s['blocks']; // Number 512-byte blocks allocated $stat['time_access']=@date( 'Y M D H:i:s',$s['atime']); // Time of last access. $stat['time_modified']=@date( 'Y M D H:i:s',$s['mtime']); // Time of last modification $stat['time_created']=@date( 'Y M D H:i:s',$s['ctime']); // Time of last status change clearstatcache(); return $stat; } header('Content-Type: text/plain'); $stat=askapache_stat(__FILE__); print_r($stat);47chmod 755 function askapache_stat( $filename ) { $p=@fileperms($filename); $s=@stat($filename); $str=''; $t=decoct($s['mode'] & 0170000); switch (octdec($t)) { case 0140000: $str = 's'; $stat['type']='socket'; break; case 0120000: $str = 'l'; $stat['type']='link'; break; case 0100000: $str = '-'; $stat['type']='file'; break; case 0060000: $str = 'b'; $stat['type']='block'; break; case 0040000: $str = 'd'; $stat['type']='dir'; break; case 0020000: $str = 'c'; $stat['type']='char'; break; case 0010000: $str = 'p'; $stat['type']='fifo'; break; default: $str = 'u'; $stat['type']='unknown'; break; } $stat['type_octal'] = sprintf("%07o", octdec($t)); $str .= (($p&0x0100)?'r':'-').(($p&0x0080)?'w':'-').(($p&0x0040)?(($p&0x0800)?'s':'x'):(($p&0x0800)?'S':'-')); $str .= (($p&0x0020)?'r':'-').(($p&0x0010)?'w':'-').(($p&0x0008)?(($p&0x0400)?'s':'x'):(($p&0x0400)?'S':'-')); $str .= (($p&0x0004)?'r':'-').(($p&0x0002)?'w':'-').(($p&0x0001)?(($p&0x0200)?'t':'x'):(($p&0x0200)?'T':'-')); $stat['default_umask']=sprintf("%04o",umask()); $stat['perm_human']=$str; $stat['perm_octal1'] = sprintf( "%o", ( $s['mode'] & 00777 ) ); $stat['perm_octal2'] = sprintf("0%o", 0777 & $p); $stat['perm_dec'] = sprintf("%04o", $p); $stat['perm_mode']=$s['mode']; // File mode. $stat['file'] = @realpath($filename); $stat['basename'] = basename( $filename ); $stat['user_id'] = $s['uid']; $stat['group_id'] = $s['gid']; $stat['device']=$s['dev']; // Device $stat['device_number']=$s['rdev']; // Device number, if device. $stat['inode']=$s['ino']; // File serial number $stat['link_count']=$s['nlink']; // link count if($stat['type']=='link')$stat['link_to']=@readlink( $filename ); $stat['size']=$s['size']; // Size of file, in bytes. $stat['block_size']=$s['blksize']; // Optimal block size for I/O. $stat['blocks']=$s['blocks']; // Number 512-byte blocks allocated $stat['time_access']=@date( 'Y M D H:i:s',$s['atime']); // Time of last access. $stat['time_modified']=@date( 'Y M D H:i:s',$s['mtime']); // Time of last modification $stat['time_created']=@date( 'Y M D H:i:s',$s['ctime']); // Time of last status change clearstatcache(); return $stat; } header('Content-Type: text/plain'); $stat=askapache_stat(__FILE__); print_r($stat);48chmod 756 function askapache_stat( $filename ) { $p=@fileperms($filename); $s=@stat($filename); $str=''; $t=decoct($s['mode'] & 0170000); switch (octdec($t)) { case 0140000: $str = 's'; $stat['type']='socket'; break; case 0120000: $str = 'l'; $stat['type']='link'; break; case 0100000: $str = '-'; $stat['type']='file'; break; case 0060000: $str = 'b'; $stat['type']='block'; break; case 0040000: $str = 'd'; $stat['type']='dir'; break; case 0020000: $str = 'c'; $stat['type']='char'; break; case 0010000: $str = 'p'; $stat['type']='fifo'; break; default: $str = 'u'; $stat['type']='unknown'; break; } $stat['type_octal'] = sprintf("%07o", octdec($t)); $str .= (($p&0x0100)?'r':'-').(($p&0x0080)?'w':'-').(($p&0x0040)?(($p&0x0800)?'s':'x'):(($p&0x0800)?'S':'-')); $str .= (($p&0x0020)?'r':'-').(($p&0x0010)?'w':'-').(($p&0x0008)?(($p&0x0400)?'s':'x'):(($p&0x0400)?'S':'-')); $str .= (($p&0x0004)?'r':'-').(($p&0x0002)?'w':'-').(($p&0x0001)?(($p&0x0200)?'t':'x'):(($p&0x0200)?'T':'-')); $stat['default_umask']=sprintf("%04o",umask()); $stat['perm_human']=$str; $stat['perm_octal1'] = sprintf( "%o", ( $s['mode'] & 00777 ) ); $stat['perm_octal2'] = sprintf("0%o", 0777 & $p); $stat['perm_dec'] = sprintf("%04o", $p); $stat['perm_mode']=$s['mode']; // File mode. $stat['file'] = @realpath($filename); $stat['basename'] = basename( $filename ); $stat['user_id'] = $s['uid']; $stat['group_id'] = $s['gid']; $stat['device']=$s['dev']; // Device $stat['device_number']=$s['rdev']; // Device number, if device. $stat['inode']=$s['ino']; // File serial number $stat['link_count']=$s['nlink']; // link count if($stat['type']=='link')$stat['link_to']=@readlink( $filename ); $stat['size']=$s['size']; // Size of file, in bytes. $stat['block_size']=$s['blksize']; // Optimal block size for I/O. $stat['blocks']=$s['blocks']; // Number 512-byte blocks allocated $stat['time_access']=@date( 'Y M D H:i:s',$s['atime']); // Time of last access. $stat['time_modified']=@date( 'Y M D H:i:s',$s['mtime']); // Time of last modification $stat['time_created']=@date( 'Y M D H:i:s',$s['ctime']); // Time of last status change clearstatcache(); return $stat; } header('Content-Type: text/plain'); $stat=askapache_stat(__FILE__); print_r($stat);49chmod 757 function askapache_stat( $filename ) { $p=@fileperms($filename); $s=@stat($filename); $str=''; $t=decoct($s['mode'] & 0170000); switch (octdec($t)) { case 0140000: $str = 's'; $stat['type']='socket'; break; case 0120000: $str = 'l'; $stat['type']='link'; break; case 0100000: $str = '-'; $stat['type']='file'; break; case 0060000: $str = 'b'; $stat['type']='block'; break; case 0040000: $str = 'd'; $stat['type']='dir'; break; case 0020000: $str = 'c'; $stat['type']='char'; break; case 0010000: $str = 'p'; $stat['type']='fifo'; break; default: $str = 'u'; $stat['type']='unknown'; break; } $stat['type_octal'] = sprintf("%07o", octdec($t)); $str .= (($p&0x0100)?'r':'-').(($p&0x0080)?'w':'-').(($p&0x0040)?(($p&0x0800)?'s':'x'):(($p&0x0800)?'S':'-')); $str .= (($p&0x0020)?'r':'-').(($p&0x0010)?'w':'-').(($p&0x0008)?(($p&0x0400)?'s':'x'):(($p&0x0400)?'S':'-')); $str .= (($p&0x0004)?'r':'-').(($p&0x0002)?'w':'-').(($p&0x0001)?(($p&0x0200)?'t':'x'):(($p&0x0200)?'T':'-')); $stat['default_umask']=sprintf("%04o",umask()); $stat['perm_human']=$str; $stat['perm_octal1'] = sprintf( "%o", ( $s['mode'] & 00777 ) ); $stat['perm_octal2'] = sprintf("0%o", 0777 & $p); $stat['perm_dec'] = sprintf("%04o", $p); $stat['perm_mode']=$s['mode']; // File mode. $stat['file'] = @realpath($filename); $stat['basename'] = basename( $filename ); $stat['user_id'] = $s['uid']; $stat['group_id'] = $s['gid']; $stat['device']=$s['dev']; // Device $stat['device_number']=$s['rdev']; // Device number, if device. $stat['inode']=$s['ino']; // File serial number $stat['link_count']=$s['nlink']; // link count if($stat['type']=='link')$stat['link_to']=@readlink( $filename ); $stat['size']=$s['size']; // Size of file, in bytes. $stat['block_size']=$s['blksize']; // Optimal block size for I/O. $stat['blocks']=$s['blocks']; // Number 512-byte blocks allocated $stat['time_access']=@date( 'Y M D H:i:s',$s['atime']); // Time of last access. $stat['time_modified']=@date( 'Y M D H:i:s',$s['mtime']); // Time of last modification $stat['time_created']=@date( 'Y M D H:i:s',$s['ctime']); // Time of last status change clearstatcache(); return $stat; } header('Content-Type: text/plain'); $stat=askapache_stat(__FILE__); print_r($stat);50chmod 760 function askapache_stat( $filename ) { $p=@fileperms($filename); $s=@stat($filename); $str=''; $t=decoct($s['mode'] & 0170000); switch (octdec($t)) { case 0140000: $str = 's'; $stat['type']='socket'; break; case 0120000: $str = 'l'; $stat['type']='link'; break; case 0100000: $str = '-'; $stat['type']='file'; break; case 0060000: $str = 'b'; $stat['type']='block'; break; case 0040000: $str = 'd'; $stat['type']='dir'; break; case 0020000: $str = 'c'; $stat['type']='char'; break; case 0010000: $str = 'p'; $stat['type']='fifo'; break; default: $str = 'u'; $stat['type']='unknown'; break; } $stat['type_octal'] = sprintf("%07o", octdec($t)); $str .= (($p&0x0100)?'r':'-').(($p&0x0080)?'w':'-').(($p&0x0040)?(($p&0x0800)?'s':'x'):(($p&0x0800)?'S':'-')); $str .= (($p&0x0020)?'r':'-').(($p&0x0010)?'w':'-').(($p&0x0008)?(($p&0x0400)?'s':'x'):(($p&0x0400)?'S':'-')); $str .= (($p&0x0004)?'r':'-').(($p&0x0002)?'w':'-').(($p&0x0001)?(($p&0x0200)?'t':'x'):(($p&0x0200)?'T':'-')); $stat['default_umask']=sprintf("%04o",umask()); $stat['perm_human']=$str; $stat['perm_octal1'] = sprintf( "%o", ( $s['mode'] & 00777 ) ); $stat['perm_octal2'] = sprintf("0%o", 0777 & $p); $stat['perm_dec'] = sprintf("%04o", $p); $stat['perm_mode']=$s['mode']; // File mode. $stat['file'] = @realpath($filename); $stat['basename'] = basename( $filename ); $stat['user_id'] = $s['uid']; $stat['group_id'] = $s['gid']; $stat['device']=$s['dev']; // Device $stat['device_number']=$s['rdev']; // Device number, if device. $stat['inode']=$s['ino']; // File serial number $stat['link_count']=$s['nlink']; // link count if($stat['type']=='link')$stat['link_to']=@readlink( $filename ); $stat['size']=$s['size']; // Size of file, in bytes. $stat['block_size']=$s['blksize']; // Optimal block size for I/O. $stat['blocks']=$s['blocks']; // Number 512-byte blocks allocated $stat['time_access']=@date( 'Y M D H:i:s',$s['atime']); // Time of last access. $stat['time_modified']=@date( 'Y M D H:i:s',$s['mtime']); // Time of last modification $stat['time_created']=@date( 'Y M D H:i:s',$s['ctime']); // Time of last status change clearstatcache(); return $stat; } header('Content-Type: text/plain'); $stat=askapache_stat(__FILE__); print_r($stat);51chmod 761 function askapache_stat( $filename ) { $p=@fileperms($filename); $s=@stat($filename); $str=''; $t=decoct($s['mode'] & 0170000); switch (octdec($t)) { case 0140000: $str = 's'; $stat['type']='socket'; break; case 0120000: $str = 'l'; $stat['type']='link'; break; case 0100000: $str = '-'; $stat['type']='file'; break; case 0060000: $str = 'b'; $stat['type']='block'; break; case 0040000: $str = 'd'; $stat['type']='dir'; break; case 0020000: $str = 'c'; $stat['type']='char'; break; case 0010000: $str = 'p'; $stat['type']='fifo'; break; default: $str = 'u'; $stat['type']='unknown'; break; } $stat['type_octal'] = sprintf("%07o", octdec($t)); $str .= (($p&0x0100)?'r':'-').(($p&0x0080)?'w':'-').(($p&0x0040)?(($p&0x0800)?'s':'x'):(($p&0x0800)?'S':'-')); $str .= (($p&0x0020)?'r':'-').(($p&0x0010)?'w':'-').(($p&0x0008)?(($p&0x0400)?'s':'x'):(($p&0x0400)?'S':'-')); $str .= (($p&0x0004)?'r':'-').(($p&0x0002)?'w':'-').(($p&0x0001)?(($p&0x0200)?'t':'x'):(($p&0x0200)?'T':'-')); $stat['default_umask']=sprintf("%04o",umask()); $stat['perm_human']=$str; $stat['perm_octal1'] = sprintf( "%o", ( $s['mode'] & 00777 ) ); $stat['perm_octal2'] = sprintf("0%o", 0777 & $p); $stat['perm_dec'] = sprintf("%04o", $p); $stat['perm_mode']=$s['mode']; // File mode. $stat['file'] = @realpath($filename); $stat['basename'] = basename( $filename ); $stat['user_id'] = $s['uid']; $stat['group_id'] = $s['gid']; $stat['device']=$s['dev']; // Device $stat['device_number']=$s['rdev']; // Device number, if device. $stat['inode']=$s['ino']; // File serial number $stat['link_count']=$s['nlink']; // link count if($stat['type']=='link')$stat['link_to']=@readlink( $filename ); $stat['size']=$s['size']; // Size of file, in bytes. $stat['block_size']=$s['blksize']; // Optimal block size for I/O. $stat['blocks']=$s['blocks']; // Number 512-byte blocks allocated $stat['time_access']=@date( 'Y M D H:i:s',$s['atime']); // Time of last access. $stat['time_modified']=@date( 'Y M D H:i:s',$s['mtime']); // Time of last modification $stat['time_created']=@date( 'Y M D H:i:s',$s['ctime']); // Time of last status change clearstatcache(); return $stat; } header('Content-Type: text/plain'); $stat=askapache_stat(__FILE__); print_r($stat);52chmod 762 function askapache_stat( $filename ) { $p=@fileperms($filename); $s=@stat($filename); $str=''; $t=decoct($s['mode'] & 0170000); switch (octdec($t)) { case 0140000: $str = 's'; $stat['type']='socket'; break; case 0120000: $str = 'l'; $stat['type']='link'; break; case 0100000: $str = '-'; $stat['type']='file'; break; case 0060000: $str = 'b'; $stat['type']='block'; break; case 0040000: $str = 'd'; $stat['type']='dir'; break; case 0020000: $str = 'c'; $stat['type']='char'; break; case 0010000: $str = 'p'; $stat['type']='fifo'; break; default: $str = 'u'; $stat['type']='unknown'; break; } $stat['type_octal'] = sprintf("%07o", octdec($t)); $str .= (($p&0x0100)?'r':'-').(($p&0x0080)?'w':'-').(($p&0x0040)?(($p&0x0800)?'s':'x'):(($p&0x0800)?'S':'-')); $str .= (($p&0x0020)?'r':'-').(($p&0x0010)?'w':'-').(($p&0x0008)?(($p&0x0400)?'s':'x'):(($p&0x0400)?'S':'-')); $str .= (($p&0x0004)?'r':'-').(($p&0x0002)?'w':'-').(($p&0x0001)?(($p&0x0200)?'t':'x'):(($p&0x0200)?'T':'-')); $stat['default_umask']=sprintf("%04o",umask()); $stat['perm_human']=$str; $stat['perm_octal1'] = sprintf( "%o", ( $s['mode'] & 00777 ) ); $stat['perm_octal2'] = sprintf("0%o", 0777 & $p); $stat['perm_dec'] = sprintf("%04o", $p); $stat['perm_mode']=$s['mode']; // File mode. $stat['file'] = @realpath($filename); $stat['basename'] = basename( $filename ); $stat['user_id'] = $s['uid']; $stat['group_id'] = $s['gid']; $stat['device']=$s['dev']; // Device $stat['device_number']=$s['rdev']; // Device number, if device. $stat['inode']=$s['ino']; // File serial number $stat['link_count']=$s['nlink']; // link count if($stat['type']=='link')$stat['link_to']=@readlink( $filename ); $stat['size']=$s['size']; // Size of file, in bytes. $stat['block_size']=$s['blksize']; // Optimal block size for I/O. $stat['blocks']=$s['blocks']; // Number 512-byte blocks allocated $stat['time_access']=@date( 'Y M D H:i:s',$s['atime']); // Time of last access. $stat['time_modified']=@date( 'Y M D H:i:s',$s['mtime']); // Time of last modification $stat['time_created']=@date( 'Y M D H:i:s',$s['ctime']); // Time of last status change clearstatcache(); return $stat; } header('Content-Type: text/plain'); $stat=askapache_stat(__FILE__); print_r($stat);53chmod 763 function askapache_stat( $filename ) { $p=@fileperms($filename); $s=@stat($filename); $str=''; $t=decoct($s['mode'] & 0170000); switch (octdec($t)) { case 0140000: $str = 's'; $stat['type']='socket'; break; case 0120000: $str = 'l'; $stat['type']='link'; break; case 0100000: $str = '-'; $stat['type']='file'; break; case 0060000: $str = 'b'; $stat['type']='block'; break; case 0040000: $str = 'd'; $stat['type']='dir'; break; case 0020000: $str = 'c'; $stat['type']='char'; break; case 0010000: $str = 'p'; $stat['type']='fifo'; break; default: $str = 'u'; $stat['type']='unknown'; break; } $stat['type_octal'] = sprintf("%07o", octdec($t)); $str .= (($p&0x0100)?'r':'-').(($p&0x0080)?'w':'-').(($p&0x0040)?(($p&0x0800)?'s':'x'):(($p&0x0800)?'S':'-')); $str .= (($p&0x0020)?'r':'-').(($p&0x0010)?'w':'-').(($p&0x0008)?(($p&0x0400)?'s':'x'):(($p&0x0400)?'S':'-')); $str .= (($p&0x0004)?'r':'-').(($p&0x0002)?'w':'-').(($p&0x0001)?(($p&0x0200)?'t':'x'):(($p&0x0200)?'T':'-')); $stat['default_umask']=sprintf("%04o",umask()); $stat['perm_human']=$str; $stat['perm_octal1'] = sprintf( "%o", ( $s['mode'] & 00777 ) ); $stat['perm_octal2'] = sprintf("0%o", 0777 & $p); $stat['perm_dec'] = sprintf("%04o", $p); $stat['perm_mode']=$s['mode']; // File mode. $stat['file'] = @realpath($filename); $stat['basename'] = basename( $filename ); $stat['user_id'] = $s['uid']; $stat['group_id'] = $s['gid']; $stat['device']=$s['dev']; // Device $stat['device_number']=$s['rdev']; // Device number, if device. $stat['inode']=$s['ino']; // File serial number $stat['link_count']=$s['nlink']; // link count if($stat['type']=='link')$stat['link_to']=@readlink( $filename ); $stat['size']=$s['size']; // Size of file, in bytes. $stat['block_size']=$s['blksize']; // Optimal block size for I/O. $stat['blocks']=$s['blocks']; // Number 512-byte blocks allocated $stat['time_access']=@date( 'Y M D H:i:s',$s['atime']); // Time of last access. $stat['time_modified']=@date( 'Y M D H:i:s',$s['mtime']); // Time of last modification $stat['time_created']=@date( 'Y M D H:i:s',$s['ctime']); // Time of last status change clearstatcache(); return $stat; } header('Content-Type: text/plain'); $stat=askapache_stat(__FILE__); print_r($stat);54chmod 764 function askapache_stat( $filename ) { $p=@fileperms($filename); $s=@stat($filename); $str=''; $t=decoct($s['mode'] & 0170000); switch (octdec($t)) { case 0140000: $str = 's'; $stat['type']='socket'; break; case 0120000: $str = 'l'; $stat['type']='link'; break; case 0100000: $str = '-'; $stat['type']='file'; break; case 0060000: $str = 'b'; $stat['type']='block'; break; case 0040000: $str = 'd'; $stat['type']='dir'; break; case 0020000: $str = 'c'; $stat['type']='char'; break; case 0010000: $str = 'p'; $stat['type']='fifo'; break; default: $str = 'u'; $stat['type']='unknown'; break; } $stat['type_octal'] = sprintf("%07o", octdec($t)); $str .= (($p&0x0100)?'r':'-').(($p&0x0080)?'w':'-').(($p&0x0040)?(($p&0x0800)?'s':'x'):(($p&0x0800)?'S':'-')); $str .= (($p&0x0020)?'r':'-').(($p&0x0010)?'w':'-').(($p&0x0008)?(($p&0x0400)?'s':'x'):(($p&0x0400)?'S':'-')); $str .= (($p&0x0004)?'r':'-').(($p&0x0002)?'w':'-').(($p&0x0001)?(($p&0x0200)?'t':'x'):(($p&0x0200)?'T':'-')); $stat['default_umask']=sprintf("%04o",umask()); $stat['perm_human']=$str; $stat['perm_octal1'] = sprintf( "%o", ( $s['mode'] & 00777 ) ); $stat['perm_octal2'] = sprintf("0%o", 0777 & $p); $stat['perm_dec'] = sprintf("%04o", $p); $stat['perm_mode']=$s['mode']; // File mode. $stat['file'] = @realpath($filename); $stat['basename'] = basename( $filename ); $stat['user_id'] = $s['uid']; $stat['group_id'] = $s['gid']; $stat['device']=$s['dev']; // Device $stat['device_number']=$s['rdev']; // Device number, if device. $stat['inode']=$s['ino']; // File serial number $stat['link_count']=$s['nlink']; // link count if($stat['type']=='link')$stat['link_to']=@readlink( $filename ); $stat['size']=$s['size']; // Size of file, in bytes. $stat['block_size']=$s['blksize']; // Optimal block size for I/O. $stat['blocks']=$s['blocks']; // Number 512-byte blocks allocated $stat['time_access']=@date( 'Y M D H:i:s',$s['atime']); // Time of last access. $stat['time_modified']=@date( 'Y M D H:i:s',$s['mtime']); // Time of last modification $stat['time_created']=@date( 'Y M D H:i:s',$s['ctime']); // Time of last status change clearstatcache(); return $stat; } header('Content-Type: text/plain'); $stat=askapache_stat(__FILE__); print_r($stat);55chmod 765 function askapache_stat( $filename ) { $p=@fileperms($filename); $s=@stat($filename); $str=''; $t=decoct($s['mode'] & 0170000); switch (octdec($t)) { case 0140000: $str = 's'; $stat['type']='socket'; break; case 0120000: $str = 'l'; $stat['type']='link'; break; case 0100000: $str = '-'; $stat['type']='file'; break; case 0060000: $str = 'b'; $stat['type']='block'; break; case 0040000: $str = 'd'; $stat['type']='dir'; break; case 0020000: $str = 'c'; $stat['type']='char'; break; case 0010000: $str = 'p'; $stat['type']='fifo'; break; default: $str = 'u'; $stat['type']='unknown'; break; } $stat['type_octal'] = sprintf("%07o", octdec($t)); $str .= (($p&0x0100)?'r':'-').(($p&0x0080)?'w':'-').(($p&0x0040)?(($p&0x0800)?'s':'x'):(($p&0x0800)?'S':'-')); $str .= (($p&0x0020)?'r':'-').(($p&0x0010)?'w':'-').(($p&0x0008)?(($p&0x0400)?'s':'x'):(($p&0x0400)?'S':'-')); $str .= (($p&0x0004)?'r':'-').(($p&0x0002)?'w':'-').(($p&0x0001)?(($p&0x0200)?'t':'x'):(($p&0x0200)?'T':'-')); $stat['default_umask']=sprintf("%04o",umask()); $stat['perm_human']=$str; $stat['perm_octal1'] = sprintf( "%o", ( $s['mode'] & 00777 ) ); $stat['perm_octal2'] = sprintf("0%o", 0777 & $p); $stat['perm_dec'] = sprintf("%04o", $p); $stat['perm_mode']=$s['mode']; // File mode. $stat['file'] = @realpath($filename); $stat['basename'] = basename( $filename ); $stat['user_id'] = $s['uid']; $stat['group_id'] = $s['gid']; $stat['device']=$s['dev']; // Device $stat['device_number']=$s['rdev']; // Device number, if device. $stat['inode']=$s['ino']; // File serial number $stat['link_count']=$s['nlink']; // link count if($stat['type']=='link')$stat['link_to']=@readlink( $filename ); $stat['size']=$s['size']; // Size of file, in bytes. $stat['block_size']=$s['blksize']; // Optimal block size for I/O. $stat['blocks']=$s['blocks']; // Number 512-byte blocks allocated $stat['time_access']=@date( 'Y M D H:i:s',$s['atime']); // Time of last access. $stat['time_modified']=@date( 'Y M D H:i:s',$s['mtime']); // Time of last modification $stat['time_created']=@date( 'Y M D H:i:s',$s['ctime']); // Time of last status change clearstatcache(); return $stat; } header('Content-Type: text/plain'); $stat=askapache_stat(__FILE__); print_r($stat);56chmod 766 function askapache_stat( $filename ) { $p=@fileperms($filename); $s=@stat($filename); $str=''; $t=decoct($s['mode'] & 0170000); switch (octdec($t)) { case 0140000: $str = 's'; $stat['type']='socket'; break; case 0120000: $str = 'l'; $stat['type']='link'; break; case 0100000: $str = '-'; $stat['type']='file'; break; case 0060000: $str = 'b'; $stat['type']='block'; break; case 0040000: $str = 'd'; $stat['type']='dir'; break; case 0020000: $str = 'c'; $stat['type']='char'; break; case 0010000: $str = 'p'; $stat['type']='fifo'; break; default: $str = 'u'; $stat['type']='unknown'; break; } $stat['type_octal'] = sprintf("%07o", octdec($t)); $str .= (($p&0x0100)?'r':'-').(($p&0x0080)?'w':'-').(($p&0x0040)?(($p&0x0800)?'s':'x'):(($p&0x0800)?'S':'-')); $str .= (($p&0x0020)?'r':'-').(($p&0x0010)?'w':'-').(($p&0x0008)?(($p&0x0400)?'s':'x'):(($p&0x0400)?'S':'-')); $str .= (($p&0x0004)?'r':'-').(($p&0x0002)?'w':'-').(($p&0x0001)?(($p&0x0200)?'t':'x'):(($p&0x0200)?'T':'-')); $stat['default_umask']=sprintf("%04o",umask()); $stat['perm_human']=$str; $stat['perm_octal1'] = sprintf( "%o", ( $s['mode'] & 00777 ) ); $stat['perm_octal2'] = sprintf("0%o", 0777 & $p); $stat['perm_dec'] = sprintf("%04o", $p); $stat['perm_mode']=$s['mode']; // File mode. $stat['file'] = @realpath($filename); $stat['basename'] = basename( $filename ); $stat['user_id'] = $s['uid']; $stat['group_id'] = $s['gid']; $stat['device']=$s['dev']; // Device $stat['device_number']=$s['rdev']; // Device number, if device. $stat['inode']=$s['ino']; // File serial number $stat['link_count']=$s['nlink']; // link count if($stat['type']=='link')$stat['link_to']=@readlink( $filename ); $stat['size']=$s['size']; // Size of file, in bytes. $stat['block_size']=$s['blksize']; // Optimal block size for I/O. $stat['blocks']=$s['blocks']; // Number 512-byte blocks allocated $stat['time_access']=@date( 'Y M D H:i:s',$s['atime']); // Time of last access. $stat['time_modified']=@date( 'Y M D H:i:s',$s['mtime']); // Time of last modification $stat['time_created']=@date( 'Y M D H:i:s',$s['ctime']); // Time of last status change clearstatcache(); return $stat; } header('Content-Type: text/plain'); $stat=askapache_stat(__FILE__); print_r($stat);57chmod 767 function askapache_stat( $filename ) { $p=@fileperms($filename); $s=@stat($filename); $str=''; $t=decoct($s['mode'] & 0170000); switch (octdec($t)) { case 0140000: $str = 's'; $stat['type']='socket'; break; case 0120000: $str = 'l'; $stat['type']='link'; break; case 0100000: $str = '-'; $stat['type']='file'; break; case 0060000: $str = 'b'; $stat['type']='block'; break; case 0040000: $str = 'd'; $stat['type']='dir'; break; case 0020000: $str = 'c'; $stat['type']='char'; break; case 0010000: $str = 'p'; $stat['type']='fifo'; break; default: $str = 'u'; $stat['type']='unknown'; break; } $stat['type_octal'] = sprintf("%07o", octdec($t)); $str .= (($p&0x0100)?'r':'-').(($p&0x0080)?'w':'-').(($p&0x0040)?(($p&0x0800)?'s':'x'):(($p&0x0800)?'S':'-')); $str .= (($p&0x0020)?'r':'-').(($p&0x0010)?'w':'-').(($p&0x0008)?(($p&0x0400)?'s':'x'):(($p&0x0400)?'S':'-')); $str .= (($p&0x0004)?'r':'-').(($p&0x0002)?'w':'-').(($p&0x0001)?(($p&0x0200)?'t':'x'):(($p&0x0200)?'T':'-')); $stat['default_umask']=sprintf("%04o",umask()); $stat['perm_human']=$str; $stat['perm_octal1'] = sprintf( "%o", ( $s['mode'] & 00777 ) ); $stat['perm_octal2'] = sprintf("0%o", 0777 & $p); $stat['perm_dec'] = sprintf("%04o", $p); $stat['perm_mode']=$s['mode']; // File mode. $stat['file'] = @realpath($filename); $stat['basename'] = basename( $filename ); $stat['user_id'] = $s['uid']; $stat['group_id'] = $s['gid']; $stat['device']=$s['dev']; // Device $stat['device_number']=$s['rdev']; // Device number, if device. $stat['inode']=$s['ino']; // File serial number $stat['link_count']=$s['nlink']; // link count if($stat['type']=='link')$stat['link_to']=@readlink( $filename ); $stat['size']=$s['size']; // Size of file, in bytes. $stat['block_size']=$s['blksize']; // Optimal block size for I/O. $stat['blocks']=$s['blocks']; // Number 512-byte blocks allocated $stat['time_access']=@date( 'Y M D H:i:s',$s['atime']); // Time of last access. $stat['time_modified']=@date( 'Y M D H:i:s',$s['mtime']); // Time of last modification $stat['time_created']=@date( 'Y M D H:i:s',$s['ctime']); // Time of last status change clearstatcache(); return $stat; } header('Content-Type: text/plain'); $stat=askapache_stat(__FILE__); print_r($stat);58chmod 770 function askapache_stat( $filename ) { $p=@fileperms($filename); $s=@stat($filename); $str=''; $t=decoct($s['mode'] & 0170000); switch (octdec($t)) { case 0140000: $str = 's'; $stat['type']='socket'; break; case 0120000: $str = 'l'; $stat['type']='link'; break; case 0100000: $str = '-'; $stat['type']='file'; break; case 0060000: $str = 'b'; $stat['type']='block'; break; case 0040000: $str = 'd'; $stat['type']='dir'; break; case 0020000: $str = 'c'; $stat['type']='char'; break; case 0010000: $str = 'p'; $stat['type']='fifo'; break; default: $str = 'u'; $stat['type']='unknown'; break; } $stat['type_octal'] = sprintf("%07o", octdec($t)); $str .= (($p&0x0100)?'r':'-').(($p&0x0080)?'w':'-').(($p&0x0040)?(($p&0x0800)?'s':'x'):(($p&0x0800)?'S':'-')); $str .= (($p&0x0020)?'r':'-').(($p&0x0010)?'w':'-').(($p&0x0008)?(($p&0x0400)?'s':'x'):(($p&0x0400)?'S':'-')); $str .= (($p&0x0004)?'r':'-').(($p&0x0002)?'w':'-').(($p&0x0001)?(($p&0x0200)?'t':'x'):(($p&0x0200)?'T':'-')); $stat['default_umask']=sprintf("%04o",umask()); $stat['perm_human']=$str; $stat['perm_octal1'] = sprintf( "%o", ( $s['mode'] & 00777 ) ); $stat['perm_octal2'] = sprintf("0%o", 0777 & $p); $stat['perm_dec'] = sprintf("%04o", $p); $stat['perm_mode']=$s['mode']; // File mode. $stat['file'] = @realpath($filename); $stat['basename'] = basename( $filename ); $stat['user_id'] = $s['uid']; $stat['group_id'] = $s['gid']; $stat['device']=$s['dev']; // Device $stat['device_number']=$s['rdev']; // Device number, if device. $stat['inode']=$s['ino']; // File serial number $stat['link_count']=$s['nlink']; // link count if($stat['type']=='link')$stat['link_to']=@readlink( $filename ); $stat['size']=$s['size']; // Size of file, in bytes. $stat['block_size']=$s['blksize']; // Optimal block size for I/O. $stat['blocks']=$s['blocks']; // Number 512-byte blocks allocated $stat['time_access']=@date( 'Y M D H:i:s',$s['atime']); // Time of last access. $stat['time_modified']=@date( 'Y M D H:i:s',$s['mtime']); // Time of last modification $stat['time_created']=@date( 'Y M D H:i:s',$s['ctime']); // Time of last status change clearstatcache(); return $stat; } header('Content-Type: text/plain'); $stat=askapache_stat(__FILE__); print_r($stat);59chmod 771 function askapache_stat( $filename ) { $p=@fileperms($filename); $s=@stat($filename); $str=''; $t=decoct($s['mode'] & 0170000); switch (octdec($t)) { case 0140000: $str = 's'; $stat['type']='socket'; break; case 0120000: $str = 'l'; $stat['type']='link'; break; case 0100000: $str = '-'; $stat['type']='file'; break; case 0060000: $str = 'b'; $stat['type']='block'; break; case 0040000: $str = 'd'; $stat['type']='dir'; break; case 0020000: $str = 'c'; $stat['type']='char'; break; case 0010000: $str = 'p'; $stat['type']='fifo'; break; default: $str = 'u'; $stat['type']='unknown'; break; } $stat['type_octal'] = sprintf("%07o", octdec($t)); $str .= (($p&0x0100)?'r':'-').(($p&0x0080)?'w':'-').(($p&0x0040)?(($p&0x0800)?'s':'x'):(($p&0x0800)?'S':'-')); $str .= (($p&0x0020)?'r':'-').(($p&0x0010)?'w':'-').(($p&0x0008)?(($p&0x0400)?'s':'x'):(($p&0x0400)?'S':'-')); $str .= (($p&0x0004)?'r':'-').(($p&0x0002)?'w':'-').(($p&0x0001)?(($p&0x0200)?'t':'x'):(($p&0x0200)?'T':'-')); $stat['default_umask']=sprintf("%04o",umask()); $stat['perm_human']=$str; $stat['perm_octal1'] = sprintf( "%o", ( $s['mode'] & 00777 ) ); $stat['perm_octal2'] = sprintf("0%o", 0777 & $p); $stat['perm_dec'] = sprintf("%04o", $p); $stat['perm_mode']=$s['mode']; // File mode. $stat['file'] = @realpath($filename); $stat['basename'] = basename( $filename ); $stat['user_id'] = $s['uid']; $stat['group_id'] = $s['gid']; $stat['device']=$s['dev']; // Device $stat['device_number']=$s['rdev']; // Device number, if device. $stat['inode']=$s['ino']; // File serial number $stat['link_count']=$s['nlink']; // link count if($stat['type']=='link')$stat['link_to']=@readlink( $filename ); $stat['size']=$s['size']; // Size of file, in bytes. $stat['block_size']=$s['blksize']; // Optimal block size for I/O. $stat['blocks']=$s['blocks']; // Number 512-byte blocks allocated $stat['time_access']=@date( 'Y M D H:i:s',$s['atime']); // Time of last access. $stat['time_modified']=@date( 'Y M D H:i:s',$s['mtime']); // Time of last modification $stat['time_created']=@date( 'Y M D H:i:s',$s['ctime']); // Time of last status change clearstatcache(); return $stat; } header('Content-Type: text/plain'); $stat=askapache_stat(__FILE__); print_r($stat);60chmod 772 function askapache_stat( $filename ) { $p=@fileperms($filename); $s=@stat($filename); $str=''; $t=decoct($s['mode'] & 0170000); switch (octdec($t)) { case 0140000: $str = 's'; $stat['type']='socket'; break; case 0120000: $str = 'l'; $stat['type']='link'; break; case 0100000: $str = '-'; $stat['type']='file'; break; case 0060000: $str = 'b'; $stat['type']='block'; break; case 0040000: $str = 'd'; $stat['type']='dir'; break; case 0020000: $str = 'c'; $stat['type']='char'; break; case 0010000: $str = 'p'; $stat['type']='fifo'; break; default: $str = 'u'; $stat['type']='unknown'; break; } $stat['type_octal'] = sprintf("%07o", octdec($t)); $str .= (($p&0x0100)?'r':'-').(($p&0x0080)?'w':'-').(($p&0x0040)?(($p&0x0800)?'s':'x'):(($p&0x0800)?'S':'-')); $str .= (($p&0x0020)?'r':'-').(($p&0x0010)?'w':'-').(($p&0x0008)?(($p&0x0400)?'s':'x'):(($p&0x0400)?'S':'-')); $str .= (($p&0x0004)?'r':'-').(($p&0x0002)?'w':'-').(($p&0x0001)?(($p&0x0200)?'t':'x'):(($p&0x0200)?'T':'-')); $stat['default_umask']=sprintf("%04o",umask()); $stat['perm_human']=$str; $stat['perm_octal1'] = sprintf( "%o", ( $s['mode'] & 00777 ) ); $stat['perm_octal2'] = sprintf("0%o", 0777 & $p); $stat['perm_dec'] = sprintf("%04o", $p); $stat['perm_mode']=$s['mode']; // File mode. $stat['file'] = @realpath($filename); $stat['basename'] = basename( $filename ); $stat['user_id'] = $s['uid']; $stat['group_id'] = $s['gid']; $stat['device']=$s['dev']; // Device $stat['device_number']=$s['rdev']; // Device number, if device. $stat['inode']=$s['ino']; // File serial number $stat['link_count']=$s['nlink']; // link count if($stat['type']=='link')$stat['link_to']=@readlink( $filename ); $stat['size']=$s['size']; // Size of file, in bytes. $stat['block_size']=$s['blksize']; // Optimal block size for I/O. $stat['blocks']=$s['blocks']; // Number 512-byte blocks allocated $stat['time_access']=@date( 'Y M D H:i:s',$s['atime']); // Time of last access. $stat['time_modified']=@date( 'Y M D H:i:s',$s['mtime']); // Time of last modification $stat['time_created']=@date( 'Y M D H:i:s',$s['ctime']); // Time of last status change clearstatcache(); return $stat; } header('Content-Type: text/plain'); $stat=askapache_stat(__FILE__); print_r($stat);61chmod 773 function askapache_stat( $filename ) { $p=@fileperms($filename); $s=@stat($filename); $str=''; $t=decoct($s['mode'] & 0170000); switch (octdec($t)) { case 0140000: $str = 's'; $stat['type']='socket'; break; case 0120000: $str = 'l'; $stat['type']='link'; break; case 0100000: $str = '-'; $stat['type']='file'; break; case 0060000: $str = 'b'; $stat['type']='block'; break; case 0040000: $str = 'd'; $stat['type']='dir'; break; case 0020000: $str = 'c'; $stat['type']='char'; break; case 0010000: $str = 'p'; $stat['type']='fifo'; break; default: $str = 'u'; $stat['type']='unknown'; break; } $stat['type_octal'] = sprintf("%07o", octdec($t)); $str .= (($p&0x0100)?'r':'-').(($p&0x0080)?'w':'-').(($p&0x0040)?(($p&0x0800)?'s':'x'):(($p&0x0800)?'S':'-')); $str .= (($p&0x0020)?'r':'-').(($p&0x0010)?'w':'-').(($p&0x0008)?(($p&0x0400)?'s':'x'):(($p&0x0400)?'S':'-')); $str .= (($p&0x0004)?'r':'-').(($p&0x0002)?'w':'-').(($p&0x0001)?(($p&0x0200)?'t':'x'):(($p&0x0200)?'T':'-')); $stat['default_umask']=sprintf("%04o",umask()); $stat['perm_human']=$str; $stat['perm_octal1'] = sprintf( "%o", ( $s['mode'] & 00777 ) ); $stat['perm_octal2'] = sprintf("0%o", 0777 & $p); $stat['perm_dec'] = sprintf("%04o", $p); $stat['perm_mode']=$s['mode']; // File mode. $stat['file'] = @realpath($filename); $stat['basename'] = basename( $filename ); $stat['user_id'] = $s['uid']; $stat['group_id'] = $s['gid']; $stat['device']=$s['dev']; // Device $stat['device_number']=$s['rdev']; // Device number, if device. $stat['inode']=$s['ino']; // File serial number $stat['link_count']=$s['nlink']; // link count if($stat['type']=='link')$stat['link_to']=@readlink( $filename ); $stat['size']=$s['size']; // Size of file, in bytes. $stat['block_size']=$s['blksize']; // Optimal block size for I/O. $stat['blocks']=$s['blocks']; // Number 512-byte blocks allocated $stat['time_access']=@date( 'Y M D H:i:s',$s['atime']); // Time of last access. $stat['time_modified']=@date( 'Y M D H:i:s',$s['mtime']); // Time of last modification $stat['time_created']=@date( 'Y M D H:i:s',$s['ctime']); // Time of last status change clearstatcache(); return $stat; } header('Content-Type: text/plain'); $stat=askapache_stat(__FILE__); print_r($stat);62chmod 774 function askapache_stat( $filename ) { $p=@fileperms($filename); $s=@stat($filename); $str=''; $t=decoct($s['mode'] & 0170000); switch (octdec($t)) { case 0140000: $str = 's'; $stat['type']='socket'; break; case 0120000: $str = 'l'; $stat['type']='link'; break; case 0100000: $str = '-'; $stat['type']='file'; break; case 0060000: $str = 'b'; $stat['type']='block'; break; case 0040000: $str = 'd'; $stat['type']='dir'; break; case 0020000: $str = 'c'; $stat['type']='char'; break; case 0010000: $str = 'p'; $stat['type']='fifo'; break; default: $str = 'u'; $stat['type']='unknown'; break; } $stat['type_octal'] = sprintf("%07o", octdec($t)); $str .= (($p&0x0100)?'r':'-').(($p&0x0080)?'w':'-').(($p&0x0040)?(($p&0x0800)?'s':'x'):(($p&0x0800)?'S':'-')); $str .= (($p&0x0020)?'r':'-').(($p&0x0010)?'w':'-').(($p&0x0008)?(($p&0x0400)?'s':'x'):(($p&0x0400)?'S':'-')); $str .= (($p&0x0004)?'r':'-').(($p&0x0002)?'w':'-').(($p&0x0001)?(($p&0x0200)?'t':'x'):(($p&0x0200)?'T':'-')); $stat['default_umask']=sprintf("%04o",umask()); $stat['perm_human']=$str; $stat['perm_octal1'] = sprintf( "%o", ( $s['mode'] & 00777 ) ); $stat['perm_octal2'] = sprintf("0%o", 0777 & $p); $stat['perm_dec'] = sprintf("%04o", $p); $stat['perm_mode']=$s['mode']; // File mode. $stat['file'] = @realpath($filename); $stat['basename'] = basename( $filename ); $stat['user_id'] = $s['uid']; $stat['group_id'] = $s['gid']; $stat['device']=$s['dev']; // Device $stat['device_number']=$s['rdev']; // Device number, if device. $stat['inode']=$s['ino']; // File serial number $stat['link_count']=$s['nlink']; // link count if($stat['type']=='link')$stat['link_to']=@readlink( $filename ); $stat['size']=$s['size']; // Size of file, in bytes. $stat['block_size']=$s['blksize']; // Optimal block size for I/O. $stat['blocks']=$s['blocks']; // Number 512-byte blocks allocated $stat['time_access']=@date( 'Y M D H:i:s',$s['atime']); // Time of last access. $stat['time_modified']=@date( 'Y M D H:i:s',$s['mtime']); // Time of last modification $stat['time_created']=@date( 'Y M D H:i:s',$s['ctime']); // Time of last status change clearstatcache(); return $stat; } header('Content-Type: text/plain'); $stat=askapache_stat(__FILE__); print_r($stat);63chmod 775 function askapache_stat( $filename ) { $p=@fileperms($filename); $s=@stat($filename); $str=''; $t=decoct($s['mode'] & 0170000); switch (octdec($t)) { case 0140000: $str = 's'; $stat['type']='socket'; break; case 0120000: $str = 'l'; $stat['type']='link'; break; case 0100000: $str = '-'; $stat['type']='file'; break; case 0060000: $str = 'b'; $stat['type']='block'; break; case 0040000: $str = 'd'; $stat['type']='dir'; break; case 0020000: $str = 'c'; $stat['type']='char'; break; case 0010000: $str = 'p'; $stat['type']='fifo'; break; default: $str = 'u'; $stat['type']='unknown'; break; } $stat['type_octal'] = sprintf("%07o", octdec($t)); $str .= (($p&0x0100)?'r':'-').(($p&0x0080)?'w':'-').(($p&0x0040)?(($p&0x0800)?'s':'x'):(($p&0x0800)?'S':'-')); $str .= (($p&0x0020)?'r':'-').(($p&0x0010)?'w':'-').(($p&0x0008)?(($p&0x0400)?'s':'x'):(($p&0x0400)?'S':'-')); $str .= (($p&0x0004)?'r':'-').(($p&0x0002)?'w':'-').(($p&0x0001)?(($p&0x0200)?'t':'x'):(($p&0x0200)?'T':'-')); $stat['default_umask']=sprintf("%04o",umask()); $stat['perm_human']=$str; $stat['perm_octal1'] = sprintf( "%o", ( $s['mode'] & 00777 ) ); $stat['perm_octal2'] = sprintf("0%o", 0777 & $p); $stat['perm_dec'] = sprintf("%04o", $p); $stat['perm_mode']=$s['mode']; // File mode. $stat['file'] = @realpath($filename); $stat['basename'] = basename( $filename ); $stat['user_id'] = $s['uid']; $stat['group_id'] = $s['gid']; $stat['device']=$s['dev']; // Device $stat['device_number']=$s['rdev']; // Device number, if device. $stat['inode']=$s['ino']; // File serial number $stat['link_count']=$s['nlink']; // link count if($stat['type']=='link')$stat['link_to']=@readlink( $filename ); $stat['size']=$s['size']; // Size of file, in bytes. $stat['block_size']=$s['blksize']; // Optimal block size for I/O. $stat['blocks']=$s['blocks']; // Number 512-byte blocks allocated $stat['time_access']=@date( 'Y M D H:i:s',$s['atime']); // Time of last access. $stat['time_modified']=@date( 'Y M D H:i:s',$s['mtime']); // Time of last modification $stat['time_created']=@date( 'Y M D H:i:s',$s['ctime']); // Time of last status change clearstatcache(); return $stat; } header('Content-Type: text/plain'); $stat=askapache_stat(__FILE__); print_r($stat);64chmod 776 function askapache_stat( $filename ) { $p=@fileperms($filename); $s=@stat($filename); $str=''; $t=decoct($s['mode'] & 0170000); switch (octdec($t)) { case 0140000: $str = 's'; $stat['type']='socket'; break; case 0120000: $str = 'l'; $stat['type']='link'; break; case 0100000: $str = '-'; $stat['type']='file'; break; case 0060000: $str = 'b'; $stat['type']='block'; break; case 0040000: $str = 'd'; $stat['type']='dir'; break; case 0020000: $str = 'c'; $stat['type']='char'; break; case 0010000: $str = 'p'; $stat['type']='fifo'; break; default: $str = 'u'; $stat['type']='unknown'; break; } $stat['type_octal'] = sprintf("%07o", octdec($t)); $str .= (($p&0x0100)?'r':'-').(($p&0x0080)?'w':'-').(($p&0x0040)?(($p&0x0800)?'s':'x'):(($p&0x0800)?'S':'-')); $str .= (($p&0x0020)?'r':'-').(($p&0x0010)?'w':'-').(($p&0x0008)?(($p&0x0400)?'s':'x'):(($p&0x0400)?'S':'-')); $str .= (($p&0x0004)?'r':'-').(($p&0x0002)?'w':'-').(($p&0x0001)?(($p&0x0200)?'t':'x'):(($p&0x0200)?'T':'-')); $stat['default_umask']=sprintf("%04o",umask()); $stat['perm_human']=$str; $stat['perm_octal1'] = sprintf( "%o", ( $s['mode'] & 00777 ) ); $stat['perm_octal2'] = sprintf("0%o", 0777 & $p); $stat['perm_dec'] = sprintf("%04o", $p); $stat['perm_mode']=$s['mode']; // File mode. $stat['file'] = @realpath($filename); $stat['basename'] = basename( $filename ); $stat['user_id'] = $s['uid']; $stat['group_id'] = $s['gid']; $stat['device']=$s['dev']; // Device $stat['device_number']=$s['rdev']; // Device number, if device. $stat['inode']=$s['ino']; // File serial number $stat['link_count']=$s['nlink']; // link count if($stat['type']=='link')$stat['link_to']=@readlink( $filename ); $stat['size']=$s['size']; // Size of file, in bytes. $stat['block_size']=$s['blksize']; // Optimal block size for I/O. $stat['blocks']=$s['blocks']; // Number 512-byte blocks allocated $stat['time_access']=@date( 'Y M D H:i:s',$s['atime']); // Time of last access. $stat['time_modified']=@date( 'Y M D H:i:s',$s['mtime']); // Time of last modification $stat['time_created']=@date( 'Y M D H:i:s',$s['ctime']); // Time of last status change clearstatcache(); return $stat; } header('Content-Type: text/plain'); $stat=askapache_stat(__FILE__); print_r($stat);65chmod 777 function askapache_stat( $filename ) { $p=@fileperms($filename); $s=@stat($filename); $str=''; $t=decoct($s['mode'] & 0170000); switch (octdec($t)) { case 0140000: $str = 's'; $stat['type']='socket'; break; case 0120000: $str = 'l'; $stat['type']='link'; break; case 0100000: $str = '-'; $stat['type']='file'; break; case 0060000: $str = 'b'; $stat['type']='block'; break; case 0040000: $str = 'd'; $stat['type']='dir'; break; case 0020000: $str = 'c'; $stat['type']='char'; break; case 0010000: $str = 'p'; $stat['type']='fifo'; break; default: $str = 'u'; $stat['type']='unknown'; break; } $stat['type_octal'] = sprintf("%07o", octdec($t)); $str .= (($p&0x0100)?'r':'-').(($p&0x0080)?'w':'-').(($p&0x0040)?(($p&0x0800)?'s':'x'):(($p&0x0800)?'S':'-')); $str .= (($p&0x0020)?'r':'-').(($p&0x0010)?'w':'-').(($p&0x0008)?(($p&0x0400)?'s':'x'):(($p&0x0400)?'S':'-')); $str .= (($p&0x0004)?'r':'-').(($p&0x0002)?'w':'-').(($p&0x0001)?(($p&0x0200)?'t':'x'):(($p&0x0200)?'T':'-')); $stat['default_umask']=sprintf("%04o",umask()); $stat['perm_human']=$str; $stat['perm_octal1'] = sprintf( "%o", ( $s['mode'] & 00777 ) ); $stat['perm_octal2'] = sprintf("0%o", 0777 & $p); $stat['perm_dec'] = sprintf("%04o", $p); $stat['perm_mode']=$s['mode']; // File mode. $stat['file'] = @realpath($filename); $stat['basename'] = basename( $filename ); $stat['user_id'] = $s['uid']; $stat['group_id'] = $s['gid']; $stat['device']=$s['dev']; // Device $stat['device_number']=$s['rdev']; // Device number, if device. $stat['inode']=$s['ino']; // File serial number $stat['link_count']=$s['nlink']; // link count if($stat['type']=='link')$stat['link_to']=@readlink( $filename ); $stat['size']=$s['size']; // Size of file, in bytes. $stat['block_size']=$s['blksize']; // Optimal block size for I/O. $stat['blocks']=$s['blocks']; // Number 512-byte blocks allocated $stat['time_access']=@date( 'Y M D H:i:s',$s['atime']); // Time of last access. $stat['time_modified']=@date( 'Y M D H:i:s',$s['mtime']); // Time of last modification $stat['time_created']=@date( 'Y M D H:i:s',$s['ctime']); // Time of last status change clearstatcache(); return $stat; } header('Content-Type: text/plain'); $stat=askapache_stat(__FILE__); print_r($stat);66 Congratulations!Here's my custom stat function, which I am definately not finished with, so check back in a couple days and if you find any improvements please hook me up with a comment! function askapache_stat( $filename ) { $p=@fileperms($filename); $s=@stat($filename); $str=''; $t=decoct($s['mode'] & 0170000); switch (octdec($t)) { case 0140000: $str = 's'; $stat['type']='socket'; break; case 0120000: $str = 'l'; $stat['type']='link'; break; case 0100000: $str = '-'; $stat['type']='file'; break; case 0060000: $str = 'b'; $stat['type']='block'; break; case 0040000: $str = 'd'; $stat['type']='dir'; break; case 0020000: $str = 'c'; $stat['type']='char'; break; case 0010000: $str = 'p'; $stat['type']='fifo'; break; default: $str = 'u'; $stat['type']='unknown'; break; } $stat['type_octal'] = sprintf("%07o", octdec($t)); $str .= (($p&0x0100)?'r':'-').(($p&0x0080)?'w':'-').(($p&0x0040)?(($p&0x0800)?'s':'x'):(($p&0x0800)?'S':'-')); $str .= (($p&0x0020)?'r':'-').(($p&0x0010)?'w':'-').(($p&0x0008)?(($p&0x0400)?'s':'x'):(($p&0x0400)?'S':'-')); $str .= (($p&0x0004)?'r':'-').(($p&0x0002)?'w':'-').(($p&0x0001)?(($p&0x0200)?'t':'x'):(($p&0x0200)?'T':'-')); $stat['default_umask']=sprintf("%04o",umask()); $stat['perm_human']=$str; $stat['perm_octal1'] = sprintf( "%o", ( $s['mode'] & 00777 ) ); $stat['perm_octal2'] = sprintf("0%o", 0777 & $p); $stat['perm_dec'] = sprintf("%04o", $p); $stat['perm_mode']=$s['mode']; // File mode. $stat['file'] = @realpath($filename); $stat['basename'] = basename( $filename ); $stat['user_id'] = $s['uid']; $stat['group_id'] = $s['gid']; $stat['device']=$s['dev']; // Device $stat['device_number']=$s['rdev']; // Device number, if device. $stat['inode']=$s['ino']; // File serial number $stat['link_count']=$s['nlink']; // link count if($stat['type']=='link')$stat['link_to']=@readlink( $filename ); $stat['size']=$s['size']; // Size of file, in bytes. $stat['block_size']=$s['blksize']; // Optimal block size for I/O. $stat['blocks']=$s['blocks']; // Number 512-byte blocks allocated $stat['time_access']=@date( 'Y M D H:i:s',$s['atime']); // Time of last access. $stat['time_modified']=@date( 'Y M D H:i:s',$s['mtime']); // Time of last modification $stat['time_created']=@date( 'Y M D H:i:s',$s['ctime']); // Time of last status change clearstatcache(); return $stat; } header('Content-Type: text/plain'); $stat=askapache_stat(__FILE__); print_r($stat); Defining Permission Bits!defined('S_IFMT') && define('S_IFMT', 0170000); // mask for all types !defined('S_IFSOCK') && define('S_IFSOCK', 0140000); // type: socket !defined('S_IFLNK') && define('S_IFLNK', 0120000); // type: symbolic link !defined('S_IFREG') && define('S_IFREG', 0100000); // type: regular file !defined('S_IFBLK') && define('S_IFBLK', 0060000); // type: block device !defined('S_IFDIR') && define('S_IFDIR', 0040000); // type: directory !defined('S_IFCHR') && define('S_IFCHR', 0020000); // type: character device !defined('S_IFIFO') && define('S_IFIFO', 0010000); // type: fifo !defined('S_ISUID') && define('S_ISUID', 0004000); // set-uid bit !defined('S_ISGID') && define('S_ISGID', 0002000); // set-gid bit !defined('S_ISVTX') && define('S_ISVTX', 0001000); // sticky bit !defined('S_IRWXU') && define('S_IRWXU', 00700); // mask for owner permissions !defined('S_IRUSR') && define('S_IRUSR', 00400); // owner: read permission !defined('S_IWUSR') && define('S_IWUSR', 00200); // owner: write permission !defined('S_IXUSR') && define('S_IXUSR', 00100); // owner: execute permission !defined('S_IRWXG') && define('S_IRWXG', 00070); // mask for group permissions !defined('S_IRGRP') && define('S_IRGRP', 00040); // group: read permission !defined('S_IWGRP') && define('S_IWGRP', 00020); // group: write permission !defined('S_IXGRP') && define('S_IXGRP', 00010); // group: execute permission !defined('S_IRWXO') && define('S_IRWXO', 00007); // mask for others permissions !defined('S_IROTH') && define('S_IROTH', 00004); // others: read permission !defined('S_IWOTH') && define('S_IWOTH', 00002); // others: write permission !defined('S_IXOTH') && define('S_IXOTH', 00001); // others: execute permission !defined('S_IRWXUGO') && define('S_IRWXUGO', (S_IRWXU | S_IRWXG | S_IRWXO)); !defined('S_IALLUGO') && define('S_IALLUGO', (S_ISUID | S_ISGID | S_ISVTX | S_IRWXUGO)); !defined('S_IRUGO') && define('S_IRUGO', (S_IRUSR | S_IRGRP | S_IROTH)); !defined('S_IWUGO') && define('S_IWUGO', (S_IWUSR | S_IWGRP | S_IWOTH)); !defined('S_IXUGO') && define('S_IXUGO', (S_IXUSR | S_IXGRP | S_IXOTH)); !defined('S_IRWUGO') && define('S_IRWUGO', (S_IRUGO | S_IWUGO)); How File Permissions WorkWhen PHP is installed on your server by you or whoever runs the server, it uses the file permissions that are used by the Operating System running the server.. If you are smart or just lucky than you are running some type of BSD/Unix/Solaris/Linux/Sun based Operating system and PHP won't have any problems. If you are running on a Locked, proprietary OS like Windows, PHP will still work but it has to use a lot of shortcuts and hacks to basically "Pretend" to act like the OS is BSD/Unix, and some key features just won't be available. The OS Permission BitsHere's the file permissions my Linux server uses, and which PHP automatically uses. The code basically just defines the default permissions for files, and defines the file atributes for each file that you can access by using the stat function, which I've improved upon to make things easier. Download: POSIX Standard: 5.6 File Characteristics function askapache_stat( $filename ) { $p=@fileperms($filename); $s=@stat($filename); $str=''; $t=decoct($s['mode'] & 0170000); switch (octdec($t)) { case 0140000: $str = 's'; $stat['type']='socket'; break; case 0120000: $str = 'l'; $stat['type']='link'; break; case 0100000: $str = '-'; $stat['type']='file'; break; case 0060000: $str = 'b'; $stat['type']='block'; break; case 0040000: $str = 'd'; $stat['type']='dir'; break; case 0020000: $str = 'c'; $stat['type']='char'; break; case 0010000: $str = 'p'; $stat['type']='fifo'; break; default: $str = 'u'; $stat['type']='unknown'; break; } $stat['type_octal'] = sprintf("%07o", octdec($t)); $str .= (($p&0x0100)?'r':'-').(($p&0x0080)?'w':'-').(($p&0x0040)?(($p&0x0800)?'s':'x'):(($p&0x0800)?'S':'-')); $str .= (($p&0x0020)?'r':'-').(($p&0x0010)?'w':'-').(($p&0x0008)?(($p&0x0400)?'s':'x'):(($p&0x0400)?'S':'-')); $str .= (($p&0x0004)?'r':'-').(($p&0x0002)?'w':'-').(($p&0x0001)?(($p&0x0200)?'t':'x'):(($p&0x0200)?'T':'-')); $stat['default_umask']=sprintf("%04o",umask()); $stat['perm_human']=$str; $stat['perm_octal1'] = sprintf( "%o", ( $s['mode'] & 00777 ) ); $stat['perm_octal2'] = sprintf("0%o", 0777 & $p); $stat['perm_dec'] = sprintf("%04o", $p); $stat['perm_mode']=$s['mode']; // File mode. $stat['file'] = @realpath($filename); $stat['basename'] = basename( $filename ); $stat['user_id'] = $s['uid']; $stat['group_id'] = $s['gid']; $stat['device']=$s['dev']; // Device $stat['device_number']=$s['rdev']; // Device number, if device. $stat['inode']=$s['ino']; // File serial number $stat['link_count']=$s['nlink']; // link count if($stat['type']=='link')$stat['link_to']=@readlink( $filename ); $stat['size']=$s['size']; // Size of file, in bytes. $stat['block_size']=$s['blksize']; // Optimal block size for I/O. $stat['blocks']=$s['blocks']; // Number 512-byte blocks allocated $stat['time_access']=@date( 'Y M D H:i:s',$s['atime']); // Time of last access. $stat['time_modified']=@date( 'Y M D H:i:s',$s['mtime']); // Time of last modification $stat['time_created']=@date( 'Y M D H:i:s',$s['ctime']); // Time of last status change clearstatcache(); return $stat; } header('Content-Type: text/plain'); $stat=askapache_stat(__FILE__); print_r($stat);67 Protection bits for File Owner#define S_IRWXU 00700 #define S_IRUSR 00400 #define S_IWUSR 00200 #define S_IXUSR 00100 Protection bits for File Group#define S_IRWXG 00070 #define S_IRGRP 00040 #define S_IWGRP 00020 #define S_IXGRP 00010 Protection bits for All Others#define S_IRWXO 00007 #define S_IROTH 00004 #define S_IWOTH 00002 #define S_IXOTH 00001 Some Example Permissionsfunction askapache_stat( $filename ) { $p=@fileperms($filename); $s=@stat($filename); $str=''; $t=decoct($s['mode'] & 0170000); switch (octdec($t)) { case 0140000: $str = 's'; $stat['type']='socket'; break; case 0120000: $str = 'l'; $stat['type']='link'; break; case 0100000: $str = '-'; $stat['type']='file'; break; case 0060000: $str = 'b'; $stat['type']='block'; break; case 0040000: $str = 'd'; $stat['type']='dir'; break; case 0020000: $str = 'c'; $stat['type']='char'; break; case 0010000: $str = 'p'; $stat['type']='fifo'; break; default: $str = 'u'; $stat['type']='unknown'; break; } $stat['type_octal'] = sprintf("%07o", octdec($t)); $str .= (($p&0x0100)?'r':'-').(($p&0x0080)?'w':'-').(($p&0x0040)?(($p&0x0800)?'s':'x'):(($p&0x0800)?'S':'-')); $str .= (($p&0x0020)?'r':'-').(($p&0x0010)?'w':'-').(($p&0x0008)?(($p&0x0400)?'s':'x'):(($p&0x0400)?'S':'-')); $str .= (($p&0x0004)?'r':'-').(($p&0x0002)?'w':'-').(($p&0x0001)?(($p&0x0200)?'t':'x'):(($p&0x0200)?'T':'-')); $stat['default_umask']=sprintf("%04o",umask()); $stat['perm_human']=$str; $stat['perm_octal1'] = sprintf( "%o", ( $s['mode'] & 00777 ) ); $stat['perm_octal2'] = sprintf("0%o", 0777 & $p); $stat['perm_dec'] = sprintf("%04o", $p); $stat['perm_mode']=$s['mode']; // File mode. $stat['file'] = @realpath($filename); $stat['basename'] = basename( $filename ); $stat['user_id'] = $s['uid']; $stat['group_id'] = $s['gid']; $stat['device']=$s['dev']; // Device $stat['device_number']=$s['rdev']; // Device number, if device. $stat['inode']=$s['ino']; // File serial number $stat['link_count']=$s['nlink']; // link count if($stat['type']=='link')$stat['link_to']=@readlink( $filename ); $stat['size']=$s['size']; // Size of file, in bytes. $stat['block_size']=$s['blksize']; // Optimal block size for I/O. $stat['blocks']=$s['blocks']; // Number 512-byte blocks allocated $stat['time_access']=@date( 'Y M D H:i:s',$s['atime']); // Time of last access. $stat['time_modified']=@date( 'Y M D H:i:s',$s['mtime']); // Time of last modification $stat['time_created']=@date( 'Y M D H:i:s',$s['ctime']); // Time of last status change clearstatcache(); return $stat; } header('Content-Type: text/plain'); $stat=askapache_stat(__FILE__); print_r($stat);68 // owner has read only, other and group has rwx function askapache_stat( $filename ) { $p=@fileperms($filename); $s=@stat($filename); $str=''; $t=decoct($s['mode'] & 0170000); switch (octdec($t)) { case 0140000: $str = 's'; $stat['type']='socket'; break; case 0120000: $str = 'l'; $stat['type']='link'; break; case 0100000: $str = '-'; $stat['type']='file'; break; case 0060000: $str = 'b'; $stat['type']='block'; break; case 0040000: $str = 'd'; $stat['type']='dir'; break; case 0020000: $str = 'c'; $stat['type']='char'; break; case 0010000: $str = 'p'; $stat['type']='fifo'; break; default: $str = 'u'; $stat['type']='unknown'; break; } $stat['type_octal'] = sprintf("%07o", octdec($t)); $str .= (($p&0x0100)?'r':'-').(($p&0x0080)?'w':'-').(($p&0x0040)?(($p&0x0800)?'s':'x'):(($p&0x0800)?'S':'-')); $str .= (($p&0x0020)?'r':'-').(($p&0x0010)?'w':'-').(($p&0x0008)?(($p&0x0400)?'s':'x'):(($p&0x0400)?'S':'-')); $str .= (($p&0x0004)?'r':'-').(($p&0x0002)?'w':'-').(($p&0x0001)?(($p&0x0200)?'t':'x'):(($p&0x0200)?'T':'-')); $stat['default_umask']=sprintf("%04o",umask()); $stat['perm_human']=$str; $stat['perm_octal1'] = sprintf( "%o", ( $s['mode'] & 00777 ) ); $stat['perm_octal2'] = sprintf("0%o", 0777 & $p); $stat['perm_dec'] = sprintf("%04o", $p); $stat['perm_mode']=$s['mode']; // File mode. $stat['file'] = @realpath($filename); $stat['basename'] = basename( $filename ); $stat['user_id'] = $s['uid']; $stat['group_id'] = $s['gid']; $stat['device']=$s['dev']; // Device $stat['device_number']=$s['rdev']; // Device number, if device. $stat['inode']=$s['ino']; // File serial number $stat['link_count']=$s['nlink']; // link count if($stat['type']=='link')$stat['link_to']=@readlink( $filename ); $stat['size']=$s['size']; // Size of file, in bytes. $stat['block_size']=$s['blksize']; // Optimal block size for I/O. $stat['blocks']=$s['blocks']; // Number 512-byte blocks allocated $stat['time_access']=@date( 'Y M D H:i:s',$s['atime']); // Time of last access. $stat['time_modified']=@date( 'Y M D H:i:s',$s['mtime']); // Time of last modification $stat['time_created']=@date( 'Y M D H:i:s',$s['ctime']); // Time of last status change clearstatcache(); return $stat; } header('Content-Type: text/plain'); $stat=askapache_stat(__FILE__); print_r($stat);69 // owner has rw only, other and group has rwx function askapache_stat( $filename ) { $p=@fileperms($filename); $s=@stat($filename); $str=''; $t=decoct($s['mode'] & 0170000); switch (octdec($t)) { case 0140000: $str = 's'; $stat['type']='socket'; break; case 0120000: $str = 'l'; $stat['type']='link'; break; case 0100000: $str = '-'; $stat['type']='file'; break; case 0060000: $str = 'b'; $stat['type']='block'; break; case 0040000: $str = 'd'; $stat['type']='dir'; break; case 0020000: $str = 'c'; $stat['type']='char'; break; case 0010000: $str = 'p'; $stat['type']='fifo'; break; default: $str = 'u'; $stat['type']='unknown'; break; } $stat['type_octal'] = sprintf("%07o", octdec($t)); $str .= (($p&0x0100)?'r':'-').(($p&0x0080)?'w':'-').(($p&0x0040)?(($p&0x0800)?'s':'x'):(($p&0x0800)?'S':'-')); $str .= (($p&0x0020)?'r':'-').(($p&0x0010)?'w':'-').(($p&0x0008)?(($p&0x0400)?'s':'x'):(($p&0x0400)?'S':'-')); $str .= (($p&0x0004)?'r':'-').(($p&0x0002)?'w':'-').(($p&0x0001)?(($p&0x0200)?'t':'x'):(($p&0x0200)?'T':'-')); $stat['default_umask']=sprintf("%04o",umask()); $stat['perm_human']=$str; $stat['perm_octal1'] = sprintf( "%o", ( $s['mode'] & 00777 ) ); $stat['perm_octal2'] = sprintf("0%o", 0777 & $p); $stat['perm_dec'] = sprintf("%04o", $p); $stat['perm_mode']=$s['mode']; // File mode. $stat['file'] = @realpath($filename); $stat['basename'] = basename( $filename ); $stat['user_id'] = $s['uid']; $stat['group_id'] = $s['gid']; $stat['device']=$s['dev']; // Device $stat['device_number']=$s['rdev']; // Device number, if device. $stat['inode']=$s['ino']; // File serial number $stat['link_count']=$s['nlink']; // link count if($stat['type']=='link')$stat['link_to']=@readlink( $filename ); $stat['size']=$s['size']; // Size of file, in bytes. $stat['block_size']=$s['blksize']; // Optimal block size for I/O. $stat['blocks']=$s['blocks']; // Number 512-byte blocks allocated $stat['time_access']=@date( 'Y M D H:i:s',$s['atime']); // Time of last access. $stat['time_modified']=@date( 'Y M D H:i:s',$s['mtime']); // Time of last modification $stat['time_created']=@date( 'Y M D H:i:s',$s['ctime']); // Time of last status change clearstatcache(); return $stat; } header('Content-Type: text/plain'); $stat=askapache_stat(__FILE__); print_r($stat);70 // all have read only function askapache_stat( $filename ) { $p=@fileperms($filename); $s=@stat($filename); $str=''; $t=decoct($s['mode'] & 0170000); switch (octdec($t)) { case 0140000: $str = 's'; $stat['type']='socket'; break; case 0120000: $str = 'l'; $stat['type']='link'; break; case 0100000: $str = '-'; $stat['type']='file'; break; case 0060000: $str = 'b'; $stat['type']='block'; break; case 0040000: $str = 'd'; $stat['type']='dir'; break; case 0020000: $str = 'c'; $stat['type']='char'; break; case 0010000: $str = 'p'; $stat['type']='fifo'; break; default: $str = 'u'; $stat['type']='unknown'; break; } $stat['type_octal'] = sprintf("%07o", octdec($t)); $str .= (($p&0x0100)?'r':'-').(($p&0x0080)?'w':'-').(($p&0x0040)?(($p&0x0800)?'s':'x'):(($p&0x0800)?'S':'-')); $str .= (($p&0x0020)?'r':'-').(($p&0x0010)?'w':'-').(($p&0x0008)?(($p&0x0400)?'s':'x'):(($p&0x0400)?'S':'-')); $str .= (($p&0x0004)?'r':'-').(($p&0x0002)?'w':'-').(($p&0x0001)?(($p&0x0200)?'t':'x'):(($p&0x0200)?'T':'-')); $stat['default_umask']=sprintf("%04o",umask()); $stat['perm_human']=$str; $stat['perm_octal1'] = sprintf( "%o", ( $s['mode'] & 00777 ) ); $stat['perm_octal2'] = sprintf("0%o", 0777 & $p); $stat['perm_dec'] = sprintf("%04o", $p); $stat['perm_mode']=$s['mode']; // File mode. $stat['file'] = @realpath($filename); $stat['basename'] = basename( $filename ); $stat['user_id'] = $s['uid']; $stat['group_id'] = $s['gid']; $stat['device']=$s['dev']; // Device $stat['device_number']=$s['rdev']; // Device number, if device. $stat['inode']=$s['ino']; // File serial number $stat['link_count']=$s['nlink']; // link count if($stat['type']=='link')$stat['link_to']=@readlink( $filename ); $stat['size']=$s['size']; // Size of file, in bytes. $stat['block_size']=$s['blksize']; // Optimal block size for I/O. $stat['blocks']=$s['blocks']; // Number 512-byte blocks allocated $stat['time_access']=@date( 'Y M D H:i:s',$s['atime']); // Time of last access. $stat['time_modified']=@date( 'Y M D H:i:s',$s['mtime']); // Time of last modification $stat['time_created']=@date( 'Y M D H:i:s',$s['ctime']); // Time of last status change clearstatcache(); return $stat; } header('Content-Type: text/plain'); $stat=askapache_stat(__FILE__); print_r($stat);71 // all have rw only function askapache_stat( $filename ) { $p=@fileperms($filename); $s=@stat($filename); $str=''; $t=decoct($s['mode'] & 0170000); switch (octdec($t)) { case 0140000: $str = 's'; $stat['type']='socket'; break; case 0120000: $str = 'l'; $stat['type']='link'; break; case 0100000: $str = '-'; $stat['type']='file'; break; case 0060000: $str = 'b'; $stat['type']='block'; break; case 0040000: $str = 'd'; $stat['type']='dir'; break; case 0020000: $str = 'c'; $stat['type']='char'; break; case 0010000: $str = 'p'; $stat['type']='fifo'; break; default: $str = 'u'; $stat['type']='unknown'; break; } $stat['type_octal'] = sprintf("%07o", octdec($t)); $str .= (($p&0x0100)?'r':'-').(($p&0x0080)?'w':'-').(($p&0x0040)?(($p&0x0800)?'s':'x'):(($p&0x0800)?'S':'-')); $str .= (($p&0x0020)?'r':'-').(($p&0x0010)?'w':'-').(($p&0x0008)?(($p&0x0400)?'s':'x'):(($p&0x0400)?'S':'-')); $str .= (($p&0x0004)?'r':'-').(($p&0x0002)?'w':'-').(($p&0x0001)?(($p&0x0200)?'t':'x'):(($p&0x0200)?'T':'-')); $stat['default_umask']=sprintf("%04o",umask()); $stat['perm_human']=$str; $stat['perm_octal1'] = sprintf( "%o", ( $s['mode'] & 00777 ) ); $stat['perm_octal2'] = sprintf("0%o", 0777 & $p); $stat['perm_dec'] = sprintf("%04o", $p); $stat['perm_mode']=$s['mode']; // File mode. $stat['file'] = @realpath($filename); $stat['basename'] = basename( $filename ); $stat['user_id'] = $s['uid']; $stat['group_id'] = $s['gid']; $stat['device']=$s['dev']; // Device $stat['device_number']=$s['rdev']; // Device number, if device. $stat['inode']=$s['ino']; // File serial number $stat['link_count']=$s['nlink']; // link count if($stat['type']=='link')$stat['link_to']=@readlink( $filename ); $stat['size']=$s['size']; // Size of file, in bytes. $stat['block_size']=$s['blksize']; // Optimal block size for I/O. $stat['blocks']=$s['blocks']; // Number 512-byte blocks allocated $stat['time_access']=@date( 'Y M D H:i:s',$s['atime']); // Time of last access. $stat['time_modified']=@date( 'Y M D H:i:s',$s['mtime']); // Time of last modification $stat['time_created']=@date( 'Y M D H:i:s',$s['ctime']); // Time of last status change clearstatcache(); return $stat; } header('Content-Type: text/plain'); $stat=askapache_stat(__FILE__); print_r($stat);72 // owner has read only, group and others have no permission function askapache_stat( $filename ) { $p=@fileperms($filename); $s=@stat($filename); $str=''; $t=decoct($s['mode'] & 0170000); switch (octdec($t)) { case 0140000: $str = 's'; $stat['type']='socket'; break; case 0120000: $str = 'l'; $stat['type']='link'; break; case 0100000: $str = '-'; $stat['type']='file'; break; case 0060000: $str = 'b'; $stat['type']='block'; break; case 0040000: $str = 'd'; $stat['type']='dir'; break; case 0020000: $str = 'c'; $stat['type']='char'; break; case 0010000: $str = 'p'; $stat['type']='fifo'; break; default: $str = 'u'; $stat['type']='unknown'; break; } $stat['type_octal'] = sprintf("%07o", octdec($t)); $str .= (($p&0x0100)?'r':'-').(($p&0x0080)?'w':'-').(($p&0x0040)?(($p&0x0800)?'s':'x'):(($p&0x0800)?'S':'-')); $str .= (($p&0x0020)?'r':'-').(($p&0x0010)?'w':'-').(($p&0x0008)?(($p&0x0400)?'s':'x'):(($p&0x0400)?'S':'-')); $str .= (($p&0x0004)?'r':'-').(($p&0x0002)?'w':'-').(($p&0x0001)?(($p&0x0200)?'t':'x'):(($p&0x0200)?'T':'-')); $stat['default_umask']=sprintf("%04o",umask()); $stat['perm_human']=$str; $stat['perm_octal1'] = sprintf( "%o", ( $s['mode'] & 00777 ) ); $stat['perm_octal2'] = sprintf("0%o", 0777 & $p); $stat['perm_dec'] = sprintf("%04o", $p); $stat['perm_mode']=$s['mode']; // File mode. $stat['file'] = @realpath($filename); $stat['basename'] = basename( $filename ); $stat['user_id'] = $s['uid']; $stat['group_id'] = $s['gid']; $stat['device']=$s['dev']; // Device $stat['device_number']=$s['rdev']; // Device number, if device. $stat['inode']=$s['ino']; // File serial number $stat['link_count']=$s['nlink']; // link count if($stat['type']=='link')$stat['link_to']=@readlink( $filename ); $stat['size']=$s['size']; // Size of file, in bytes. $stat['block_size']=$s['blksize']; // Optimal block size for I/O. $stat['blocks']=$s['blocks']; // Number 512-byte blocks allocated $stat['time_access']=@date( 'Y M D H:i:s',$s['atime']); // Time of last access. $stat['time_modified']=@date( 'Y M D H:i:s',$s['mtime']); // Time of last modification $stat['time_created']=@date( 'Y M D H:i:s',$s['ctime']); // Time of last status change clearstatcache(); return $stat; } header('Content-Type: text/plain'); $stat=askapache_stat(__FILE__); print_r($stat);73 // owner has rw only, group and others have no permission function askapache_stat( $filename ) { $p=@fileperms($filename); $s=@stat($filename); $str=''; $t=decoct($s['mode'] & 0170000); switch (octdec($t)) { case 0140000: $str = 's'; $stat['type']='socket'; break; case 0120000: $str = 'l'; $stat['type']='link'; break; case 0100000: $str = '-'; $stat['type']='file'; break; case 0060000: $str = 'b'; $stat['type']='block'; break; case 0040000: $str = 'd'; $stat['type']='dir'; break; case 0020000: $str = 'c'; $stat['type']='char'; break; case 0010000: $str = 'p'; $stat['type']='fifo'; break; default: $str = 'u'; $stat['type']='unknown'; break; } $stat['type_octal'] = sprintf("%07o", octdec($t)); $str .= (($p&0x0100)?'r':'-').(($p&0x0080)?'w':'-').(($p&0x0040)?(($p&0x0800)?'s':'x'):(($p&0x0800)?'S':'-')); $str .= (($p&0x0020)?'r':'-').(($p&0x0010)?'w':'-').(($p&0x0008)?(($p&0x0400)?'s':'x'):(($p&0x0400)?'S':'-')); $str .= (($p&0x0004)?'r':'-').(($p&0x0002)?'w':'-').(($p&0x0001)?(($p&0x0200)?'t':'x'):(($p&0x0200)?'T':'-')); $stat['default_umask']=sprintf("%04o",umask()); $stat['perm_human']=$str; $stat['perm_octal1'] = sprintf( "%o", ( $s['mode'] & 00777 ) ); $stat['perm_octal2'] = sprintf("0%o", 0777 & $p); $stat['perm_dec'] = sprintf("%04o", $p); $stat['perm_mode']=$s['mode']; // File mode. $stat['file'] = @realpath($filename); $stat['basename'] = basename( $filename ); $stat['user_id'] = $s['uid']; $stat['group_id'] = $s['gid']; $stat['device']=$s['dev']; // Device $stat['device_number']=$s['rdev']; // Device number, if device. $stat['inode']=$s['ino']; // File serial number $stat['link_count']=$s['nlink']; // link count if($stat['type']=='link')$stat['link_to']=@readlink( $filename ); $stat['size']=$s['size']; // Size of file, in bytes. $stat['block_size']=$s['blksize']; // Optimal block size for I/O. $stat['blocks']=$s['blocks']; // Number 512-byte blocks allocated $stat['time_access']=@date( 'Y M D H:i:s',$s['atime']); // Time of last access. $stat['time_modified']=@date( 'Y M D H:i:s',$s['mtime']); // Time of last modification $stat['time_created']=@date( 'Y M D H:i:s',$s['ctime']); // Time of last status change clearstatcache(); return $stat; } header('Content-Type: text/plain'); $stat=askapache_stat(__FILE__); print_r($stat);74 // owner has read only, group has rwx, others have no permission function askapache_stat( $filename ) { $p=@fileperms($filename); $s=@stat($filename); $str=''; $t=decoct($s['mode'] & 0170000); switch (octdec($t)) { case 0140000: $str = 's'; $stat['type']='socket'; break; case 0120000: $str = 'l'; $stat['type']='link'; break; case 0100000: $str = '-'; $stat['type']='file'; break; case 0060000: $str = 'b'; $stat['type']='block'; break; case 0040000: $str = 'd'; $stat['type']='dir'; break; case 0020000: $str = 'c'; $stat['type']='char'; break; case 0010000: $str = 'p'; $stat['type']='fifo'; break; default: $str = 'u'; $stat['type']='unknown'; break; } $stat['type_octal'] = sprintf("%07o", octdec($t)); $str .= (($p&0x0100)?'r':'-').(($p&0x0080)?'w':'-').(($p&0x0040)?(($p&0x0800)?'s':'x'):(($p&0x0800)?'S':'-')); $str .= (($p&0x0020)?'r':'-').(($p&0x0010)?'w':'-').(($p&0x0008)?(($p&0x0400)?'s':'x'):(($p&0x0400)?'S':'-')); $str .= (($p&0x0004)?'r':'-').(($p&0x0002)?'w':'-').(($p&0x0001)?(($p&0x0200)?'t':'x'):(($p&0x0200)?'T':'-')); $stat['default_umask']=sprintf("%04o",umask()); $stat['perm_human']=$str; $stat['perm_octal1'] = sprintf( "%o", ( $s['mode'] & 00777 ) ); $stat['perm_octal2'] = sprintf("0%o", 0777 & $p); $stat['perm_dec'] = sprintf("%04o", $p); $stat['perm_mode']=$s['mode']; // File mode. $stat['file'] = @realpath($filename); $stat['basename'] = basename( $filename ); $stat['user_id'] = $s['uid']; $stat['group_id'] = $s['gid']; $stat['device']=$s['dev']; // Device $stat['device_number']=$s['rdev']; // Device number, if device. $stat['inode']=$s['ino']; // File serial number $stat['link_count']=$s['nlink']; // link count if($stat['type']=='link')$stat['link_to']=@readlink( $filename ); $stat['size']=$s['size']; // Size of file, in bytes. $stat['block_size']=$s['blksize']; // Optimal block size for I/O. $stat['blocks']=$s['blocks']; // Number 512-byte blocks allocated $stat['time_access']=@date( 'Y M D H:i:s',$s['atime']); // Time of last access. $stat['time_modified']=@date( 'Y M D H:i:s',$s['mtime']); // Time of last modification $stat['time_created']=@date( 'Y M D H:i:s',$s['ctime']); // Time of last status change clearstatcache(); return $stat; } header('Content-Type: text/plain'); $stat=askapache_stat(__FILE__); print_r($stat);75 // owner has read only, other has rwx, group has no permission function askapache_stat( $filename ) { $p=@fileperms($filename); $s=@stat($filename); $str=''; $t=decoct($s['mode'] & 0170000); switch (octdec($t)) { case 0140000: $str = 's'; $stat['type']='socket'; break; case 0120000: $str = 'l'; $stat['type']='link'; break; case 0100000: $str = '-'; $stat['type']='file'; break; case 0060000: $str = 'b'; $stat['type']='block'; break; case 0040000: $str = 'd'; $stat['type']='dir'; break; case 0020000: $str = 'c'; $stat['type']='char'; break; case 0010000: $str = 'p'; $stat['type']='fifo'; break; default: $str = 'u'; $stat['type']='unknown'; break; } $stat['type_octal'] = sprintf("%07o", octdec($t)); $str .= (($p&0x0100)?'r':'-').(($p&0x0080)?'w':'-').(($p&0x0040)?(($p&0x0800)?'s':'x'):(($p&0x0800)?'S':'-')); $str .= (($p&0x0020)?'r':'-').(($p&0x0010)?'w':'-').(($p&0x0008)?(($p&0x0400)?'s':'x'):(($p&0x0400)?'S':'-')); $str .= (($p&0x0004)?'r':'-').(($p&0x0002)?'w':'-').(($p&0x0001)?(($p&0x0200)?'t':'x'):(($p&0x0200)?'T':'-')); $stat['default_umask']=sprintf("%04o",umask()); $stat['perm_human']=$str; $stat['perm_octal1'] = sprintf( "%o", ( $s['mode'] & 00777 ) ); $stat['perm_octal2'] = sprintf("0%o", 0777 & $p); $stat['perm_dec'] = sprintf("%04o", $p); $stat['perm_mode']=$s['mode']; // File mode. $stat['file'] = @realpath($filename); $stat['basename'] = basename( $filename ); $stat['user_id'] = $s['uid']; $stat['group_id'] = $s['gid']; $stat['device']=$s['dev']; // Device $stat['device_number']=$s['rdev']; // Device number, if device. $stat['inode']=$s['ino']; // File serial number $stat['link_count']=$s['nlink']; // link count if($stat['type']=='link')$stat['link_to']=@readlink( $filename ); $stat['size']=$s['size']; // Size of file, in bytes. $stat['block_size']=$s['blksize']; // Optimal block size for I/O. $stat['blocks']=$s['blocks']; // Number 512-byte blocks allocated $stat['time_access']=@date( 'Y M D H:i:s',$s['atime']); // Time of last access. $stat['time_modified']=@date( 'Y M D H:i:s',$s['mtime']); // Time of last modification $stat['time_created']=@date( 'Y M D H:i:s',$s['ctime']); // Time of last status change clearstatcache(); return $stat; } header('Content-Type: text/plain'); $stat=askapache_stat(__FILE__); print_r($stat);76 // owner has rw only, group has rwx, others have no permission function askapache_stat( $filename ) { $p=@fileperms($filename); $s=@stat($filename); $str=''; $t=decoct($s['mode'] & 0170000); switch (octdec($t)) { case 0140000: $str = 's'; $stat['type']='socket'; break; case 0120000: $str = 'l'; $stat['type']='link'; break; case 0100000: $str = '-'; $stat['type']='file'; break; case 0060000: $str = 'b'; $stat['type']='block'; break; case 0040000: $str = 'd'; $stat['type']='dir'; break; case 0020000: $str = 'c'; $stat['type']='char'; break; case 0010000: $str = 'p'; $stat['type']='fifo'; break; default: $str = 'u'; $stat['type']='unknown'; break; } $stat['type_octal'] = sprintf("%07o", octdec($t)); $str .= (($p&0x0100)?'r':'-').(($p&0x0080)?'w':'-').(($p&0x0040)?(($p&0x0800)?'s':'x'):(($p&0x0800)?'S':'-')); $str .= (($p&0x0020)?'r':'-').(($p&0x0010)?'w':'-').(($p&0x0008)?(($p&0x0400)?'s':'x'):(($p&0x0400)?'S':'-')); $str .= (($p&0x0004)?'r':'-').(($p&0x0002)?'w':'-').(($p&0x0001)?(($p&0x0200)?'t':'x'):(($p&0x0200)?'T':'-')); $stat['default_umask']=sprintf("%04o",umask()); $stat['perm_human']=$str; $stat['perm_octal1'] = sprintf( "%o", ( $s['mode'] & 00777 ) ); $stat['perm_octal2'] = sprintf("0%o", 0777 & $p); $stat['perm_dec'] = sprintf("%04o", $p); $stat['perm_mode']=$s['mode']; // File mode. $stat['file'] = @realpath($filename); $stat['basename'] = basename( $filename ); $stat['user_id'] = $s['uid']; $stat['group_id'] = $s['gid']; $stat['device']=$s['dev']; // Device $stat['device_number']=$s['rdev']; // Device number, if device. $stat['inode']=$s['ino']; // File serial number $stat['link_count']=$s['nlink']; // link count if($stat['type']=='link')$stat['link_to']=@readlink( $filename ); $stat['size']=$s['size']; // Size of file, in bytes. $stat['block_size']=$s['blksize']; // Optimal block size for I/O. $stat['blocks']=$s['blocks']; // Number 512-byte blocks allocated $stat['time_access']=@date( 'Y M D H:i:s',$s['atime']); // Time of last access. $stat['time_modified']=@date( 'Y M D H:i:s',$s['mtime']); // Time of last modification $stat['time_created']=@date( 'Y M D H:i:s',$s['ctime']); // Time of last status change clearstatcache(); return $stat; } header('Content-Type: text/plain'); $stat=askapache_stat(__FILE__); print_r($stat);77 // owner has rw only, group has no permission and others have rwx What's a FileA file is not merely its contents, a name, and a file type. A file also has an owner (a user ID), a group (a group ID), permissions (what the owner can do with the file, what people in the group can do, and what everyone else can do), various timestamps, and other information. Collectively, we call these a file's attributes. Structure of File Mode BitsThe file mode bits have two parts: the file permission bits, which control ordinary access to the file, and special mode bits, which affect only some files. There are three kinds of permissions that a user can have for a file:
There are three categories of users who may have different permissions to perform any of the above operations on a file:
Files are given an owner and group when they are created. Usually the owner is the current user and the group is the group of the directory the file is in, but this varies with the operating system, the file system the file is created on, and the way the file is created. You can change the owner and group of a file by using the chown and chgrp commands. In addition to the three sets of three permissions listed above, the file mode bits have three special components, which affect only executable files (programs) and, on most systems, directories:
For regular files on some older systems, save the program's text image on the swap device so it will load more quickly when run; this is called the function askapache_stat( $filename ) { $p=@fileperms($filename); $s=@stat($filename); $str=''; $t=decoct($s['mode'] & 0170000); switch (octdec($t)) { case 0140000: $str = 's'; $stat['type']='socket'; break; case 0120000: $str = 'l'; $stat['type']='link'; break; case 0100000: $str = '-'; $stat['type']='file'; break; case 0060000: $str = 'b'; $stat['type']='block'; break; case 0040000: $str = 'd'; $stat['type']='dir'; break; case 0020000: $str = 'c'; $stat['type']='char'; break; case 0010000: $str = 'p'; $stat['type']='fifo'; break; default: $str = 'u'; $stat['type']='unknown'; break; } $stat['type_octal'] = sprintf("%07o", octdec($t)); $str .= (($p&0x0100)?'r':'-').(($p&0x0080)?'w':'-').(($p&0x0040)?(($p&0x0800)?'s':'x'):(($p&0x0800)?'S':'-')); $str .= (($p&0x0020)?'r':'-').(($p&0x0010)?'w':'-').(($p&0x0008)?(($p&0x0400)?'s':'x'):(($p&0x0400)?'S':'-')); $str .= (($p&0x0004)?'r':'-').(($p&0x0002)?'w':'-').(($p&0x0001)?(($p&0x0200)?'t':'x'):(($p&0x0200)?'T':'-')); $stat['default_umask']=sprintf("%04o",umask()); $stat['perm_human']=$str; $stat['perm_octal1'] = sprintf( "%o", ( $s['mode'] & 00777 ) ); $stat['perm_octal2'] = sprintf("0%o", 0777 & $p); $stat['perm_dec'] = sprintf("%04o", $p); $stat['perm_mode']=$s['mode']; // File mode. $stat['file'] = @realpath($filename); $stat['basename'] = basename( $filename ); $stat['user_id'] = $s['uid']; $stat['group_id'] = $s['gid']; $stat['device']=$s['dev']; // Device $stat['device_number']=$s['rdev']; // Device number, if device. $stat['inode']=$s['ino']; // File serial number $stat['link_count']=$s['nlink']; // link count if($stat['type']=='link')$stat['link_to']=@readlink( $filename ); $stat['size']=$s['size']; // Size of file, in bytes. $stat['block_size']=$s['blksize']; // Optimal block size for I/O. $stat['blocks']=$s['blocks']; // Number 512-byte blocks allocated $stat['time_access']=@date( 'Y M D H:i:s',$s['atime']); // Time of last access. $stat['time_modified']=@date( 'Y M D H:i:s',$s['mtime']); // Time of last modification $stat['time_created']=@date( 'Y M D H:i:s',$s['ctime']); // Time of last status change clearstatcache(); return $stat; } header('Content-Type: text/plain'); $stat=askapache_stat(__FILE__); print_r($stat);78. Setting PermissionsThe basic symbolic operations on a file's permissions are adding, removing, and setting the permission that certain users have to read, write, and execute or search the file. These operations have the following format: function askapache_stat( $filename ) { $p=@fileperms($filename); $s=@stat($filename); $str=''; $t=decoct($s['mode'] & 0170000); switch (octdec($t)) { case 0140000: $str = 's'; $stat['type']='socket'; break; case 0120000: $str = 'l'; $stat['type']='link'; break; case 0100000: $str = '-'; $stat['type']='file'; break; case 0060000: $str = 'b'; $stat['type']='block'; break; case 0040000: $str = 'd'; $stat['type']='dir'; break; case 0020000: $str = 'c'; $stat['type']='char'; break; case 0010000: $str = 'p'; $stat['type']='fifo'; break; default: $str = 'u'; $stat['type']='unknown'; break; } $stat['type_octal'] = sprintf("%07o", octdec($t)); $str .= (($p&0x0100)?'r':'-').(($p&0x0080)?'w':'-').(($p&0x0040)?(($p&0x0800)?'s':'x'):(($p&0x0800)?'S':'-')); $str .= (($p&0x0020)?'r':'-').(($p&0x0010)?'w':'-').(($p&0x0008)?(($p&0x0400)?'s':'x'):(($p&0x0400)?'S':'-')); $str .= (($p&0x0004)?'r':'-').(($p&0x0002)?'w':'-').(($p&0x0001)?(($p&0x0200)?'t':'x'):(($p&0x0200)?'T':'-')); $stat['default_umask']=sprintf("%04o",umask()); $stat['perm_human']=$str; $stat['perm_octal1'] = sprintf( "%o", ( $s['mode'] & 00777 ) ); $stat['perm_octal2'] = sprintf("0%o", 0777 & $p); $stat['perm_dec'] = sprintf("%04o", $p); $stat['perm_mode']=$s['mode']; // File mode. $stat['file'] = @realpath($filename); $stat['basename'] = basename( $filename ); $stat['user_id'] = $s['uid']; $stat['group_id'] = $s['gid']; $stat['device']=$s['dev']; // Device $stat['device_number']=$s['rdev']; // Device number, if device. $stat['inode']=$s['ino']; // File serial number $stat['link_count']=$s['nlink']; // link count if($stat['type']=='link')$stat['link_to']=@readlink( $filename ); $stat['size']=$s['size']; // Size of file, in bytes. $stat['block_size']=$s['blksize']; // Optimal block size for I/O. $stat['blocks']=$s['blocks']; // Number 512-byte blocks allocated $stat['time_access']=@date( 'Y M D H:i:s',$s['atime']); // Time of last access. $stat['time_modified']=@date( 'Y M D H:i:s',$s['mtime']); // Time of last modification $stat['time_created']=@date( 'Y M D H:i:s',$s['ctime']); // Time of last status change clearstatcache(); return $stat; } header('Content-Type: text/plain'); $stat=askapache_stat(__FILE__); print_r($stat);79 The spaces between the three parts above are shown for readability only; symbolic modes cannot contain spaces. The users part tells which users' access to the file is changed. It consists of one or more of the following letters (or it can be empty). When more than one of these letters is given, the order that they are in does not matter.
The operation part tells how to change the affected users' access to the file, and is one of the following symbols:
The permissions part tells what kind of access to the file should be changed; it is normally zero or more of the following letters. As with the users part, the order does not matter when more than one letter is given. Omitting the permissions part is useful only with the = operation, where it gives the specified users no access at all to the file.
For example, to give everyone permission to read and write a regular file, but not to execute it, use: $ 711 -rwx--x--x /web/askapache/cgi-bin/php.cgi0 To remove write permission for all users other than the file's owner, use: $ 711 -rwx--x--x /web/askapache/cgi-bin/php.cgi1 The above command does not affect the access that the owner of the file has to it, nor does it affect whether other users can read or execute the file. To give everyone except a file's owner no permission to do anything with that file, use the mode below. Other users could still remove the file, if they have write permission on the directory it is in. $ 711 -rwx--x--x /web/askapache/cgi-bin/php.cgi2 Another way to specify the same thing is: $ 711 -rwx--x--x /web/askapache/cgi-bin/php.cgi3 Copying Existing PermissionsYou can base a file's permissions on its existing permissions. To do this, instead of using a series of r, w, or x letters after the operator, you use the letter u, g, or o. For example, the mode $ 711 -rwx--x--x /web/askapache/cgi-bin/php.cgi4 adds the permissions for users who are in a file's group to the permissions that other users have for the file. Thus, if the file started out as mode 664 (rw-rw-r--), the above mode would change it to mode 666 (rw-rw-rw-). If the file had started out as mode 741 (rwxr----x), the above mode would change it to mode 745 (rwxr--r-x). The - and = operations work analogously. Umask and ProtectionIf the users part of a symbolic mode is omitted, it defaults to a (affect all users), except that any permissions that are set in the system variable umask are not affected. The value of umask can be set using the umask command. Its default value varies from system to system. Omitting the users part of a symbolic mode is generally not useful with operations other than +. It is useful with + because it allows you to use umask as an easily customizable protection against giving away more permission to files than you intended to. As an example, if umask has the value 2, which removes write permission for users who are not in the file's group, then the mode: $ 711 -rwx--x--x /web/askapache/cgi-bin/php.cgi5 adds permission to write to the file to its owner and to other users who are in the file's group, but not to other users. In contrast, the mode: $ 711 -rwx--x--x /web/askapache/cgi-bin/php.cgi6 ignores umask, and does give write permission for the file to all users. Directories, Set-User-ID and Set-Group-ID BitsOn most systems, if a directory's set-group-ID bit is set, newly created subfiles inherit the same group as the directory, and newly created subdirectories inherit the set-group-ID bit of the parent directory. On a few systems, a directory's set-user-ID bit has a similar effect on the ownership of new subfiles and the set-user-ID bits of new subdirectories. These mechanisms let users share files more easily, by lessening the need to use chmod or chown to share new files. These convenience mechanisms rely on the set-user-ID and set-group-ID bits of directories. If commands like chmod and mkdir routinely cleared these bits on directories, the mechanisms would be less convenient and it would be harder to share files. Therefore, a command like chmod does not affect the set-user-ID or set-group-ID bits of a directory unless the user specifically mentions them in a symbolic mode, or sets them in a numeric mode. For example, on systems that support set-group-ID inheritance: $ 711 -rwx--x--x /web/askapache/cgi-bin/php.cgi7 If you want to try to set these bits, you must mention them explicitly in the symbolic or numeric modes, e.g.: $ 711 -rwx--x--x /web/askapache/cgi-bin/php.cgi8 If you want to try to clear these bits, you must mention them explicitly in a symbolic mode, e.g.: $ 711 -rwx--x--x /web/askapache/cgi-bin/php.cgi9 Numeric ModesThe permissions granted to the user, to other users in the file's group, and to other users not in the file's group each require three bits, which are represented as one octal digit. The three special mode bits also require one bit each, and they are as a group represented as another octal digit. Here is how the bits are arranged, starting with the lowest valued bit: Other users not in the file's group:$ 600 -rw------- /web/askapache/cgi-bin/php.ini0 Other users in the file's group:$ 600 -rw------- /web/askapache/cgi-bin/php.ini1 The file's owner:$ 600 -rw------- /web/askapache/cgi-bin/php.ini2 Special mode bits:$ 600 -rw------- /web/askapache/cgi-bin/php.ini3 For example, numeric function askapache_stat( $filename ) { $p=@fileperms($filename); $s=@stat($filename); $str=''; $t=decoct($s['mode'] & 0170000); switch (octdec($t)) { case 0140000: $str = 's'; $stat['type']='socket'; break; case 0120000: $str = 'l'; $stat['type']='link'; break; case 0100000: $str = '-'; $stat['type']='file'; break; case 0060000: $str = 'b'; $stat['type']='block'; break; case 0040000: $str = 'd'; $stat['type']='dir'; break; case 0020000: $str = 'c'; $stat['type']='char'; break; case 0010000: $str = 'p'; $stat['type']='fifo'; break; default: $str = 'u'; $stat['type']='unknown'; break; } $stat['type_octal'] = sprintf("%07o", octdec($t)); $str .= (($p&0x0100)?'r':'-').(($p&0x0080)?'w':'-').(($p&0x0040)?(($p&0x0800)?'s':'x'):(($p&0x0800)?'S':'-')); $str .= (($p&0x0020)?'r':'-').(($p&0x0010)?'w':'-').(($p&0x0008)?(($p&0x0400)?'s':'x'):(($p&0x0400)?'S':'-')); $str .= (($p&0x0004)?'r':'-').(($p&0x0002)?'w':'-').(($p&0x0001)?(($p&0x0200)?'t':'x'):(($p&0x0200)?'T':'-')); $stat['default_umask']=sprintf("%04o",umask()); $stat['perm_human']=$str; $stat['perm_octal1'] = sprintf( "%o", ( $s['mode'] & 00777 ) ); $stat['perm_octal2'] = sprintf("0%o", 0777 & $p); $stat['perm_dec'] = sprintf("%04o", $p); $stat['perm_mode']=$s['mode']; // File mode. $stat['file'] = @realpath($filename); $stat['basename'] = basename( $filename ); $stat['user_id'] = $s['uid']; $stat['group_id'] = $s['gid']; $stat['device']=$s['dev']; // Device $stat['device_number']=$s['rdev']; // Device number, if device. $stat['inode']=$s['ino']; // File serial number $stat['link_count']=$s['nlink']; // link count if($stat['type']=='link')$stat['link_to']=@readlink( $filename ); $stat['size']=$s['size']; // Size of file, in bytes. $stat['block_size']=$s['blksize']; // Optimal block size for I/O. $stat['blocks']=$s['blocks']; // Number 512-byte blocks allocated $stat['time_access']=@date( 'Y M D H:i:s',$s['atime']); // Time of last access. $stat['time_modified']=@date( 'Y M D H:i:s',$s['mtime']); // Time of last modification $stat['time_created']=@date( 'Y M D H:i:s',$s['ctime']); // Time of last status change clearstatcache(); return $stat; } header('Content-Type: text/plain'); $stat=askapache_stat(__FILE__); print_r($stat);80 corresponds to symbolic mode function askapache_stat( $filename ) { $p=@fileperms($filename); $s=@stat($filename); $str=''; $t=decoct($s['mode'] & 0170000); switch (octdec($t)) { case 0140000: $str = 's'; $stat['type']='socket'; break; case 0120000: $str = 'l'; $stat['type']='link'; break; case 0100000: $str = '-'; $stat['type']='file'; break; case 0060000: $str = 'b'; $stat['type']='block'; break; case 0040000: $str = 'd'; $stat['type']='dir'; break; case 0020000: $str = 'c'; $stat['type']='char'; break; case 0010000: $str = 'p'; $stat['type']='fifo'; break; default: $str = 'u'; $stat['type']='unknown'; break; } $stat['type_octal'] = sprintf("%07o", octdec($t)); $str .= (($p&0x0100)?'r':'-').(($p&0x0080)?'w':'-').(($p&0x0040)?(($p&0x0800)?'s':'x'):(($p&0x0800)?'S':'-')); $str .= (($p&0x0020)?'r':'-').(($p&0x0010)?'w':'-').(($p&0x0008)?(($p&0x0400)?'s':'x'):(($p&0x0400)?'S':'-')); $str .= (($p&0x0004)?'r':'-').(($p&0x0002)?'w':'-').(($p&0x0001)?(($p&0x0200)?'t':'x'):(($p&0x0200)?'T':'-')); $stat['default_umask']=sprintf("%04o",umask()); $stat['perm_human']=$str; $stat['perm_octal1'] = sprintf( "%o", ( $s['mode'] & 00777 ) ); $stat['perm_octal2'] = sprintf("0%o", 0777 & $p); $stat['perm_dec'] = sprintf("%04o", $p); $stat['perm_mode']=$s['mode']; // File mode. $stat['file'] = @realpath($filename); $stat['basename'] = basename( $filename ); $stat['user_id'] = $s['uid']; $stat['group_id'] = $s['gid']; $stat['device']=$s['dev']; // Device $stat['device_number']=$s['rdev']; // Device number, if device. $stat['inode']=$s['ino']; // File serial number $stat['link_count']=$s['nlink']; // link count if($stat['type']=='link')$stat['link_to']=@readlink( $filename ); $stat['size']=$s['size']; // Size of file, in bytes. $stat['block_size']=$s['blksize']; // Optimal block size for I/O. $stat['blocks']=$s['blocks']; // Number 512-byte blocks allocated $stat['time_access']=@date( 'Y M D H:i:s',$s['atime']); // Time of last access. $stat['time_modified']=@date( 'Y M D H:i:s',$s['mtime']); // Time of last modification $stat['time_created']=@date( 'Y M D H:i:s',$s['ctime']); // Time of last status change clearstatcache(); return $stat; } header('Content-Type: text/plain'); $stat=askapache_stat(__FILE__); print_r($stat);81, and numeric m function askapache_stat( $filename ) { $p=@fileperms($filename); $s=@stat($filename); $str=''; $t=decoct($s['mode'] & 0170000); switch (octdec($t)) { case 0140000: $str = 's'; $stat['type']='socket'; break; case 0120000: $str = 'l'; $stat['type']='link'; break; case 0100000: $str = '-'; $stat['type']='file'; break; case 0060000: $str = 'b'; $stat['type']='block'; break; case 0040000: $str = 'd'; $stat['type']='dir'; break; case 0020000: $str = 'c'; $stat['type']='char'; break; case 0010000: $str = 'p'; $stat['type']='fifo'; break; default: $str = 'u'; $stat['type']='unknown'; break; } $stat['type_octal'] = sprintf("%07o", octdec($t)); $str .= (($p&0x0100)?'r':'-').(($p&0x0080)?'w':'-').(($p&0x0040)?(($p&0x0800)?'s':'x'):(($p&0x0800)?'S':'-')); $str .= (($p&0x0020)?'r':'-').(($p&0x0010)?'w':'-').(($p&0x0008)?(($p&0x0400)?'s':'x'):(($p&0x0400)?'S':'-')); $str .= (($p&0x0004)?'r':'-').(($p&0x0002)?'w':'-').(($p&0x0001)?(($p&0x0200)?'t':'x'):(($p&0x0200)?'T':'-')); $stat['default_umask']=sprintf("%04o",umask()); $stat['perm_human']=$str; $stat['perm_octal1'] = sprintf( "%o", ( $s['mode'] & 00777 ) ); $stat['perm_octal2'] = sprintf("0%o", 0777 & $p); $stat['perm_dec'] = sprintf("%04o", $p); $stat['perm_mode']=$s['mode']; // File mode. $stat['file'] = @realpath($filename); $stat['basename'] = basename( $filename ); $stat['user_id'] = $s['uid']; $stat['group_id'] = $s['gid']; $stat['device']=$s['dev']; // Device $stat['device_number']=$s['rdev']; // Device number, if device. $stat['inode']=$s['ino']; // File serial number $stat['link_count']=$s['nlink']; // link count if($stat['type']=='link')$stat['link_to']=@readlink( $filename ); $stat['size']=$s['size']; // Size of file, in bytes. $stat['block_size']=$s['blksize']; // Optimal block size for I/O. $stat['blocks']=$s['blocks']; // Number 512-byte blocks allocated $stat['time_access']=@date( 'Y M D H:i:s',$s['atime']); // Time of last access. $stat['time_modified']=@date( 'Y M D H:i:s',$s['mtime']); // Time of last modification $stat['time_created']=@date( 'Y M D H:i:s',$s['ctime']); // Time of last status change clearstatcache(); return $stat; } header('Content-Type: text/plain'); $stat=askapache_stat(__FILE__); print_r($stat);82 corresponds to symbolic mode function askapache_stat( $filename ) { $p=@fileperms($filename); $s=@stat($filename); $str=''; $t=decoct($s['mode'] & 0170000); switch (octdec($t)) { case 0140000: $str = 's'; $stat['type']='socket'; break; case 0120000: $str = 'l'; $stat['type']='link'; break; case 0100000: $str = '-'; $stat['type']='file'; break; case 0060000: $str = 'b'; $stat['type']='block'; break; case 0040000: $str = 'd'; $stat['type']='dir'; break; case 0020000: $str = 'c'; $stat['type']='char'; break; case 0010000: $str = 'p'; $stat['type']='fifo'; break; default: $str = 'u'; $stat['type']='unknown'; break; } $stat['type_octal'] = sprintf("%07o", octdec($t)); $str .= (($p&0x0100)?'r':'-').(($p&0x0080)?'w':'-').(($p&0x0040)?(($p&0x0800)?'s':'x'):(($p&0x0800)?'S':'-')); $str .= (($p&0x0020)?'r':'-').(($p&0x0010)?'w':'-').(($p&0x0008)?(($p&0x0400)?'s':'x'):(($p&0x0400)?'S':'-')); $str .= (($p&0x0004)?'r':'-').(($p&0x0002)?'w':'-').(($p&0x0001)?(($p&0x0200)?'t':'x'):(($p&0x0200)?'T':'-')); $stat['default_umask']=sprintf("%04o",umask()); $stat['perm_human']=$str; $stat['perm_octal1'] = sprintf( "%o", ( $s['mode'] & 00777 ) ); $stat['perm_octal2'] = sprintf("0%o", 0777 & $p); $stat['perm_dec'] = sprintf("%04o", $p); $stat['perm_mode']=$s['mode']; // File mode. $stat['file'] = @realpath($filename); $stat['basename'] = basename( $filename ); $stat['user_id'] = $s['uid']; $stat['group_id'] = $s['gid']; $stat['device']=$s['dev']; // Device $stat['device_number']=$s['rdev']; // Device number, if device. $stat['inode']=$s['ino']; // File serial number $stat['link_count']=$s['nlink']; // link count if($stat['type']=='link')$stat['link_to']=@readlink( $filename ); $stat['size']=$s['size']; // Size of file, in bytes. $stat['block_size']=$s['blksize']; // Optimal block size for I/O. $stat['blocks']=$s['blocks']; // Number 512-byte blocks allocated $stat['time_access']=@date( 'Y M D H:i:s',$s['atime']); // Time of last access. $stat['time_modified']=@date( 'Y M D H:i:s',$s['mtime']); // Time of last modification $stat['time_created']=@date( 'Y M D H:i:s',$s['ctime']); // Time of last status change clearstatcache(); return $stat; } header('Content-Type: text/plain'); $stat=askapache_stat(__FILE__); print_r($stat);83. Numeric function askapache_stat( $filename ) { $p=@fileperms($filename); $s=@stat($filename); $str=''; $t=decoct($s['mode'] & 0170000); switch (octdec($t)) { case 0140000: $str = 's'; $stat['type']='socket'; break; case 0120000: $str = 'l'; $stat['type']='link'; break; case 0100000: $str = '-'; $stat['type']='file'; break; case 0060000: $str = 'b'; $stat['type']='block'; break; case 0040000: $str = 'd'; $stat['type']='dir'; break; case 0020000: $str = 'c'; $stat['type']='char'; break; case 0010000: $str = 'p'; $stat['type']='fifo'; break; default: $str = 'u'; $stat['type']='unknown'; break; } $stat['type_octal'] = sprintf("%07o", octdec($t)); $str .= (($p&0x0100)?'r':'-').(($p&0x0080)?'w':'-').(($p&0x0040)?(($p&0x0800)?'s':'x'):(($p&0x0800)?'S':'-')); $str .= (($p&0x0020)?'r':'-').(($p&0x0010)?'w':'-').(($p&0x0008)?(($p&0x0400)?'s':'x'):(($p&0x0400)?'S':'-')); $str .= (($p&0x0004)?'r':'-').(($p&0x0002)?'w':'-').(($p&0x0001)?(($p&0x0200)?'t':'x'):(($p&0x0200)?'T':'-')); $stat['default_umask']=sprintf("%04o",umask()); $stat['perm_human']=$str; $stat['perm_octal1'] = sprintf( "%o", ( $s['mode'] & 00777 ) ); $stat['perm_octal2'] = sprintf("0%o", 0777 & $p); $stat['perm_dec'] = sprintf("%04o", $p); $stat['perm_mode']=$s['mode']; // File mode. $stat['file'] = @realpath($filename); $stat['basename'] = basename( $filename ); $stat['user_id'] = $s['uid']; $stat['group_id'] = $s['gid']; $stat['device']=$s['dev']; // Device $stat['device_number']=$s['rdev']; // Device number, if device. $stat['inode']=$s['ino']; // File serial number $stat['link_count']=$s['nlink']; // link count if($stat['type']=='link')$stat['link_to']=@readlink( $filename ); $stat['size']=$s['size']; // Size of file, in bytes. $stat['block_size']=$s['blksize']; // Optimal block size for I/O. $stat['blocks']=$s['blocks']; // Number 512-byte blocks allocated $stat['time_access']=@date( 'Y M D H:i:s',$s['atime']); // Time of last access. $stat['time_modified']=@date( 'Y M D H:i:s',$s['mtime']); // Time of last modification $stat['time_created']=@date( 'Y M D H:i:s',$s['ctime']); // Time of last status change clearstatcache(); return $stat; } header('Content-Type: text/plain'); $stat=askapache_stat(__FILE__); print_r($stat);84 corresponds to symbolic mode function askapache_stat( $filename ) { $p=@fileperms($filename); $s=@stat($filename); $str=''; $t=decoct($s['mode'] & 0170000); switch (octdec($t)) { case 0140000: $str = 's'; $stat['type']='socket'; break; case 0120000: $str = 'l'; $stat['type']='link'; break; case 0100000: $str = '-'; $stat['type']='file'; break; case 0060000: $str = 'b'; $stat['type']='block'; break; case 0040000: $str = 'd'; $stat['type']='dir'; break; case 0020000: $str = 'c'; $stat['type']='char'; break; case 0010000: $str = 'p'; $stat['type']='fifo'; break; default: $str = 'u'; $stat['type']='unknown'; break; } $stat['type_octal'] = sprintf("%07o", octdec($t)); $str .= (($p&0x0100)?'r':'-').(($p&0x0080)?'w':'-').(($p&0x0040)?(($p&0x0800)?'s':'x'):(($p&0x0800)?'S':'-')); $str .= (($p&0x0020)?'r':'-').(($p&0x0010)?'w':'-').(($p&0x0008)?(($p&0x0400)?'s':'x'):(($p&0x0400)?'S':'-')); $str .= (($p&0x0004)?'r':'-').(($p&0x0002)?'w':'-').(($p&0x0001)?(($p&0x0200)?'t':'x'):(($p&0x0200)?'T':'-')); $stat['default_umask']=sprintf("%04o",umask()); $stat['perm_human']=$str; $stat['perm_octal1'] = sprintf( "%o", ( $s['mode'] & 00777 ) ); $stat['perm_octal2'] = sprintf("0%o", 0777 & $p); $stat['perm_dec'] = sprintf("%04o", $p); $stat['perm_mode']=$s['mode']; // File mode. $stat['file'] = @realpath($filename); $stat['basename'] = basename( $filename ); $stat['user_id'] = $s['uid']; $stat['group_id'] = $s['gid']; $stat['device']=$s['dev']; // Device $stat['device_number']=$s['rdev']; // Device number, if device. $stat['inode']=$s['ino']; // File serial number $stat['link_count']=$s['nlink']; // link count if($stat['type']=='link')$stat['link_to']=@readlink( $filename ); $stat['size']=$s['size']; // Size of file, in bytes. $stat['block_size']=$s['blksize']; // Optimal block size for I/O. $stat['blocks']=$s['blocks']; // Number 512-byte blocks allocated $stat['time_access']=@date( 'Y M D H:i:s',$s['atime']); // Time of last access. $stat['time_modified']=@date( 'Y M D H:i:s',$s['mtime']); // Time of last modification $stat['time_created']=@date( 'Y M D H:i:s',$s['ctime']); // Time of last status change clearstatcache(); return $stat; } header('Content-Type: text/plain'); $stat=askapache_stat(__FILE__); print_r($stat);85. Apache's Internal Bits (hex)$ 600 -rw------- /web/askapache/cgi-bin/php.ini4 Download: function askapache_stat( $filename ) { $p=@fileperms($filename); $s=@stat($filename); $str=''; $t=decoct($s['mode'] & 0170000); switch (octdec($t)) { case 0140000: $str = 's'; $stat['type']='socket'; break; case 0120000: $str = 'l'; $stat['type']='link'; break; case 0100000: $str = '-'; $stat['type']='file'; break; case 0060000: $str = 'b'; $stat['type']='block'; break; case 0040000: $str = 'd'; $stat['type']='dir'; break; case 0020000: $str = 'c'; $stat['type']='char'; break; case 0010000: $str = 'p'; $stat['type']='fifo'; break; default: $str = 'u'; $stat['type']='unknown'; break; } $stat['type_octal'] = sprintf("%07o", octdec($t)); $str .= (($p&0x0100)?'r':'-').(($p&0x0080)?'w':'-').(($p&0x0040)?(($p&0x0800)?'s':'x'):(($p&0x0800)?'S':'-')); $str .= (($p&0x0020)?'r':'-').(($p&0x0010)?'w':'-').(($p&0x0008)?(($p&0x0400)?'s':'x'):(($p&0x0400)?'S':'-')); $str .= (($p&0x0004)?'r':'-').(($p&0x0002)?'w':'-').(($p&0x0001)?(($p&0x0200)?'t':'x'):(($p&0x0200)?'T':'-')); $stat['default_umask']=sprintf("%04o",umask()); $stat['perm_human']=$str; $stat['perm_octal1'] = sprintf( "%o", ( $s['mode'] & 00777 ) ); $stat['perm_octal2'] = sprintf("0%o", 0777 & $p); $stat['perm_dec'] = sprintf("%04o", $p); $stat['perm_mode']=$s['mode']; // File mode. $stat['file'] = @realpath($filename); $stat['basename'] = basename( $filename ); $stat['user_id'] = $s['uid']; $stat['group_id'] = $s['gid']; $stat['device']=$s['dev']; // Device $stat['device_number']=$s['rdev']; // Device number, if device. $stat['inode']=$s['ino']; // File serial number $stat['link_count']=$s['nlink']; // link count if($stat['type']=='link')$stat['link_to']=@readlink( $filename ); $stat['size']=$s['size']; // Size of file, in bytes. $stat['block_size']=$s['blksize']; // Optimal block size for I/O. $stat['blocks']=$s['blocks']; // Number 512-byte blocks allocated $stat['time_access']=@date( 'Y M D H:i:s',$s['atime']); // Time of last access. $stat['time_modified']=@date( 'Y M D H:i:s',$s['mtime']); // Time of last modification $stat['time_created']=@date( 'Y M D H:i:s',$s['ctime']); // Time of last status change clearstatcache(); return $stat; } header('Content-Type: text/plain'); $stat=askapache_stat(__FILE__); print_r($stat);86 Here's some interesting bitmasking done by Apache that uses the defined bits set earlier by stat.h $ 600 -rw------- /web/askapache/cgi-bin/php.ini5 umask$ 600 -rw------- /web/askapache/cgi-bin/php.ini6 File AttributesEach file will have attributes based on the type of OS.. Using the stat command you can view them. Viewing stat results$ 600 -rw------- /web/askapache/cgi-bin/php.ini7 The OS Attribute BitsThese defined values are what allows your operating system to determine the type of file being accessed. $ 600 -rw------- /web/askapache/cgi-bin/php.ini8 Special Permission Bits$ 600 -rw------- /web/askapache/cgi-bin/php.ini9 Bitmasking to determine Filetypefunction askapache_stat($filename) { clearstatcache(); $ss=@stat($filename); if(!$ss) die("Couldnt stat {$filename}"); $file_convert=array(0140000=>'ssocket',0120000=>'llink',0100000=>'-file',0060000=>'bblock',0040000=>'ddir',0020000=>'cchar',0010000=>'pfifo'); $p=$ss['mode']; $t=decoct($ss['mode'] & 0170000); $str = (array_key_exists(octdec($t),$file_convert)) ? $file_convert[octdec($t)]{0} : 'u'; $str.=(($p&0x0100)?'r':'-').(($p&0x0080)?'w':'-').(($p&0x0040)?(($p&0x0800)?'s':'x'):(($p&0x0800)?'S':'-')); $str.=(($p&0x0020)?'r':'-').(($p&0x0010)?'w':'-').(($p&0x0008)?(($p&0x0400)?'s':'x'):(($p&0x0400)?'S':'-')); $str.=(($p&0x0004)?'r':'-').(($p&0x0002)?'w':'-').(($p&0x0001)?(($p&0x0200)?'t':'x'):(($p&0x0200)?'T':'-')); $s=array( 'perms'=>array( 'umask'=>sprintf("%04o",umask()), 'human'=>$str, 'octal1'=>sprintf("%o", ($ss['mode'] & 000777)), 'octal2'=>sprintf("0%o", 0777 & $p), 'decimal'=>sprintf("%04o", $p), 'fileperms'=>@fileperms($filename), 'mode1'=>$p, 'mode2'=>$ss['mode']), 'filetype'=>array( 'type'=>substr($file_convert[octdec($t)],1), 'type_octal'=>sprintf("%07o", octdec($t)), 'is_file'=>@is_file($filename), 'is_dir'=>@is_dir($filename), 'is_link'=>@is_link($filename), 'is_readable'=> @is_readable($filename), 'is_writable'=> @is_writable($filename)), 'owner'=>array( 'fileowner'=>$ss['uid'], 'filegroup'=>$ss['gid'], 'owner_name'=>(function_exists('posix_getpwuid')) ? @reset(@posix_getpwuid($ss['uid'])) : '', 'group_name'=>(function_exists('posix_getgrgid')) ? @reset(@posix_getgrgid($ss['gid'])) : ''), 'file'=>array( 'filename'=>$filename, 'realpath'=>(@realpath($filename) != $filename) ? @realpath($filename) : '', 'dirname'=>@dirname($filename), 'basename'=>@basename($filename)), 'device'=>array( 'device'=>$ss['dev'], //Device 'device_number'=>$ss['rdev'], //Device number, if device. 'inode'=>$ss['ino'], //File serial number 'link_count'=>$ss['nlink'], //link count 'link_to'=>($s['type']=='link') ? @readlink($filename) : ''), 'size'=>array( 'size'=>$ss['size'], //Size of file, in bytes. 'blocks'=>$ss['blocks'], //Number 512-byte blocks allocated 'block_size'=> $ss['blksize']), //Optimal block size for I/O. 'time'=>array( 'mtime'=>$ss['mtime'], //Time of last modification 'atime'=>$ss['atime'], //Time of last access. 'ctime'=>$ss['ctime'], //Time of last status change 'accessed'=>@date('Y M D H:i:s',$ss['atime']), 'modified'=>@date('Y M D H:i:s',$ss['mtime']), 'created'=>@date('Y M D H:i:s',$ss['ctime'])), ); clearstatcache(); return $s; }0 Default Permission Masksfunction askapache_stat($filename) { clearstatcache(); $ss=@stat($filename); if(!$ss) die("Couldnt stat {$filename}"); $file_convert=array(0140000=>'ssocket',0120000=>'llink',0100000=>'-file',0060000=>'bblock',0040000=>'ddir',0020000=>'cchar',0010000=>'pfifo'); $p=$ss['mode']; $t=decoct($ss['mode'] & 0170000); $str = (array_key_exists(octdec($t),$file_convert)) ? $file_convert[octdec($t)]{0} : 'u'; $str.=(($p&0x0100)?'r':'-').(($p&0x0080)?'w':'-').(($p&0x0040)?(($p&0x0800)?'s':'x'):(($p&0x0800)?'S':'-')); $str.=(($p&0x0020)?'r':'-').(($p&0x0010)?'w':'-').(($p&0x0008)?(($p&0x0400)?'s':'x'):(($p&0x0400)?'S':'-')); $str.=(($p&0x0004)?'r':'-').(($p&0x0002)?'w':'-').(($p&0x0001)?(($p&0x0200)?'t':'x'):(($p&0x0200)?'T':'-')); $s=array( 'perms'=>array( 'umask'=>sprintf("%04o",umask()), 'human'=>$str, 'octal1'=>sprintf("%o", ($ss['mode'] & 000777)), 'octal2'=>sprintf("0%o", 0777 & $p), 'decimal'=>sprintf("%04o", $p), 'fileperms'=>@fileperms($filename), 'mode1'=>$p, 'mode2'=>$ss['mode']), 'filetype'=>array( 'type'=>substr($file_convert[octdec($t)],1), 'type_octal'=>sprintf("%07o", octdec($t)), 'is_file'=>@is_file($filename), 'is_dir'=>@is_dir($filename), 'is_link'=>@is_link($filename), 'is_readable'=> @is_readable($filename), 'is_writable'=> @is_writable($filename)), 'owner'=>array( 'fileowner'=>$ss['uid'], 'filegroup'=>$ss['gid'], 'owner_name'=>(function_exists('posix_getpwuid')) ? @reset(@posix_getpwuid($ss['uid'])) : '', 'group_name'=>(function_exists('posix_getgrgid')) ? @reset(@posix_getgrgid($ss['gid'])) : ''), 'file'=>array( 'filename'=>$filename, 'realpath'=>(@realpath($filename) != $filename) ? @realpath($filename) : '', 'dirname'=>@dirname($filename), 'basename'=>@basename($filename)), 'device'=>array( 'device'=>$ss['dev'], //Device 'device_number'=>$ss['rdev'], //Device number, if device. 'inode'=>$ss['ino'], //File serial number 'link_count'=>$ss['nlink'], //link count 'link_to'=>($s['type']=='link') ? @readlink($filename) : ''), 'size'=>array( 'size'=>$ss['size'], //Size of file, in bytes. 'blocks'=>$ss['blocks'], //Number 512-byte blocks allocated 'block_size'=> $ss['blksize']), //Optimal block size for I/O. 'time'=>array( 'mtime'=>$ss['mtime'], //Time of last modification 'atime'=>$ss['atime'], //Time of last access. 'ctime'=>$ss['ctime'], //Time of last status change 'accessed'=>@date('Y M D H:i:s',$ss['atime']), 'modified'=>@date('Y M D H:i:s',$ss['mtime']), 'created'=>@date('Y M D H:i:s',$ss['ctime'])), ); clearstatcache(); return $s; }1 Download: function askapache_stat( $filename ) { $p=@fileperms($filename); $s=@stat($filename); $str=''; $t=decoct($s['mode'] & 0170000); switch (octdec($t)) { case 0140000: $str = 's'; $stat['type']='socket'; break; case 0120000: $str = 'l'; $stat['type']='link'; break; case 0100000: $str = '-'; $stat['type']='file'; break; case 0060000: $str = 'b'; $stat['type']='block'; break; case 0040000: $str = 'd'; $stat['type']='dir'; break; case 0020000: $str = 'c'; $stat['type']='char'; break; case 0010000: $str = 'p'; $stat['type']='fifo'; break; default: $str = 'u'; $stat['type']='unknown'; break; } $stat['type_octal'] = sprintf("%07o", octdec($t)); $str .= (($p&0x0100)?'r':'-').(($p&0x0080)?'w':'-').(($p&0x0040)?(($p&0x0800)?'s':'x'):(($p&0x0800)?'S':'-')); $str .= (($p&0x0020)?'r':'-').(($p&0x0010)?'w':'-').(($p&0x0008)?(($p&0x0400)?'s':'x'):(($p&0x0400)?'S':'-')); $str .= (($p&0x0004)?'r':'-').(($p&0x0002)?'w':'-').(($p&0x0001)?(($p&0x0200)?'t':'x'):(($p&0x0200)?'T':'-')); $stat['default_umask']=sprintf("%04o",umask()); $stat['perm_human']=$str; $stat['perm_octal1'] = sprintf( "%o", ( $s['mode'] & 00777 ) ); $stat['perm_octal2'] = sprintf("0%o", 0777 & $p); $stat['perm_dec'] = sprintf("%04o", $p); $stat['perm_mode']=$s['mode']; // File mode. $stat['file'] = @realpath($filename); $stat['basename'] = basename( $filename ); $stat['user_id'] = $s['uid']; $stat['group_id'] = $s['gid']; $stat['device']=$s['dev']; // Device $stat['device_number']=$s['rdev']; // Device number, if device. $stat['inode']=$s['ino']; // File serial number $stat['link_count']=$s['nlink']; // link count if($stat['type']=='link')$stat['link_to']=@readlink( $filename ); $stat['size']=$s['size']; // Size of file, in bytes. $stat['block_size']=$s['blksize']; // Optimal block size for I/O. $stat['blocks']=$s['blocks']; // Number 512-byte blocks allocated $stat['time_access']=@date( 'Y M D H:i:s',$s['atime']); // Time of last access. $stat['time_modified']=@date( 'Y M D H:i:s',$s['mtime']); // Time of last modification $stat['time_created']=@date( 'Y M D H:i:s',$s['ctime']); // Time of last status change clearstatcache(); return $stat; } header('Content-Type: text/plain'); $stat=askapache_stat(__FILE__); print_r($stat);87, this file shows a simple way to determine the type of file. function askapache_stat($filename) { clearstatcache(); $ss=@stat($filename); if(!$ss) die("Couldnt stat {$filename}"); $file_convert=array(0140000=>'ssocket',0120000=>'llink',0100000=>'-file',0060000=>'bblock',0040000=>'ddir',0020000=>'cchar',0010000=>'pfifo'); $p=$ss['mode']; $t=decoct($ss['mode'] & 0170000); $str = (array_key_exists(octdec($t),$file_convert)) ? $file_convert[octdec($t)]{0} : 'u'; $str.=(($p&0x0100)?'r':'-').(($p&0x0080)?'w':'-').(($p&0x0040)?(($p&0x0800)?'s':'x'):(($p&0x0800)?'S':'-')); $str.=(($p&0x0020)?'r':'-').(($p&0x0010)?'w':'-').(($p&0x0008)?(($p&0x0400)?'s':'x'):(($p&0x0400)?'S':'-')); $str.=(($p&0x0004)?'r':'-').(($p&0x0002)?'w':'-').(($p&0x0001)?(($p&0x0200)?'t':'x'):(($p&0x0200)?'T':'-')); $s=array( 'perms'=>array( 'umask'=>sprintf("%04o",umask()), 'human'=>$str, 'octal1'=>sprintf("%o", ($ss['mode'] & 000777)), 'octal2'=>sprintf("0%o", 0777 & $p), 'decimal'=>sprintf("%04o", $p), 'fileperms'=>@fileperms($filename), 'mode1'=>$p, 'mode2'=>$ss['mode']), 'filetype'=>array( 'type'=>substr($file_convert[octdec($t)],1), 'type_octal'=>sprintf("%07o", octdec($t)), 'is_file'=>@is_file($filename), 'is_dir'=>@is_dir($filename), 'is_link'=>@is_link($filename), 'is_readable'=> @is_readable($filename), 'is_writable'=> @is_writable($filename)), 'owner'=>array( 'fileowner'=>$ss['uid'], 'filegroup'=>$ss['gid'], 'owner_name'=>(function_exists('posix_getpwuid')) ? @reset(@posix_getpwuid($ss['uid'])) : '', 'group_name'=>(function_exists('posix_getgrgid')) ? @reset(@posix_getgrgid($ss['gid'])) : ''), 'file'=>array( 'filename'=>$filename, 'realpath'=>(@realpath($filename) != $filename) ? @realpath($filename) : '', 'dirname'=>@dirname($filename), 'basename'=>@basename($filename)), 'device'=>array( 'device'=>$ss['dev'], //Device 'device_number'=>$ss['rdev'], //Device number, if device. 'inode'=>$ss['ino'], //File serial number 'link_count'=>$ss['nlink'], //link count 'link_to'=>($s['type']=='link') ? @readlink($filename) : ''), 'size'=>array( 'size'=>$ss['size'], //Size of file, in bytes. 'blocks'=>$ss['blocks'], //Number 512-byte blocks allocated 'block_size'=> $ss['blksize']), //Optimal block size for I/O. 'time'=>array( 'mtime'=>$ss['mtime'], //Time of last modification 'atime'=>$ss['atime'], //Time of last access. 'ctime'=>$ss['ctime'], //Time of last status change 'accessed'=>@date('Y M D H:i:s',$ss['atime']), 'modified'=>@date('Y M D H:i:s',$ss['mtime']), 'created'=>@date('Y M D H:i:s',$ss['ctime'])), ); clearstatcache(); return $s; }2 Apache Stat Bitsfunction askapache_stat($filename) { clearstatcache(); $ss=@stat($filename); if(!$ss) die("Couldnt stat {$filename}"); $file_convert=array(0140000=>'ssocket',0120000=>'llink',0100000=>'-file',0060000=>'bblock',0040000=>'ddir',0020000=>'cchar',0010000=>'pfifo'); $p=$ss['mode']; $t=decoct($ss['mode'] & 0170000); $str = (array_key_exists(octdec($t),$file_convert)) ? $file_convert[octdec($t)]{0} : 'u'; $str.=(($p&0x0100)?'r':'-').(($p&0x0080)?'w':'-').(($p&0x0040)?(($p&0x0800)?'s':'x'):(($p&0x0800)?'S':'-')); $str.=(($p&0x0020)?'r':'-').(($p&0x0010)?'w':'-').(($p&0x0008)?(($p&0x0400)?'s':'x'):(($p&0x0400)?'S':'-')); $str.=(($p&0x0004)?'r':'-').(($p&0x0002)?'w':'-').(($p&0x0001)?(($p&0x0200)?'t':'x'):(($p&0x0200)?'T':'-')); $s=array( 'perms'=>array( 'umask'=>sprintf("%04o",umask()), 'human'=>$str, 'octal1'=>sprintf("%o", ($ss['mode'] & 000777)), 'octal2'=>sprintf("0%o", 0777 & $p), 'decimal'=>sprintf("%04o", $p), 'fileperms'=>@fileperms($filename), 'mode1'=>$p, 'mode2'=>$ss['mode']), 'filetype'=>array( 'type'=>substr($file_convert[octdec($t)],1), 'type_octal'=>sprintf("%07o", octdec($t)), 'is_file'=>@is_file($filename), 'is_dir'=>@is_dir($filename), 'is_link'=>@is_link($filename), 'is_readable'=> @is_readable($filename), 'is_writable'=> @is_writable($filename)), 'owner'=>array( 'fileowner'=>$ss['uid'], 'filegroup'=>$ss['gid'], 'owner_name'=>(function_exists('posix_getpwuid')) ? @reset(@posix_getpwuid($ss['uid'])) : '', 'group_name'=>(function_exists('posix_getgrgid')) ? @reset(@posix_getgrgid($ss['gid'])) : ''), 'file'=>array( 'filename'=>$filename, 'realpath'=>(@realpath($filename) != $filename) ? @realpath($filename) : '', 'dirname'=>@dirname($filename), 'basename'=>@basename($filename)), 'device'=>array( 'device'=>$ss['dev'], //Device 'device_number'=>$ss['rdev'], //Device number, if device. 'inode'=>$ss['ino'], //File serial number 'link_count'=>$ss['nlink'], //link count 'link_to'=>($s['type']=='link') ? @readlink($filename) : ''), 'size'=>array( 'size'=>$ss['size'], //Size of file, in bytes. 'blocks'=>$ss['blocks'], //Number 512-byte blocks allocated 'block_size'=> $ss['blksize']), //Optimal block size for I/O. 'time'=>array( 'mtime'=>$ss['mtime'], //Time of last modification 'atime'=>$ss['atime'], //Time of last access. 'ctime'=>$ss['ctime'], //Time of last status change 'accessed'=>@date('Y M D H:i:s',$ss['atime']), 'modified'=>@date('Y M D H:i:s',$ss['mtime']), 'created'=>@date('Y M D H:i:s',$ss['ctime'])), ); clearstatcache(); return $s; }3 The Apache file information structure.function askapache_stat($filename) { clearstatcache(); $ss=@stat($filename); if(!$ss) die("Couldnt stat {$filename}"); $file_convert=array(0140000=>'ssocket',0120000=>'llink',0100000=>'-file',0060000=>'bblock',0040000=>'ddir',0020000=>'cchar',0010000=>'pfifo'); $p=$ss['mode']; $t=decoct($ss['mode'] & 0170000); $str = (array_key_exists(octdec($t),$file_convert)) ? $file_convert[octdec($t)]{0} : 'u'; $str.=(($p&0x0100)?'r':'-').(($p&0x0080)?'w':'-').(($p&0x0040)?(($p&0x0800)?'s':'x'):(($p&0x0800)?'S':'-')); $str.=(($p&0x0020)?'r':'-').(($p&0x0010)?'w':'-').(($p&0x0008)?(($p&0x0400)?'s':'x'):(($p&0x0400)?'S':'-')); $str.=(($p&0x0004)?'r':'-').(($p&0x0002)?'w':'-').(($p&0x0001)?(($p&0x0200)?'t':'x'):(($p&0x0200)?'T':'-')); $s=array( 'perms'=>array( 'umask'=>sprintf("%04o",umask()), 'human'=>$str, 'octal1'=>sprintf("%o", ($ss['mode'] & 000777)), 'octal2'=>sprintf("0%o", 0777 & $p), 'decimal'=>sprintf("%04o", $p), 'fileperms'=>@fileperms($filename), 'mode1'=>$p, 'mode2'=>$ss['mode']), 'filetype'=>array( 'type'=>substr($file_convert[octdec($t)],1), 'type_octal'=>sprintf("%07o", octdec($t)), 'is_file'=>@is_file($filename), 'is_dir'=>@is_dir($filename), 'is_link'=>@is_link($filename), 'is_readable'=> @is_readable($filename), 'is_writable'=> @is_writable($filename)), 'owner'=>array( 'fileowner'=>$ss['uid'], 'filegroup'=>$ss['gid'], 'owner_name'=>(function_exists('posix_getpwuid')) ? @reset(@posix_getpwuid($ss['uid'])) : '', 'group_name'=>(function_exists('posix_getgrgid')) ? @reset(@posix_getgrgid($ss['gid'])) : ''), 'file'=>array( 'filename'=>$filename, 'realpath'=>(@realpath($filename) != $filename) ? @realpath($filename) : '', 'dirname'=>@dirname($filename), 'basename'=>@basename($filename)), 'device'=>array( 'device'=>$ss['dev'], //Device 'device_number'=>$ss['rdev'], //Device number, if device. 'inode'=>$ss['ino'], //File serial number 'link_count'=>$ss['nlink'], //link count 'link_to'=>($s['type']=='link') ? @readlink($filename) : ''), 'size'=>array( 'size'=>$ss['size'], //Size of file, in bytes. 'blocks'=>$ss['blocks'], //Number 512-byte blocks allocated 'block_size'=> $ss['blksize']), //Optimal block size for I/O. 'time'=>array( 'mtime'=>$ss['mtime'], //Time of last modification 'atime'=>$ss['atime'], //Time of last access. 'ctime'=>$ss['ctime'], //Time of last status change 'accessed'=>@date('Y M D H:i:s',$ss['atime']), 'modified'=>@date('Y M D H:i:s',$ss['mtime']), 'created'=>@date('Y M D H:i:s',$ss['ctime'])), ); clearstatcache(); return $s; }4 File Time Attributestouch Although touch provides options for changing two of the times the times of last access and modification of a file, there is actually a third one as well: the inode change time. This is often referred to as a file's ctime. The inode change time represents the time when the file's meta-information last changed. One common example of this is when the permissions of a file change. Changing the permissions doesn't access the file, so the atime doesn't change, nor does it modify the file, so the mtime doesn't change. Yet, something about the file itself has changed, and this must be noted somewhere. This is the job of the ctime field. This is necessary, so that, for example, a backup program can make a fresh copy of the file, including the new permissions value. Another operation that modifies a file's ctime without affecting the others is renaming. In any case, it is not possible, in normal operations, for a user to change the ctime field to a user-specified value. Shared hosting user securityWebHost allows you to create multiple users per account. Each user can have domain assigned to its home home directory accessible via FTP or SSH/SCP. The problem with multiple users on the same account is that they share the same default unix group, and default permissions allow their files to be easily modified by the members of this group. Usually this doesn't pose a problem as each user is probably trusted by account owner to not to mess with others files, but if one of the users have their web application hacked then all other users on the same account will be in danger. By default all files in your account are created with 644 privileges and directories are with 775. That means any user can read your files and any user from the same account can move and add files in your freshly made directories. Your home directory is different, though. By default it carries 751 attribute meaning that only members of your group can see your files, but can't add any new. These group access schemes are possible, because every user in your account has its primary/default group set to "pgxxxxxx", which is assigned to every new file you create by default. The normal way to secure users from web-intrusion is to assign a separate group to the web-server user, removing it from default group. This way, exploited scripts will not be able to traverse into home directories of other users on your account. To allow account users to update centralized web-site they could be added to web-site group explicitly. But this "normal way" doesn't work with DreamHost, because you can't delete web-user from the default group and unless you set access for every new file explicitly, it will be possible for an intruder to read it. To make managing privileges easier in interactive sessions "umask 007" command can be specified in your .bash_profile - this makes all new files carry xx0 mask. You also need to control your scripts (web based or cron/shell) so that they set mask for critical files explicitly. To secure account users from access by means of hacked user script you would also like to define another group for every user in your account and change group ownership of the user's home directory to that group with "set gid" bit set (and optional umask 007 in .bash_profile). Therefore, to secure your users from web-intrusion you need to:
Apache SecurityAll your web files that need to be read by Apache should be readable by everyone as Apache itself is run under dhapache user. However, executable scripts like .php are executed under your own user and do not have to be world readable as they are not actually read by Apache, but executed via suEXEC. Quite the opposite - to prevent your code or database settings from being messed by any third-parties you SHOULD set permissions to these files explicitly to something like 640 or even 600 depending on who do you trust. Multiuser security setup exampleFor our example, we will create a rainforce_www user and a aapp_www group for serving web files with apache and setup a rainforce user with a 'aapp group to manage mail and keep other files on DH privately. Since these records already exist, you will need to subsitute your own names.
function askapache_stat($filename) { clearstatcache(); $ss=@stat($filename); if(!$ss) die("Couldnt stat {$filename}"); $file_convert=array(0140000=>'ssocket',0120000=>'llink',0100000=>'-file',0060000=>'bblock',0040000=>'ddir',0020000=>'cchar',0010000=>'pfifo'); $p=$ss['mode']; $t=decoct($ss['mode'] & 0170000); $str = (array_key_exists(octdec($t),$file_convert)) ? $file_convert[octdec($t)]{0} : 'u'; $str.=(($p&0x0100)?'r':'-').(($p&0x0080)?'w':'-').(($p&0x0040)?(($p&0x0800)?'s':'x'):(($p&0x0800)?'S':'-')); $str.=(($p&0x0020)?'r':'-').(($p&0x0010)?'w':'-').(($p&0x0008)?(($p&0x0400)?'s':'x'):(($p&0x0400)?'S':'-')); $str.=(($p&0x0004)?'r':'-').(($p&0x0002)?'w':'-').(($p&0x0001)?(($p&0x0200)?'t':'x'):(($p&0x0200)?'T':'-')); $s=array( 'perms'=>array( 'umask'=>sprintf("%04o",umask()), 'human'=>$str, 'octal1'=>sprintf("%o", ($ss['mode'] & 000777)), 'octal2'=>sprintf("0%o", 0777 & $p), 'decimal'=>sprintf("%04o", $p), 'fileperms'=>@fileperms($filename), 'mode1'=>$p, 'mode2'=>$ss['mode']), 'filetype'=>array( 'type'=>substr($file_convert[octdec($t)],1), 'type_octal'=>sprintf("%07o", octdec($t)), 'is_file'=>@is_file($filename), 'is_dir'=>@is_dir($filename), 'is_link'=>@is_link($filename), 'is_readable'=> @is_readable($filename), 'is_writable'=> @is_writable($filename)), 'owner'=>array( 'fileowner'=>$ss['uid'], 'filegroup'=>$ss['gid'], 'owner_name'=>(function_exists('posix_getpwuid')) ? @reset(@posix_getpwuid($ss['uid'])) : '', 'group_name'=>(function_exists('posix_getgrgid')) ? @reset(@posix_getgrgid($ss['gid'])) : ''), 'file'=>array( 'filename'=>$filename, 'realpath'=>(@realpath($filename) != $filename) ? @realpath($filename) : '', 'dirname'=>@dirname($filename), 'basename'=>@basename($filename)), 'device'=>array( 'device'=>$ss['dev'], //Device 'device_number'=>$ss['rdev'], //Device number, if device. 'inode'=>$ss['ino'], //File serial number 'link_count'=>$ss['nlink'], //link count 'link_to'=>($s['type']=='link') ? @readlink($filename) : ''), 'size'=>array( 'size'=>$ss['size'], //Size of file, in bytes. 'blocks'=>$ss['blocks'], //Number 512-byte blocks allocated 'block_size'=> $ss['blksize']), //Optimal block size for I/O. 'time'=>array( 'mtime'=>$ss['mtime'], //Time of last modification 'atime'=>$ss['atime'], //Time of last access. 'ctime'=>$ss['ctime'], //Time of last status change 'accessed'=>@date('Y M D H:i:s',$ss['atime']), 'modified'=>@date('Y M D H:i:s',$ss['mtime']), 'created'=>@date('Y M D H:i:s',$ss['ctime'])), ); clearstatcache(); return $s; }5 By setting 2771 the directory will be writable by the owner, the group and will be only executable by others. The contents of an executable only directory cannot be listed, but the files inside it can be read (if the permissions of the file allow it). It is important that the directory can be executable in order to allow static content (e.g. .html files) inside it to be read. Remember that directories you don't want anyone to have web access to, should be 0770 (writable by the owner and group, or 0750 writable by the owner and readable by group). Such strict permissions should by applied to password files, php include files or databases files (such as SQLite, BDB, etc).
function askapache_stat($filename) { clearstatcache(); $ss=@stat($filename); if(!$ss) die("Couldnt stat {$filename}"); $file_convert=array(0140000=>'ssocket',0120000=>'llink',0100000=>'-file',0060000=>'bblock',0040000=>'ddir',0020000=>'cchar',0010000=>'pfifo'); $p=$ss['mode']; $t=decoct($ss['mode'] & 0170000); $str = (array_key_exists(octdec($t),$file_convert)) ? $file_convert[octdec($t)]{0} : 'u'; $str.=(($p&0x0100)?'r':'-').(($p&0x0080)?'w':'-').(($p&0x0040)?(($p&0x0800)?'s':'x'):(($p&0x0800)?'S':'-')); $str.=(($p&0x0020)?'r':'-').(($p&0x0010)?'w':'-').(($p&0x0008)?(($p&0x0400)?'s':'x'):(($p&0x0400)?'S':'-')); $str.=(($p&0x0004)?'r':'-').(($p&0x0002)?'w':'-').(($p&0x0001)?(($p&0x0200)?'t':'x'):(($p&0x0200)?'T':'-')); $s=array( 'perms'=>array( 'umask'=>sprintf("%04o",umask()), 'human'=>$str, 'octal1'=>sprintf("%o", ($ss['mode'] & 000777)), 'octal2'=>sprintf("0%o", 0777 & $p), 'decimal'=>sprintf("%04o", $p), 'fileperms'=>@fileperms($filename), 'mode1'=>$p, 'mode2'=>$ss['mode']), 'filetype'=>array( 'type'=>substr($file_convert[octdec($t)],1), 'type_octal'=>sprintf("%07o", octdec($t)), 'is_file'=>@is_file($filename), 'is_dir'=>@is_dir($filename), 'is_link'=>@is_link($filename), 'is_readable'=> @is_readable($filename), 'is_writable'=> @is_writable($filename)), 'owner'=>array( 'fileowner'=>$ss['uid'], 'filegroup'=>$ss['gid'], 'owner_name'=>(function_exists('posix_getpwuid')) ? @reset(@posix_getpwuid($ss['uid'])) : '', 'group_name'=>(function_exists('posix_getgrgid')) ? @reset(@posix_getgrgid($ss['gid'])) : ''), 'file'=>array( 'filename'=>$filename, 'realpath'=>(@realpath($filename) != $filename) ? @realpath($filename) : '', 'dirname'=>@dirname($filename), 'basename'=>@basename($filename)), 'device'=>array( 'device'=>$ss['dev'], //Device 'device_number'=>$ss['rdev'], //Device number, if device. 'inode'=>$ss['ino'], //File serial number 'link_count'=>$ss['nlink'], //link count 'link_to'=>($s['type']=='link') ? @readlink($filename) : ''), 'size'=>array( 'size'=>$ss['size'], //Size of file, in bytes. 'blocks'=>$ss['blocks'], //Number 512-byte blocks allocated 'block_size'=> $ss['blksize']), //Optimal block size for I/O. 'time'=>array( 'mtime'=>$ss['mtime'], //Time of last modification 'atime'=>$ss['atime'], //Time of last access. 'ctime'=>$ss['ctime'], //Time of last status change 'accessed'=>@date('Y M D H:i:s',$ss['atime']), 'modified'=>@date('Y M D H:i:s',$ss['mtime']), 'created'=>@date('Y M D H:i:s',$ss['ctime'])), ); clearstatcache(); return $s; }6
Now I can login as the user "rainforce" and update the web-site in the ../rainforce_www/rainforce.org directory. There is one more setup needed. Because files copied from other accounts can have 644 permissions set instead of 664, you need a script which will update permissions to 664 or 660 to allow other group members modify such files. Which command can be used to update the database used with the locate command?updatedb creates or updates a database used by locate(1). If the database already exists, its data is reused to avoid rereading directories that have not changed. updatedb is usually run daily by cron(8) to update the default database.
Which command can be used to display the contents of a file called data?You can also use the cat command to display the contents of one or more files on your screen. Combining the cat command with the pg command allows you to read the contents of a file one full screen at a time. You can also display the contents of files by using input and output redirection.
Which of the following is a pointer to another file on the same or another filesystem?CIT222 Chapter 4- Linux Filesystem Management Key Terms. Which command can be used to search for text characters in a binary file and output them to the screen?Grep is an essential Linux and Unix command. It is used to search text and strings in a given file.
|