summaryrefslogtreecommitdiff
path: root/ext/xmlreader/php_xmlreader.c
diff options
context:
space:
mode:
Diffstat (limited to 'ext/xmlreader/php_xmlreader.c')
-rw-r--r--ext/xmlreader/php_xmlreader.c8
1 files changed, 8 insertions, 0 deletions
diff --git a/ext/xmlreader/php_xmlreader.c b/ext/xmlreader/php_xmlreader.c
index 191f878c91..1de031aa51 100644
--- a/ext/xmlreader/php_xmlreader.c
+++ b/ext/xmlreader/php_xmlreader.c
@@ -229,6 +229,14 @@ char *_xmlreader_get_valid_file_path(char *source, char *resolved_path, int reso
xmlFreeURI(uri);
+ if (PG(safe_mode) && (!php_checkuid(file_dest, NULL, CHECKUID_CHECK_FILE_AND_DIR))) {
+ return NULL;
+ }
+
+ if (php_check_open_basedir(file_dest TSRMLS_CC)) {
+ return NULL;
+ }
+
return file_dest;
}