From db638375bc3a8f7001553e4583d33aa9585a3c8d Mon Sep 17 00:00:00 2001 From: Ian Lance Taylor Date: Thu, 27 Jan 2022 19:54:47 -0800 Subject: 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 Run-TryBot: Ian Lance Taylor TryBot-Result: Gopher Robot Reviewed-by: Roland Shoemaker --- ssh/client_auth_test.go | 11 ++++++++++- 1 file changed, 10 insertions(+), 1 deletion(-) 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 @@ import ( "log" "net" "os" + "runtime" "strings" "testing" ) @@ -639,7 +640,15 @@ func TestClientAuthMaxAuthTriesPublicKey(t *testing.T) { 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) + } } } -- cgit v1.3