Browse Source

[Fix] Allow to have negative actions limits

tags/1.7.0
Vsevolod Stakhov 6 years ago
parent
commit
d9d76b801c
2 changed files with 19 additions and 1 deletions
  1. 18
    0
      lualib/rspamd_config_transform.lua
  2. 1
    1
      src/libmime/filter.c

+ 18
- 0
lualib/rspamd_config_transform.lua View File

@@ -251,6 +251,24 @@ return function(cfg)
logger.errx('no actions defined')
end

-- Perform sanity check for actions
local actions_defs = {'greylist', 'add header', 'add_header',
'rewrite subject', 'rewrite_subject', 'reject'}

if not cfg.actions['no action'] and not cfg.actions['no_action'] and
not cfg.actions['accept'] then
for _,d in ipairs(actions_defs) do
if cfg.actions[d] then
if cfg.actions[d] < 0 then
cfg.actions['no action'] = cfg.actions[d] - 0.001
logger.infox('set no action score to: %s, as action %s has negative score',
cfg.actions['no action'], d)
break
end
end
end
end

if not cfg.group then
logger.errx('no symbol groups defined')
else

+ 1
- 1
src/libmime/filter.c View File

@@ -351,7 +351,7 @@ enum rspamd_action_type
rspamd_check_action_metric (struct rspamd_task *task, struct rspamd_metric_result *mres)
{
struct rspamd_action *action, *selected_action = NULL;
double max_score = 0, sc;
double max_score = -(G_MAXDOUBLE), sc;
int i;

if (task->pre_result.action == METRIC_ACTION_MAX) {

Loading…
Cancel
Save