diff options
Diffstat (limited to 'rules/misc.lua')
-rw-r--r-- | rules/misc.lua | 17 |
1 files changed, 15 insertions, 2 deletions
diff --git a/rules/misc.lua b/rules/misc.lua index bc9b044eb..2e4d25418 100644 --- a/rules/misc.lua +++ b/rules/misc.lua @@ -597,13 +597,26 @@ rspamd_config.R_BAD_CTE_7BIT = { for _,p in ipairs(tp) do local cte = p:get_mimepart():get_cte() or '' if cte ~= '8bit' and p:has_8bit_raw() then - return true,1.0,cte + local _,_,attrs = p:get_mimepart():get_type_full() + local mul = 1.0 + local params = {cte} + if attrs then + print(attrs.charset) + if attrs.charset and attrs.charset:lower() == "utf-8" then + -- Penalise rule as people don't know that utf8 is surprisingly + -- eight bit encoding + mul = 0.3 + table.insert(params, "utf8") + end + end + + return true,mul,params end end return false end, - score = 4.0, + score = 3.5, description = 'Detects bad content-transfer-encoding for text parts', group = 'header' } |