]> source.dussan.org Git - rspamd.git/commitdiff
[Test] SPF external IP map
authorkorgoth1 <vladislav.stakhov@gmail.com>
Thu, 16 Jan 2020 12:06:54 +0000 (15:06 +0300)
committerkorgoth1 <vladislav.stakhov@gmail.com>
Thu, 16 Jan 2020 12:06:54 +0000 (15:06 +0300)
src/plugins/lua/spf.lua
test/functional/configs/dmarc.conf
test/functional/configs/maps/external_relay_ip.list [new file with mode: 0644]

index 3dbef56a518bf46f394c511e949885138891bc1c..d6949cd760e0e2f45c594ce82915e7d4a931130a 100644 (file)
@@ -67,7 +67,6 @@ local default_config = {
   disable_ipv6 = false,
   symbols = symbols,
   external_relay = nil,
-  external_map = nil,
 }
 
 local local_config = rspamd_config:get_all_opt('spf')
@@ -90,7 +89,6 @@ local function spf_check_callback(task)
     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
@@ -220,39 +218,13 @@ if local_config.whitelist 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,
index f086f9238f291c537db4ae7240f92aa3e9db6eeb..b6164f9d212accdb09154222bf0e20fb8a0ed135 100644 (file)
@@ -1,6 +1,6 @@
 dmarc { }
 spf {
   external_relay = [
-    "$LOCAL_CONFDIR/local.d/maps.d/external_relay_ip.inc.local",
+       "${TESTDIR}/configs/maps/external_relay_ip.list",
   ];
 }
\ No newline at end of file
diff --git a/test/functional/configs/maps/external_relay_ip.list b/test/functional/configs/maps/external_relay_ip.list
new file mode 100644 (file)
index 0000000..3fc5c17
--- /dev/null
@@ -0,0 +1 @@
+192.168.1.1
\ No newline at end of file