Rongrong

Results 136 comments of Rongrong

I've also tested the vanilla asyncio in CPython 3.11.0rc1/rc2 since it has "borrowed"[^1] the SSL implementation from `uvloop`. Still, the connection is closed as expected. But a fatal error is...

So here locates the buggy code: ```cython cdef _do_flush(self, object context=None): try: self._do_read_into_void(context) self._do_write() self._process_outgoing() self._control_ssl_reading() except Exception as ex: self._on_shutdown_complete(ex) else: if not self._get_write_buffer_size(): self._set_state(SHUTDOWN) self._do_shutdown(context) cdef _do_shutdown(self, object...

CC The issue has been located: https://github.com/MagicStack/uvloop/issues/471#issuecomment-1247584288 https://github.com/MagicStack/uvloop/issues/471#issuecomment-1249170910 https://github.com/MagicStack/uvloop/issues/471#issuecomment-1264470819 However, more discussion is needed since the issue is actually caused by a widespread implementation practice violating the specification: https://github.com/MagicStack/uvloop/issues/471#issuecomment-1264648224

> Right, 0.17 didn't change this. This would probably be similar in CPython 3.11 too. I'll look into this later this weekend. Thanks! I just did more debugging and I...

I've also tested the vanilla asyncio in CPython 3.11.0rc1/rc2 since it has "borrowed"[^1] the SSL implementation from `uvloop`. Still, the connection is closed as expected. But a fatal error is...

So here locates the buggy code: ```cython cdef _do_flush(self, object context=None): try: self._do_read_into_void(context) self._do_write() self._process_outgoing() self._control_ssl_reading() except Exception as ex: self._on_shutdown_complete(ex) else: if not self._get_write_buffer_size(): self._set_state(SHUTDOWN) self._do_shutdown(context) cdef _do_shutdown(self, object...

> this is probably because the remote peer didn't reply a proper TLS close_notify. After reading more refs, I finally realized that there do be such a probability that the...

> cut down the `SSL_SHUTDOWN_TIMEOUT` to maybe 10s to reduce the impact in TLS 1.3. At first, I consider it is OK. After doing some tests, I was so sad...