summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorBen Fuhrmannek2020-06-15 11:51:16 +0200
committerBen Fuhrmannek2020-06-15 11:51:16 +0200
commit7ac1e3866ef4f146c6c93a5ca13b9aebb14e936a (patch)
treece57745314d905ff06119788acb56c11dcb3aede
parentf742d9f88bf788e38bbe832f1b75e39784f024bc (diff)
parent7f9602ebc23582195d63eb35f1de1961297f2e00 (diff)
Merge remote-tracking branch 'upstream/master'
-rw-r--r--.gitignore7
-rw-r--r--.gitlab-ci.yml2
-rw-r--r--.travis.yml7
-rw-r--r--APKBUILD4
-rw-r--r--CONTRIBUTING.md20
-rw-r--r--Makefile1
-rw-r--r--PKGBUILD4
-rw-r--r--README.md22
-rw-r--r--config/default.rules28
-rw-r--r--debian/control8
-rw-r--r--debian/copyright4
-rw-r--r--debian/watch2
-rw-r--r--doc/source/config.rst39
-rw-r--r--doc/source/debug.rst4
-rw-r--r--doc/source/download.rst8
-rw-r--r--doc/source/faq.rst112
-rw-r--r--doc/source/features.rst4
-rw-r--r--doc/source/installation.rst4
-rw-r--r--doc/source/papers.rst69
-rw-r--r--src/php_snuffleupagus.h7
-rw-r--r--src/sp_config.c1
-rw-r--r--src/sp_config.h4
-rw-r--r--src/sp_config_keywords.c21
-rw-r--r--src/sp_config_keywords.h1
-rw-r--r--src/sp_disabled_functions.c9
-rw-r--r--src/sp_sloppy.c5
-rw-r--r--src/sp_upload_validation.c2
-rw-r--r--src/sp_utils.c23
-rw-r--r--src/tests/broken_configuration/broken_conf.phpt6
-rw-r--r--src/tests/broken_configuration/broken_conf2.phpt6
-rw-r--r--src/tests/broken_configuration/broken_conf_allow_broken_disabled.phpt6
-rw-r--r--src/tests/broken_configuration/broken_conf_allow_broken_enabled.phpt4
-rw-r--r--src/tests/broken_configuration/broken_conf_config_regexp.phpt10
-rw-r--r--src/tests/broken_configuration/broken_conf_config_regexp_no_closing_paren.phpt10
-rw-r--r--src/tests/broken_configuration/broken_conf_cookie_encryption_without_encryption_key.phpt6
-rw-r--r--src/tests/broken_configuration/broken_conf_cookie_encryption_without_env_var.phpt6
-rw-r--r--src/tests/broken_configuration/broken_conf_cookie_name_and_regexp.phpt6
-rw-r--r--src/tests/broken_configuration/broken_conf_enable_disable.phpt6
-rw-r--r--src/tests/broken_configuration/broken_conf_eval.phpt6
-rw-r--r--src/tests/broken_configuration/broken_conf_expecting_bool.phpt6
-rw-r--r--src/tests/broken_configuration/broken_conf_invalid_cidr.phpt6
-rw-r--r--src/tests/broken_configuration/broken_conf_invalid_cidr6.phpt6
-rw-r--r--src/tests/broken_configuration/broken_conf_invalid_cidr6_no_slash.phpt6
-rw-r--r--src/tests/broken_configuration/broken_conf_invalid_cidr_value.phpt10
-rw-r--r--src/tests/broken_configuration/broken_conf_invalid_filename.phpt6
-rw-r--r--src/tests/broken_configuration/broken_conf_invalid_log_media.phpt14
-rw-r--r--src/tests/broken_configuration/broken_conf_invalid_type.phpt6
-rw-r--r--src/tests/broken_configuration/broken_conf_key_value.phpt6
-rw-r--r--src/tests/broken_configuration/broken_conf_line_empty_string.phpt6
-rw-r--r--src/tests/broken_configuration/broken_conf_line_no_closing.phpt6
-rw-r--r--src/tests/broken_configuration/broken_conf_local_var_1.phpt10
-rw-r--r--src/tests/broken_configuration/broken_conf_local_var_10.phpt10
-rw-r--r--src/tests/broken_configuration/broken_conf_local_var_11.phpt10
-rw-r--r--src/tests/broken_configuration/broken_conf_local_var_12.phpt6
-rw-r--r--src/tests/broken_configuration/broken_conf_local_var_13.phpt10
-rw-r--r--src/tests/broken_configuration/broken_conf_local_var_14.phpt10
-rw-r--r--src/tests/broken_configuration/broken_conf_local_var_15.phpt10
-rw-r--r--src/tests/broken_configuration/broken_conf_local_var_16.phpt10
-rw-r--r--src/tests/broken_configuration/broken_conf_local_var_2.phpt10
-rw-r--r--src/tests/broken_configuration/broken_conf_local_var_3.phpt10
-rw-r--r--src/tests/broken_configuration/broken_conf_local_var_4.phpt10
-rw-r--r--src/tests/broken_configuration/broken_conf_local_var_5.phpt10
-rw-r--r--src/tests/broken_configuration/broken_conf_local_var_6.phpt10
-rw-r--r--src/tests/broken_configuration/broken_conf_local_var_7.phpt10
-rw-r--r--src/tests/broken_configuration/broken_conf_local_var_8.phpt10
-rw-r--r--src/tests/broken_configuration/broken_conf_local_var_9.phpt10
-rw-r--r--src/tests/broken_configuration/broken_conf_lots_of_quotes.phpt6
-rw-r--r--src/tests/broken_configuration/broken_conf_missing_script.phpt6
-rw-r--r--src/tests/broken_configuration/broken_conf_mutually_exclusive.phpt4
-rw-r--r--src/tests/broken_configuration/broken_conf_mutually_exclusive10.phpt6
-rw-r--r--src/tests/broken_configuration/broken_conf_mutually_exclusive11.phpt6
-rw-r--r--src/tests/broken_configuration/broken_conf_mutually_exclusive12.phpt6
-rw-r--r--src/tests/broken_configuration/broken_conf_mutually_exclusive2.phpt4
-rw-r--r--src/tests/broken_configuration/broken_conf_mutually_exclusive3.phpt4
-rw-r--r--src/tests/broken_configuration/broken_conf_mutually_exclusive4.phpt6
-rw-r--r--src/tests/broken_configuration/broken_conf_mutually_exclusive5.phpt4
-rw-r--r--src/tests/broken_configuration/broken_conf_mutually_exclusive6.phpt6
-rw-r--r--src/tests/broken_configuration/broken_conf_mutually_exclusive7.phpt6
-rw-r--r--src/tests/broken_configuration/broken_conf_mutually_exclusive8.phpt6
-rw-r--r--src/tests/broken_configuration/broken_conf_mutually_exclusive9.phpt6
-rw-r--r--src/tests/broken_configuration/broken_conf_no_cookie_action.phpt6
-rw-r--r--src/tests/broken_configuration/broken_conf_no_cookie_name.phpt6
-rw-r--r--src/tests/broken_configuration/broken_conf_no_file_specified.phpt2
-rw-r--r--src/tests/broken_configuration/broken_conf_nonexisting_script.phpt6
-rw-r--r--src/tests/broken_configuration/broken_conf_quotes.phpt10
-rw-r--r--src/tests/broken_configuration/broken_conf_readonly_exec.phpt6
-rw-r--r--src/tests/broken_configuration/broken_conf_samesite.phpt6
-rw-r--r--src/tests/broken_configuration/broken_conf_session_encryption.phpt6
-rw-r--r--src/tests/broken_configuration/broken_conf_session_encryption_without_encryption_key.phpt6
-rw-r--r--src/tests/broken_configuration/broken_conf_session_encryption_without_env_var.phpt6
-rw-r--r--src/tests/broken_configuration/broken_conf_shown_in_phpinfo.phpt10
-rw-r--r--src/tests/broken_configuration/broken_conf_truncated.phpt6
-rw-r--r--src/tests/broken_configuration/broken_conf_unserialize.phpt6
-rw-r--r--src/tests/broken_configuration/broken_conf_upload_validation.phpt6
-rw-r--r--src/tests/broken_configuration/broken_conf_weird_keyword.phpt6
-rw-r--r--src/tests/broken_configuration/broken_conf_wrapper_whitelist.phpt6
-rw-r--r--src/tests/broken_configuration/broken_conf_wrong_quotes.phpt6
-rw-r--r--src/tests/broken_configuration/broken_conf_wrong_type.phpt6
-rw-r--r--src/tests/broken_configuration/broken_invalid_client_ip4.phpt2
-rw-r--r--src/tests/broken_configuration/broken_regexp.phpt10
-rw-r--r--src/tests/broken_configuration/broken_unmatching_brackets.phpt10
-rw-r--r--src/tests/broken_configuration/config/broken_conf_invalid_log_media.ini1
-rw-r--r--src/tests/broken_configuration/encrypt_regexp_cookies_bad_regexp.phpt6
-rw-r--r--src/tests/cookies_encryption/encrypt_cookies_empty_env.phpt4
-rw-r--r--src/tests/cookies_encryption/encrypt_cookies_invalid_decryption.phpt2
-rw-r--r--src/tests/cookies_encryption/encrypt_cookies_invalid_decryption2.phpt2
-rw-r--r--src/tests/cookies_encryption/encrypt_cookies_invalid_decryption_short_cookie.phpt2
-rw-r--r--src/tests/cookies_encryption/encrypt_cookies_invalid_decryption_simulation.phpt2
-rw-r--r--src/tests/cookies_encryption/encrypt_regexp_cookies_empty_env.phpt2
-rw-r--r--src/tests/cookies_encryption/encrypt_regexp_cookies_invalid_decryption.phpt2
-rw-r--r--src/tests/cookies_encryption/encrypt_regexp_cookies_invalid_decryption2.phpt2
-rw-r--r--src/tests/cookies_encryption_warning/encrypt_cookies_no_env.phpt4
-rw-r--r--src/tests/cookies_encryption_warning/encrypt_cookies_no_key.phpt4
-rw-r--r--src/tests/cookies_encryption_warning/encrypt_regexp_cookies_no_env.phpt4
-rw-r--r--src/tests/cookies_encryption_warning/encrypt_regexp_cookies_no_key.phpt4
-rw-r--r--src/tests/deny_writable/deny_writable_execution.phpt2
-rw-r--r--src/tests/deny_writable/deny_writable_execution_simulation.phpt6
-rw-r--r--src/tests/disable_function/disabled_function_echo.phpt2
-rw-r--r--src/tests/disable_function/disabled_function_echo_2.phpt2
-rw-r--r--src/tests/disable_function/disabled_function_echo_local_var.phpt2
-rw-r--r--src/tests/disable_function/disabled_function_ensure_client_valid_certs.phpt4
-rw-r--r--src/tests/disable_function/disabled_function_ensure_client_valid_certs_curl_multi_setopt.phpt4
-rw-r--r--src/tests/disable_function/disabled_function_ensure_client_valid_certs_curl_setopt_array.phpt4
-rw-r--r--src/tests/disable_function/disabled_function_ensure_server_valid_certs.phpt4
-rw-r--r--src/tests/disable_function/disabled_function_ensure_server_valid_certs_curl_multi_setopt.phpt4
-rw-r--r--src/tests/disable_function/disabled_function_ensure_server_valid_certs_curl_setopt_array.phpt8
-rw-r--r--src/tests/disable_function/disabled_function_local_var.phpt2
-rw-r--r--src/tests/disable_function/disabled_function_local_var_10.phpt2
-rw-r--r--src/tests/disable_function/disabled_function_local_var_2.phpt2
-rw-r--r--src/tests/disable_function/disabled_function_local_var_3.phpt2
-rw-r--r--src/tests/disable_function/disabled_function_local_var_4.phpt2
-rw-r--r--src/tests/disable_function/disabled_function_local_var_5.phpt2
-rw-r--r--src/tests/disable_function/disabled_function_local_var_6.phpt2
-rw-r--r--src/tests/disable_function/disabled_function_local_var_7.phpt2
-rw-r--r--src/tests/disable_function/disabled_function_local_var_8.phpt2
-rw-r--r--src/tests/disable_function/disabled_function_local_var_9.phpt2
-rw-r--r--src/tests/disable_function/disabled_function_local_var_const.phpt2
-rw-r--r--src/tests/disable_function/disabled_function_local_var_obj.phpt2
-rw-r--r--src/tests/disable_function/disabled_function_param.phpt2
-rw-r--r--src/tests/disable_function/disabled_function_print.phpt2
-rw-r--r--src/tests/disable_function/disabled_function_super_global_var.phpt8
-rw-r--r--src/tests/disable_function/disabled_functions.phpt2
-rw-r--r--src/tests/disable_function/disabled_functions_callback_called_file_r.phpt2
-rw-r--r--src/tests/disable_function/disabled_functions_called_file_r.phpt2
-rw-r--r--src/tests/disable_function/disabled_functions_chain.phpt2
-rw-r--r--src/tests/disable_function/disabled_functions_chain_call_user_func.phpt2
-rw-r--r--src/tests/disable_function/disabled_functions_chain_call_user_func_ret.phpt2
-rw-r--r--src/tests/disable_function/disabled_functions_cidr.phpt2
-rw-r--r--src/tests/disable_function/disabled_functions_cidr_6.phpt2
-rw-r--r--src/tests/disable_function/disabled_functions_die.phpt2
-rw-r--r--src/tests/disable_function/disabled_functions_drop_include.phpt2
-rw-r--r--src/tests/disable_function/disabled_functions_drop_include_simulation.phpt2
-rw-r--r--src/tests/disable_function/disabled_functions_eval.phpt2
-rw-r--r--src/tests/disable_function/disabled_functions_eval_filename.phpt2
-rw-r--r--src/tests/disable_function/disabled_functions_eval_simulation.phpt2
-rw-r--r--src/tests/disable_function/disabled_functions_eval_user.phpt2
-rw-r--r--src/tests/disable_function/disabled_functions_exit.phpt2
-rw-r--r--src/tests/disable_function/disabled_functions_filename_r.phpt2
-rw-r--r--src/tests/disable_function/disabled_functions_include_once.phpt2
-rw-r--r--src/tests/disable_function/disabled_functions_include_simulation.phpt2
-rw-r--r--src/tests/disable_function/disabled_functions_local_var_array.phpt2
-rw-r--r--src/tests/disable_function/disabled_functions_local_var_array_key.phpt2
-rw-r--r--src/tests/disable_function/disabled_functions_mb.phpt2
-rw-r--r--src/tests/disable_function/disabled_functions_method.phpt2
-rw-r--r--src/tests/disable_function/disabled_functions_name_r.phpt2
-rw-r--r--src/tests/disable_function/disabled_functions_name_regexp_type.phpt2
-rw-r--r--src/tests/disable_function/disabled_functions_name_type.phpt2
-rw-r--r--src/tests/disable_function/disabled_functions_namespace.phpt2
-rw-r--r--src/tests/disable_function/disabled_functions_nul_byte.phpt2
-rw-r--r--src/tests/disable_function/disabled_functions_param.phpt2
-rw-r--r--src/tests/disable_function/disabled_functions_param_alias.phpt2
-rw-r--r--src/tests/disable_function/disabled_functions_param_allow.phpt2
-rw-r--r--src/tests/disable_function/disabled_functions_param_array.phpt2
-rw-r--r--src/tests/disable_function/disabled_functions_param_array_deref.phpt2
-rw-r--r--src/tests/disable_function/disabled_functions_param_array_no_value.phpt2
-rw-r--r--src/tests/disable_function/disabled_functions_param_array_r.phpt2
-rw-r--r--src/tests/disable_function/disabled_functions_param_array_r_keys.phpt2
-rw-r--r--src/tests/disable_function/disabled_functions_param_array_several_levels.phpt2
-rw-r--r--src/tests/disable_function/disabled_functions_param_array_several_levels_int.phpt2
-rw-r--r--src/tests/disable_function/disabled_functions_param_array_several_levels_keys.phpt2
-rw-r--r--src/tests/disable_function/disabled_functions_param_array_several_levels_keys_int.phpt2
-rw-r--r--src/tests/disable_function/disabled_functions_param_broken_line.phpt6
-rw-r--r--src/tests/disable_function/disabled_functions_param_int.phpt2
-rw-r--r--src/tests/disable_function/disabled_functions_param_invalid_pos.phpt6
-rw-r--r--src/tests/disable_function/disabled_functions_param_line.phpt2
-rw-r--r--src/tests/disable_function/disabled_functions_param_pos.phpt4
-rw-r--r--src/tests/disable_function/disabled_functions_param_pos2.phpt2
-rw-r--r--src/tests/disable_function/disabled_functions_param_r.phpt2
-rw-r--r--src/tests/disable_function/disabled_functions_pos_type.phpt6
-rw-r--r--src/tests/disable_function/disabled_functions_regexp_multiple.phpt4
-rw-r--r--src/tests/disable_function/disabled_functions_register_shutdown_function.phpt2
-rw-r--r--src/tests/disable_function/disabled_functions_register_tick_function.phpt2
-rw-r--r--src/tests/disable_function/disabled_functions_require.phpt2
-rw-r--r--src/tests/disable_function/disabled_functions_require_once.phpt2
-rw-r--r--src/tests/disable_function/disabled_functions_require_simulation.phpt2
-rw-r--r--src/tests/disable_function/disabled_functions_ret.phpt2
-rw-r--r--src/tests/disable_function/disabled_functions_ret2.phpt2
-rw-r--r--src/tests/disable_function/disabled_functions_ret3.phpt2
-rw-r--r--src/tests/disable_function/disabled_functions_ret_right_hash.phpt2
-rw-r--r--src/tests/disable_function/disabled_functions_ret_simulation.phpt6
-rw-r--r--src/tests/disable_function/disabled_functions_ret_type.phpt2
-rw-r--r--src/tests/disable_function/disabled_functions_ret_type_array.phpt2
-rw-r--r--src/tests/disable_function/disabled_functions_ret_type_double.phpt2
-rw-r--r--src/tests/disable_function/disabled_functions_ret_type_long.phpt2
-rw-r--r--src/tests/disable_function/disabled_functions_ret_type_null.phpt2
-rw-r--r--src/tests/disable_function/disabled_functions_ret_type_object.phpt2
-rw-r--r--src/tests/disable_function/disabled_functions_ret_type_resource.phpt2
-rw-r--r--src/tests/disable_function/disabled_functions_ret_type_str.phpt2
-rw-r--r--src/tests/disable_function/disabled_functions_ret_type_true.phpt2
-rw-r--r--src/tests/disable_function/disabled_functions_ret_user.phpt2
-rw-r--r--src/tests/disable_function/disabled_functions_ret_user_used.phpt2
-rw-r--r--src/tests/disable_function/disabled_functions_ret_val.phpt2
-rw-r--r--src/tests/disable_function/disabled_functions_ret_val_dump.phpt2
-rw-r--r--src/tests/disable_function/disabled_functions_ret_val_rx.phpt2
-rw-r--r--src/tests/disable_function/disabled_functions_runtime.phpt2
-rw-r--r--src/tests/disable_function/disabled_functions_upper.phpt2
-rw-r--r--src/tests/disable_function/disabled_functions_variadic.phpt4
-rw-r--r--src/tests/disable_function/disabled_functions_zero_cidr.phpt2
-rw-r--r--src/tests/disable_function/disabled_native_functions_indirect.phpt2
-rw-r--r--src/tests/disable_function/disabled_user_functions.phpt2
-rw-r--r--src/tests/disable_function/disabled_user_functions_indirect.phpt2
-rw-r--r--src/tests/disable_function/noncore_function_hooking.phpt2
-rw-r--r--src/tests/dump_request/dump_eval_blacklist.phpt2
-rw-r--r--src/tests/dump_request/dump_eval_whitelist.phpt2
-rw-r--r--src/tests/dump_request/dump_request.phpt2
-rw-r--r--src/tests/dump_request/dump_request_invalid_folder.phpt4
-rw-r--r--src/tests/dump_request/dump_request_nonwriteable_folder.phpt4
-rw-r--r--src/tests/dump_request/dump_request_too_big.phpt2
-rw-r--r--src/tests/dump_request/dump_segfault1.phpt2
-rw-r--r--src/tests/eval_blacklist/eval_backlist.phpt2
-rw-r--r--src/tests/eval_blacklist/eval_backlist_call_user_func.phpt2
-rw-r--r--src/tests/eval_blacklist/eval_backlist_chained.phpt2
-rw-r--r--src/tests/eval_blacklist/eval_backlist_list.phpt2
-rw-r--r--src/tests/eval_blacklist/eval_backlist_simulation.phpt2
-rw-r--r--src/tests/eval_blacklist/eval_backlist_whitelist.phpt2
-rw-r--r--src/tests/eval_blacklist/eval_backlist_whitelist_builtin.phpt2
-rw-r--r--src/tests/eval_blacklist/eval_whitelist.phpt2
-rw-r--r--src/tests/eval_blacklist/eval_whitelist_builtin.phpt2
-rw-r--r--src/tests/eval_blacklist/eval_whitelist_include_then_user.phpt2
-rw-r--r--src/tests/eval_blacklist/eval_whitelist_simulation.phpt2
-rw-r--r--src/tests/eval_blacklist/eval_whitelist_user_then_builtin.phpt2
-rw-r--r--src/tests/eval_blacklist/nested_eval_blacklist.phpt2
-rw-r--r--src/tests/eval_blacklist/nested_eval_blacklist2.phpt2
-rw-r--r--src/tests/glob_config.phpt4
-rw-r--r--src/tests/inexistent_conf_file.phpt6
-rw-r--r--src/tests/inexistent_conf_file_list.phpt6
-rw-r--r--src/tests/loading.phpt2
-rw-r--r--src/tests/multi_config.phpt4
-rw-r--r--src/tests/session_encryption/crypt_session_corrupted_session.phpt2
-rw-r--r--src/tests/session_encryption/crypt_session_invalid.phpt2
-rw-r--r--src/tests/unserialize/dump_unserialize.phpt2
-rw-r--r--src/tests/unserialize/unserialize_fail.phpt2
-rw-r--r--src/tests/unserialize/unserialize_sim.phpt2
-rw-r--r--src/tests/upload_validation/upload_validation.phpt4
-rw-r--r--src/tests/upload_validation/upload_validation_invalid.phpt4
-rw-r--r--src/tests/upload_validation/upload_validation_ko.phpt2
-rw-r--r--src/tests/upload_validation/upload_validation_ko_simulation.phpt2
-rw-r--r--src/tests/upload_validation/upload_validation_no_exec.phpt4
-rw-r--r--src/tests/upload_validation/upload_validation_real.phpt2
-rw-r--r--src/tests/xxe/disable_xxe_dom.phpt10
-rw-r--r--src/tests/xxe/disable_xxe_dom_disabled.phpt7
-rw-r--r--src/tests/xxe/disable_xxe_simplexml.phpt8
-rw-r--r--src/tests/xxe/disable_xxe_simplexml_oop.phpt8
-rw-r--r--src/tests/xxe/disable_xxe_xml_parse.phpt2
264 files changed, 778 insertions, 594 deletions
diff --git a/.gitignore b/.gitignore
index c3941e6..ab1bba6 100644
--- a/.gitignore
+++ b/.gitignore
@@ -11,6 +11,13 @@ src/tests/*.log
11src/tests/*.out 11src/tests/*.out
12src/tests/*.sh 12src/tests/*.sh
13src/tests/*.php 13src/tests/*.php
14
15src/tests/*/*.diff
16src/tests/*/*.exp
17src/tests/*/*.log
18src/tests/*/*.out
19src/tests/*/*.sh
20src/tests/*/*.php
14# Files generated by phpize, configure and make 21# Files generated by phpize, configure and make
15src/autom4te.cache 22src/autom4te.cache
16src/build 23src/build
diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml
index 73181c5..75aa17e 100644
--- a/.gitlab-ci.yml
+++ b/.gitlab-ci.yml
@@ -21,7 +21,7 @@ testsuite:ubuntu:
21 stage: testsuite 21 stage: testsuite
22 script: 22 script:
23 - apt-get -qqy update 23 - apt-get -qqy update
24 - DEBIAN_FRONTEND=noninteractive apt-get -qqy install --no-install-recommends php-dev gcc make 24 - DEBIAN_FRONTEND=noninteractive apt-get -qqy install --no-install-recommends php-dev gcc make libpcre3-dev php-cgi php-curl php-xml
25 - make debug 25 - make debug
26 26
27testsuite:alpine: 27testsuite:alpine:
diff --git a/.travis.yml b/.travis.yml
index 7eade9f..bcad3a7 100644
--- a/.travis.yml
+++ b/.travis.yml
@@ -8,14 +8,14 @@ matrix:
8 - env: TARGET="coverity" 8 - env: TARGET="coverity"
9 php: "7.2" 9 php: "7.2"
10 script: echo "Coverity, nothing to do." 10 script: echo "Coverity, nothing to do."
11 after_success: cat /home/travis/build/nbs-system/snuffleupagus/cov-int/scm_log.txt 11 after_success: cat /home/travis/build/jvoisin/snuffleupagus/cov-int/scm_log.txt
12 before_install: echo -n | openssl s_client -connect scan.coverity.com:443 | sed -ne '/-BEGIN CERTIFICATE-/,/-END CERTIFICATE-/p' | sudo tee -a /etc/ssl/certs/ca- 12 before_install: echo -n | openssl s_client -connect scan.coverity.com:443 | sed -ne '/-BEGIN CERTIFICATE-/,/-END CERTIFICATE-/p' | sudo tee -a /etc/ssl/certs/ca-
13 addons: 13 addons:
14 coverity_scan: 14 coverity_scan:
15 project: 15 project:
16 name: "nbs-system/snuffleupagus" 16 name: "jvoisin/snuffleupagus"
17 description: "Build submitted via Travis CI" 17 description: "Build submitted via Travis CI"
18 notification_email: "devnull@nbs-system.com" 18 notification_email: "julien.voisin+travisci@dustri.org"
19 build_command_prepend: "cd src; phpize; ./configure --enable-snuffleupagus; cd -" 19 build_command_prepend: "cd src; phpize; ./configure --enable-snuffleupagus; cd -"
20 build_command: "make debug -j2" 20 build_command: "make debug -j2"
21 branch_pattern: "master" 21 branch_pattern: "master"
@@ -42,6 +42,7 @@ script:
42 - phpize 42 - phpize
43 - ./configure --enable-snuffleupagus --enable-coverage 43 - ./configure --enable-snuffleupagus --enable-coverage
44 - make -j 2 44 - make -j 2
45 - sed -i "s/\$ext_params -d display_errors=0 -r/-d display_errors=0 -r/" run-tests.php
45 - TEST_PHP_ARGS="-q" REPORT_EXIT_STATUS=1 make test 46 - TEST_PHP_ARGS="-q" REPORT_EXIT_STATUS=1 make test
46 47
47after_success: 48after_success:
diff --git a/APKBUILD b/APKBUILD
index b784e38..b3345f6 100644
--- a/APKBUILD
+++ b/APKBUILD
@@ -1,4 +1,4 @@
1# Maintainer: <secu@nbs-system.com> 1# Maintained by Julien (jvoisin) Voisin <julien.voisin+snuffleupagus@dustri.org>
2pkgname="php7-snuffleupagus" 2pkgname="php7-snuffleupagus"
3_pkgname="snuffleupagus" 3_pkgname="snuffleupagus"
4pkgver=0.1 4pkgver=0.1
@@ -10,7 +10,7 @@ license="LGPL3"
10depends="php7-dev php7-fpm" 10depends="php7-dev php7-fpm"
11source="" 11source=""
12 12
13_giturl="https://github.com/nbs-system/snuffleupagus.git" 13_giturl="https://github.com/jvoisin/snuffleupagus.git"
14 14
15prepare() { 15prepare() {
16 default_prepare 16 default_prepare
diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md
index 88a3297..40ad357 100644
--- a/CONTRIBUTING.md
+++ b/CONTRIBUTING.md
@@ -6,9 +6,9 @@ First off, thank you for considering contributing to snuffleupagus.
6 6
7If you've noticed a bug or have a question, 7If you've noticed a bug or have a question,
8look at the [faq](https://snuffleupagus.readthedocs.io/faq.html) and 8look at the [faq](https://snuffleupagus.readthedocs.io/faq.html) and
9[search the issue tracker](https://github.com/nbs-system/snuffleupagus/issues) 9[search the issue tracker](https://github.com/jvoisin/snuffleupagus/issues)
10to see if someone else has already created a ticket. If not, go ahead and 10to see if someone else has already created a ticket. If not, go ahead and
11[make one](https://github.com/nbs-system/snuffleupagus/issues/new)! 11[make one](https://github.com/jvoisin/snuffleupagus/issues/new)!
12 12
13### 2. Fork & create a branch 13### 2. Fork & create a branch
14 14
@@ -28,7 +28,7 @@ Just type `make coverage` or `make debug`, the testsuite should be run
28automatically. 28automatically.
29 29
30Please add tests if you're fixing a bug or adding a new feature: we do have a 30Please add tests if you're fixing a bug or adding a new feature: we do have a
31[high coverage](https://coveralls.io/github/nbs-system/snuffleupagus?branch=master) 31[high coverage](https://coveralls.io/github/jvoisin/snuffleupagus?branch=master)
32(functions, lines and branches), and intend to keep it that way. 32(functions, lines and branches), and intend to keep it that way.
33 33
34#### 3.3 Debugging failures in the test suite 34#### 3.3 Debugging failures in the test suite
@@ -45,9 +45,9 @@ launching it, in order to run the failing test inside GDB.
45### 4. Did you find a bug? 45### 4. Did you find a bug?
46 46
47* **Ensure the bug was not already reported** by 47* **Ensure the bug was not already reported** by
48 [searching all issues](https://github.com/nbs-system/snuffleupagus/issues?q=). 48 [searching all issues](https://github.com/jvoisin/snuffleupagus/issues?q=).
49* If you're unable to find an open issue addressing the problem, 49* If you're unable to find an open issue addressing the problem,
50 [open a new one](https://github.com/nbs-system/snuffleupagus/issues/new). 50 [open a new one](https://github.com/jvoisin/snuffleupagus/issues/new).
51 Be sure to include a **title and clear description**, 51 Be sure to include a **title and clear description**,
52 as much relevant information as possible, and a **code sample** 52 as much relevant information as possible, and a **code sample**
53 or an **executable test case** demonstrating the expected behavior that is not 53 or an **executable test case** demonstrating the expected behavior that is not
@@ -67,7 +67,7 @@ At this point, you should switch back to your master branch and make sure it's
67up to date with our upstream master branch: 67up to date with our upstream master branch:
68 68
69```sh 69```sh
70git remote add upstream git@github.com:nbs-system/snuffleupagus.git 70git remote add upstream git@github.com:jvoisin/snuffleupagus.git
71git checkout master 71git checkout master
72git pull upstream master 72git pull upstream master
73``` 73```
@@ -82,7 +82,7 @@ git push --set-upstream origin 325-kill-sql-injections
82 82
83Finally, go to GitHub and [make a Pull Request](https://help.github.com/articles/creating-a-pull-request) :D 83Finally, go to GitHub and [make a Pull Request](https://help.github.com/articles/creating-a-pull-request) :D
84 84
85Travis CI will [run our test suite](https://travis-ci.org/nbs-system/snuffleupagus) 85Travis CI will [run our test suite](https://travis-ci.org/jvoisin/snuffleupagus)
86against all supported PHP versions. We care about quality, so your PR won't be 86against all supported PHP versions. We care about quality, so your PR won't be
87merged until all tests pass. It's unlikely, but it's possible that your changes 87merged until all tests pass. It's unlikely, but it's possible that your changes
88pass tests in one PHP version but fail in another. In that case, you'll have to 88pass tests in one PHP version but fail in another. In that case, you'll have to
@@ -121,7 +121,7 @@ Maintainers need to do the following to push out a release:
121 121
1221. Make sure that all pending and mergeable pull requests are in 1221. Make sure that all pending and mergeable pull requests are in
1232. Close the corresponding 1232. Close the corresponding
124 [milestone](https://github.com/nbs-system/snuffleupagus/milestones) 124 [milestone](https://github.com/jvoisin/snuffleupagus/milestones)
1252. Run `valgrind` (by adding a `-m` after the `-q` in the Makefile) and check that everything is ok. 1252. Run `valgrind` (by adding a `-m` after the `-q` in the Makefile) and check that everything is ok.
126 Don't mind the python-related issues. 126 Don't mind the python-related issues.
1273. Update the `src/php_snuffleupagus.h` according to [semantic versioning](https://semver.org/) 1273. Update the `src/php_snuffleupagus.h` according to [semantic versioning](https://semver.org/)
@@ -132,15 +132,13 @@ Maintainers need to do the following to push out a release:
1328. Create a tag for the release: 1328. Create a tag for the release:
133 133
134 ```sh 134 ```sh
135 git config user.signingkey 498C46FF087EDC36E7EAF9D445414A82A9B22D78
136 git config user.email security@nbs-system.com
137 git tag -s v$MAJOR.$MINOR.$PATCH -m "v$MAJOR.$MINOR.$PATCH" 135 git tag -s v$MAJOR.$MINOR.$PATCH -m "v$MAJOR.$MINOR.$PATCH"
138 git push --tags 136 git push --tags
139 git push origin master 137 git push origin master
140 ``` 138 ```
141 139
1429. Build the debian package with `make debian` 1409. Build the debian package with `make debian`
14310. Create the [release on github](https://github.com/nbs-system/snuffleupagus/releases) 14110. Create the [release on github](https://github.com/jvoisin/snuffleupagus/releases)
14411. Add the freshly built Debian package to the release 14211. Add the freshly built Debian package to the release
14512. Publish a [tweet](https://twitter.com/sp_php) 14312. Publish a [tweet](https://twitter.com/sp_php)
14613. Do the *secret release dance* 14413. Do the *secret release dance*
diff --git a/Makefile b/Makefile
index c0d65c2..db5878e 100644
--- a/Makefile
+++ b/Makefile
@@ -19,6 +19,7 @@ compile_debug: ## compile a debug build
19 make -C src 19 make -C src
20 20
21debug: compile_debug ## compile and run a debug build 21debug: compile_debug ## compile and run a debug build
22 sed -i "s/\$$ext_params -d display_errors=0 -r/-d display_errors=0 -r/" src/run-tests.php
22 TEST_PHP_ARGS='-q' REPORT_EXIT_STATUS=1 make -C src test 23 TEST_PHP_ARGS='-q' REPORT_EXIT_STATUS=1 make -C src test
23 24
24coverage: ## compile snuffleugpaus, and run the testsuite with coverage 25coverage: ## compile snuffleugpaus, and run the testsuite with coverage
diff --git a/PKGBUILD b/PKGBUILD
index 9c7239e..8ef050d 100644
--- a/PKGBUILD
+++ b/PKGBUILD
@@ -1,4 +1,4 @@
1# Maintainer NBS System Security Team <secu@nbs-system.com> 1# Maintained by Julien (jvoisin) Voisin <julien.voisin+snuffleupagus@dustri.org>
2pkgname="snuffleupagus" 2pkgname="snuffleupagus"
3pkgver=r169.424845a 3pkgver=r169.424845a
4pkgrel=1 4pkgrel=1
@@ -8,7 +8,7 @@ arch=('i686' 'x86_64')
8license=('LGPL3') 8license=('LGPL3')
9depends=('php' 'php-fpm') 9depends=('php' 'php-fpm')
10checkdepends=() 10checkdepends=()
11source=("${pkgname}::git+https://github.com/nbs-system/${pkgname}.git") 11source=("${pkgname}::git+https://github.com/jvoisin/${pkgname}.git")
12md5sums=('SKIP') 12md5sums=('SKIP')
13 13
14pkgver() { 14pkgver() {
diff --git a/README.md b/README.md
index 418ae84..a7ad302 100644
--- a/README.md
+++ b/README.md
@@ -1,7 +1,7 @@
1<h1 align="center"> 1<h1 align="center">
2 <br> 2 <br>
3 <a href="https://snuffleupagus.readthedocs.io/"> 3 <a href="https://snuffleupagus.readthedocs.io/">
4 <img src="https://github.com/nbs-system/snuffleupagus/raw/master/doc/source/_static/sp.png" alt="Snuffleupagus' logo" width="200"></a> 4 <img src="https://github.com/jvoisin/snuffleupagus/raw/master/doc/source/_static/sp.png" alt="Snuffleupagus' logo" width="200"></a>
5 <br> 5 <br>
6 Snuffleupagus 6 Snuffleupagus
7 <br> 7 <br>
@@ -10,8 +10,8 @@
10<h4 align="center">Security module for php7 - Killing bugclasses and virtual-patching the rest!</h4> 10<h4 align="center">Security module for php7 - Killing bugclasses and virtual-patching the rest!</h4>
11 11
12<p align="center"> 12<p align="center">
13 <a href="https://travis-ci.org/nbs-system/snuffleupagus"> 13 <a href="https://travis-ci.org/jvoisin/snuffleupagus">
14 <img src="https://travis-ci.org/nbs-system/snuffleupagus.svg?branch=master" 14 <img src="https://travis-ci.org/jvoisin/snuffleupagus.svg?branch=master"
15 alt="Travis-ci"> 15 alt="Travis-ci">
16 </a> 16 </a>
17 <a href="https://gitlab.com/jvoisin/snuffleupagus/commits/master"> 17 <a href="https://gitlab.com/jvoisin/snuffleupagus/commits/master">
@@ -30,8 +30,8 @@
30 <img src="https://readthedocs.org/projects/snuffleupagus/badge/?version=latest" 30 <img src="https://readthedocs.org/projects/snuffleupagus/badge/?version=latest"
31 alt="readthedocs.org"> 31 alt="readthedocs.org">
32 </a> 32 </a>
33 <a href="https://coveralls.io/github/nbs-system/snuffleupagus?branch=master"> 33 <a href="https://coveralls.io/github/jvoisin/snuffleupagus?branch=master">
34 <img src="https://coveralls.io/repos/github/nbs-system/snuffleupagus/badge.svg?branch=master" 34 <img src="https://coveralls.io/repos/github/jvoisin/snuffleupagus/badge.svg?branch=master"
35 alt="coveralls"> 35 alt="coveralls">
36 </a> 36 </a>
37 <a href="https://twitter.com/sp_php"> 37 <a href="https://twitter.com/sp_php">
@@ -45,7 +45,7 @@
45 <a href="#download">Download</a> • 45 <a href="#download">Download</a> •
46 <a href="#examples">Examples</a> • 46 <a href="#examples">Examples</a> •
47 <a href="https://snuffleupagus.readthedocs.io/">Documentation</a> • 47 <a href="https://snuffleupagus.readthedocs.io/">Documentation</a> •
48 <a href="https://github.com/nbs-system/snuffleupagus/blob/master/LICENSE">License</a> • 48 <a href="https://github.com/jvoisin/snuffleupagus/blob/master/LICENSE">License</a> •
49 <a href="#thanks">Thanks</a> 49 <a href="#thanks">Thanks</a>
50</p> 50</p>
51 51
@@ -76,7 +76,7 @@ without having to touch the PHP code.
76 * Enforcing TLS certificate validation when using [curl](https://secure.php.net/manual/en/book.curl.php) 76 * Enforcing TLS certificate validation when using [curl](https://secure.php.net/manual/en/book.curl.php)
77 * Request dumping capability 77 * Request dumping capability
78* A relatively sane code base: 78* A relatively sane code base:
79 * A [comprehensive](https://coveralls.io/github/nbs-system/snuffleupagus?branch=master) test suite close to 100% coverage 79 * A [comprehensive](https://coveralls.io/github/jvoisin/snuffleupagus?branch=master) test suite close to 100% coverage
80 * Every commit is tested on [several distributions](https://gitlab.com/jvoisin/snuffleupagus/pipelines) 80 * Every commit is tested on [several distributions](https://gitlab.com/jvoisin/snuffleupagus/pipelines)
81 * An `clang-format`-enforced code style 81 * An `clang-format`-enforced code style
82 * A [comprehensive documentation](https://snuffleupagus.rtfd.io) 82 * A [comprehensive documentation](https://snuffleupagus.rtfd.io)
@@ -87,11 +87,11 @@ without having to touch the PHP code.
87We've got a [download 87We've got a [download
88page](https://snuffleupagus.readthedocs.io/download.html), where you can find 88page](https://snuffleupagus.readthedocs.io/download.html), where you can find
89packages for your distribution, but you can of course just `git clone` this 89packages for your distribution, but you can of course just `git clone` this
90repo, or check the releases on [github](https://github.com/nbs-system/snuffleupagus/releases). 90repo, or check the releases on [github](https://github.com/jvoisin/snuffleupagus/releases).
91 91
92## Examples 92## Examples
93 93
94We're providing [various example rules](https://github.com/nbs-system/snuffleupagus/tree/master/config), 94We're providing [various example rules](https://github.com/jvoisin/snuffleupagus/tree/master/config),
95that are looking like this: 95that are looking like this:
96 96
97```python 97```python
@@ -112,10 +112,10 @@ Upon violation of a rule, you should see lines like this in your logs:
112 112
113We've got a [comprehensive website](https://snuffleupagus.readthedocs.io/) with 113We've got a [comprehensive website](https://snuffleupagus.readthedocs.io/) with
114all the documentation that you could possibly wish for. You can of course 114all the documentation that you could possibly wish for. You can of course
115[build it yourself](https://github.com/nbs-system/snuffleupagus/tree/master/doc). 115[build it yourself](https://github.com/jvoisin/snuffleupagus/tree/master/doc).
116 116
117## Thanks 117## Thanks
118 118
119Many thanks to the [Suhosin project](https://suhosin.org) for being a __huge__ 119Many thanks to the [Suhosin project](https://suhosin.org) for being a __huge__
120source of inspiration, and to all [our 120source of inspiration, and to all [our
121contributors](https://github.com/nbs-system/snuffleupagus/graphs/contributors). 121contributors](https://github.com/jvoisin/snuffleupagus/graphs/contributors).
diff --git a/config/default.rules b/config/default.rules
index 82f8b5d..05dd91d 100644
--- a/config/default.rules
+++ b/config/default.rules
@@ -42,6 +42,13 @@ sp.disable_function.function("mail").param("additional_parameters").value_r("\\-
42# Since it's now burned, me might as well mitigate it publicly 42# Since it's now burned, me might as well mitigate it publicly
43sp.disable_function.function("putenv").param("setting").value_r("LD_").drop() 43sp.disable_function.function("putenv").param("setting").value_r("LD_").drop()
44 44
45# This one was burned in Nov 2019 - https://gist.github.com/LoadLow/90b60bd5535d6c3927bb24d5f9955b80
46sp.disable_function.function("putenv").param("setting").value_r("GCONV_").drop()
47
48# Since people are stupid enough to use `extract` on things like $_GET or $_POST, we might as well mitigate this vector
49sp.disable_function.function("extract").param("var_array").value_r("^_").drop()
50sp.disable_function.function("extract").param("extract_type").value("0").drop()
51
45# This is also burned: 52# This is also burned:
46# ini_set('open_basedir','..');chdir('..');…;chdir('..');ini_set('open_basedir','/');echo(file_get_contents('/etc/passwd')); 53# ini_set('open_basedir','..');chdir('..');…;chdir('..');ini_set('open_basedir','/');echo(file_get_contents('/etc/passwd'));
47# Since we have no way of matching on two parameters at the same time, we're 54# Since we have no way of matching on two parameters at the same time, we're
@@ -66,16 +73,16 @@ sp.disable_function.function("exec").param("command").value_r("[$|;&`\\n\\(\\)\\
66sp.disable_function.function("proc_open").param("command").value_r("[$|;&`\\n\\(\\)\\\\]").drop(); 73sp.disable_function.function("proc_open").param("command").value_r("[$|;&`\\n\\(\\)\\\\]").drop();
67 74
68# Prevent runtime modification of interesting things 75# Prevent runtime modification of interesting things
69sp.disable_function.function("ini_set").param("var_name").value("assert.active").drop(); 76sp.disable_function.function("ini_set").param("varname").value("assert.active").drop();
70sp.disable_function.function("ini_set").param("var_name").value("zend.assertions").drop(); 77sp.disable_function.function("ini_set").param("varname").value("zend.assertions").drop();
71sp.disable_function.function("ini_set").param("var_name").value("memory_limit").drop(); 78sp.disable_function.function("ini_set").param("varname").value("memory_limit").drop();
72sp.disable_function.function("ini_set").param("var_name").value("include_path").drop(); 79sp.disable_function.function("ini_set").param("varname").value("include_path").drop();
73sp.disable_function.function("ini_set").param("var_name").value("open_basedir").drop(); 80sp.disable_function.function("ini_set").param("varname").value("open_basedir").drop();
74 81
75# Detect some backdoors via environnement recon 82# Detect some backdoors via environnement recon
76sp.disable_function.function("ini_get").param("var_name").value("allow_url_fopen").drop(); 83sp.disable_function.function("ini_get").param("varname").value("allow_url_fopen").drop();
77sp.disable_function.function("ini_get").param("var_name").value("open_basedir").drop(); 84sp.disable_function.function("ini_get").param("varname").value("open_basedir").drop();
78sp.disable_function.function("ini_get").param("var_name").value_r("suhosin").drop(); 85sp.disable_function.function("ini_get").param("varname").value_r("suhosin").drop();
79sp.disable_function.function("function_exists").param("function_name").value("eval").drop(); 86sp.disable_function.function("function_exists").param("function_name").value("eval").drop();
80sp.disable_function.function("function_exists").param("function_name").value("exec").drop(); 87sp.disable_function.function("function_exists").param("function_name").value("exec").drop();
81sp.disable_function.function("function_exists").param("function_name").value("system").drop(); 88sp.disable_function.function("function_exists").param("function_name").value("system").drop();
@@ -131,3 +138,8 @@ sp.disable_function.function("curl_setopt").param("option").value("81").drop().a
131#File upload 138#File upload
132sp.disable_function.function("move_uploaded_file").param("destination").value_r("\\.ph").drop(); 139sp.disable_function.function("move_uploaded_file").param("destination").value_r("\\.ph").drop();
133sp.disable_function.function("move_uploaded_file").param("destination").value_r("\\.ht").drop(); 140sp.disable_function.function("move_uploaded_file").param("destination").value_r("\\.ht").drop();
141
142# Logging lockdown
143sp.disable_function.function("ini_set").param("varname").value_r("error_log").drop()
144sp.disable_function.function("ini_set").param("varname").value_r("error_reporting").drop()
145sp.disable_function.function("ini_set").param("varname").value_r("display_errors").drop()
diff --git a/debian/control b/debian/control
index 5ec0480..51e0b15 100644
--- a/debian/control
+++ b/debian/control
@@ -1,11 +1,11 @@
1Source: snuffleupagus 1Source: snuffleupagus
2Priority: optional 2Priority: optional
3Maintainer: NBS System <snuffleupagus@nbs-system.com> 3Maintainer: Julien (jvoisin) Voisin <julien.voisin+snuffleupagus@dustri.org>
4Build-Depends: debhelper (>= 9), php7.0-dev | php7.1-dev | php7.2-dev 4Build-Depends: debhelper (>= 9), php7.0-dev | php7.1-dev | php7.2-dev | php7.3-dev | php7.4-dev
5Standards-Version: 4.1.3 5Standards-Version: 4.1.3
6Homepage: https://snuffleupagus.fr 6Homepage: https://github.com/jvoisin/snuffleupagus
7Section: php 7Section: php
8Vcs-Git: https://github.com/nbs-system/snuffleupagus 8Vcs-Git: https://github.com/jvoisin/snuffleupagus
9 9
10Package: snuffleupagus 10Package: snuffleupagus
11Architecture: any 11Architecture: any
diff --git a/debian/copyright b/debian/copyright
index a792452..af8f542 100644
--- a/debian/copyright
+++ b/debian/copyright
@@ -1,7 +1,7 @@
1Format: https://www.debian.org/doc/packaging-manuals/copyright-format/1.0/ 1Format: https://www.debian.org/doc/packaging-manuals/copyright-format/1.0/
2Upstream-Name: Snuffleupagus 2Upstream-Name: Snuffleupagus
3Upstream-Contact: NBS System <snuffleupagus@nbs-system.com> 3Upstream-Contact: Julien (jvoisin) Voisin <julien.voisin+snuffleupagus@dustri.org>
4Source: https://github.com/nbs-system/snuffleupagus 4Source: https://github.com/jvoisin/snuffleupagus
5 5
6Files: * 6Files: *
7Copyright: 2017 NBS System 7Copyright: 2017 NBS System
diff --git a/debian/watch b/debian/watch
index 86028c7..2f88601 100644
--- a/debian/watch
+++ b/debian/watch
@@ -1,2 +1,2 @@
1version=3 1version=3
2https://github.com/nbs-system/snuffleupagus/tags /nbs-system/snuffleupagus/archive/snuffleupagus-([0-9.]+)\.tar\.(gz|xz|bz2) 2https://github.com/jvoisin/snuffleupagus/tags /jvoisin/snuffleupagus/archive/snuffleupagus-([0-9.]+)\.tar\.(gz|xz|bz2)
diff --git a/doc/source/config.rst b/doc/source/config.rst
index 89e063f..91e085c 100644
--- a/doc/source/config.rst
+++ b/doc/source/config.rst
@@ -81,6 +81,24 @@ This configuration variable contains parameters that are used by multiple featur
81- ``cookie_env_var``: A environment variable used as part of cookies encryption. 81- ``cookie_env_var``: A environment variable used as part of cookies encryption.
82 See the :ref:`relevant documentation <config_cookie-encryption>` 82 See the :ref:`relevant documentation <config_cookie-encryption>`
83 83
84log_media
85^^^^^^^^^
86
87This configuration variable allows to specify how logs should be written,
88either via ``php`` or ``syslog``.
89
90::
91
92 sp.log_media("php");
93 sp.log_media("syslog");
94
95The default value for ``sp.log_media`` is ``php``, to respect the `principle of
96least astonishment
97<https://en.wikipedia.org/wiki/Principle_of_least_astonishment>`__. But since
98it's `possible to modify php's logging system via php
99<https://www.php.net/manual/en/errorfunc.configuration.php>`__, it's
100heavily recommended to use the ``syslog`` option instead.
101
84 102
85Bugclass-killer features 103Bugclass-killer features
86------------------------ 104------------------------
@@ -181,8 +199,8 @@ argument and various information about it in the environment:
181 199
182This feature can be used, for example, to check if an uploaded file contains php 200This feature can be used, for example, to check if an uploaded file contains php
183code, using `vld <https://derickrethans.nl/projects.html#vld>`_, 201code, using `vld <https://derickrethans.nl/projects.html#vld>`_,
184via `a python script <https://github.com/nbs-system/snuffleupagus/tree/master/scripts/upload_validation.py>`__, 202via `a python script <https://github.com/jvoisin/snuffleupagus/tree/master/scripts/upload_validation.py>`__,
185or `a php one <https://github.com/nbs-system/snuffleupagus/tree/master/scripts/upload_validation.php>`__. 203or `a php one <https://github.com/jvoisin/snuffleupagus/tree/master/scripts/upload_validation.php>`__.
186 204
187The upload will be **allowed** if the script returns the value ``0``. Every other 205The upload will be **allowed** if the script returns the value ``0``. Every other
188value will prevent the file from being uploaded. 206value will prevent the file from being uploaded.
@@ -236,8 +254,11 @@ blacklisted, it'll be allowed.
236Virtual-patching 254Virtual-patching
237---------------- 255----------------
238 256
239Snuffleupagus provides virtual-patching via the ``disable_function`` directive, allowing you to stop or control dangerous behaviours. 257Snuffleupagus provides virtual-patching via the ``disable_function`` directive,
240In the situation where you have a call to ``system()`` that lacks proper user-input validation, this could cause issues as it would lead to an **RCE**. The virtual-patching would allow this to be prevented. 258allowing you to stop or control dangerous behaviours. In the situation where
259you have a call to ``system()`` that lacks proper user-input validation, this
260could cause issues as it would lead to an **RCE**. The virtual-patching would
261allow this to be prevented.
241 262
242:: 263::
243 264
@@ -287,8 +308,14 @@ The ``type`` must be one of the following values:
287Actions 308Actions
288^^^^^^^ 309^^^^^^^
289 310
311Every rule *must* have one action.
312
290- ``allow()``: **allow** the request if the rule matches 313- ``allow()``: **allow** the request if the rule matches
291- ``drop()``: **drop** the request if the rule matches 314- ``drop()``: **drop** the request if the rule matches
315
316Modifications
317^^^^^^^^^^^^^
318
292- ``dump(directory)``: dump the request in the ``directory`` if it matches the rule 319- ``dump(directory)``: dump the request in the ``directory`` if it matches the rule
293- ``simulation()``: enabled the simulation mode 320- ``simulation()``: enabled the simulation mode
294 321
@@ -324,7 +351,7 @@ For clarity, the presence of the ``allow`` or ``drop`` action is **mandatory**.
324 because it'll match the deny first. 351 because it'll match the deny first.
325 352
326If you're paranoid, we're providing a `php script 353If you're paranoid, we're providing a `php script
327<https://github.com/nbs-system/snuffleupagus/blob/master/scripts/generate_rules.php>`__ 354<https://github.com/jvoisin/snuffleupagus/blob/master/scripts/generate_rules.php>`__
328to automatically generate hash of files containing dangerous functions, and 355to automatically generate hash of files containing dangerous functions, and
329blacklisting them everywhere else. 356blacklisting them everywhere else.
330 357
@@ -340,7 +367,7 @@ It's currently not possible to:
340 things like this, odds are that you're doing something wrong anyway. 367 things like this, odds are that you're doing something wrong anyway.
341- Hooks on ``echo`` and on ``print`` are equivalent: there is no way to hook one 368- Hooks on ``echo`` and on ``print`` are equivalent: there is no way to hook one
342 without hooking the other, at least 369 without hooking the other, at least
343 `for now <https://github.com/nbs-system/snuffleupagus/issues/190>`__). 370 `for now <https://github.com/jvoisin/snuffleupagus/issues/190>`__).
344 This is why hooked ``print`` will be displayed as ``echo`` in the logs. 371 This is why hooked ``print`` will be displayed as ``echo`` in the logs.
345- Hook `strlen`, since in latest PHP versions, this function is usually 372- Hook `strlen`, since in latest PHP versions, this function is usually
346 optimized away by the compiled. 373 optimized away by the compiled.
diff --git a/doc/source/debug.rst b/doc/source/debug.rst
index b339366..b2a1f28 100644
--- a/doc/source/debug.rst
+++ b/doc/source/debug.rst
@@ -18,7 +18,7 @@ We're using `php qa <https://qa.php.net/>`__ tests format for our testsuite,
18it is automatically run when you're building snuffleupagus. 18it is automatically run when you're building snuffleupagus.
19 19
20If it happens to have unexpected failures (Since we're using `TDD <https://en.wikipedia.org/wiki/Test-driven_development>`__ as much 20If it happens to have unexpected failures (Since we're using `TDD <https://en.wikipedia.org/wiki/Test-driven_development>`__ as much
21as we can, we do have some expected failures), please do `open an issue <https://github.com/nbs-system/snuffleupagus/issues/new>`__ 21as we can, we do have some expected failures), please do `open an issue <https://github.com/jvoisin/snuffleupagus/issues/new>`__
22on our bugtracker, and attach the generated ``.diff`` and ``.out`` files to it, 22on our bugtracker, and attach the generated ``.diff`` and ``.out`` files to it,
23so we can see what's happening. 23so we can see what's happening.
24 24
@@ -27,7 +27,7 @@ Snuffleupagus is crashing
27 27
28While we do our very best to make snuffleupagus solid as possible, we're humans, 28While we do our very best to make snuffleupagus solid as possible, we're humans,
29and computers are hard, so crashes can happen. If you're encountering one in production, 29and computers are hard, so crashes can happen. If you're encountering one in production,
30please try to launch the `testsuite <https://github.com/nbs-system/snuffleupagus/blob/master/CONTRIBUTING.md#3-get-the-test-suite-running>`__ 30please try to launch the `testsuite <https://github.com/jvoisin/snuffleupagus/blob/master/CONTRIBUTING.md#3-get-the-test-suite-running>`__
31to see if it's failing. If it does, please :ref:`tell us <testsuite_fail>`. 31to see if it's failing. If it does, please :ref:`tell us <testsuite_fail>`.
32 32
33If the testsuite is passing, odds are that you're encountering an issue tied to your php code, 33If the testsuite is passing, odds are that you're encountering an issue tied to your php code,
diff --git a/doc/source/download.rst b/doc/source/download.rst
index dfe4768..fd61099 100644
--- a/doc/source/download.rst
+++ b/doc/source/download.rst
@@ -4,20 +4,20 @@ Download
4Arch Linux 4Arch Linux
5---------- 5----------
6 6
7We're providing a `PKGBUILD <https://github.com/nbs-system/snuffleupagus/blob/master/PKGBUILD>`__, 7We're providing a `PKGBUILD <https://github.com/jvoisin/snuffleupagus/blob/master/PKGBUILD>`__,
8so you can build a package yourself. 8so you can build a package yourself.
9 9
10Alpine Linux 10Alpine Linux
11------------ 11------------
12 12
13We're providing a `APKBUILD <https://github.com/nbs-system/snuffleupagus/blob/master/APKBUILD>`__, 13We're providing a `APKBUILD <https://github.com/jvoisin/snuffleupagus/blob/master/APKBUILD>`__,
14so you can build a package yourself. 14so you can build a package yourself.
15 15
16Debian and Ubuntu 16Debian and Ubuntu
17----------------- 17-----------------
18 18
19We're currently not providing a Debian/Ubuntu repository, 19We're currently not providing a Debian/Ubuntu repository,
20but you can grab the latest release on `github <https://github.com/nbs-system/snuffleupagus/releases>`__, 20but you can grab the latest release on `github <https://github.com/jvoisin/snuffleupagus/releases>`__,
21or build your own package by cloning the source code and typing ``make debian``. 21or build your own package by cloning the source code and typing ``make debian``.
22 22
23Fedora 23Fedora
@@ -39,4 +39,4 @@ We're currently using *github* as public code repository.
39 39
40:: 40::
41 41
42 git clone https://github.com/nbs-system/snuffleupagus 42 git clone https://github.com/jvoisin/snuffleupagus
diff --git a/doc/source/faq.rst b/doc/source/faq.rst
index d8ca973..3c09409 100644
--- a/doc/source/faq.rst
+++ b/doc/source/faq.rst
@@ -41,20 +41,20 @@ Who are you and why did you write Snuffleupagus?
41 41
42We're working for `NBS System <https://nbs-system.com/en/>`__, 42We're working for `NBS System <https://nbs-system.com/en/>`__,
43a web hosting company (meaning that we're dealing with PHP code all day long), 43a web hosting company (meaning that we're dealing with PHP code all day long),
44with a strong focus on security. We do have hardening 44with a strong focus on security. We do have several layers of hardening
45(`kernel <https://grsecurity.net/>`_, `WAF <https://naxsi.org>`_, 45(`kernel <https://grsecurity.net/>`_, `WAF <https://naxsi.org>`_,
46`IDS <https://en.wikipedia.org/wiki/Intrusion_detection_system>`_, etc) 46`IDS <https://en.wikipedia.org/wiki/Intrusion_detection_system>`_, etc),
47below the web stack, but most of the time, when a website is compromised, 47but we had nothing for PHP7.
48it can be to send ads, spam, deface it, steal data etc. 48
49This is why we need to harden the website itself too, but we can't touch its 49Nowadays, Snuffleupagus is maintained by Julien (jvoisin) Voisin.
50source code. 50
51 51
52Why not Suhosin? 52Why not Suhosin?
53"""""""""""""""" 53""""""""""""""""
54 54
55We're huge fans of `Suhosin <https://suhosin.org>`_, unfortunately: 55We're huge fans of `Suhosin <https://suhosin.org>`_, unfortunately:
56 56
57- it doesn't work very well on PHP 7 57- it doesn't work very well on PHP7
58- it has some oudated features and misses new ones 58- it has some oudated features and misses new ones
59- it doesn't cope very well with our various industrialization needs 59- it doesn't cope very well with our various industrialization needs
60- it has some shortcomings by design 60- it has some shortcomings by design
@@ -65,18 +65,32 @@ the `system <https://secure.php.net/manual/en/function.system.php#refsect1-funct
65function to perform various mandatory maintenance tasks). 65function to perform various mandatory maintenance tasks).
66 66
67This is why we decided to write our own hardening module, in the spirit of Suhosin, 67This is why we decided to write our own hardening module, in the spirit of Suhosin,
68via virtual-patching support, and other cool new features. 68with virtual-patching support, as well as other cool new features.
69 69
70What license is Snuffleupagus under and why? 70
71"""""""""""""""""""""""""""""""""""""""""""" 71What license is Snuffleupagus released under and why?
72"""""""""""""""""""""""""""""""""""""""""""""""""""""
72 73
73Snuffleupagus is licensed under the `LGPL <https://www.gnu.org/copyleft/lesser.html>`_ 74Snuffleupagus is licensed under the `LGPL <https://www.gnu.org/copyleft/lesser.html>`_
74and is developed by the fine people from `NBS System <https://nbs-system.com/>`__. 75was developed by the fine people from `NBS System <https://nbs-system.com/>`__,
76and is maintained by Julien (jvoisin) Voisin.
75 77
76We chose the LGPL because we don't care that much how you're using Snuffleupagus, 78We chose the LGPL because we don't care that much how you're using Snuffleupagus,
77but we'd like to force people to make their improvements/contributions 79but we'd like to force people to make their improvements/contributions
78available to everyone. 80available to everyone.
79 81
82
83What is the different between SNuffleupaugs and a (WAF) like ModSecurity?
84"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
85
86`ModSecurity <https://modsecurity.org/>`__ and the other `Web Application
87Firewall (WAF) <https://en.wikipedia.org/wiki/Web_application_firewall>`__ are
88working by inspecting the http traffic. Snuffleupagus being a PHP module, is
89operating directly inside your website's code, with a lesser overhead, as well
90as a better understanding of what is currently happening inside your
91application.
92
93
80Should I use Snuffleupagus? 94Should I use Snuffleupagus?
81""""""""""""""""""""""""""" 95"""""""""""""""""""""""""""
82 96
@@ -113,6 +127,18 @@ is still a security issue, and should be treated as such.
113We don't have the pretension to state that Snuffleupagus will magically solve 127We don't have the pretension to state that Snuffleupagus will magically solve
114all your security issues, but we believe that it might definitely help. 128all your security issues, but we believe that it might definitely help.
115 129
130
131Sounds great, but is it working?
132""""""""""""""""""""""""""""""""
133
134We've been using it in production since a couple of years, and it thwarted
135numerous known and unknown attacks. If you want some evidences, one of the
136developer published in June 2019 a `blogpost
137<https://dustri.org/b/snuffleupagus-versus-recent-high-profile-vulnerabilities.html>`__
138showcasing how efficient Snuffleupagus was versus *major* web
139vulnerabilities from 2018/2019.
140
141
116Why should I send you bugs, security issues and patches? 142Why should I send you bugs, security issues and patches?
117""""""""""""""""""""""""""""""""""""""""""""""""""""""""" 143"""""""""""""""""""""""""""""""""""""""""""""""""""""""""
118Snuffleupagus is an open-source security software, by reporting (or fixing) 144Snuffleupagus is an open-source security software, by reporting (or fixing)
@@ -148,7 +174,7 @@ By checking the logs; Snuffleupagus systematically prefix them with ``[snuffleup
148 174
149Does Snuffleupagus run on Windows? 175Does Snuffleupagus run on Windows?
150"""""""""""""""""""""""""""""""""" 176""""""""""""""""""""""""""""""""""
151No idea, feel free to `try <https://github.com/nbs-system/snuffleupagus/issues/2>`_. 177No idea, feel free to `try <https://github.com/jvoisin/snuffleupagus/issues/2>`_.
152 178
153 179
154Does Snuggleupagus run on `HHVM <http://hhvm.com/>`_? 180Does Snuggleupagus run on `HHVM <http://hhvm.com/>`_?
@@ -181,46 +207,13 @@ discuss potential impact of the vulnerability,
181reference applicable patches or workarounds, 207reference applicable patches or workarounds,
182and credit the discoverer. 208and credit the discoverer.
183 209
184Please send it us a mail to the ``security`` user, 210Please do send a mail to [Julien (jvoisin) Voisin](https://dustri.org) should
185on ``nbs-system.com``, using the gpg key 211you find a security issue.
186``498C46FF087EDC36E7EAF9D445414A82A9B22D78``:
187
188::
189
190 -----BEGIN PGP PUBLIC KEY BLOCK-----
191 212
192 mQENBFnKHhoBCADaOa0MKEqRy0h2ohIzczblzkMQCbU9oD1HwJ1VkYnn7TGW2iKi
193 NISxisExIXpy2Bn/pA27GiV0V/Do3NL6D9r0oOCrGR27muGM0N/dk9UMv7MWw8zv
194 K8cO+Sa28s0cAv7r2ogUJj5YOo8D4wHEpE8424TE89V9+Qg/SaFCxKoELFP0c7wu
195 mtsm0PnL65piZ1EB7lQo2gxg+8AV45MD1Y2rREMKUoZE23X+nXKsmEh9BFEPaU5M
196 7WQp0NasqeMNoGhwfw9ttVAeLhkEkaTjW1PkNRIb7vrtV9KVb5uKucflfbOnDlzu
197 tQ9U3tYto0mcSCRchAClfEmoSi/0mKyb5N6ZABEBAAG0NVNlY3VyaXR5IHRlYW0g
198 b2YgTkJTIFN5c3RlbSA8c2VjdXJpdHlAbmJzLXN5c3RlbS5jb20+iQE3BBMBCAAh
199 BQJZyh4aAhsDBQsJCAcCBhUICQoLAgQWAgMBAh4BAheAAAoJEEVBSoKpsi14jy0H
200 /1/XB9THhvmG0ow81sld2Zx8qhnNed8VvYDS6mEjpDWNVPxENwDbnakEjisq1Hrb
201 2UQPYCyQ5dekPNFVwQHIGXkX0eb1Ank+4esBJuEpQ2985tgNhJy5ZX+Imb5C8nZC
202 90uYSN1UUg559nUsFeElOXSEH6tIXK/TvjsvMYoi2Ukl6lb7PbIU2fjLY9Iqv3QY
203 32p8/Bl1fVKWbXOk0HDgJ6zA3Kr56QhZOLBkxjOa2XAnnIE76jZxUJ9qPCwWd1vW
204 GFxtx1Y+eZriqHiC9CPe6aBWcIHaTXSu1WBbXrFu8/eCWw243Rxm8l9wgA/a7VWq
205 WBfO45IhJUwh95naRpw8/4a5AQ0EWcoeGgEIAJtzSyyzfn2RX+BsyoRFANUpIgrV
206 /9eohYQVNqK3AFthmq7Kjmt4+hszF5+0wCFmWwYqGnqk1/dsWmqpkXsJldEn6oPJ
207 Bng+Dc67Yki2dR3TroAf95UmI08fhyM7TMXp8m46BPRRMzPNwalEeEm49Oclmfxb
208 JsWWCChWVLWGz2xgPEAv3fPHqus7Rwz/WIl53l/qy1Wf0ewmjRpVEfnEMKBExtBK
209 4kRxQ40LzUZ1SfpyGc3nMbswhevT7/klqrdJdCnlu67Y/IfRGxGZuNj1n1Dib3Hx
210 zTBHo3Y2R3BB93Ix8dkbLaxLqFbOYVdijCgJklqUWhx7btpQ2xnZyzyCMuUAEQEA
211 AYkBHwQYAQgACQUCWcoeGgIbDAAKCRBFQUqCqbIteFRvB/9u3Mae8n8ELrJKOn+P
212 PEbWjutObIuTplvY4QcbnNb9dsgsKryamp4CFJsA5XuitPpC31GDMXBZO5/LLOuH
213 HoMaXFJdic0NToL/3REhu+aZkNIU6S/iaPRNVhkSV4lwQsvncz+nBaiDUJjyfJm2
214 kEjVcRTM8yqzcNo/9Gn0ts+XCUqRj7+S1M4Bj3NySoO/w2n+7OLbIAj+wQZcj3Gf
215 5QhBYaY4YaFxrJE0IZxyXGHw8xhKR6AN+u4TO7LRCW+cWV/sHWir1MXieJoEG8+R
216 W/BhrB0Rz5uxOXMoGCCD2TUiHq7zpuHGnYFVmAnHQZaaQxXve4VrcmznxgpV8lpW
217 mZug
218 =+eIv
219 -----END PGP PUBLIC KEY BLOCK-----
220 213
221I found a bug. How can I report it? 214I found a bug. How can I report it?
222""""""""""""""""""""""""""""""""""" 215"""""""""""""""""""""""""""""""""""
223We do have an issue tracker on `Github <https://github.com/nbs-system/snuffleupagus/issues>`_. 216We do have an issue tracker on `Github <https://github.com/jvoisin/snuffleupagus/issues>`_.
224Please make sure to include as much information as possible when reporting your issue, 217Please make sure to include as much information as possible when reporting your issue,
225such as your operating system, your version of PHP 7, your version of Snuffleupagus, 218such as your operating system, your version of PHP 7, your version of Snuffleupagus,
226your logs, the problematic php code, the request, a brief description, … long story short, 219your logs, the problematic php code, the request, a brief description, … long story short,
@@ -232,12 +225,9 @@ it's not that hard.
232Where can I find even more help? 225Where can I find even more help?
233"""""""""""""""""""""""""""""""" 226""""""""""""""""""""""""""""""""
234The :doc:`configuration page <config>` might be what you're looking for. 227The :doc:`configuration page <config>` might be what you're looking for.
235If you're adventurous, you can also check the `issue tracker <https://github.com/nbs-system/snuffleupagus/issues/?q=is%3Aissue>`_ 228If you're adventurous, you can also check the `issue tracker <https://github.com/jvoisin/snuffleupagus/issues/?q=is%3Aissue>`_
236(make sure to check the `closed issues <https://github.com/nbs-system/snuffleupagus/issues?q=is%3Aissue+is%3Aclosed>`_ too). 229(make sure to check the `closed issues <https://github.com/jvoisin/snuffleupagus/issues?q=is%3Aissue+is%3Aclosed>`_ too).
237 230
238I need professional support for my company.
239"""""""""""""""""""""""""""""""""""""""""""
240Contact `NBS System <https://nbs-system.com>`_.
241 231
242Unimplemented mitigations and abandoned ideas 232Unimplemented mitigations and abandoned ideas
243--------------------------------------------- 233---------------------------------------------
@@ -255,3 +245,19 @@ if someone can manage to get better results than us.
255The possibility of having this natively in PHP has 245The possibility of having this natively in PHP has
256`been discussed <https://marc.info/?l=php-internals&m=141692988212413&w=2>`_, 246`been discussed <https://marc.info/?l=php-internals&m=141692988212413&w=2>`_,
257but as 2017, nothing has been merged yet. 247but as 2017, nothing has been merged yet.
248
249Nop'ing function execution
250""""""""""""""""""""""""""
251
252Snuffleupagus can be configured to either *allow* or *drop* the execution of
253particular functions and optionally *log* and *dump* them, but it doesn't
254provide any mechanism to *nop* their execution.
255
256We thought about adding this, but didn't for several reasons:
257
258- What should the return value of a *nop'ed* function be?
259- It would add confusion between ``drop``, ``nop`` and ``log``.
260- Usually, when a specific function is called, either it's a dangerous one
261 and you want to stop the execution immediately, or you want to let it
262 continue and log it. There isn't really any middle-ground, or at least we
263 failed to find any.
diff --git a/doc/source/features.rst b/doc/source/features.rst
index 407b9c7..0c23dc1 100644
--- a/doc/source/features.rst
+++ b/doc/source/features.rst
@@ -73,7 +73,7 @@ Like *Suhosin*, we are encrypting the cookies with a secret key,
73an environment variable (usually the IP of the user) 73an environment variable (usually the IP of the user)
74and the user's user-agent. This means that an attacker with an XSS won't be able to use 74and the user's user-agent. This means that an attacker with an XSS won't be able to use
75the stolen cookie, since he can't spoof the content of the value of the environment 75the stolen cookie, since he can't spoof the content of the value of the environment
76variable for the user. Please do read the :ref:`documentation about this feature <config_cookie-encryption>` 76variable for the user. Please do read the :ref:`documentation about this feature <cookie-encryption-page>`
77if you're planning to use it. 77if you're planning to use it.
78 78
79This feature is roughly the same than the `Suhosin one <https://suhosin.org/stories/configuration.html#transparent-encryption-options>`_. 79This feature is roughly the same than the `Suhosin one <https://suhosin.org/stories/configuration.html#transparent-encryption-options>`_.
@@ -444,7 +444,7 @@ or ``is_callable`` with *suspicious* parameters.
444Some PHP applications are using broad rights when using the ``chmod`` function, 444Some PHP applications are using broad rights when using the ``chmod`` function,
445like the infamous ``chmod(777)`` command, effectively making the file writable by everyone. 445like the infamous ``chmod(777)`` command, effectively making the file writable by everyone.
446Snuffleupagus is preventing this kind of behaviour by restricting the parameters 446Snuffleupagus is preventing this kind of behaviour by restricting the parameters
447than can be passed to ``chmod``. 447that can be passed to ``chmod``.
448 448
449Arbitrary file inclusion hardening 449Arbitrary file inclusion hardening
450"""""""""""""""""""""""""""""""""" 450""""""""""""""""""""""""""""""""""
diff --git a/doc/source/installation.rst b/doc/source/installation.rst
index 74d5d4f..a6b0ff8 100644
--- a/doc/source/installation.rst
+++ b/doc/source/installation.rst
@@ -1,7 +1,7 @@
1Installation 1Installation
2============ 2============
3 3
4Snuffleupagus is tested against `various PHP 7+ versions <https://travis-ci.org/nbs-system/snuffleupagus/>`_. 4Snuffleupagus is tested against `various PHP 7+ versions <https://travis-ci.org/jvoisin/snuffleupagus/>`_.
5 5
6Manual installation 6Manual installation
7------------------- 7-------------------
@@ -21,7 +21,7 @@ Quickstart
21 21
22:: 22::
23 23
24 git clone https://github.com/nbs-system/snuffleupagus 24 git clone https://github.com/jvoisin/snuffleupagus
25 cd snuffleupagus/src 25 cd snuffleupagus/src
26 phpize 26 phpize
27 ./configure --enable-snuffleupagus 27 ./configure --enable-snuffleupagus
diff --git a/doc/source/papers.rst b/doc/source/papers.rst
index 5382012..3d5e42a 100644
--- a/doc/source/papers.rst
+++ b/doc/source/papers.rst
@@ -6,30 +6,72 @@ This pages lists various mentions, articles, usages and presentations about Snuf
6Talks 6Talks
7----- 7-----
8 8
9- `BerlinSide0x08 <https://berlinsides.org/?page_id=2168>`_ - `slides <https://github.com/nbs-system/snuffleupagus/blob/master/slides/berlinsides_2017.pdf>`__ - 2017-05-28 92017
10- `Hack.lu 2017 <https://2017.hack.lu/talks/>`_ - `slides <https://github.com/nbs-system/snuffleupagus/blob/master/slides/hacklu_2017.pdf>`__ - `video <https://www.youtube.com/watch?v=RzaRiuJ6MkI>`__ - 2017-10-18 10""""
11- `BlackAlps <https://blackalps.ch/2017program.php>`_ - `slides <https://github.com/nbs-system/snuffleupagus/blob/master/slides/blackalps_2017.pdf>`__ - `video <https://www.youtube.com/watch?v=2GeUnOzDGxc>`__ - 2017-11-16
12- `Pass the Salt <https://2018.pass-the-salt.org/schedule/#snuffleupagus>`_ - `slides <https://github.com/nbs-system/snuffleupagus/blob/master/slides/passthesalt_2018.pdf>`__ - `video <https://passthesalt.ubicast.tv/videos/snuffleupagus-killing-bug-classes-and-virtual-patching-the-rest/>`__ - 2018-07-03
13- `44con <https://44con.com/44con/44con-2018/44con-2018-talks/>`__ - `slides <https://github.com/nbs-system/snuffleupagus/blob/master/slides/44con_2018.pdf>`__ - 2018-09-12
14 11
12- `BerlinSide0x08 <https://berlinsides.org/?page_id=2168>`_ - `slides <https://github.com/nbs-system/snuffleupagus/blob/master/slides/berlinsides_2017.pdf>`__
13- `Hack.lu 2017 <https://2017.hack.lu/talks/>`_ - `slides <https://github.com/nbs-system/snuffleupagus/blob/master/slides/hacklu_2017.pdf>`__ - `video <https://www.youtube.com/watch?v=RzaRiuJ6MkI>`__
14- `BlackAlps <https://blackalps.ch/2017program.php>`_ - `slides <https://github.com/nbs-system/snuffleupagus/blob/master/slides/blackalps_2017.pdf>`__ - `video <https://www.youtube.com/watch?v=2GeUnOzDGxc>`__
15
162018
17""""
18
19- `Pass the Salt <https://2018.pass-the-salt.org/schedule/#snuffleupagus>`_ - `slides <https://github.com/nbs-system/snuffleupagus/blob/master/slides/passthesalt_2018.pdf>`__ - `video <https://passthesalt.ubicast.tv/videos/snuffleupagus-killing-bug-classes-and-virtual-patching-the-rest/>`__
20- `44con <https://44con.com/44con/44con-2018/44con-2018-talks/>`__ - `slides <https://github.com/nbs-system/snuffleupagus/blob/master/slides/44con_2018.pdf>`__
21
222020
23""""
24- `Modern PHP security - sec4dev 2020, Vienna - Synacktiv <https://www.synacktiv.com/ressources/modern_php_security_sec4dev.pdf>`__ - `sec4dev 2020 <https://sec4dev.io/2020>`__
15 25
16Mentions 26Mentions
17-------- 27--------
18 28
19- `Intrinsec's blog - Hack.lu 2017 <https://securite.intrinsec.com/2017/10/20/hack-lu-2017/>`__ (fr) - 2017-10-20 292017
30""""
31
32- `Habr - PHP-Дайджест № 118 – свежие новости, материалы и инструменты <https://habr.com/en/company/zfort/blog/339630/>`__ (ru) - Habr
33- `Intrinsec's blog - Hack.lu 2017 <https://securite.intrinsec.com/2017/10/20/hack-lu-2017/>`__ (fr) - Intrinsec's blog
20- `Paragon Initiative Enterprises Blog - The 2018 Guide to Building Secure PHP Software <https://paragonie.com/blog/2017/12/2018-guide-building-secure-php-software>`__ - 2017-12-12 34- `Paragon Initiative Enterprises Blog - The 2018 Guide to Building Secure PHP Software <https://paragonie.com/blog/2017/12/2018-guide-building-secure-php-software>`__ - 2017-12-12
21- `PhpStorm's blog - PHP Annotated Monthly <https://blog.jetbrains.com/phpstorm/2018/08/php-annotated-monthly-august-2018/>`__ - 2018-08-31 35
362018
37""""
38
39- `Habr - PHP-Дайджест № 138 <https://habr.com/en/company/zfort/blog/422069/>`__ (ru) - Habr
40- `PhpStorm's blog - PHP Annotated Monthly <https://blog.jetbrains.com/phpstorm/2018/08/php-annotated-monthly-august-2018/>`__ - PhpStorm's blog
41
422019
43""""
44
45- `PhpStorm's blog - PHP Annotated <https://blog.jetbrains.com/phpstorm/2019/07/php-annotated-july-2019/>`__ - PhpStorm's blog
46- `Habr - PHP-Дайджест № 160 <https://habr.com/ru/post/460022/>`__ (ru) - Habr
22 47
23 48
24Articles 49Articles
25-------- 50--------
26 51
27- `Killing php bug classes at berlinsides <https://dustri.org/b/killing-php-bug-classes-at-berlinsides.html>`_ - 2017-06-05 52
28- `Snuffleu…what? <https://fr33tux.org/post/snuffleupagus/>`_ - 2017-10-07 532017
29- `How to harden AdwCleaner’s web backend using PHP <https://blog.malwarebytes.com/security-world/technology/2017/12/harden-adwcleaner-php-web-backend/>`__ - 2017-12-06 54""""
30- `First release of Snuffleupagus <https://dustri.org/b/first-release-of-snuffleupagus.html>`__ - 2017-12-21 55
31- `Snuffleupagus 0.3.0 - Dentalium elephantinum <https://dustri.org/b/snuffleupagus-030-dentalium-elephantinum.html>`__ - 2018-07-18 56- `Killing php bug classes at berlinsides <https://dustri.org/b/killing-php-bug-classes-at-berlinsides.html>`__ - dustri.org
32- `Snuffleupagus version 0.3.0 - Dentalium elephantinum <https://linuxfr.org/news/snuffleupagus-version-0-3-0-dentalium-elephantinum>`__ (fr) - 2018-07-18 57- `Snuffleu…what? <https://fr33tux.org/post/snuffleupagus/>`__ - fr33tux.org
58- `Behold the Snuffleupagus <https://memze.ro/posts/behold-the-snuffleupagus/>`__ - memze.ro
59- `How to harden AdwCleaner’s web backend using PHP <https://blog.malwarebytes.com/security-world/technology/2017/12/harden-adwcleaner-php-web-backend/>`__ - Malwarebyte's blog
60- `First release of Snuffleupagus <https://dustri.org/b/first-release-of-snuffleupagus.html>`__ - dustri.org
61- `PHP Magazine <http://phpmagazine.net/2017/11/snuffleupagus-experimental-security-module-for-php7.html>`__ - phpmagazine.net
62
632018
64""""
65
66- `Snuffleupagus 0.3.0 - Dentalium elephantinum <https://dustri.org/b/snuffleupagus-030-dentalium-elephantinum.html>`__ - dustri.org
67- `Snuffleupagus version 0.3.0 - Dentalium elephantinum <https://linuxfr.org/news/snuffleupagus-version-0-3-0-dentalium-elephantinum>`__ (fr) - LinuxFr
68
692019
70""""
71
72- `Проект Snuffleupagus развивает PHP-модуль для блокирования уязвимостей <https://www.opennet.ru/opennews/art.shtml?num=51031>`__ (ru) - opennet.ru
73- `What the f*ck is a Snuffleupagus? <https://medium.com/@live_the_dream/what-the-f-ck-is-a-snuffleupagus-f838fb64f857>`__ - Living The Dream
74- `Snuffleupagus: Open source security tool hardens PHP sites against cyber-attacks <https://portswigger.net/daily-swig/snuffleupagus-open-source-security-tool-hardens-php-sites-against-cyber-attacks>`__ - The Daily Swig
33 75
34 76
35Papers 77Papers
@@ -47,3 +89,4 @@ Notable users
47- `Oceanet Technology <https://www.oceanet-technology.com/>`__ - a French hosting company 89- `Oceanet Technology <https://www.oceanet-technology.com/>`__ - a French hosting company
48- `SwissCenter <https://swisscenter.com>`__ - a Swiss datacenter & web hosting company 90- `SwissCenter <https://swisscenter.com>`__ - a Swiss datacenter & web hosting company
49- `Toolslib <https://toolslib.net/>`__ - an `Alexa top 10k <https://www.alexa.com/siteinfo/toolslib.net>`__ website 91- `Toolslib <https://toolslib.net/>`__ - an `Alexa top 10k <https://www.alexa.com/siteinfo/toolslib.net>`__ website
92- `cPanel <https://cpanel.net/>`__ - one of the most popular web hosting control panel
diff --git a/src/php_snuffleupagus.h b/src/php_snuffleupagus.h
index dae2154..5919126 100644
--- a/src/php_snuffleupagus.h
+++ b/src/php_snuffleupagus.h
@@ -4,7 +4,7 @@
4#define PHP_SNUFFLEUPAGUS_VERSION "0.5.0" 4#define PHP_SNUFFLEUPAGUS_VERSION "0.5.0"
5#define PHP_SNUFFLEUPAGUS_EXTNAME "snuffleupagus" 5#define PHP_SNUFFLEUPAGUS_EXTNAME "snuffleupagus"
6#define PHP_SNUFFLEUPAGUS_AUTHOR "NBS System" 6#define PHP_SNUFFLEUPAGUS_AUTHOR "NBS System"
7#define PHP_SNUFFLEUPAGUS_URL "https://github.com/nbs-system/snuffleupagus" 7#define PHP_SNUFFLEUPAGUS_URL "https://github.com/jvoisin/snuffleupagus"
8#define PHP_SNUFFLEUPAGUS_COPYRIGHT "LGPLv2" 8#define PHP_SNUFFLEUPAGUS_COPYRIGHT "LGPLv2"
9 9
10#ifdef HAVE_CONFIG_H 10#ifdef HAVE_CONFIG_H
@@ -26,6 +26,7 @@
26#include <sys/socket.h> 26#include <sys/socket.h>
27#include <sys/types.h> 27#include <sys/types.h>
28#include <sys/wait.h> 28#include <sys/wait.h>
29#include <sys/syslog.h>
29 30
30#include "SAPI.h" 31#include "SAPI.h"
31#include "ext/session/php_session.h" 32#include "ext/session/php_session.h"
@@ -56,6 +57,10 @@
56#if PHP_VERSION_ID < 70200 57#if PHP_VERSION_ID < 70200
57typedef void (*zif_handler)(INTERNAL_FUNCTION_PARAMETERS); 58typedef void (*zif_handler)(INTERNAL_FUNCTION_PARAMETERS);
58#endif 59#endif
60#if PHP_VERSION_ID >= 80000
61#define TSRMLS_FETCH()
62#define TSRMLS_C
63#endif
59 64
60#include "sp_pcre_compat.h" 65#include "sp_pcre_compat.h"
61#include "sp_list.h" 66#include "sp_list.h"
diff --git a/src/sp_config.c b/src/sp_config.c
index 25223f2..69730e3 100644
--- a/src/sp_config.c
+++ b/src/sp_config.c
@@ -9,6 +9,7 @@ size_t sp_line_no;
9sp_config_tokens const sp_func[] = { 9sp_config_tokens const sp_func[] = {
10 {.func = parse_unserialize, .token = SP_TOKEN_UNSERIALIZE_HMAC}, 10 {.func = parse_unserialize, .token = SP_TOKEN_UNSERIALIZE_HMAC},
11 {.func = parse_random, .token = SP_TOKEN_HARDEN_RANDOM}, 11 {.func = parse_random, .token = SP_TOKEN_HARDEN_RANDOM},
12 {.func = parse_log_media, .token = SP_TOKEN_LOG_MEDIA},
12 {.func = parse_disabled_functions, .token = SP_TOKEN_DISABLE_FUNC}, 13 {.func = parse_disabled_functions, .token = SP_TOKEN_DISABLE_FUNC},
13 {.func = parse_readonly_exec, .token = SP_TOKEN_READONLY_EXEC}, 14 {.func = parse_readonly_exec, .token = SP_TOKEN_READONLY_EXEC},
14 {.func = parse_global_strict, .token = SP_TOKEN_GLOBAL_STRICT}, 15 {.func = parse_global_strict, .token = SP_TOKEN_GLOBAL_STRICT},
diff --git a/src/sp_config.h b/src/sp_config.h
index 9d58359..b06e8be 100644
--- a/src/sp_config.h
+++ b/src/sp_config.h
@@ -28,6 +28,8 @@ typedef enum {
28 SP_PHP_TYPE_REFERENCE = IS_REFERENCE 28 SP_PHP_TYPE_REFERENCE = IS_REFERENCE
29} sp_php_type; 29} sp_php_type;
30 30
31typedef enum { SP_ZEND = 0, SP_SYSLOG = 1 } sp_log_media;
32
31typedef struct { 33typedef struct {
32 int ip_version; 34 int ip_version;
33 union { 35 union {
@@ -175,6 +177,7 @@ typedef struct {
175 sp_config_wrapper *config_wrapper; 177 sp_config_wrapper *config_wrapper;
176 sp_config_session *config_session; 178 sp_config_session *config_session;
177 bool hook_execute; 179 bool hook_execute;
180 char log_media;
178 181
179 HashTable *config_disabled_functions; 182 HashTable *config_disabled_functions;
180 HashTable *config_disabled_functions_hooked; 183 HashTable *config_disabled_functions_hooked;
@@ -260,6 +263,7 @@ typedef struct {
260// Global configuration options 263// Global configuration options
261#define SP_TOKEN_ENCRYPTION_KEY ".secret_key(" 264#define SP_TOKEN_ENCRYPTION_KEY ".secret_key("
262#define SP_TOKEN_ENV_VAR ".cookie_env_var(" 265#define SP_TOKEN_ENV_VAR ".cookie_env_var("
266#define SP_TOKEN_LOG_MEDIA ".log_media("
263 267
264// upload_validator 268// upload_validator
265#define SP_TOKEN_UPLOAD_SCRIPT ".script(" 269#define SP_TOKEN_UPLOAD_SCRIPT ".script("
diff --git a/src/sp_config_keywords.c b/src/sp_config_keywords.c
index 5f6cc7b..64b5715 100644
--- a/src/sp_config_keywords.c
+++ b/src/sp_config_keywords.c
@@ -44,7 +44,7 @@ int parse_session(char *line) {
44 "You're trying to use the session cookie encryption feature " 44 "You're trying to use the session cookie encryption feature "
45 "on line %zu without having session support statically built into PHP. " 45 "on line %zu without having session support statically built into PHP. "
46 "This isn't supported, see " 46 "This isn't supported, see "
47 "https://github.com/nbs-system/snuffleupagus/issues/278 for details.", 47 "https://github.com/jvoisin/snuffleupagus/issues/278 for details.",
48 sp_line_no); 48 sp_line_no);
49 pefree(session, 0); 49 pefree(session, 0);
50 return -1; 50 return -1;
@@ -83,6 +83,25 @@ int parse_random(char *line) {
83 NULL); 83 NULL);
84} 84}
85 85
86int parse_log_media(char *line) {
87 size_t consumed = 0;
88 zend_string *value =
89 get_param(&consumed, line, SP_TYPE_STR, SP_TOKEN_LOG_MEDIA);
90
91 if (value) {
92 if (!strcmp(ZSTR_VAL(value), "php")) {
93 SNUFFLEUPAGUS_G(config).log_media = SP_ZEND;
94 return 0;
95 } else if (!strcmp(ZSTR_VAL(value), "syslog")) {
96 SNUFFLEUPAGUS_G(config).log_media = SP_SYSLOG;
97 return 0;
98 }
99 }
100 sp_log_err("config", "%s) only supports 'syslog' or 'php', on line %zu",
101 SP_TOKEN_LOG_MEDIA, sp_line_no);
102 return -1;
103}
104
86int parse_sloppy_comparison(char *line) { 105int parse_sloppy_comparison(char *line) {
87 return parse_enable(line, &(SNUFFLEUPAGUS_G(config).config_sloppy->enable), 106 return parse_enable(line, &(SNUFFLEUPAGUS_G(config).config_sloppy->enable),
88 NULL); 107 NULL);
diff --git a/src/sp_config_keywords.h b/src/sp_config_keywords.h
index ab58456..a279cc9 100644
--- a/src/sp_config_keywords.h
+++ b/src/sp_config_keywords.h
@@ -17,5 +17,6 @@ int parse_eval_whitelist(char *line);
17int parse_session(char *line); 17int parse_session(char *line);
18int parse_sloppy_comparison(char *line); 18int parse_sloppy_comparison(char *line);
19int parse_wrapper_whitelist(char *line); 19int parse_wrapper_whitelist(char *line);
20int parse_log_media(char *line);
20 21
21#endif // __SP_CONFIG_KEYWORDS_H 22#endif // __SP_CONFIG_KEYWORDS_H
diff --git a/src/sp_disabled_functions.c b/src/sp_disabled_functions.c
index 5daf068..6cb5446 100644
--- a/src/sp_disabled_functions.c
+++ b/src/sp_disabled_functions.c
@@ -356,11 +356,16 @@ static void should_disable(zend_execute_data* execute_data,
356 (config_node->pos != -1) || 356 (config_node->pos != -1) ||
357 ((config_node->r_value || config_node->value) && !config_node->var)) { 357 ((config_node->r_value || config_node->value) && !config_node->var)) {
358 if (!builtin_param && 358 if (!builtin_param &&
359 execute_data->func->op_array.arg_info->is_variadic) { 359#if PHP_VERSION_ID >= 80000
360 ZEND_ARG_IS_VARIADIC(execute_data->func->op_array.arg_info)
361#else
362 execute_data->func->op_array.arg_info->is_variadic
363#endif
364 ){
360 sp_log_warn( 365 sp_log_warn(
361 "disable_function", 366 "disable_function",
362 "Snuffleupagus doesn't support variadic functions yet, sorry. " 367 "Snuffleupagus doesn't support variadic functions yet, sorry. "
363 "Check https://github.com/nbs-system/snuffleupagus/issues/164 for " 368 "Check https://github.com/jvoisin/snuffleupagus/issues/164 for "
364 "details."); 369 "details.");
365 } else if (false == is_param_matching( 370 } else if (false == is_param_matching(
366 execute_data, config_node, builtin_param, builtin_param_name, 371 execute_data, config_node, builtin_param, builtin_param_name,
diff --git a/src/sp_sloppy.c b/src/sp_sloppy.c
index 5837783..88052bb 100644
--- a/src/sp_sloppy.c
+++ b/src/sp_sloppy.c
@@ -2,8 +2,13 @@
2 2
3ZEND_API zend_op_array* (*orig_zend_compile_file)(zend_file_handle* file_handle, 3ZEND_API zend_op_array* (*orig_zend_compile_file)(zend_file_handle* file_handle,
4 int type) = NULL; 4 int type) = NULL;
5#if PHP_VERSION_ID >= 80000
6ZEND_API zend_op_array* (*orig_zend_compile_string)(zval* source_string,
7 const char* filename) = NULL;
8#else
5ZEND_API zend_op_array* (*orig_zend_compile_string)(zval* source_string, 9ZEND_API zend_op_array* (*orig_zend_compile_string)(zval* source_string,
6 char* filename) = NULL; 10 char* filename) = NULL;
11#endif
7 12
8static void modify_opcode(zend_op_array* opline) { 13static void modify_opcode(zend_op_array* opline) {
9 if (NULL != opline) { 14 if (NULL != opline) {
diff --git a/src/sp_upload_validation.c b/src/sp_upload_validation.c
index ee19df9..54b0481 100644
--- a/src/sp_upload_validation.c
+++ b/src/sp_upload_validation.c
@@ -15,7 +15,7 @@ int sp_rfc1867_callback_win(unsigned int event, void *event_data,
15 void **extra) { 15 void **extra) {
16 sp_log_msg("upload_validation", SP_LOG_SIMULATION, 16 sp_log_msg("upload_validation", SP_LOG_SIMULATION,
17 "The upload validation doesn't work for now on Windows yet, " 17 "The upload validation doesn't work for now on Windows yet, "
18 "see https://github.com/nbs-system/snuffleupagus/issues/248 for " 18 "see https://github.com/jvoisin/snuffleupagus/issues/248 for "
19 "details."); 19 "details.");
20 return SUCCESS; 20 return SUCCESS;
21} 21}
diff --git a/src/sp_utils.c b/src/sp_utils.c
index 7641808..0f87f17 100644
--- a/src/sp_utils.c
+++ b/src/sp_utils.c
@@ -15,7 +15,28 @@ void sp_log_msg(char const* feature, int type, const char* fmt, ...) {
15 vspprintf(&msg, 0, fmt, args); 15 vspprintf(&msg, 0, fmt, args);
16 va_end(args); 16 va_end(args);
17 17
18 zend_error(type, "[snuffleupagus][%s] %s", feature, msg); 18 const char *client_ip = getenv("REMOTE_ADDR");
19 if (!client_ip) {
20 client_ip = "0.0.0.0";
21 }
22 switch (SNUFFLEUPAGUS_G(config).log_media) {
23 case SP_SYSLOG:
24 openlog(PHP_SNUFFLEUPAGUS_EXTNAME, LOG_PID, LOG_AUTH);
25 const char* error_filename = zend_get_executed_filename();
26 int syslog_level = SP_LOG_DROP ? LOG_ERR : LOG_INFO;
27 int error_lineno = zend_get_executed_lineno(TSRMLS_C);
28 syslog(syslog_level, "[snuffleupagus][%s][%s] %s in %s on line %d", client_ip, feature, msg,
29 error_filename, error_lineno);
30 closelog();
31 if (type == SP_LOG_DROP) {
32 zend_bailout();
33 }
34 break;
35 case SP_ZEND:
36 default:
37 zend_error(type, "[snuffleupagus][%s][%s] %s", client_ip, feature, msg);
38 break;
39 }
19} 40}
20 41
21int compute_hash(const char* const filename, char* file_hash) { 42int compute_hash(const char* const filename, char* file_hash) {
diff --git a/src/tests/broken_configuration/broken_conf.phpt b/src/tests/broken_configuration/broken_conf.phpt
index 209e1bd..ab79394 100644
--- a/src/tests/broken_configuration/broken_conf.phpt
+++ b/src/tests/broken_configuration/broken_conf.phpt
@@ -6,9 +6,9 @@ Broken configuration
6sp.configuration_file={PWD}/config/broken_conf.ini 6sp.configuration_file={PWD}/config/broken_conf.ini
7--FILE-- 7--FILE--
8--EXPECT-- 8--EXPECT--
9PHP Fatal error: [snuffleupagus][config] Invalid configuration prefix for 'this is a broken line' on line 1 in Unknown on line 0 9PHP Fatal error: [snuffleupagus][0.0.0.0][config] Invalid configuration prefix for 'this is a broken line' on line 1 in Unknown on line 0
10 10
11Fatal error: [snuffleupagus][config] Invalid configuration prefix for 'this is a broken line' on line 1 in Unknown on line 0 11Fatal error: [snuffleupagus][0.0.0.0][config] Invalid configuration prefix for 'this is a broken line' on line 1 in Unknown on line 0
12 12
13Fatal error: [snuffleupagus][config] Invalid configuration file in Unknown on line 0 13Fatal error: [snuffleupagus][0.0.0.0][config] Invalid configuration file in Unknown on line 0
14Could not startup. \ No newline at end of file 14Could not startup. \ No newline at end of file
diff --git a/src/tests/broken_configuration/broken_conf2.phpt b/src/tests/broken_configuration/broken_conf2.phpt
index 47314d1..919cd7b 100644
--- a/src/tests/broken_configuration/broken_conf2.phpt
+++ b/src/tests/broken_configuration/broken_conf2.phpt
@@ -6,9 +6,9 @@ Broken configuration
6sp.configuration_file={PWD}/config/broken_conf2.ini 6sp.configuration_file={PWD}/config/broken_conf2.ini
7--FILE-- 7--FILE--
8--EXPECT-- 8--EXPECT--
9PHP Fatal error: [snuffleupagus][config] Invalid configuration section 'sp.wrong' on line 1 in Unknown on line 0 9PHP Fatal error: [snuffleupagus][0.0.0.0][config] Invalid configuration section 'sp.wrong' on line 1 in Unknown on line 0
10 10
11Fatal error: [snuffleupagus][config] Invalid configuration section 'sp.wrong' on line 1 in Unknown on line 0 11Fatal error: [snuffleupagus][0.0.0.0][config] Invalid configuration section 'sp.wrong' on line 1 in Unknown on line 0
12 12
13Fatal error: [snuffleupagus][config] Invalid configuration file in Unknown on line 0 13Fatal error: [snuffleupagus][0.0.0.0][config] Invalid configuration file in Unknown on line 0
14Could not startup. \ No newline at end of file 14Could not startup. \ No newline at end of file
diff --git a/src/tests/broken_configuration/broken_conf_allow_broken_disabled.phpt b/src/tests/broken_configuration/broken_conf_allow_broken_disabled.phpt
index 7aa0c82..9cc45bf 100644
--- a/src/tests/broken_configuration/broken_conf_allow_broken_disabled.phpt
+++ b/src/tests/broken_configuration/broken_conf_allow_broken_disabled.phpt
@@ -10,9 +10,9 @@ sp.allow_broken_configuration=Off
10echo 1337; 10echo 1337;
11?> 11?>
12--EXPECT-- 12--EXPECT--
13PHP Fatal error: [snuffleupagus][config] Invalid configuration prefix for 'this is a broken line' on line 1 in Unknown on line 0 13PHP Fatal error: [snuffleupagus][0.0.0.0][config] Invalid configuration prefix for 'this is a broken line' on line 1 in Unknown on line 0
14 14
15Fatal error: [snuffleupagus][config] Invalid configuration prefix for 'this is a broken line' on line 1 in Unknown on line 0 15Fatal error: [snuffleupagus][0.0.0.0][config] Invalid configuration prefix for 'this is a broken line' on line 1 in Unknown on line 0
16 16
17Fatal error: [snuffleupagus][config] Invalid configuration file in Unknown on line 0 17Fatal error: [snuffleupagus][0.0.0.0][config] Invalid configuration file in Unknown on line 0
18Could not startup. 18Could not startup.
diff --git a/src/tests/broken_configuration/broken_conf_allow_broken_enabled.phpt b/src/tests/broken_configuration/broken_conf_allow_broken_enabled.phpt
index 452595b..614032a 100644
--- a/src/tests/broken_configuration/broken_conf_allow_broken_enabled.phpt
+++ b/src/tests/broken_configuration/broken_conf_allow_broken_enabled.phpt
@@ -10,7 +10,7 @@ sp.allow_broken_configuration=On
10echo 1337; 10echo 1337;
11?> 11?>
12--EXPECT-- 12--EXPECT--
13PHP Fatal error: [snuffleupagus][config] Invalid configuration prefix for 'this is a broken line' on line 1 in Unknown on line 0 13PHP Fatal error: [snuffleupagus][0.0.0.0][config] Invalid configuration prefix for 'this is a broken line' on line 1 in Unknown on line 0
14 14
15Fatal error: [snuffleupagus][config] Invalid configuration prefix for 'this is a broken line' on line 1 in Unknown on line 0 15Fatal error: [snuffleupagus][0.0.0.0][config] Invalid configuration prefix for 'this is a broken line' on line 1 in Unknown on line 0
161337 161337
diff --git a/src/tests/broken_configuration/broken_conf_config_regexp.phpt b/src/tests/broken_configuration/broken_conf_config_regexp.phpt
index 2977e3a..d056e74 100644
--- a/src/tests/broken_configuration/broken_conf_config_regexp.phpt
+++ b/src/tests/broken_configuration/broken_conf_config_regexp.phpt
@@ -6,12 +6,12 @@ Broken configuration
6sp.configuration_file={PWD}/config/broken_config_regexp.ini 6sp.configuration_file={PWD}/config/broken_config_regexp.ini
7--FILE-- 7--FILE--
8--EXPECTF-- 8--EXPECTF--
9PHP Fatal error: [snuffleupagus][config] Failed to compile '*.': %s on line 1. in Unknown on line 0 9PHP Fatal error: [snuffleupagus][0.0.0.0][config] Failed to compile '*.': %s on line 1. in Unknown on line 0
10PHP Fatal error: [snuffleupagus][config] '.filename_r()' is expecting a valid regexp, and not '"*."' on line 1 in Unknown on line 0 10PHP Fatal error: [snuffleupagus][0.0.0.0][config] '.filename_r()' is expecting a valid regexp, and not '"*."' on line 1 in Unknown on line 0
11 11
12Fatal error: [snuffleupagus][config] Failed to compile '*.': %s on line 1. in Unknown on line 0 12Fatal error: [snuffleupagus][0.0.0.0][config] Failed to compile '*.': %s on line 1. in Unknown on line 0
13 13
14Fatal error: [snuffleupagus][config] '.filename_r()' is expecting a valid regexp, and not '"*."' on line 1 in Unknown on line 0 14Fatal error: [snuffleupagus][0.0.0.0][config] '.filename_r()' is expecting a valid regexp, and not '"*."' on line 1 in Unknown on line 0
15 15
16Fatal error: [snuffleupagus][config] Invalid configuration file in Unknown on line 0 16Fatal error: [snuffleupagus][0.0.0.0][config] Invalid configuration file in Unknown on line 0
17Could not startup. 17Could not startup.
diff --git a/src/tests/broken_configuration/broken_conf_config_regexp_no_closing_paren.phpt b/src/tests/broken_configuration/broken_conf_config_regexp_no_closing_paren.phpt
index 77bb1b4..1792cdd 100644
--- a/src/tests/broken_configuration/broken_conf_config_regexp_no_closing_paren.phpt
+++ b/src/tests/broken_configuration/broken_conf_config_regexp_no_closing_paren.phpt
@@ -6,12 +6,12 @@ Broken configuration - regexp without a closing parenthesis
6sp.configuration_file={PWD}/config/broken_config_regexp_no_closing_paren.ini 6sp.configuration_file={PWD}/config/broken_config_regexp_no_closing_paren.ini
7--FILE-- 7--FILE--
8--EXPECT-- 8--EXPECT--
9PHP Fatal error: [snuffleupagus][error] There is an issue with the parsing of '"*."': it doesn't look like a valid string on line 1 in Unknown on line 0 9PHP Fatal error: [snuffleupagus][0.0.0.0][error] There is an issue with the parsing of '"*."': it doesn't look like a valid string on line 1 in Unknown on line 0
10PHP Fatal error: [snuffleupagus][config] '.filename_r()' is expecting a valid regexp, and not '"*."' on line 1 in Unknown on line 0 10PHP Fatal error: [snuffleupagus][0.0.0.0][config] '.filename_r()' is expecting a valid regexp, and not '"*."' on line 1 in Unknown on line 0
11 11
12Fatal error: [snuffleupagus][error] There is an issue with the parsing of '"*."': it doesn't look like a valid string on line 1 in Unknown on line 0 12Fatal error: [snuffleupagus][0.0.0.0][error] There is an issue with the parsing of '"*."': it doesn't look like a valid string on line 1 in Unknown on line 0
13 13
14Fatal error: [snuffleupagus][config] '.filename_r()' is expecting a valid regexp, and not '"*."' on line 1 in Unknown on line 0 14Fatal error: [snuffleupagus][0.0.0.0][config] '.filename_r()' is expecting a valid regexp, and not '"*."' on line 1 in Unknown on line 0
15 15
16Fatal error: [snuffleupagus][config] Invalid configuration file in Unknown on line 0 16Fatal error: [snuffleupagus][0.0.0.0][config] Invalid configuration file in Unknown on line 0
17Could not startup. \ No newline at end of file 17Could not startup. \ No newline at end of file
diff --git a/src/tests/broken_configuration/broken_conf_cookie_encryption_without_encryption_key.phpt b/src/tests/broken_configuration/broken_conf_cookie_encryption_without_encryption_key.phpt
index d0b7c0d..f3dc06f 100644
--- a/src/tests/broken_configuration/broken_conf_cookie_encryption_without_encryption_key.phpt
+++ b/src/tests/broken_configuration/broken_conf_cookie_encryption_without_encryption_key.phpt
@@ -6,9 +6,9 @@ Borken configuration - encrypted cookie without encryption key
6sp.configuration_file={PWD}/config/broken_conf_cookie_encryption_without_encryption_key.ini 6sp.configuration_file={PWD}/config/broken_conf_cookie_encryption_without_encryption_key.ini
7--FILE-- 7--FILE--
8--EXPECT-- 8--EXPECT--
9PHP Fatal error: [snuffleupagus][config] You're trying to use the cookie encryption featureon line 2 without having set the `.encryption_key` option in`sp.global`: please set it first in Unknown on line 0 9PHP Fatal error: [snuffleupagus][0.0.0.0][config] You're trying to use the cookie encryption featureon line 2 without having set the `.encryption_key` option in`sp.global`: please set it first in Unknown on line 0
10 10
11Fatal error: [snuffleupagus][config] You're trying to use the cookie encryption featureon line 2 without having set the `.encryption_key` option in`sp.global`: please set it first in Unknown on line 0 11Fatal error: [snuffleupagus][0.0.0.0][config] You're trying to use the cookie encryption featureon line 2 without having set the `.encryption_key` option in`sp.global`: please set it first in Unknown on line 0
12 12
13Fatal error: [snuffleupagus][config] Invalid configuration file in Unknown on line 0 13Fatal error: [snuffleupagus][0.0.0.0][config] Invalid configuration file in Unknown on line 0
14Could not startup. 14Could not startup.
diff --git a/src/tests/broken_configuration/broken_conf_cookie_encryption_without_env_var.phpt b/src/tests/broken_configuration/broken_conf_cookie_encryption_without_env_var.phpt
index af5d471..882b4f7 100644
--- a/src/tests/broken_configuration/broken_conf_cookie_encryption_without_env_var.phpt
+++ b/src/tests/broken_configuration/broken_conf_cookie_encryption_without_env_var.phpt
@@ -6,9 +6,9 @@ Borken configuration - encrypted cookie with without cookie env var
6sp.configuration_file={PWD}/config/broken_conf_cookie_encryption_without_env_var.ini 6sp.configuration_file={PWD}/config/broken_conf_cookie_encryption_without_env_var.ini
7--FILE-- 7--FILE--
8--EXPECT-- 8--EXPECT--
9PHP Fatal error: [snuffleupagus][config] You're trying to use the cookie encryption featureon line 2 without having set the `.cookie_env_var` option in`sp.global`: please set it first in Unknown on line 0 9PHP Fatal error: [snuffleupagus][0.0.0.0][config] You're trying to use the cookie encryption featureon line 2 without having set the `.cookie_env_var` option in`sp.global`: please set it first in Unknown on line 0
10 10
11Fatal error: [snuffleupagus][config] You're trying to use the cookie encryption featureon line 2 without having set the `.cookie_env_var` option in`sp.global`: please set it first in Unknown on line 0 11Fatal error: [snuffleupagus][0.0.0.0][config] You're trying to use the cookie encryption featureon line 2 without having set the `.cookie_env_var` option in`sp.global`: please set it first in Unknown on line 0
12 12
13Fatal error: [snuffleupagus][config] Invalid configuration file in Unknown on line 0 13Fatal error: [snuffleupagus][0.0.0.0][config] Invalid configuration file in Unknown on line 0
14Could not startup. 14Could not startup.
diff --git a/src/tests/broken_configuration/broken_conf_cookie_name_and_regexp.phpt b/src/tests/broken_configuration/broken_conf_cookie_name_and_regexp.phpt
index b1e1318..50bc569 100644
--- a/src/tests/broken_configuration/broken_conf_cookie_name_and_regexp.phpt
+++ b/src/tests/broken_configuration/broken_conf_cookie_name_and_regexp.phpt
@@ -6,9 +6,9 @@ Borken configuration - encrypted cookie with name and regexp
6sp.configuration_file={PWD}/config/broken_conf_cookie_name_and_regexp.ini 6sp.configuration_file={PWD}/config/broken_conf_cookie_name_and_regexp.ini
7--FILE-- 7--FILE--
8--EXPECT-- 8--EXPECT--
9PHP Fatal error: [snuffleupagus][config] name and name_r are mutually exclusive on line 2 in Unknown on line 0 9PHP Fatal error: [snuffleupagus][0.0.0.0][config] name and name_r are mutually exclusive on line 2 in Unknown on line 0
10 10
11Fatal error: [snuffleupagus][config] name and name_r are mutually exclusive on line 2 in Unknown on line 0 11Fatal error: [snuffleupagus][0.0.0.0][config] name and name_r are mutually exclusive on line 2 in Unknown on line 0
12 12
13Fatal error: [snuffleupagus][config] Invalid configuration file in Unknown on line 0 13Fatal error: [snuffleupagus][0.0.0.0][config] Invalid configuration file in Unknown on line 0
14Could not startup. \ No newline at end of file 14Could not startup. \ No newline at end of file
diff --git a/src/tests/broken_configuration/broken_conf_enable_disable.phpt b/src/tests/broken_configuration/broken_conf_enable_disable.phpt
index a836f44..48ec954 100644
--- a/src/tests/broken_configuration/broken_conf_enable_disable.phpt
+++ b/src/tests/broken_configuration/broken_conf_enable_disable.phpt
@@ -6,9 +6,9 @@ Global strict mode
6sp.configuration_file={PWD}/config/borken_conf_enable_disable.ini 6sp.configuration_file={PWD}/config/borken_conf_enable_disable.ini
7--FILE-- 7--FILE--
8--EXPECTF-- 8--EXPECTF--
9PHP Fatal error: [snuffleupagus][config] A rule can't be enabled and disabled on line 1 in Unknown on line 0 9PHP Fatal error: [snuffleupagus][0.0.0.0][config] A rule can't be enabled and disabled on line 1 in Unknown on line 0
10 10
11Fatal error: [snuffleupagus][config] A rule can't be enabled and disabled on line 1 in Unknown on line 0 11Fatal error: [snuffleupagus][0.0.0.0][config] A rule can't be enabled and disabled on line 1 in Unknown on line 0
12 12
13Fatal error: [snuffleupagus][config] Invalid configuration file in Unknown on line 0 13Fatal error: [snuffleupagus][0.0.0.0][config] Invalid configuration file in Unknown on line 0
14Could not startup. \ No newline at end of file 14Could not startup. \ No newline at end of file
diff --git a/src/tests/broken_configuration/broken_conf_eval.phpt b/src/tests/broken_configuration/broken_conf_eval.phpt
index 98da9c9..e1e05bc 100644
--- a/src/tests/broken_configuration/broken_conf_eval.phpt
+++ b/src/tests/broken_configuration/broken_conf_eval.phpt
@@ -6,9 +6,9 @@ Broken configuration for eval
6sp.configuration_file={PWD}/config/broken_conf_eval.ini 6sp.configuration_file={PWD}/config/broken_conf_eval.ini
7--FILE-- 7--FILE--
8--EXPECT-- 8--EXPECT--
9PHP Fatal error: [snuffleupagus][error] There is an issue with the parsing of '"cos,sin': it doesn't look like a valid string on line 1 in Unknown on line 0 9PHP Fatal error: [snuffleupagus][0.0.0.0][error] There is an issue with the parsing of '"cos,sin': it doesn't look like a valid string on line 1 in Unknown on line 0
10 10
11Fatal error: [snuffleupagus][error] There is an issue with the parsing of '"cos,sin': it doesn't look like a valid string on line 1 in Unknown on line 0 11Fatal error: [snuffleupagus][0.0.0.0][error] There is an issue with the parsing of '"cos,sin': it doesn't look like a valid string on line 1 in Unknown on line 0
12 12
13Fatal error: [snuffleupagus][config] Invalid configuration file in Unknown on line 0 13Fatal error: [snuffleupagus][0.0.0.0][config] Invalid configuration file in Unknown on line 0
14Could not startup. \ No newline at end of file 14Could not startup. \ No newline at end of file
diff --git a/src/tests/broken_configuration/broken_conf_expecting_bool.phpt b/src/tests/broken_configuration/broken_conf_expecting_bool.phpt
index 6770c7c..38a648d 100644
--- a/src/tests/broken_configuration/broken_conf_expecting_bool.phpt
+++ b/src/tests/broken_configuration/broken_conf_expecting_bool.phpt
@@ -6,9 +6,9 @@ Bad boolean value in configuration
6sp.configuration_file={PWD}/config/broken_conf_expecting_bool.ini 6sp.configuration_file={PWD}/config/broken_conf_expecting_bool.ini
7--FILE-- 7--FILE--
8--EXPECT-- 8--EXPECT--
9PHP Fatal error: [snuffleupagus][config] Trailing chars '337);' at the end of '.enable(1337);' on line 5 in Unknown on line 0 9PHP Fatal error: [snuffleupagus][0.0.0.0][config] Trailing chars '337);' at the end of '.enable(1337);' on line 5 in Unknown on line 0
10 10
11Fatal error: [snuffleupagus][config] Trailing chars '337);' at the end of '.enable(1337);' on line 5 in Unknown on line 0 11Fatal error: [snuffleupagus][0.0.0.0][config] Trailing chars '337);' at the end of '.enable(1337);' on line 5 in Unknown on line 0
12 12
13Fatal error: [snuffleupagus][config] Invalid configuration file in Unknown on line 0 13Fatal error: [snuffleupagus][0.0.0.0][config] Invalid configuration file in Unknown on line 0
14Could not startup. \ No newline at end of file 14Could not startup. \ No newline at end of file
diff --git a/src/tests/broken_configuration/broken_conf_invalid_cidr.phpt b/src/tests/broken_configuration/broken_conf_invalid_cidr.phpt
index 3e27050..e23b880 100644
--- a/src/tests/broken_configuration/broken_conf_invalid_cidr.phpt
+++ b/src/tests/broken_configuration/broken_conf_invalid_cidr.phpt
@@ -6,9 +6,9 @@ Broken configuration
6sp.configuration_file={PWD}/config/broken_conf_invalid_cidr.ini 6sp.configuration_file={PWD}/config/broken_conf_invalid_cidr.ini
7--FILE-- 7--FILE--
8--EXPECT-- 8--EXPECT--
9PHP Fatal error: [snuffleupagus][config] '42' isn't a valid ipv4 mask. in Unknown on line 0 9PHP Fatal error: [snuffleupagus][0.0.0.0][config] '42' isn't a valid ipv4 mask. in Unknown on line 0
10 10
11Fatal error: [snuffleupagus][config] '42' isn't a valid ipv4 mask. in Unknown on line 0 11Fatal error: [snuffleupagus][0.0.0.0][config] '42' isn't a valid ipv4 mask. in Unknown on line 0
12 12
13Fatal error: [snuffleupagus][config] Invalid configuration file in Unknown on line 0 13Fatal error: [snuffleupagus][0.0.0.0][config] Invalid configuration file in Unknown on line 0
14Could not startup. \ No newline at end of file 14Could not startup. \ No newline at end of file
diff --git a/src/tests/broken_configuration/broken_conf_invalid_cidr6.phpt b/src/tests/broken_configuration/broken_conf_invalid_cidr6.phpt
index 8f96669..b8721b1 100644
--- a/src/tests/broken_configuration/broken_conf_invalid_cidr6.phpt
+++ b/src/tests/broken_configuration/broken_conf_invalid_cidr6.phpt
@@ -6,9 +6,9 @@ Broken configuration
6sp.configuration_file={PWD}/config/broken_conf_invalid_cidr6.ini 6sp.configuration_file={PWD}/config/broken_conf_invalid_cidr6.ini
7--FILE-- 7--FILE--
8--EXPECT-- 8--EXPECT--
9PHP Fatal error: [snuffleupagus][config] 'ZZZ' isn't a valid network mask. in Unknown on line 0 9PHP Fatal error: [snuffleupagus][0.0.0.0][config] 'ZZZ' isn't a valid network mask. in Unknown on line 0
10 10
11Fatal error: [snuffleupagus][config] 'ZZZ' isn't a valid network mask. in Unknown on line 0 11Fatal error: [snuffleupagus][0.0.0.0][config] 'ZZZ' isn't a valid network mask. in Unknown on line 0
12 12
13Fatal error: [snuffleupagus][config] Invalid configuration file in Unknown on line 0 13Fatal error: [snuffleupagus][0.0.0.0][config] Invalid configuration file in Unknown on line 0
14Could not startup. \ No newline at end of file 14Could not startup. \ No newline at end of file
diff --git a/src/tests/broken_configuration/broken_conf_invalid_cidr6_no_slash.phpt b/src/tests/broken_configuration/broken_conf_invalid_cidr6_no_slash.phpt
index 2d557ff..cbc609e 100644
--- a/src/tests/broken_configuration/broken_conf_invalid_cidr6_no_slash.phpt
+++ b/src/tests/broken_configuration/broken_conf_invalid_cidr6_no_slash.phpt
@@ -6,9 +6,9 @@ Broken configuration, invalid cidr for ipv6 because there is no `/` in it
6sp.configuration_file={PWD}/config/broken_conf_invalid_cidr6_no_slash.ini 6sp.configuration_file={PWD}/config/broken_conf_invalid_cidr6_no_slash.ini
7--FILE-- 7--FILE--
8--EXPECT-- 8--EXPECT--
9PHP Fatal error: [snuffleupagus][config] '2001:0db8:0000:0000:0000:ff00:0042:8329' isn't a valid network mask, it seems that you forgot a '/'. in Unknown on line 0 9PHP Fatal error: [snuffleupagus][0.0.0.0][config] '2001:0db8:0000:0000:0000:ff00:0042:8329' isn't a valid network mask, it seems that you forgot a '/'. in Unknown on line 0
10 10
11Fatal error: [snuffleupagus][config] '2001:0db8:0000:0000:0000:ff00:0042:8329' isn't a valid network mask, it seems that you forgot a '/'. in Unknown on line 0 11Fatal error: [snuffleupagus][0.0.0.0][config] '2001:0db8:0000:0000:0000:ff00:0042:8329' isn't a valid network mask, it seems that you forgot a '/'. in Unknown on line 0
12 12
13Fatal error: [snuffleupagus][config] Invalid configuration file in Unknown on line 0 13Fatal error: [snuffleupagus][0.0.0.0][config] Invalid configuration file in Unknown on line 0
14Could not startup. \ No newline at end of file 14Could not startup. \ No newline at end of file
diff --git a/src/tests/broken_configuration/broken_conf_invalid_cidr_value.phpt b/src/tests/broken_configuration/broken_conf_invalid_cidr_value.phpt
index ad60912..3372409 100644
--- a/src/tests/broken_configuration/broken_conf_invalid_cidr_value.phpt
+++ b/src/tests/broken_configuration/broken_conf_invalid_cidr_value.phpt
@@ -7,12 +7,12 @@ Broken configuration, invalid cidr value
7sp.configuration_file={PWD}/config/broken_conf_invalid_cidr_value.ini 7sp.configuration_file={PWD}/config/broken_conf_invalid_cidr_value.ini
8--FILE-- 8--FILE--
9--EXPECT-- 9--EXPECT--
10PHP Fatal error: [snuffleupagus][error] A valid string as parameter is expected on line 1 in Unknown on line 0 10PHP Fatal error: [snuffleupagus][0.0.0.0][error] A valid string as parameter is expected on line 1 in Unknown on line 0
11PHP Fatal error: [snuffleupagus][config] " doesn't contain a valid cidr on line 1 in Unknown on line 0 11PHP Fatal error: [snuffleupagus][0.0.0.0][config] " doesn't contain a valid cidr on line 1 in Unknown on line 0
12 12
13Fatal error: [snuffleupagus][error] A valid string as parameter is expected on line 1 in Unknown on line 0 13Fatal error: [snuffleupagus][0.0.0.0][error] A valid string as parameter is expected on line 1 in Unknown on line 0
14 14
15Fatal error: [snuffleupagus][config] " doesn't contain a valid cidr on line 1 in Unknown on line 0 15Fatal error: [snuffleupagus][0.0.0.0][config] " doesn't contain a valid cidr on line 1 in Unknown on line 0
16 16
17Fatal error: [snuffleupagus][config] Invalid configuration file in Unknown on line 0 17Fatal error: [snuffleupagus][0.0.0.0][config] Invalid configuration file in Unknown on line 0
18Could not startup. \ No newline at end of file 18Could not startup. \ No newline at end of file
diff --git a/src/tests/broken_configuration/broken_conf_invalid_filename.phpt b/src/tests/broken_configuration/broken_conf_invalid_filename.phpt
index 0ab138f..1bc6564 100644
--- a/src/tests/broken_configuration/broken_conf_invalid_filename.phpt
+++ b/src/tests/broken_configuration/broken_conf_invalid_filename.phpt
@@ -6,9 +6,9 @@ Broken configuration filename without absolute path
6sp.configuration_file={PWD}/config/broken_conf_invalid_filename.ini 6sp.configuration_file={PWD}/config/broken_conf_invalid_filename.ini
7--FILE-- 7--FILE--
8--EXPECTF-- 8--EXPECTF--
9PHP Fatal error: [snuffleupagus][config] Invalid configuration line: 'sp.disabled_functions.function("sprintf").filename("wrong file name").drop();':'.filename' must be an absolute path or a phar archive on line 1 in Unknown on line 0 9PHP Fatal error: [snuffleupagus][0.0.0.0][config] Invalid configuration line: 'sp.disabled_functions.function("sprintf").filename("wrong file name").drop();':'.filename' must be an absolute path or a phar archive on line 1 in Unknown on line 0
10 10
11Fatal error: [snuffleupagus][config] Invalid configuration line: 'sp.disabled_functions.function("sprintf").filename("wrong file name").drop();':'.filename' must be an absolute path or a phar archive on line 1 in Unknown on line 0 11Fatal error: [snuffleupagus][0.0.0.0][config] Invalid configuration line: 'sp.disabled_functions.function("sprintf").filename("wrong file name").drop();':'.filename' must be an absolute path or a phar archive on line 1 in Unknown on line 0
12 12
13Fatal error: [snuffleupagus][config] Invalid configuration file in Unknown on line 0 13Fatal error: [snuffleupagus][0.0.0.0][config] Invalid configuration file in Unknown on line 0
14Could not startup. \ No newline at end of file 14Could not startup. \ No newline at end of file
diff --git a/src/tests/broken_configuration/broken_conf_invalid_log_media.phpt b/src/tests/broken_configuration/broken_conf_invalid_log_media.phpt
new file mode 100644
index 0000000..a162ea8
--- /dev/null
+++ b/src/tests/broken_configuration/broken_conf_invalid_log_media.phpt
@@ -0,0 +1,14 @@
1--TEST--
2Broken configuration filename with improper log media
3--SKIPIF--
4<?php if (!extension_loaded("snuffleupagus")) die "skip"; ?>
5--INI--
6sp.configuration_file={PWD}/config/broken_conf_invalid_log_media.ini
7--FILE--
8--EXPECTF--
9PHP Fatal error: [snuffleupagus][0.0.0.0][config] .log_media() only supports 'syslog' or 'php', on line 1 in Unknown on line 0
10
11Fatal error: [snuffleupagus][0.0.0.0][config] .log_media() only supports 'syslog' or 'php', on line 1 in Unknown on line 0
12
13Fatal error: [snuffleupagus][0.0.0.0][config] Invalid configuration file in Unknown on line 0
14Could not startup.
diff --git a/src/tests/broken_configuration/broken_conf_invalid_type.phpt b/src/tests/broken_configuration/broken_conf_invalid_type.phpt
index b140c25..cc4a381 100644
--- a/src/tests/broken_configuration/broken_conf_invalid_type.phpt
+++ b/src/tests/broken_configuration/broken_conf_invalid_type.phpt
@@ -6,9 +6,9 @@ Broken conf with wrong type
6sp.configuration_file={PWD}/config/broken_conf_invalid_type.ini 6sp.configuration_file={PWD}/config/broken_conf_invalid_type.ini
7--FILE-- 7--FILE--
8--EXPECTF-- 8--EXPECTF--
9PHP Fatal error: [snuffleupagus][error] There is an issue with the parsing of '"totally_wrong"_type")': it doesn't look like a valid string on line 1 in Unknown on line 0 9PHP Fatal error: [snuffleupagus][0.0.0.0][error] There is an issue with the parsing of '"totally_wrong"_type")': it doesn't look like a valid string on line 1 in Unknown on line 0
10 10
11Fatal error: [snuffleupagus][error] There is an issue with the parsing of '"totally_wrong"_type")': it doesn't look like a valid string on line 1 in Unknown on line 0 11Fatal error: [snuffleupagus][0.0.0.0][error] There is an issue with the parsing of '"totally_wrong"_type")': it doesn't look like a valid string on line 1 in Unknown on line 0
12 12
13Fatal error: [snuffleupagus][config] Invalid configuration file in Unknown on line 0 13Fatal error: [snuffleupagus][0.0.0.0][config] Invalid configuration file in Unknown on line 0
14Could not startup. \ No newline at end of file 14Could not startup. \ No newline at end of file
diff --git a/src/tests/broken_configuration/broken_conf_key_value.phpt b/src/tests/broken_configuration/broken_conf_key_value.phpt
index 8c455f8..14a3d91 100644
--- a/src/tests/broken_configuration/broken_conf_key_value.phpt
+++ b/src/tests/broken_configuration/broken_conf_key_value.phpt
@@ -6,9 +6,9 @@ Broken configuration
6sp.configuration_file={PWD}/config/broken_conf_key_value.ini 6sp.configuration_file={PWD}/config/broken_conf_key_value.ini
7--FILE-- 7--FILE--
8--EXPECT-- 8--EXPECT--
9PHP Fatal error: [snuffleupagus][config] Invalid configuration line: 'sp.disabled_functions.function("system").var("").value("").key("").drop();':`key` and `value` are mutually exclusive on line 1 in Unknown on line 0 9PHP Fatal error: [snuffleupagus][0.0.0.0][config] Invalid configuration line: 'sp.disabled_functions.function("system").var("").value("").key("").drop();':`key` and `value` are mutually exclusive on line 1 in Unknown on line 0
10 10
11Fatal error: [snuffleupagus][config] Invalid configuration line: 'sp.disabled_functions.function("system").var("").value("").key("").drop();':`key` and `value` are mutually exclusive on line 1 in Unknown on line 0 11Fatal error: [snuffleupagus][0.0.0.0][config] Invalid configuration line: 'sp.disabled_functions.function("system").var("").value("").key("").drop();':`key` and `value` are mutually exclusive on line 1 in Unknown on line 0
12 12
13Fatal error: [snuffleupagus][config] Invalid configuration file in Unknown on line 0 13Fatal error: [snuffleupagus][0.0.0.0][config] Invalid configuration file in Unknown on line 0
14Could not startup. \ No newline at end of file 14Could not startup. \ No newline at end of file
diff --git a/src/tests/broken_configuration/broken_conf_line_empty_string.phpt b/src/tests/broken_configuration/broken_conf_line_empty_string.phpt
index 77bd46d..15c11fd 100644
--- a/src/tests/broken_configuration/broken_conf_line_empty_string.phpt
+++ b/src/tests/broken_configuration/broken_conf_line_empty_string.phpt
@@ -6,9 +6,9 @@ Configuration line with an empty string
6sp.configuration_file={PWD}/config/broken_conf_line_empty_string.ini 6sp.configuration_file={PWD}/config/broken_conf_line_empty_string.ini
7--FILE-- 7--FILE--
8--EXPECT-- 8--EXPECT--
9PHP Fatal error: [snuffleupagus][error] A valid string as parameter is expected on line 1 in Unknown on line 0 9PHP Fatal error: [snuffleupagus][0.0.0.0][error] A valid string as parameter is expected on line 1 in Unknown on line 0
10 10
11Fatal error: [snuffleupagus][error] A valid string as parameter is expected on line 1 in Unknown on line 0 11Fatal error: [snuffleupagus][0.0.0.0][error] A valid string as parameter is expected on line 1 in Unknown on line 0
12 12
13Fatal error: [snuffleupagus][config] Invalid configuration file in Unknown on line 0 13Fatal error: [snuffleupagus][0.0.0.0][config] Invalid configuration file in Unknown on line 0
14Could not startup. \ No newline at end of file 14Could not startup. \ No newline at end of file
diff --git a/src/tests/broken_configuration/broken_conf_line_no_closing.phpt b/src/tests/broken_configuration/broken_conf_line_no_closing.phpt
index 19dd081..c8ba73b 100644
--- a/src/tests/broken_configuration/broken_conf_line_no_closing.phpt
+++ b/src/tests/broken_configuration/broken_conf_line_no_closing.phpt
@@ -6,9 +6,9 @@ Configuration line without closing parenthese
6sp.configuration_file={PWD}/config/broken_conf_line_no_closing.ini 6sp.configuration_file={PWD}/config/broken_conf_line_no_closing.ini
7--FILE-- 7--FILE--
8--EXPECT-- 8--EXPECT--
9PHP Fatal error: [snuffleupagus][error] There is an issue with the parsing of '"123"': it doesn't look like a valid string on line 1 in Unknown on line 0 9PHP Fatal error: [snuffleupagus][0.0.0.0][error] There is an issue with the parsing of '"123"': it doesn't look like a valid string on line 1 in Unknown on line 0
10 10
11Fatal error: [snuffleupagus][error] There is an issue with the parsing of '"123"': it doesn't look like a valid string on line 1 in Unknown on line 0 11Fatal error: [snuffleupagus][0.0.0.0][error] There is an issue with the parsing of '"123"': it doesn't look like a valid string on line 1 in Unknown on line 0
12 12
13Fatal error: [snuffleupagus][config] Invalid configuration file in Unknown on line 0 13Fatal error: [snuffleupagus][0.0.0.0][config] Invalid configuration file in Unknown on line 0
14Could not startup. \ No newline at end of file 14Could not startup. \ No newline at end of file
diff --git a/src/tests/broken_configuration/broken_conf_local_var_1.phpt b/src/tests/broken_configuration/broken_conf_local_var_1.phpt
index 52494d3..573246c 100644
--- a/src/tests/broken_configuration/broken_conf_local_var_1.phpt
+++ b/src/tests/broken_configuration/broken_conf_local_var_1.phpt
@@ -6,12 +6,12 @@ Broken configuration
6sp.configuration_file={PWD}/config/broken_conf_local_var_1.ini 6sp.configuration_file={PWD}/config/broken_conf_local_var_1.ini
7--FILE-- 7--FILE--
8--EXPECT-- 8--EXPECT--
9PHP Fatal error: [snuffleupagus][config] Invalid `]` position. in Unknown on line 0 9PHP Fatal error: [snuffleupagus][0.0.0.0][config] Invalid `]` position. in Unknown on line 0
10PHP Fatal error: [snuffleupagus][config] Invalid value ']' for `var` on line 1 in Unknown on line 0 10PHP Fatal error: [snuffleupagus][0.0.0.0][config] Invalid value ']' for `var` on line 1 in Unknown on line 0
11 11
12Fatal error: [snuffleupagus][config] Invalid `]` position. in Unknown on line 0 12Fatal error: [snuffleupagus][0.0.0.0][config] Invalid `]` position. in Unknown on line 0
13 13
14Fatal error: [snuffleupagus][config] Invalid value ']' for `var` on line 1 in Unknown on line 0 14Fatal error: [snuffleupagus][0.0.0.0][config] Invalid value ']' for `var` on line 1 in Unknown on line 0
15 15
16Fatal error: [snuffleupagus][config] Invalid configuration file in Unknown on line 0 16Fatal error: [snuffleupagus][0.0.0.0][config] Invalid configuration file in Unknown on line 0
17Could not startup. \ No newline at end of file 17Could not startup. \ No newline at end of file
diff --git a/src/tests/broken_configuration/broken_conf_local_var_10.phpt b/src/tests/broken_configuration/broken_conf_local_var_10.phpt
index d184286..2cf19f9 100644
--- a/src/tests/broken_configuration/broken_conf_local_var_10.phpt
+++ b/src/tests/broken_configuration/broken_conf_local_var_10.phpt
@@ -6,12 +6,12 @@ Broken configuration
6sp.configuration_file={PWD}/config/broken_conf_local_var_10.ini 6sp.configuration_file={PWD}/config/broken_conf_local_var_10.ini
7--FILE-- 7--FILE--
8--EXPECT-- 8--EXPECT--
9PHP Fatal error: [snuffleupagus][config] Invalid `]` position. in Unknown on line 0 9PHP Fatal error: [snuffleupagus][0.0.0.0][config] Invalid `]` position. in Unknown on line 0
10PHP Fatal error: [snuffleupagus][config] Invalid value 'asd[asd]asd' for `var` on line 1 in Unknown on line 0 10PHP Fatal error: [snuffleupagus][0.0.0.0][config] Invalid value 'asd[asd]asd' for `var` on line 1 in Unknown on line 0
11 11
12Fatal error: [snuffleupagus][config] Invalid `]` position. in Unknown on line 0 12Fatal error: [snuffleupagus][0.0.0.0][config] Invalid `]` position. in Unknown on line 0
13 13
14Fatal error: [snuffleupagus][config] Invalid value 'asd[asd]asd' for `var` on line 1 in Unknown on line 0 14Fatal error: [snuffleupagus][0.0.0.0][config] Invalid value 'asd[asd]asd' for `var` on line 1 in Unknown on line 0
15 15
16Fatal error: [snuffleupagus][config] Invalid configuration file in Unknown on line 0 16Fatal error: [snuffleupagus][0.0.0.0][config] Invalid configuration file in Unknown on line 0
17Could not startup. \ No newline at end of file 17Could not startup. \ No newline at end of file
diff --git a/src/tests/broken_configuration/broken_conf_local_var_11.phpt b/src/tests/broken_configuration/broken_conf_local_var_11.phpt
index 105ef24..bd018e4 100644
--- a/src/tests/broken_configuration/broken_conf_local_var_11.phpt
+++ b/src/tests/broken_configuration/broken_conf_local_var_11.phpt
@@ -6,12 +6,12 @@ Broken configuration
6sp.configuration_file={PWD}/config/broken_conf_local_var_11.ini 6sp.configuration_file={PWD}/config/broken_conf_local_var_11.ini
7--FILE-- 7--FILE--
8--EXPECT-- 8--EXPECT--
9PHP Fatal error: [snuffleupagus][config] Invalid `::` position. in Unknown on line 0 9PHP Fatal error: [snuffleupagus][0.0.0.0][config] Invalid `::` position. in Unknown on line 0
10PHP Fatal error: [snuffleupagus][config] Invalid value 'asd::' for `param` on line 1 in Unknown on line 0 10PHP Fatal error: [snuffleupagus][0.0.0.0][config] Invalid value 'asd::' for `param` on line 1 in Unknown on line 0
11 11
12Fatal error: [snuffleupagus][config] Invalid `::` position. in Unknown on line 0 12Fatal error: [snuffleupagus][0.0.0.0][config] Invalid `::` position. in Unknown on line 0
13 13
14Fatal error: [snuffleupagus][config] Invalid value 'asd::' for `param` on line 1 in Unknown on line 0 14Fatal error: [snuffleupagus][0.0.0.0][config] Invalid value 'asd::' for `param` on line 1 in Unknown on line 0
15 15
16Fatal error: [snuffleupagus][config] Invalid configuration file in Unknown on line 0 16Fatal error: [snuffleupagus][0.0.0.0][config] Invalid configuration file in Unknown on line 0
17Could not startup. \ No newline at end of file 17Could not startup. \ No newline at end of file
diff --git a/src/tests/broken_configuration/broken_conf_local_var_12.phpt b/src/tests/broken_configuration/broken_conf_local_var_12.phpt
index bfa79e1..2c86d57 100644
--- a/src/tests/broken_configuration/broken_conf_local_var_12.phpt
+++ b/src/tests/broken_configuration/broken_conf_local_var_12.phpt
@@ -6,9 +6,9 @@ Broken configuration
6sp.configuration_file={PWD}/config/broken_conf_local_var_12.ini 6sp.configuration_file={PWD}/config/broken_conf_local_var_12.ini
7--FILE-- 7--FILE--
8--EXPECT-- 8--EXPECT--
9PHP Fatal error: [snuffleupagus][config] Empty value in `var` on line 1 in Unknown on line 0 9PHP Fatal error: [snuffleupagus][0.0.0.0][config] Empty value in `var` on line 1 in Unknown on line 0
10 10
11Fatal error: [snuffleupagus][config] Empty value in `var` on line 1 in Unknown on line 0 11Fatal error: [snuffleupagus][0.0.0.0][config] Empty value in `var` on line 1 in Unknown on line 0
12 12
13Fatal error: [snuffleupagus][config] Invalid configuration file in Unknown on line 0 13Fatal error: [snuffleupagus][0.0.0.0][config] Invalid configuration file in Unknown on line 0
14Could not startup. \ No newline at end of file 14Could not startup. \ No newline at end of file
diff --git a/src/tests/broken_configuration/broken_conf_local_var_13.phpt b/src/tests/broken_configuration/broken_conf_local_var_13.phpt
index b4e8dee..a42507d 100644
--- a/src/tests/broken_configuration/broken_conf_local_var_13.phpt
+++ b/src/tests/broken_configuration/broken_conf_local_var_13.phpt
@@ -6,12 +6,12 @@ Broken configuration
6sp.configuration_file={PWD}/config/broken_conf_local_var_13.ini 6sp.configuration_file={PWD}/config/broken_conf_local_var_13.ini
7--FILE-- 7--FILE--
8--EXPECT-- 8--EXPECT--
9PHP Fatal error: [snuffleupagus][config] Invalid `->` position. in Unknown on line 0 9PHP Fatal error: [snuffleupagus][0.0.0.0][config] Invalid `->` position. in Unknown on line 0
10PHP Fatal error: [snuffleupagus][config] Invalid value 'asd->asd' for `var` on line 1 in Unknown on line 0 10PHP Fatal error: [snuffleupagus][0.0.0.0][config] Invalid value 'asd->asd' for `var` on line 1 in Unknown on line 0
11 11
12Fatal error: [snuffleupagus][config] Invalid `->` position. in Unknown on line 0 12Fatal error: [snuffleupagus][0.0.0.0][config] Invalid `->` position. in Unknown on line 0
13 13
14Fatal error: [snuffleupagus][config] Invalid value 'asd->asd' for `var` on line 1 in Unknown on line 0 14Fatal error: [snuffleupagus][0.0.0.0][config] Invalid value 'asd->asd' for `var` on line 1 in Unknown on line 0
15 15
16Fatal error: [snuffleupagus][config] Invalid configuration file in Unknown on line 0 16Fatal error: [snuffleupagus][0.0.0.0][config] Invalid configuration file in Unknown on line 0
17Could not startup. \ No newline at end of file 17Could not startup. \ No newline at end of file
diff --git a/src/tests/broken_configuration/broken_conf_local_var_14.phpt b/src/tests/broken_configuration/broken_conf_local_var_14.phpt
index 3e21721..01c9228 100644
--- a/src/tests/broken_configuration/broken_conf_local_var_14.phpt
+++ b/src/tests/broken_configuration/broken_conf_local_var_14.phpt
@@ -6,12 +6,12 @@ Broken configuration
6sp.configuration_file={PWD}/config/broken_conf_local_var_14.ini 6sp.configuration_file={PWD}/config/broken_conf_local_var_14.ini
7--FILE-- 7--FILE--
8--EXPECT-- 8--EXPECT--
9PHP Fatal error: [snuffleupagus][config] Invalid var name: $i+valid var name . in Unknown on line 0 9PHP Fatal error: [snuffleupagus][0.0.0.0][config] Invalid var name: $i+valid var name . in Unknown on line 0
10PHP Fatal error: [snuffleupagus][config] Invalid value '$i+valid var name ' for `var` on line 1 in Unknown on line 0 10PHP Fatal error: [snuffleupagus][0.0.0.0][config] Invalid value '$i+valid var name ' for `var` on line 1 in Unknown on line 0
11 11
12Fatal error: [snuffleupagus][config] Invalid var name: $i+valid var name . in Unknown on line 0 12Fatal error: [snuffleupagus][0.0.0.0][config] Invalid var name: $i+valid var name . in Unknown on line 0
13 13
14Fatal error: [snuffleupagus][config] Invalid value '$i+valid var name ' for `var` on line 1 in Unknown on line 0 14Fatal error: [snuffleupagus][0.0.0.0][config] Invalid value '$i+valid var name ' for `var` on line 1 in Unknown on line 0
15 15
16Fatal error: [snuffleupagus][config] Invalid configuration file in Unknown on line 0 16Fatal error: [snuffleupagus][0.0.0.0][config] Invalid configuration file in Unknown on line 0
17Could not startup. \ No newline at end of file 17Could not startup. \ No newline at end of file
diff --git a/src/tests/broken_configuration/broken_conf_local_var_15.phpt b/src/tests/broken_configuration/broken_conf_local_var_15.phpt
index 6c9c4c3..8fca43a 100644
--- a/src/tests/broken_configuration/broken_conf_local_var_15.phpt
+++ b/src/tests/broken_configuration/broken_conf_local_var_15.phpt
@@ -6,12 +6,12 @@ Broken configuration
6sp.configuration_file={PWD}/config/broken_conf_local_var_15.ini 6sp.configuration_file={PWD}/config/broken_conf_local_var_15.ini
7--FILE-- 7--FILE--
8--EXPECT-- 8--EXPECT--
9PHP Fatal error: [snuffleupagus][config] Invalid var name: $i$$!@#. in Unknown on line 0 9PHP Fatal error: [snuffleupagus][0.0.0.0][config] Invalid var name: $i$$!@#. in Unknown on line 0
10PHP Fatal error: [snuffleupagus][config] Invalid value '$i$$!@#->qwe' for `var` on line 1 in Unknown on line 0 10PHP Fatal error: [snuffleupagus][0.0.0.0][config] Invalid value '$i$$!@#->qwe' for `var` on line 1 in Unknown on line 0
11 11
12Fatal error: [snuffleupagus][config] Invalid var name: $i$$!@#. in Unknown on line 0 12Fatal error: [snuffleupagus][0.0.0.0][config] Invalid var name: $i$$!@#. in Unknown on line 0
13 13
14Fatal error: [snuffleupagus][config] Invalid value '$i$$!@#->qwe' for `var` on line 1 in Unknown on line 0 14Fatal error: [snuffleupagus][0.0.0.0][config] Invalid value '$i$$!@#->qwe' for `var` on line 1 in Unknown on line 0
15 15
16Fatal error: [snuffleupagus][config] Invalid configuration file in Unknown on line 0 16Fatal error: [snuffleupagus][0.0.0.0][config] Invalid configuration file in Unknown on line 0
17Could not startup. \ No newline at end of file 17Could not startup. \ No newline at end of file
diff --git a/src/tests/broken_configuration/broken_conf_local_var_16.phpt b/src/tests/broken_configuration/broken_conf_local_var_16.phpt
index 85c6627..38f2030 100644
--- a/src/tests/broken_configuration/broken_conf_local_var_16.phpt
+++ b/src/tests/broken_configuration/broken_conf_local_var_16.phpt
@@ -6,12 +6,12 @@ Broken configuration
6sp.configuration_file={PWD}/config/broken_conf_local_var_16.ini 6sp.configuration_file={PWD}/config/broken_conf_local_var_16.ini
7--FILE-- 7--FILE--
8--EXPECT-- 8--EXPECT--
9PHP Fatal error: [snuffleupagus][config] Missing a closing quote. in Unknown on line 0 9PHP Fatal error: [snuffleupagus][0.0.0.0][config] Missing a closing quote. in Unknown on line 0
10PHP Fatal error: [snuffleupagus][config] Invalid value '"' for `var` on line 1 in Unknown on line 0 10PHP Fatal error: [snuffleupagus][0.0.0.0][config] Invalid value '"' for `var` on line 1 in Unknown on line 0
11 11
12Fatal error: [snuffleupagus][config] Missing a closing quote. in Unknown on line 0 12Fatal error: [snuffleupagus][0.0.0.0][config] Missing a closing quote. in Unknown on line 0
13 13
14Fatal error: [snuffleupagus][config] Invalid value '"' for `var` on line 1 in Unknown on line 0 14Fatal error: [snuffleupagus][0.0.0.0][config] Invalid value '"' for `var` on line 1 in Unknown on line 0
15 15
16Fatal error: [snuffleupagus][config] Invalid configuration file in Unknown on line 0 16Fatal error: [snuffleupagus][0.0.0.0][config] Invalid configuration file in Unknown on line 0
17Could not startup. \ No newline at end of file 17Could not startup. \ No newline at end of file
diff --git a/src/tests/broken_configuration/broken_conf_local_var_2.phpt b/src/tests/broken_configuration/broken_conf_local_var_2.phpt
index 7b0d36b..64bdaf3 100644
--- a/src/tests/broken_configuration/broken_conf_local_var_2.phpt
+++ b/src/tests/broken_configuration/broken_conf_local_var_2.phpt
@@ -6,12 +6,12 @@ Broken configuration
6sp.configuration_file={PWD}/config/broken_conf_local_var_2.ini 6sp.configuration_file={PWD}/config/broken_conf_local_var_2.ini
7--FILE-- 7--FILE--
8--EXPECT-- 8--EXPECT--
9PHP Fatal error: [snuffleupagus][config] Invalid `"` position. in Unknown on line 0 9PHP Fatal error: [snuffleupagus][0.0.0.0][config] Invalid `"` position. in Unknown on line 0
10PHP Fatal error: [snuffleupagus][config] Invalid value '""asd' for `var` on line 1 in Unknown on line 0 10PHP Fatal error: [snuffleupagus][0.0.0.0][config] Invalid value '""asd' for `var` on line 1 in Unknown on line 0
11 11
12Fatal error: [snuffleupagus][config] Invalid `"` position. in Unknown on line 0 12Fatal error: [snuffleupagus][0.0.0.0][config] Invalid `"` position. in Unknown on line 0
13 13
14Fatal error: [snuffleupagus][config] Invalid value '""asd' for `var` on line 1 in Unknown on line 0 14Fatal error: [snuffleupagus][0.0.0.0][config] Invalid value '""asd' for `var` on line 1 in Unknown on line 0
15 15
16Fatal error: [snuffleupagus][config] Invalid configuration file in Unknown on line 0 16Fatal error: [snuffleupagus][0.0.0.0][config] Invalid configuration file in Unknown on line 0
17Could not startup. \ No newline at end of file 17Could not startup. \ No newline at end of file
diff --git a/src/tests/broken_configuration/broken_conf_local_var_3.phpt b/src/tests/broken_configuration/broken_conf_local_var_3.phpt
index fb00c26..e041ad5 100644
--- a/src/tests/broken_configuration/broken_conf_local_var_3.phpt
+++ b/src/tests/broken_configuration/broken_conf_local_var_3.phpt
@@ -6,12 +6,12 @@ Broken configuration
6sp.configuration_file={PWD}/config/broken_conf_local_var_3.ini 6sp.configuration_file={PWD}/config/broken_conf_local_var_3.ini
7--FILE-- 7--FILE--
8--EXPECT-- 8--EXPECT--
9PHP Fatal error: [snuffleupagus][config] Invalid `->` position. in Unknown on line 0 9PHP Fatal error: [snuffleupagus][0.0.0.0][config] Invalid `->` position. in Unknown on line 0
10PHP Fatal error: [snuffleupagus][config] Invalid value '$qwe->::' for `var` on line 1 in Unknown on line 0 10PHP Fatal error: [snuffleupagus][0.0.0.0][config] Invalid value '$qwe->::' for `var` on line 1 in Unknown on line 0
11 11
12Fatal error: [snuffleupagus][config] Invalid `->` position. in Unknown on line 0 12Fatal error: [snuffleupagus][0.0.0.0][config] Invalid `->` position. in Unknown on line 0
13 13
14Fatal error: [snuffleupagus][config] Invalid value '$qwe->::' for `var` on line 1 in Unknown on line 0 14Fatal error: [snuffleupagus][0.0.0.0][config] Invalid value '$qwe->::' for `var` on line 1 in Unknown on line 0
15 15
16Fatal error: [snuffleupagus][config] Invalid configuration file in Unknown on line 0 16Fatal error: [snuffleupagus][0.0.0.0][config] Invalid configuration file in Unknown on line 0
17Could not startup. \ No newline at end of file 17Could not startup. \ No newline at end of file
diff --git a/src/tests/broken_configuration/broken_conf_local_var_4.phpt b/src/tests/broken_configuration/broken_conf_local_var_4.phpt
index 8d7e195..1c3f673 100644
--- a/src/tests/broken_configuration/broken_conf_local_var_4.phpt
+++ b/src/tests/broken_configuration/broken_conf_local_var_4.phpt
@@ -6,12 +6,12 @@ Broken configuration
6sp.configuration_file={PWD}/config/broken_conf_local_var_4.ini 6sp.configuration_file={PWD}/config/broken_conf_local_var_4.ini
7--FILE-- 7--FILE--
8--EXPECT-- 8--EXPECT--
9PHP Fatal error: [snuffleupagus][config] Invalid `"` position. in Unknown on line 0 9PHP Fatal error: [snuffleupagus][0.0.0.0][config] Invalid `"` position. in Unknown on line 0
10PHP Fatal error: [snuffleupagus][config] Invalid value '"asd"asd[]' for `var` on line 1 in Unknown on line 0 10PHP Fatal error: [snuffleupagus][0.0.0.0][config] Invalid value '"asd"asd[]' for `var` on line 1 in Unknown on line 0
11 11
12Fatal error: [snuffleupagus][config] Invalid `"` position. in Unknown on line 0 12Fatal error: [snuffleupagus][0.0.0.0][config] Invalid `"` position. in Unknown on line 0
13 13
14Fatal error: [snuffleupagus][config] Invalid value '"asd"asd[]' for `var` on line 1 in Unknown on line 0 14Fatal error: [snuffleupagus][0.0.0.0][config] Invalid value '"asd"asd[]' for `var` on line 1 in Unknown on line 0
15 15
16Fatal error: [snuffleupagus][config] Invalid configuration file in Unknown on line 0 16Fatal error: [snuffleupagus][0.0.0.0][config] Invalid configuration file in Unknown on line 0
17Could not startup. \ No newline at end of file 17Could not startup. \ No newline at end of file
diff --git a/src/tests/broken_configuration/broken_conf_local_var_5.phpt b/src/tests/broken_configuration/broken_conf_local_var_5.phpt
index 1c62e37..113ab39 100644
--- a/src/tests/broken_configuration/broken_conf_local_var_5.phpt
+++ b/src/tests/broken_configuration/broken_conf_local_var_5.phpt
@@ -6,12 +6,12 @@ Broken configuration
6sp.configuration_file={PWD}/config/broken_conf_local_var_5.ini 6sp.configuration_file={PWD}/config/broken_conf_local_var_5.ini
7--FILE-- 7--FILE--
8--EXPECT-- 8--EXPECT--
9PHP Fatal error: [snuffleupagus][config] Invalid `'` position. in Unknown on line 0 9PHP Fatal error: [snuffleupagus][0.0.0.0][config] Invalid `'` position. in Unknown on line 0
10PHP Fatal error: [snuffleupagus][config] Invalid value ''asd'asd[]' for `var` on line 1 in Unknown on line 0 10PHP Fatal error: [snuffleupagus][0.0.0.0][config] Invalid value ''asd'asd[]' for `var` on line 1 in Unknown on line 0
11 11
12Fatal error: [snuffleupagus][config] Invalid `'` position. in Unknown on line 0 12Fatal error: [snuffleupagus][0.0.0.0][config] Invalid `'` position. in Unknown on line 0
13 13
14Fatal error: [snuffleupagus][config] Invalid value ''asd'asd[]' for `var` on line 1 in Unknown on line 0 14Fatal error: [snuffleupagus][0.0.0.0][config] Invalid value ''asd'asd[]' for `var` on line 1 in Unknown on line 0
15 15
16Fatal error: [snuffleupagus][config] Invalid configuration file in Unknown on line 0 16Fatal error: [snuffleupagus][0.0.0.0][config] Invalid configuration file in Unknown on line 0
17Could not startup. \ No newline at end of file 17Could not startup. \ No newline at end of file
diff --git a/src/tests/broken_configuration/broken_conf_local_var_6.phpt b/src/tests/broken_configuration/broken_conf_local_var_6.phpt
index 9a3fa02..3d06667 100644
--- a/src/tests/broken_configuration/broken_conf_local_var_6.phpt
+++ b/src/tests/broken_configuration/broken_conf_local_var_6.phpt
@@ -6,12 +6,12 @@ Broken configuration
6sp.configuration_file={PWD}/config/broken_conf_local_var_6.ini 6sp.configuration_file={PWD}/config/broken_conf_local_var_6.ini
7--FILE-- 7--FILE--
8--EXPECT-- 8--EXPECT--
9PHP Fatal error: [snuffleupagus][config] Invalid `'` position. in Unknown on line 0 9PHP Fatal error: [snuffleupagus][0.0.0.0][config] Invalid `'` position. in Unknown on line 0
10PHP Fatal error: [snuffleupagus][config] Invalid value '''asd' for `var` on line 1 in Unknown on line 0 10PHP Fatal error: [snuffleupagus][0.0.0.0][config] Invalid value '''asd' for `var` on line 1 in Unknown on line 0
11 11
12Fatal error: [snuffleupagus][config] Invalid `'` position. in Unknown on line 0 12Fatal error: [snuffleupagus][0.0.0.0][config] Invalid `'` position. in Unknown on line 0
13 13
14Fatal error: [snuffleupagus][config] Invalid value '''asd' for `var` on line 1 in Unknown on line 0 14Fatal error: [snuffleupagus][0.0.0.0][config] Invalid value '''asd' for `var` on line 1 in Unknown on line 0
15 15
16Fatal error: [snuffleupagus][config] Invalid configuration file in Unknown on line 0 16Fatal error: [snuffleupagus][0.0.0.0][config] Invalid configuration file in Unknown on line 0
17Could not startup. \ No newline at end of file 17Could not startup. \ No newline at end of file
diff --git a/src/tests/broken_configuration/broken_conf_local_var_7.phpt b/src/tests/broken_configuration/broken_conf_local_var_7.phpt
index 9f2548b..11c3da9 100644
--- a/src/tests/broken_configuration/broken_conf_local_var_7.phpt
+++ b/src/tests/broken_configuration/broken_conf_local_var_7.phpt
@@ -6,12 +6,12 @@ Broken configuration
6sp.configuration_file={PWD}/config/broken_conf_local_var_7.ini 6sp.configuration_file={PWD}/config/broken_conf_local_var_7.ini
7--FILE-- 7--FILE--
8--EXPECT-- 8--EXPECT--
9PHP Fatal error: [snuffleupagus][config] Invalid `->` position. in Unknown on line 0 9PHP Fatal error: [snuffleupagus][0.0.0.0][config] Invalid `->` position. in Unknown on line 0
10PHP Fatal error: [snuffleupagus][config] Invalid value 'asd-->' for `var` on line 1 in Unknown on line 0 10PHP Fatal error: [snuffleupagus][0.0.0.0][config] Invalid value 'asd-->' for `var` on line 1 in Unknown on line 0
11 11
12Fatal error: [snuffleupagus][config] Invalid `->` position. in Unknown on line 0 12Fatal error: [snuffleupagus][0.0.0.0][config] Invalid `->` position. in Unknown on line 0
13 13
14Fatal error: [snuffleupagus][config] Invalid value 'asd-->' for `var` on line 1 in Unknown on line 0 14Fatal error: [snuffleupagus][0.0.0.0][config] Invalid value 'asd-->' for `var` on line 1 in Unknown on line 0
15 15
16Fatal error: [snuffleupagus][config] Invalid configuration file in Unknown on line 0 16Fatal error: [snuffleupagus][0.0.0.0][config] Invalid configuration file in Unknown on line 0
17Could not startup. \ No newline at end of file 17Could not startup. \ No newline at end of file
diff --git a/src/tests/broken_configuration/broken_conf_local_var_8.phpt b/src/tests/broken_configuration/broken_conf_local_var_8.phpt
index d4d9d35..2154284 100644
--- a/src/tests/broken_configuration/broken_conf_local_var_8.phpt
+++ b/src/tests/broken_configuration/broken_conf_local_var_8.phpt
@@ -6,12 +6,12 @@ Broken configuration
6sp.configuration_file={PWD}/config/broken_conf_local_var_8.ini 6sp.configuration_file={PWD}/config/broken_conf_local_var_8.ini
7--FILE-- 7--FILE--
8--EXPECT-- 8--EXPECT--
9PHP Fatal error: [snuffleupagus][config] Invalid `]` position. in Unknown on line 0 9PHP Fatal error: [snuffleupagus][0.0.0.0][config] Invalid `]` position. in Unknown on line 0
10PHP Fatal error: [snuffleupagus][config] Invalid value 'asd[asd]"asd"' for `var` on line 1 in Unknown on line 0 10PHP Fatal error: [snuffleupagus][0.0.0.0][config] Invalid value 'asd[asd]"asd"' for `var` on line 1 in Unknown on line 0
11 11
12Fatal error: [snuffleupagus][config] Invalid `]` position. in Unknown on line 0 12Fatal error: [snuffleupagus][0.0.0.0][config] Invalid `]` position. in Unknown on line 0
13 13
14Fatal error: [snuffleupagus][config] Invalid value 'asd[asd]"asd"' for `var` on line 1 in Unknown on line 0 14Fatal error: [snuffleupagus][0.0.0.0][config] Invalid value 'asd[asd]"asd"' for `var` on line 1 in Unknown on line 0
15 15
16Fatal error: [snuffleupagus][config] Invalid configuration file in Unknown on line 0 16Fatal error: [snuffleupagus][0.0.0.0][config] Invalid configuration file in Unknown on line 0
17Could not startup. \ No newline at end of file 17Could not startup. \ No newline at end of file
diff --git a/src/tests/broken_configuration/broken_conf_local_var_9.phpt b/src/tests/broken_configuration/broken_conf_local_var_9.phpt
index 972e398..ab6ae78 100644
--- a/src/tests/broken_configuration/broken_conf_local_var_9.phpt
+++ b/src/tests/broken_configuration/broken_conf_local_var_9.phpt
@@ -6,12 +6,12 @@ Broken configuration
6sp.configuration_file={PWD}/config/broken_conf_local_var_9.ini 6sp.configuration_file={PWD}/config/broken_conf_local_var_9.ini
7--FILE-- 7--FILE--
8--EXPECT-- 8--EXPECT--
9PHP Fatal error: [snuffleupagus][config] Invalid `]` position. in Unknown on line 0 9PHP Fatal error: [snuffleupagus][0.0.0.0][config] Invalid `]` position. in Unknown on line 0
10PHP Fatal error: [snuffleupagus][config] Invalid value 'asd[asd]'asd'' for `var` on line 1 in Unknown on line 0 10PHP Fatal error: [snuffleupagus][0.0.0.0][config] Invalid value 'asd[asd]'asd'' for `var` on line 1 in Unknown on line 0
11 11
12Fatal error: [snuffleupagus][config] Invalid `]` position. in Unknown on line 0 12Fatal error: [snuffleupagus][0.0.0.0][config] Invalid `]` position. in Unknown on line 0
13 13
14Fatal error: [snuffleupagus][config] Invalid value 'asd[asd]'asd'' for `var` on line 1 in Unknown on line 0 14Fatal error: [snuffleupagus][0.0.0.0][config] Invalid value 'asd[asd]'asd'' for `var` on line 1 in Unknown on line 0
15 15
16Fatal error: [snuffleupagus][config] Invalid configuration file in Unknown on line 0 16Fatal error: [snuffleupagus][0.0.0.0][config] Invalid configuration file in Unknown on line 0
17Could not startup. \ No newline at end of file 17Could not startup. \ No newline at end of file
diff --git a/src/tests/broken_configuration/broken_conf_lots_of_quotes.phpt b/src/tests/broken_configuration/broken_conf_lots_of_quotes.phpt
index afed2f8..e69da0b 100644
--- a/src/tests/broken_configuration/broken_conf_lots_of_quotes.phpt
+++ b/src/tests/broken_configuration/broken_conf_lots_of_quotes.phpt
@@ -6,9 +6,9 @@ Configuration line with too many quotes
6sp.configuration_file={PWD}/config/broken_conf_lots_of_quotes.ini 6sp.configuration_file={PWD}/config/broken_conf_lots_of_quotes.ini
7--FILE-- 7--FILE--
8--EXPECT-- 8--EXPECT--
9PHP Fatal error: [snuffleupagus][error] There is an issue with the parsing of '"this\"is a weird\"\"\"cookie\"name"");': it doesn't look like a valid string on line 1 in Unknown on line 0 9PHP Fatal error: [snuffleupagus][0.0.0.0][error] There is an issue with the parsing of '"this\"is a weird\"\"\"cookie\"name"");': it doesn't look like a valid string on line 1 in Unknown on line 0
10 10
11Fatal error: [snuffleupagus][error] There is an issue with the parsing of '"this\"is a weird\"\"\"cookie\"name"");': it doesn't look like a valid string on line 1 in Unknown on line 0 11Fatal error: [snuffleupagus][0.0.0.0][error] There is an issue with the parsing of '"this\"is a weird\"\"\"cookie\"name"");': it doesn't look like a valid string on line 1 in Unknown on line 0
12 12
13Fatal error: [snuffleupagus][config] Invalid configuration file in Unknown on line 0 13Fatal error: [snuffleupagus][0.0.0.0][config] Invalid configuration file in Unknown on line 0
14Could not startup. \ No newline at end of file 14Could not startup. \ No newline at end of file
diff --git a/src/tests/broken_configuration/broken_conf_missing_script.phpt b/src/tests/broken_configuration/broken_conf_missing_script.phpt
index 70e508d..97d3743 100644
--- a/src/tests/broken_configuration/broken_conf_missing_script.phpt
+++ b/src/tests/broken_configuration/broken_conf_missing_script.phpt
@@ -8,9 +8,9 @@ sp.configuration_file={PWD}/config/broken_conf_missing_script.ini
8echo 1; 8echo 1;
9?> 9?>
10--EXPECTF-- 10--EXPECTF--
11PHP Fatal error: [snuffleupagus][config] The `script` directive is mandatory in '.enable();' on line 1 in Unknown on line 0 11PHP Fatal error: [snuffleupagus][0.0.0.0][config] The `script` directive is mandatory in '.enable();' on line 1 in Unknown on line 0
12 12
13Fatal error: [snuffleupagus][config] The `script` directive is mandatory in '.enable();' on line 1 in Unknown on line 0 13Fatal error: [snuffleupagus][0.0.0.0][config] The `script` directive is mandatory in '.enable();' on line 1 in Unknown on line 0
14 14
15Fatal error: [snuffleupagus][config] Invalid configuration file in Unknown on line 0 15Fatal error: [snuffleupagus][0.0.0.0][config] Invalid configuration file in Unknown on line 0
16Could not startup. 16Could not startup.
diff --git a/src/tests/broken_configuration/broken_conf_mutually_exclusive.phpt b/src/tests/broken_configuration/broken_conf_mutually_exclusive.phpt
index 6cc9bd6..d76798b 100644
--- a/src/tests/broken_configuration/broken_conf_mutually_exclusive.phpt
+++ b/src/tests/broken_configuration/broken_conf_mutually_exclusive.phpt
@@ -6,6 +6,6 @@ Broken configuration
6sp.configuration_file={PWD}/config/broken_conf_mutually_exclusive.ini 6sp.configuration_file={PWD}/config/broken_conf_mutually_exclusive.ini
7--FILE-- 7--FILE--
8--EXPECT-- 8--EXPECT--
9PHP Fatal error: [snuffleupagus][config] Invalid configuration line: 'sp.disabled_functions.function("system").param("id").value("42").value_r("^id$").drop();': '.value' and '.regexp' are mutually exclusive on line 1 in Unknown on line 0 9PHP Fatal error: [snuffleupagus][0.0.0.0][config] Invalid configuration line: 'sp.disabled_functions.function("system").param("id").value("42").value_r("^id$").drop();': '.value' and '.regexp' are mutually exclusive on line 1 in Unknown on line 0
10 10
11Fatal error: [snuffleupagus][config] Invalid configuration line: 'sp.disabled_functions.function("system").param("id").value("42").value_r("^id$").drop();': '.value' and '.regexp' are mutually exclusive on line 1 in Unknown on line 0 \ No newline at end of file 11Fatal error: [snuffleupagus][0.0.0.0][config] Invalid configuration line: 'sp.disabled_functions.function("system").param("id").value("42").value_r("^id$").drop();': '.value' and '.regexp' are mutually exclusive on line 1 in Unknown on line 0 \ No newline at end of file
diff --git a/src/tests/broken_configuration/broken_conf_mutually_exclusive10.phpt b/src/tests/broken_configuration/broken_conf_mutually_exclusive10.phpt
index 0231c05..9ac8881 100644
--- a/src/tests/broken_configuration/broken_conf_mutually_exclusive10.phpt
+++ b/src/tests/broken_configuration/broken_conf_mutually_exclusive10.phpt
@@ -6,9 +6,9 @@ Broken configuration - enabled/disabled readonly
6sp.configuration_file={PWD}/config/broken_conf_mutually_exclusive10.ini 6sp.configuration_file={PWD}/config/broken_conf_mutually_exclusive10.ini
7--FILE-- 7--FILE--
8--EXPECT-- 8--EXPECT--
9PHP Fatal error: [snuffleupagus][config] A rule can't be enabled and disabled on line 1 in Unknown on line 0 9PHP Fatal error: [snuffleupagus][0.0.0.0][config] A rule can't be enabled and disabled on line 1 in Unknown on line 0
10 10
11Fatal error: [snuffleupagus][config] A rule can't be enabled and disabled on line 1 in Unknown on line 0 11Fatal error: [snuffleupagus][0.0.0.0][config] A rule can't be enabled and disabled on line 1 in Unknown on line 0
12 12
13Fatal error: [snuffleupagus][config] Invalid configuration file in Unknown on line 0 13Fatal error: [snuffleupagus][0.0.0.0][config] Invalid configuration file in Unknown on line 0
14Could not startup. \ No newline at end of file 14Could not startup. \ No newline at end of file
diff --git a/src/tests/broken_configuration/broken_conf_mutually_exclusive11.phpt b/src/tests/broken_configuration/broken_conf_mutually_exclusive11.phpt
index 507d7fa..69b2e31 100644
--- a/src/tests/broken_configuration/broken_conf_mutually_exclusive11.phpt
+++ b/src/tests/broken_configuration/broken_conf_mutually_exclusive11.phpt
@@ -6,9 +6,9 @@ Broken configuration - ret and var are mutually exclusives
6sp.configuration_file={PWD}/config/broken_conf_mutually_exclusive11.ini 6sp.configuration_file={PWD}/config/broken_conf_mutually_exclusive11.ini
7--FILE-- 7--FILE--
8--EXPECT-- 8--EXPECT--
9PHP Fatal error: [snuffleupagus][config] Invalid configuration line: 'sp.disabled_functions.function("strcmp").drop().ret("hip").var("hop");':`ret` and `var` are mutually exclusive on line 1 in Unknown on line 0 9PHP Fatal error: [snuffleupagus][0.0.0.0][config] Invalid configuration line: 'sp.disabled_functions.function("strcmp").drop().ret("hip").var("hop");':`ret` and `var` are mutually exclusive on line 1 in Unknown on line 0
10 10
11Fatal error: [snuffleupagus][config] Invalid configuration line: 'sp.disabled_functions.function("strcmp").drop().ret("hip").var("hop");':`ret` and `var` are mutually exclusive on line 1 in Unknown on line 0 11Fatal error: [snuffleupagus][0.0.0.0][config] Invalid configuration line: 'sp.disabled_functions.function("strcmp").drop().ret("hip").var("hop");':`ret` and `var` are mutually exclusive on line 1 in Unknown on line 0
12 12
13Fatal error: [snuffleupagus][config] Invalid configuration file in Unknown on line 0 13Fatal error: [snuffleupagus][0.0.0.0][config] Invalid configuration file in Unknown on line 0
14Could not startup. 14Could not startup.
diff --git a/src/tests/broken_configuration/broken_conf_mutually_exclusive12.phpt b/src/tests/broken_configuration/broken_conf_mutually_exclusive12.phpt
index d823de9..dac0f16 100644
--- a/src/tests/broken_configuration/broken_conf_mutually_exclusive12.phpt
+++ b/src/tests/broken_configuration/broken_conf_mutually_exclusive12.phpt
@@ -6,9 +6,9 @@ Broken configuration - ret and value are mutually exclusive
6sp.configuration_file={PWD}/config/broken_conf_mutually_exclusive12.ini 6sp.configuration_file={PWD}/config/broken_conf_mutually_exclusive12.ini
7--FILE-- 7--FILE--
8--EXPECT-- 8--EXPECT--
9PHP Fatal error: [snuffleupagus][config] Invalid configuration line: 'sp.disabled_functions.function("strcmp").drop().ret("hip").value("hop");':`ret` and `value` are mutually exclusive on line 1 in Unknown on line 0 9PHP Fatal error: [snuffleupagus][0.0.0.0][config] Invalid configuration line: 'sp.disabled_functions.function("strcmp").drop().ret("hip").value("hop");':`ret` and `value` are mutually exclusive on line 1 in Unknown on line 0
10 10
11Fatal error: [snuffleupagus][config] Invalid configuration line: 'sp.disabled_functions.function("strcmp").drop().ret("hip").value("hop");':`ret` and `value` are mutually exclusive on line 1 in Unknown on line 0 11Fatal error: [snuffleupagus][0.0.0.0][config] Invalid configuration line: 'sp.disabled_functions.function("strcmp").drop().ret("hip").value("hop");':`ret` and `value` are mutually exclusive on line 1 in Unknown on line 0
12 12
13Fatal error: [snuffleupagus][config] Invalid configuration file in Unknown on line 0 13Fatal error: [snuffleupagus][0.0.0.0][config] Invalid configuration file in Unknown on line 0
14Could not startup. 14Could not startup.
diff --git a/src/tests/broken_configuration/broken_conf_mutually_exclusive2.phpt b/src/tests/broken_configuration/broken_conf_mutually_exclusive2.phpt
index 570b917..6e71f83 100644
--- a/src/tests/broken_configuration/broken_conf_mutually_exclusive2.phpt
+++ b/src/tests/broken_configuration/broken_conf_mutually_exclusive2.phpt
@@ -6,6 +6,6 @@ Broken configuration
6sp.configuration_file={PWD}/config/broken_conf_mutually_exclusive2.ini 6sp.configuration_file={PWD}/config/broken_conf_mutually_exclusive2.ini
7--FILE-- 7--FILE--
8--EXPECT-- 8--EXPECT--
9PHP Fatal error: [snuffleupagus][config] Invalid configuration line: 'sp.disabled_functions.function("system").function_r("system").param("id").value("42").drop();': '.r_function' and '.function' are mutually exclusive on line 1 in Unknown on line 0 9PHP Fatal error: [snuffleupagus][0.0.0.0][config] Invalid configuration line: 'sp.disabled_functions.function("system").function_r("system").param("id").value("42").drop();': '.r_function' and '.function' are mutually exclusive on line 1 in Unknown on line 0
10 10
11Fatal error: [snuffleupagus][config] Invalid configuration line: 'sp.disabled_functions.function("system").function_r("system").param("id").value("42").drop();': '.r_function' and '.function' are mutually exclusive on line 1 in Unknown on line 0 \ No newline at end of file 11Fatal error: [snuffleupagus][0.0.0.0][config] Invalid configuration line: 'sp.disabled_functions.function("system").function_r("system").param("id").value("42").drop();': '.r_function' and '.function' are mutually exclusive on line 1 in Unknown on line 0 \ No newline at end of file
diff --git a/src/tests/broken_configuration/broken_conf_mutually_exclusive3.phpt b/src/tests/broken_configuration/broken_conf_mutually_exclusive3.phpt
index e7387eb..46c589b 100644
--- a/src/tests/broken_configuration/broken_conf_mutually_exclusive3.phpt
+++ b/src/tests/broken_configuration/broken_conf_mutually_exclusive3.phpt
@@ -6,6 +6,6 @@ Broken configuration
6sp.configuration_file={PWD}/config/broken_conf_mutually_exclusive3.ini 6sp.configuration_file={PWD}/config/broken_conf_mutually_exclusive3.ini
7--FILE-- 7--FILE--
8--EXPECT-- 8--EXPECT--
9PHP Fatal error: [snuffleupagus][config] Invalid configuration line: 'sp.disabled_functions.function("system").param("id").value("42").filename_r("^id$").filename("pouet.txt").drop();': '.r_filename' and '.filename' are mutually exclusive on line 1 in Unknown on line 0 9PHP Fatal error: [snuffleupagus][0.0.0.0][config] Invalid configuration line: 'sp.disabled_functions.function("system").param("id").value("42").filename_r("^id$").filename("pouet.txt").drop();': '.r_filename' and '.filename' are mutually exclusive on line 1 in Unknown on line 0
10 10
11Fatal error: [snuffleupagus][config] Invalid configuration line: 'sp.disabled_functions.function("system").param("id").value("42").filename_r("^id$").filename("pouet.txt").drop();': '.r_filename' and '.filename' are mutually exclusive on line 1 in Unknown on line 0 \ No newline at end of file 11Fatal error: [snuffleupagus][0.0.0.0][config] Invalid configuration line: 'sp.disabled_functions.function("system").param("id").value("42").filename_r("^id$").filename("pouet.txt").drop();': '.r_filename' and '.filename' are mutually exclusive on line 1 in Unknown on line 0 \ No newline at end of file
diff --git a/src/tests/broken_configuration/broken_conf_mutually_exclusive4.phpt b/src/tests/broken_configuration/broken_conf_mutually_exclusive4.phpt
index c979f56..84c814b 100644
--- a/src/tests/broken_configuration/broken_conf_mutually_exclusive4.phpt
+++ b/src/tests/broken_configuration/broken_conf_mutually_exclusive4.phpt
@@ -6,9 +6,9 @@ Broken configuration
6sp.configuration_file={PWD}/config/broken_conf_mutually_exclusive4.ini 6sp.configuration_file={PWD}/config/broken_conf_mutually_exclusive4.ini
7--FILE-- 7--FILE--
8--EXPECT-- 8--EXPECT--
9PHP Fatal error: [snuffleupagus][config] Invalid configuration line: 'sp.disabled_functions.function("system").param("id").value("42").param_r("^id$").drop();':'.r_param', '.param' and '.pos' are mutually exclusive on line 1 in Unknown on line 0 9PHP Fatal error: [snuffleupagus][0.0.0.0][config] Invalid configuration line: 'sp.disabled_functions.function("system").param("id").value("42").param_r("^id$").drop();':'.r_param', '.param' and '.pos' are mutually exclusive on line 1 in Unknown on line 0
10 10
11Fatal error: [snuffleupagus][config] Invalid configuration line: 'sp.disabled_functions.function("system").param("id").value("42").param_r("^id$").drop();':'.r_param', '.param' and '.pos' are mutually exclusive on line 1 in Unknown on line 0 11Fatal error: [snuffleupagus][0.0.0.0][config] Invalid configuration line: 'sp.disabled_functions.function("system").param("id").value("42").param_r("^id$").drop();':'.r_param', '.param' and '.pos' are mutually exclusive on line 1 in Unknown on line 0
12 12
13Fatal error: [snuffleupagus][config] Invalid configuration file in Unknown on line 0 13Fatal error: [snuffleupagus][0.0.0.0][config] Invalid configuration file in Unknown on line 0
14Could not startup. \ No newline at end of file 14Could not startup. \ No newline at end of file
diff --git a/src/tests/broken_configuration/broken_conf_mutually_exclusive5.phpt b/src/tests/broken_configuration/broken_conf_mutually_exclusive5.phpt
index b23fba6..e8c1f75 100644
--- a/src/tests/broken_configuration/broken_conf_mutually_exclusive5.phpt
+++ b/src/tests/broken_configuration/broken_conf_mutually_exclusive5.phpt
@@ -6,6 +6,6 @@ Broken configuration
6sp.configuration_file={PWD}/config/broken_conf_mutually_exclusive5.ini 6sp.configuration_file={PWD}/config/broken_conf_mutually_exclusive5.ini
7--FILE-- 7--FILE--
8--EXPECT-- 8--EXPECT--
9PHP Fatal error: [snuffleupagus][config] Invalid configuration line: 'sp.disabled_functions.function("system").ret("0").drop().ret_r("^0$");': '.r_ret' and '.ret' are mutually exclusive on line 1 in Unknown on line 0 9PHP Fatal error: [snuffleupagus][0.0.0.0][config] Invalid configuration line: 'sp.disabled_functions.function("system").ret("0").drop().ret_r("^0$");': '.r_ret' and '.ret' are mutually exclusive on line 1 in Unknown on line 0
10 10
11Fatal error: [snuffleupagus][config] Invalid configuration line: 'sp.disabled_functions.function("system").ret("0").drop().ret_r("^0$");': '.r_ret' and '.ret' are mutually exclusive on line 1 in Unknown on line 0 \ No newline at end of file 11Fatal error: [snuffleupagus][0.0.0.0][config] Invalid configuration line: 'sp.disabled_functions.function("system").ret("0").drop().ret_r("^0$");': '.r_ret' and '.ret' are mutually exclusive on line 1 in Unknown on line 0 \ No newline at end of file
diff --git a/src/tests/broken_configuration/broken_conf_mutually_exclusive6.phpt b/src/tests/broken_configuration/broken_conf_mutually_exclusive6.phpt
index 1c4686b..bbbb179 100644
--- a/src/tests/broken_configuration/broken_conf_mutually_exclusive6.phpt
+++ b/src/tests/broken_configuration/broken_conf_mutually_exclusive6.phpt
@@ -6,9 +6,9 @@ Broken configuration
6sp.configuration_file={PWD}/config/broken_conf_mutually_exclusive6.ini 6sp.configuration_file={PWD}/config/broken_conf_mutually_exclusive6.ini
7--FILE-- 7--FILE--
8--EXPECT-- 8--EXPECT--
9PHP Fatal error: [snuffleupagus][config] Invalid configuration line: 'sp.disabled_functions.function("system").param("id").value("42").ret_r("^0$").drop();':`ret` and `param` are mutually exclusive on line 1 in Unknown on line 0 9PHP Fatal error: [snuffleupagus][0.0.0.0][config] Invalid configuration line: 'sp.disabled_functions.function("system").param("id").value("42").ret_r("^0$").drop();':`ret` and `param` are mutually exclusive on line 1 in Unknown on line 0
10 10
11Fatal error: [snuffleupagus][config] Invalid configuration line: 'sp.disabled_functions.function("system").param("id").value("42").ret_r("^0$").drop();':`ret` and `param` are mutually exclusive on line 1 in Unknown on line 0 11Fatal error: [snuffleupagus][0.0.0.0][config] Invalid configuration line: 'sp.disabled_functions.function("system").param("id").value("42").ret_r("^0$").drop();':`ret` and `param` are mutually exclusive on line 1 in Unknown on line 0
12 12
13Fatal error: [snuffleupagus][config] Invalid configuration file in Unknown on line 0 13Fatal error: [snuffleupagus][0.0.0.0][config] Invalid configuration file in Unknown on line 0
14Could not startup. \ No newline at end of file 14Could not startup. \ No newline at end of file
diff --git a/src/tests/broken_configuration/broken_conf_mutually_exclusive7.phpt b/src/tests/broken_configuration/broken_conf_mutually_exclusive7.phpt
index 22abf79..ecd39a0 100644
--- a/src/tests/broken_configuration/broken_conf_mutually_exclusive7.phpt
+++ b/src/tests/broken_configuration/broken_conf_mutually_exclusive7.phpt
@@ -6,9 +6,9 @@ Broken configuration
6sp.configuration_file={PWD}/config/broken_conf_mutually_exclusive7.ini 6sp.configuration_file={PWD}/config/broken_conf_mutually_exclusive7.ini
7--FILE-- 7--FILE--
8--EXPECT-- 8--EXPECT--
9PHP Fatal error: [snuffleupagus][config] Invalid configuration line: 'sp.disabled_functions.function("system").ret("0").drop().allow();': The rule must either be a `drop` or `allow` one on line 1 in Unknown on line 0 9PHP Fatal error: [snuffleupagus][0.0.0.0][config] Invalid configuration line: 'sp.disabled_functions.function("system").ret("0").drop().allow();': The rule must either be a `drop` or `allow` one on line 1 in Unknown on line 0
10 10
11Fatal error: [snuffleupagus][config] Invalid configuration line: 'sp.disabled_functions.function("system").ret("0").drop().allow();': The rule must either be a `drop` or `allow` one on line 1 in Unknown on line 0 11Fatal error: [snuffleupagus][0.0.0.0][config] Invalid configuration line: 'sp.disabled_functions.function("system").ret("0").drop().allow();': The rule must either be a `drop` or `allow` one on line 1 in Unknown on line 0
12 12
13Fatal error: [snuffleupagus][config] Invalid configuration file in Unknown on line 0 13Fatal error: [snuffleupagus][0.0.0.0][config] Invalid configuration file in Unknown on line 0
14Could not startup. \ No newline at end of file 14Could not startup. \ No newline at end of file
diff --git a/src/tests/broken_configuration/broken_conf_mutually_exclusive8.phpt b/src/tests/broken_configuration/broken_conf_mutually_exclusive8.phpt
index 6a95234..f9e4692 100644
--- a/src/tests/broken_configuration/broken_conf_mutually_exclusive8.phpt
+++ b/src/tests/broken_configuration/broken_conf_mutually_exclusive8.phpt
@@ -6,9 +6,9 @@ Broken configuration
6sp.configuration_file={PWD}/config/broken_conf_mutually_exclusive8.ini 6sp.configuration_file={PWD}/config/broken_conf_mutually_exclusive8.ini
7--FILE-- 7--FILE--
8--EXPECT-- 8--EXPECT--
9PHP Fatal error: [snuffleupagus][config] Invalid configuration line: 'sp.disabled_functions.ret("0").drop();': must take a function name on line 1 in Unknown on line 0 9PHP Fatal error: [snuffleupagus][0.0.0.0][config] Invalid configuration line: 'sp.disabled_functions.ret("0").drop();': must take a function name on line 1 in Unknown on line 0
10 10
11Fatal error: [snuffleupagus][config] Invalid configuration line: 'sp.disabled_functions.ret("0").drop();': must take a function name on line 1 in Unknown on line 0 11Fatal error: [snuffleupagus][0.0.0.0][config] Invalid configuration line: 'sp.disabled_functions.ret("0").drop();': must take a function name on line 1 in Unknown on line 0
12 12
13Fatal error: [snuffleupagus][config] Invalid configuration file in Unknown on line 0 13Fatal error: [snuffleupagus][0.0.0.0][config] Invalid configuration file in Unknown on line 0
14Could not startup. \ No newline at end of file 14Could not startup. \ No newline at end of file
diff --git a/src/tests/broken_configuration/broken_conf_mutually_exclusive9.phpt b/src/tests/broken_configuration/broken_conf_mutually_exclusive9.phpt
index 9436c24..0b574eb 100644
--- a/src/tests/broken_configuration/broken_conf_mutually_exclusive9.phpt
+++ b/src/tests/broken_configuration/broken_conf_mutually_exclusive9.phpt
@@ -6,9 +6,9 @@ Broken configuration - enabled/disabled unserialize
6sp.configuration_file={PWD}/config/broken_conf_mutually_exclusive9.ini 6sp.configuration_file={PWD}/config/broken_conf_mutually_exclusive9.ini
7--FILE-- 7--FILE--
8--EXPECT-- 8--EXPECT--
9PHP Fatal error: [snuffleupagus][config] A rule can't be enabled and disabled on line 1 in Unknown on line 0 9PHP Fatal error: [snuffleupagus][0.0.0.0][config] A rule can't be enabled and disabled on line 1 in Unknown on line 0
10 10
11Fatal error: [snuffleupagus][config] A rule can't be enabled and disabled on line 1 in Unknown on line 0 11Fatal error: [snuffleupagus][0.0.0.0][config] A rule can't be enabled and disabled on line 1 in Unknown on line 0
12 12
13Fatal error: [snuffleupagus][config] Invalid configuration file in Unknown on line 0 13Fatal error: [snuffleupagus][0.0.0.0][config] Invalid configuration file in Unknown on line 0
14Could not startup. \ No newline at end of file 14Could not startup. \ No newline at end of file
diff --git a/src/tests/broken_configuration/broken_conf_no_cookie_action.phpt b/src/tests/broken_configuration/broken_conf_no_cookie_action.phpt
index a354b8b..d2ee961 100644
--- a/src/tests/broken_configuration/broken_conf_no_cookie_action.phpt
+++ b/src/tests/broken_configuration/broken_conf_no_cookie_action.phpt
@@ -6,9 +6,9 @@ Bad config, invalid action.
6sp.configuration_file={PWD}/config/broken_conf_cookie_action.ini 6sp.configuration_file={PWD}/config/broken_conf_cookie_action.ini
7--FILE-- 7--FILE--
8--EXPECT-- 8--EXPECT--
9PHP Fatal error: [snuffleupagus][config] You must specify a at least one action to a cookie on line 1 in Unknown on line 0 9PHP Fatal error: [snuffleupagus][0.0.0.0][config] You must specify a at least one action to a cookie on line 1 in Unknown on line 0
10 10
11Fatal error: [snuffleupagus][config] You must specify a at least one action to a cookie on line 1 in Unknown on line 0 11Fatal error: [snuffleupagus][0.0.0.0][config] You must specify a at least one action to a cookie on line 1 in Unknown on line 0
12 12
13Fatal error: [snuffleupagus][config] Invalid configuration file in Unknown on line 0 13Fatal error: [snuffleupagus][0.0.0.0][config] Invalid configuration file in Unknown on line 0
14Could not startup. \ No newline at end of file 14Could not startup. \ No newline at end of file
diff --git a/src/tests/broken_configuration/broken_conf_no_cookie_name.phpt b/src/tests/broken_configuration/broken_conf_no_cookie_name.phpt
index e769edb..ec82655 100644
--- a/src/tests/broken_configuration/broken_conf_no_cookie_name.phpt
+++ b/src/tests/broken_configuration/broken_conf_no_cookie_name.phpt
@@ -6,9 +6,9 @@ Borken configuration - encrypted cookie with no name
6sp.configuration_file={PWD}/config/config_encrypted_cookies_noname.ini 6sp.configuration_file={PWD}/config/config_encrypted_cookies_noname.ini
7--FILE-- 7--FILE--
8--EXPECT-- 8--EXPECT--
9PHP Fatal error: [snuffleupagus][config] You must specify a cookie name/regexp on line 2 in Unknown on line 0 9PHP Fatal error: [snuffleupagus][0.0.0.0][config] You must specify a cookie name/regexp on line 2 in Unknown on line 0
10 10
11Fatal error: [snuffleupagus][config] You must specify a cookie name/regexp on line 2 in Unknown on line 0 11Fatal error: [snuffleupagus][0.0.0.0][config] You must specify a cookie name/regexp on line 2 in Unknown on line 0
12 12
13Fatal error: [snuffleupagus][config] Invalid configuration file in Unknown on line 0 13Fatal error: [snuffleupagus][0.0.0.0][config] Invalid configuration file in Unknown on line 0
14Could not startup. \ No newline at end of file 14Could not startup. \ No newline at end of file
diff --git a/src/tests/broken_configuration/broken_conf_no_file_specified.phpt b/src/tests/broken_configuration/broken_conf_no_file_specified.phpt
index 10314ec..98ec80c 100644
--- a/src/tests/broken_configuration/broken_conf_no_file_specified.phpt
+++ b/src/tests/broken_configuration/broken_conf_no_file_specified.phpt
@@ -6,5 +6,5 @@ Broken configuration - No configuration file specified
6--FILE-- 6--FILE--
7<?php echo "1\n"; ?> 7<?php echo "1\n"; ?>
8--EXPECT-- 8--EXPECT--
9Fatal error: [snuffleupagus][config] Invalid configuration file in Unknown on line 0 9Fatal error: [snuffleupagus][0.0.0.0][config] Invalid configuration file in Unknown on line 0
10Could not startup. 10Could not startup.
diff --git a/src/tests/broken_configuration/broken_conf_nonexisting_script.phpt b/src/tests/broken_configuration/broken_conf_nonexisting_script.phpt
index 16583d3..b518295 100644
--- a/src/tests/broken_configuration/broken_conf_nonexisting_script.phpt
+++ b/src/tests/broken_configuration/broken_conf_nonexisting_script.phpt
@@ -8,9 +8,9 @@ sp.configuration_file={PWD}/config/broken_conf_nonexisting_script.ini
8echo 1; 8echo 1;
9?> 9?>
10--EXPECTF-- 10--EXPECTF--
11PHP Fatal error: [snuffleupagus][config] The `script` (./non_existing_script.sh) doesn't exist on line 1 in Unknown on line 0 11PHP Fatal error: [snuffleupagus][0.0.0.0][config] The `script` (./non_existing_script.sh) doesn't exist on line 1 in Unknown on line 0
12 12
13Fatal error: [snuffleupagus][config] The `script` (./non_existing_script.sh) doesn't exist on line 1 in Unknown on line 0 13Fatal error: [snuffleupagus][0.0.0.0][config] The `script` (./non_existing_script.sh) doesn't exist on line 1 in Unknown on line 0
14 14
15Fatal error: [snuffleupagus][config] Invalid configuration file in Unknown on line 0 15Fatal error: [snuffleupagus][0.0.0.0][config] Invalid configuration file in Unknown on line 0
16Could not startup. 16Could not startup.
diff --git a/src/tests/broken_configuration/broken_conf_quotes.phpt b/src/tests/broken_configuration/broken_conf_quotes.phpt
index 845f7ee..86fac81 100644
--- a/src/tests/broken_configuration/broken_conf_quotes.phpt
+++ b/src/tests/broken_configuration/broken_conf_quotes.phpt
@@ -6,12 +6,12 @@ Broken configuration - missing quote
6sp.configuration_file={PWD}/config/broken_conf_quotes.ini 6sp.configuration_file={PWD}/config/broken_conf_quotes.ini
7--FILE-- 7--FILE--
8--EXPECT-- 8--EXPECT--
9PHP Fatal error: [snuffleupagus][config] You forgot to close a bracket. in Unknown on line 0 9PHP Fatal error: [snuffleupagus][0.0.0.0][config] You forgot to close a bracket. in Unknown on line 0
10PHP Fatal error: [snuffleupagus][config] Invalid value '_SERVER[PHP_SELF' for `var` on line 1 in Unknown on line 0 10PHP Fatal error: [snuffleupagus][0.0.0.0][config] Invalid value '_SERVER[PHP_SELF' for `var` on line 1 in Unknown on line 0
11 11
12Fatal error: [snuffleupagus][config] You forgot to close a bracket. in Unknown on line 0 12Fatal error: [snuffleupagus][0.0.0.0][config] You forgot to close a bracket. in Unknown on line 0
13 13
14Fatal error: [snuffleupagus][config] Invalid value '_SERVER[PHP_SELF' for `var` on line 1 in Unknown on line 0 14Fatal error: [snuffleupagus][0.0.0.0][config] Invalid value '_SERVER[PHP_SELF' for `var` on line 1 in Unknown on line 0
15 15
16Fatal error: [snuffleupagus][config] Invalid configuration file in Unknown on line 0 16Fatal error: [snuffleupagus][0.0.0.0][config] Invalid configuration file in Unknown on line 0
17Could not startup. \ No newline at end of file 17Could not startup. \ No newline at end of file
diff --git a/src/tests/broken_configuration/broken_conf_readonly_exec.phpt b/src/tests/broken_configuration/broken_conf_readonly_exec.phpt
index cc5758f..ca92aab 100644
--- a/src/tests/broken_configuration/broken_conf_readonly_exec.phpt
+++ b/src/tests/broken_configuration/broken_conf_readonly_exec.phpt
@@ -8,9 +8,9 @@ sp.configuration_file={PWD}/config/broken_conf_readonly_exec.ini
8echo 1; 8echo 1;
9?> 9?>
10--EXPECTF-- 10--EXPECTF--
11PHP Fatal error: [snuffleupagus][config] Trailing chars '234);' at the end of '.enable(1234);' on line 1 in Unknown on line 0 11PHP Fatal error: [snuffleupagus][0.0.0.0][config] Trailing chars '234);' at the end of '.enable(1234);' on line 1 in Unknown on line 0
12 12
13Fatal error: [snuffleupagus][config] Trailing chars '234);' at the end of '.enable(1234);' on line 1 in Unknown on line 0 13Fatal error: [snuffleupagus][0.0.0.0][config] Trailing chars '234);' at the end of '.enable(1234);' on line 1 in Unknown on line 0
14 14
15Fatal error: [snuffleupagus][config] Invalid configuration file in Unknown on line 0 15Fatal error: [snuffleupagus][0.0.0.0][config] Invalid configuration file in Unknown on line 0
16Could not startup. 16Could not startup.
diff --git a/src/tests/broken_configuration/broken_conf_samesite.phpt b/src/tests/broken_configuration/broken_conf_samesite.phpt
index 99965d4..f325891 100644
--- a/src/tests/broken_configuration/broken_conf_samesite.phpt
+++ b/src/tests/broken_configuration/broken_conf_samesite.phpt
@@ -6,9 +6,9 @@ Bad config, invalid samesite type.
6sp.configuration_file={PWD}/config/broken_conf_cookie_samesite.ini 6sp.configuration_file={PWD}/config/broken_conf_cookie_samesite.ini
7--FILE-- 7--FILE--
8--EXPECT-- 8--EXPECT--
9PHP Fatal error: [snuffleupagus][config] nop is an invalid value to samesite (expected Lax or Strict) on line 1 in Unknown on line 0 9PHP Fatal error: [snuffleupagus][0.0.0.0][config] nop is an invalid value to samesite (expected Lax or Strict) on line 1 in Unknown on line 0
10 10
11Fatal error: [snuffleupagus][config] nop is an invalid value to samesite (expected Lax or Strict) on line 1 in Unknown on line 0 11Fatal error: [snuffleupagus][0.0.0.0][config] nop is an invalid value to samesite (expected Lax or Strict) on line 1 in Unknown on line 0
12 12
13Fatal error: [snuffleupagus][config] Invalid configuration file in Unknown on line 0 13Fatal error: [snuffleupagus][0.0.0.0][config] Invalid configuration file in Unknown on line 0
14Could not startup. \ No newline at end of file 14Could not startup. \ No newline at end of file
diff --git a/src/tests/broken_configuration/broken_conf_session_encryption.phpt b/src/tests/broken_configuration/broken_conf_session_encryption.phpt
index b6a0ea7..a010bd1 100644
--- a/src/tests/broken_configuration/broken_conf_session_encryption.phpt
+++ b/src/tests/broken_configuration/broken_conf_session_encryption.phpt
@@ -6,9 +6,9 @@ Broken config, session encryption
6sp.configuration_file={PWD}/config/broken_conf_session_encryption.ini 6sp.configuration_file={PWD}/config/broken_conf_session_encryption.ini
7--FILE-- 7--FILE--
8--EXPECT-- 8--EXPECT--
9PHP Fatal error: [snuffleupagus][config] Trailing chars 'nvalid value :/);' at the end of '.encrypt(invalid value :/);' on line 1 in Unknown on line 0 9PHP Fatal error: [snuffleupagus][0.0.0.0][config] Trailing chars 'nvalid value :/);' at the end of '.encrypt(invalid value :/);' on line 1 in Unknown on line 0
10 10
11Fatal error: [snuffleupagus][config] Trailing chars 'nvalid value :/);' at the end of '.encrypt(invalid value :/);' on line 1 in Unknown on line 0 11Fatal error: [snuffleupagus][0.0.0.0][config] Trailing chars 'nvalid value :/);' at the end of '.encrypt(invalid value :/);' on line 1 in Unknown on line 0
12 12
13Fatal error: [snuffleupagus][config] Invalid configuration file in Unknown on line 0 13Fatal error: [snuffleupagus][0.0.0.0][config] Invalid configuration file in Unknown on line 0
14Could not startup. 14Could not startup.
diff --git a/src/tests/broken_configuration/broken_conf_session_encryption_without_encryption_key.phpt b/src/tests/broken_configuration/broken_conf_session_encryption_without_encryption_key.phpt
index c90a154..f958595 100644
--- a/src/tests/broken_configuration/broken_conf_session_encryption_without_encryption_key.phpt
+++ b/src/tests/broken_configuration/broken_conf_session_encryption_without_encryption_key.phpt
@@ -6,9 +6,9 @@ Broken configuration - encrypted session without encryption key
6sp.configuration_file={PWD}/config/broken_conf_session_encryption_without_encryption_key.ini 6sp.configuration_file={PWD}/config/broken_conf_session_encryption_without_encryption_key.ini
7--FILE-- 7--FILE--
8--EXPECT-- 8--EXPECT--
9PHP Fatal error: [snuffleupagus][config] You're trying to use the session cookie encryption feature on line 2 without having set the `.secret_key` option in`sp.global`: please set it first in Unknown on line 0 9PHP Fatal error: [snuffleupagus][0.0.0.0][config] You're trying to use the session cookie encryption feature on line 2 without having set the `.secret_key` option in`sp.global`: please set it first in Unknown on line 0
10 10
11Fatal error: [snuffleupagus][config] You're trying to use the session cookie encryption feature on line 2 without having set the `.secret_key` option in`sp.global`: please set it first in Unknown on line 0 11Fatal error: [snuffleupagus][0.0.0.0][config] You're trying to use the session cookie encryption feature on line 2 without having set the `.secret_key` option in`sp.global`: please set it first in Unknown on line 0
12 12
13Fatal error: [snuffleupagus][config] Invalid configuration file in Unknown on line 0 13Fatal error: [snuffleupagus][0.0.0.0][config] Invalid configuration file in Unknown on line 0
14Could not startup. 14Could not startup.
diff --git a/src/tests/broken_configuration/broken_conf_session_encryption_without_env_var.phpt b/src/tests/broken_configuration/broken_conf_session_encryption_without_env_var.phpt
index c2654e4..0f6f744 100644
--- a/src/tests/broken_configuration/broken_conf_session_encryption_without_env_var.phpt
+++ b/src/tests/broken_configuration/broken_conf_session_encryption_without_env_var.phpt
@@ -6,9 +6,9 @@ Broken configuration - encrypted session without env var
6sp.configuration_file={PWD}/config/broken_conf_session_encryption_without_env_var.ini 6sp.configuration_file={PWD}/config/broken_conf_session_encryption_without_env_var.ini
7--FILE-- 7--FILE--
8--EXPECT-- 8--EXPECT--
9PHP Fatal error: [snuffleupagus][config] You're trying to use the session cookie encryption feature on line 2 without having set the `.cookie_env_var` option in`sp.global`: please set it first in Unknown on line 0 9PHP Fatal error: [snuffleupagus][0.0.0.0][config] You're trying to use the session cookie encryption feature on line 2 without having set the `.cookie_env_var` option in`sp.global`: please set it first in Unknown on line 0
10 10
11Fatal error: [snuffleupagus][config] You're trying to use the session cookie encryption feature on line 2 without having set the `.cookie_env_var` option in`sp.global`: please set it first in Unknown on line 0 11Fatal error: [snuffleupagus][0.0.0.0][config] You're trying to use the session cookie encryption feature on line 2 without having set the `.cookie_env_var` option in`sp.global`: please set it first in Unknown on line 0
12 12
13Fatal error: [snuffleupagus][config] Invalid configuration file in Unknown on line 0 13Fatal error: [snuffleupagus][0.0.0.0][config] Invalid configuration file in Unknown on line 0
14Could not startup. 14Could not startup.
diff --git a/src/tests/broken_configuration/broken_conf_shown_in_phpinfo.phpt b/src/tests/broken_configuration/broken_conf_shown_in_phpinfo.phpt
index eb7eae6..c5c26c0 100644
--- a/src/tests/broken_configuration/broken_conf_shown_in_phpinfo.phpt
+++ b/src/tests/broken_configuration/broken_conf_shown_in_phpinfo.phpt
@@ -17,12 +17,12 @@ if (strstr($info, 'Valid config => no') !== FALSE) {
17} 17}
18?> 18?>
19--EXPECTF-- 19--EXPECTF--
20PHP Fatal error: [snuffleupagus][config] Failed to compile '*.': %s on line 1. in Unknown on line 0 20PHP Fatal error: [snuffleupagus][0.0.0.0][config] Failed to compile '*.': %s on line 1. in Unknown on line 0
21PHP Fatal error: [snuffleupagus][config] '.filename_r()' is expecting a valid regexp, and not '"*."' on line 1 in Unknown on line 0 21PHP Fatal error: [snuffleupagus][0.0.0.0][config] '.filename_r()' is expecting a valid regexp, and not '"*."' on line 1 in Unknown on line 0
22 22
23Fatal error: [snuffleupagus][config] Failed to compile '*.': %s on line 1. in Unknown on line 0 23Fatal error: [snuffleupagus][0.0.0.0][config] Failed to compile '*.': %s on line 1. in Unknown on line 0
24 24
25Fatal error: [snuffleupagus][config] '.filename_r()' is expecting a valid regexp, and not '"*."' on line 1 in Unknown on line 0 25Fatal error: [snuffleupagus][0.0.0.0][config] '.filename_r()' is expecting a valid regexp, and not '"*."' on line 1 in Unknown on line 0
26 26
27Fatal error: [snuffleupagus][config] Invalid configuration file in Unknown on line 0 27Fatal error: [snuffleupagus][0.0.0.0][config] Invalid configuration file in Unknown on line 0
28Could not startup. 28Could not startup.
diff --git a/src/tests/broken_configuration/broken_conf_truncated.phpt b/src/tests/broken_configuration/broken_conf_truncated.phpt
index f0c5887..ac0cbb3 100644
--- a/src/tests/broken_configuration/broken_conf_truncated.phpt
+++ b/src/tests/broken_configuration/broken_conf_truncated.phpt
@@ -6,9 +6,9 @@ Bad boolean value in configuration
6sp.configuration_file={PWD}/config/config_broken_conf_truncated.ini 6sp.configuration_file={PWD}/config/config_broken_conf_truncated.ini
7--FILE-- 7--FILE--
8--EXPECT-- 8--EXPECT--
9PHP Fatal error: [snuffleupagus][error] A valid string as parameter is expected on line 1 in Unknown on line 0 9PHP Fatal error: [snuffleupagus][0.0.0.0][error] A valid string as parameter is expected on line 1 in Unknown on line 0
10 10
11Fatal error: [snuffleupagus][error] A valid string as parameter is expected on line 1 in Unknown on line 0 11Fatal error: [snuffleupagus][0.0.0.0][error] A valid string as parameter is expected on line 1 in Unknown on line 0
12 12
13Fatal error: [snuffleupagus][config] Invalid configuration file in Unknown on line 0 13Fatal error: [snuffleupagus][0.0.0.0][config] Invalid configuration file in Unknown on line 0
14Could not startup. \ No newline at end of file 14Could not startup. \ No newline at end of file
diff --git a/src/tests/broken_configuration/broken_conf_unserialize.phpt b/src/tests/broken_configuration/broken_conf_unserialize.phpt
index d7a924a..b1c26a3 100644
--- a/src/tests/broken_configuration/broken_conf_unserialize.phpt
+++ b/src/tests/broken_configuration/broken_conf_unserialize.phpt
@@ -8,9 +8,9 @@ sp.configuration_file={PWD}/config/broken_conf_unserialize.ini
8echo 1; 8echo 1;
9?> 9?>
10--EXPECTF-- 10--EXPECTF--
11PHP Fatal error: [snuffleupagus][config] Trailing chars '234);' at the end of '.enable(1234);' on line 1 in Unknown on line 0 11PHP Fatal error: [snuffleupagus][0.0.0.0][config] Trailing chars '234);' at the end of '.enable(1234);' on line 1 in Unknown on line 0
12 12
13Fatal error: [snuffleupagus][config] Trailing chars '234);' at the end of '.enable(1234);' on line 1 in Unknown on line 0 13Fatal error: [snuffleupagus][0.0.0.0][config] Trailing chars '234);' at the end of '.enable(1234);' on line 1 in Unknown on line 0
14 14
15Fatal error: [snuffleupagus][config] Invalid configuration file in Unknown on line 0 15Fatal error: [snuffleupagus][0.0.0.0][config] Invalid configuration file in Unknown on line 0
16Could not startup. 16Could not startup.
diff --git a/src/tests/broken_configuration/broken_conf_upload_validation.phpt b/src/tests/broken_configuration/broken_conf_upload_validation.phpt
index 332a649..47a2dd0 100644
--- a/src/tests/broken_configuration/broken_conf_upload_validation.phpt
+++ b/src/tests/broken_configuration/broken_conf_upload_validation.phpt
@@ -8,9 +8,9 @@ sp.configuration_file={PWD}/config/borken_conf_upload_validation.ini
8echo 1; 8echo 1;
9?> 9?>
10--EXPECTF-- 10--EXPECTF--
11PHP Fatal error: [snuffleupagus][error] A valid string as parameter is expected on line 1 in Unknown on line 0 11PHP Fatal error: [snuffleupagus][0.0.0.0][error] A valid string as parameter is expected on line 1 in Unknown on line 0
12 12
13Fatal error: [snuffleupagus][error] A valid string as parameter is expected on line 1 in Unknown on line 0 13Fatal error: [snuffleupagus][0.0.0.0][error] A valid string as parameter is expected on line 1 in Unknown on line 0
14 14
15Fatal error: [snuffleupagus][config] Invalid configuration file in Unknown on line 0 15Fatal error: [snuffleupagus][0.0.0.0][config] Invalid configuration file in Unknown on line 0
16Could not startup. 16Could not startup.
diff --git a/src/tests/broken_configuration/broken_conf_weird_keyword.phpt b/src/tests/broken_configuration/broken_conf_weird_keyword.phpt
index e3c1239..e560c21 100644
--- a/src/tests/broken_configuration/broken_conf_weird_keyword.phpt
+++ b/src/tests/broken_configuration/broken_conf_weird_keyword.phpt
@@ -6,9 +6,9 @@ Bad config, unknown keyword
6sp.configuration_file={PWD}/config/broken_conf_weird_keyword.ini 6sp.configuration_file={PWD}/config/broken_conf_weird_keyword.ini
7--FILE-- 7--FILE--
8--EXPECT-- 8--EXPECT--
9PHP Fatal error: [snuffleupagus][config] Trailing chars '.not_a_valid_keyword("test");' at the end of '.enable().not_a_valid_keyword("test");' on line 1 in Unknown on line 0 9PHP Fatal error: [snuffleupagus][0.0.0.0][config] Trailing chars '.not_a_valid_keyword("test");' at the end of '.enable().not_a_valid_keyword("test");' on line 1 in Unknown on line 0
10 10
11Fatal error: [snuffleupagus][config] Trailing chars '.not_a_valid_keyword("test");' at the end of '.enable().not_a_valid_keyword("test");' on line 1 in Unknown on line 0 11Fatal error: [snuffleupagus][0.0.0.0][config] Trailing chars '.not_a_valid_keyword("test");' at the end of '.enable().not_a_valid_keyword("test");' on line 1 in Unknown on line 0
12 12
13Fatal error: [snuffleupagus][config] Invalid configuration file in Unknown on line 0 13Fatal error: [snuffleupagus][0.0.0.0][config] Invalid configuration file in Unknown on line 0
14Could not startup. \ No newline at end of file 14Could not startup. \ No newline at end of file
diff --git a/src/tests/broken_configuration/broken_conf_wrapper_whitelist.phpt b/src/tests/broken_configuration/broken_conf_wrapper_whitelist.phpt
index ea147ac..d0b7427 100644
--- a/src/tests/broken_configuration/broken_conf_wrapper_whitelist.phpt
+++ b/src/tests/broken_configuration/broken_conf_wrapper_whitelist.phpt
@@ -10,9 +10,9 @@ sp.allow_broken_configuration=Off
10echo 1337; 10echo 1337;
11?> 11?>
12--EXPECT-- 12--EXPECT--
13PHP Fatal error: [snuffleupagus][config] Trailing chars '.invalid_param();' at the end of '.invalid_param();' on line 1 in Unknown on line 0 13PHP Fatal error: [snuffleupagus][0.0.0.0][config] Trailing chars '.invalid_param();' at the end of '.invalid_param();' on line 1 in Unknown on line 0
14 14
15Fatal error: [snuffleupagus][config] Trailing chars '.invalid_param();' at the end of '.invalid_param();' on line 1 in Unknown on line 0 15Fatal error: [snuffleupagus][0.0.0.0][config] Trailing chars '.invalid_param();' at the end of '.invalid_param();' on line 1 in Unknown on line 0
16 16
17Fatal error: [snuffleupagus][config] Invalid configuration file in Unknown on line 0 17Fatal error: [snuffleupagus][0.0.0.0][config] Invalid configuration file in Unknown on line 0
18Could not startup. 18Could not startup.
diff --git a/src/tests/broken_configuration/broken_conf_wrong_quotes.phpt b/src/tests/broken_configuration/broken_conf_wrong_quotes.phpt
index 119bbe7..52ea8d7 100644
--- a/src/tests/broken_configuration/broken_conf_wrong_quotes.phpt
+++ b/src/tests/broken_configuration/broken_conf_wrong_quotes.phpt
@@ -6,9 +6,9 @@ Configuration line with too many quotes
6sp.configuration_file={PWD}/config/broken_conf_wrong_quotes.ini 6sp.configuration_file={PWD}/config/broken_conf_wrong_quotes.ini
7--FILE-- 7--FILE--
8--EXPECT-- 8--EXPECT--
9PHP Fatal error: [snuffleupagus][error] There is an issue with the parsing of '"\)': it doesn't look like a valid string on line 1 in Unknown on line 0 9PHP Fatal error: [snuffleupagus][0.0.0.0][error] There is an issue with the parsing of '"\)': it doesn't look like a valid string on line 1 in Unknown on line 0
10 10
11Fatal error: [snuffleupagus][error] There is an issue with the parsing of '"\)': it doesn't look like a valid string on line 1 in Unknown on line 0 11Fatal error: [snuffleupagus][0.0.0.0][error] There is an issue with the parsing of '"\)': it doesn't look like a valid string on line 1 in Unknown on line 0
12 12
13Fatal error: [snuffleupagus][config] Invalid configuration file in Unknown on line 0 13Fatal error: [snuffleupagus][0.0.0.0][config] Invalid configuration file in Unknown on line 0
14Could not startup. \ No newline at end of file 14Could not startup. \ No newline at end of file
diff --git a/src/tests/broken_configuration/broken_conf_wrong_type.phpt b/src/tests/broken_configuration/broken_conf_wrong_type.phpt
index b90d6ff..60dde56 100644
--- a/src/tests/broken_configuration/broken_conf_wrong_type.phpt
+++ b/src/tests/broken_configuration/broken_conf_wrong_type.phpt
@@ -6,9 +6,9 @@ Broken conf with wrong type
6sp.configuration_file={PWD}/config/broken_conf_wrong_type.ini 6sp.configuration_file={PWD}/config/broken_conf_wrong_type.ini
7--FILE-- 7--FILE--
8--EXPECTF-- 8--EXPECTF--
9PHP Fatal error: [snuffleupagus][error] .ret_type() is expecting a valid php type ('false', 'true', 'array'. 'object', 'long', 'double', 'null', 'resource', 'reference', 'undef') on line 5 in Unknown on line 0 9PHP Fatal error: [snuffleupagus][0.0.0.0][error] .ret_type() is expecting a valid php type ('false', 'true', 'array'. 'object', 'long', 'double', 'null', 'resource', 'reference', 'undef') on line 5 in Unknown on line 0
10 10
11Fatal error: [snuffleupagus][error] .ret_type() is expecting a valid php type ('false', 'true', 'array'. 'object', 'long', 'double', 'null', 'resource', 'reference', 'undef') on line 5 in Unknown on line 0 11Fatal error: [snuffleupagus][0.0.0.0][error] .ret_type() is expecting a valid php type ('false', 'true', 'array'. 'object', 'long', 'double', 'null', 'resource', 'reference', 'undef') on line 5 in Unknown on line 0
12 12
13Fatal error: [snuffleupagus][config] Invalid configuration file in Unknown on line 0 13Fatal error: [snuffleupagus][0.0.0.0][config] Invalid configuration file in Unknown on line 0
14Could not startup. \ No newline at end of file 14Could not startup. \ No newline at end of file
diff --git a/src/tests/broken_configuration/broken_invalid_client_ip4.phpt b/src/tests/broken_configuration/broken_invalid_client_ip4.phpt
index e8a5260..8e445e7 100644
--- a/src/tests/broken_configuration/broken_invalid_client_ip4.phpt
+++ b/src/tests/broken_configuration/broken_invalid_client_ip4.phpt
@@ -13,4 +13,4 @@ sp.configuration_file={PWD}/config/disabled_functions_cidr.ini
13strpos("1337", "1"); 13strpos("1337", "1");
14?> 14?>
15--EXPECTF-- 15--EXPECTF--
16Fatal error: [snuffleupagus][cidr_match] Weird ip (xyz) family in %a/broken_invalid_client_ip4.php on line 2 \ No newline at end of file 16Fatal error: [snuffleupagus][xyz][cidr_match] Weird ip (xyz) family in %a/broken_invalid_client_ip4.php on line 2 \ No newline at end of file
diff --git a/src/tests/broken_configuration/broken_regexp.phpt b/src/tests/broken_configuration/broken_regexp.phpt
index 2fc130d..28d803e 100644
--- a/src/tests/broken_configuration/broken_regexp.phpt
+++ b/src/tests/broken_configuration/broken_regexp.phpt
@@ -6,12 +6,12 @@ Broken regexp
6sp.configuration_file={PWD}/config/broken_regexp.ini 6sp.configuration_file={PWD}/config/broken_regexp.ini
7--FILE-- 7--FILE--
8--EXPECTF-- 8--EXPECTF--
9PHP Fatal error: [snuffleupagus][config] Failed to compile '^$[': missing terminating ] for character class on line 1. in Unknown on line 0 9PHP Fatal error: [snuffleupagus][0.0.0.0][config] Failed to compile '^$[': missing terminating ] for character class on line 1. in Unknown on line 0
10PHP Fatal error: [snuffleupagus][config] '.value_r()' is expecting a valid regexp, and not '"^$["' on line 1 in Unknown on line 0 10PHP Fatal error: [snuffleupagus][0.0.0.0][config] '.value_r()' is expecting a valid regexp, and not '"^$["' on line 1 in Unknown on line 0
11 11
12Fatal error: [snuffleupagus][config] Failed to compile '^$[': missing terminating ] for character class on line 1. in Unknown on line 0 12Fatal error: [snuffleupagus][0.0.0.0][config] Failed to compile '^$[': missing terminating ] for character class on line 1. in Unknown on line 0
13 13
14Fatal error: [snuffleupagus][config] '.value_r()' is expecting a valid regexp, and not '"^$["' on line 1 in Unknown on line 0 14Fatal error: [snuffleupagus][0.0.0.0][config] '.value_r()' is expecting a valid regexp, and not '"^$["' on line 1 in Unknown on line 0
15 15
16Fatal error: [snuffleupagus][config] Invalid configuration file in Unknown on line 0 16Fatal error: [snuffleupagus][0.0.0.0][config] Invalid configuration file in Unknown on line 0
17Could not startup. \ No newline at end of file 17Could not startup. \ No newline at end of file
diff --git a/src/tests/broken_configuration/broken_unmatching_brackets.phpt b/src/tests/broken_configuration/broken_unmatching_brackets.phpt
index 33eaaa7..6c63303 100644
--- a/src/tests/broken_configuration/broken_unmatching_brackets.phpt
+++ b/src/tests/broken_configuration/broken_unmatching_brackets.phpt
@@ -6,12 +6,12 @@ Broken configuration - unmatching brackets
6sp.configuration_file={PWD}/config/config_unmatching_brackets.ini 6sp.configuration_file={PWD}/config/config_unmatching_brackets.ini
7--FILE-- 7--FILE--
8--EXPECTF-- 8--EXPECTF--
9PHP Fatal error: [snuffleupagus][config] Invalid `]` position. in Unknown on line 0 9PHP Fatal error: [snuffleupagus][0.0.0.0][config] Invalid `]` position. in Unknown on line 0
10PHP Fatal error: [snuffleupagus][config] Invalid value 'arr[b]]]]]' for `param` on line 1 in Unknown on line 0 10PHP Fatal error: [snuffleupagus][0.0.0.0][config] Invalid value 'arr[b]]]]]' for `param` on line 1 in Unknown on line 0
11 11
12Fatal error: [snuffleupagus][config] Invalid `]` position. in Unknown on line 0 12Fatal error: [snuffleupagus][0.0.0.0][config] Invalid `]` position. in Unknown on line 0
13 13
14Fatal error: [snuffleupagus][config] Invalid value 'arr[b]]]]]' for `param` on line 1 in Unknown on line 0 14Fatal error: [snuffleupagus][0.0.0.0][config] Invalid value 'arr[b]]]]]' for `param` on line 1 in Unknown on line 0
15 15
16Fatal error: [snuffleupagus][config] Invalid configuration file in Unknown on line 0 16Fatal error: [snuffleupagus][0.0.0.0][config] Invalid configuration file in Unknown on line 0
17Could not startup. \ No newline at end of file 17Could not startup. \ No newline at end of file
diff --git a/src/tests/broken_configuration/config/broken_conf_invalid_log_media.ini b/src/tests/broken_configuration/config/broken_conf_invalid_log_media.ini
new file mode 100644
index 0000000..9e7cea0
--- /dev/null
+++ b/src/tests/broken_configuration/config/broken_conf_invalid_log_media.ini
@@ -0,0 +1 @@
sp.log_media("pouet");
diff --git a/src/tests/broken_configuration/encrypt_regexp_cookies_bad_regexp.phpt b/src/tests/broken_configuration/encrypt_regexp_cookies_bad_regexp.phpt
index 8272148..c0fe5e4 100644
--- a/src/tests/broken_configuration/encrypt_regexp_cookies_bad_regexp.phpt
+++ b/src/tests/broken_configuration/encrypt_regexp_cookies_bad_regexp.phpt
@@ -15,8 +15,8 @@ EOF;
15--FILE-- 15--FILE--
16<?php var_dump($_COOKIE); ?> 16<?php var_dump($_COOKIE); ?>
17--EXPECT-- 17--EXPECT--
18Fatal error: [snuffleupagus][config] Invalid configuration file in Unknown on line 0 18Fatal error: [snuffleupagus][127.0.0.1][config] Invalid configuration file in Unknown on line 0
19 19
20Fatal error: [snuffleupagus][config] Failed to compile '^super_co[a-z+$': missing terminating ] for character class on line 2. in Unknown on line 0 20Fatal error: [snuffleupagus][127.0.0.1][config] Failed to compile '^super_co[a-z+$': missing terminating ] for character class on line 2. in Unknown on line 0
21 21
22Fatal error: [snuffleupagus][config] '.name_r()' is expecting a valid regexp, and not '"^super_co[a-z+$"' on line 2 in Unknown on line 0 22Fatal error: [snuffleupagus][127.0.0.1][config] '.name_r()' is expecting a valid regexp, and not '"^super_co[a-z+$"' on line 2 in Unknown on line 0
diff --git a/src/tests/cookies_encryption/encrypt_cookies_empty_env.phpt b/src/tests/cookies_encryption/encrypt_cookies_empty_env.phpt
index 23f1759..721806a 100644
--- a/src/tests/cookies_encryption/encrypt_cookies_empty_env.phpt
+++ b/src/tests/cookies_encryption/encrypt_cookies_empty_env.phpt
@@ -12,7 +12,7 @@ super_cookie=cGFkZGluZ3BhZGRpbmdwYWRkaW5ncGFkZGluZ3BhZGRpbmdwYWRkaW5ncGFkZGluZ3B
12--FILE-- 12--FILE--
13<?php echo "1\n\n\n\n\n"; ?> 13<?php echo "1\n\n\n\n\n"; ?>
14--EXPECT-- 14--EXPECT--
15Warning: [snuffleupagus][cookie_encryption] The environment variable 'SUPER_ENV_VAR' is empty, cookies are weakly encrypted in Unknown on line 0 15Warning: [snuffleupagus][0.0.0.0][cookie_encryption] The environment variable 'SUPER_ENV_VAR' is empty, cookies are weakly encrypted in Unknown on line 0
16 16
17Warning: [snuffleupagus][cookie_encryption] Something went wrong with the decryption of super_cookie in Unknown on line 0 17Warning: [snuffleupagus][0.0.0.0][cookie_encryption] Something went wrong with the decryption of super_cookie in Unknown on line 0
181 181
diff --git a/src/tests/cookies_encryption/encrypt_cookies_invalid_decryption.phpt b/src/tests/cookies_encryption/encrypt_cookies_invalid_decryption.phpt
index d4a0b0f..e2190b3 100644
--- a/src/tests/cookies_encryption/encrypt_cookies_invalid_decryption.phpt
+++ b/src/tests/cookies_encryption/encrypt_cookies_invalid_decryption.phpt
@@ -18,7 +18,7 @@ EOF;
18echo "1337\n"; 18echo "1337\n";
19var_dump($_COOKIE); ?> 19var_dump($_COOKIE); ?>
20--EXPECT-- 20--EXPECT--
21Warning: [snuffleupagus][cookie_encryption] Something went wrong with the decryption of super_cookie in Unknown on line 0 21Warning: [snuffleupagus][127.0.0.1][cookie_encryption] Something went wrong with the decryption of super_cookie in Unknown on line 0
221337 221337
23array(1) { 23array(1) {
24 ["awfulcookie"]=> 24 ["awfulcookie"]=>
diff --git a/src/tests/cookies_encryption/encrypt_cookies_invalid_decryption2.phpt b/src/tests/cookies_encryption/encrypt_cookies_invalid_decryption2.phpt
index b3a55dd..3efe051 100644
--- a/src/tests/cookies_encryption/encrypt_cookies_invalid_decryption2.phpt
+++ b/src/tests/cookies_encryption/encrypt_cookies_invalid_decryption2.phpt
@@ -16,4 +16,4 @@ EOF;
16--FILE-- 16--FILE--
17<?php var_dump($_COOKIE); ?> 17<?php var_dump($_COOKIE); ?>
18--EXPECT-- 18--EXPECT--
19Fatal error: [snuffleupagus][cookie_encryption] Buffer underflow tentative detected in cookie encryption handling in Unknown on line 0 \ No newline at end of file 19Fatal error: [snuffleupagus][127.0.0.1][cookie_encryption] Buffer underflow tentative detected in cookie encryption handling in Unknown on line 0 \ No newline at end of file
diff --git a/src/tests/cookies_encryption/encrypt_cookies_invalid_decryption_short_cookie.phpt b/src/tests/cookies_encryption/encrypt_cookies_invalid_decryption_short_cookie.phpt
index 39f189c..5c99dfc 100644
--- a/src/tests/cookies_encryption/encrypt_cookies_invalid_decryption_short_cookie.phpt
+++ b/src/tests/cookies_encryption/encrypt_cookies_invalid_decryption_short_cookie.phpt
@@ -16,7 +16,7 @@ EOF;
16--FILE-- 16--FILE--
17<?php var_dump($_COOKIE); ?> 17<?php var_dump($_COOKIE); ?>
18--EXPECT-- 18--EXPECT--
19Warning: [snuffleupagus][cookie_encryption] Buffer underflow tentative detected in cookie encryption handling for super_cookie. Using the cookie 'as it' instead of decrypting it in Unknown on line 0 19Warning: [snuffleupagus][127.0.0.1][cookie_encryption] Buffer underflow tentative detected in cookie encryption handling for super_cookie. Using the cookie 'as it' instead of decrypting it in Unknown on line 0
20array(2) { 20array(2) {
21 ["super_cookie"]=> 21 ["super_cookie"]=>
22 string(3) "AAA" 22 string(3) "AAA"
diff --git a/src/tests/cookies_encryption/encrypt_cookies_invalid_decryption_simulation.phpt b/src/tests/cookies_encryption/encrypt_cookies_invalid_decryption_simulation.phpt
index d2004b9..29adcf4 100644
--- a/src/tests/cookies_encryption/encrypt_cookies_invalid_decryption_simulation.phpt
+++ b/src/tests/cookies_encryption/encrypt_cookies_invalid_decryption_simulation.phpt
@@ -18,7 +18,7 @@ EOF;
18echo "1337\n"; 18echo "1337\n";
19var_dump($_COOKIE); ?> 19var_dump($_COOKIE); ?>
20--EXPECT-- 20--EXPECT--
21Warning: [snuffleupagus][cookie_encryption] Something went wrong with the decryption of super_cookie. Using the cookie 'as it' instead of decrypting it in Unknown on line 0 21Warning: [snuffleupagus][127.0.0.1][cookie_encryption] Something went wrong with the decryption of super_cookie. Using the cookie 'as it' instead of decrypting it in Unknown on line 0
221337 221337
23array(2) { 23array(2) {
24 ["super_cookie"]=> 24 ["super_cookie"]=>
diff --git a/src/tests/cookies_encryption/encrypt_regexp_cookies_empty_env.phpt b/src/tests/cookies_encryption/encrypt_regexp_cookies_empty_env.phpt
index 852c32e..7bd2fcc 100644
--- a/src/tests/cookies_encryption/encrypt_regexp_cookies_empty_env.phpt
+++ b/src/tests/cookies_encryption/encrypt_regexp_cookies_empty_env.phpt
@@ -16,4 +16,4 @@ EOF;
16--FILE-- 16--FILE--
17<?php echo "1\n\n\n\n\n"; ?> 17<?php echo "1\n\n\n\n\n"; ?>
18--EXPECT-- 18--EXPECT--
19Fatal error: [snuffleupagus][cookie_encryption] Buffer underflow tentative detected in cookie encryption handling in Unknown on line 0 \ No newline at end of file 19Fatal error: [snuffleupagus][0.0.0.0][cookie_encryption] Buffer underflow tentative detected in cookie encryption handling in Unknown on line 0 \ No newline at end of file
diff --git a/src/tests/cookies_encryption/encrypt_regexp_cookies_invalid_decryption.phpt b/src/tests/cookies_encryption/encrypt_regexp_cookies_invalid_decryption.phpt
index d2f9e3c..a0729d4 100644
--- a/src/tests/cookies_encryption/encrypt_regexp_cookies_invalid_decryption.phpt
+++ b/src/tests/cookies_encryption/encrypt_regexp_cookies_invalid_decryption.phpt
@@ -16,7 +16,7 @@ EOF;
16--FILE-- 16--FILE--
17<?php var_dump($_COOKIE); ?> 17<?php var_dump($_COOKIE); ?>
18--EXPECT-- 18--EXPECT--
19Warning: [snuffleupagus][cookie_encryption] Something went wrong with the decryption of super_cookie in Unknown on line 0 19Warning: [snuffleupagus][127.0.0.1][cookie_encryption] Something went wrong with the decryption of super_cookie in Unknown on line 0
20array(1) { 20array(1) {
21 ["awful_cookie"]=> 21 ["awful_cookie"]=>
22 string(18) "awful_cookie_value" 22 string(18) "awful_cookie_value"
diff --git a/src/tests/cookies_encryption/encrypt_regexp_cookies_invalid_decryption2.phpt b/src/tests/cookies_encryption/encrypt_regexp_cookies_invalid_decryption2.phpt
index e75e036..11288e0 100644
--- a/src/tests/cookies_encryption/encrypt_regexp_cookies_invalid_decryption2.phpt
+++ b/src/tests/cookies_encryption/encrypt_regexp_cookies_invalid_decryption2.phpt
@@ -16,4 +16,4 @@ EOF;
16--FILE-- 16--FILE--
17<?php var_dump($_COOKIE); ?> 17<?php var_dump($_COOKIE); ?>
18--EXPECT-- 18--EXPECT--
19Fatal error: [snuffleupagus][cookie_encryption] Buffer underflow tentative detected in cookie encryption handling in Unknown on line 0 \ No newline at end of file 19Fatal error: [snuffleupagus][127.0.0.1][cookie_encryption] Buffer underflow tentative detected in cookie encryption handling in Unknown on line 0 \ No newline at end of file
diff --git a/src/tests/cookies_encryption_warning/encrypt_cookies_no_env.phpt b/src/tests/cookies_encryption_warning/encrypt_cookies_no_env.phpt
index d9d9138..f1ebf2f 100644
--- a/src/tests/cookies_encryption_warning/encrypt_cookies_no_env.phpt
+++ b/src/tests/cookies_encryption_warning/encrypt_cookies_no_env.phpt
@@ -16,6 +16,6 @@ EOF;
16--FILE-- 16--FILE--
17<?php echo "1"; ?> 17<?php echo "1"; ?>
18--EXPECT-- 18--EXPECT--
19Fatal error: [snuffleupagus][config] Invalid configuration file in Unknown on line 0 19Fatal error: [snuffleupagus][127.0.0.1][config] Invalid configuration file in Unknown on line 0
20 20
21Fatal error: [snuffleupagus][config] You're trying to use the cookie encryption featureon line 2 without having set the `.cookie_env_var` option in`sp.global`: please set it first in Unknown on line 0 21Fatal error: [snuffleupagus][127.0.0.1][config] You're trying to use the cookie encryption featureon line 2 without having set the `.cookie_env_var` option in`sp.global`: please set it first in Unknown on line 0
diff --git a/src/tests/cookies_encryption_warning/encrypt_cookies_no_key.phpt b/src/tests/cookies_encryption_warning/encrypt_cookies_no_key.phpt
index 3eb726e..d24446b 100644
--- a/src/tests/cookies_encryption_warning/encrypt_cookies_no_key.phpt
+++ b/src/tests/cookies_encryption_warning/encrypt_cookies_no_key.phpt
@@ -16,6 +16,6 @@ EOF;
16--FILE-- 16--FILE--
17<?php echo "1"; ?> 17<?php echo "1"; ?>
18--EXPECT-- 18--EXPECT--
19Fatal error: [snuffleupagus][config] Invalid configuration file in Unknown on line 0 19Fatal error: [snuffleupagus][127.0.0.1][config] Invalid configuration file in Unknown on line 0
20 20
21Fatal error: [snuffleupagus][config] You're trying to use the cookie encryption featureon line 2 without having set the `.encryption_key` option in`sp.global`: please set it first in Unknown on line 0 21Fatal error: [snuffleupagus][127.0.0.1][config] You're trying to use the cookie encryption featureon line 2 without having set the `.encryption_key` option in`sp.global`: please set it first in Unknown on line 0
diff --git a/src/tests/cookies_encryption_warning/encrypt_regexp_cookies_no_env.phpt b/src/tests/cookies_encryption_warning/encrypt_regexp_cookies_no_env.phpt
index 0c0dea5..995ac4f 100644
--- a/src/tests/cookies_encryption_warning/encrypt_regexp_cookies_no_env.phpt
+++ b/src/tests/cookies_encryption_warning/encrypt_regexp_cookies_no_env.phpt
@@ -16,6 +16,6 @@ EOF;
16--FILE-- 16--FILE--
17<?php echo "1"; ?> 17<?php echo "1"; ?>
18--EXPECT-- 18--EXPECT--
19Fatal error: [snuffleupagus][config] Invalid configuration file in Unknown on line 0 19Fatal error: [snuffleupagus][127.0.0.1][config] Invalid configuration file in Unknown on line 0
20 20
21Fatal error: [snuffleupagus][config] You're trying to use the cookie encryption featureon line 2 without having set the `.cookie_env_var` option in`sp.global`: please set it first in Unknown on line 0 21Fatal error: [snuffleupagus][127.0.0.1][config] You're trying to use the cookie encryption featureon line 2 without having set the `.cookie_env_var` option in`sp.global`: please set it first in Unknown on line 0
diff --git a/src/tests/cookies_encryption_warning/encrypt_regexp_cookies_no_key.phpt b/src/tests/cookies_encryption_warning/encrypt_regexp_cookies_no_key.phpt
index 1877dd6..ead651d 100644
--- a/src/tests/cookies_encryption_warning/encrypt_regexp_cookies_no_key.phpt
+++ b/src/tests/cookies_encryption_warning/encrypt_regexp_cookies_no_key.phpt
@@ -16,6 +16,6 @@ EOF;
16--FILE-- 16--FILE--
17<?php echo "1"; ?> 17<?php echo "1"; ?>
18--EXPECT-- 18--EXPECT--
19Fatal error: [snuffleupagus][config] Invalid configuration file in Unknown on line 0 19Fatal error: [snuffleupagus][127.0.0.1][config] Invalid configuration file in Unknown on line 0
20 20
21Fatal error: [snuffleupagus][config] You're trying to use the cookie encryption featureon line 2 without having set the `.encryption_key` option in`sp.global`: please set it first in Unknown on line 0 21Fatal error: [snuffleupagus][127.0.0.1][config] You're trying to use the cookie encryption featureon line 2 without having set the `.encryption_key` option in`sp.global`: please set it first in Unknown on line 0
diff --git a/src/tests/deny_writable/deny_writable_execution.phpt b/src/tests/deny_writable/deny_writable_execution.phpt
index 916328e..43d12c3 100644
--- a/src/tests/deny_writable/deny_writable_execution.phpt
+++ b/src/tests/deny_writable/deny_writable_execution.phpt
@@ -40,4 +40,4 @@ unlink("$dir/non_writable_file.txt");
40unlink("$dir/writable_file.txt"); 40unlink("$dir/writable_file.txt");
41?> 41?>
42--EXPECTF-- 42--EXPECTF--
43Fatal error: [snuffleupagus][readonly_exec] Attempted execution of a writable file (%a/deny_writable_execution.php). in %a/deny_writable_execution.php on line 2 43Fatal error: [snuffleupagus][0.0.0.0][readonly_exec] Attempted execution of a writable file (%a/deny_writable_execution.php). in %a/deny_writable_execution.php on line 2
diff --git a/src/tests/deny_writable/deny_writable_execution_simulation.phpt b/src/tests/deny_writable/deny_writable_execution_simulation.phpt
index 7fc0c63..b03bc8f 100644
--- a/src/tests/deny_writable/deny_writable_execution_simulation.phpt
+++ b/src/tests/deny_writable/deny_writable_execution_simulation.phpt
@@ -41,10 +41,10 @@ unlink("$dir/non_writable_file.txt");
41unlink("$dir/writable_file.txt"); 41unlink("$dir/writable_file.txt");
42?> 42?>
43--EXPECTF-- 43--EXPECTF--
44Warning: [snuffleupagus][readonly_exec] Attempted execution of a writable file (%a/deny_writable_execution_simulation.php). in %a/deny_writable_execution_simulation.php on line 2 44Warning: [snuffleupagus][0.0.0.0][readonly_exec] Attempted execution of a writable file (%a/deny_writable_execution_simulation.php). in %a/deny_writable_execution_simulation.php on line 2
45 45
46Warning: [snuffleupagus][readonly_exec] Attempted execution of a writable file (%a/writable_file.txt). in %a/deny_writable_execution_simulation.php on line 12 46Warning: [snuffleupagus][0.0.0.0][readonly_exec] Attempted execution of a writable file (%a/writable_file.txt). in %a/deny_writable_execution_simulation.php on line 12
47 47
48Warning: [snuffleupagus][readonly_exec] Attempted execution of a writable file (%a/writable_file.txt). in %a/writable_file.txt on line 1 48Warning: [snuffleupagus][0.0.0.0][readonly_exec] Attempted execution of a writable file (%a/writable_file.txt). in %a/writable_file.txt on line 1
49Code execution within a writable file. 49Code execution within a writable file.
50Code execution within a non-writable file. 50Code execution within a non-writable file.
diff --git a/src/tests/disable_function/disabled_function_echo.phpt b/src/tests/disable_function/disabled_function_echo.phpt
index 21e2002..5dbfe43 100644
--- a/src/tests/disable_function/disabled_function_echo.phpt
+++ b/src/tests/disable_function/disabled_function_echo.phpt
@@ -16,4 +16,4 @@ test("oops");
16--CLEAN-- 16--CLEAN--
17--EXPECTF-- 17--EXPECTF--
18qwerty 18qwerty
19Fatal error: [snuffleupagus][disabled_function] Aborted execution on call of the function 'echo' in %a/disabled_function_echo.php on line 3 \ No newline at end of file 19Fatal error: [snuffleupagus][0.0.0.0][disabled_function] Aborted execution on call of the function 'echo' in %a/disabled_function_echo.php on line 3 \ No newline at end of file
diff --git a/src/tests/disable_function/disabled_function_echo_2.phpt b/src/tests/disable_function/disabled_function_echo_2.phpt
index 66cace3..c317cf7 100644
--- a/src/tests/disable_function/disabled_function_echo_2.phpt
+++ b/src/tests/disable_function/disabled_function_echo_2.phpt
@@ -12,4 +12,4 @@ echo "1", "oops";
12--CLEAN-- 12--CLEAN--
13--EXPECTF-- 13--EXPECTF--
14qwe1 14qwe1
15Fatal error: [snuffleupagus][disabled_function] Aborted execution on call of the function 'echo' in %a/disabled_function_echo_2.php on line 3 \ No newline at end of file 15Fatal error: [snuffleupagus][0.0.0.0][disabled_function] Aborted execution on call of the function 'echo' in %a/disabled_function_echo_2.php on line 3 \ No newline at end of file
diff --git a/src/tests/disable_function/disabled_function_echo_local_var.phpt b/src/tests/disable_function/disabled_function_echo_local_var.phpt
index 300f38e..3bbb2a0 100644
--- a/src/tests/disable_function/disabled_function_echo_local_var.phpt
+++ b/src/tests/disable_function/disabled_function_echo_local_var.phpt
@@ -18,4 +18,4 @@ test();
18--EXPECTF-- 18--EXPECTF--
193 193
20 20
21Fatal error: [snuffleupagus][disabled_function] Aborted execution on call of the function 'echo' in %a/disabled_function_echo_local_var.php on line 3 \ No newline at end of file 21Fatal error: [snuffleupagus][0.0.0.0][disabled_function] Aborted execution on call of the function 'echo' in %a/disabled_function_echo_local_var.php on line 3 \ No newline at end of file
diff --git a/src/tests/disable_function/disabled_function_ensure_client_valid_certs.phpt b/src/tests/disable_function/disabled_function_ensure_client_valid_certs.phpt
index 513b650..dc53593 100644
--- a/src/tests/disable_function/disabled_function_ensure_client_valid_certs.phpt
+++ b/src/tests/disable_function/disabled_function_ensure_client_valid_certs.phpt
@@ -5,6 +5,8 @@ Disable functions - Ensure that client certificates validation can't be disabled
5if (!extension_loaded("snuffleupagus")) { die("skip"); } 5if (!extension_loaded("snuffleupagus")) { die("skip"); }
6if (!extension_loaded("curl")) { die("skip"); } 6if (!extension_loaded("curl")) { die("skip"); }
7?> 7?>
8--EXTENSIONS--
9curl
8--INI-- 10--INI--
9sp.configuration_file={PWD}/config/disabled_function_curl_verify_certs.ini 11sp.configuration_file={PWD}/config/disabled_function_curl_verify_certs.ini
10--FILE-- 12--FILE--
@@ -15,4 +17,4 @@ curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, '0');
15echo "1337"; 17echo "1337";
16?> 18?>
17--EXPECTF-- 19--EXPECTF--
18Fatal error: [snuffleupagus][disabled_function] Aborted execution on call of the function 'curl_setopt', because its argument '$option' content (64) matched the rule 'Please don't turn CURLOPT_SSL_VERIFYPEER off.' in %s/disabled_function_ensure_client_valid_certs.php on line %d 20Fatal error: [snuffleupagus][0.0.0.0][disabled_function] Aborted execution on call of the function 'curl_setopt', because its argument '$option' content (64) matched the rule 'Please don't turn CURLOPT_SSL_VERIFYPEER off.' in %s/disabled_function_ensure_client_valid_certs.php on line %d
diff --git a/src/tests/disable_function/disabled_function_ensure_client_valid_certs_curl_multi_setopt.phpt b/src/tests/disable_function/disabled_function_ensure_client_valid_certs_curl_multi_setopt.phpt
index a854558..9ff37ec 100644
--- a/src/tests/disable_function/disabled_function_ensure_client_valid_certs_curl_multi_setopt.phpt
+++ b/src/tests/disable_function/disabled_function_ensure_client_valid_certs_curl_multi_setopt.phpt
@@ -5,6 +5,8 @@ Disable functions - Ensure that client certificates validation can't be disabled
5if (!extension_loaded("snuffleupagus")) { die("skip"); } 5if (!extension_loaded("snuffleupagus")) { die("skip"); }
6if (!extension_loaded("curl")) { die("skip"); } 6if (!extension_loaded("curl")) { die("skip"); }
7?> 7?>
8--EXTENSIONS--
9curl
8--INI-- 10--INI--
9sp.configuration_file={PWD}/config/disabled_function_curl_verify_certs.ini 11sp.configuration_file={PWD}/config/disabled_function_curl_verify_certs.ini
10--FILE-- 12--FILE--
@@ -14,4 +16,4 @@ curl_multi_setopt($mch, CURLOPT_SSL_VERIFYPEER, 0);
14echo "1337"; 16echo "1337";
15?> 17?>
16--EXPECTF-- 18--EXPECTF--
17Fatal error: [snuffleupagus][disabled_function] Aborted execution on call of the function 'curl_multi_setopt', because its argument '$option' content (64) matched the rule 'Please don't turn CURLOPT_SSL_VERIFYPEER off.' in %s/disabled_function_ensure_client_valid_certs_curl_multi_setopt.php on line %d 19Fatal error: [snuffleupagus][0.0.0.0][disabled_function] Aborted execution on call of the function 'curl_multi_setopt', because its argument '$option' content (64) matched the rule 'Please don't turn CURLOPT_SSL_VERIFYPEER off.' in %s/disabled_function_ensure_client_valid_certs_curl_multi_setopt.php on line %d
diff --git a/src/tests/disable_function/disabled_function_ensure_client_valid_certs_curl_setopt_array.phpt b/src/tests/disable_function/disabled_function_ensure_client_valid_certs_curl_setopt_array.phpt
index 86f95d2..246fee6 100644
--- a/src/tests/disable_function/disabled_function_ensure_client_valid_certs_curl_setopt_array.phpt
+++ b/src/tests/disable_function/disabled_function_ensure_client_valid_certs_curl_setopt_array.phpt
@@ -5,6 +5,8 @@ Disable functions - Ensure that client certificates validation can't be disabled
5if (!extension_loaded("snuffleupagus")) { die("skip"); } 5if (!extension_loaded("snuffleupagus")) { die("skip"); }
6if (!extension_loaded("curl")) { die("skip"); } 6if (!extension_loaded("curl")) { die("skip"); }
7?> 7?>
8--EXTENSIONS--
9curl
8--INI-- 10--INI--
9sp.configuration_file={PWD}/config/disabled_function_curl_verify_certs.ini 11sp.configuration_file={PWD}/config/disabled_function_curl_verify_certs.ini
10--FILE-- 12--FILE--
@@ -16,4 +18,4 @@ curl_setopt_array($ch, $options);
16echo "1337"; 18echo "1337";
17?> 19?>
18--EXPECTF-- 20--EXPECTF--
19Fatal error: [snuffleupagus][disabled_function] Aborted execution on call of the function 'curl_setopt_array', because its argument '$options' content (0) matched the rule 'Please don't turn CURLOPT_SSL_VERIFYPEER off.' in %s/disabled_function_ensure_client_valid_certs_curl_setopt_array.php on line 5 21Fatal error: [snuffleupagus][0.0.0.0][disabled_function] Aborted execution on call of the function 'curl_setopt_array', because its argument '$options' content (0) matched the rule 'Please don't turn CURLOPT_SSL_VERIFYPEER off.' in %s/disabled_function_ensure_client_valid_certs_curl_setopt_array.php on line 5
diff --git a/src/tests/disable_function/disabled_function_ensure_server_valid_certs.phpt b/src/tests/disable_function/disabled_function_ensure_server_valid_certs.phpt
index 8a50c97..fa583b0 100644
--- a/src/tests/disable_function/disabled_function_ensure_server_valid_certs.phpt
+++ b/src/tests/disable_function/disabled_function_ensure_server_valid_certs.phpt
@@ -5,6 +5,8 @@ Disable functions - Ensure that server certificates validation can't be disabled
5if (!extension_loaded("snuffleupagus")) { die("skip"); } 5if (!extension_loaded("snuffleupagus")) { die("skip"); }
6if (!extension_loaded("curl")) { die("skip"); } 6if (!extension_loaded("curl")) { die("skip"); }
7?> 7?>
8--EXTENSIONS--
9curl
8--INI-- 10--INI--
9sp.configuration_file={PWD}/config/disabled_function_curl_verify_certs.ini 11sp.configuration_file={PWD}/config/disabled_function_curl_verify_certs.ini
10--FILE-- 12--FILE--
@@ -15,4 +17,4 @@ curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, '0');
15echo "1337"; 17echo "1337";
16?> 18?>
17--EXPECTF-- 19--EXPECTF--
18Fatal error: [snuffleupagus][disabled_function] Aborted execution on call of the function 'curl_setopt', because its argument '$option' content (81) matched the rule 'Please don't turn CURLOPT_SSL_VERIFYHOST off.' in %s/disabled_function_ensure_server_valid_certs.php on line %d 20Fatal error: [snuffleupagus][0.0.0.0][disabled_function] Aborted execution on call of the function 'curl_setopt', because its argument '$option' content (81) matched the rule 'Please don't turn CURLOPT_SSL_VERIFYHOST off.' in %s/disabled_function_ensure_server_valid_certs.php on line %d
diff --git a/src/tests/disable_function/disabled_function_ensure_server_valid_certs_curl_multi_setopt.phpt b/src/tests/disable_function/disabled_function_ensure_server_valid_certs_curl_multi_setopt.phpt
index 4513848..3b374ee 100644
--- a/src/tests/disable_function/disabled_function_ensure_server_valid_certs_curl_multi_setopt.phpt
+++ b/src/tests/disable_function/disabled_function_ensure_server_valid_certs_curl_multi_setopt.phpt
@@ -5,6 +5,8 @@ Disable functions - Ensure that server certificates validation can't be disabled
5if (!extension_loaded("snuffleupagus")) { die("skip"); } 5if (!extension_loaded("snuffleupagus")) { die("skip"); }
6if (!extension_loaded("curl")) { die("skip"); } 6if (!extension_loaded("curl")) { die("skip"); }
7?> 7?>
8--EXTENSIONS--
9curl
8--INI-- 10--INI--
9sp.configuration_file={PWD}/config/disabled_function_curl_verify_certs.ini 11sp.configuration_file={PWD}/config/disabled_function_curl_verify_certs.ini
10--FILE-- 12--FILE--
@@ -14,4 +16,4 @@ curl_multi_setopt($mch, CURLOPT_SSL_VERIFYHOST, 0);
14echo "1337"; 16echo "1337";
15?> 17?>
16--EXPECTF-- 18--EXPECTF--
17Fatal error: [snuffleupagus][disabled_function] Aborted execution on call of the function 'curl_multi_setopt', because its argument '$option' content (81) matched the rule 'Please don't turn CURLOPT_SSL_VERIFYHOST off.' in %s/disabled_function_ensure_server_valid_certs_curl_multi_setopt.php on line %d 19Fatal error: [snuffleupagus][0.0.0.0][disabled_function] Aborted execution on call of the function 'curl_multi_setopt', because its argument '$option' content (81) matched the rule 'Please don't turn CURLOPT_SSL_VERIFYHOST off.' in %s/disabled_function_ensure_server_valid_certs_curl_multi_setopt.php on line %d
diff --git a/src/tests/disable_function/disabled_function_ensure_server_valid_certs_curl_setopt_array.phpt b/src/tests/disable_function/disabled_function_ensure_server_valid_certs_curl_setopt_array.phpt
index c10d9b0..97accce 100644
--- a/src/tests/disable_function/disabled_function_ensure_server_valid_certs_curl_setopt_array.phpt
+++ b/src/tests/disable_function/disabled_function_ensure_server_valid_certs_curl_setopt_array.phpt
@@ -2,9 +2,11 @@
2Disable functions - Ensure that server certificates validation can't be disabled via `curl_setopt_array` 2Disable functions - Ensure that server certificates validation can't be disabled via `curl_setopt_array`
3--SKIPIF-- 3--SKIPIF--
4<?php 4<?php
5if (!extension_loaded("snuffleupagus")) { die("skip"); } 5if (!extension_loaded("snuffleupagus")) { echo("skip"); }
6if (!extension_loaded("curl")) { die("skip"); } 6if (!extension_loaded("curl")) { echo("skip"); }
7?> 7?>
8--EXTENSIONS--
9curl
8--INI-- 10--INI--
9sp.configuration_file={PWD}/config/disabled_function_curl_verify_certs.ini 11sp.configuration_file={PWD}/config/disabled_function_curl_verify_certs.ini
10--FILE-- 12--FILE--
@@ -16,4 +18,4 @@ curl_setopt_array($ch, $options);
16echo "1337"; 18echo "1337";
17?> 19?>
18--EXPECTF-- 20--EXPECTF--
19Fatal error: [snuffleupagus][disabled_function] Aborted execution on call of the function 'curl_setopt_array', because its argument '$options' content (0) matched the rule 'Please don't turn CURLOPT_SSL_VERIFYHOST off.' in %s/disabled_function_ensure_server_valid_certs_curl_setopt_array.php on line 5 21Fatal error: [snuffleupagus][0.0.0.0][disabled_function] Aborted execution on call of the function 'curl_setopt_array', because its argument '$options' content (0) matched the rule 'Please don't turn CURLOPT_SSL_VERIFYHOST off.' in %s/disabled_function_ensure_server_valid_certs_curl_setopt_array.php on line 5
diff --git a/src/tests/disable_function/disabled_function_local_var.phpt b/src/tests/disable_function/disabled_function_local_var.phpt
index 58dc2ea..1323cc9 100644
--- a/src/tests/disable_function/disabled_function_local_var.phpt
+++ b/src/tests/disable_function/disabled_function_local_var.phpt
@@ -22,4 +22,4 @@ Value of a: 1338
22ID 22ID
23Value of a: 1337 23Value of a: 1337
24 24
25Fatal error: [snuffleupagus][disabled_function] Aborted execution on call of the function 'strtoupper' in %a/disabled_function_local_var.php on line 4 25Fatal error: [snuffleupagus][0.0.0.0][disabled_function] Aborted execution on call of the function 'strtoupper' in %a/disabled_function_local_var.php on line 4
diff --git a/src/tests/disable_function/disabled_function_local_var_10.phpt b/src/tests/disable_function/disabled_function_local_var_10.phpt
index e50a5a4..a3110ac 100644
--- a/src/tests/disable_function/disabled_function_local_var_10.phpt
+++ b/src/tests/disable_function/disabled_function_local_var_10.phpt
@@ -42,4 +42,4 @@ array(2) {
42 } 42 }
43} 43}
44 44
45Fatal error: [snuffleupagus][disabled_function] Aborted execution on call of the function 'strtoupper' in %a/disabled_function_local_var_10.php on line 7 \ No newline at end of file 45Fatal error: [snuffleupagus][0.0.0.0][disabled_function] Aborted execution on call of the function 'strtoupper' in %a/disabled_function_local_var_10.php on line 7 \ No newline at end of file
diff --git a/src/tests/disable_function/disabled_function_local_var_2.phpt b/src/tests/disable_function/disabled_function_local_var_2.phpt
index 5a186cd..d672010 100644
--- a/src/tests/disable_function/disabled_function_local_var_2.phpt
+++ b/src/tests/disable_function/disabled_function_local_var_2.phpt
@@ -44,4 +44,4 @@ array(2) {
44 string(5) "block" 44 string(5) "block"
45} 45}
46 46
47Fatal error: [snuffleupagus][disabled_function] Aborted execution on call of the function 'strtoupper' in %a/disabled_function_local_var_2.php on line 4 47Fatal error: [snuffleupagus][0.0.0.0][disabled_function] Aborted execution on call of the function 'strtoupper' in %a/disabled_function_local_var_2.php on line 4
diff --git a/src/tests/disable_function/disabled_function_local_var_3.phpt b/src/tests/disable_function/disabled_function_local_var_3.phpt
index 6399a1e..66c5d69 100644
--- a/src/tests/disable_function/disabled_function_local_var_3.phpt
+++ b/src/tests/disable_function/disabled_function_local_var_3.phpt
@@ -43,4 +43,4 @@ array(2) {
43 } 43 }
44} 44}
45 45
46Fatal error: [snuffleupagus][disabled_function] Aborted execution on call of the function 'strtoupper' in %a/disabled_function_local_var_3.php on line 3 46Fatal error: [snuffleupagus][0.0.0.0][disabled_function] Aborted execution on call of the function 'strtoupper' in %a/disabled_function_local_var_3.php on line 3
diff --git a/src/tests/disable_function/disabled_function_local_var_4.phpt b/src/tests/disable_function/disabled_function_local_var_4.phpt
index f0b1291..fceee23 100644
--- a/src/tests/disable_function/disabled_function_local_var_4.phpt
+++ b/src/tests/disable_function/disabled_function_local_var_4.phpt
@@ -54,4 +54,4 @@ test();
54Valeur: valeur de a 54Valeur: valeur de a
55Valeur: valeur de apres 55Valeur: valeur de apres
56 56
57Fatal error: [snuffleupagus][disabled_function] Aborted execution on call of the function 'strtoupper' in %a/disabled_function_local_var_4.php on line 36 \ No newline at end of file 57Fatal error: [snuffleupagus][0.0.0.0][disabled_function] Aborted execution on call of the function 'strtoupper' in %a/disabled_function_local_var_4.php on line 36 \ No newline at end of file
diff --git a/src/tests/disable_function/disabled_function_local_var_5.phpt b/src/tests/disable_function/disabled_function_local_var_5.phpt
index 431bbf9..e95ff19 100644
--- a/src/tests/disable_function/disabled_function_local_var_5.phpt
+++ b/src/tests/disable_function/disabled_function_local_var_5.phpt
@@ -31,4 +31,4 @@ object(stdClass)#1 (1) {
31 string(16) "not a good value" 31 string(16) "not a good value"
32} 32}
33 33
34Fatal error: [snuffleupagus][disabled_function] Aborted execution on call of the function 'strtoupper' in %a/disabled_function_local_var_5.php on line 3 34Fatal error: [snuffleupagus][0.0.0.0][disabled_function] Aborted execution on call of the function 'strtoupper' in %a/disabled_function_local_var_5.php on line 3
diff --git a/src/tests/disable_function/disabled_function_local_var_6.phpt b/src/tests/disable_function/disabled_function_local_var_6.phpt
index 0bb9f6d..cd2eb61 100644
--- a/src/tests/disable_function/disabled_function_local_var_6.phpt
+++ b/src/tests/disable_function/disabled_function_local_var_6.phpt
@@ -29,4 +29,4 @@ class test_object {
29--EXPECTF-- 29--EXPECTF--
30Valeur: no good 30Valeur: no good
31 31
32Fatal error: [snuffleupagus][disabled_function] Aborted execution on call of the function 'strtoupper' in %a/disabled_function_local_var_6.php on line 4 \ No newline at end of file 32Fatal error: [snuffleupagus][0.0.0.0][disabled_function] Aborted execution on call of the function 'strtoupper' in %a/disabled_function_local_var_6.php on line 4 \ No newline at end of file
diff --git a/src/tests/disable_function/disabled_function_local_var_7.phpt b/src/tests/disable_function/disabled_function_local_var_7.phpt
index d5c74ba..d219780 100644
--- a/src/tests/disable_function/disabled_function_local_var_7.phpt
+++ b/src/tests/disable_function/disabled_function_local_var_7.phpt
@@ -29,4 +29,4 @@ class test_object {
29--EXPECTF-- 29--EXPECTF--
30Valeur: qwerty 30Valeur: qwerty
31 31
32Fatal error: [snuffleupagus][disabled_function] Aborted execution on call of the function 'strtoupper' in %a/disabled_function_local_var_7.php on line 4 \ No newline at end of file 32Fatal error: [snuffleupagus][0.0.0.0][disabled_function] Aborted execution on call of the function 'strtoupper' in %a/disabled_function_local_var_7.php on line 4 \ No newline at end of file
diff --git a/src/tests/disable_function/disabled_function_local_var_8.phpt b/src/tests/disable_function/disabled_function_local_var_8.phpt
index 436cca2..8b64534 100644
--- a/src/tests/disable_function/disabled_function_local_var_8.phpt
+++ b/src/tests/disable_function/disabled_function_local_var_8.phpt
@@ -18,4 +18,4 @@ namespace asd {
18--EXPECTF-- 18--EXPECTF--
19Valeur: qwerty 19Valeur: qwerty
20 20
21Fatal error: [snuffleupagus][disabled_function] Aborted execution on call of the function 'strtoupper' in %a/disabled_function_local_var_8.php on line 8 \ No newline at end of file 21Fatal error: [snuffleupagus][0.0.0.0][disabled_function] Aborted execution on call of the function 'strtoupper' in %a/disabled_function_local_var_8.php on line 8 \ No newline at end of file
diff --git a/src/tests/disable_function/disabled_function_local_var_9.phpt b/src/tests/disable_function/disabled_function_local_var_9.phpt
index 5844458..cc37a78 100644
--- a/src/tests/disable_function/disabled_function_local_var_9.phpt
+++ b/src/tests/disable_function/disabled_function_local_var_9.phpt
@@ -18,4 +18,4 @@ namespace asd {
18--EXPECTF-- 18--EXPECTF--
19Valeur: asdfgh 19Valeur: asdfgh
20 20
21Fatal error: [snuffleupagus][disabled_function] Aborted execution on call of the function 'strtoupper' in %a/disabled_function_local_var_9.php on line 8 \ No newline at end of file 21Fatal error: [snuffleupagus][0.0.0.0][disabled_function] Aborted execution on call of the function 'strtoupper' in %a/disabled_function_local_var_9.php on line 8 \ No newline at end of file
diff --git a/src/tests/disable_function/disabled_function_local_var_const.phpt b/src/tests/disable_function/disabled_function_local_var_const.phpt
index 2013f6d..1500558 100644
--- a/src/tests/disable_function/disabled_function_local_var_const.phpt
+++ b/src/tests/disable_function/disabled_function_local_var_const.phpt
@@ -11,4 +11,4 @@ define("MY_CONST", $a);
11strtoupper("test"); 11strtoupper("test");
12?> 12?>
13--EXPECTF-- 13--EXPECTF--
14Fatal error: [snuffleupagus][disabled_function] Aborted execution on call of the function 'strtoupper' in %a/disabled_function_local_var_const.php on line 4 \ No newline at end of file 14Fatal error: [snuffleupagus][0.0.0.0][disabled_function] Aborted execution on call of the function 'strtoupper' in %a/disabled_function_local_var_const.php on line 4 \ No newline at end of file
diff --git a/src/tests/disable_function/disabled_function_local_var_obj.phpt b/src/tests/disable_function/disabled_function_local_var_obj.phpt
index 89e423a..c8c3be3 100644
--- a/src/tests/disable_function/disabled_function_local_var_obj.phpt
+++ b/src/tests/disable_function/disabled_function_local_var_obj.phpt
@@ -23,4 +23,4 @@ echo strtoupper($test->$arg) . "\n";
23--EXPECTF-- 23--EXPECTF--
24QWE 24QWE
25 25
26Fatal error: [snuffleupagus][disabled_function] Aborted execution on call of the function 'strtoupper' in %a/disabled_function_local_var_obj.php on line 14 26Fatal error: [snuffleupagus][0.0.0.0][disabled_function] Aborted execution on call of the function 'strtoupper' in %a/disabled_function_local_var_obj.php on line 14
diff --git a/src/tests/disable_function/disabled_function_param.phpt b/src/tests/disable_function/disabled_function_param.phpt
index 9b8b942..80812b9 100644
--- a/src/tests/disable_function/disabled_function_param.phpt
+++ b/src/tests/disable_function/disabled_function_param.phpt
@@ -17,4 +17,4 @@ qweqwe(Array(2));
17--EXPECTF-- 17--EXPECTF--
18OK 18OK
19 19
20Fatal error: [snuffleupagus][disabled_function] Aborted execution on call of the function 'qweqwe', because its argument '$asd' content (2) matched a rule in %a/disabled_function_param.php on line 3 \ No newline at end of file 20Fatal error: [snuffleupagus][0.0.0.0][disabled_function] Aborted execution on call of the function 'qweqwe', because its argument '$asd' content (2) matched a rule in %a/disabled_function_param.php on line 3 \ No newline at end of file
diff --git a/src/tests/disable_function/disabled_function_print.phpt b/src/tests/disable_function/disabled_function_print.phpt
index a8b10b4..ee02687 100644
--- a/src/tests/disable_function/disabled_function_print.phpt
+++ b/src/tests/disable_function/disabled_function_print.phpt
@@ -16,4 +16,4 @@ test("oops");
16--CLEAN-- 16--CLEAN--
17--EXPECTF-- 17--EXPECTF--
18qwerty 18qwerty
19Fatal error: [snuffleupagus][disabled_function] Aborted execution on call of the function 'echo' in %a/disabled_function_print.php on line 3 \ No newline at end of file 19Fatal error: [snuffleupagus][0.0.0.0][disabled_function] Aborted execution on call of the function 'echo' in %a/disabled_function_print.php on line 3 \ No newline at end of file
diff --git a/src/tests/disable_function/disabled_function_super_global_var.phpt b/src/tests/disable_function/disabled_function_super_global_var.phpt
index 196d9e2..19bb892 100644
--- a/src/tests/disable_function/disabled_function_super_global_var.phpt
+++ b/src/tests/disable_function/disabled_function_super_global_var.phpt
@@ -9,13 +9,17 @@ bla=test
9--FILE-- 9--FILE--
10<?php 10<?php
11function test(){ 11function test(){
12try {
12 echo strtoupper($_GET['bla']) . "\n"; 13 echo strtoupper($_GET['bla']) . "\n";
13} 14}
14test(); 15catch (Exception $e) { }
16catch (Error $e) { }
17}
18 test();
15$_GET['bla'] = 'test2'; 19$_GET['bla'] = 'test2';
16test(); 20test();
17?> 21?>
18--EXPECTF-- 22--EXPECTF--
19TEST 23TEST
20 24
21Fatal error: [snuffleupagus][disabled_function] Aborted execution on call of the function 'strtoupper' in %a/disabled_function_super_global_var.php on line 3 25Fatal error: [snuffleupagus][0.0.0.0][disabled_function] Aborted execution on call of the function 'strtoupper' in %a/disabled_function_super_global_var.php on line 4
diff --git a/src/tests/disable_function/disabled_functions.phpt b/src/tests/disable_function/disabled_functions.phpt
index 6e57dba..45a46ad 100644
--- a/src/tests/disable_function/disabled_functions.phpt
+++ b/src/tests/disable_function/disabled_functions.phpt
@@ -14,4 +14,4 @@ var_dump("this is a super test");
14echo strpos("pouet", "o"); 14echo strpos("pouet", "o");
15?> 15?>
16--EXPECTF-- 16--EXPECTF--
17Fatal error: [snuffleupagus][disabled_function] Aborted execution on call of the function 'system' in %a/disabled_functions.php on line %d 17Fatal error: [snuffleupagus][0.0.0.0][disabled_function] Aborted execution on call of the function 'system' in %a/disabled_functions.php on line %d
diff --git a/src/tests/disable_function/disabled_functions_callback_called_file_r.phpt b/src/tests/disable_function/disabled_functions_callback_called_file_r.phpt
index 9c25f9d..63a0e00 100644
--- a/src/tests/disable_function/disabled_functions_callback_called_file_r.phpt
+++ b/src/tests/disable_function/disabled_functions_callback_called_file_r.phpt
@@ -36,4 +36,4 @@ $dir = __DIR__;
36@unlink("$dir/myfunc_callback.php"); 36@unlink("$dir/myfunc_callback.php");
37?> 37?>
38--EXPECTF-- 38--EXPECTF--
39Fatal error: [snuffleupagus][disabled_function] Aborted execution on call of the function 'test_callback' in %a/myfunc_callback.php on line 4 39Fatal error: [snuffleupagus][0.0.0.0][disabled_function] Aborted execution on call of the function 'test_callback' in %a/myfunc_callback.php on line 4
diff --git a/src/tests/disable_function/disabled_functions_called_file_r.phpt b/src/tests/disable_function/disabled_functions_called_file_r.phpt
index b361dc8..a02dde0 100644
--- a/src/tests/disable_function/disabled_functions_called_file_r.phpt
+++ b/src/tests/disable_function/disabled_functions_called_file_r.phpt
@@ -31,4 +31,4 @@ $dir = __DIR__;
31@unlink("$dir/myfunc.php"); 31@unlink("$dir/myfunc.php");
32?> 32?>
33--EXPECTF-- 33--EXPECTF--
34Fatal error: [snuffleupagus][disabled_function] Aborted execution on call of the function 'test' in %a/myfunc.php on line 3 34Fatal error: [snuffleupagus][0.0.0.0][disabled_function] Aborted execution on call of the function 'test' in %a/myfunc.php on line 3
diff --git a/src/tests/disable_function/disabled_functions_chain.phpt b/src/tests/disable_function/disabled_functions_chain.phpt
index 5aee085..fd379c9 100644
--- a/src/tests/disable_function/disabled_functions_chain.phpt
+++ b/src/tests/disable_function/disabled_functions_chain.phpt
@@ -24,4 +24,4 @@ echo "I'm after the call to outer\n";
24I'm before the call to outer 24I'm before the call to outer
25I'm in the outer function, before the call! 25I'm in the outer function, before the call!
26 26
27Fatal error: [snuffleupagus][disabled_function] Aborted execution on call of the function 'outer>inner' in %a/disabled_functions_chain.php on line 5 \ No newline at end of file 27Fatal error: [snuffleupagus][0.0.0.0][disabled_function] Aborted execution on call of the function 'outer>inner' in %a/disabled_functions_chain.php on line 5 \ No newline at end of file
diff --git a/src/tests/disable_function/disabled_functions_chain_call_user_func.phpt b/src/tests/disable_function/disabled_functions_chain_call_user_func.phpt
index 90c1f32..fd07225 100644
--- a/src/tests/disable_function/disabled_functions_chain_call_user_func.phpt
+++ b/src/tests/disable_function/disabled_functions_chain_call_user_func.phpt
@@ -24,4 +24,4 @@ echo "I'm after the call to outer\n";
24I'm before the call to outer 24I'm before the call to outer
25I'm in the outer function, before the call! 25I'm in the outer function, before the call!
26 26
27Fatal error: [snuffleupagus][disabled_function] Aborted execution on call of the function 'outer>inner' in %a/disabled_functions_chain_call_user_func.php on line 5 \ No newline at end of file 27Fatal error: [snuffleupagus][0.0.0.0][disabled_function] Aborted execution on call of the function 'outer>inner' in %a/disabled_functions_chain_call_user_func.php on line 5 \ No newline at end of file
diff --git a/src/tests/disable_function/disabled_functions_chain_call_user_func_ret.phpt b/src/tests/disable_function/disabled_functions_chain_call_user_func_ret.phpt
index 6a4cca6..3046096 100644
--- a/src/tests/disable_function/disabled_functions_chain_call_user_func_ret.phpt
+++ b/src/tests/disable_function/disabled_functions_chain_call_user_func_ret.phpt
@@ -28,7 +28,7 @@ not matching_one
28one 28one
29two 29two
30 30
31Warning: [snuffleupagus][disabled_function] Aborted execution on return of the function 'two', because the function returned 'matching_two', which matched a rule in %a/disabled_functions_chain_call_user_func_ret.php on line %d 31Warning: [snuffleupagus][0.0.0.0][disabled_function] Aborted execution on return of the function 'two', because the function returned 'matching_two', which matched a rule in %a/disabled_functions_chain_call_user_func_ret.php on line %d
32matching_one 32matching_one
33one 33one
34two 34two
diff --git a/src/tests/disable_function/disabled_functions_cidr.phpt b/src/tests/disable_function/disabled_functions_cidr.phpt
index dcd4189..ea690e8 100644
--- a/src/tests/disable_function/disabled_functions_cidr.phpt
+++ b/src/tests/disable_function/disabled_functions_cidr.phpt
@@ -13,4 +13,4 @@ sp.configuration_file={PWD}/config/disabled_functions_cidr.ini
13system("echo 42"); 13system("echo 42");
14?> 14?>
15--EXPECTF-- 15--EXPECTF--
16Fatal error: [snuffleupagus][disabled_function] Aborted execution on call of the function 'system' in %a/disabled_functions_cidr.php on line 2 \ No newline at end of file 16Fatal error: [snuffleupagus][127.0.0.1][disabled_function] Aborted execution on call of the function 'system' in %a/disabled_functions_cidr.php on line 2 \ No newline at end of file
diff --git a/src/tests/disable_function/disabled_functions_cidr_6.phpt b/src/tests/disable_function/disabled_functions_cidr_6.phpt
index 17822cd..914cd35 100644
--- a/src/tests/disable_function/disabled_functions_cidr_6.phpt
+++ b/src/tests/disable_function/disabled_functions_cidr_6.phpt
@@ -14,4 +14,4 @@ strpos("a", "b");
14printf(1337); 14printf(1337);
15?> 15?>
16--EXPECTF-- 16--EXPECTF--
17Fatal error: [snuffleupagus][disabled_function] Aborted execution on call of the function 'strpos' in %a/disabled_functions_cidr_6.php on line 2 17Fatal error: [snuffleupagus][2001:0db8:f000:f000:f000:ff00:0042:8328][disabled_function] Aborted execution on call of the function 'strpos' in %a/disabled_functions_cidr_6.php on line 2
diff --git a/src/tests/disable_function/disabled_functions_die.phpt b/src/tests/disable_function/disabled_functions_die.phpt
index bfabaee..73bd657 100644
--- a/src/tests/disable_function/disabled_functions_die.phpt
+++ b/src/tests/disable_function/disabled_functions_die.phpt
@@ -10,4 +10,4 @@ die('OMG');
10?> 10?>
11--XFAIL-- 11--XFAIL--
12--EXPECTF-- 12--EXPECTF--
13Fatal error: [snuffleupagus][disabled_function] Aborted execution on call of the function 'die' in %a/disabled_function_echo.php on line 3 13Fatal error: [snuffleupagus][0.0.0.0][disabled_function] Aborted execution on call of the function 'die' in %a/disabled_function_echo.php on line 3
diff --git a/src/tests/disable_function/disabled_functions_drop_include.phpt b/src/tests/disable_function/disabled_functions_drop_include.phpt
index e18dd73..ba1c955 100644
--- a/src/tests/disable_function/disabled_functions_drop_include.phpt
+++ b/src/tests/disable_function/disabled_functions_drop_include.phpt
@@ -1,5 +1,5 @@
1--TEST-- 1--TEST--
2Disable function, bug : https://github.com/nbs-system/snuffleupagus/issues/181 2Disable function, bug : https://github.com/jvoisin/snuffleupagus/issues/181
3--SKIPIF-- 3--SKIPIF--
4<?php if (!extension_loaded("snuffleupagus")) die "skip"; ?> 4<?php if (!extension_loaded("snuffleupagus")) die "skip"; ?>
5--INI-- 5--INI--
diff --git a/src/tests/disable_function/disabled_functions_drop_include_simulation.phpt b/src/tests/disable_function/disabled_functions_drop_include_simulation.phpt
index 07c3e98..1b13915 100644
--- a/src/tests/disable_function/disabled_functions_drop_include_simulation.phpt
+++ b/src/tests/disable_function/disabled_functions_drop_include_simulation.phpt
@@ -1,5 +1,5 @@
1--TEST-- 1--TEST--
2Disable function, bug : https://github.com/nbs-system/snuffleupagus/issues/181 2Disable function, bug : https://github.com/jvoisin/snuffleupagus/issues/181
3--SKIPIF-- 3--SKIPIF--
4<?php if (!extension_loaded("snuffleupagus")) die "skip"; ?> 4<?php if (!extension_loaded("snuffleupagus")) die "skip"; ?>
5--INI-- 5--INI--
diff --git a/src/tests/disable_function/disabled_functions_eval.phpt b/src/tests/disable_function/disabled_functions_eval.phpt
index a5d1489..04b2342 100644
--- a/src/tests/disable_function/disabled_functions_eval.phpt
+++ b/src/tests/disable_function/disabled_functions_eval.phpt
@@ -11,4 +11,4 @@ eval('$var = 1337 + 1337;');
11print("Variable: $var\n"); 11print("Variable: $var\n");
12?> 12?>
13--EXPECTF-- 13--EXPECTF--
14Fatal error: [snuffleupagus][disabled_function] Aborted execution on call of the function 'eval' in %a/disabled_functions_eval.php(3) : eval()'d code on line 1 \ No newline at end of file 14Fatal error: [snuffleupagus][0.0.0.0][disabled_function] Aborted execution on call of the function 'eval' in %a/disabled_functions_eval.php(3) : eval()'d code on line 1 \ No newline at end of file
diff --git a/src/tests/disable_function/disabled_functions_eval_filename.phpt b/src/tests/disable_function/disabled_functions_eval_filename.phpt
index 4491e9e..564116e 100644
--- a/src/tests/disable_function/disabled_functions_eval_filename.phpt
+++ b/src/tests/disable_function/disabled_functions_eval_filename.phpt
@@ -11,4 +11,4 @@ eval('$var = 1337 + 1337;');
11print("Variable: $var\n"); 11print("Variable: $var\n");
12?> 12?>
13--EXPECTF-- 13--EXPECTF--
14Fatal error: [snuffleupagus][disabled_function] Aborted execution on call of the function 'eval' in %a/disabled_functions_eval_filename.php(3) : eval()'d code on line 1 \ No newline at end of file 14Fatal error: [snuffleupagus][0.0.0.0][disabled_function] Aborted execution on call of the function 'eval' in %a/disabled_functions_eval_filename.php(3) : eval()'d code on line 1 \ No newline at end of file
diff --git a/src/tests/disable_function/disabled_functions_eval_simulation.phpt b/src/tests/disable_function/disabled_functions_eval_simulation.phpt
index 2df04a9..6286235 100644
--- a/src/tests/disable_function/disabled_functions_eval_simulation.phpt
+++ b/src/tests/disable_function/disabled_functions_eval_simulation.phpt
@@ -11,5 +11,5 @@ eval('$var = 1337 + 1337;');
11print("Variable: $var\n"); 11print("Variable: $var\n");
12?> 12?>
13--EXPECTF-- 13--EXPECTF--
14Warning: [snuffleupagus][disabled_function] Aborted execution on call of the function 'eval' in %a/disabled_functions_eval_simulation.php(3) : eval()'d code on line 1 14Warning: [snuffleupagus][0.0.0.0][disabled_function] Aborted execution on call of the function 'eval' in %a/disabled_functions_eval_simulation.php(3) : eval()'d code on line 1
15Variable: 2674 \ No newline at end of file 15Variable: 2674 \ No newline at end of file
diff --git a/src/tests/disable_function/disabled_functions_eval_user.phpt b/src/tests/disable_function/disabled_functions_eval_user.phpt
index 30ba1d5..7e02d13 100644
--- a/src/tests/disable_function/disabled_functions_eval_user.phpt
+++ b/src/tests/disable_function/disabled_functions_eval_user.phpt
@@ -15,4 +15,4 @@ eval('$a = my_func();');
15echo '$a = ' . $a . "\n"; 15echo '$a = ' . $a . "\n";
16?> 16?>
17--EXPECTF-- 17--EXPECTF--
18Fatal error: [snuffleupagus][disabled_function] Aborted execution on call of the function 'my_func' in %a/disabled_functions_eval_user.php on line 3 \ No newline at end of file 18Fatal error: [snuffleupagus][0.0.0.0][disabled_function] Aborted execution on call of the function 'my_func' in %a/disabled_functions_eval_user.php on line 3 \ No newline at end of file
diff --git a/src/tests/disable_function/disabled_functions_exit.phpt b/src/tests/disable_function/disabled_functions_exit.phpt
index b204fcd..a6fd3c6 100644
--- a/src/tests/disable_function/disabled_functions_exit.phpt
+++ b/src/tests/disable_function/disabled_functions_exit.phpt
@@ -10,4 +10,4 @@ exit('OMG');
10?> 10?>
11--XFAIL-- 11--XFAIL--
12--EXPECTF-- 12--EXPECTF--
13Fatal error: [snuffleupagus][disabled_function] Aborted execution on call of the function 'exit' in %a/disabled_function_echo.php on line 3 13Fatal error: [snuffleupagus][0.0.0.0][disabled_function] Aborted execution on call of the function 'exit' in %a/disabled_function_echo.php on line 3
diff --git a/src/tests/disable_function/disabled_functions_filename_r.phpt b/src/tests/disable_function/disabled_functions_filename_r.phpt
index 0eb5f7d..9f36cce 100644
--- a/src/tests/disable_function/disabled_functions_filename_r.phpt
+++ b/src/tests/disable_function/disabled_functions_filename_r.phpt
@@ -12,4 +12,4 @@ shell_exec("echo 43");
12--EXPECTF-- 12--EXPECTF--
1342 1342
14 14
15Fatal error: [snuffleupagus][disabled_function] Aborted execution on call of the function 'shell_exec' in %a/disabled_functions_filename_r.php on line 3 \ No newline at end of file 15Fatal error: [snuffleupagus][0.0.0.0][disabled_function] Aborted execution on call of the function 'shell_exec' in %a/disabled_functions_filename_r.php on line 3 \ No newline at end of file
diff --git a/src/tests/disable_function/disabled_functions_include_once.phpt b/src/tests/disable_function/disabled_functions_include_once.phpt
index 26b7ecc..3709aff 100644
--- a/src/tests/disable_function/disabled_functions_include_once.phpt
+++ b/src/tests/disable_function/disabled_functions_include_once.phpt
@@ -22,6 +22,6 @@ unlink($dir . '/test.sim');
22--EXPECTF-- 22--EXPECTF--
23BLA 23BLA
24 24
25Warning: [snuffleupagus][disabled_function] Aborted execution on call of the function 'include_once', because its argument 'inclusion path' content (%a/test.sim) matched a rule in %a/disabled_functions_include_once.php on line 6 25Warning: [snuffleupagus][0.0.0.0][disabled_function] Aborted execution on call of the function 'include_once', because its argument 'inclusion path' content (%a/test.sim) matched a rule in %a/disabled_functions_include_once.php on line 6
26MEH 26MEH
271337 271337
diff --git a/src/tests/disable_function/disabled_functions_include_simulation.phpt b/src/tests/disable_function/disabled_functions_include_simulation.phpt
index 199e91a..60ba9ee 100644
--- a/src/tests/disable_function/disabled_functions_include_simulation.phpt
+++ b/src/tests/disable_function/disabled_functions_include_simulation.phpt
@@ -22,6 +22,6 @@ unlink($dir . '/test.sim');
22--EXPECTF-- 22--EXPECTF--
23BLA 23BLA
24 24
25Warning: [snuffleupagus][disabled_function] Aborted execution on call of the function 'include', because its argument 'inclusion path' content (%a/test.sim) matched a rule in %a/disabled_functions_include_simulation.php on line 6 25Warning: [snuffleupagus][0.0.0.0][disabled_function] Aborted execution on call of the function 'include', because its argument 'inclusion path' content (%a/test.sim) matched a rule in %a/disabled_functions_include_simulation.php on line 6
26MEH 26MEH
271337 271337
diff --git a/src/tests/disable_function/disabled_functions_local_var_array.phpt b/src/tests/disable_function/disabled_functions_local_var_array.phpt
index 2c55a6e..f460d72 100644
--- a/src/tests/disable_function/disabled_functions_local_var_array.phpt
+++ b/src/tests/disable_function/disabled_functions_local_var_array.phpt
@@ -18,4 +18,4 @@ foo($a);
18--EXPECTF-- 18--EXPECTF--
19cccc 19cccc
20 20
21Fatal error: [snuffleupagus][disabled_function] Aborted execution on call of the function 'foo' in %a/disabled_functions_local_var_array.php on line 3 \ No newline at end of file 21Fatal error: [snuffleupagus][0.0.0.0][disabled_function] Aborted execution on call of the function 'foo' in %a/disabled_functions_local_var_array.php on line 3 \ No newline at end of file
diff --git a/src/tests/disable_function/disabled_functions_local_var_array_key.phpt b/src/tests/disable_function/disabled_functions_local_var_array_key.phpt
index 777611b..b69db4a 100644
--- a/src/tests/disable_function/disabled_functions_local_var_array_key.phpt
+++ b/src/tests/disable_function/disabled_functions_local_var_array_key.phpt
@@ -18,4 +18,4 @@ foo($a);
18--EXPECTF-- 18--EXPECTF--
19cccc 19cccc
20 20
21Fatal error: [snuffleupagus][disabled_function] Aborted execution on call of the function 'foo' in %a/disabled_functions_local_var_array_key.php on line 3 \ No newline at end of file 21Fatal error: [snuffleupagus][0.0.0.0][disabled_function] Aborted execution on call of the function 'foo' in %a/disabled_functions_local_var_array_key.php on line 3 \ No newline at end of file
diff --git a/src/tests/disable_function/disabled_functions_mb.phpt b/src/tests/disable_function/disabled_functions_mb.phpt
index 923de8e..eda11f7 100644
--- a/src/tests/disable_function/disabled_functions_mb.phpt
+++ b/src/tests/disable_function/disabled_functions_mb.phpt
@@ -9,4 +9,4 @@ sp.configuration_file={PWD}/config/disabled_functions_mb.ini
9echo strtoupper("id"); 9echo strtoupper("id");
10?> 10?>
11--EXPECTF-- 11--EXPECTF--
12Fatal error: [snuffleupagus][disabled_function] Aborted execution on call of the function 'strtoupper' in %a/disabled_functions_mb.php on line 2 \ No newline at end of file 12Fatal error: [snuffleupagus][0.0.0.0][disabled_function] Aborted execution on call of the function 'strtoupper' in %a/disabled_functions_mb.php on line 2 \ No newline at end of file
diff --git a/src/tests/disable_function/disabled_functions_method.phpt b/src/tests/disable_function/disabled_functions_method.phpt
index 72e633e..632d570 100644
--- a/src/tests/disable_function/disabled_functions_method.phpt
+++ b/src/tests/disable_function/disabled_functions_method.phpt
@@ -24,4 +24,4 @@ $c->method2("paf");
24$c->method3("pouet"); 24$c->method3("pouet");
25?> 25?>
26--EXPECTF-- 26--EXPECTF--
27Fatal error: [snuffleupagus][disabled_function] Aborted execution on call of the function 'AwesomeClass::method1' in %a/disabled_functions_method.php on line 4 \ No newline at end of file 27Fatal error: [snuffleupagus][0.0.0.0][disabled_function] Aborted execution on call of the function 'AwesomeClass::method1' in %a/disabled_functions_method.php on line 4 \ No newline at end of file
diff --git a/src/tests/disable_function/disabled_functions_name_r.phpt b/src/tests/disable_function/disabled_functions_name_r.phpt
index 1ecee14..0a151a6 100644
--- a/src/tests/disable_function/disabled_functions_name_r.phpt
+++ b/src/tests/disable_function/disabled_functions_name_r.phpt
@@ -13,4 +13,4 @@ system("echo 1337");
1342 1342
141337 141337
15 15
16Fatal error: [snuffleupagus][disabled_function] Aborted execution on return of the function 'system', because the function returned '1337', which matched a rule in %a/disabled_functions_name_r.php on line 3 \ No newline at end of file 16Fatal error: [snuffleupagus][0.0.0.0][disabled_function] Aborted execution on return of the function 'system', because the function returned '1337', which matched a rule in %a/disabled_functions_name_r.php on line 3 \ No newline at end of file
diff --git a/src/tests/disable_function/disabled_functions_name_regexp_type.phpt b/src/tests/disable_function/disabled_functions_name_regexp_type.phpt
index 2ceadbf..0bcb28c 100644
--- a/src/tests/disable_function/disabled_functions_name_regexp_type.phpt
+++ b/src/tests/disable_function/disabled_functions_name_regexp_type.phpt
@@ -14,4 +14,4 @@ echo strcmp([1], "pouet") . "\n";
140 140
15-1 15-1
16 16
17Fatal error: [snuffleupagus][disabled_function] Aborted execution on call of the function 'strcmp', because its argument 'str1' content (?) matched a rule in %a/disabled_functions_name_regexp_type.php on line 4 \ No newline at end of file 17Fatal error: [snuffleupagus][0.0.0.0][disabled_function] Aborted execution on call of the function 'strcmp', because its argument 'str1' content (?) matched a rule in %a/disabled_functions_name_regexp_type.php on line 4 \ No newline at end of file
diff --git a/src/tests/disable_function/disabled_functions_name_type.phpt b/src/tests/disable_function/disabled_functions_name_type.phpt
index 2d14d12..59b4683 100644
--- a/src/tests/disable_function/disabled_functions_name_type.phpt
+++ b/src/tests/disable_function/disabled_functions_name_type.phpt
@@ -12,4 +12,4 @@ echo strcmp([1,23], "pouet") . "\n";
12--EXPECTF-- 12--EXPECTF--
130 130
14 14
15Fatal error: [snuffleupagus][disabled_function] Aborted execution on call of the function 'strcmp', because its argument '$str1' content (ARRAY) matched a rule in %a/disabled_functions_name_type.php on line 3 \ No newline at end of file 15Fatal error: [snuffleupagus][0.0.0.0][disabled_function] Aborted execution on call of the function 'strcmp', because its argument '$str1' content (ARRAY) matched a rule in %a/disabled_functions_name_type.php on line 3 \ No newline at end of file
diff --git a/src/tests/disable_function/disabled_functions_namespace.phpt b/src/tests/disable_function/disabled_functions_namespace.phpt
index 1acfce2..af310c3 100644
--- a/src/tests/disable_function/disabled_functions_namespace.phpt
+++ b/src/tests/disable_function/disabled_functions_namespace.phpt
@@ -27,4 +27,4 @@ my_function();
27} 27}
28?> 28?>
29--EXPECTF-- 29--EXPECTF--
30Fatal error: [snuffleupagus][disabled_function] Aborted execution on call of the function 'strcmp' in %a/disabled_functions_namespace.php on line 16 \ No newline at end of file 30Fatal error: [snuffleupagus][0.0.0.0][disabled_function] Aborted execution on call of the function 'strcmp' in %a/disabled_functions_namespace.php on line 16 \ No newline at end of file
diff --git a/src/tests/disable_function/disabled_functions_nul_byte.phpt b/src/tests/disable_function/disabled_functions_nul_byte.phpt
index 984541d..dbb7600 100644
--- a/src/tests/disable_function/disabled_functions_nul_byte.phpt
+++ b/src/tests/disable_function/disabled_functions_nul_byte.phpt
@@ -11,4 +11,4 @@ system("id");
11 11
12?> 12?>
13--EXPECTF-- 13--EXPECTF--
14Fatal error: [snuffleupagus][disabled_function] Aborted execution on call of the function 'system', because its argument '$command' content (0id) matched a rule in %a/disabled_functions_nul_byte.php on line 2 \ No newline at end of file 14Fatal error: [snuffleupagus][0.0.0.0][disabled_function] Aborted execution on call of the function 'system', because its argument '$command' content (0id) matched a rule in %a/disabled_functions_nul_byte.php on line 2 \ No newline at end of file
diff --git a/src/tests/disable_function/disabled_functions_param.phpt b/src/tests/disable_function/disabled_functions_param.phpt
index fb6dcbb..4bc276a 100644
--- a/src/tests/disable_function/disabled_functions_param.phpt
+++ b/src/tests/disable_function/disabled_functions_param.phpt
@@ -15,4 +15,4 @@ strcmp("bla", "ble");
15strncmp("bla", "ble", 2); 15strncmp("bla", "ble", 2);
16?> 16?>
17--EXPECTF-- 17--EXPECTF--
18Fatal error: [snuffleupagus][disabled_function] Aborted execution on call of the function 'system', because its argument '$command' content (id) matched the rule '1' in %a/disabled_functions_param.php on line 2 \ No newline at end of file 18Fatal error: [snuffleupagus][0.0.0.0][disabled_function] Aborted execution on call of the function 'system', because its argument '$command' content (id) matched the rule '1' in %a/disabled_functions_param.php on line 2 \ No newline at end of file
diff --git a/src/tests/disable_function/disabled_functions_param_alias.phpt b/src/tests/disable_function/disabled_functions_param_alias.phpt
index 9c249d9..1d44e72 100644
--- a/src/tests/disable_function/disabled_functions_param_alias.phpt
+++ b/src/tests/disable_function/disabled_functions_param_alias.phpt
@@ -10,4 +10,4 @@ system("id");
10shell_exec("id"); 10shell_exec("id");
11?> 11?>
12--EXPECTF-- 12--EXPECTF--
13Fatal error: [snuffleupagus][disabled_function] Aborted execution on call of the function 'system', because of the the rule '1' in %a/disabled_functions_param_alias.php on line 2 \ No newline at end of file 13Fatal error: [snuffleupagus][0.0.0.0][disabled_function] Aborted execution on call of the function 'system', because of the the rule '1' in %a/disabled_functions_param_alias.php on line 2 \ No newline at end of file
diff --git a/src/tests/disable_function/disabled_functions_param_allow.phpt b/src/tests/disable_function/disabled_functions_param_allow.phpt
index f570415..b0e7de1 100644
--- a/src/tests/disable_function/disabled_functions_param_allow.phpt
+++ b/src/tests/disable_function/disabled_functions_param_allow.phpt
@@ -12,4 +12,4 @@ system("id");
12--EXPECTF-- 12--EXPECTF--
13win 13win
14 14
15Fatal error: [snuffleupagus][disabled_function] Aborted execution on call of the function 'system' in %a/disabled_functions_param_allow.php on line 3 \ No newline at end of file 15Fatal error: [snuffleupagus][0.0.0.0][disabled_function] Aborted execution on call of the function 'system' in %a/disabled_functions_param_allow.php on line 3 \ No newline at end of file
diff --git a/src/tests/disable_function/disabled_functions_param_array.phpt b/src/tests/disable_function/disabled_functions_param_array.phpt
index 37a02e0..2053b14 100644
--- a/src/tests/disable_function/disabled_functions_param_array.phpt
+++ b/src/tests/disable_function/disabled_functions_param_array.phpt
@@ -22,4 +22,4 @@ foo($a);
22test1 22test1
23abcde 23abcde
24 24
25Fatal error: [snuffleupagus][disabled_function] Aborted execution on call of the function 'foo', because its argument '$arr' content (abcd) matched the rule '1' in %a/disabled_functions_param_array.php on line 3 \ No newline at end of file 25Fatal error: [snuffleupagus][0.0.0.0][disabled_function] Aborted execution on call of the function 'foo', because its argument '$arr' content (abcd) matched the rule '1' in %a/disabled_functions_param_array.php on line 3 \ No newline at end of file
diff --git a/src/tests/disable_function/disabled_functions_param_array_deref.phpt b/src/tests/disable_function/disabled_functions_param_array_deref.phpt
index 3305965..f162d47 100644
--- a/src/tests/disable_function/disabled_functions_param_array_deref.phpt
+++ b/src/tests/disable_function/disabled_functions_param_array_deref.phpt
@@ -23,4 +23,4 @@ foo($a);
23eee 23eee
24abcdef 24abcdef
25 25
26Fatal error: [snuffleupagus][disabled_function] Aborted execution on call of the function 'foo', because its argument '$arr' content (abcdef) matched the rule '2' in %a/disabled_functions_param_array_deref.php on line 3 \ No newline at end of file 26Fatal error: [snuffleupagus][0.0.0.0][disabled_function] Aborted execution on call of the function 'foo', because its argument '$arr' content (abcdef) matched the rule '2' in %a/disabled_functions_param_array_deref.php on line 3 \ No newline at end of file
diff --git a/src/tests/disable_function/disabled_functions_param_array_no_value.phpt b/src/tests/disable_function/disabled_functions_param_array_no_value.phpt
index dfb67a2..549842f 100644
--- a/src/tests/disable_function/disabled_functions_param_array_no_value.phpt
+++ b/src/tests/disable_function/disabled_functions_param_array_no_value.phpt
@@ -20,4 +20,4 @@ foo($a);
20--EXPECTF-- 20--EXPECTF--
21cccc 21cccc
22 22
23Fatal error: [snuffleupagus][disabled_function] Aborted execution on call of the function 'foo', because its argument '$arr' content (aaa) matched the rule '3' in %a/disabled_functions_param_array_no_value.php on line 3 \ No newline at end of file 23Fatal error: [snuffleupagus][0.0.0.0][disabled_function] Aborted execution on call of the function 'foo', because its argument '$arr' content (aaa) matched the rule '3' in %a/disabled_functions_param_array_no_value.php on line 3 \ No newline at end of file
diff --git a/src/tests/disable_function/disabled_functions_param_array_r.phpt b/src/tests/disable_function/disabled_functions_param_array_r.phpt
index 1773bbe..6c11c63 100644
--- a/src/tests/disable_function/disabled_functions_param_array_r.phpt
+++ b/src/tests/disable_function/disabled_functions_param_array_r.phpt
@@ -18,4 +18,4 @@ foo($a);
18--EXPECTF-- 18--EXPECTF--
19cccc 19cccc
20 20
21Fatal error: [snuffleupagus][disabled_function] Aborted execution on call of the function 'foo', because its argument 'arr' content (ARRAY) matched the rule '1' in %a/disabled_functions_param_array_r.php on line 3 \ No newline at end of file 21Fatal error: [snuffleupagus][0.0.0.0][disabled_function] Aborted execution on call of the function 'foo', because its argument 'arr' content (ARRAY) matched the rule '1' in %a/disabled_functions_param_array_r.php on line 3 \ No newline at end of file
diff --git a/src/tests/disable_function/disabled_functions_param_array_r_keys.phpt b/src/tests/disable_function/disabled_functions_param_array_r_keys.phpt
index 0748e92..3fdd398 100644
--- a/src/tests/disable_function/disabled_functions_param_array_r_keys.phpt
+++ b/src/tests/disable_function/disabled_functions_param_array_r_keys.phpt
@@ -18,4 +18,4 @@ foo($a);
18--EXPECTF-- 18--EXPECTF--
19cccc 19cccc
20 20
21Fatal error: [snuffleupagus][disabled_function] Aborted execution on call of the function 'foo', because its argument 'arr' content (ARRAY) matched the rule '2' in %a/disabled_functions_param_array_r_keys.php on line 3 \ No newline at end of file 21Fatal error: [snuffleupagus][0.0.0.0][disabled_function] Aborted execution on call of the function 'foo', because its argument 'arr' content (ARRAY) matched the rule '2' in %a/disabled_functions_param_array_r_keys.php on line 3 \ No newline at end of file
diff --git a/src/tests/disable_function/disabled_functions_param_array_several_levels.phpt b/src/tests/disable_function/disabled_functions_param_array_several_levels.phpt
index cbe845b..7d7d727 100644
--- a/src/tests/disable_function/disabled_functions_param_array_several_levels.phpt
+++ b/src/tests/disable_function/disabled_functions_param_array_several_levels.phpt
@@ -18,4 +18,4 @@ foo($a);
18--EXPECTF-- 18--EXPECTF--
19cccc 19cccc
20 20
21Fatal error: [snuffleupagus][disabled_function] Aborted execution on call of the function 'foo', because its argument '$arr' content (ARRAY) matched the rule '4' in %a/disabled_functions_param_array_several_levels.php on line 3 \ No newline at end of file 21Fatal error: [snuffleupagus][0.0.0.0][disabled_function] Aborted execution on call of the function 'foo', because its argument '$arr' content (ARRAY) matched the rule '4' in %a/disabled_functions_param_array_several_levels.php on line 3 \ No newline at end of file
diff --git a/src/tests/disable_function/disabled_functions_param_array_several_levels_int.phpt b/src/tests/disable_function/disabled_functions_param_array_several_levels_int.phpt
index d957acf..c22b912 100644
--- a/src/tests/disable_function/disabled_functions_param_array_several_levels_int.phpt
+++ b/src/tests/disable_function/disabled_functions_param_array_several_levels_int.phpt
@@ -18,4 +18,4 @@ foo($a);
18--EXPECTF-- 18--EXPECTF--
19cccc 19cccc
20 20
21Fatal error: [snuffleupagus][disabled_function] Aborted execution on call of the function 'foo', because its argument '$arr' content (ARRAY) matched the rule '4' in %a/disabled_functions_param_array_several_levels_int.php on line 3 \ No newline at end of file 21Fatal error: [snuffleupagus][0.0.0.0][disabled_function] Aborted execution on call of the function 'foo', because its argument '$arr' content (ARRAY) matched the rule '4' in %a/disabled_functions_param_array_several_levels_int.php on line 3 \ No newline at end of file
diff --git a/src/tests/disable_function/disabled_functions_param_array_several_levels_keys.phpt b/src/tests/disable_function/disabled_functions_param_array_several_levels_keys.phpt
index 59d27c0..f662d11 100644
--- a/src/tests/disable_function/disabled_functions_param_array_several_levels_keys.phpt
+++ b/src/tests/disable_function/disabled_functions_param_array_several_levels_keys.phpt
@@ -18,4 +18,4 @@ foo($a);
18--EXPECTF-- 18--EXPECTF--
19cccc 19cccc
20 20
21Fatal error: [snuffleupagus][disabled_function] Aborted execution on call of the function 'foo', because its argument '$arr' content (ARRAY) matched the rule '5' in %a/disabled_functions_param_array_several_levels_keys.php on line 3 \ No newline at end of file 21Fatal error: [snuffleupagus][0.0.0.0][disabled_function] Aborted execution on call of the function 'foo', because its argument '$arr' content (ARRAY) matched the rule '5' in %a/disabled_functions_param_array_several_levels_keys.php on line 3 \ No newline at end of file
diff --git a/src/tests/disable_function/disabled_functions_param_array_several_levels_keys_int.phpt b/src/tests/disable_function/disabled_functions_param_array_several_levels_keys_int.phpt
index 647c394..9ede4d8 100644
--- a/src/tests/disable_function/disabled_functions_param_array_several_levels_keys_int.phpt
+++ b/src/tests/disable_function/disabled_functions_param_array_several_levels_keys_int.phpt
@@ -18,4 +18,4 @@ foo($a);
18--EXPECTF-- 18--EXPECTF--
19cccc 19cccc
20 20
21Fatal error: [snuffleupagus][disabled_function] Aborted execution on call of the function 'foo', because its argument '$arr' content (ARRAY) matched the rule '6' in %a/disabled_functions_param_array_several_levels_keys_int.php on line 3 \ No newline at end of file 21Fatal error: [snuffleupagus][0.0.0.0][disabled_function] Aborted execution on call of the function 'foo', because its argument '$arr' content (ARRAY) matched the rule '6' in %a/disabled_functions_param_array_several_levels_keys_int.php on line 3 \ No newline at end of file
diff --git a/src/tests/disable_function/disabled_functions_param_broken_line.phpt b/src/tests/disable_function/disabled_functions_param_broken_line.phpt
index 4fc3c45..f7a379d 100644
--- a/src/tests/disable_function/disabled_functions_param_broken_line.phpt
+++ b/src/tests/disable_function/disabled_functions_param_broken_line.phpt
@@ -10,9 +10,9 @@ system("echo 1337");
10system("echo 1338"); 10system("echo 1338");
11?> 11?>
12--EXPECTF-- 12--EXPECTF--
13PHP Fatal error: [snuffleupagus][config] Failed to parse arg 'qwe' of `line` on line 1 in Unknown on line 0 13PHP Fatal error: [snuffleupagus][0.0.0.0][config] Failed to parse arg 'qwe' of `line` on line 1 in Unknown on line 0
14 14
15Fatal error: [snuffleupagus][config] Failed to parse arg 'qwe' of `line` on line 1 in Unknown on line 0 15Fatal error: [snuffleupagus][0.0.0.0][config] Failed to parse arg 'qwe' of `line` on line 1 in Unknown on line 0
16 16
17Fatal error: [snuffleupagus][config] Invalid configuration file in Unknown on line 0 17Fatal error: [snuffleupagus][0.0.0.0][config] Invalid configuration file in Unknown on line 0
18Could not startup. 18Could not startup.
diff --git a/src/tests/disable_function/disabled_functions_param_int.phpt b/src/tests/disable_function/disabled_functions_param_int.phpt
index e8b0a42..4fa87e1 100644
--- a/src/tests/disable_function/disabled_functions_param_int.phpt
+++ b/src/tests/disable_function/disabled_functions_param_int.phpt
@@ -19,4 +19,4 @@ foobar("10");
19--EXPECTF-- 19--EXPECTF--
201 201
21 21
22Fatal error: [snuffleupagus][disabled_function] Aborted execution on call of the function 'foobar', because its argument '$id' content (42) matched a rule in %a/disabled_functions_param_int.php on line 3 \ No newline at end of file 22Fatal error: [snuffleupagus][0.0.0.0][disabled_function] Aborted execution on call of the function 'foobar', because its argument '$id' content (42) matched a rule in %a/disabled_functions_param_int.php on line 3 \ No newline at end of file
diff --git a/src/tests/disable_function/disabled_functions_param_invalid_pos.phpt b/src/tests/disable_function/disabled_functions_param_invalid_pos.phpt
index c52443d..67da890 100644
--- a/src/tests/disable_function/disabled_functions_param_invalid_pos.phpt
+++ b/src/tests/disable_function/disabled_functions_param_invalid_pos.phpt
@@ -9,9 +9,9 @@ sp.configuration_file={PWD}/config/disabled_functions_invalid_pos.ini
9system("echo 1"); 9system("echo 1");
10?> 10?>
11--EXPECTF-- 11--EXPECTF--
12PHP Fatal error: [snuffleupagus][config] Failed to parse arg 'qwe' of `pos` on line 1 in Unknown on line 0 12PHP Fatal error: [snuffleupagus][0.0.0.0][config] Failed to parse arg 'qwe' of `pos` on line 1 in Unknown on line 0
13 13
14Fatal error: [snuffleupagus][config] Failed to parse arg 'qwe' of `pos` on line 1 in Unknown on line 0 14Fatal error: [snuffleupagus][0.0.0.0][config] Failed to parse arg 'qwe' of `pos` on line 1 in Unknown on line 0
15 15
16Fatal error: [snuffleupagus][config] Invalid configuration file in Unknown on line 0 16Fatal error: [snuffleupagus][0.0.0.0][config] Invalid configuration file in Unknown on line 0
17Could not startup. 17Could not startup.
diff --git a/src/tests/disable_function/disabled_functions_param_line.phpt b/src/tests/disable_function/disabled_functions_param_line.phpt
index 75bfedd..9d2daba 100644
--- a/src/tests/disable_function/disabled_functions_param_line.phpt
+++ b/src/tests/disable_function/disabled_functions_param_line.phpt
@@ -12,4 +12,4 @@ system("id");
12--EXPECTF-- 12--EXPECTF--
131337 131337
14 14
15Fatal error: [snuffleupagus][disabled_function] Aborted execution on call of the function 'system' in %a/disabled_functions_param_line.php on line 3 \ No newline at end of file 15Fatal error: [snuffleupagus][0.0.0.0][disabled_function] Aborted execution on call of the function 'system' in %a/disabled_functions_param_line.php on line 3 \ No newline at end of file
diff --git a/src/tests/disable_function/disabled_functions_param_pos.phpt b/src/tests/disable_function/disabled_functions_param_pos.phpt
index 348d34b..468c09e 100644
--- a/src/tests/disable_function/disabled_functions_param_pos.phpt
+++ b/src/tests/disable_function/disabled_functions_param_pos.phpt
@@ -9,6 +9,6 @@ sp.configuration_file={PWD}/config/disabled_functions_pos.ini
9system("id"); 9system("id");
10?> 10?>
11--EXPECTF-- 11--EXPECTF--
12Warning: [snuffleupagus][config] It seems that you wrote a rule filtering on the 1337th argument of the function 'system', but it takes only 1 arguments. Matching on _all_ arguments instead. in %a/disabled_functions_param_pos.php on line 2 12Warning: [snuffleupagus][0.0.0.0][config] It seems that you wrote a rule filtering on the 1337th argument of the function 'system', but it takes only 1 arguments. Matching on _all_ arguments instead. in %a/disabled_functions_param_pos.php on line 2
13 13
14Fatal error: [snuffleupagus][disabled_function] Aborted execution on call of the function 'system', because its argument 'command' content (id) matched a rule in %a/disabled_functions_param_pos.php on line %d 14Fatal error: [snuffleupagus][0.0.0.0][disabled_function] Aborted execution on call of the function 'system', because its argument 'command' content (id) matched a rule in %a/disabled_functions_param_pos.php on line %d
diff --git a/src/tests/disable_function/disabled_functions_param_pos2.phpt b/src/tests/disable_function/disabled_functions_param_pos2.phpt
index 7134fdd..a33ffe6 100644
--- a/src/tests/disable_function/disabled_functions_param_pos2.phpt
+++ b/src/tests/disable_function/disabled_functions_param_pos2.phpt
@@ -10,4 +10,4 @@ strtoupper("od");
10strtoupper("id"); 10strtoupper("id");
11?> 11?>
12--EXPECTF-- 12--EXPECTF--
13Fatal error: [snuffleupagus][disabled_function] Aborted execution on call of the function 'strtoupper', because its argument 'str' content (id) matched the rule 'strlen array' in %a/disabled_functions_param_pos2.php on line 3 \ No newline at end of file 13Fatal error: [snuffleupagus][0.0.0.0][disabled_function] Aborted execution on call of the function 'strtoupper', because its argument 'str' content (id) matched the rule 'strlen array' in %a/disabled_functions_param_pos2.php on line 3 \ No newline at end of file
diff --git a/src/tests/disable_function/disabled_functions_param_r.phpt b/src/tests/disable_function/disabled_functions_param_r.phpt
index 722f126..1f066b6 100644
--- a/src/tests/disable_function/disabled_functions_param_r.phpt
+++ b/src/tests/disable_function/disabled_functions_param_r.phpt
@@ -10,4 +10,4 @@ system("id");
10system("echo win"); 10system("echo win");
11?> 11?>
12--EXPECTF-- 12--EXPECTF--
13Fatal error: [snuffleupagus][disabled_function] Aborted execution on call of the function 'system', because its argument 'command' content (id) matched a rule in %a/disabled_functions_param_r.php on line 2 \ No newline at end of file 13Fatal error: [snuffleupagus][0.0.0.0][disabled_function] Aborted execution on call of the function 'system', because its argument 'command' content (id) matched a rule in %a/disabled_functions_param_r.php on line 2 \ No newline at end of file
diff --git a/src/tests/disable_function/disabled_functions_pos_type.phpt b/src/tests/disable_function/disabled_functions_pos_type.phpt
index 30aef8f..b033e8a 100644
--- a/src/tests/disable_function/disabled_functions_pos_type.phpt
+++ b/src/tests/disable_function/disabled_functions_pos_type.phpt
@@ -9,8 +9,8 @@ sp.configuration_file={PWD}/config/disabled_functions_pos.ini
9system([123, 456]); 9system([123, 456]);
10?> 10?>
11--EXPECTF-- 11--EXPECTF--
12Warning: [snuffleupagus][config] It seems that you wrote a rule filtering on the 1337th argument of the function 'system', but it takes only 1 arguments. Matching on _all_ arguments instead. in %a/disabled_functions_pos_type.php on line %d 12Warning: [snuffleupagus][0.0.0.0][config] It seems that you wrote a rule filtering on the 1337th argument of the function 'system', but it takes only 1 arguments. Matching on _all_ arguments instead. in %a/disabled_functions_pos_type.php on line %d
13 13
14Warning: [snuffleupagus][config] It seems that you wrote a rule filtering on the 1st argument of the function 'system', but it takes only 1 arguments. Matching on _all_ arguments instead. in %a/disabled_functions_pos_type.php on line %d 14Warning: [snuffleupagus][0.0.0.0][config] It seems that you wrote a rule filtering on the 1st argument of the function 'system', but it takes only 1 arguments. Matching on _all_ arguments instead. in %a/disabled_functions_pos_type.php on line %d
15 15
16Fatal error: [snuffleupagus][disabled_function] Aborted execution on call of the function 'system', because its argument 'command' content (?) matched the rule '1' in %a/disabled_functions_pos_type.php on line %d 16Fatal error: [snuffleupagus][0.0.0.0][disabled_function] Aborted execution on call of the function 'system', because its argument 'command' content (?) matched the rule '1' in %a/disabled_functions_pos_type.php on line %d
diff --git a/src/tests/disable_function/disabled_functions_regexp_multiple.phpt b/src/tests/disable_function/disabled_functions_regexp_multiple.phpt
index 5f68a00..e783c30 100644
--- a/src/tests/disable_function/disabled_functions_regexp_multiple.phpt
+++ b/src/tests/disable_function/disabled_functions_regexp_multiple.phpt
@@ -11,9 +11,9 @@ echo strcmp("1", "2") . "\n";
11print("After") . "\n"; 11print("After") . "\n";
12?> 12?>
13--EXPECTF-- 13--EXPECTF--
14Warning: [snuffleupagus][disabled_function] Aborted execution on call of the function 'strtoupper' in %a/disabled_functions_regexp_multiple.php on line 2 14Warning: [snuffleupagus][0.0.0.0][disabled_function] Aborted execution on call of the function 'strtoupper' in %a/disabled_functions_regexp_multiple.php on line 2
15ID 15ID
16 16
17Warning: [snuffleupagus][disabled_function] Aborted execution on call of the function 'strcmp' in %a/disabled_functions_regexp_multiple.php on line 3 17Warning: [snuffleupagus][0.0.0.0][disabled_function] Aborted execution on call of the function 'strcmp' in %a/disabled_functions_regexp_multiple.php on line 3
18-1 18-1
19After 19After
diff --git a/src/tests/disable_function/disabled_functions_register_shutdown_function.phpt b/src/tests/disable_function/disabled_functions_register_shutdown_function.phpt
index b6f1a10..623cadf 100644
--- a/src/tests/disable_function/disabled_functions_register_shutdown_function.phpt
+++ b/src/tests/disable_function/disabled_functions_register_shutdown_function.phpt
@@ -15,4 +15,4 @@ register_shutdown_function('my_super_function');
15--EXPECTF-- 15--EXPECTF--
161337 161337
17 17
18Fatal error: [snuffleupagus][disabled_function] Aborted execution on call of the function 'my_super_function' in %a/disabled_functions_register_shutdown_function.php on line 3 \ No newline at end of file 18Fatal error: [snuffleupagus][0.0.0.0][disabled_function] Aborted execution on call of the function 'my_super_function' in %a/disabled_functions_register_shutdown_function.php on line 3 \ No newline at end of file
diff --git a/src/tests/disable_function/disabled_functions_register_tick_function.phpt b/src/tests/disable_function/disabled_functions_register_tick_function.phpt
index 6e3fb6f..8e6331e 100644
--- a/src/tests/disable_function/disabled_functions_register_tick_function.phpt
+++ b/src/tests/disable_function/disabled_functions_register_tick_function.phpt
@@ -16,4 +16,4 @@ register_tick_function('my_super_function');
16--EXPECTF-- 16--EXPECTF--
171337 171337
18 18
19Fatal error: [snuffleupagus][disabled_function] Aborted execution on call of the function 'my_super_function' in %a/disabled_functions_register_tick_function.php on line 4 \ No newline at end of file 19Fatal error: [snuffleupagus][0.0.0.0][disabled_function] Aborted execution on call of the function 'my_super_function' in %a/disabled_functions_register_tick_function.php on line 4 \ No newline at end of file
diff --git a/src/tests/disable_function/disabled_functions_require.phpt b/src/tests/disable_function/disabled_functions_require.phpt
index 77dfbf5..af146d3 100644
--- a/src/tests/disable_function/disabled_functions_require.phpt
+++ b/src/tests/disable_function/disabled_functions_require.phpt
@@ -21,4 +21,4 @@ unlink($dir . '/test.meh');
21?> 21?>
22--EXPECTF-- 22--EXPECTF--
23BLA 23BLA
24Fatal error: [snuffleupagus][disabled_function] Aborted execution on call of the function 'require', because its argument 'inclusion path' content (%a/test.meh) matched a rule in %a/disabled_functions_require.php on line 6 24Fatal error: [snuffleupagus][0.0.0.0][disabled_function] Aborted execution on call of the function 'require', because its argument 'inclusion path' content (%a/test.meh) matched a rule in %a/disabled_functions_require.php on line 6
diff --git a/src/tests/disable_function/disabled_functions_require_once.phpt b/src/tests/disable_function/disabled_functions_require_once.phpt
index 84e93cd..cd09671 100644
--- a/src/tests/disable_function/disabled_functions_require_once.phpt
+++ b/src/tests/disable_function/disabled_functions_require_once.phpt
@@ -21,4 +21,4 @@ unlink($dir . '/test.meh');
21?> 21?>
22--EXPECTF-- 22--EXPECTF--
23BLA 23BLA
24Fatal error: [snuffleupagus][disabled_function] Aborted execution on call of the function 'require_once', because its argument 'inclusion path' content (%a/test.meh) matched a rule in %a/disabled_functions_require_once.php on line 6 24Fatal error: [snuffleupagus][0.0.0.0][disabled_function] Aborted execution on call of the function 'require_once', because its argument 'inclusion path' content (%a/test.meh) matched a rule in %a/disabled_functions_require_once.php on line 6
diff --git a/src/tests/disable_function/disabled_functions_require_simulation.phpt b/src/tests/disable_function/disabled_functions_require_simulation.phpt
index 6c97480..405bc18 100644
--- a/src/tests/disable_function/disabled_functions_require_simulation.phpt
+++ b/src/tests/disable_function/disabled_functions_require_simulation.phpt
@@ -22,6 +22,6 @@ unlink($dir . '/test.sim');
22--EXPECTF-- 22--EXPECTF--
23BLA 23BLA
24 24
25Warning: [snuffleupagus][disabled_function] Aborted execution on call of the function 'require', because its argument 'inclusion path' content (%a/test.sim) matched a rule in %a/disabled_functions_require_simulation.php on line 6 25Warning: [snuffleupagus][0.0.0.0][disabled_function] Aborted execution on call of the function 'require', because its argument 'inclusion path' content (%a/test.sim) matched a rule in %a/disabled_functions_require_simulation.php on line 6
26MEH 26MEH
271337 271337
diff --git a/src/tests/disable_function/disabled_functions_ret.phpt b/src/tests/disable_function/disabled_functions_ret.phpt
index 7c5d596..ab1b263 100644
--- a/src/tests/disable_function/disabled_functions_ret.phpt
+++ b/src/tests/disable_function/disabled_functions_ret.phpt
@@ -10,4 +10,4 @@ echo strpos("pouet", "p");
10echo stripos("pouet", "p"); 10echo stripos("pouet", "p");
11?> 11?>
12--EXPECTF-- 12--EXPECTF--
13Fatal error: [snuffleupagus][disabled_function] Aborted execution on return of the function 'strpos', because the function returned '0', which matched a rule in %a/disabled_functions_ret.php on line 2 \ No newline at end of file 13Fatal error: [snuffleupagus][0.0.0.0][disabled_function] Aborted execution on return of the function 'strpos', because the function returned '0', which matched a rule in %a/disabled_functions_ret.php on line 2 \ No newline at end of file
diff --git a/src/tests/disable_function/disabled_functions_ret2.phpt b/src/tests/disable_function/disabled_functions_ret2.phpt
index e32c585..1f3b02d 100644
--- a/src/tests/disable_function/disabled_functions_ret2.phpt
+++ b/src/tests/disable_function/disabled_functions_ret2.phpt
@@ -9,4 +9,4 @@ sp.configuration_file={PWD}/config/disabled_functions_ret.ini
9echo stripos("pouet", "p"); 9echo stripos("pouet", "p");
10?> 10?>
11--EXPECTF-- 11--EXPECTF--
12Fatal error: [snuffleupagus][disabled_function] Aborted execution on return of the function 'stripos', because the function returned '0', which matched a rule in %a/disabled_functions_ret2.php on line 2 \ No newline at end of file 12Fatal error: [snuffleupagus][0.0.0.0][disabled_function] Aborted execution on return of the function 'stripos', because the function returned '0', which matched a rule in %a/disabled_functions_ret2.php on line 2 \ No newline at end of file
diff --git a/src/tests/disable_function/disabled_functions_ret3.phpt b/src/tests/disable_function/disabled_functions_ret3.phpt
index dc60c43..aa2d7d2 100644
--- a/src/tests/disable_function/disabled_functions_ret3.phpt
+++ b/src/tests/disable_function/disabled_functions_ret3.phpt
@@ -20,4 +20,4 @@ echo("We're at the end of the execution.\n");
20--EXPECTF-- 20--EXPECTF--
21We're in function `a`. 21We're in function `a`.
22 22
23Fatal error: [snuffleupagus][disabled_function] Aborted execution on return of the function 'Bob::a', because the function returned '2', which matched a rule in %a/disabled_functions_ret3.php on line 9 \ No newline at end of file 23Fatal error: [snuffleupagus][0.0.0.0][disabled_function] Aborted execution on return of the function 'Bob::a', because the function returned '2', which matched a rule in %a/disabled_functions_ret3.php on line 9 \ No newline at end of file
diff --git a/src/tests/disable_function/disabled_functions_ret_right_hash.phpt b/src/tests/disable_function/disabled_functions_ret_right_hash.phpt
index 1307172..b306fb9 100644
--- a/src/tests/disable_function/disabled_functions_ret_right_hash.phpt
+++ b/src/tests/disable_function/disabled_functions_ret_right_hash.phpt
@@ -11,4 +11,4 @@ system("echo $((1 + 1336))");
11--EXPECTF-- 11--EXPECTF--
121337 121337
13 13
14Fatal error: [snuffleupagus][disabled_function] Aborted execution on return of the function 'system', because the function returned '1337', which matched a rule in %a/disabled_functions_ret_right_hash.php on line 2 \ No newline at end of file 14Fatal error: [snuffleupagus][0.0.0.0][disabled_function] Aborted execution on return of the function 'system', because the function returned '1337', which matched a rule in %a/disabled_functions_ret_right_hash.php on line 2 \ No newline at end of file
diff --git a/src/tests/disable_function/disabled_functions_ret_simulation.phpt b/src/tests/disable_function/disabled_functions_ret_simulation.phpt
index bd4cea0..70691ee 100644
--- a/src/tests/disable_function/disabled_functions_ret_simulation.phpt
+++ b/src/tests/disable_function/disabled_functions_ret_simulation.phpt
@@ -11,10 +11,10 @@ echo stripos("pouet", "p") . "\n";
11strcmp("p", "p") . "\n"; 11strcmp("p", "p") . "\n";
12?> 12?>
13--EXPECTF-- 13--EXPECTF--
14Warning: [snuffleupagus][disabled_function] Aborted execution on return of the function 'strpos', because the function returned '0', which matched a rule in %a/disabled_functions_ret_simulation.php on line 2 14Warning: [snuffleupagus][0.0.0.0][disabled_function] Aborted execution on return of the function 'strpos', because the function returned '0', which matched a rule in %a/disabled_functions_ret_simulation.php on line 2
150 150
16 16
17Warning: [snuffleupagus][disabled_function] Aborted execution on return of the function 'stripos', because the function returned '0', which matched the rule '1' in %a/disabled_functions_ret_simulation.php on line 3 17Warning: [snuffleupagus][0.0.0.0][disabled_function] Aborted execution on return of the function 'stripos', because the function returned '0', which matched the rule '1' in %a/disabled_functions_ret_simulation.php on line 3
180 180
19 19
20Fatal error: [snuffleupagus][disabled_function] Aborted execution on return of the function 'strcmp', because the function returned '0', which matched a rule in %a/disabled_functions_ret_simulation.php on line 4 \ No newline at end of file 20Fatal error: [snuffleupagus][0.0.0.0][disabled_function] Aborted execution on return of the function 'strcmp', because the function returned '0', which matched a rule in %a/disabled_functions_ret_simulation.php on line 4 \ No newline at end of file
diff --git a/src/tests/disable_function/disabled_functions_ret_type.phpt b/src/tests/disable_function/disabled_functions_ret_type.phpt
index 88401ca..9679f01 100644
--- a/src/tests/disable_function/disabled_functions_ret_type.phpt
+++ b/src/tests/disable_function/disabled_functions_ret_type.phpt
@@ -14,4 +14,4 @@ echo strpos("pouet", "123");
14int(0) 14int(0)
151337 151337
16 16
17Fatal error: [snuffleupagus][disabled_function] Aborted execution on return of the function 'strpos', because the function returned 'FALSE', which matched the rule 'Return value is FALSE' in %a/disabled_functions_ret_type.php on line 4 \ No newline at end of file 17Fatal error: [snuffleupagus][0.0.0.0][disabled_function] Aborted execution on return of the function 'strpos', because the function returned 'FALSE', which matched the rule 'Return value is FALSE' in %a/disabled_functions_ret_type.php on line 4 \ No newline at end of file
diff --git a/src/tests/disable_function/disabled_functions_ret_type_array.phpt b/src/tests/disable_function/disabled_functions_ret_type_array.phpt
index 3ceac9e..1b20e53 100644
--- a/src/tests/disable_function/disabled_functions_ret_type_array.phpt
+++ b/src/tests/disable_function/disabled_functions_ret_type_array.phpt
@@ -9,4 +9,4 @@ sp.configuration_file={PWD}/config/disabled_functions_ret_type_array.ini
9echo get_loaded_extensions(); 9echo get_loaded_extensions();
10?> 10?>
11--EXPECTF-- 11--EXPECTF--
12Fatal error: [snuffleupagus][disabled_function] Aborted execution on return of the function 'get_loaded_extensions', because the function returned 'ARRAY', which matched the rule 'Return value is an array' in %a/disabled_functions_ret_type_array.php on line 2 \ No newline at end of file 12Fatal error: [snuffleupagus][0.0.0.0][disabled_function] Aborted execution on return of the function 'get_loaded_extensions', because the function returned 'ARRAY', which matched the rule 'Return value is an array' in %a/disabled_functions_ret_type_array.php on line 2 \ No newline at end of file
diff --git a/src/tests/disable_function/disabled_functions_ret_type_double.phpt b/src/tests/disable_function/disabled_functions_ret_type_double.phpt
index b0e895c..1810b88 100644
--- a/src/tests/disable_function/disabled_functions_ret_type_double.phpt
+++ b/src/tests/disable_function/disabled_functions_ret_type_double.phpt
@@ -9,4 +9,4 @@ sp.configuration_file={PWD}/config/disabled_functions_ret_type_double.ini
9echo cos(0.5) . "\n"; 9echo cos(0.5) . "\n";
10?> 10?>
11--EXPECTF-- 11--EXPECTF--
12Fatal error: [snuffleupagus][disabled_function] Aborted execution on return of the function 'cos', because the function returned '0.877583', which matched the rule 'Return value is a double' in %a/disabled_functions_ret_type_double.php on line 2 \ No newline at end of file 12Fatal error: [snuffleupagus][0.0.0.0][disabled_function] Aborted execution on return of the function 'cos', because the function returned '0.877583', which matched the rule 'Return value is a double' in %a/disabled_functions_ret_type_double.php on line 2 \ No newline at end of file
diff --git a/src/tests/disable_function/disabled_functions_ret_type_long.phpt b/src/tests/disable_function/disabled_functions_ret_type_long.phpt
index cc78299..c5c9e38 100644
--- a/src/tests/disable_function/disabled_functions_ret_type_long.phpt
+++ b/src/tests/disable_function/disabled_functions_ret_type_long.phpt
@@ -9,4 +9,4 @@ sp.configuration_file={PWD}/config/disabled_functions_ret_type_long.ini
9echo strpos("pouet", "o") . "\n"; 9echo strpos("pouet", "o") . "\n";
10?> 10?>
11--EXPECTF-- 11--EXPECTF--
12Fatal error: [snuffleupagus][disabled_function] Aborted execution on return of the function 'strpos', because the function returned '1', which matched the rule 'Return value is a long' in %a/disabled_functions_ret_type_long.php on line 2 12Fatal error: [snuffleupagus][0.0.0.0][disabled_function] Aborted execution on return of the function 'strpos', because the function returned '1', which matched the rule 'Return value is a long' in %a/disabled_functions_ret_type_long.php on line 2
diff --git a/src/tests/disable_function/disabled_functions_ret_type_null.phpt b/src/tests/disable_function/disabled_functions_ret_type_null.phpt
index 894b3f5..b245a95 100644
--- a/src/tests/disable_function/disabled_functions_ret_type_null.phpt
+++ b/src/tests/disable_function/disabled_functions_ret_type_null.phpt
@@ -13,4 +13,4 @@ function my_function() {
13var_dump(my_function()); 13var_dump(my_function());
14?> 14?>
15--EXPECTF-- 15--EXPECTF--
16Fatal error: [snuffleupagus][disabled_function] Aborted execution on return of the function 'my_function', because the function returned 'NULL', which matched the rule 'Return value is null' in %a/disabled_functions_ret_type_null.php on line 6 \ No newline at end of file 16Fatal error: [snuffleupagus][0.0.0.0][disabled_function] Aborted execution on return of the function 'my_function', because the function returned 'NULL', which matched the rule 'Return value is null' in %a/disabled_functions_ret_type_null.php on line 6 \ No newline at end of file
diff --git a/src/tests/disable_function/disabled_functions_ret_type_object.phpt b/src/tests/disable_function/disabled_functions_ret_type_object.phpt
index 171cd4b..a4d1c9a 100644
--- a/src/tests/disable_function/disabled_functions_ret_type_object.phpt
+++ b/src/tests/disable_function/disabled_functions_ret_type_object.phpt
@@ -13,4 +13,4 @@ $var = a();
13echo "fail"; 13echo "fail";
14?> 14?>
15--EXPECTF-- 15--EXPECTF--
16Fatal error: [snuffleupagus][disabled_function] Aborted execution on return of the function 'a', because the function returned 'OBJECT', which matched a rule in %a/disabled_functions_ret_type_object.php on line 5 \ No newline at end of file 16Fatal error: [snuffleupagus][0.0.0.0][disabled_function] Aborted execution on return of the function 'a', because the function returned 'OBJECT', which matched a rule in %a/disabled_functions_ret_type_object.php on line 5 \ No newline at end of file
diff --git a/src/tests/disable_function/disabled_functions_ret_type_resource.phpt b/src/tests/disable_function/disabled_functions_ret_type_resource.phpt
index 4ae38b6..67ae2a6 100644
--- a/src/tests/disable_function/disabled_functions_ret_type_resource.phpt
+++ b/src/tests/disable_function/disabled_functions_ret_type_resource.phpt
@@ -9,4 +9,4 @@ sp.configuration_file={PWD}/config/disabled_functions_ret_type_resource.ini
9echo fopen("/etc/passwd", "r"); 9echo fopen("/etc/passwd", "r");
10?> 10?>
11--EXPECTF-- 11--EXPECTF--
12Fatal error: [snuffleupagus][disabled_function] Aborted execution on return of the function 'fopen', because the function returned 'RESOURCE', which matched the rule 'Return value is a resource' in %a/disabled_functions_ret_type_resource.php on line 2 \ No newline at end of file 12Fatal error: [snuffleupagus][0.0.0.0][disabled_function] Aborted execution on return of the function 'fopen', because the function returned 'RESOURCE', which matched the rule 'Return value is a resource' in %a/disabled_functions_ret_type_resource.php on line 2 \ No newline at end of file
diff --git a/src/tests/disable_function/disabled_functions_ret_type_str.phpt b/src/tests/disable_function/disabled_functions_ret_type_str.phpt
index 356ff43..0dcdaaa 100644
--- a/src/tests/disable_function/disabled_functions_ret_type_str.phpt
+++ b/src/tests/disable_function/disabled_functions_ret_type_str.phpt
@@ -9,4 +9,4 @@ sp.configuration_file={PWD}/config/disabled_functions_ret_type_str.ini
9echo substr("pouet", 3) . "\n"; 9echo substr("pouet", 3) . "\n";
10?> 10?>
11--EXPECTF-- 11--EXPECTF--
12Fatal error: [snuffleupagus][disabled_function] Aborted execution on return of the function 'substr', because the function returned 'et', which matched the rule 'Return value is a string' in %a/disabled_functions_ret_type_str.php on line 2 \ No newline at end of file 12Fatal error: [snuffleupagus][0.0.0.0][disabled_function] Aborted execution on return of the function 'substr', because the function returned 'et', which matched the rule 'Return value is a string' in %a/disabled_functions_ret_type_str.php on line 2 \ No newline at end of file
diff --git a/src/tests/disable_function/disabled_functions_ret_type_true.phpt b/src/tests/disable_function/disabled_functions_ret_type_true.phpt
index 8ddb1f7..6a4749a 100644
--- a/src/tests/disable_function/disabled_functions_ret_type_true.phpt
+++ b/src/tests/disable_function/disabled_functions_ret_type_true.phpt
@@ -14,4 +14,4 @@ echo is_numeric("1234") . "\n";
14bool(false) 14bool(false)
151337 151337
16 16
17Fatal error: [snuffleupagus][disabled_function] Aborted execution on return of the function 'is_numeric', because the function returned 'TRUE', which matched the rule 'Return value is a true' in %a/disabled_functions_ret_type_true.php on line 4 \ No newline at end of file 17Fatal error: [snuffleupagus][0.0.0.0][disabled_function] Aborted execution on return of the function 'is_numeric', because the function returned 'TRUE', which matched the rule 'Return value is a true' in %a/disabled_functions_ret_type_true.php on line 4 \ No newline at end of file
diff --git a/src/tests/disable_function/disabled_functions_ret_user.phpt b/src/tests/disable_function/disabled_functions_ret_user.phpt
index 8caa9bd..989a7ab 100644
--- a/src/tests/disable_function/disabled_functions_ret_user.phpt
+++ b/src/tests/disable_function/disabled_functions_ret_user.phpt
@@ -13,4 +13,4 @@ qwe();
13echo 1; 13echo 1;
14?> 14?>
15--EXPECTF-- 15--EXPECTF--
16Fatal error: [snuffleupagus][disabled_function] Aborted execution on return of the function 'qwe', because the function returned 'asd', which matched a rule in %a/disabled_functions_ret_user.php on line %d 16Fatal error: [snuffleupagus][0.0.0.0][disabled_function] Aborted execution on return of the function 'qwe', because the function returned 'asd', which matched a rule in %a/disabled_functions_ret_user.php on line %d
diff --git a/src/tests/disable_function/disabled_functions_ret_user_used.phpt b/src/tests/disable_function/disabled_functions_ret_user_used.phpt
index 5857905..05e1323 100644
--- a/src/tests/disable_function/disabled_functions_ret_user_used.phpt
+++ b/src/tests/disable_function/disabled_functions_ret_user_used.phpt
@@ -12,4 +12,4 @@ function qwe() {
12echo qwe(); 12echo qwe();
13?> 13?>
14--EXPECTF-- 14--EXPECTF--
15Fatal error: [snuffleupagus][disabled_function] Aborted execution on return of the function 'qwe', because the function returned 'asd', which matched a rule in %a/disabled_functions_ret_user_used.php on line %d 15Fatal error: [snuffleupagus][0.0.0.0][disabled_function] Aborted execution on return of the function 'qwe', because the function returned 'asd', which matched a rule in %a/disabled_functions_ret_user_used.php on line %d
diff --git a/src/tests/disable_function/disabled_functions_ret_val.phpt b/src/tests/disable_function/disabled_functions_ret_val.phpt
index 40a3be9..a914c56 100644
--- a/src/tests/disable_function/disabled_functions_ret_val.phpt
+++ b/src/tests/disable_function/disabled_functions_ret_val.phpt
@@ -12,4 +12,4 @@ echo str_repeat("fufufu",1);
12--EXPECTF-- 12--EXPECTF--
13fufu 13fufu
14 14
15Fatal error: [snuffleupagus][disabled_function] Aborted execution on return of the function 'str_repeat', because the function returned 'fufufu', which matched a rule in %a/disabled_functions_ret_val.php on line 3 \ No newline at end of file 15Fatal error: [snuffleupagus][0.0.0.0][disabled_function] Aborted execution on return of the function 'str_repeat', because the function returned 'fufufu', which matched a rule in %a/disabled_functions_ret_val.php on line 3 \ No newline at end of file
diff --git a/src/tests/disable_function/disabled_functions_ret_val_dump.phpt b/src/tests/disable_function/disabled_functions_ret_val_dump.phpt
index 51e4f29..c8fb2c3 100644
--- a/src/tests/disable_function/disabled_functions_ret_val_dump.phpt
+++ b/src/tests/disable_function/disabled_functions_ret_val_dump.phpt
@@ -20,4 +20,4 @@ echo str_repeat("fufufu",1);
20--EXPECTF-- 20--EXPECTF--
21fufu 21fufu
22 22
23Fatal error: [snuffleupagus][disabled_function] Aborted execution on return of the function 'str_repeat', because the function returned 'fufufu', which matched a rule in %a/disabled_functions_ret_val_dump.php on line 3 23Fatal error: [snuffleupagus][0.0.0.0][disabled_function] Aborted execution on return of the function 'str_repeat', because the function returned 'fufufu', which matched a rule in %a/disabled_functions_ret_val_dump.php on line 3
diff --git a/src/tests/disable_function/disabled_functions_ret_val_rx.phpt b/src/tests/disable_function/disabled_functions_ret_val_rx.phpt
index ba06649..9623ef4 100644
--- a/src/tests/disable_function/disabled_functions_ret_val_rx.phpt
+++ b/src/tests/disable_function/disabled_functions_ret_val_rx.phpt
@@ -12,4 +12,4 @@ echo str_repeat("fufufu",1);
12--EXPECTF-- 12--EXPECTF--
13fufu 13fufu
14 14
15Fatal error: [snuffleupagus][disabled_function] Aborted execution on return of the function 'str_repeat', because the function returned 'fufufu', which matched a rule in %a/disabled_functions_ret_val_rx.php on line 3 \ No newline at end of file 15Fatal error: [snuffleupagus][0.0.0.0][disabled_function] Aborted execution on return of the function 'str_repeat', because the function returned 'fufufu', which matched a rule in %a/disabled_functions_ret_val_rx.php on line 3 \ No newline at end of file
diff --git a/src/tests/disable_function/disabled_functions_runtime.phpt b/src/tests/disable_function/disabled_functions_runtime.phpt
index 4ba1a53..cd6f44d 100644
--- a/src/tests/disable_function/disabled_functions_runtime.phpt
+++ b/src/tests/disable_function/disabled_functions_runtime.phpt
@@ -29,4 +29,4 @@ unlink("file_to_include2.php");
29--EXPECTF-- 29--EXPECTF--
301338 301338
31 31
32Fatal error: [snuffleupagus][disabled_function] Aborted execution on call of the function 'test', because its argument '$param' content (1337) matched a rule in %a/src/file_to_include%d.php on line 1 32Fatal error: [snuffleupagus][0.0.0.0][disabled_function] Aborted execution on call of the function 'test', because its argument '$param' content (1337) matched a rule in %a/src/file_to_include%d.php on line 1
diff --git a/src/tests/disable_function/disabled_functions_upper.phpt b/src/tests/disable_function/disabled_functions_upper.phpt
index 8fa8ea3..f7cdcbb 100644
--- a/src/tests/disable_function/disabled_functions_upper.phpt
+++ b/src/tests/disable_function/disabled_functions_upper.phpt
@@ -13,4 +13,4 @@ vaR_DUmp("this is a super test");
13echo sTRPOs("pouet", "o"); 13echo sTRPOs("pouet", "o");
14?> 14?>
15--EXPECTF-- 15--EXPECTF--
16Fatal error: [snuffleupagus][disabled_function] Aborted execution on call of the function 'system' in %a/disabled_functions_upper.php on line 2 \ No newline at end of file 16Fatal error: [snuffleupagus][0.0.0.0][disabled_function] Aborted execution on call of the function 'system' in %a/disabled_functions_upper.php on line 2 \ No newline at end of file
diff --git a/src/tests/disable_function/disabled_functions_variadic.phpt b/src/tests/disable_function/disabled_functions_variadic.phpt
index 95d308e..32b6b0e 100644
--- a/src/tests/disable_function/disabled_functions_variadic.phpt
+++ b/src/tests/disable_function/disabled_functions_variadic.phpt
@@ -13,6 +13,6 @@ function foo(...$b) {
13echo foo(5, 4, 3, 2, 1); 13echo foo(5, 4, 3, 2, 1);
14?> 14?>
15--EXPECTF-- 15--EXPECTF--
16Warning: [snuffleupagus][disable_function] Snuffleupagus doesn't support variadic functions yet, sorry. Check https://github.com/nbs-system/snuffleupagus/issues/164 for details. in %a/disabled_functions_variadic.php on line %d 16Warning: [snuffleupagus][0.0.0.0][disable_function] Snuffleupagus doesn't support variadic functions yet, sorry. Check https://github.com/jvoisin/snuffleupagus/issues/164 for details. in %a/disabled_functions_variadic.php on line %d
17 17
18Fatal error: [snuffleupagus][disabled_function] Aborted execution on call of the function 'foo' in %a/disabled_functions_variadic.php on line %d 18Fatal error: [snuffleupagus][0.0.0.0][disabled_function] Aborted execution on call of the function 'foo' in %a/disabled_functions_variadic.php on line %d
diff --git a/src/tests/disable_function/disabled_functions_zero_cidr.phpt b/src/tests/disable_function/disabled_functions_zero_cidr.phpt
index 4e5f930..0ec596c 100644
--- a/src/tests/disable_function/disabled_functions_zero_cidr.phpt
+++ b/src/tests/disable_function/disabled_functions_zero_cidr.phpt
@@ -14,4 +14,4 @@ system("echo 42");
14printf("1337"); 14printf("1337");
15?> 15?>
16--EXPECTF-- 16--EXPECTF--
17Fatal error: [snuffleupagus][disabled_function] Aborted execution on call of the function 'system' in %a/disabled_functions_zero_cidr.php on line 2 \ No newline at end of file 17Fatal error: [snuffleupagus][127.0.0.1][disabled_function] Aborted execution on call of the function 'system' in %a/disabled_functions_zero_cidr.php on line 2 \ No newline at end of file
diff --git a/src/tests/disable_function/disabled_native_functions_indirect.phpt b/src/tests/disable_function/disabled_native_functions_indirect.phpt
index ba355d6..bcbb1eb 100644
--- a/src/tests/disable_function/disabled_native_functions_indirect.phpt
+++ b/src/tests/disable_function/disabled_native_functions_indirect.phpt
@@ -9,4 +9,4 @@ sp.configuration_file={PWD}/config/disabled_functions.ini
9array_map('system', [1,2,3,4]); 9array_map('system', [1,2,3,4]);
10?> 10?>
11--EXPECTF-- 11--EXPECTF--
12Fatal error: [snuffleupagus][disabled_function] Aborted execution on call of the function 'system' in %a/disabled_native_functions_indirect.php on line 2 \ No newline at end of file 12Fatal error: [snuffleupagus][0.0.0.0][disabled_function] Aborted execution on call of the function 'system' in %a/disabled_native_functions_indirect.php on line 2 \ No newline at end of file
diff --git a/src/tests/disable_function/disabled_user_functions.phpt b/src/tests/disable_function/disabled_user_functions.phpt
index 9c17b79..66303ec 100644
--- a/src/tests/disable_function/disabled_user_functions.phpt
+++ b/src/tests/disable_function/disabled_user_functions.phpt
@@ -12,4 +12,4 @@ function my_super_function() {
12my_super_function(); 12my_super_function();
13?> 13?>
14--EXPECTF-- 14--EXPECTF--
15Fatal error: [snuffleupagus][disabled_function] Aborted execution on call of the function 'my_super_function' in %a/disabled_user_functions.php on line 3 \ No newline at end of file 15Fatal error: [snuffleupagus][0.0.0.0][disabled_function] Aborted execution on call of the function 'my_super_function' in %a/disabled_user_functions.php on line 3 \ No newline at end of file
diff --git a/src/tests/disable_function/disabled_user_functions_indirect.phpt b/src/tests/disable_function/disabled_user_functions_indirect.phpt
index f663ded..6631866 100644
--- a/src/tests/disable_function/disabled_user_functions_indirect.phpt
+++ b/src/tests/disable_function/disabled_user_functions_indirect.phpt
@@ -12,4 +12,4 @@ function my_super_function() {
12array_map('my_super_function', [1,2,3,4]); 12array_map('my_super_function', [1,2,3,4]);
13?> 13?>
14--EXPECTF-- 14--EXPECTF--
15Fatal error: [snuffleupagus][disabled_function] Aborted execution on call of the function 'my_super_function' in %a/disabled_user_functions_indirect.php on line 3 \ No newline at end of file 15Fatal error: [snuffleupagus][0.0.0.0][disabled_function] Aborted execution on call of the function 'my_super_function' in %a/disabled_user_functions_indirect.php on line 3 \ No newline at end of file
diff --git a/src/tests/disable_function/noncore_function_hooking.phpt b/src/tests/disable_function/noncore_function_hooking.phpt
index 52bb114..a1639e5 100644
--- a/src/tests/disable_function/noncore_function_hooking.phpt
+++ b/src/tests/disable_function/noncore_function_hooking.phpt
@@ -12,4 +12,4 @@ function custom_fun($a) {
12custom_fun("hello"); 12custom_fun("hello");
13?> 13?>
14--EXPECTF-- 14--EXPECTF--
15Fatal error: [snuffleupagus][disabled_function] Aborted execution on call of the function 'custom_fun' in %a/noncore_function_hooking.php on line 3 \ No newline at end of file 15Fatal error: [snuffleupagus][0.0.0.0][disabled_function] Aborted execution on call of the function 'custom_fun' in %a/noncore_function_hooking.php on line 3 \ No newline at end of file
diff --git a/src/tests/dump_request/dump_eval_blacklist.phpt b/src/tests/dump_request/dump_eval_blacklist.phpt
index 459a584..f3c0b2b 100644
--- a/src/tests/dump_request/dump_eval_blacklist.phpt
+++ b/src/tests/dump_request/dump_eval_blacklist.phpt
@@ -36,5 +36,5 @@ if ($res[2] != "GET:get_a='data_get_a' get_b='data_get_b' \n") {
36--EXPECTF-- 36--EXPECTF--
37Outside of eval: 1337 1337 1337 37Outside of eval: 1337 1337 1337
38 38
39Warning: [snuffleupagus][eval] A call to strtoupper was tried in eval, in %a/dump_eval_blacklist.php:1, logging it. in %a/dump_eval_blacklist.php(9) : eval()'d code on line 1 39Warning: [snuffleupagus][0.0.0.0][eval] A call to strtoupper was tried in eval, in %a/dump_eval_blacklist.php:1, logging it. in %a/dump_eval_blacklist.php(9) : eval()'d code on line 1
40After eval: 1234 40After eval: 1234
diff --git a/src/tests/dump_request/dump_eval_whitelist.phpt b/src/tests/dump_request/dump_eval_whitelist.phpt
index 88bfcf6..d4f5305 100644
--- a/src/tests/dump_request/dump_eval_whitelist.phpt
+++ b/src/tests/dump_request/dump_eval_whitelist.phpt
@@ -48,5 +48,5 @@ if ($res[2] != "GET:get_a='data_get_a' get_b='data_get_b' \n") {
48Outside of eval: my_fun: 1337 1337 1337 48Outside of eval: my_fun: 1337 1337 1337
49After allowed eval: my_fun: 1234 49After allowed eval: my_fun: 1234
50 50
51Warning: [snuffleupagus][Eval_whitelist] The function 'my_other_fun' isn't in the eval whitelist, logging its call. in %a/dump_eval_whitelist.php on line 12 51Warning: [snuffleupagus][0.0.0.0][Eval_whitelist] The function 'my_other_fun' isn't in the eval whitelist, logging its call. in %a/dump_eval_whitelist.php on line 12
52After eval: my_other_fun: 1234 52After eval: my_other_fun: 1234
diff --git a/src/tests/dump_request/dump_request.phpt b/src/tests/dump_request/dump_request.phpt
index dae1dd7..8e174f8 100644
--- a/src/tests/dump_request/dump_request.phpt
+++ b/src/tests/dump_request/dump_request.phpt
@@ -40,5 +40,5 @@ if ($res[2] != "GET:get_a='data_get_a' get_b='data_get_b' \n") {
40--EXPECTF-- 40--EXPECTF--
411 411
42 42
43Warning: [snuffleupagus][disabled_function] Aborted execution on call of the function 'system' in %a/dump_request.php on line 7 43Warning: [snuffleupagus][0.0.0.0][disabled_function] Aborted execution on call of the function 'system' in %a/dump_request.php on line 7
441337 441337
diff --git a/src/tests/dump_request/dump_request_invalid_folder.phpt b/src/tests/dump_request/dump_request_invalid_folder.phpt
index 3d1ce10..79a1935 100644
--- a/src/tests/dump_request/dump_request_invalid_folder.phpt
+++ b/src/tests/dump_request/dump_request_invalid_folder.phpt
@@ -21,6 +21,6 @@ echo "2\n";
21--EXPECTF-- 21--EXPECTF--
221 221
23 23
24Warning: [snuffleupagus][request_logging] Unable to create the folder '/root/NON_EXISTENT/FOLDER/PLEASE/' in %a/dump_request_invalid_folder.php on line %d 24Warning: [snuffleupagus][0.0.0.0][request_logging] Unable to create the folder '/root/NON_EXISTENT/FOLDER/PLEASE/' in %a/dump_request_invalid_folder.php on line %d
25 25
26Fatal error: [snuffleupagus][disabled_function] Aborted execution on call of the function 'system' in %a/dump_request_invalid_folder.php on line %d 26Fatal error: [snuffleupagus][0.0.0.0][disabled_function] Aborted execution on call of the function 'system' in %a/dump_request_invalid_folder.php on line %d
diff --git a/src/tests/dump_request/dump_request_nonwriteable_folder.phpt b/src/tests/dump_request/dump_request_nonwriteable_folder.phpt
index 8052bc3..5292467 100644
--- a/src/tests/dump_request/dump_request_nonwriteable_folder.phpt
+++ b/src/tests/dump_request/dump_request_nonwriteable_folder.phpt
@@ -33,6 +33,6 @@ echo "2\n";
33--EXPECTF-- 33--EXPECTF--
341 341
35 35
36Warning: [snuffleupagus][request_logging] Unable to open %a: Permission denied in %a/dump_request_nonwriteable_folder.php on line %d 36Warning: [snuffleupagus][0.0.0.0][request_logging] Unable to open %a: Permission denied in %a/dump_request_nonwriteable_folder.php on line %d
37 37
38Fatal error: [snuffleupagus][disabled_function] Aborted execution on call of the function 'system' in %a/dump_request_nonwriteable_folder.php on line 3 38Fatal error: [snuffleupagus][0.0.0.0][disabled_function] Aborted execution on call of the function 'system' in %a/dump_request_nonwriteable_folder.php on line 3
diff --git a/src/tests/dump_request/dump_request_too_big.phpt b/src/tests/dump_request/dump_request_too_big.phpt
index 48cb1c5..6a3f590 100644
--- a/src/tests/dump_request/dump_request_too_big.phpt
+++ b/src/tests/dump_request/dump_request_too_big.phpt
@@ -40,5 +40,5 @@ if ($res[2] != "GET:get_a='data_get_a' get_b='data_get_b' get_c='aaaaaaaaaaaaaaa
40--EXPECTF-- 40--EXPECTF--
411 411
42 42
43Warning: [snuffleupagus][disabled_function] Aborted execution on call of the function 'system' in %a/dump_request_too_big.php on line 8 43Warning: [snuffleupagus][127.0.0.1][disabled_function] Aborted execution on call of the function 'system' in %a/dump_request_too_big.php on line 8
441337 441337
diff --git a/src/tests/dump_request/dump_segfault1.phpt b/src/tests/dump_request/dump_segfault1.phpt
index bb35aa6..27f8af8 100644
--- a/src/tests/dump_request/dump_segfault1.phpt
+++ b/src/tests/dump_request/dump_segfault1.phpt
@@ -9,4 +9,4 @@ sp.configuration_file={PWD}/config/config_dump_segfault1.ini
9echo strpos("pouet", "p") . "\n"; 9echo strpos("pouet", "p") . "\n";
10?> 10?>
11--EXPECTF-- 11--EXPECTF--
12Fatal error: [snuffleupagus][disabled_function] Aborted execution on return of the function 'strpos', because the function returned '0', which matched the rule 'test' in %a/dump_segfault1.php on line 2 \ No newline at end of file 12Fatal error: [snuffleupagus][0.0.0.0][disabled_function] Aborted execution on return of the function 'strpos', because the function returned '0', which matched the rule 'test' in %a/dump_segfault1.php on line 2 \ No newline at end of file
diff --git a/src/tests/eval_blacklist/eval_backlist.phpt b/src/tests/eval_blacklist/eval_backlist.phpt
index 1dbe887..67643d7 100644
--- a/src/tests/eval_blacklist/eval_backlist.phpt
+++ b/src/tests/eval_blacklist/eval_backlist.phpt
@@ -14,4 +14,4 @@ echo "After eval: $a\n";
14--EXPECTF-- 14--EXPECTF--
15Outside of eval: 1337 1337 1337 15Outside of eval: 1337 1337 1337
16 16
17Fatal error: [snuffleupagus][eval] A call to strtoupper was tried in eval, in %a/eval_backlist.php:1, dropping it. in %a/eval_backlist.php(4) : eval()'d code on line 1 17Fatal error: [snuffleupagus][0.0.0.0][eval] A call to strtoupper was tried in eval, in %a/eval_backlist.php:1, dropping it. in %a/eval_backlist.php(4) : eval()'d code on line 1
diff --git a/src/tests/eval_blacklist/eval_backlist_call_user_func.phpt b/src/tests/eval_blacklist/eval_backlist_call_user_func.phpt
index ac48515..7578eac 100644
--- a/src/tests/eval_blacklist/eval_backlist_call_user_func.phpt
+++ b/src/tests/eval_blacklist/eval_backlist_call_user_func.phpt
@@ -11,4 +11,4 @@ eval('
11') 11')
12?> 12?>
13--EXPECTF-- 13--EXPECTF--
14Fatal error: [snuffleupagus][eval] A call to strtoupper was tried in eval, in %s/eval_backlist_call_user_func.php:%d, dropping it. in %s/eval_backlist_call_user_func.php(%d) : eval()'d code on line %d 14Fatal error: [snuffleupagus][0.0.0.0][eval] A call to strtoupper was tried in eval, in %s/eval_backlist_call_user_func.php:%d, dropping it. in %s/eval_backlist_call_user_func.php(%d) : eval()'d code on line %d
diff --git a/src/tests/eval_blacklist/eval_backlist_chained.phpt b/src/tests/eval_blacklist/eval_backlist_chained.phpt
index dc23857..7eabc02 100644
--- a/src/tests/eval_blacklist/eval_backlist_chained.phpt
+++ b/src/tests/eval_blacklist/eval_backlist_chained.phpt
@@ -13,4 +13,4 @@ eval('
13') 13')
14?> 14?>
15--EXPECTF-- 15--EXPECTF--
16Fatal error: [snuffleupagus][eval] A call to strtoupper was tried in eval, in %s/eval_backlist_chained.php:%d, dropping it. in %s/eval_backlist_chained.php(%d) : eval()'d code on line %d 16Fatal error: [snuffleupagus][0.0.0.0][eval] A call to strtoupper was tried in eval, in %s/eval_backlist_chained.php:%d, dropping it. in %s/eval_backlist_chained.php(%d) : eval()'d code on line %d
diff --git a/src/tests/eval_blacklist/eval_backlist_list.phpt b/src/tests/eval_blacklist/eval_backlist_list.phpt
index d5bbd00..7cb0183 100644
--- a/src/tests/eval_blacklist/eval_backlist_list.phpt
+++ b/src/tests/eval_blacklist/eval_backlist_list.phpt
@@ -14,4 +14,4 @@ echo "After eval: $a\n";
14--EXPECTF-- 14--EXPECTF--
15Outside of eval: 1337 1337 1337 15Outside of eval: 1337 1337 1337
16 16
17Fatal error: [snuffleupagus][eval] A call to strtoupper was tried in eval, in %a/eval_backlist_list.php:1, dropping it. in %a/eval_backlist_list.php(4) : eval()'d code on line 1 17Fatal error: [snuffleupagus][0.0.0.0][eval] A call to strtoupper was tried in eval, in %a/eval_backlist_list.php:1, dropping it. in %a/eval_backlist_list.php(4) : eval()'d code on line 1
diff --git a/src/tests/eval_blacklist/eval_backlist_simulation.phpt b/src/tests/eval_blacklist/eval_backlist_simulation.phpt
index be4cd3a..d81398c 100644
--- a/src/tests/eval_blacklist/eval_backlist_simulation.phpt
+++ b/src/tests/eval_blacklist/eval_backlist_simulation.phpt
@@ -14,5 +14,5 @@ echo "After eval: $a\n";
14--EXPECTF-- 14--EXPECTF--
15Outside of eval: 1337 1337 1337 15Outside of eval: 1337 1337 1337
16 16
17Warning: [snuffleupagus][eval] A call to strtoupper was tried in eval, in %a/eval_backlist_simulation.php:1, logging it. in %a/eval_backlist_simulation.php(4) : eval()'d code on line 1 17Warning: [snuffleupagus][0.0.0.0][eval] A call to strtoupper was tried in eval, in %a/eval_backlist_simulation.php:1, logging it. in %a/eval_backlist_simulation.php(4) : eval()'d code on line 1
18After eval: 1234 18After eval: 1234
diff --git a/src/tests/eval_blacklist/eval_backlist_whitelist.phpt b/src/tests/eval_blacklist/eval_backlist_whitelist.phpt
index e5650b2..7e6524b 100644
--- a/src/tests/eval_blacklist/eval_backlist_whitelist.phpt
+++ b/src/tests/eval_blacklist/eval_backlist_whitelist.phpt
@@ -21,4 +21,4 @@ echo "After eval: $a\n";
21Outside of eval: my_fun: 1337 1337 1337 21Outside of eval: my_fun: 1337 1337 1337
22After allowed eval: my_fun: 1234 22After allowed eval: my_fun: 1234
23 23
24Fatal error: [snuffleupagus][Eval_whitelist] The function 'cos' isn't in the eval whitelist, dropping its call. in %a/eval_backlist_whitelist.php(10) : eval()'d code on line 1 \ No newline at end of file 24Fatal error: [snuffleupagus][0.0.0.0][Eval_whitelist] The function 'cos' isn't in the eval whitelist, dropping its call. in %a/eval_backlist_whitelist.php(10) : eval()'d code on line 1 \ No newline at end of file
diff --git a/src/tests/eval_blacklist/eval_backlist_whitelist_builtin.phpt b/src/tests/eval_blacklist/eval_backlist_whitelist_builtin.phpt
index 2f8bc19..8b05821 100644
--- a/src/tests/eval_blacklist/eval_backlist_whitelist_builtin.phpt
+++ b/src/tests/eval_blacklist/eval_backlist_whitelist_builtin.phpt
@@ -21,4 +21,4 @@ echo "After eval: $a\n";
21Outside of eval: 1.5574077246549 21Outside of eval: 1.5574077246549
22After allowed eval: 1.5574077246549 22After allowed eval: 1.5574077246549
23 23
24Fatal error: [snuffleupagus][Eval_whitelist] The function 'cos' isn't in the eval whitelist, dropping its call. in %a/eval_backlist_whitelist_builtin.php(10) : eval()'d code on line 1 \ No newline at end of file 24Fatal error: [snuffleupagus][0.0.0.0][Eval_whitelist] The function 'cos' isn't in the eval whitelist, dropping its call. in %a/eval_backlist_whitelist_builtin.php(10) : eval()'d code on line 1 \ No newline at end of file
diff --git a/src/tests/eval_blacklist/eval_whitelist.phpt b/src/tests/eval_blacklist/eval_whitelist.phpt
index a602d0d..d5b9d1c 100644
--- a/src/tests/eval_blacklist/eval_whitelist.phpt
+++ b/src/tests/eval_blacklist/eval_whitelist.phpt
@@ -25,4 +25,4 @@ echo "After eval: $a\n";
25Outside of eval: my_fun: 1337 1337 1337 25Outside of eval: my_fun: 1337 1337 1337
26After allowed eval: my_fun: 1234 26After allowed eval: my_fun: 1234
27 27
28Fatal error: [snuffleupagus][Eval_whitelist] The function 'my_other_fun' isn't in the eval whitelist, dropping its call. in %a/eval_whitelist.php on line 7 \ No newline at end of file 28Fatal error: [snuffleupagus][0.0.0.0][Eval_whitelist] The function 'my_other_fun' isn't in the eval whitelist, dropping its call. in %a/eval_whitelist.php on line 7 \ No newline at end of file
diff --git a/src/tests/eval_blacklist/eval_whitelist_builtin.phpt b/src/tests/eval_blacklist/eval_whitelist_builtin.phpt
index 5ed383d..9b406b5 100644
--- a/src/tests/eval_blacklist/eval_whitelist_builtin.phpt
+++ b/src/tests/eval_blacklist/eval_whitelist_builtin.phpt
@@ -17,4 +17,4 @@ echo "After eval: $a\n";
17Outside of eval: 0.54030230586814 17Outside of eval: 0.54030230586814
18After allowed eval: 0.28366218546323 18After allowed eval: 0.28366218546323
19 19
20Fatal error: [snuffleupagus][Eval_whitelist] The function 'sin' isn't in the eval whitelist, dropping its call. in %a/eval_whitelist_builtin.php(6) : eval()'d code on line 1 \ No newline at end of file 20Fatal error: [snuffleupagus][0.0.0.0][Eval_whitelist] The function 'sin' isn't in the eval whitelist, dropping its call. in %a/eval_whitelist_builtin.php(6) : eval()'d code on line 1 \ No newline at end of file
diff --git a/src/tests/eval_blacklist/eval_whitelist_include_then_user.phpt b/src/tests/eval_blacklist/eval_whitelist_include_then_user.phpt
index 5ff3bff..f3be8a8 100644
--- a/src/tests/eval_blacklist/eval_whitelist_include_then_user.phpt
+++ b/src/tests/eval_blacklist/eval_whitelist_include_then_user.phpt
@@ -27,4 +27,4 @@ unlink($dir . '/test.bla');
27Outside of eval: 0.54030230586814 27Outside of eval: 0.54030230586814
28After allowed eval: 0.28366218546323 28After allowed eval: 0.28366218546323
29 29
30Fatal error: [snuffleupagus][Eval_whitelist] The function 'sin' isn't in the eval whitelist, dropping its call. in %a/test.bla on line 1 \ No newline at end of file 30Fatal error: [snuffleupagus][0.0.0.0][Eval_whitelist] The function 'sin' isn't in the eval whitelist, dropping its call. in %a/test.bla on line 1 \ No newline at end of file
diff --git a/src/tests/eval_blacklist/eval_whitelist_simulation.phpt b/src/tests/eval_blacklist/eval_whitelist_simulation.phpt
index c4a3efa..7648dad 100644
--- a/src/tests/eval_blacklist/eval_whitelist_simulation.phpt
+++ b/src/tests/eval_blacklist/eval_whitelist_simulation.phpt
@@ -25,5 +25,5 @@ echo "After eval: $a\n";
25Outside of eval: my_fun: 1337 1337 1337 25Outside of eval: my_fun: 1337 1337 1337
26After allowed eval: my_fun: 1234 26After allowed eval: my_fun: 1234
27 27
28Warning: [snuffleupagus][Eval_whitelist] The function 'my_other_fun' isn't in the eval whitelist, logging its call. in %a/eval_whitelist_simulation.php on line 7 28Warning: [snuffleupagus][0.0.0.0][Eval_whitelist] The function 'my_other_fun' isn't in the eval whitelist, logging its call. in %a/eval_whitelist_simulation.php on line 7
29After eval: my_other_fun: 1234 \ No newline at end of file 29After eval: my_other_fun: 1234 \ No newline at end of file
diff --git a/src/tests/eval_blacklist/eval_whitelist_user_then_builtin.phpt b/src/tests/eval_blacklist/eval_whitelist_user_then_builtin.phpt
index dbc7d93..aeb4d70 100644
--- a/src/tests/eval_blacklist/eval_whitelist_user_then_builtin.phpt
+++ b/src/tests/eval_blacklist/eval_whitelist_user_then_builtin.phpt
@@ -21,4 +21,4 @@ echo "After eval: $a\n";
21--EXPECTF-- 21--EXPECTF--
22Outside of eval: -0.54402111088937 22Outside of eval: -0.54402111088937
23 23
24Fatal error: [snuffleupagus][Eval_whitelist] The function 'sin' isn't in the eval whitelist, dropping its call. in %a/eval_whitelist_user_then_builtin.php on line 4 \ No newline at end of file 24Fatal error: [snuffleupagus][0.0.0.0][Eval_whitelist] The function 'sin' isn't in the eval whitelist, dropping its call. in %a/eval_whitelist_user_then_builtin.php on line 4 \ No newline at end of file
diff --git a/src/tests/eval_blacklist/nested_eval_blacklist.phpt b/src/tests/eval_blacklist/nested_eval_blacklist.phpt
index 244007e..2d99449 100644
--- a/src/tests/eval_blacklist/nested_eval_blacklist.phpt
+++ b/src/tests/eval_blacklist/nested_eval_blacklist.phpt
@@ -26,4 +26,4 @@ Inception lvl 1...
26Inception lvl 2... 26Inception lvl 2...
27Inception lvl 3... 27Inception lvl 3...
28 28
29Fatal error: [snuffleupagus][eval] A call to strtoupper was tried in eval, in %a/nested_eval_blacklist.php(5) : eval()'d code(4) : eval()'d code:3, dropping it. in %a/nested_eval_blacklist.php(5) : eval()'d code(4) : eval()'d code(4) : eval()'d code on line 3 29Fatal error: [snuffleupagus][0.0.0.0][eval] A call to strtoupper was tried in eval, in %a/nested_eval_blacklist.php(5) : eval()'d code(4) : eval()'d code:3, dropping it. in %a/nested_eval_blacklist.php(5) : eval()'d code(4) : eval()'d code(4) : eval()'d code on line 3
diff --git a/src/tests/eval_blacklist/nested_eval_blacklist2.phpt b/src/tests/eval_blacklist/nested_eval_blacklist2.phpt
index 9f7a4d0..d84a1f6 100644
--- a/src/tests/eval_blacklist/nested_eval_blacklist2.phpt
+++ b/src/tests/eval_blacklist/nested_eval_blacklist2.phpt
@@ -26,4 +26,4 @@ Inception lvl 1...
26Inception lvl 2... 26Inception lvl 2...
27Inception lvl 3... 27Inception lvl 3...
28 28
29Fatal error: [snuffleupagus][eval] A call to strtoupper was tried in eval, in %a/nested_eval_blacklist2.php(5) : eval()'d code:7, dropping it. in %a/nested_eval_blacklist2.php(5) : eval()'d code(4) : eval()'d code on line 7 29Fatal error: [snuffleupagus][0.0.0.0][eval] A call to strtoupper was tried in eval, in %a/nested_eval_blacklist2.php(5) : eval()'d code:7, dropping it. in %a/nested_eval_blacklist2.php(5) : eval()'d code(4) : eval()'d code on line 7
diff --git a/src/tests/glob_config.phpt b/src/tests/glob_config.phpt
index b557c8b..2d62c3a 100644
--- a/src/tests/glob_config.phpt
+++ b/src/tests/glob_config.phpt
@@ -16,8 +16,8 @@ foo();
16bla(); 16bla();
17?> 17?>
18--EXPECTF-- 18--EXPECTF--
19Warning: [snuffleupagus][disabled_function] Aborted execution on call of the function 'foo' in %a/glob_config.php on line 3 19Warning: [snuffleupagus][0.0.0.0][disabled_function] Aborted execution on call of the function 'foo' in %a/glob_config.php on line 3
201 201
21 21
22Warning: [snuffleupagus][disabled_function] Aborted execution on call of the function 'bla' in %a/glob_config.php on line 6 22Warning: [snuffleupagus][0.0.0.0][disabled_function] Aborted execution on call of the function 'bla' in %a/glob_config.php on line 6
232 \ No newline at end of file 232 \ No newline at end of file
diff --git a/src/tests/inexistent_conf_file.phpt b/src/tests/inexistent_conf_file.phpt
index a68ca9e..9b5e3d6 100644
--- a/src/tests/inexistent_conf_file.phpt
+++ b/src/tests/inexistent_conf_file.phpt
@@ -7,9 +7,9 @@ sp.configuration_file={PWD}/config/unexistent_configuration_file.ini
7--FILE-- 7--FILE--
8<?php ?> 8<?php ?>
9--EXPECTF-- 9--EXPECTF--
10PHP Fatal error: [snuffleupagus][config] Could not open configuration file %a/config/unexistent_configuration_file.ini : No such file or directory in Unknown on line 0 10PHP Fatal error: [snuffleupagus][0.0.0.0][config] Could not open configuration file %a/config/unexistent_configuration_file.ini : No such file or directory in Unknown on line 0
11 11
12Fatal error: [snuffleupagus][config] Could not open configuration file %a/config/unexistent_configuration_file.ini : No such file or directory in Unknown on line 0 12Fatal error: [snuffleupagus][0.0.0.0][config] Could not open configuration file %a/config/unexistent_configuration_file.ini : No such file or directory in Unknown on line 0
13 13
14Fatal error: [snuffleupagus][config] Invalid configuration file in Unknown on line 0 14Fatal error: [snuffleupagus][0.0.0.0][config] Invalid configuration file in Unknown on line 0
15Could not startup. \ No newline at end of file 15Could not startup. \ No newline at end of file
diff --git a/src/tests/inexistent_conf_file_list.phpt b/src/tests/inexistent_conf_file_list.phpt
index 3f91f38..b8b3bea 100644
--- a/src/tests/inexistent_conf_file_list.phpt
+++ b/src/tests/inexistent_conf_file_list.phpt
@@ -7,9 +7,9 @@ sp.configuration_file={PWD}/../../config/default.rules,{PWD}/non_existent_config
7--FILE-- 7--FILE--
8<?php ?> 8<?php ?>
9--EXPECTF-- 9--EXPECTF--
10PHP Fatal error: [snuffleupagus][config] Could not open configuration file %a/non_existent_configuration_file : No such file or directory in Unknown on line 0 10PHP Fatal error: [snuffleupagus][0.0.0.0][config] Could not open configuration file %a/non_existent_configuration_file : No such file or directory in Unknown on line 0
11 11
12Fatal error: [snuffleupagus][config] Could not open configuration file %a/non_existent_configuration_file : No such file or directory in Unknown on line 0 12Fatal error: [snuffleupagus][0.0.0.0][config] Could not open configuration file %a/non_existent_configuration_file : No such file or directory in Unknown on line 0
13 13
14Fatal error: [snuffleupagus][config] Invalid configuration file in Unknown on line 0 14Fatal error: [snuffleupagus][0.0.0.0][config] Invalid configuration file in Unknown on line 0
15Could not startup. \ No newline at end of file 15Could not startup. \ No newline at end of file
diff --git a/src/tests/loading.phpt b/src/tests/loading.phpt
index db6395f..d48703e 100644
--- a/src/tests/loading.phpt
+++ b/src/tests/loading.phpt
@@ -7,5 +7,5 @@ Check for snuffleupagus presence
7echo "snuffleupagus extension is available"; 7echo "snuffleupagus extension is available";
8?> 8?>
9--EXPECT-- 9--EXPECT--
10Fatal error: [snuffleupagus][config] Invalid configuration file in Unknown on line 0 10Fatal error: [snuffleupagus][0.0.0.0][config] Invalid configuration file in Unknown on line 0
11Could not startup. 11Could not startup.
diff --git a/src/tests/multi_config.phpt b/src/tests/multi_config.phpt
index 2bdc372..558d9a1 100644
--- a/src/tests/multi_config.phpt
+++ b/src/tests/multi_config.phpt
@@ -16,8 +16,8 @@ foo();
16bla(); 16bla();
17?> 17?>
18--EXPECTF-- 18--EXPECTF--
19Warning: [snuffleupagus][disabled_function] Aborted execution on call of the function 'foo' in %a/multi_config.php on line 3 19Warning: [snuffleupagus][0.0.0.0][disabled_function] Aborted execution on call of the function 'foo' in %a/multi_config.php on line 3
201 201
21 21
22Warning: [snuffleupagus][disabled_function] Aborted execution on call of the function 'bla' in %a/multi_config.php on line 6 22Warning: [snuffleupagus][0.0.0.0][disabled_function] Aborted execution on call of the function 'bla' in %a/multi_config.php on line 6
232 \ No newline at end of file 232 \ No newline at end of file
diff --git a/src/tests/session_encryption/crypt_session_corrupted_session.phpt b/src/tests/session_encryption/crypt_session_corrupted_session.phpt
index 5853efd..2c4f085 100644
--- a/src/tests/session_encryption/crypt_session_corrupted_session.phpt
+++ b/src/tests/session_encryption/crypt_session_corrupted_session.phpt
@@ -27,4 +27,4 @@ session_start();
27var_dump($_SESSION); 27var_dump($_SESSION);
28?> 28?>
29--EXPECTF-- 29--EXPECTF--
30Fatal error: [snuffleupagus][cookie_encryption] Buffer underflow tentative detected in cookie encryption handling in %s/crypt_session_corrupted_session.php on line %s 30Fatal error: [snuffleupagus][127.0.0.1][cookie_encryption] Buffer underflow tentative detected in cookie encryption handling in %s/crypt_session_corrupted_session.php on line %s
diff --git a/src/tests/session_encryption/crypt_session_invalid.phpt b/src/tests/session_encryption/crypt_session_invalid.phpt
index 8a57149..9d9a88a 100644
--- a/src/tests/session_encryption/crypt_session_invalid.phpt
+++ b/src/tests/session_encryption/crypt_session_invalid.phpt
@@ -21,4 +21,4 @@ session_start(); // Re start the session, It will read and decrypt the non em
21var_dump($_SESSION); // Dump the session 21var_dump($_SESSION); // Dump the session
22?> 22?>
23--EXPECTF-- 23--EXPECTF--
24Warning: [snuffleupagus][cookie_encryption] Something went wrong with the decryption of the session in %s/crypt_session_invalid.php on line %d 24Warning: [snuffleupagus][127.0.0.2][cookie_encryption] Something went wrong with the decryption of the session in %s/crypt_session_invalid.php on line %d
diff --git a/src/tests/unserialize/dump_unserialize.phpt b/src/tests/unserialize/dump_unserialize.phpt
index 4b54cbb..d07fcbe 100644
--- a/src/tests/unserialize/dump_unserialize.phpt
+++ b/src/tests/unserialize/dump_unserialize.phpt
@@ -36,4 +36,4 @@ if ($res[2] != "GET:get_a='data_get_a' get_b='data_get_b' \n") {
36--EXPECTF-- 36--EXPECTF--
371 371
38 38
39Fatal error: [snuffleupagus][unserialize] Invalid HMAC for s:1:"a";alyualskdufyhalkdjsfh in %a/dump_unserialize.php on line 8 39Fatal error: [snuffleupagus][0.0.0.0][unserialize] Invalid HMAC for s:1:"a";alyualskdufyhalkdjsfh in %a/dump_unserialize.php on line 8
diff --git a/src/tests/unserialize/unserialize_fail.phpt b/src/tests/unserialize/unserialize_fail.phpt
index c6411a5..5e7912c 100644
--- a/src/tests/unserialize/unserialize_fail.phpt
+++ b/src/tests/unserialize/unserialize_fail.phpt
@@ -12,4 +12,4 @@ var_dump(unserialize('s:1:"a";dslfjklfjfkjfdjffjfjads'));
12var_dump(unserialize(1,2,3,4)); 12var_dump(unserialize(1,2,3,4));
13?> 13?>
14--EXPECTF-- 14--EXPECTF--
15Fatal error: [snuffleupagus][unserialize] The serialized object is too small. in %a/unserialize_fail.php on line 2 \ No newline at end of file 15Fatal error: [snuffleupagus][0.0.0.0][unserialize] The serialized object is too small. in %a/unserialize_fail.php on line 2 \ No newline at end of file
diff --git a/src/tests/unserialize/unserialize_sim.phpt b/src/tests/unserialize/unserialize_sim.phpt
index d919af1..cbc02a4 100644
--- a/src/tests/unserialize/unserialize_sim.phpt
+++ b/src/tests/unserialize/unserialize_sim.phpt
@@ -14,5 +14,5 @@ var_dump(unserialize('s:1:"a";alyualskdufyhalkdjsfhalkjdhflaksjdfhlkasdhflkahdaw
14--EXPECTF-- 14--EXPECTF--
15s:1:"a";650609b417904d0d9bbf1fc44a975d13ecdf6b02b715c1a06271fb3b673f25b1string(1) "a" 15s:1:"a";650609b417904d0d9bbf1fc44a975d13ecdf6b02b715c1a06271fb3b673f25b1string(1) "a"
16 16
17Warning: [snuffleupagus][unserialize] Invalid HMAC for s:1:"a";alyualskdufyhalkdjsfh in %a/unserialize_sim.php on line 5 17Warning: [snuffleupagus][0.0.0.0][unserialize] Invalid HMAC for s:1:"a";alyualskdufyhalkdjsfh in %a/unserialize_sim.php on line 5
18string(1) "a" 18string(1) "a"
diff --git a/src/tests/upload_validation/upload_validation.phpt b/src/tests/upload_validation/upload_validation.phpt
index 1daebb6..4a45771 100644
--- a/src/tests/upload_validation/upload_validation.phpt
+++ b/src/tests/upload_validation/upload_validation.phpt
@@ -13,6 +13,6 @@ Content-Disposition: form-data; name="test"; filename="test.php"
13echo 1; 13echo 1;
14?> 14?>
15--EXPECTF-- 15--EXPECTF--
16Fatal error: [snuffleupagus][config] Invalid configuration file in Unknown on line 0 16Fatal error: [snuffleupagus][0.0.0.0][config] Invalid configuration file in Unknown on line 0
17 17
18Fatal error: [snuffleupagus][config] A rule can't be enabled and disabled on line 1 in Unknown on line 0 18Fatal error: [snuffleupagus][0.0.0.0][config] A rule can't be enabled and disabled on line 1 in Unknown on line 0
diff --git a/src/tests/upload_validation/upload_validation_invalid.phpt b/src/tests/upload_validation/upload_validation_invalid.phpt
index 0dbdbbb..5d64f57 100644
--- a/src/tests/upload_validation/upload_validation_invalid.phpt
+++ b/src/tests/upload_validation/upload_validation_invalid.phpt
@@ -13,9 +13,9 @@ Content-Disposition: form-data; name="test"; filename="test.php"
13echo 1; 13echo 1;
14?> 14?>
15--EXPECTF-- 15--EXPECTF--
16Warning: [snuffleupagus][upload_validation] Could not call './tests/data/upload_invalid.sh' : Exec format error in Unknown on line 0 16Warning: [snuffleupagus][0.0.0.0][upload_validation] Could not call './tests/data/upload_invalid.sh' : Exec format error in Unknown on line 0
17X-Powered-By: PHP/%a 17X-Powered-By: PHP/%a
18Content-type: text/html; charset=UTF-8%a 18Content-type: text/html; charset=UTF-8%a
19%a 19%a
20 20
21Fatal error: [snuffleupagus][upload_validation] The upload of test.php on ? was rejected. in Unknown on line 0 21Fatal error: [snuffleupagus][0.0.0.0][upload_validation] The upload of test.php on ? was rejected. in Unknown on line 0
diff --git a/src/tests/upload_validation/upload_validation_ko.phpt b/src/tests/upload_validation/upload_validation_ko.phpt
index d632e60..54f384a 100644
--- a/src/tests/upload_validation/upload_validation_ko.phpt
+++ b/src/tests/upload_validation/upload_validation_ko.phpt
@@ -11,4 +11,4 @@ Content-Disposition: form-data; name="test"; filename="test.php"
11--blabla-- 11--blabla--
12--FILE-- 12--FILE--
13--EXPECTF-- 13--EXPECTF--
14Fatal error: [snuffleupagus][upload_validation] The upload of test.php on ? was rejected. in Unknown on line 0 \ No newline at end of file 14Fatal error: [snuffleupagus][0.0.0.0][upload_validation] The upload of test.php on ? was rejected. in Unknown on line 0 \ No newline at end of file
diff --git a/src/tests/upload_validation/upload_validation_ko_simulation.phpt b/src/tests/upload_validation/upload_validation_ko_simulation.phpt
index b47c405..553874c 100644
--- a/src/tests/upload_validation/upload_validation_ko_simulation.phpt
+++ b/src/tests/upload_validation/upload_validation_ko_simulation.phpt
@@ -12,5 +12,5 @@ Content-Disposition: form-data; name="test"; filename="test.php"
12--FILE-- 12--FILE--
13<?php echo 1337; ?> 13<?php echo 1337; ?>
14--EXPECTF-- 14--EXPECTF--
15Warning: [snuffleupagus][upload_validation] The upload of test.php on ? was rejected. in Unknown on line 0 15Warning: [snuffleupagus][0.0.0.0][upload_validation] The upload of test.php on ? was rejected. in Unknown on line 0
161337 \ No newline at end of file 161337 \ No newline at end of file
diff --git a/src/tests/upload_validation/upload_validation_no_exec.phpt b/src/tests/upload_validation/upload_validation_no_exec.phpt
index a6cde10..cf935fd 100644
--- a/src/tests/upload_validation/upload_validation_no_exec.phpt
+++ b/src/tests/upload_validation/upload_validation_no_exec.phpt
@@ -14,6 +14,6 @@ Content-Disposition: form-data; name="test"; filename="test.php"
14var_dump($_FILES); 14var_dump($_FILES);
15?> 15?>
16--EXPECTF-- 16--EXPECTF--
17Fatal error: [snuffleupagus][config] Invalid configuration file in Unknown on line 0 17Fatal error: [snuffleupagus][0.0.0.0][config] Invalid configuration file in Unknown on line 0
18 18
19Fatal error: [snuffleupagus][config] The `script` (tests/data/upload_no_exec.sh) isn't executable on line 1 in Unknown on line 0 19Fatal error: [snuffleupagus][0.0.0.0][config] The `script` (tests/data/upload_no_exec.sh) isn't executable on line 1 in Unknown on line 0
diff --git a/src/tests/upload_validation/upload_validation_real.phpt b/src/tests/upload_validation/upload_validation_real.phpt
index a945c5f..47df3d1 100644
--- a/src/tests/upload_validation/upload_validation_real.phpt
+++ b/src/tests/upload_validation/upload_validation_real.phpt
@@ -41,4 +41,4 @@ Some random text again
41echo 1; 41echo 1;
42?> 42?>
43--EXPECTF-- 43--EXPECTF--
44Fatal error: [snuffleupagus][upload_validation] The upload of test.php on ? was rejected. in Unknown on line 0 44Fatal error: [snuffleupagus][0.0.0.0][upload_validation] The upload of test.php on ? was rejected. in Unknown on line 0
diff --git a/src/tests/xxe/disable_xxe_dom.phpt b/src/tests/xxe/disable_xxe_dom.phpt
index e1459e3..58467f7 100644
--- a/src/tests/xxe/disable_xxe_dom.phpt
+++ b/src/tests/xxe/disable_xxe_dom.phpt
@@ -1,15 +1,11 @@
1--TEST-- 1--TEST--
2Disable XXE 2Disable XXE
3--SKIPIF-- 3--SKIPIF--
4<?php 4<?php if (!extension_loaded("snuffleupagus") || !extension_loaded("dom")) print("skip"); ?>
5 if (!extension_loaded("snuffleupagus")) {
6 echo "skip";
7} elseif (!extension_loaded("dom")) {
8 echo "skip";
9}
10 ?>
11--INI-- 5--INI--
12sp.configuration_file={PWD}/config/disable_xxe.ini 6sp.configuration_file={PWD}/config/disable_xxe.ini
7--EXTENSIONS--
8dom
13--FILE-- 9--FILE--
14<?php 10<?php
15$dir = __DIR__; 11$dir = __DIR__;
diff --git a/src/tests/xxe/disable_xxe_dom_disabled.phpt b/src/tests/xxe/disable_xxe_dom_disabled.phpt
index a791ebc..fe88d76 100644
--- a/src/tests/xxe/disable_xxe_dom_disabled.phpt
+++ b/src/tests/xxe/disable_xxe_dom_disabled.phpt
@@ -1,12 +1,11 @@
1--TEST-- 1--TEST--
2Disable XXE 2Disable XXE
3--SKIPIF-- 3--SKIPIF--
4<?php 4<?php if (!extension_loaded("snuffleupagus") || !extension_loaded("dom")) print("skip"); ?>
5 if (!extension_loaded("snuffleupagus")) echo "skip";
6 if (!extension_loaded("dom")) echo "skip";
7 ?>
8--INI-- 5--INI--
9sp.configuration_file={PWD}/config/disable_xxe_disable.ini 6sp.configuration_file={PWD}/config/disable_xxe_disable.ini
7--EXTENSIONS--
8dom
10--FILE-- 9--FILE--
11<?php 10<?php
12$dir = __DIR__; 11$dir = __DIR__;
diff --git a/src/tests/xxe/disable_xxe_simplexml.phpt b/src/tests/xxe/disable_xxe_simplexml.phpt
index 88396c0..1d3ef4c 100644
--- a/src/tests/xxe/disable_xxe_simplexml.phpt
+++ b/src/tests/xxe/disable_xxe_simplexml.phpt
@@ -1,12 +1,12 @@
1--TEST-- 1--TEST--
2Disable XXE 2Disable XXE
3--SKIPIF-- 3--SKIPIF--
4<?php 4<?php if (!extension_loaded("snuffleupagus") || !extension_loaded("simplexml") || getenv('TRAVIS')) print("skip"); ?>
5 if (!extension_loaded("snuffleupagus")) echo "skip";
6 if (!extension_loaded("simplexml")) echo "skip";
7 ?>
8--INI-- 5--INI--
9sp.configuration_file={PWD}/config/disable_xxe.ini 6sp.configuration_file={PWD}/config/disable_xxe.ini
7--EXTENSIONS--
8simplexml
9--XFAIL--
10--FILE-- 10--FILE--
11<?php 11<?php
12$dir = __DIR__; 12$dir = __DIR__;
diff --git a/src/tests/xxe/disable_xxe_simplexml_oop.phpt b/src/tests/xxe/disable_xxe_simplexml_oop.phpt
index 43c4fbf..e101337 100644
--- a/src/tests/xxe/disable_xxe_simplexml_oop.phpt
+++ b/src/tests/xxe/disable_xxe_simplexml_oop.phpt
@@ -1,12 +1,12 @@
1--TEST-- 1--TEST--
2Disable XXE 2Disable XXE
3--SKIPIF-- 3--SKIPIF--
4<?php 4<?php if (!extension_loaded("snuffleupagus") || !extension_loaded("simplexml") || getenv('TRAVIS')) print("skip"); ?>
5 if (!extension_loaded("snuffleupagus")) echo "skip";
6 if (!extension_loaded("simplexml")) echo "skip";
7 ?>
8--INI-- 5--INI--
9sp.configuration_file={PWD}/config/disable_xxe.ini 6sp.configuration_file={PWD}/config/disable_xxe.ini
7--EXTENSIONS--
8simplexml
9--XFAIL--
10--FILE-- 10--FILE--
11<?php 11<?php
12$dir = __DIR__; 12$dir = __DIR__;
diff --git a/src/tests/xxe/disable_xxe_xml_parse.phpt b/src/tests/xxe/disable_xxe_xml_parse.phpt
index ca77729..b6dec2d 100644
--- a/src/tests/xxe/disable_xxe_xml_parse.phpt
+++ b/src/tests/xxe/disable_xxe_xml_parse.phpt
@@ -8,6 +8,8 @@ Disable XXE in xml_parse
8 echo "skip because the `xml` extension isn't loaded"; 8 echo "skip because the `xml` extension isn't loaded";
9} 9}
10 ?> 10 ?>
11--EXTENSIONS--
12xml
11--INI-- 13--INI--
12sp.configuration_file={PWD}/config/disable_xxe.ini 14sp.configuration_file={PWD}/config/disable_xxe.ini
13--FILE-- 15--FILE--