From 6894bfc6a8d4350936f1b1bbe24c413b21765d7c Mon Sep 17 00:00:00 2001 From: Hiroki Ohtani Date: Sun, 13 Apr 2014 16:18:00 +0900 Subject: [PATCH] - fixed #75 --- websocket/__init__.py | 16 +++++++++------- 1 file changed, 9 insertions(+), 7 deletions(-) diff --git a/websocket/__init__.py b/websocket/__init__.py index f32684d..6199788 100644 --- a/websocket/__init__.py +++ b/websocket/__init__.py @@ -74,13 +74,15 @@ STATUS_INVALID_EXTENSION = 1010 STATUS_UNEXPECTED_CONDITION = 1011 STATUS_TLS_HANDSHAKE_ERROR = 1015 -DEFAULT_SOCKET_OPTION = ( - (socket.SOL_TCP, socket.TCP_NODELAY, 1), - (socket.SOL_SOCKET, socket.SO_KEEPALIVE, 1), - (socket.SOL_TCP, socket.TCP_KEEPIDLE, 30), - (socket.SOL_TCP, socket.TCP_KEEPINTVL, 10), - (socket.SOL_TCP, socket.TCP_KEEPCNT, 3) - ) +DEFAULT_SOCKET_OPTION = [(socket.SOL_TCP, socket.TCP_NODELAY, 1),] +if hasattr(socket, "SO_KEEPALIVE"): + DEFAULT_SOCKET_OPTION.append((socket.SOL_SOCKET, socket.SO_KEEPALIVE, 1)) +if hasattr(socket, "TCP_KEEPIDLE"): + DEFAULT_SOCKET_OPTION.append((socket.SOL_TCP, socket.TCP_KEEPIDLE, 30)) +if hasattr(socket, "TCP_KEEPINTVL"): + DEFAULT_SOCKET_OPTION.append((socket.SOL_TCP, socket.TCP_KEEPINTVL, 10)) +if hasattr(socket, "TCP_KEEPCNT"): + DEFAULT_SOCKET_OPTION.append((socket.SOL_TCP, socket.TCP_KEEPCNT, 3)) logger = logging.getLogger()