Commit 773f587
deps: cherry-pick libuv/libuv@3a7b955
Original commit log follows:
darwin: translate EPROTOTYPE to ECONNRESET (libuv/libuv#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: libuv/libuv#482
Refs: libuv/libuv#3405
Fixes: #43916
PR-URL: #43950
Reviewed-By: Luigi Pinca <luigipinca@gmail.com>
Reviewed-By: Colin Ihrig <cjihrig@gmail.com>
Reviewed-By: Santiago Gimeno <santiago.gimeno@gmail.com>
Reviewed-By: Matteo Collina <matteo.collina@gmail.com>1 parent a1dea66 commit 773f587Copy full SHA for 773f587
File tree
Expand file treeCollapse file tree
1 file changed
+14
-0
lines changedOpen diff view settings
Filter options
- deps/uv/src/unix
Expand file treeCollapse file tree
1 file changed
+14
-0
lines changedOpen diff view settings
Collapse file
+14Lines changed: 14 additions & 0 deletions
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| ||
865 | 865 | |
866 | 866 | |
867 | 867 | |
| 868 | + |
| 869 | + |
| 870 | + |
| 871 | + |
| 872 | + |
| 873 | + |
| 874 | + |
| 875 | + |
| 876 | + |
| 877 | + |
| 878 | + |
| 879 | + |
| 880 | + |
| 881 | + |
868 | 882 | |
869 | 883 | |
870 | 884 | |
|
0 commit comments