disable_ipv6 = false,
symbols = symbols,
external_relay = nil,
- external_map = nil,
}
local local_config = rspamd_config:get_all_opt('spf')
local found = false
for i,hdr in ipairs(rh) do
- --if hdr.real_ip and hdr.real_ip == local_config.external_relay then
if hdr.real_ip and local_config.external_relay:get_key(hdr.real_ip) then
-- We can use the next header as a source of IP address
if rh[i + 1] then
"radix", "SPF whitelist map")
end
---[[if local_config.external_relay then
- local rspamd_ip = require "rspamd_ip"
- local ip = rspamd_ip.from_string(local_config.external_relay)
-
- if not ip or not ip:is_valid() then
- rspamd_logger.errx(rspamd_config, "invalid external relay IP: %s",
- local_config.external_relay)
- local_config.external_relay = nil
- else
- local_config.external_relay = ip
- end]]
-
-local function external_ip_spf(task)
- if local_config.external_relay then
- if local_config.external_relay:get_key(task:get_received_headers()) then
- task:insert_result('EXT_RELAY', 1.0, task:get_received_headers())
- end
- end
-end
-
if local_config.external_relay then
local lua_maps = require "lua_maps"
local_config.external_relay = lua_maps.map_add_from_ucl(local_config.external_relay,
- mtype: 'radix', description: 'External IP SPF map')
+ "radix", "External IP SPF map")
end
-rspamd_config:register_symbol{
- type = 'normal'
- callback = external_ip_spf,
- name = 'EXT_RELAY'
-}
-
for _,sym in pairs(local_config.symbols) do
rspamd_config:register_symbol{
name = sym,