diff options
author | Vsevolod Stakhov <vsevolod@highsecure.ru> | 2019-10-07 21:20:33 +0100 |
---|---|---|
committer | Vsevolod Stakhov <vsevolod@highsecure.ru> | 2019-10-07 21:20:33 +0100 |
commit | 0e8dbac3d41dcf47c06ea05484a0df40b393660f (patch) | |
tree | 03e180ee8e5d1c1cf85286fd49cab757a13a7288 /lualib/lua_scanners | |
parent | 4913fb84c2a2eeb4dbdf6e95a39d0e8cf97ca402 (diff) | |
download | rspamd-0e8dbac3d41dcf47c06ea05484a0df40b393660f.tar.gz rspamd-0e8dbac3d41dcf47c06ea05484a0df40b393660f.zip |
[Fix] Fix AV scan logic
Diffstat (limited to 'lualib/lua_scanners')
-rw-r--r-- | lualib/lua_scanners/clamav.lua | 2 | ||||
-rw-r--r-- | lualib/lua_scanners/common.lua | 12 | ||||
-rw-r--r-- | lualib/lua_scanners/dcc.lua | 2 | ||||
-rw-r--r-- | lualib/lua_scanners/fprot.lua | 2 | ||||
-rw-r--r-- | lualib/lua_scanners/icap.lua | 2 | ||||
-rw-r--r-- | lualib/lua_scanners/kaspersky_av.lua | 2 | ||||
-rw-r--r-- | lualib/lua_scanners/kaspersky_se.lua | 4 | ||||
-rw-r--r-- | lualib/lua_scanners/oletools.lua | 2 | ||||
-rw-r--r-- | lualib/lua_scanners/savapi.lua | 2 | ||||
-rw-r--r-- | lualib/lua_scanners/sophos.lua | 2 | ||||
-rw-r--r-- | lualib/lua_scanners/spamassassin.lua | 2 | ||||
-rw-r--r-- | lualib/lua_scanners/vadesecure.lua | 2 |
12 files changed, 19 insertions, 17 deletions
diff --git a/lualib/lua_scanners/clamav.lua b/lualib/lua_scanners/clamav.lua index 90cd67cef..04856e079 100644 --- a/lualib/lua_scanners/clamav.lua +++ b/lualib/lua_scanners/clamav.lua @@ -167,7 +167,7 @@ local function clamav_check(task, content, digest, rule) }) end - if common.need_check(task, content, rule, digest, clamav_check_uncached) then + if common.condition_check_and_continue(task, content, rule, digest, clamav_check_uncached) then return else clamav_check_uncached() diff --git a/lualib/lua_scanners/common.lua b/lualib/lua_scanners/common.lua index 8f72ce76b..103fce142 100644 --- a/lualib/lua_scanners/common.lua +++ b/lualib/lua_scanners/common.lua @@ -212,10 +212,10 @@ local function need_check(task, content, rule, digest, fn) end end - local f_message_not_too_large = message_not_too_large(task, content, rule) or true - local f_message_not_too_small = message_not_too_small(task, content, rule) or true - local f_message_min_words = message_min_words(task, rule) or true - local f_dynamic_scan = dynamic_scan(task, rule) or true + local f_message_not_too_large = message_not_too_large(task, content, rule) + local f_message_not_too_small = message_not_too_small(task, content, rule) + local f_message_min_words = message_min_words(task, rule) + local f_dynamic_scan = dynamic_scan(task, rule) if uncached and f_message_not_too_large and @@ -229,7 +229,7 @@ local function need_check(task, content, rule, digest, fn) end - if rule.redis_params then + if rule.redis_params and not rule.no_cache then key = rule.prefix .. key @@ -439,7 +439,7 @@ end exports.log_clean = log_clean exports.yield_result = yield_result exports.match_patterns = match_patterns -exports.need_check = need_check +exports.condition_check_and_continue = need_check exports.save_cache = save_cache exports.create_regex_table = create_regex_table exports.check_parts_match = check_parts_match diff --git a/lualib/lua_scanners/dcc.lua b/lualib/lua_scanners/dcc.lua index db1ac4497..ac7915990 100644 --- a/lualib/lua_scanners/dcc.lua +++ b/lualib/lua_scanners/dcc.lua @@ -298,7 +298,7 @@ local function dcc_check(task, content, digest, rule) }) end - if common.need_check(task, content, rule, digest, dcc_check_uncached) then + if common.condition_check_and_continue(task, content, rule, digest, dcc_check_uncached) then return else dcc_check_uncached() diff --git a/lualib/lua_scanners/fprot.lua b/lualib/lua_scanners/fprot.lua index 4061251cb..c42618434 100644 --- a/lualib/lua_scanners/fprot.lua +++ b/lualib/lua_scanners/fprot.lua @@ -160,7 +160,7 @@ local function fprot_check(task, content, digest, rule) }) end - if common.need_check(task, content, rule, digest, fprot_check_uncached) then + if common.condition_check_and_continue(task, content, rule, digest, fprot_check_uncached) then return else fprot_check_uncached() diff --git a/lualib/lua_scanners/icap.lua b/lualib/lua_scanners/icap.lua index 1f3ada5c9..42c32134b 100644 --- a/lualib/lua_scanners/icap.lua +++ b/lualib/lua_scanners/icap.lua @@ -385,7 +385,7 @@ local function icap_check(task, content, digest, rule) }) end - if common.need_check(task, content, rule, digest, icap_check_uncached) then + if common.condition_check_and_continue(task, content, rule, digest, icap_check_uncached) then return else icap_check_uncached() diff --git a/lualib/lua_scanners/kaspersky_av.lua b/lualib/lua_scanners/kaspersky_av.lua index 767ff2a94..cb94c38da 100644 --- a/lualib/lua_scanners/kaspersky_av.lua +++ b/lualib/lua_scanners/kaspersky_av.lua @@ -178,7 +178,7 @@ local function kaspersky_check(task, content, digest, rule) }) end - if common.need_check(task, content, rule, digest, kaspersky_check_uncached) then + if common.condition_check_and_continue(task, content, rule, digest, kaspersky_check_uncached) then return else kaspersky_check_uncached() diff --git a/lualib/lua_scanners/kaspersky_se.lua b/lualib/lua_scanners/kaspersky_se.lua index a1c8992c1..ecbe6236f 100644 --- a/lualib/lua_scanners/kaspersky_se.lua +++ b/lualib/lua_scanners/kaspersky_se.lua @@ -250,9 +250,11 @@ local function kaspersky_se_check(task, content, digest, rule) http.request(request_data) end - if common.need_check(task, content, rule, digest, kaspersky_se_check_uncached) then + if common.condition_check_and_continue(task, content, rule, digest, + kaspersky_se_check_uncached) then return else + kaspersky_se_check_uncached() end diff --git a/lualib/lua_scanners/oletools.lua b/lualib/lua_scanners/oletools.lua index cc973d4d5..4bdf7747d 100644 --- a/lualib/lua_scanners/oletools.lua +++ b/lualib/lua_scanners/oletools.lua @@ -304,7 +304,7 @@ local function oletools_check(task, content, digest, rule) end - if common.need_check(task, content, rule, digest, oletools_check_uncached) then + if common.condition_check_and_continue(task, content, rule, digest, oletools_check_uncached) then return else oletools_check_uncached() diff --git a/lualib/lua_scanners/savapi.lua b/lualib/lua_scanners/savapi.lua index b36e6e148..a8b7b6376 100644 --- a/lualib/lua_scanners/savapi.lua +++ b/lualib/lua_scanners/savapi.lua @@ -247,7 +247,7 @@ local function savapi_check(task, content, digest, rule) }) end - if common.need_check(task, content, rule, digest, savapi_check_uncached) then + if common.condition_check_and_continue(task, content, rule, digest, savapi_check_uncached) then return else savapi_check_uncached() diff --git a/lualib/lua_scanners/sophos.lua b/lualib/lua_scanners/sophos.lua index 60a23c20b..e646daaea 100644 --- a/lualib/lua_scanners/sophos.lua +++ b/lualib/lua_scanners/sophos.lua @@ -167,7 +167,7 @@ local function sophos_check(task, content, digest, rule) }) end - if common.need_check(task, content, rule, digest, sophos_check_uncached) then + if common.condition_check_and_continue(task, content, rule, digest, sophos_check_uncached) then return else sophos_check_uncached() diff --git a/lualib/lua_scanners/spamassassin.lua b/lualib/lua_scanners/spamassassin.lua index 06fcf5791..715a5e322 100644 --- a/lualib/lua_scanners/spamassassin.lua +++ b/lualib/lua_scanners/spamassassin.lua @@ -202,7 +202,7 @@ local function spamassassin_check(task, content, digest, rule) }) end - if common.need_check(task, content, rule, digest, spamassassin_check_uncached) then + if common.condition_check_and_continue(task, content, rule, digest, spamassassin_check_uncached) then return else spamassassin_check_uncached() diff --git a/lualib/lua_scanners/vadesecure.lua b/lualib/lua_scanners/vadesecure.lua index 77a9e4dee..238120286 100644 --- a/lualib/lua_scanners/vadesecure.lua +++ b/lualib/lua_scanners/vadesecure.lua @@ -310,7 +310,7 @@ local function vade_check(task, content, digest, rule) http.request(request_data) end - if common.need_check(task, content, rule, digest, vade_check_uncached) then + if common.condition_check_and_continue(task, content, rule, digest, vade_check_uncached) then return else vade_check_uncached() |