Roundup Robot added the comment:
New changeset cdc83da0b0f8 by Victor Stinner in branch 'default':
Issue #23853: socket.socket.sendall() does no more reset the socket timeout
https://hg.python.org/cpython/rev/cdc83da0b0f8
New changeset 5983f3fdacdb by Victor Stinner in branch 'default':
Issue
Changes by STINNER Victor victor.stin...@gmail.com:
--
resolution: - fixed
status: open - closed
___
Python tracker rep...@bugs.python.org
http://bugs.python.org/issue23853
___
Roundup Robot added the comment:
New changeset 753233baf27e by Victor Stinner in branch 'default':
Issue #23853: Cleanup _ssl.c
https://hg.python.org/cpython/rev/753233baf27e
--
nosy: +python-dev
___
Python tracker rep...@bugs.python.org
STINNER Victor added the comment:
Here is a patch to fix the issue: recompute the timeout.
It's unclear to me if we should reset the timeout after each successful
read/write, or if the timeout is global (total duration of the ssl method). I
asked the question on the python-dev mailing list.
New submission from STINNER Victor:
The _ssl module uses an helper function check_socket_and_wait_for_timeout() to
poll until the socket is ready (got data or became writable).
check_socket_and_wait_for_timeout() always uses the socket timeout. If select()
or poll() is interrupted by a signal
STINNER Victor added the comment:
test_ssl_bug.patch: Modify test_handshake_timeout() of test_ssl to show the
bug: test_handshake_timeout() hangs with the patch (which sends a signal every
millisecond).
--
keywords: +patch
Added file: