summaryrefslogtreecommitdiff
path: root/Zend/zend_builtin_functions.c
diff options
context:
space:
mode:
Diffstat (limited to 'Zend/zend_builtin_functions.c')
-rw-r--r--Zend/zend_builtin_functions.c10
1 files changed, 9 insertions, 1 deletions
diff --git a/Zend/zend_builtin_functions.c b/Zend/zend_builtin_functions.c
index 6b65bdd330..dff8f52eda 100644
--- a/Zend/zend_builtin_functions.c
+++ b/Zend/zend_builtin_functions.c
@@ -1870,7 +1870,15 @@ static int copy_function_name(zval *zv, int num_args, va_list args, zend_hash_ke
}
if (func->type == ZEND_INTERNAL_FUNCTION) {
- add_next_index_str(internal_ar, zend_string_copy(hash_key->key));
+ char *disable_functions = INI_STR("disable_functions");
+
+ if (disable_functions != NULL) {
+ if (strstr(disable_functions, func->common.function_name->val) == NULL) {
+ add_next_index_str(internal_ar, zend_string_copy(hash_key->key));
+ }
+ } else {
+ add_next_index_str(internal_ar, zend_string_copy(hash_key->key));
+ }
} else if (func->type == ZEND_USER_FUNCTION) {
add_next_index_str(user_ar, zend_string_copy(hash_key->key));
}