]> Cypherpunks repositories - gostls13.git/commitdiff
crypto/tls: retry ETIMEDOUT flakes in localPipe on dragonfly
authorBryan C. Mills <bcmills@google.com>
Tue, 12 Nov 2019 17:10:03 +0000 (12:10 -0500)
committerBryan C. Mills <bcmills@google.com>
Tue, 12 Nov 2019 17:55:14 +0000 (17:55 +0000)
Fixes #29583

Change-Id: Ia89433bddd4c9f67ec1f0150b730cde8a7e973ee
Reviewed-on: https://go-review.googlesource.com/c/go/+/206759
Run-TryBot: Bryan C. Mills <bcmills@google.com>
Reviewed-by: Brad Fitzpatrick <bradfitz@golang.org>
TryBot-Result: Gobot Gobot <gobot@golang.org>

src/crypto/tls/handshake_test.go

index baf8adb16d70dfe551c5ee1209bf789fda1ec74d..f55cd16ca811d9ba66d598cd361124d94bfcb593 100644 (file)
@@ -275,9 +275,9 @@ Dialing:
                var c1 net.Conn
                c1, err = net.Dial(addr.Network(), addr.String())
                if err != nil {
-                       if runtime.GOOS == "dragonfly" && isConnRefused(err) {
-                               // golang.org/issue/29583: Dragonfly sometimes returned a spurious
-                               // ECONNREFUSED.
+                       if runtime.GOOS == "dragonfly" && (isConnRefused(err) || os.IsTimeout(err)) {
+                               // golang.org/issue/29583: Dragonfly sometimes returns a spurious
+                               // ECONNREFUSED or ETIMEDOUT.
                                <-tooSlow.C
                                continue
                        }