summaryrefslogtreecommitdiff
path: root/registry/service.go
diff options
context:
space:
mode:
authorYong Tang <yong.tang.github@outlook.com>2016-04-22 20:00:47 -0700
committerYong Tang <yong.tang.github@outlook.com>2016-04-22 20:00:47 -0700
commit93973196f4b4dafae5b94eb541a3b752ea48f66e (patch)
tree5dc422674af33ea8db2d3ba2a5a6338bd1a32748 /registry/service.go
parent8a0d2d8e57a4825fb21c0f8ef91bef513beebc35 (diff)
downloaddocker-93973196f4b4dafae5b94eb541a3b752ea48f66e.tar.gz
Add default `serveraddress` value in remote API `/auth`
This fix tries to address the issue in #22244 where the remote API `/auth` will not set the default value of `serveraddress` if not provided. This behavior happens after only in 1.11.0 and is a regression as in 1.10.3 `serveraddress` will be assigned with `IndexServer` if no value is provided. The default value `IndexServer` is assigned to `serveraddress` if no value provided in this fix. An integration test `TestAuthApi` has been added to cover this change This fix fixes #22244. Signed-off-by: Yong Tang <yong.tang.github@outlook.com>
Diffstat (limited to 'registry/service.go')
-rw-r--r--registry/service.go3
1 files changed, 3 insertions, 0 deletions
diff --git a/registry/service.go b/registry/service.go
index c27f9b1c93..3006e8ab84 100644
--- a/registry/service.go
+++ b/registry/service.go
@@ -37,6 +37,9 @@ func (s *Service) ServiceConfig() *registrytypes.ServiceConfig {
// It can be used to verify the validity of a client's credentials.
func (s *Service) Auth(authConfig *types.AuthConfig, userAgent string) (status, token string, err error) {
serverAddress := authConfig.ServerAddress
+ if serverAddress == "" {
+ serverAddress = IndexServer
+ }
if !strings.HasPrefix(serverAddress, "https://") && !strings.HasPrefix(serverAddress, "http://") {
serverAddress = "https://" + serverAddress
}