aboutsummaryrefslogtreecommitdiffstats
path: root/src/plugins
diff options
context:
space:
mode:
authorAndrew Lewis <nerf@judo.za.org>2016-08-22 14:47:18 +0200
committerAndrew Lewis <nerf@judo.za.org>2016-08-22 15:52:49 +0200
commit5ba76f25279b71085eb9b633384f293cc98bf5db (patch)
treeec9f7b7edc8ff623fdf682216b7af56cfd1afc7a /src/plugins
parent54c97cf64fe6a22687040d58b18fef791ffb2816 (diff)
downloadrspamd-5ba76f25279b71085eb9b633384f293cc98bf5db.tar.gz
rspamd-5ba76f25279b71085eb9b633384f293cc98bf5db.zip
[Fix] DMARC: Fix alignment checking for subdomains
Diffstat (limited to 'src/plugins')
-rw-r--r--src/plugins/lua/dmarc.lua10
1 files changed, 4 insertions, 6 deletions
diff --git a/src/plugins/lua/dmarc.lua b/src/plugins/lua/dmarc.lua
index 74f395cf8..d9961956f 100644
--- a/src/plugins/lua/dmarc.lua
+++ b/src/plugins/lua/dmarc.lua
@@ -213,9 +213,8 @@ local function dmarc_callback(task)
if rspamd_util.strequal_caseless(efrom[1]['domain'], from[1]['domain']) then
spf_ok = true
elseif not strict_spf then
- if rspamd_util.strequal_caseless(
- string.sub(efrom[1]['domain'], -string.len('.' .. lookup_domain)),
- '.' .. lookup_domain) then
+ local spf_tld = rspamd_util.get_tld(efrom[1]['domain'])
+ if rspamd_util.strequal_caseless(spf_tld, dmarc_domain) then
spf_ok = true
end
end
@@ -227,9 +226,8 @@ local function dmarc_callback(task)
if rspamd_util.strequal_caseless(from[1]['domain'], dkim_domain) then
dkim_ok = true
elseif not strict_dkim then
- if rspamd_util.strequal_caseless(
- string.sub(dkim_domain, -string.len('.' .. lookup_domain)),
- '.' .. lookup_domain) then
+ local dkim_tld = rspamd_util.get_tld(dkim_domain)
+ if rspamd_util.strequal_caseless(dkim_tld, dmarc_domain) then
dkim_ok = true
end
end