summaryrefslogtreecommitdiffstats
path: root/lualib/lua_scanners
diff options
context:
space:
mode:
authorVsevolod Stakhov <vsevolod@highsecure.ru>2019-10-07 21:20:33 +0100
committerVsevolod Stakhov <vsevolod@highsecure.ru>2019-10-07 21:20:33 +0100
commit0e8dbac3d41dcf47c06ea05484a0df40b393660f (patch)
tree03e180ee8e5d1c1cf85286fd49cab757a13a7288 /lualib/lua_scanners
parent4913fb84c2a2eeb4dbdf6e95a39d0e8cf97ca402 (diff)
downloadrspamd-0e8dbac3d41dcf47c06ea05484a0df40b393660f.tar.gz
rspamd-0e8dbac3d41dcf47c06ea05484a0df40b393660f.zip
[Fix] Fix AV scan logic
Diffstat (limited to 'lualib/lua_scanners')
-rw-r--r--lualib/lua_scanners/clamav.lua2
-rw-r--r--lualib/lua_scanners/common.lua12
-rw-r--r--lualib/lua_scanners/dcc.lua2
-rw-r--r--lualib/lua_scanners/fprot.lua2
-rw-r--r--lualib/lua_scanners/icap.lua2
-rw-r--r--lualib/lua_scanners/kaspersky_av.lua2
-rw-r--r--lualib/lua_scanners/kaspersky_se.lua4
-rw-r--r--lualib/lua_scanners/oletools.lua2
-rw-r--r--lualib/lua_scanners/savapi.lua2
-rw-r--r--lualib/lua_scanners/sophos.lua2
-rw-r--r--lualib/lua_scanners/spamassassin.lua2
-rw-r--r--lualib/lua_scanners/vadesecure.lua2
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()