]> git.ipfire.org Git - thirdparty/rspamd.git/commitdiff
Add option `check_all_filters`.
authorVsevolod Stakhov <vsevolod@highsecure.ru>
Fri, 25 Jul 2014 00:40:38 +0000 (17:40 -0700)
committerVsevolod Stakhov <vsevolod@highsecure.ru>
Fri, 25 Jul 2014 00:40:38 +0000 (17:40 -0700)
This option disables the optimization of messages processing and turn on
mode when all filters are checked.

Suggested by: AL

src/libserver/cfg_file.h
src/libserver/cfg_rcl.c
src/libserver/task.c
src/rdns
src/ucl

index cb62d964063bc377a19f6d5434fa7a285721ab92..1181c126ca4c5de1e9711bd967d6a3de217eac69 100644 (file)
@@ -265,6 +265,7 @@ struct rspamd_config {
        gboolean check_text_attachements;               /**< check text attachements as text                                    */
        gboolean convert_config;                        /**< convert config to XML format                                               */
        gboolean strict_protocol_headers;               /**< strictly check protocol headers                                    */
+       gboolean check_all_filters;                     /**< check all filters                                                                  */
 
        gsize max_diff;                                 /**< maximum diff size for text parts                                   */
 
index 75a659203a0a29a2145b67f3d0e5187e0ccc1974..1cfcf25604828a347cad1d9f6c3c27bb1790f050 100644 (file)
@@ -1286,6 +1286,11 @@ rspamd_rcl_config_init (void)
                rspamd_rcl_parse_struct_boolean,
                G_STRUCT_OFFSET (struct rspamd_config, strict_protocol_headers),
                0);
+       rspamd_rcl_add_default_handler (sub,
+               "check_all_filters",
+               rspamd_rcl_parse_struct_boolean,
+               G_STRUCT_OFFSET (struct rspamd_config, check_all_filters),
+               0);
 
        /**
         * Metric section
index a796b3f93e66c22e179e5f2f4c63a8bd094f6f04..d71e0412eed24898298d4ddf7745b0f67a6ee113 100644 (file)
@@ -55,6 +55,7 @@ rspamd_task_new (struct rspamd_worker *worker)
        new_task->state = READ_MESSAGE;
        if (worker) {
                new_task->cfg = worker->srv->cfg;
+               new_task->pass_all_filters = new_task->cfg->check_all_filters;
        }
 #ifdef HAVE_CLOCK_GETTIME
 # ifdef HAVE_CLOCK_PROCESS_CPUTIME_ID
index 44e4c9ba12d2504379443e7f7a7f94ad088a28e3..08f7afd8f1716f1ac9ce7825f0f9bce1345bb48c 160000 (submodule)
--- a/src/rdns
+++ b/src/rdns
@@ -1 +1 @@
-Subproject commit 44e4c9ba12d2504379443e7f7a7f94ad088a28e3
+Subproject commit 08f7afd8f1716f1ac9ce7825f0f9bce1345bb48c
diff --git a/src/ucl b/src/ucl
index bf78fc2f31981411ff3bb20fb22d11056224f1c4..e907bbbf8f60dec88c71d781931553a83ea69dd5 160000 (submodule)
--- a/src/ucl
+++ b/src/ucl
@@ -1 +1 @@
-Subproject commit bf78fc2f31981411ff3bb20fb22d11056224f1c4
+Subproject commit e907bbbf8f60dec88c71d781931553a83ea69dd5