From 3d5a8ee7d3fea95fe897dc5983ec8a1afc5a04ab Mon Sep 17 00:00:00 2001 From: iseki Date: Wed, 14 Dec 2022 05:37:03 +0000 Subject: [PATCH] internal/socks: permit authenticating with an empty password The behavior is accepted widely, and I found no reason to deny it. Fixes golang/go#57285 Change-Id: I39b07295cc89481ea0d6b70b71f2aa57f1a01407 GitHub-Last-Rev: b00ecb1d7afd1f0ae60d2215f33161e535931eb4 GitHub-Pull-Request: golang/net#157 Reviewed-on: https://go-review.googlesource.com/c/net/+/457355 Run-TryBot: Damien Neil Auto-Submit: Damien Neil TryBot-Result: Gopher Robot Reviewed-by: Than McIntosh Reviewed-by: Damien Neil Auto-Submit: Ian Lance Taylor Run-TryBot: Ian Lance Taylor Reviewed-by: Ian Lance Taylor --- internal/socks/socks.go | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/internal/socks/socks.go b/internal/socks/socks.go index 97db2340ec..84fcc32b63 100644 --- a/internal/socks/socks.go +++ b/internal/socks/socks.go @@ -289,7 +289,7 @@ func (up *UsernamePassword) Authenticate(ctx context.Context, rw io.ReadWriter, case AuthMethodNotRequired: return nil case AuthMethodUsernamePassword: - if len(up.Username) == 0 || len(up.Username) > 255 || len(up.Password) == 0 || len(up.Password) > 255 { + if len(up.Username) == 0 || len(up.Username) > 255 || len(up.Password) > 255 { return errors.New("invalid username/password") } b := []byte{authUsernamePasswordVersion}