commit 79cf1be: [Minor] Add symbols and type heuristic

Vsevolod Stakhov vsevolod at highsecure.ru
Sat May 18 13:42:06 UTC 2019


Author: Vsevolod Stakhov
Date: 2019-05-18 14:36:32 +0100
URL: https://github.com/rspamd/rspamd/commit/79cf1be1c86e3550394d3c0fb39182e6e4b57bd8 (HEAD -> master)

[Minor] Add symbols and type heuristic

---
 lualib/lua_maps_expressions.lua | 22 +++++++++++++++++++++-
 1 file changed, 21 insertions(+), 1 deletion(-)

diff --git a/lualib/lua_maps_expressions.lua b/lualib/lua_maps_expressions.lua
index 38cd0f296..f0b1f176a 100644
--- a/lualib/lua_maps_expressions.lua
+++ b/lualib/lua_maps_expressions.lua
@@ -129,7 +129,19 @@ local function create(cfg, obj, module_name)
           name, module_name)
     end
 
-    local map = lua_maps.map_add_from_ucl(rule.map, rule.type or 'set',
+    if not rule.type then
+      -- Guess type
+      if name:find('ip') or name:find('ipnet') then
+        rule.type = 'radix'
+      elseif name:find('regexp') or name:find('re_') then
+        rule.type = 'regexp'
+      elseif name:find('glob') then
+        rule.type = 'regexp'
+      else
+        rule.type = 'set'
+      end
+    end
+    local map = lua_maps.map_add_from_ucl(rule.map, rule.type,
         obj.description or module_name)
     if not map then
       rspamd_logger.errx(cfg, 'cannot add map for element %s in module %s',
@@ -174,6 +186,14 @@ local function create(cfg, obj, module_name)
 
   ret.expr = expr
 
+  if obj.symbol then
+    rspamd_config:register_symbol{
+      type = 'virtual,ghost',
+      name = obj.symbol,
+      score = 0.0,
+    }
+  end
+
   return ret
 end
 


More information about the Commits mailing list