aboutsummaryrefslogtreecommitdiffstats
path: root/lualib/lua_scanners/kaspersky_av.lua
diff options
context:
space:
mode:
authorVsevolod Stakhov <vsevolod@highsecure.ru>2021-08-06 12:42:06 +0100
committerVsevolod Stakhov <vsevolod@highsecure.ru>2021-08-06 12:42:06 +0100
commita3b5ad3d3be5f44996d247e7b1486fcc9f8ba7e3 (patch)
tree996e39b86863fafa2d80fb0753d6469e86a0eafb /lualib/lua_scanners/kaspersky_av.lua
parent0f57c944b0338b51a3cb6c37b8fa84508f75f8a9 (diff)
downloadrspamd-a3b5ad3d3be5f44996d247e7b1486fcc9f8ba7e3.tar.gz
rspamd-a3b5ad3d3be5f44996d247e7b1486fcc9f8ba7e3.zip
[Feature] Allow to save and show attachment name when inserting AV scan results
Diffstat (limited to 'lualib/lua_scanners/kaspersky_av.lua')
-rw-r--r--lualib/lua_scanners/kaspersky_av.lua16
1 files changed, 10 insertions, 6 deletions
diff --git a/lualib/lua_scanners/kaspersky_av.lua b/lualib/lua_scanners/kaspersky_av.lua
index 4bdbdbbfd..c07a910cd 100644
--- a/lualib/lua_scanners/kaspersky_av.lua
+++ b/lualib/lua_scanners/kaspersky_av.lua
@@ -79,7 +79,7 @@ local function kaspersky_config(opts)
return nil
end
-local function kaspersky_check(task, content, digest, rule)
+local function kaspersky_check(task, content, digest, rule, maybe_part)
local function kaspersky_check_uncached ()
local upstream = rule.upstreams:get_upstream_round_robin()
local addr = upstream:get_addr()
@@ -138,7 +138,9 @@ local function kaspersky_check(task, content, digest, rule)
rspamd_logger.errx(task,
'%s [%s]: failed to scan, maximum retransmits exceed',
rule['symbol'], rule['type'])
- common.yield_result(task, rule, 'failed to scan and retransmits exceed', 0.0, 'fail')
+ common.yield_result(task, rule,
+ 'failed to scan and retransmits exceed', 0.0, 'fail',
+ maybe_part)
end
else
@@ -154,15 +156,16 @@ local function kaspersky_check(task, content, digest, rule)
else
local vname = string.match(data, ': (.+) FOUND')
if vname then
- common.yield_result(task, rule, vname)
+ common.yield_result(task, rule, vname, 1.0, nil, maybe_part)
cached = vname
else
rspamd_logger.errx(task, 'unhandled response: %s', data)
- common.yield_result(task, rule, 'unhandled response', 0.0, 'fail')
+ common.yield_result(task, rule, 'unhandled response',
+ 0.0, 'fail', maybe_part)
end
end
if cached then
- common.save_cache(task, digest, rule, cached)
+ common.save_cache(task, digest, rule, cached, 1.0, maybe_part)
end
end
end
@@ -178,7 +181,8 @@ local function kaspersky_check(task, content, digest, rule)
})
end
- if common.condition_check_and_continue(task, content, rule, digest, kaspersky_check_uncached) then
+ if common.condition_check_and_continue(task, content, rule, digest,
+ kaspersky_check_uncached, maybe_part) then
return
else
kaspersky_check_uncached()