From 7e49e8e7970b423968de7a53ea9a0796f4634276 Mon Sep 17 00:00:00 2001 From: Sara Golemon Date: Mon, 9 Jan 2017 11:02:50 -0800 Subject: Fix open_basedir check for glob:// opendir wrapper php_check_open_basedir() expects a local filesystem path, but we're handing it a `glob://...` URI instead. Move the check to after the path trim so that we're checking a meaningful pathspec. --- ext/standard/tests/streams/glob-wrapper.phpt | 35 ++++++++++++++++++++++++++++ main/streams/glob_wrapper.c | 8 +++---- 2 files changed, 39 insertions(+), 4 deletions(-) create mode 100644 ext/standard/tests/streams/glob-wrapper.phpt diff --git a/ext/standard/tests/streams/glob-wrapper.phpt b/ext/standard/tests/streams/glob-wrapper.phpt new file mode 100644 index 0000000000..fc47d83a02 --- /dev/null +++ b/ext/standard/tests/streams/glob-wrapper.phpt @@ -0,0 +1,35 @@ +--TEST-- +Glob wrapper bypasses open_basedir +--INI-- +open_basedir=/does_not_exist +--SKIPIF-- +flags & GLOB_FLAGMASK, NULL, &pglob->glob))) { -- cgit v1.2.1