aboutsummaryrefslogtreecommitdiff
path: root/docs/code/default-loop
diff options
context:
space:
mode:
authorBen Noordhuis <info@bnoordhuis.nl>2022-01-12 16:11:43 +0100
committerGitHub <noreply@github.com>2022-01-12 16:11:43 +0100
commit3a7b95593acaab9739404bd120baa62c2007a18a (patch)
tree94185e3121b98f4fb853e896749e7829b7175a87 /docs/code/default-loop
parenta3e02e5e4abd5343f0e09e08b179ee03ebd78eff (diff)
downloadlibuv-3a7b95593acaab9739404bd120baa62c2007a18a.tar.gz
libuv-3a7b95593acaab9739404bd120baa62c2007a18a.zip
darwin: translate EPROTOTYPE to ECONNRESET (#3413)
macOS versions 10.10 and 10.15 - and presumbaly 10.11 to 10.14, too - have a bug where a race condition causes the kernel to return EPROTOTYPE because the socket isn't fully constructed. It's probably the result of the peer closing the connection and that is why libuv translates it to ECONNRESET. Previously, libuv retried until the EPROTOTYPE error went away but some VPN software causes the same behavior except the error is permanent, not transient, turning the retry mechanism into an infinite loop. Refs: https://github.com/libuv/libuv/pull/482 Refs: https://github.com/libuv/libuv/pull/3405
Diffstat (limited to 'docs/code/default-loop')
0 files changed, 0 insertions, 0 deletions