]> source.dussan.org Git - rspamd.git/commitdiff
[Minor] Restore full bind_line
authorVsevolod Stakhov <vsevolod@highsecure.ru>
Mon, 7 Oct 2019 15:36:03 +0000 (16:36 +0100)
committerVsevolod Stakhov <vsevolod@highsecure.ru>
Mon, 7 Oct 2019 15:36:03 +0000 (16:36 +0100)
src/libserver/cfg_file.h
src/libserver/cfg_utils.c
src/libserver/worker_util.c

index d42fbfba9ec07e8e03ad033b8da4b53224aa4e55..71d05987334b3f58bf4e1a7e8e24c76f483d9ac4 100644 (file)
@@ -202,7 +202,7 @@ struct rspamd_worker_bind_conf {
        GPtrArray *addrs;
        guint cnt;
        gchar *name;
-       const gchar *bind_line;
+       gchar *bind_line;
        gboolean is_systemd;
        struct rspamd_worker_bind_conf *next;
 };
index 2d4da27ac8222116d5c3f7dc4b6dd9cddf085c8a..be709a05189d94daa5ee322507fb0899067149b0 100644 (file)
@@ -86,7 +86,7 @@ rspamd_parse_bind_line (struct rspamd_config *cfg,
        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 */
@@ -1077,6 +1077,7 @@ rspamd_worker_conf_dtor (struct rspamd_worker_conf *wcf)
 
                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);
                }
index 6c478db6fe1a9b6e88477a280a8f0e3596cb6410..7a06988c9d3e888dc41122fa7440dcaf7c642e2f 100644 (file)
@@ -907,7 +907,7 @@ rspamd_fork_worker (struct rspamd_main *rspamd_main,
 
                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);
@@ -933,7 +933,7 @@ rspamd_fork_worker (struct rspamd_main *rspamd_main,
                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,
@@ -949,7 +949,7 @@ rspamd_fork_worker (struct rspamd_main *rspamd_main,
                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);
@@ -969,8 +969,8 @@ rspamd_fork_worker (struct rspamd_main *rspamd_main,
                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;
        }