]> granicus.if.org Git - php/commitdiff
- Allow settable default flags for the filters.
authorDerick Rethans <derick@php.net>
Wed, 26 Oct 2005 14:37:08 +0000 (14:37 +0000)
committerDerick Rethans <derick@php.net>
Wed, 26 Oct 2005 14:37:08 +0000 (14:37 +0000)
ext/filter/filter.c
ext/filter/php_filter.h

index 11e88f86ee3778c28106a8c8e7fbabd498920292..fbddb9d3fd1bbabfd18266321ff3418d0b90c278 100644 (file)
@@ -127,8 +127,21 @@ static PHP_INI_MH(UpdateDefaultFilter)
 
 /* {{{ PHP_INI
  */
+
+static PHP_INI_MH(OnUpdateFlags)
+{
+       if (!new_value) {
+               IF_G(default_filter_flags) = 0;
+       } else {
+               IF_G(default_filter_flags) = atoi(new_value);
+       }
+       return SUCCESS;
+}
+
+
 PHP_INI_BEGIN()
-    STD_PHP_INI_ENTRY("filter.default", "string", PHP_INI_ALL, UpdateDefaultFilter, default_filter, zend_filter_globals, filter_globals)
+    STD_PHP_INI_ENTRY("filter.default",       "string", PHP_INI_ALL, UpdateDefaultFilter, default_filter,       zend_filter_globals, filter_globals)
+    PHP_INI_ENTRY("filter.default_flags",     NULL,     PHP_INI_ALL, OnUpdateFlags)
 PHP_INI_END()
 /* }}} */
 
@@ -346,7 +359,7 @@ static unsigned int php_sapi_filter(int arg, char *var, char **val, unsigned int
 
        if (val_len) {
                if (! (IF_G(default_filter) == FS_UNSAFE_RAW)) {
-                       php_zval_filter(&new_var, IF_G(default_filter), 0, NULL, NULL/*charset*/ TSRMLS_CC);
+                       php_zval_filter(&new_var, IF_G(default_filter), IF_G(default_filter_flags), NULL, NULL/*charset*/ TSRMLS_CC);
                }
        }
 
index 4fced622740614ff10ddef5faf35c9a5dcdb687a..c3f40c738216df6ff6295ec82951cea01ac0c618 100644 (file)
@@ -62,6 +62,7 @@ ZEND_BEGIN_MODULE_GLOBALS(filter)
        zval *server_array;
        zval *session_array;
        long  default_filter;
+       long  default_filter_flags;
 ZEND_END_MODULE_GLOBALS(filter)
 
 #ifdef ZTS