summaryrefslogtreecommitdiffstats
path: root/rules
diff options
context:
space:
mode:
authorAndrew Lewis <nerf@judo.za.org>2017-02-13 14:59:48 +0200
committerAndrew Lewis <nerf@judo.za.org>2017-02-13 15:34:51 +0200
commit05b34a3daca7afa635e99816b04922eb46bdb799 (patch)
tree46f84fe1bd5572163286f12f7f53f7d7194db000 /rules
parent9369163b3ff393da1ebd28908a47aad483ea3b0a (diff)
downloadrspamd-05b34a3daca7afa635e99816b04922eb46bdb799.tar.gz
rspamd-05b34a3daca7afa635e99816b04922eb46bdb799.zip
[Feature] Add FROM_NAME_EXCESS_SPACE rule
Diffstat (limited to 'rules')
-rw-r--r--rules/misc.lua6
1 files changed, 6 insertions, 0 deletions
diff --git a/rules/misc.lua b/rules/misc.lua
index df9377101..9127f68c9 100644
--- a/rules/misc.lua
+++ b/rules/misc.lua
@@ -487,6 +487,10 @@ local check_from_id = rspamd_config:register_callback_symbol('CHECK_FROM', 1.0,
if match then
task:insert_result('FROM_NAME_HAS_TITLE', 1.0, n:sub(match, match_end-1))
end
+ -- Check for excess spaces
+ if n:find('%s%s') then
+ task:insert_result('FROM_NAME_EXCESS_SPACE', 1.0)
+ end
end
if (envfrom and from and envfrom[1] and from[1] and
envfrom[1].addr:lower() == from[1].addr:lower())
@@ -514,6 +518,8 @@ rspamd_config:register_virtual_symbol('FROM_DN_EQ_ADDR', 1.0, check_from_id)
rspamd_config:set_metric_symbol('FROM_DN_EQ_ADDR', 1.0, 'From header display name is the same as the address')
rspamd_config:register_virtual_symbol('FROM_HAS_DN', 1.0, check_from_id)
rspamd_config:set_metric_symbol('FROM_HAS_DN', 0, 'From header has a display name')
+rspamd_config:register_virtual_symbol('FROM_NAME_EXCESS_SPACE', 1.0, check_from_id)
+rspamd_config:set_metric_symbol('FROM_NAME_EXCESS_SPACE', 1.0, 'From header display name contains excess whitespace')
rspamd_config:register_virtual_symbol('FROM_NAME_HAS_TITLE', 1.0, check_from_id)
rspamd_config:set_metric_symbol('FROM_NAME_HAS_TITLE', 1.0, 'From header display name has a title (Mr/Mrs/Dr)')
rspamd_config:register_virtual_symbol('FROM_EQ_ENVFROM', 1.0, check_from_id)