]> source.dussan.org Git - rspamd.git/commitdiff
Add re class to match all headers
authorVsevolod Stakhov <vsevolod@highsecure.ru>
Mon, 7 Dec 2015 09:12:29 +0000 (09:12 +0000)
committerVsevolod Stakhov <vsevolod@highsecure.ru>
Mon, 7 Dec 2015 09:12:29 +0000 (09:12 +0000)
src/libserver/re_cache.c
src/libserver/re_cache.h

index d7f7c7b9460b0ec08faddc0fe0f81820c2ec3601..f1ee7157d3f99e19300d964e598a31749dec7d2c 100644 (file)
@@ -324,6 +324,15 @@ rspamd_re_cache_exec_re (struct rspamd_task *task,
                        }
                }
                break;
+       case RSPAMD_RE_ALLHEADER:
+               raw = TRUE;
+               in = task->raw_headers_content.begin;
+               len = task->raw_headers_content.len;
+               ret = rspamd_re_cache_process_pcre (rt->cache, re, in,
+                               len, raw, is_multiple);
+               debug_task ("checking allheader regexp: %s -> %d",
+                               rspamd_regexp_get_pattern (re), ret);
+               break;
        case RSPAMD_RE_MIME:
                /* Iterate throught text parts */
                for (i = 0; i < task->text_parts->len; i++) {
@@ -516,6 +525,9 @@ rspamd_re_cache_type_to_string (enum rspamd_re_type type)
        case RSPAMD_RE_RAWHEADER:
                ret = "raw header";
                break;
+       case RSPAMD_RE_ALLHEADER:
+               ret = "raw header";
+               break;
        case RSPAMD_RE_MIME:
                ret = "part";
                break;
index 0ced10bd67118183f57f24bdb75372d76e1b8e5f..c4ec3b2cf6c98930f4da24742badf07a228a6bd3 100644 (file)
@@ -34,6 +34,7 @@ struct rspamd_task;
 enum rspamd_re_type {
        RSPAMD_RE_HEADER,
        RSPAMD_RE_RAWHEADER,
+       RSPAMD_RE_ALLHEADER,
        RSPAMD_RE_MIME,
        RSPAMD_RE_URL,
        RSPAMD_RE_BODY