From: Vsevolod Stakhov Date: Mon, 7 Dec 2015 09:12:29 +0000 (+0000) Subject: Add re class to match all headers X-Git-Tag: 1.1.0~397 X-Git-Url: http://git.ipfire.org/gitweb.cgi?a=commitdiff_plain;h=fc9338984d86334d76d6618944201349e13bbc49;p=thirdparty%2Frspamd.git Add re class to match all headers --- diff --git a/src/libserver/re_cache.c b/src/libserver/re_cache.c index d7f7c7b946..f1ee7157d3 100644 --- a/src/libserver/re_cache.c +++ b/src/libserver/re_cache.c @@ -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; diff --git a/src/libserver/re_cache.h b/src/libserver/re_cache.h index 0ced10bd67..c4ec3b2cf6 100644 --- a/src/libserver/re_cache.h +++ b/src/libserver/re_cache.h @@ -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