diff options
| author | jvoisin | 2022-03-20 18:20:45 +0100 |
|---|---|---|
| committer | jvoisin | 2022-03-20 18:20:45 +0100 |
| commit | 81dd7f2ef07af306fe83d7755cbac4529aa9fc8d (patch) | |
| tree | 32cc44c6231b30db5ac7b15699297863460784aa /src/tests/ini | |
| parent | 83b01942dfc80474cc05e09aeef4b44307a7120b (diff) | |
| parent | c38df1077a6c1dfbca1baca049214d053e2e7684 (diff) | |
Merge remote-tracking branch 'sektioneins/master'
Diffstat (limited to 'src/tests/ini')
| -rw-r--r-- | src/tests/ini/config/sp-policy-drop.ini | 3 | ||||
| -rw-r--r-- | src/tests/ini/config/sp-policy-silent-fail.ini | 3 | ||||
| -rw-r--r-- | src/tests/ini/config/sp.ini | 10 | ||||
| -rw-r--r-- | src/tests/ini/ini_min_policy_drop.phpt | 13 | ||||
| -rw-r--r-- | src/tests/ini/ini_min_policy_silent_fail.phpt | 14 | ||||
| -rw-r--r-- | src/tests/ini/ini_minmax.phpt | 34 | ||||
| -rw-r--r-- | src/tests/ini/ini_null.phpt | 26 | ||||
| -rw-r--r-- | src/tests/ini/ini_regexp.phpt | 19 | ||||
| -rw-r--r-- | src/tests/ini/ini_regexp_drop.phpt | 13 | ||||
| -rw-r--r-- | src/tests/ini/ini_set.phpt | 12 |
10 files changed, 147 insertions, 0 deletions
diff --git a/src/tests/ini/config/sp-policy-drop.ini b/src/tests/ini/config/sp-policy-drop.ini new file mode 100644 index 0000000..4b1e374 --- /dev/null +++ b/src/tests/ini/config/sp-policy-drop.ini | |||
| @@ -0,0 +1,3 @@ | |||
| 1 | sp.ini_protection.enable(); | ||
| 2 | sp.ini_protection.policy_drop(); | ||
| 3 | sp.ini.key("max_execution_time").min("30").max("300"); | ||
diff --git a/src/tests/ini/config/sp-policy-silent-fail.ini b/src/tests/ini/config/sp-policy-silent-fail.ini new file mode 100644 index 0000000..2123837 --- /dev/null +++ b/src/tests/ini/config/sp-policy-silent-fail.ini | |||
| @@ -0,0 +1,3 @@ | |||
| 1 | sp.ini_protection.enable(); | ||
| 2 | sp.ini_protection.policy_silent_fail(); | ||
| 3 | sp.ini.key("max_execution_time").min("30").max("300"); | ||
diff --git a/src/tests/ini/config/sp.ini b/src/tests/ini/config/sp.ini new file mode 100644 index 0000000..86a63a7 --- /dev/null +++ b/src/tests/ini/config/sp.ini | |||
| @@ -0,0 +1,10 @@ | |||
| 1 | sp.ini_protection.enable(); | ||
| 2 | |||
| 3 | sp.ini.key("max_execution_time").min("30").max("300"); | ||
| 4 | sp.ini.key("highlight.comment").regexp("^#[0-9a-fA-F]{6}$"); | ||
| 5 | sp.ini.key("default_mimetype").set("text/plain").ro(); | ||
| 6 | |||
| 7 | sp.ini.key("sendmail_from").set("test@example.com").regexp(".*@example\\.com$").allow_null(); | ||
| 8 | sp.ini.key("unserialize_callback_func").set("def").regexp("^abc$"); | ||
| 9 | |||
| 10 | sp.ini.key("user_agent").regexp("^abc$").drop(); | ||
diff --git a/src/tests/ini/ini_min_policy_drop.phpt b/src/tests/ini/ini_min_policy_drop.phpt new file mode 100644 index 0000000..ef40ebc --- /dev/null +++ b/src/tests/ini/ini_min_policy_drop.phpt | |||
| @@ -0,0 +1,13 @@ | |||
| 1 | --TEST-- | ||
| 2 | INI protection .min() + .policy_drop() | ||
| 3 | --SKIPIF-- | ||
| 4 | <?php if (!extension_loaded("snuffleupagus")) print("skip"); ?> | ||
| 5 | --INI-- | ||
| 6 | sp.configuration_file={PWD}/config/sp-policy-drop.ini | ||
| 7 | --FILE-- | ||
| 8 | <?php | ||
| 9 | var_dump(ini_set("max_execution_time", "29") === false); | ||
| 10 | var_dump(ini_get("max_execution_time")); | ||
| 11 | ?> | ||
| 12 | --EXPECTF-- | ||
| 13 | Fatal error: [snuffleupagus][0.0.0.0][ini_protection][drop] INI value out of range in %a/ini_min_policy_drop.php on line 2 | ||
diff --git a/src/tests/ini/ini_min_policy_silent_fail.phpt b/src/tests/ini/ini_min_policy_silent_fail.phpt new file mode 100644 index 0000000..d0117a7 --- /dev/null +++ b/src/tests/ini/ini_min_policy_silent_fail.phpt | |||
| @@ -0,0 +1,14 @@ | |||
| 1 | --TEST-- | ||
| 2 | INI protection .min() + .policy_silent_fail() | ||
| 3 | --SKIPIF-- | ||
| 4 | <?php if (!extension_loaded("snuffleupagus")) print("skip"); ?> | ||
| 5 | --INI-- | ||
| 6 | sp.configuration_file={PWD}/config/sp-policy-silent-fail.ini | ||
| 7 | --FILE-- | ||
| 8 | <?php | ||
| 9 | var_dump(ini_set("max_execution_time", "29") === false); | ||
| 10 | var_dump(ini_get("max_execution_time")); | ||
| 11 | ?> | ||
| 12 | --EXPECTF-- | ||
| 13 | bool(true) | ||
| 14 | string(1) "0" \ No newline at end of file | ||
diff --git a/src/tests/ini/ini_minmax.phpt b/src/tests/ini/ini_minmax.phpt new file mode 100644 index 0000000..4cd6bc4 --- /dev/null +++ b/src/tests/ini/ini_minmax.phpt | |||
| @@ -0,0 +1,34 @@ | |||
| 1 | --TEST-- | ||
| 2 | INI protection .min()/.max() | ||
| 3 | --SKIPIF-- | ||
| 4 | <?php if (!extension_loaded("snuffleupagus")) print("skip"); ?> | ||
| 5 | --INI-- | ||
| 6 | sp.configuration_file={PWD}/config/sp.ini | ||
| 7 | --FILE-- | ||
| 8 | <?php | ||
| 9 | var_dump(ini_set("max_execution_time", "30") === false); | ||
| 10 | var_dump(ini_get("max_execution_time")); | ||
| 11 | |||
| 12 | var_dump(ini_set("max_execution_time", "300") === false); | ||
| 13 | var_dump(ini_get("max_execution_time")); | ||
| 14 | |||
| 15 | var_dump(ini_set("max_execution_time", "29") === false); | ||
| 16 | var_dump(ini_get("max_execution_time")); | ||
| 17 | |||
| 18 | var_dump(ini_set("max_execution_time", "301") === false); | ||
| 19 | var_dump(ini_get("max_execution_time")); | ||
| 20 | |||
| 21 | ?> | ||
| 22 | --EXPECTF-- | ||
| 23 | bool(false) | ||
| 24 | string(2) "30" | ||
| 25 | bool(false) | ||
| 26 | string(3) "300" | ||
| 27 | |||
| 28 | Warning: [snuffleupagus][0.0.0.0][ini_protection][log] INI value out of range in %a/ini_minmax.php on line 8 | ||
| 29 | bool(true) | ||
| 30 | string(3) "300" | ||
| 31 | |||
| 32 | Warning: [snuffleupagus][0.0.0.0][ini_protection][log] INI value out of range in %a/ini_minmax.php on line 11 | ||
| 33 | bool(true) | ||
| 34 | string(3) "300" \ No newline at end of file | ||
diff --git a/src/tests/ini/ini_null.phpt b/src/tests/ini/ini_null.phpt new file mode 100644 index 0000000..32a12c1 --- /dev/null +++ b/src/tests/ini/ini_null.phpt | |||
| @@ -0,0 +1,26 @@ | |||
| 1 | --TEST-- | ||
| 2 | INI protection .allow_null() | ||
| 3 | --SKIPIF-- | ||
| 4 | <?php if (!extension_loaded("snuffleupagus")) print("skip"); ?> | ||
| 5 | --INI-- | ||
| 6 | sp.configuration_file={PWD}/config/sp.ini | ||
| 7 | --FILE-- | ||
| 8 | <?php | ||
| 9 | var_dump(ini_set("sendmail_from", "foo@example.com") === false); | ||
| 10 | var_dump(ini_get("sendmail_from")); | ||
| 11 | |||
| 12 | var_dump(ini_set("sendmail_from", NULL) === false); | ||
| 13 | var_dump(ini_get("sendmail_from")); | ||
| 14 | |||
| 15 | var_dump(ini_set("unserialize_callback_func", NULL) === false); | ||
| 16 | var_dump(ini_get("unserialize_callback_func")); | ||
| 17 | ?> | ||
| 18 | --EXPECTF-- | ||
| 19 | bool(false) | ||
| 20 | string(15) "foo@example.com" | ||
| 21 | bool(false) | ||
| 22 | string(0) "" | ||
| 23 | |||
| 24 | Warning: [snuffleupagus][0.0.0.0][ini_protection][log] new INI value must not be NULL or empty in %a/ini_null.php on line 8 | ||
| 25 | bool(true) | ||
| 26 | string(3) "def" \ No newline at end of file | ||
diff --git a/src/tests/ini/ini_regexp.phpt b/src/tests/ini/ini_regexp.phpt new file mode 100644 index 0000000..f6c5198 --- /dev/null +++ b/src/tests/ini/ini_regexp.phpt | |||
| @@ -0,0 +1,19 @@ | |||
| 1 | --TEST-- | ||
| 2 | INI protection .regexp() | ||
| 3 | --SKIPIF-- | ||
| 4 | <?php if (!extension_loaded("snuffleupagus")) print("skip"); ?> | ||
| 5 | --INI-- | ||
| 6 | sp.configuration_file={PWD}/config/sp.ini | ||
| 7 | --FILE-- | ||
| 8 | <?php | ||
| 9 | ini_set("highlight.comment", "#000aBc"); | ||
| 10 | var_dump(ini_get("highlight.comment")); | ||
| 11 | |||
| 12 | ini_set("highlight.comment", "xxx"); | ||
| 13 | var_dump(ini_get("highlight.comment")); | ||
| 14 | ?> | ||
| 15 | --EXPECTF-- | ||
| 16 | string(7) "#000aBc" | ||
| 17 | |||
| 18 | Warning: [snuffleupagus][0.0.0.0][ini_protection][log] INI value does not match regex in %a/ini_regexp.php on line 5 | ||
| 19 | string(7) "#000aBc" | ||
diff --git a/src/tests/ini/ini_regexp_drop.phpt b/src/tests/ini/ini_regexp_drop.phpt new file mode 100644 index 0000000..9225470 --- /dev/null +++ b/src/tests/ini/ini_regexp_drop.phpt | |||
| @@ -0,0 +1,13 @@ | |||
| 1 | --TEST-- | ||
| 2 | INI protection .min() + .drop() | ||
| 3 | --SKIPIF-- | ||
| 4 | <?php if (!extension_loaded("snuffleupagus")) print("skip"); ?> | ||
| 5 | --INI-- | ||
| 6 | sp.configuration_file={PWD}/config/sp.ini | ||
| 7 | --FILE-- | ||
| 8 | <?php | ||
| 9 | var_dump(ini_set("user_agent", "Foo") === false); | ||
| 10 | var_dump(ini_get("user_agent")); | ||
| 11 | ?> | ||
| 12 | --EXPECTF-- | ||
| 13 | Fatal error: [snuffleupagus][0.0.0.0][ini_protection][drop] INI value does not match regex in %a/ini_regexp_drop.php on line 2 | ||
diff --git a/src/tests/ini/ini_set.phpt b/src/tests/ini/ini_set.phpt new file mode 100644 index 0000000..bfafbe8 --- /dev/null +++ b/src/tests/ini/ini_set.phpt | |||
| @@ -0,0 +1,12 @@ | |||
| 1 | --TEST-- | ||
| 2 | INI protection .set() | ||
| 3 | --SKIPIF-- | ||
| 4 | <?php if (!extension_loaded("snuffleupagus")) print("skip"); ?> | ||
| 5 | --INI-- | ||
| 6 | sp.configuration_file={PWD}/config/sp.ini | ||
| 7 | --FILE-- | ||
| 8 | <?php | ||
| 9 | var_dump(ini_get("default_mimetype")); | ||
| 10 | ?> | ||
| 11 | --EXPECTF-- | ||
| 12 | string(10) "text/plain" \ No newline at end of file | ||
