From 49a4321cec080d61ff112aaf27f55257e62402f9 Mon Sep 17 00:00:00 2001 From: Ben Fuhrmannek Date: Thu, 25 Sep 2014 18:07:55 +0200 Subject: array index whitelist/blacklist for multipart formdata --- ifilter.c | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) (limited to 'ifilter.c') diff --git a/ifilter.c b/ifilter.c index 4ea846f..47ab6f2 100644 --- a/ifilter.c +++ b/ifilter.c @@ -41,7 +41,7 @@ static size_t strnlen(const char *s, size_t maxlen) { } #endif -static size_t strnspn(const char *input, size_t n, const char *accept) +size_t suhosin_strnspn(const char *input, size_t n, const char *accept) { size_t count = 0; for (; *input != '\0' && count < n; input++, count++) { @@ -51,7 +51,7 @@ static size_t strnspn(const char *input, size_t n, const char *accept) return count; } -static size_t strncspn(const char *input, size_t n, const char *reject) +size_t suhosin_strncspn(const char *input, size_t n, const char *reject) { size_t count = 0; for (; *input != '\0' && count < n; input++, count++) { @@ -581,14 +581,14 @@ unsigned int suhosin_input_filter(int arg, char *var, char **val, unsigned int v /* index whitelist/blacklist */ if (SUHOSIN_G(array_index_whitelist) && *(SUHOSIN_G(array_index_whitelist))) { - if (strnspn(index, index_length, SUHOSIN_G(array_index_whitelist)) != index_length) { + if (suhosin_strnspn(index, index_length, SUHOSIN_G(array_index_whitelist)) != index_length) { suhosin_log(S_VARS, "array index contains not whitelisted characters - dropped variable '%s'", var); if (!SUHOSIN_G(simulation)) { return 0; } } } else if (SUHOSIN_G(array_index_blacklist) && *(SUHOSIN_G(array_index_blacklist))) { - if (strncspn(index, index_length, SUHOSIN_G(array_index_blacklist)) != index_length) { + if (suhosin_strncspn(index, index_length, SUHOSIN_G(array_index_blacklist)) != index_length) { suhosin_log(S_VARS, "array index contains blacklisted characters - dropped variable '%s'", var); if (!SUHOSIN_G(simulation)) { return 0; -- cgit v1.3