diff options
author | Vsevolod Stakhov <vsevolod@highsecure.ru> | 2018-12-03 14:19:39 +0000 |
---|---|---|
committer | Vsevolod Stakhov <vsevolod@highsecure.ru> | 2018-12-03 14:19:39 +0000 |
commit | 2bcf32721918984cb21ec2ed2d6d38fe08e060b7 (patch) | |
tree | c567c2d64c7762265f494a65b8ff8553db3d57eb /src/libserver/cfg_utils.c | |
parent | 5f7111cfe60622a9ea7d6d9503fcd04c900f21fe (diff) | |
download | rspamd-2bcf32721918984cb21ec2ed2d6d38fe08e060b7.tar.gz rspamd-2bcf32721918984cb21ec2ed2d6d38fe08e060b7.zip |
[Feature] Implement more strict configuration tests
Diffstat (limited to 'src/libserver/cfg_utils.c')
-rw-r--r-- | src/libserver/cfg_utils.c | 19 |
1 files changed, 15 insertions, 4 deletions
diff --git a/src/libserver/cfg_utils.c b/src/libserver/cfg_utils.c index 550e4b730..ec2e48786 100644 --- a/src/libserver/cfg_utils.c +++ b/src/libserver/cfg_utils.c @@ -1470,6 +1470,7 @@ rspamd_init_filters (struct rspamd_config *cfg, bool reconfig) module_t *mod, **pmod; guint i = 0; struct module_ctx *mod_ctx, *cur_ctx; + gboolean ret = TRUE; /* Init all compiled modules */ @@ -1504,11 +1505,19 @@ rspamd_init_filters (struct rspamd_config *cfg, bool reconfig) mod_ctx->enabled = rspamd_config_is_module_enabled (cfg, mod->name); if (reconfig) { - (void)mod->module_reconfig_func (cfg); - msg_info_config ("reconfig of %s", mod->name); + if (!mod->module_reconfig_func (cfg)) { + msg_err_config ("reconfig of %s failed!", mod->name); + } + else { + msg_info_config ("reconfig of %s", mod->name); + } + } else { - (void)mod->module_config_func (cfg); + if (!mod->module_config_func (cfg)) { + msg_info_config ("config of %s failed!", mod->name); + ret = FALSE; + } } } @@ -1519,7 +1528,9 @@ rspamd_init_filters (struct rspamd_config *cfg, bool reconfig) cur = g_list_next (cur); } - return rspamd_init_lua_filters (cfg, 0); + ret = rspamd_init_lua_filters (cfg, 0) && ret; + + return ret; } static void |