MCPcopy
hub / github.com/urllib3/urllib3 / recv_into

Method recv_into

src/urllib3/contrib/pyopenssl.py:323–344  ·  view source on GitHub ↗
(self, *args: typing.Any, **kwargs: typing.Any)

Source from the content-addressed store, hash-verified

321 return data # type: ignore[no-any-return]
322
323 def recv_into(self, *args: typing.Any, **kwargs: typing.Any) -> int:
324 try:
325 return self.connection.recv_into(*args, **kwargs) # type: ignore[no-any-return]
326 except OpenSSL.SSL.SysCallError as e:
327 if self.suppress_ragged_eofs and e.args == (-1, "Unexpected EOF"):
328 return 0
329 else:
330 raise OSError(e.args[0], str(e)) from e
331 except OpenSSL.SSL.ZeroReturnError:
332 if self.connection.get_shutdown() == OpenSSL.SSL.RECEIVED_SHUTDOWN:
333 return 0
334 else:
335 raise
336 except OpenSSL.SSL.WantReadError as e:
337 if not util.wait_for_read(self.socket, self.socket.gettimeout()):
338 raise TimeoutError("The read operation timed out") from e
339 else:
340 return self.recv_into(*args, **kwargs)
341
342 # TLS 1.3 post-handshake authentication
343 except OpenSSL.SSL.Error as e:
344 raise ssl.SSLError(f"read error: {e!r}") from e
345
346 def settimeout(self, timeout: float) -> None:
347 return self.socket.settimeout(timeout)

Callers

nothing calls this directly

Calls 2

TimeoutErrorClass · 0.85
gettimeoutMethod · 0.80

Tested by

no test coverage detected