From db2b48d2afbf51bdd798c6dd9a11d0e6d2e47d13 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Adrien=20B=C3=A9raud?= <adrien.beraud@savoirfairelinux.com> Date: Wed, 3 Apr 2019 16:18:35 -0400 Subject: [PATCH] dhtrunner: select on maxfd+1 --- src/dhtrunner.cpp | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/src/dhtrunner.cpp b/src/dhtrunner.cpp index 659cb9f9..8d24555a 100644 --- a/src/dhtrunner.cpp +++ b/src/dhtrunner.cpp @@ -569,7 +569,8 @@ DhtRunner::startNetwork(const SockAddr sin4, const SockAddr sin6) if(s6 >= 0) FD_SET(s6, &readfds); - int rc = select(s4 > s6 ? s4 + 1 : s6 + 1, &readfds, nullptr, nullptr, nullptr); + int selectFd = std::max({s4, s6, stop_readfd}) + 1; + int rc = select(selectFd, &readfds, nullptr, nullptr, nullptr); if(rc < 0) { if(errno != EINTR) { perror("select"); -- GitLab