From 8cedd88d88505ce13f37d22d5e8e1e097a525685 Mon Sep 17 00:00:00 2001 From: Paul Barrette Date: Fri, 4 May 2018 16:33:17 -0400 Subject: _http.py: fix windows proxy error due to socktype Resolves #426 When running on windows 10 with a proxy, there is a connect error: _on_error: exception Socket type must be stream or datagram, not 0 This commit fixes that issue. Signed-off-by: Paul Barrette --- websocket/_http.py | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/websocket/_http.py b/websocket/_http.py index c3b53f5..876d04b 100644 --- a/websocket/_http.py +++ b/websocket/_http.py @@ -94,7 +94,11 @@ def _get_addrinfo_list(hostname, port, is_secure, proxy): return addrinfo_list, False, None else: pport = pport and pport or 80 - addrinfo_list = socket.getaddrinfo(phost, pport, 0, 0, socket.SOL_TCP) + # when running on windows 10, the getaddrinfo used above + # returns a socktype 0. This generates an error exception: + #_on_error: exception Socket type must be stream or datagram, not 0 + # Force the socket type to SOCK_STREAM + addrinfo_list = socket.getaddrinfo(phost, pport, 0, socket.SOCK_STREAM, socket.SOL_TCP) return addrinfo_list, True, pauth except socket.gaierror as e: raise WebSocketAddressException(e) -- cgit v1.2.1