diff options
author | Vsevolod Stakhov <vsevolod@highsecure.ru> | 2013-09-13 01:09:09 +0100 |
---|---|---|
committer | Vsevolod Stakhov <vsevolod@highsecure.ru> | 2013-09-13 01:09:09 +0100 |
commit | 5edc7624cee30676fc91be2759ca5a9bc31e54ee (patch) | |
tree | 87e3ae2847f341ade21e13663f2577826dd5b4a1 /src/lua | |
parent | 29c04315424483ba6d033d1811254528c94e9ec5 (diff) | |
download | rspamd-5edc7624cee30676fc91be2759ca5a9bc31e54ee.tar.gz rspamd-5edc7624cee30676fc91be2759ca5a9bc31e54ee.zip |
Refactor metric actions handling.
Use array of actions instead of a linked list to speed up processing.
* Removed required_score, reject_score and action in metric config,
now REJECT is the only default action for a metric.
Diffstat (limited to 'src/lua')
-rw-r--r-- | src/lua/lua_task.c | 7 |
1 files changed, 4 insertions, 3 deletions
diff --git a/src/lua/lua_task.c b/src/lua/lua_task.c index d78aff036..86dcd459d 100644 --- a/src/lua/lua_task.c +++ b/src/lua/lua_task.c @@ -1552,9 +1552,9 @@ lua_task_get_metric_score (lua_State *L) lua_newtable (L); lua_pushnumber (L, metric_res->score); lua_rawseti (L, -2, 1); - lua_pushnumber (L, metric_res->metric->required_score); + lua_pushnumber (L, metric_res->metric->actions[METRIC_ACTION_REJECT].score); lua_rawseti (L, -2, 2); - lua_pushnumber (L, metric_res->metric->reject_score); + lua_pushnumber (L, metric_res->metric->actions[METRIC_ACTION_REJECT].score); lua_rawseti (L, -2, 3); } else { @@ -1578,7 +1578,8 @@ lua_task_get_metric_action (lua_State *L) if (task && metric_name) { if ((metric_res = g_hash_table_lookup (task->results, metric_name)) != NULL) { - action = check_metric_action (metric_res->score, metric_res->metric->required_score, metric_res->metric); + action = check_metric_action (metric_res->score, + metric_res->metric->actions[METRIC_ACTION_REJECT].score, metric_res->metric); lua_pushstring (L, str_action_metric (action)); } else { |