From: Andrew Lewis Date: Thu, 16 Mar 2017 19:07:35 +0000 (+0200) Subject: [Feature] Greylist: Support excluding low-scoring messages from greylisting X-Git-Tag: 1.5.3~7^2 X-Git-Url: https://source.dussan.org/?a=commitdiff_plain;h=refs%2Fpull%2F1528%2Fhead;p=rspamd.git [Feature] Greylist: Support excluding low-scoring messages from greylisting --- diff --git a/src/plugins/lua/greylist.lua b/src/plugins/lua/greylist.lua index 407652b6e..4a155e8a5 100644 --- a/src/plugins/lua/greylist.lua +++ b/src/plugins/lua/greylist.lua @@ -230,6 +230,19 @@ local function greylist_set(task) local action = task:get_metric_action('default') local ip = task:get_ip() + if settings.greylist_min_score then + local score = task:get_metric_score('default') + if score < settings.greylist_min_score then + rspamd_logger.infox(task, 'Score too low - skip greylisting') + if action == 'greylist' then + -- We are going to accept message + rspamd_logger.infox(task, 'Downgrading metric action from "greylist" to "no action"') + task:set_metric_action('default', 'no action') + end + return + end + end + if task:get_user() or (ip and ip:is_local()) then if action == 'greylist' then -- We are going to accept message