diff options
author | Andrew Lewis <nerf@judo.za.org> | 2016-08-22 14:47:18 +0200 |
---|---|---|
committer | Andrew Lewis <nerf@judo.za.org> | 2016-08-22 15:52:49 +0200 |
commit | 5ba76f25279b71085eb9b633384f293cc98bf5db (patch) | |
tree | ec9f7b7edc8ff623fdf682216b7af56cfd1afc7a /src/plugins | |
parent | 54c97cf64fe6a22687040d58b18fef791ffb2816 (diff) | |
download | rspamd-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.lua | 10 |
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 |