From b32c4cb4594bb27496e4f75163b7a1ed93fd06bd Mon Sep 17 00:00:00 2001 From: Tibor Vass Date: Thu, 16 Jul 2015 12:38:44 -0400 Subject: [PATCH] Fix issue where Search API endpoint would panic due to empty AuthConfig Signed-off-by: Tibor Vass --- registry/session.go | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/registry/session.go b/registry/session.go index 7d57f1b8da..07195eb11b 100644 --- a/registry/session.go +++ b/registry/session.go @@ -89,13 +89,16 @@ func (tr *authTransport) RoundTrip(orig *http.Request) (*http.Response, error) { tr.mu.Unlock() if tr.alwaysSetBasicAuth { + if tr.AuthConfig == nil { + return nil, errors.New("unexpected error: empty auth config") + } req.SetBasicAuth(tr.Username, tr.Password) return tr.RoundTripper.RoundTrip(req) } // Don't override if req.Header.Get("Authorization") == "" { - if req.Header.Get("X-Docker-Token") == "true" && len(tr.Username) > 0 { + if req.Header.Get("X-Docker-Token") == "true" && tr.AuthConfig != nil && len(tr.Username) > 0 { req.SetBasicAuth(tr.Username, tr.Password) } else if len(tr.token) > 0 { req.Header.Set("Authorization", "Token "+strings.Join(tr.token, ","))