]> granicus.if.org Git - php/commitdiff
Testfest: putenv() safe_mode tests by Brian DeShong
authorLars Strojny <lstrojny@php.net>
Thu, 12 Jun 2008 22:36:43 +0000 (22:36 +0000)
committerLars Strojny <lstrojny@php.net>
Thu, 12 Jun 2008 22:36:43 +0000 (22:36 +0000)
ext/standard/tests/general_functions/putenv_error1.phpt [new file with mode: 0644]
ext/standard/tests/general_functions/putenv_error2.phpt [new file with mode: 0644]

diff --git a/ext/standard/tests/general_functions/putenv_error1.phpt b/ext/standard/tests/general_functions/putenv_error1.phpt
new file mode 100644 (file)
index 0000000..4e4fc40
--- /dev/null
@@ -0,0 +1,24 @@
+--TEST--
+putenv() - usage in safe mode with safe_mode_allowed_env_vars set
+--CREDITS--
+Brian DeShong <brian@deshong.net>
+--INI--
+safe_mode=1
+safe_mode_allowed_env_vars=TESTING_
+--FILE--
+<?php
+putenv('FOO=bar');
+putenv('BAZ=bop');
+$set = putenv('TESTING_FOO=bar');
+print ($set ? 'it worked' : 'boo') . "\n";
+$set = putenv('TESTING_BAR=baz');
+print ($set ? 'it worked' : 'boo') . "\n";
+?>
+==DONE==
+--EXPECTF--
+Warning: putenv(): Safe Mode warning: Cannot set environment variable 'FOO' - it's not in the allowed list in %s on line %d
+
+Warning: putenv(): Safe Mode warning: Cannot set environment variable 'BAZ' - it's not in the allowed list in %s on line %d
+it worked
+it worked
+==DONE==
diff --git a/ext/standard/tests/general_functions/putenv_error2.phpt b/ext/standard/tests/general_functions/putenv_error2.phpt
new file mode 100644 (file)
index 0000000..a98a934
--- /dev/null
@@ -0,0 +1,18 @@
+--TEST--
+putenv() - usage in safe mode with safe_mode_protected_env_vars set
+--CREDITS--
+Brian DeShong <brian@deshong.net>
+--INI--
+safe_mode=1
+safe_mode_protected_env_vars=FOO,BAZ
+--FILE--
+<?php
+putenv('FOO=bar');
+putenv('BAZ=bop');
+?>
+==DONE==
+--EXPECTF--
+Warning: putenv(): Safe Mode warning: Cannot override protected environment variable 'FOO' in %s on line %d
+
+Warning: putenv(): Safe Mode warning: Cannot override protected environment variable 'BAZ' in %s on line %d
+==DONE==