From 56df03c88e3ea926527a5e6830d097602fa2d8cc Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Marek=20Vavru=C5=A1a?= <marek.vavrusa@nic.cz> Date: Fri, 16 May 2014 14:42:51 +0200 Subject: [PATCH] Fix in SO_REUSEPORT usage. Signed-off-by: Jan Kadlec <jan.kadlec@nic.cz> --- src/knot/server/server.c | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/src/knot/server/server.c b/src/knot/server/server.c index 3781abc35..679a2b812 100644 --- a/src/knot/server/server.c +++ b/src/knot/server/server.c @@ -116,12 +116,16 @@ static int server_init_iface(iface_t *new_if, conf_iface_t *cfg_if) char addr_str[SOCKADDR_STRLEN] = {0}; sockaddr_tostr(&cfg_if->addr, addr_str, sizeof(addr_str)); +#if defined(SO_REUSEPORT) + /* Each thread binds own socket. */ + int sock = -1; +#else /* Create bound UDP socket. */ int sock = net_bound_socket(SOCK_DGRAM, &cfg_if->addr); if (sock < 0) { return sock; } - +#endif new_if->fd[IO_UDP] = sock; /* Create bound TCP socket. */ -- GitLab