aboutsummaryrefslogtreecommitdiffstats
path: root/src/rspamadm
diff options
context:
space:
mode:
authorVsevolod Stakhov <vsevolod@highsecure.ru>2018-10-08 17:15:19 +0100
committerVsevolod Stakhov <vsevolod@highsecure.ru>2018-10-08 17:31:43 +0100
commit9676fd5574bdccc88385d47437c081052adcfde5 (patch)
treee99e618539cd11858b7262a49e1edf5aa481bae9 /src/rspamadm
parent10d67f5c800831b0dd152bf8708237b6b69c9e51 (diff)
downloadrspamd-9676fd5574bdccc88385d47437c081052adcfde5.tar.gz
rspamd-9676fd5574bdccc88385d47437c081052adcfde5.zip
[Fix] Stop libevent from using cached time in rspamadm
Diffstat (limited to 'src/rspamadm')
-rw-r--r--src/rspamadm/lua_repl.c2
-rw-r--r--src/rspamadm/rspamadm.c11
2 files changed, 12 insertions, 1 deletions
diff --git a/src/rspamadm/lua_repl.c b/src/rspamadm/lua_repl.c
index 81dba946a..2df02a9de 100644
--- a/src/rspamadm/lua_repl.c
+++ b/src/rspamadm/lua_repl.c
@@ -803,7 +803,7 @@ rspamadm_lua (gint argc, gchar **argv, const struct rspamadm_command *cmd)
exit (EXIT_FAILURE);
}
- ev_base = event_init ();
+ ev_base = rspamd_main->ev_base;
ctx = g_malloc0 (sizeof (*ctx));
http = rspamd_http_router_new (rspamadm_lua_error_handler,
rspamadm_lua_finish_handler,
diff --git a/src/rspamadm/rspamadm.c b/src/rspamadm/rspamadm.c
index c981d243c..301fa168f 100644
--- a/src/rspamadm/rspamadm.c
+++ b/src/rspamadm/rspamadm.c
@@ -368,7 +368,15 @@ main (gint argc, gchar **argv, gchar **env)
rspamd_main->type = process_quark;
rspamd_main->server_pool = rspamd_mempool_new (rspamd_mempool_suggest_size (),
"rspamadm");
+
+#ifdef HAVE_EVENT_NO_CACHE_TIME_FLAG
+ struct event_config *ev_cfg;
+ ev_cfg = event_config_new ();
+ event_config_set_flag (ev_cfg, EVENT_BASE_FLAG_NO_CACHE_TIME);
+ rspamd_main->ev_base = event_base_new_with_config (ev_cfg);
+#else
rspamd_main->ev_base = event_init ();
+#endif
rspamadm_fill_internal_commands (all_commands);
help_command.command_data = all_commands;
@@ -537,6 +545,9 @@ main (gint argc, gchar **argv, gchar **env)
}
event_base_loopexit (rspamd_main->ev_base, NULL);
+#ifdef HAVE_EVENT_NO_CACHE_TIME_FLAG
+ event_config_free (ev_cfg);
+#endif
REF_RELEASE (rspamd_main->cfg);
rspamd_log_close (rspamd_main->logger, TRUE);