From 72085d95ec47a203efc384df618607ad9e20d766 Mon Sep 17 00:00:00 2001 From: Alexander Moisseev Date: Mon, 28 Jan 2019 11:02:32 +0300 Subject: [PATCH] [Fix] MID module: Fix DKIM domain matching --- src/plugins/lua/mid.lua | 22 ++++++++++++---------- 1 file changed, 12 insertions(+), 10 deletions(-) diff --git a/src/plugins/lua/mid.lua b/src/plugins/lua/mid.lua index 5410e7f9f..0eccd360b 100644 --- a/src/plugins/lua/mid.lua +++ b/src/plugins/lua/mid.lua @@ -49,18 +49,20 @@ local function known_mid_cb(task) local das = task:get_symbol(settings['symbol_dkim_allow']) if ((das or E)[1] or E).options then for _,dkim_domain in ipairs(das[1]['options']) do - local v = map:get_key(dkim_domain) - if v then - if v == '' then - if not header then - task:insert_result(settings['symbol_known_no_mid'], 1, dkim_domain) - return - end - else - re[dkim_domain] = rspamd_regexp.create_cached(v) - if header and re[dkim_domain] and re[dkim_domain]:match(header) then + if dkim_domain then + local v = map:get_key(dkim_domain:match "[^:]+") + if v then + if v == '' then + if not header then + task:insert_result(settings['symbol_known_no_mid'], 1, dkim_domain) + return + end + else + re[dkim_domain] = rspamd_regexp.create_cached(v) + if header and re[dkim_domain] and re[dkim_domain]:match(header) then task:insert_result(settings['symbol_known_mid'], 1, dkim_domain) return + end end end end -- 2.39.5