summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--src/plugins/lua/rbl.lua11
1 files changed, 8 insertions, 3 deletions
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