MCPcopy Index your code
hub / github.com/websocket-client/websocket-client / _open_socket

Function _open_socket

websocket/_http.py:195–235  ·  view source on GitHub ↗
(addrinfo_list, sockopt, timeout)

Source from the content-addressed store, hash-verified

193
194
195def _open_socket(addrinfo_list, sockopt, timeout):
196 err = None
197 for addrinfo in addrinfo_list:
198 family, socktype, proto = addrinfo[:3]
199 sock = socket.socket(family, socktype, proto)
200 sock.settimeout(timeout)
201 for opts in DEFAULT_SOCKET_OPTION:
202 sock.setsockopt(*opts)
203 for opts in sockopt:
204 sock.setsockopt(*opts)
205
206 address = addrinfo[4]
207 err = None
208 while not err:
209 try:
210 sock.connect(address)
211 except socket.error as error:
212 sock.close()
213 error.remote_ip = str(address[0])
214 try:
215 eConnRefused = (
216 errno.ECONNREFUSED,
217 errno.WSAECONNREFUSED,
218 errno.ENETUNREACH,
219 )
220 except AttributeError:
221 eConnRefused = (errno.ECONNREFUSED, errno.ENETUNREACH)
222 if error.errno not in eConnRefused:
223 raise error
224 err = error
225 continue
226 else:
227 break
228 else:
229 continue
230 break
231 else:
232 if err:
233 raise err
234
235 return sock
236
237
238def _wrap_sni_socket(sock: socket.socket, sslopt: dict, hostname, check_hostname):

Callers 1

connectFunction · 0.85

Calls 3

settimeoutMethod · 0.80
connectMethod · 0.80
closeMethod · 0.45

Tested by

no test coverage detected

Used in the wild real call sites across dependent graphs

searching dependent graphs…