numeric_urls = {},
emails = {},
replyto = {},
- mid = {},
dkim = {},
rdns = {
connfilter = true,
received_min_pos = ts.number:is_optional(),
received_nflags = ts.array_of(ts.string):is_optional(),
replyto = ts.boolean:is_optional(),
- mid = ts.boolean:is_optional(),
requests_limit = (ts.integer + ts.string / tonumber):is_optional(),
require_symbols = (
ts.array_of(ts.string) + (ts.string / function(s)
return true
end
- local function check_mid(task, requests_table, whitelist)
- local function get_raw_header(name)
- return ((task:get_header_full(name) or {})[1] or {})['value']
- end
-
- local mid = get_raw_header('Message-ID')
- if mid then
- local md = rspamd_util.parse_mail_address(mid, task:get_mempool())
- lua_util.debugm(N, task, 'check message-id %s', md[1])
-
- if md and md[1] and (md[1].addr and #md[1].addr > 0) then
- check_email_table(task, md[1], requests_table, whitelist, 'mid')
- end
- end
-
- return true
- end
-
-- Create function pipeline depending on rbl settings
local pipeline = {
is_alive, -- check monitored status
pipeline[#pipeline + 1] = check_replyto
description[#description + 1] = 'replyto'
end
- if rule.mid then
- pipeline[#pipeline + 1] = check_mid
- description[#description + 1] = 'mid'
- end
if rule.urls or rule.content_urls or rule.images or rule.numeric_urls then
pipeline[#pipeline + 1] = check_urls
end
-- Check if rbl is available for empty tasks
- if not (rbl.emails or rbl.urls or rbl.dkim or rbl.received or rbl.selector or rbl.replyto or rbl.mid) or
+ if not (rbl.emails or rbl.urls or rbl.dkim or rbl.received or rbl.selector or rbl.replyto) or
rbl.is_empty then
flags_tbl[#flags_tbl + 1] = 'empty'
end
end
if not rbl.whitelist and not rbl.ignore_url_whitelist and (global_opts.url_whitelist or rbl.url_whitelist) and
- (rbl.urls or rbl.emails or rbl.dkim or rbl.replyto or rbl.mid) and
+ (rbl.urls or rbl.emails or rbl.dkim or rbl.replyto) and
not (rbl.from or rbl.received) then
local def_type = 'set'
rbl.whitelist = lua_maps.map_add_from_ucl(rbl.url_whitelist or global_opts.url_whitelist, def_type,