Browse Source

* Improve forged_recipients plugin [1]

Add loading of local rules to rspamd.lua [1]

[1] Suggested by Victor Ustugov
tags/0.3.7
Vsevolod Stakhov 13 years ago
parent
commit
bbc68360a1
2 changed files with 39 additions and 3 deletions
  1. 14
    0
      conf/lua/rspamd.lua
  2. 25
    3
      src/plugins/lua/forged_recipients.lua

+ 14
- 0
conf/lua/rspamd.lua View File

@@ -40,3 +40,17 @@ reconf['R_EMPTY_IMAGE'] = function (task)
return false
end


local function file_exists(filename)
local file = io.open(filename)
if file then
io.close(file)
return true
else
return false
end
end

if file_exists('rspamd.local.lua') then
dofile('rspamd.local.lua')
end

+ 25
- 3
src/plugins/lua/forged_recipients.lua View File

@@ -31,7 +31,15 @@ function check_forged_headers(task)
end
if mime_rcpt then
for _,mr in ipairs(mime_rcpt) do
if string.find(mr, sr) then
local i = string.find(mr, '<', 1, true)
if i then
local j = string.find(mr, '>', i, true)
if j then
mr = string.sub(mr, i+1, j-1)
end
end

if string.lower(mr) == string.lower(sr) then
res = true
break
end
@@ -39,7 +47,14 @@ function check_forged_headers(task)
end
if mime_cc then
for _,mr in ipairs(mime_cc) do
if string.find(mr, sr) then
local i = string.find(mr, '<', 1, true)
if i then
local j = string.find(mr, '>', i, true)
if j then
mr = string.sub(mr, i+1, j-1)
end
end
if string.lower(mr) == string.lower(sr) then
res = true
break
end
@@ -57,7 +72,14 @@ function check_forged_headers(task)
local smtp_from = task:get_from()
if smtp_form then
local mime_from = msg:get_header('From')
if not mime_from or not string.find(mime_from[0], smtp_from) then
local i = string.find(mime_from[0], '<', 1, true)
if i then
local j = string.find(mime_from[0], '>', i, true)
if j then
mime_from[0] = string.sub(mime_from[0], i+1, j-1)
end
end
if not mime_from or not (string.lower(mime_from[0]) == string.lower(smtp_from)) then
task:insert_result(symbol_sender, 1)
end
end

Loading…
Cancel
Save