local rspamd_text = require "rspamd_text"
local rspamd_util = require "rspamd_util"
local rspamd_dns = require "rspamd_dns"
+local fun = require "fun"
local N = 'dmarc_report'
-- Process a single rua entry, validating in DNS if needed
local function process_rua(dmarc_domain, rua)
- local parts = lua_util.str_split(rua, ',')
-
-- Remove size limitation, as we don't care about them
local addrs = {}
- for _, rua_part in ipairs(parts) do
+ for rua_part in fun.map(lua_util.str_trim, lua_util.str_split(rua, ',')) do
local u = rspamd_url.create(pool, rua_part:gsub('!%d+[kmg]?$', ''))
local u2 = rspamd_url.create(pool, dmarc_domain)
if u and (u:get_protocol() or '') == 'mailto' and u:get_user() then
end
end
else
- logger.errx('invalid rua url: "%s""', tostring(u or 'null'))
+ logger.errx('invalid rua url: "%s""', rua_part)
end
end