diff options
Diffstat (limited to 'src/netbase.cpp')
-rw-r--r-- | src/netbase.cpp | 6 |
1 files changed, 6 insertions, 0 deletions
diff --git a/src/netbase.cpp b/src/netbase.cpp index 9b63d60342..1635957b7f 100644 --- a/src/netbase.cpp +++ b/src/netbase.cpp @@ -465,6 +465,12 @@ SOCKET CreateSocket(const CService &addrConnect) if (hSocket == INVALID_SOCKET) return INVALID_SOCKET; + if (!IsSelectableSocket(hSocket)) { + CloseSocket(hSocket); + LogPrintf("Cannot create connection: non-selectable socket created (fd >= FD_SETSIZE ?)\n"); + return INVALID_SOCKET; + } + #ifdef SO_NOSIGPIPE int set = 1; // Different way of disabling SIGPIPE on BSD |