From 096e7faa6a5e21e5416a7c8c484e27acd4636a66 Mon Sep 17 00:00:00 2001 From: xXx-caillou-xXx Date: Mon, 27 Aug 2018 13:56:44 +0200 Subject: Add whitelist support for php's wrappers --- src/tests/config/config_stream_wrapper.ini | 1 + .../config/config_stream_wrapper_register.ini | 1 + src/tests/stream_wrapper.phpt | 31 ++++++++++++++++++++++ src/tests/stream_wrapper_register.phpt | 25 +++++++++++++++++ src/tests/stream_wrapper_restore.phpt | 17 ++++++++++++ 5 files changed, 75 insertions(+) create mode 100644 src/tests/config/config_stream_wrapper.ini create mode 100644 src/tests/config/config_stream_wrapper_register.ini create mode 100644 src/tests/stream_wrapper.phpt create mode 100644 src/tests/stream_wrapper_register.phpt create mode 100644 src/tests/stream_wrapper_restore.phpt (limited to 'src/tests') diff --git a/src/tests/config/config_stream_wrapper.ini b/src/tests/config/config_stream_wrapper.ini new file mode 100644 index 0000000..0cd7f77 --- /dev/null +++ b/src/tests/config/config_stream_wrapper.ini @@ -0,0 +1 @@ +sp.wrappers_whitelist.list("https,FTP,does_not_exist"); diff --git a/src/tests/config/config_stream_wrapper_register.ini b/src/tests/config/config_stream_wrapper_register.ini new file mode 100644 index 0000000..ee273a1 --- /dev/null +++ b/src/tests/config/config_stream_wrapper_register.ini @@ -0,0 +1 @@ +sp.wrappers_whitelist.list("php,lelel"); diff --git a/src/tests/stream_wrapper.phpt b/src/tests/stream_wrapper.phpt new file mode 100644 index 0000000..b4e49a0 --- /dev/null +++ b/src/tests/stream_wrapper.phpt @@ -0,0 +1,31 @@ +--TEST-- +Stream wrapper +--SKIPIF-- + +--INI-- +sp.configuration_file={PWD}/config/config_stream_wrapper.ini +--FILE-- + +--EXPECTF-- +Warning: Unknown: Unable to find the wrapper "php" - did you forget to enable it when you configured PHP? in Unknown on line 0 + +Warning: Unknown: Unable to find the wrapper "php" - did you forget to enable it when you configured PHP? in Unknown on line 0 + +Warning: Unknown: Unable to find the wrapper "php" - did you forget to enable it when you configured PHP? in Unknown on line 0 + +Warning: file_get_contents(): Unable to find the wrapper "http" - did you forget to enable it when you configured PHP? in %a/tests/stream_wrapper.php on line %d + +Warning: file_get_contents(): php_network_getaddresses: getaddrinfo failed: Name or service not known in %a/tests/stream_wrapper.php on line %d + +Warning: file_get_contents(https://qweqwezxc): failed to open stream: php_network_getaddresses: getaddrinfo failed: Name or service not known in %a/tests/stream_wrapper.php on line %d + +Warning: file_get_contents(ftp://qweqwezxc): failed to open stream: operation failed in %a/tests/stream_wrapper.php on line %d + +Warning: file_get_contents(): Unable to find the wrapper "lelel" - did you forget to enable it when you configured PHP? in %a/tests/stream_wrapper.php on line %d + +Warning: file_get_contents(lelel://qweqwezxc): failed to open stream: No such file or directory in %a/tests/stream_wrapper.php on line %d diff --git a/src/tests/stream_wrapper_register.phpt b/src/tests/stream_wrapper_register.phpt new file mode 100644 index 0000000..31e53ea --- /dev/null +++ b/src/tests/stream_wrapper_register.phpt @@ -0,0 +1,25 @@ +--TEST-- +Stream wrapper +--SKIPIF-- + +--INI-- +sp.configuration_file={PWD}/config/config_stream_wrapper_register.ini +--FILE-- + +--EXPECTF-- +Warning: fopen(): Unable to find the wrapper "lolol" - did you forget to enable it when you configured PHP? in %a/tests/stream_wrapper_register.php on line %d + +Warning: fopen(): file:// wrapper is disabled in the server configuration in %a/tests/stream_wrapper_register.php on line %d + +Warning: fopen(lolol://asdasd): failed to open stream: no suitable wrapper could be found in %a/tests/stream_wrapper_register.php on line %d diff --git a/src/tests/stream_wrapper_restore.phpt b/src/tests/stream_wrapper_restore.phpt new file mode 100644 index 0000000..c1bce3b --- /dev/null +++ b/src/tests/stream_wrapper_restore.phpt @@ -0,0 +1,17 @@ +--TEST-- +Stream wrapper +--SKIPIF-- + +--INI-- +sp.configuration_file={PWD}/config/config_stream_wrapper_register.ini +--FILE-- + +--EXPECTF-- +Notice: stream_wrapper_restore(): file:// was never changed, nothing to restore in %a/tests/stream_wrapper_restore.php on line %d + +Warning: fopen(): Unable to find the wrapper "file" - did you forget to enable it when you configured PHP? in %a/tests/stream_wrapper_restore.php on line %d + +Warning: fopen(file://asdasd): failed to open stream: No such file or directory in %a/tests/stream_wrapper_restore.php on line %d -- cgit v1.3