1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64
|
local logger = require "rspamd_logger"
for i = 1,14 do
rspamd_config:register_symbol({
name = 'SPAM_SYMBOL'..tostring(i),
score = 5.0,
callback = function()
return true, 'Fires always'
end
})
rspamd_config:register_symbol({
name = 'HAM_SYMBOL'..tostring(i),
score = -3.0,
callback = function()
return true, 'Fires always'
end
})
end
rspamd_config:register_symbol({
name = 'NEUTRAL_SYMBOL',
score = 1.0,
flags = 'explicit_disable',
callback = function()
return true, 'Fires always'
end
})
rspamd_config.SAVE_NN_ROW = {
callback = function(task)
local fname = os.tmpname()
task:cache_set('nn_row_tmpfile', fname)
return true, 1.0, fname
end
}
rspamd_config.SAVE_NN_ROW_IDEMPOTENT = {
callback = function(task)
local function tohex(str)
return (str:gsub('.', function (c)
return string.format('%02X', string.byte(c))
end))
end
local fname = task:cache_get('nn_row_tmpfile')
if not fname then
return
end
local f, err = io.open(fname, 'w')
if not f then
logger.errx(task, err)
return
end
f:write(tohex(task:cache_get('SHORT_neural_vec_mpack') or ''))
f:close()
return
end,
type = 'idempotent',
flags = 'explicit_disable',
priority = 100,
}
dofile(rspamd_env.INSTALLROOT .. "/share/rspamd/rules/controller/init.lua")
|