Change listen() backlog from -1 to 128.
authorEmil Mikulic <emikulic@gmail.com>
Sun, 8 Jul 2012 11:45:22 +0000 (21:45 +1000)
committerEmil Mikulic <emikulic@gmail.com>
Tue, 6 Aug 2013 08:31:08 +0000 (18:31 +1000)
Without this change, I get occasional second-long pauses (TCP SYN
retransmit delay) when the darkstat http server is running on
NetBSD 5.1.2, because it interprets -1 as 1 and ignores simultaneous
connection attempts.

http.c

diff --git a/http.c b/http.c
index b8744e5..e39f16b 100644 (file)
--- a/http.c
+++ b/http.c
@@ -959,7 +959,7 @@ static void http_listen_one(struct addrinfo *ai,
     }
 
     /* listen on socket */
-    if (listen(sockin, -1) == -1)
+    if (listen(sockin, 128) == -1)
         err(1, "listen() failed");
 
     verbosef("listening on http://%s%s%s:%u/",