Brad Arant 2676aaf84c Fix TLS write busy-spin on SSL_ERROR_WANT_READ
A TLS sendData() failing with SSL_ERROR_WANT_READ (mid-handshake
application data, or a post-handshake session ticket exchange) has
nothing to do with write-readiness, but resetSocket() kept re-arming
EPOLLWRNORM anyway - an already-writable TCP socket fires that
immediately, so the retry loop spun the CPU as fast as it could
until the connection was eventually dropped, without ever reading
the peer's first command. Confirmed via a 15GB+ debug log from one
stuck connection. sendNeedsRead() lets Socket now tell the
difference and wait for a real EPOLLIN instead of busy-retrying.
2026-09-06 04:05:40 +00:00
2022-10-13 17:50:13 +00:00
2024-07-11 15:45:33 -07:00
2024-07-10 13:30:18 -07:00
2024-07-10 13:30:18 -07:00
2024-07-11 15:45:33 -07:00
2024-07-10 13:30:18 -07:00
2024-07-10 13:30:18 -07:00
2024-07-10 13:30:18 -07:00
2020-04-13 09:40:58 -07:00
2024-07-10 13:30:18 -07:00
2024-07-10 13:30:18 -07:00
2024-07-10 13:30:18 -07:00
2024-07-10 13:30:18 -07:00
2024-07-10 13:30:18 -07:00
2019-02-07 13:28:21 -08:00
2025-01-28 16:26:40 -08:00
2024-07-10 13:30:18 -07:00
2019-05-21 16:41:07 -07:00
2019-02-07 13:28:21 -08:00
2019-09-18 18:32:15 -07:00
S
Description
This repository provides core functionality for TCP and UDP servers using the epoll linux function.
184 MiB
0 Stars 1 Watchers 0 Forks
Languages
C++ 99.6%
Shell 0.4%