From: Vsevolod Stakhov Date: Wed, 16 Sep 2020 14:33:26 +0000 (+0100) Subject: [Fix] Fix multiple listen configuration X-Git-Tag: 2.6~43 X-Git-Url: http://git.ipfire.org/gitweb.cgi?a=commitdiff_plain;h=4f72ad9744deb0141b3ad31722031a98aa5c4a58;p=thirdparty%2Frspamd.git [Fix] Fix multiple listen configuration --- diff --git a/src/libserver/worker_util.c b/src/libserver/worker_util.c index 89ebc10cbd..2d40d057c2 100644 --- a/src/libserver/worker_util.c +++ b/src/libserver/worker_util.c @@ -1056,7 +1056,7 @@ rspamd_handle_child_fork (struct rspamd_worker *wrk, GList *elt = (GList *)v; GList *our = cf->listen_socks; - if (our != elt) { + if (g_list_position (our, elt) == -1) { GList *cur = elt; while (cur) { @@ -1064,7 +1064,10 @@ rspamd_handle_child_fork (struct rspamd_worker *wrk, (struct rspamd_worker_listen_socket *)cur->data; if (ls->fd != -1 && close (ls->fd) == -1) { - msg_err ("cannot close fd %d: %s", ls->fd, strerror (errno)); + msg_err ("cannot close fd %d (addr = %s): %s", + ls->fd, + rspamd_inet_address_to_string_pretty (ls->addr), + strerror (errno)); } cur = g_list_next (cur);