1--TEST-- 2Test open_basedir configuration 3--INI-- 4open_basedir=. 5--FILE-- 6<?php 7require_once "open_basedir.inc"; 8$initdir = getcwd(); 9test_open_basedir_before("tempnam"); 10 11var_dump(tempnam("../bad", "test")); 12var_dump(tempnam("..", "test")); 13var_dump(tempnam("../", "test")); 14var_dump(tempnam("/", "test")); 15var_dump(tempnam("../bad/.", "test")); 16var_dump(tempnam("./../.", "test")); 17var_dump(tempnam("", "test")); 18 19//absolute test 20$file = tempnam($initdir."/test/ok", "test"); 21var_dump($file); 22var_dump(unlink($file)); 23 24//relative test 25$file = tempnam(".", "test"); 26var_dump($file); 27var_dump(unlink($file)); 28 29$file = tempnam("../ok", "test"); 30var_dump($file); 31var_dump(unlink($file)); 32 33test_open_basedir_after("tempnam"); 34?> 35--CLEAN-- 36<?php 37require_once "open_basedir.inc"; 38delete_directories(); 39?> 40--EXPECTF-- 41*** Testing open_basedir configuration [tempnam] *** 42bool(true) 43bool(true) 44bool(true) 45bool(true) 46bool(true) 47 48Warning: tempnam(): open_basedir restriction in effect. File(../bad) is not within the allowed path(s): (.) in %s on line %d 49bool(false) 50 51Warning: tempnam(): open_basedir restriction in effect. File(..) is not within the allowed path(s): (.) in %s on line %d 52bool(false) 53 54Warning: tempnam(): open_basedir restriction in effect. File(../) is not within the allowed path(s): (.) in %s on line %d 55bool(false) 56 57Warning: tempnam(): open_basedir restriction in effect. File(/) is not within the allowed path(s): (.) in %s on line %d 58bool(false) 59 60Warning: tempnam(): open_basedir restriction in effect. File(../bad/.) is not within the allowed path(s): (.) in %s on line %d 61bool(false) 62 63Warning: tempnam(): open_basedir restriction in effect. File(./../.) is not within the allowed path(s): (.) in %s on line %d 64bool(false) 65 66Warning: tempnam(): open_basedir restriction in effect. File() is not within the allowed path(s): (.) in %s on line %d 67bool(false) 68string(%d) "%s" 69bool(true) 70string(%d) "%s" 71bool(true) 72string(%d) "%s" 73bool(true) 74*** Finished testing open_basedir configuration [tempnam] *** 75 76