From: Andrew Lewis Date: Fri, 31 Jan 2014 08:48:49 +0000 (+0200) Subject: Support HELO blacklist and fix options registration for RDNS blacklist X-Git-Tag: 0.7.0~429^2~2 X-Git-Url: https://source.dussan.org/?a=commitdiff_plain;h=32f1660faccc8e15e0de210d38757cf1328366cc;p=rspamd.git Support HELO blacklist and fix options registration for RDNS blacklist --- diff --git a/src/plugins/lua/rbl.lua b/src/plugins/lua/rbl.lua index 0dcc48e7b..898da4e41 100644 --- a/src/plugins/lua/rbl.lua +++ b/src/plugins/lua/rbl.lua @@ -77,6 +77,14 @@ local function rbl_cb (task) task:inc_dns_req() end + local helo = task:get_helo() + if helo then + for k,rbl in pairs(rbls) do + if rbl['helo'] then + task:get_resolver():resolve_a(task:get_session(), task:get_mempool(), helo .. '.' .. rbl['rbl'], rbl_dns_cb, k) + end + end + end local sender_dns = task:get_hostname() if sender_dns ~= nil and sender_dns ~= 'unknown' then for k,rbl in pairs(rbls) do @@ -117,6 +125,8 @@ if type(rspamd_config.get_api_version) ~= 'nil' then rspamd_config:register_module_option('rbl', 'default_ipv6', 'string') rspamd_config:register_module_option('rbl', 'default_received', 'string') rspamd_config:register_module_option('rbl', 'default_from', 'string') + rspamd_config:register_module_option('rbl', 'default_rdns', 'string') + rspamd_config:register_module_option('rbl', 'default_helo', 'string') end end @@ -143,8 +153,11 @@ end if(opts['default_rdns'] == nil) then opts['default_rdns'] = false end +if(opts['default_helo'] == nil) then + opts['default_helo'] = false +end for key,rbl in pairs(opts['rbls']) do - local o = { "ipv4", "ipv6", "from", "received", "unknown", "rdns" } + local o = { "ipv4", "ipv6", "from", "received", "unknown", "rdns", "helo" } for i=1,table.maxn(o) do if(rbl[o[i]] == nil) then rbl[o[i]] = opts['default_' .. o[i]]