From 9f043d704320942bfbc5cd7773e91a7beff5522b Mon Sep 17 00:00:00 2001 From: Aaron Lu <aaron.lu@intel.com> Date: Fri, 7 Nov 2014 14:27:36 +0800 Subject: [PATCH] afindep: close the accepted socket when done The accepted socket ns isn't closed when done and that caused the socket to keep in the CLOSE_WAIT state until the program quits. But since nc6 is used to continuous accpet more connections and not quit with a client, this would cause more and more sockets to stay in CLOSE_WAIT state and eventually new connections will be refused. Signed-off-by: Aaron Lu <aaron.lu@intel.com> --- src/afindep.c | 1 + 1 file changed, 1 insertion(+) diff --git a/src/afindep.c b/src/afindep.c index 6645d6d..bf06e8b 100644 --- a/src/afindep.c +++ b/src/afindep.c @@ -548,6 +548,7 @@ int afindep_listener(const struct addrinfo *hints, } callback(ns, socktype, cdata); + close(ns); if (max_accept > 0 && --max_accept == 0) break; -- 1.9.3