ssh: accept WSAECONNABORTED in TestClientAuthMaxAuthTriesPublicKey
Fixes golang/go#50805
Change-Id: Icdd2835b1626240faf61936288f279570c873158
Reviewed-on: https://go-review.googlesource.com/c/crypto/+/381614
Trust: Ian Lance Taylor <iant@golang.org>
Run-TryBot: Ian Lance Taylor <iant@golang.org>
TryBot-Result: Gopher Robot <gobot@golang.org>
Reviewed-by: Roland Shoemaker <roland@golang.org>
diff --git a/ssh/client_auth_test.go b/ssh/client_auth_test.go
index 63a8e22..f73079b 100644
--- a/ssh/client_auth_test.go
+++ b/ssh/client_auth_test.go
@@ -13,6 +13,7 @@
"log"
"net"
"os"
+ "runtime"
"strings"
"testing"
)
@@ -639,7 +640,15 @@
if err := tryAuth(t, invalidConfig); err == nil {
t.Fatalf("client: got no error, want %s", expectedErr)
} else if err.Error() != expectedErr.Error() {
- t.Fatalf("client: got %s, want %s", err, expectedErr)
+ // On Windows we can see a WSAECONNABORTED error
+ // if the client writes another authentication request
+ // before the client goroutine reads the disconnection
+ // message. See issue 50805.
+ if runtime.GOOS == "windows" && strings.Contains(err.Error(), "wsarecv: An established connection was aborted") {
+ // OK.
+ } else {
+ t.Fatalf("client: got %s, want %s", err, expectedErr)
+ }
}
}