]> source.dussan.org Git - rspamd.git/commitdiff
Escape redis+selector 3840/head
authorforon <forondarena@gmail.com>
Fri, 6 Aug 2021 14:44:06 +0000 (16:44 +0200)
committerGitHub <noreply@github.com>
Fri, 6 Aug 2021 14:44:06 +0000 (16:44 +0200)
I believe it would be better to have the "redis+selector" pattern escaped as "redis%+selector". This would make it easier for string.find to match the documented map string.

src/plugins/lua/multimap.lua

index 172553cb396ce0fd400b2f3e17628e526e405ec5..8ae9030783a20cbeb587894cd57767c9767e9712 100644 (file)
@@ -1099,14 +1099,14 @@ local function add_multimap_rule(key, newrule)
       ret = true
     end
   elseif type(newrule['map']) == 'string' and
-      string.find(newrule['map'], '^redis+selector://.*$') then
+      string.find(newrule['map'], '^redis%+selector://.*$') then
     if not redis_params then
       rspamd_logger.infox(rspamd_config, 'no redis servers are specified, ' ..
           'cannot add redis map %s: %s', newrule['symbol'], newrule['map'])
       return nil
     end
 
-    local selector_str = string.match(newrule['map'], '^redis+selector://(.*)$')
+    local selector_str = string.match(newrule['map'], '^redis%+selector://(.*)$')
     local selector = lua_selectors.create_selector_closure(
         rspamd_config, selector_str, newrule['delimiter'] or "")