]> Cypherpunks repositories - gostls13.git/commit
net: prevent spurious on-connect events via epoll on linux
authorMikio Hara <mikioh.mikioh@gmail.com>
Tue, 29 Jul 2014 07:48:11 +0000 (16:48 +0900)
committerMikio Hara <mikioh.mikioh@gmail.com>
Tue, 29 Jul 2014 07:48:11 +0000 (16:48 +0900)
commitc0325f50832489f2060549d6b19ce156df45b044
treeb2245223fe3d729a796faa07d55bf723cce3e769
parent9333fe8e92971654d0f96d137d46a019cde836e3
net: prevent spurious on-connect events via epoll on linux

On Linux, adding a socket descriptor to epoll instance before getting
the EINPROGRESS return value from connect system call could be a root
cause of spurious on-connect events.

See golang.org/issue/8276, golang.org/issue/8426 for further information.

All credit to Jason Eggleston <jason@eggnet.com>

Fixes #8276.
Fixes #8426.

LGTM=dvyukov
R=dvyukov, golang-codereviews, adg, dave, iant, alex.brainman
CC=golang-codereviews
https://golang.org/cl/120820043
src/pkg/net/fd_unix.go
src/pkg/net/fd_windows.go
src/pkg/net/sock_posix.go