From: Vsevolod Stakhov Date: Fri, 28 Jul 2017 17:59:46 +0000 (+0100) Subject: [Fix] Do not fail rbl plugin when there are no received or emails X-Git-Tag: 1.7.0~797 X-Git-Url: https://source.dussan.org/?a=commitdiff_plain;h=70fe412fc5da55f3bd4e1ddeb03eace189d355c3;p=rspamd.git [Fix] Do not fail rbl plugin when there are no received or emails --- diff --git a/src/plugins/lua/rbl.lua b/src/plugins/lua/rbl.lua index a6b54539e..55f2bffea 100644 --- a/src/plugins/lua/rbl.lua +++ b/src/plugins/lua/rbl.lua @@ -159,7 +159,10 @@ local function rbl_cb (task) return params[to_resolve] end - local havegot = {} + local havegot = { + emails = {}, + received = {} + } local notgot = {} local alive_rbls = fun.filter(function(_, rbl) @@ -242,10 +245,11 @@ local function rbl_cb (task) if notgot['emails'] then return false end - if not havegot['emails'] then + if #havegot['emails'] == 0 then havegot['emails'] = task:get_emails() if havegot['emails'] == nil then notgot['emails'] = true + havegot['emails'] = {} return false end end @@ -264,10 +268,11 @@ local function rbl_cb (task) if notgot['received'] then return false end - if not havegot['received'] then + if #havegot['received'] == 0 then havegot['received'] = task:get_received_headers() if next(havegot['received']) == nil then notgot['received'] = true + havegot['received'] = {} return false end end