diff options
author | Vsevolod Stakhov <vsevolod@highsecure.ru> | 2015-03-21 22:03:44 +0000 |
---|---|---|
committer | Vsevolod Stakhov <vsevolod@highsecure.ru> | 2015-03-21 22:03:44 +0000 |
commit | 2b6854531e2cfe19371309c29c398a3f9f422995 (patch) | |
tree | 0c18e570de1e484c414bff85096e582d3ea00e08 /src/libserver | |
parent | 6d7d4b3bf789c7b314ae6335c20f00d991a400df (diff) | |
download | rspamd-2b6854531e2cfe19371309c29c398a3f9f422995.tar.gz rspamd-2b6854531e2cfe19371309c29c398a3f9f422995.zip |
Fix composites parsing.
Diffstat (limited to 'src/libserver')
-rw-r--r-- | src/libserver/cfg_rcl.c | 13 |
1 files changed, 4 insertions, 9 deletions
diff --git a/src/libserver/cfg_rcl.c b/src/libserver/cfg_rcl.c index 5071b390f..e968b9faa 100644 --- a/src/libserver/cfg_rcl.c +++ b/src/libserver/cfg_rcl.c @@ -27,6 +27,7 @@ #include "utlist.h" #include "cfg_file.h" #include "lua/lua_common.h" +#include "expression.h" struct rspamd_rcl_default_handler_data { @@ -999,7 +1000,7 @@ rspamd_rcl_composite_handler (struct rspamd_config *cfg, GError **err) { const ucl_object_t *val; - struct expression *expr; + struct rspamd_expression *expr; struct rspamd_composite *composite; const gchar *composite_name, *composite_expression; gboolean new = TRUE; @@ -1027,14 +1028,8 @@ rspamd_rcl_composite_handler (struct rspamd_config *cfg, return FALSE; } - if ((expr = - parse_expression (cfg->cfg_pool, - (gchar *)composite_expression)) == NULL) { - g_set_error (err, - CFG_RCL_ERROR, - EINVAL, - "cannot parse composite expression: %s", - composite_expression); + if (!rspamd_parse_expression (composite_expression, 0, &composite_expr_subr, + NULL, cfg->cfg_pool, err, &expr)) { return FALSE; } |