]> source.dussan.org Git - rspamd.git/commitdiff
[Fix] Don't use whitelist/greylist maps as regexp, but as map 1756/head
authorJean-Louis Dupond <jean-louis@dupond.be>
Mon, 17 Jul 2017 19:54:28 +0000 (21:54 +0200)
committerJean-Louis Dupond <jean-louis@dupond.be>
Mon, 17 Jul 2017 19:54:28 +0000 (21:54 +0200)
In whitelist & greylist module, the domain files (like spf_dkim_whitelist.inc, etc) were read as regexp map.
This caused the following false whitelists:
WHITELIST_SPF_DKIM(-3)[onmicrosoft.com]
this while only 'microsoft.com' was in the list!

Reading the maps as 'map'/'hash' instead of 'regexp' fixes the issue.

src/plugins/lua/greylist.lua
src/plugins/lua/whitelist.lua

index 586661d44d27c6b2e0a5b00e85ce90b2cd5e2e19..719ba9270871498a564260c22dedb228a434aae2 100644 (file)
@@ -413,7 +413,7 @@ if opts then
   whitelisted_ip = rspamd_map_add('greylist', 'whitelisted_ip', 'radix',
     'Greylist whitelist ip map')
   whitelist_domains_map = rspamd_map_add('greylist', 'whitelist_domains_url',
-    'regexp', 'Greylist whitelist domains map')
+    'map', 'Greylist whitelist domains map')
 
   redis_params = rspamd_parse_redis_server('greylist')
   if not redis_params then
index 634591e03d60ffade28e48a56135595b6c1aa1cf..5677bd4159ffdd0630c79eef5170e2c621fb7767 100644 (file)
@@ -208,7 +208,7 @@ local configure_whitelist_module = function()
           rule['map'] = rspamd_config:add_map{
             url = rule['domains'],
             description = "Whitelist map for " .. symbol,
-            type = 'regexp'
+            type = 'map'
           }
         elseif type(rule['domains']) == 'table' then
           -- Transform ['domain1', 'domain2' ...] to indexes:
@@ -236,7 +236,7 @@ local configure_whitelist_module = function()
             rule['map'] = rspamd_config:add_map{
               url = rule['domains'],
               description = "Whitelist map for " .. symbol,
-              type = 'regexp'
+              type = 'map'
             }
           end
         else