cnf = g_malloc0 (sizeof (struct rspamd_worker_bind_conf));
cnf->cnt = 1024;
- cnf->bind_line = str;
+ cnf->bind_line = g_strdup (str);
if (g_ascii_strncasecmp (str, "systemd:", sizeof ("systemd:") - 1) == 0) {
/* The actual socket will be passed by systemd environment */
LL_FOREACH_SAFE (wcf->bind_conf, cnf, tmp) {
g_free (cnf->name);
+ g_free (cnf->bind_line);
g_ptr_array_free (cnf->addrs, TRUE);
g_free (cnf);
}
if (cf->bind_conf) {
setproctitle ("%s process (%s)", cf->worker->name,
- cf->bind_conf->name);
+ cf->bind_conf->bind_line);
}
else {
setproctitle ("%s process", cf->worker->name);
if (cf->bind_conf) {
msg_info_main ("starting %s process %P (%d); listen on: %s",
cf->worker->name,
- getpid (), index, cf->bind_conf->name);
+ getpid (), index, cf->bind_conf->bind_line);
}
else {
msg_info_main ("starting %s process %P (%d)", cf->worker->name,
exit (EXIT_FAILURE);
break;
case -1:
- msg_err_main ("cannot fork main process. %s", strerror (errno));
+ msg_err_main ("cannot fork main process: %s", strerror (errno));
if (rspamd_main->pfh) {
rspamd_pidfile_remove (rspamd_main->pfh);
ev_child_start (rspamd_main->event_loop, &wrk->cld_ev);
rspamd_main_heartbeat_start (wrk, rspamd_main->event_loop);
/* Insert worker into worker's table, pid is index */
- g_hash_table_insert (rspamd_main->workers, GSIZE_TO_POINTER (
- wrk->pid), wrk);
+ g_hash_table_insert (rspamd_main->workers,
+ GSIZE_TO_POINTER (wrk->pid), wrk);
break;
}