]> granicus.if.org Git - php/commitdiff
Added FILTER_FLAG_STRIP_BACKTICK option to the filter extension.
authorIlia Alshanetsky <iliaa@php.net>
Mon, 7 Dec 2009 13:43:44 +0000 (13:43 +0000)
committerIlia Alshanetsky <iliaa@php.net>
Mon, 7 Dec 2009 13:43:44 +0000 (13:43 +0000)
ext/filter/filter.c
ext/filter/filter_private.h
ext/filter/sanitizing_filters.c

index 1067d90d32c604d346adc5e00e6f0c5f64cef9af..7e57b81535c73aae74f76996a8c4fcdb6d996234 100644 (file)
@@ -251,6 +251,7 @@ PHP_MINIT_FUNCTION(filter)
 
        REGISTER_LONG_CONSTANT("FILTER_FLAG_STRIP_LOW", FILTER_FLAG_STRIP_LOW, CONST_CS | CONST_PERSISTENT);
        REGISTER_LONG_CONSTANT("FILTER_FLAG_STRIP_HIGH", FILTER_FLAG_STRIP_HIGH, CONST_CS | CONST_PERSISTENT);
+       REGISTER_LONG_CONSTANT("FILTER_FLAG_STRIP_BACKTICK", FILTER_FLAG_STRIP_BACKTICK, CONST_CS | CONST_PERSISTENT);
        REGISTER_LONG_CONSTANT("FILTER_FLAG_ENCODE_LOW", FILTER_FLAG_ENCODE_LOW, CONST_CS | CONST_PERSISTENT);
        REGISTER_LONG_CONSTANT("FILTER_FLAG_ENCODE_HIGH", FILTER_FLAG_ENCODE_HIGH, CONST_CS | CONST_PERSISTENT);
        REGISTER_LONG_CONSTANT("FILTER_FLAG_ENCODE_AMP", FILTER_FLAG_ENCODE_AMP, CONST_CS | CONST_PERSISTENT);
index cb74229af435e45cffed79a4fd7eb12a8b03fcc0..6a281c6e44299e24156c648037a741c3762eaccd 100644 (file)
@@ -39,6 +39,7 @@
 #define FILTER_FLAG_ENCODE_AMP              0x0040
 #define FILTER_FLAG_NO_ENCODE_QUOTES        0x0080
 #define FILTER_FLAG_EMPTY_STRING_NULL       0x0100
+#define FILTER_FLAG_STRIP_BACKTICK          0x0200
 
 #define FILTER_FLAG_ALLOW_FRACTION          0x1000
 #define FILTER_FLAG_ALLOW_THOUSAND          0x2000
index 2d5d6272b690d64690f99785426d7e7b3a682055..2f84afc6ed2c1589303179b3408bd27a80a3a58d 100644 (file)
@@ -123,6 +123,7 @@ static void php_filter_strip(zval *value, long flags)
        for (i = 0; i < Z_STRLEN_P(value); i++) {
                if ((str[i] > 127) && (flags & FILTER_FLAG_STRIP_HIGH)) {
                } else if ((str[i] < 32) && (flags & FILTER_FLAG_STRIP_LOW)) {
+               } else if ((str[i] == '`') && (flags & FILTER_FLAG_STRIP_BACKTICK)) {
                } else {
                        buf[c] = str[i];
                        ++c;