Merge pull request #17 from leonjza/master

Check if the platform is macOS before setting TCP_KEEPIDLE
This commit is contained in:
lgandx 2016-11-02 11:18:10 -03:00 committed by GitHub
commit 90071187cd

View file

@ -140,7 +140,9 @@ def ConnectToTarget():
s.setsockopt(SOL_SOCKET, SO_KEEPALIVE, 1) s.setsockopt(SOL_SOCKET, SO_KEEPALIVE, 1)
s.setsockopt(IPPROTO_TCP, TCP_KEEPCNT, 15) s.setsockopt(IPPROTO_TCP, TCP_KEEPCNT, 15)
s.setsockopt(IPPROTO_TCP, TCP_KEEPINTVL, 5) s.setsockopt(IPPROTO_TCP, TCP_KEEPINTVL, 5)
s.setsockopt(IPPROTO_TCP, TCP_KEEPIDLE, 5) # macOS does not have TCP_KEEPIDLE
if sys.platform != 'darwin':
s.setsockopt(IPPROTO_TCP, TCP_KEEPIDLE, 5)
s.connect(Host) s.connect(Host)
return s return s
except: except: