summaryrefslogtreecommitdiff
path: root/main/streams/glob_wrapper.c
diff options
context:
space:
mode:
authorSara Golemon <pollita@php.net>2017-01-09 16:07:33 -0800
committerSara Golemon <pollita@php.net>2017-01-09 16:07:33 -0800
commit69fbe3a9add21dfd2341472e2e702af5c150e98c (patch)
tree3f3e8979907e0554e475e02cc8aa6fca959d83be /main/streams/glob_wrapper.c
parent69058f35f8045984cdea9cbe33891979a17a3c38 (diff)
parent7e49e8e7970b423968de7a53ea9a0796f4634276 (diff)
downloadphp-git-69fbe3a9add21dfd2341472e2e702af5c150e98c.tar.gz
Merge branch 'PHP-5.6' into PHP-7.0
* PHP-5.6: Fix open_basedir check for glob:// opendir wrapper
Diffstat (limited to 'main/streams/glob_wrapper.c')
-rw-r--r--main/streams/glob_wrapper.c8
1 files changed, 4 insertions, 4 deletions
diff --git a/main/streams/glob_wrapper.c b/main/streams/glob_wrapper.c
index 4f70cfd2cb..f41ce19d23 100644
--- a/main/streams/glob_wrapper.c
+++ b/main/streams/glob_wrapper.c
@@ -213,10 +213,6 @@ static php_stream *php_glob_stream_opener(php_stream_wrapper *wrapper, const cha
int ret;
const char *tmp, *pos;
- if (((options & STREAM_DISABLE_OPEN_BASEDIR) == 0) && php_check_open_basedir(path)) {
- return NULL;
- }
-
if (!strncmp(path, "glob://", sizeof("glob://")-1)) {
path += sizeof("glob://")-1;
if (opened_path) {
@@ -224,6 +220,10 @@ static php_stream *php_glob_stream_opener(php_stream_wrapper *wrapper, const cha
}
}
+ if (((options & STREAM_DISABLE_OPEN_BASEDIR) == 0) && php_check_open_basedir(path)) {
+ return NULL;
+ }
+
pglob = ecalloc(sizeof(*pglob), 1);
if (0 != (ret = glob(path, pglob->flags & GLOB_FLAGMASK, NULL, &pglob->glob))) {