@@ -3605,8 +3605,7 @@ start_controller_worker (struct rspamd_worker *worker) | |||
ctx->ev_base = rspamd_prepare_worker (worker, | |||
"controller", | |||
rspamd_controller_accept_socket, | |||
TRUE); | |||
rspamd_controller_accept_socket); | |||
msec_to_tv (ctx->timeout, &ctx->io_tv); | |||
ctx->start_time = time (NULL); | |||
@@ -3802,6 +3801,9 @@ start_controller_worker (struct rspamd_worker *worker) | |||
rspamd_map_watch (worker->srv->cfg, ctx->ev_base, ctx->resolver, FALSE); | |||
} | |||
rspamd_lua_run_postloads (ctx->cfg->lua_state, ctx->cfg, ctx->ev_base, worker); | |||
/* Start event loop */ | |||
event_base_loop (ctx->ev_base, 0); | |||
rspamd_worker_block_signals (); | |||
@@ -2713,8 +2713,7 @@ start_fuzzy (struct rspamd_worker *worker) | |||
ctx->ev_base = rspamd_prepare_worker (worker, | |||
"fuzzy", | |||
NULL, | |||
FALSE); | |||
NULL); | |||
ctx->peer_fd = -1; | |||
ctx->worker = worker; | |||
ctx->cfg = worker->srv->cfg; |
@@ -290,8 +290,7 @@ start_hs_helper (struct rspamd_worker *worker) | |||
ctx->ev_base = rspamd_prepare_worker (worker, | |||
"hs_helper", | |||
NULL, | |||
FALSE); | |||
NULL); | |||
if (!rspamd_rs_compile (ctx, worker, FALSE)) { | |||
/* Tell main not to respawn more workers */ |
@@ -257,7 +257,7 @@ rspamd_worker_init_signals (struct rspamd_worker *worker, struct event_base *bas | |||
struct event_base * | |||
rspamd_prepare_worker (struct rspamd_worker *worker, const char *name, | |||
void (*accept_handler)(int, short, void *), gboolean load_lua) | |||
void (*accept_handler)(int, short, void *)) | |||
{ | |||
struct event_base *ev_base; | |||
struct event *accept_events; | |||
@@ -305,12 +305,6 @@ rspamd_prepare_worker (struct rspamd_worker *worker, const char *name, | |||
} | |||
} | |||
if (load_lua) { | |||
struct rspamd_config *cfg = worker->srv->cfg; | |||
rspamd_lua_run_postloads (cfg->lua_state, cfg, ev_base, worker); | |||
} | |||
return ev_base; | |||
} | |||
@@ -40,7 +40,7 @@ struct rspamd_worker_signal_handler; | |||
*/ | |||
struct event_base * | |||
rspamd_prepare_worker (struct rspamd_worker *worker, const char *name, | |||
void (*accept_handler)(int, short, void *), gboolean load_lua); | |||
void (*accept_handler)(int, short, void *)); | |||
/** | |||
* Set special signal handler for a worker |
@@ -190,8 +190,7 @@ start_log_helper (struct rspamd_worker *worker) | |||
ctx->ev_base = rspamd_prepare_worker (worker, | |||
"log_helper", | |||
NULL, | |||
TRUE); | |||
NULL); | |||
ctx->cfg = worker->srv->cfg; | |||
ctx->scripts = worker->cf->scripts; | |||
ctx->L = ctx->cfg->lua_state; | |||
@@ -222,6 +221,8 @@ start_log_helper (struct rspamd_worker *worker) | |||
rspamd_srv_send_command (worker, ctx->ev_base, &srv_cmd, ctx->pair[1], | |||
rspamd_log_helper_reply_handler, ctx); | |||
rspamd_mempool_unlock_mutex (worker->srv->start_mtx); | |||
rspamd_lua_run_postloads (ctx->cfg->lua_state, ctx->cfg, ctx->ev_base, | |||
worker); | |||
event_base_loop (ctx->ev_base, 0); | |||
close (ctx->pair[0]); | |||
rspamd_worker_block_signals (); |
@@ -352,8 +352,7 @@ start_lua_worker (struct rspamd_worker *worker) | |||
ctx->ev_base = rspamd_prepare_worker (worker, | |||
"lua_worker", | |||
lua_accept_socket, | |||
TRUE); | |||
lua_accept_socket); | |||
L = worker->srv->cfg->lua_state; | |||
ctx->L = L; | |||
@@ -392,9 +391,8 @@ start_lua_worker (struct rspamd_worker *worker) | |||
exit (EXIT_SUCCESS); | |||
} | |||
/* Maps events */ | |||
rspamd_map_watch (worker->srv->cfg, ctx->ev_base, ctx->resolver, 0); | |||
rspamd_lua_run_postloads (ctx->cfg->lua_state, ctx->cfg, ctx->ev_base, | |||
worker); | |||
event_base_loop (ctx->ev_base, 0); | |||
rspamd_worker_block_signals (); | |||
@@ -2040,8 +2040,7 @@ start_rspamd_proxy (struct rspamd_worker *worker) { | |||
ctx->cfg = worker->srv->cfg; | |||
ctx->ev_base = rspamd_prepare_worker (worker, "rspamd_proxy", | |||
proxy_accept_socket, | |||
TRUE); | |||
proxy_accept_socket); | |||
ctx->resolver = dns_resolver_init (worker->srv->logger, | |||
ctx->ev_base, | |||
@@ -2075,6 +2074,8 @@ start_rspamd_proxy (struct rspamd_worker *worker) { | |||
rspamd_milter_init_library (ctx->spam_header, ctx->sessions_cache, | |||
ctx->discard_on_reject); | |||
rspamd_lua_run_postloads (ctx->cfg->lua_state, ctx->cfg, ctx->ev_base, | |||
worker); | |||
event_base_loop (ctx->ev_base, 0); | |||
rspamd_worker_block_signals (); |
@@ -671,7 +671,7 @@ start_worker (struct rspamd_worker *worker) | |||
struct rspamd_worker_ctx *ctx = worker->ctx; | |||
ctx->cfg = worker->srv->cfg; | |||
ctx->ev_base = rspamd_prepare_worker (worker, "normal", accept_socket, TRUE); | |||
ctx->ev_base = rspamd_prepare_worker (worker, "normal", accept_socket); | |||
msec_to_tv (ctx->timeout, &ctx->io_tv); | |||
rspamd_symbols_cache_start_refresh (worker->srv->cfg->cache, ctx->ev_base, | |||
worker); | |||
@@ -686,6 +686,8 @@ start_worker (struct rspamd_worker *worker) | |||
/* XXX: stupid default */ | |||
ctx->keys_cache = rspamd_keypair_cache_new (256); | |||
rspamd_worker_init_scanner (worker, ctx->ev_base, ctx->resolver); | |||
rspamd_lua_run_postloads (ctx->cfg->lua_state, ctx->cfg, ctx->ev_base, | |||
worker); | |||
event_base_loop (ctx->ev_base, 0); | |||
rspamd_worker_block_signals (); |