diff --git a/vendor/github.com/containers/image/docker/docker_client.go b/vendor/github.com/containers/image/docker/docker_client.go index 05f937de..900a4bf8 100644 --- a/vendor/github.com/containers/image/docker/docker_client.go +++ b/vendor/github.com/containers/image/docker/docker_client.go @@ -36,6 +36,7 @@ const ( // dockerClient is configuration for dealing with a single Docker registry. type dockerClient struct { + ctx *types.SystemContext registry string username string password string @@ -85,6 +86,7 @@ func newDockerClient(ctx *types.SystemContext, ref dockerReference, write bool) } return &dockerClient{ + ctx: ctx, registry: registry, username: username, password: password, @@ -332,14 +334,9 @@ func (c *dockerClient) ping() (*pingResponse, error) { } return pr, nil } - scheme := "https" - pr, err := ping(scheme) - if err != nil { - scheme = "http" - pr, err = ping(scheme) - if err == nil { - return pr, nil - } + pr, err := ping("https") + if err != nil && c.ctx.DockerInsecureSkipTLSVerify { + pr, err = ping("http") } return pr, err } diff --git a/vendor/github.com/containers/image/types/types.go b/vendor/github.com/containers/image/types/types.go index 1ef4e67d..5d3de3b0 100644 --- a/vendor/github.com/containers/image/types/types.go +++ b/vendor/github.com/containers/image/types/types.go @@ -201,5 +201,5 @@ type SystemContext struct { // === docker.Transport overrides === DockerCertPath string // If not "", a directory containing "cert.pem" and "key.pem" used when talking to a Docker Registry - DockerInsecureSkipTLSVerify bool + DockerInsecureSkipTLSVerify bool // Allow contacting docker registries over HTTP, or HTTPS with failed TLS verification. Note that this does not affect other TLS connections. }