From: Anton Yuzhaninov Date: Tue, 27 Apr 2021 15:50:04 +0000 (+0100) Subject: [Rules] Add raw addresses to MULTIPLE_FROM options X-Git-Tag: 3.0~455^2 X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=refs%2Fpull%2F3733%2Fhead;p=thirdparty%2Frspamd.git [Rules] Add raw addresses to MULTIPLE_FROM options It is confusing to have MULTIPLE_FROM with a single address in options, which happens if one of addresses is empty - usually because of misplaces <>. While here simplify condition. --- diff --git a/rules/headers_checks.lua b/rules/headers_checks.lua index 79b8e5c2f3..f0f64daff6 100644 --- a/rules/headers_checks.lua +++ b/rules/headers_checks.lua @@ -576,15 +576,8 @@ rspamd_config.MISSING_FROM = { rspamd_config.MULTIPLE_FROM = { callback = function(task) local from = task:get_from('mime') - if from and from[1] then - if #from > 1 then - return true,1.0,table.concat( - fun.totable( - fun.map(function(a) return a.addr end, - fun.filter(function(a) return a.addr and a.addr ~= '' end, - from))), - ',') - end + if from and from[2] then + return true, 1.0, fun.totable(fun.map(function(a) return a.raw end, from)) end return false end, diff --git a/test/functional/cases/280_rules.robot b/test/functional/cases/280_rules.robot index 3d99db84df..5bab110166 100644 --- a/test/functional/cases/280_rules.robot +++ b/test/functional/cases/280_rules.robot @@ -86,7 +86,7 @@ FROM_NEQ_ENVFROM PHISH_SENDER_A Scan File ${TESTDIR}/messages/phish_sender.eml - Expect Symbol With Score And Exact Options MULTIPLE_FROM 9.0 any@attack.com,admin@legitimate.com + Expect Symbol With Score And Exact Options MULTIPLE_FROM 9.0 Expect Symbol With Score And Exact Options MULTIPLE_UNIQUE_HEADERS 7.0 From PHISH_SENDER_B