Find this useful? Enter your email to receive occasional updates for securing PHP code.

Signing you up...

Thank you for signing up!

PHP Decode

--TEST-- Test readfile() function : variation - various invalid paths --CREDITS-- Dave Kel..

Decoded Output download

--TEST--
Test readfile() function : variation - various invalid paths
--CREDITS--
Dave Kelsey <[email protected]>
--SKIPIF--
<?php
if(substr(PHP_OS, 0, 3) == "WIN")
  die("skip Not for Windows");
?>
--CONFLICTS--
obscure_filename
--FILE--
<?php
echo "*** Testing readfile() : variation ***
";


/* An array of files */
$names_arr = array(
  /* Invalid args */
  -1,
  TRUE,
  FALSE,
  "",
  " ",
  "",

  /* prefix with path separator of a non existing directory*/
  "/no/such/file/dir",
  "php/php"

);

for( $i=0; $i<count($names_arr); $i++ ) {
    $name = $names_arr[$i];
    echo "-- testing '$name' --
";
    try {
        readfile($name);
    } catch (\TypeError|\ValueError $e) {
        echo get_class($e) . ': ' . $e->getMessage(), "
";
    }
}
?>
--EXPECTF--
*** Testing readfile() : variation ***
-- testing '-1' --

Warning: readfile(-1): Failed to open stream: %s in %s on line %d
-- testing '1' --

Warning: readfile(1): Failed to open stream: %s in %s on line %d
-- testing '' --
ValueError: Path cannot be empty
-- testing '' --
ValueError: Path cannot be empty
-- testing ' ' --

Warning: readfile( ): Failed to open stream: %s in %s on line %d
-- testing '%0' --
ValueError: readfile(): Argument #1 ($filename) must not contain any null bytes
-- testing '%sdir' --

Warning: readfile(%sdir): Failed to open stream: %s in %s on line %d
-- testing '%sphp' --

Warning: readfile(%sphp): Failed to open stream: %s in %s on line %d

Did this file decode correctly?

Original Code

--TEST--
Test readfile() function : variation - various invalid paths
--CREDITS--
Dave Kelsey <[email protected]>
--SKIPIF--
<?php
if(substr(PHP_OS, 0, 3) == "WIN")
  die("skip Not for Windows");
?>
--CONFLICTS--
obscure_filename
--FILE--
<?php
echo "*** Testing readfile() : variation ***\n";


/* An array of files */
$names_arr = array(
  /* Invalid args */
  -1,
  TRUE,
  FALSE,
  "",
  " ",
  "\0",

  /* prefix with path separator of a non existing directory*/
  "/no/such/file/dir",
  "php/php"

);

for( $i=0; $i<count($names_arr); $i++ ) {
    $name = $names_arr[$i];
    echo "-- testing '$name' --\n";
    try {
        readfile($name);
    } catch (\TypeError|\ValueError $e) {
        echo get_class($e) . ': ' . $e->getMessage(), "\n";
    }
}
?>
--EXPECTF--
*** Testing readfile() : variation ***
-- testing '-1' --

Warning: readfile(-1): Failed to open stream: %s in %s on line %d
-- testing '1' --

Warning: readfile(1): Failed to open stream: %s in %s on line %d
-- testing '' --
ValueError: Path cannot be empty
-- testing '' --
ValueError: Path cannot be empty
-- testing ' ' --

Warning: readfile( ): Failed to open stream: %s in %s on line %d
-- testing '%0' --
ValueError: readfile(): Argument #1 ($filename) must not contain any null bytes
-- testing '%sdir' --

Warning: readfile(%sdir): Failed to open stream: %s in %s on line %d
-- testing '%sphp' --

Warning: readfile(%sphp): Failed to open stream: %s in %s on line %d

Function Calls

None

Variables

None

Stats

MD5 8542bd28980e0ae52155aeda44211530
Eval Count 0
Decode Time 95 ms