aboutsummaryrefslogtreecommitdiffstats
path: root/src/plugins/lua/greylist.lua
diff options
context:
space:
mode:
Diffstat (limited to 'src/plugins/lua/greylist.lua')
-rw-r--r--src/plugins/lua/greylist.lua9
1 files changed, 5 insertions, 4 deletions
diff --git a/src/plugins/lua/greylist.lua b/src/plugins/lua/greylist.lua
index c31e48927..35c30b806 100644
--- a/src/plugins/lua/greylist.lua
+++ b/src/plugins/lua/greylist.lua
@@ -275,10 +275,11 @@ local function greylist_set(task)
end
local action = task:get_metric_action('default')
- if do_greylisting_required then
- if do_greylisting_required ~= "1" then return end
+ if action == 'reject' then return end
+ if do_greylisting_required and do_greylisting_required ~= "1" then
+ return
else
- if action == 'no action' or action == 'reject' then return end
+ if action == 'no action' then return end
end
local body_key = data_key(task)
local meta_key = envelope_key(task)
@@ -322,7 +323,7 @@ local function greylist_set(task)
rspamd_logger.infox(task, 'got error while connecting to redis: %1', upstream:get_addr())
upstream:fail()
end
- elseif do_greylisting or do_greylisting_required then
+ elseif do_greylisting or (do_greylisting_required and do_greylisting_required == "1") then
local t = tostring(math.floor(rspamd_util.get_time()))
local end_time = rspamd_util.time_to_string(t + settings['timeout'])
rspamd_logger.infox(task, 'greylisted until "%s", new record', end_time)