mirror of https://github.com/golang/go.git
cmd/go/internal/auth: fix .netrc lookup for URLs with specified port
The .netrc spec [1] defines credentials based on "machine name", so remove specified ports from URL before looking for a match. [1] https://www.gnu.org/software/inetutils/manual/html_node/The-_002enetrc-file.html Fixes #37130 Change-Id: Iab993afba26c927454d6166111ad1e1a53dbce43 Reviewed-on: https://go-review.googlesource.com/c/go/+/218418 Run-TryBot: Bryan C. Mills <bcmills@google.com> TryBot-Result: Gobot Gobot <gobot@golang.org> Reviewed-by: Bryan C. Mills <bcmills@google.com>
This commit is contained in:
parent
65bd07611c
commit
139a79dc37
|
|
@ -10,10 +10,12 @@ import "net/http"
|
|||
// AddCredentials fills in the user's credentials for req, if any.
|
||||
// The return value reports whether any matching credentials were found.
|
||||
func AddCredentials(req *http.Request) (added bool) {
|
||||
host := req.URL.Hostname()
|
||||
|
||||
// TODO(golang.org/issue/26232): Support arbitrary user-provided credentials.
|
||||
netrcOnce.Do(readNetrc)
|
||||
for _, l := range netrc {
|
||||
if l.machine == req.URL.Host {
|
||||
if l.machine == host {
|
||||
req.SetBasicAuth(l.login, l.password)
|
||||
return true
|
||||
}
|
||||
|
|
|
|||
Loading…
Reference in New Issue