diff options
author | Sebastiaan van Stijn <github@gone.nl> | 2022-02-26 13:45:12 +0100 |
---|---|---|
committer | Sebastiaan van Stijn <github@gone.nl> | 2022-03-17 17:12:13 +0100 |
commit | 79aa65c1faa5ddd924ccebf377db64f049459afc (patch) | |
tree | 8607a96cded421f8b6bf093050844fed28991ea2 /registry/registry.go | |
parent | 98202c86adb4ee697bb2ff5c6d72ab373ab2a0f6 (diff) | |
download | docker-79aa65c1faa5ddd924ccebf377db64f049459afc.tar.gz |
registry: return "errdefs" compatible error types
Adding some small utility functions to make generating them easier.
Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
Diffstat (limited to 'registry/registry.go')
-rw-r--r-- | registry/registry.go | 9 |
1 files changed, 4 insertions, 5 deletions
diff --git a/registry/registry.go b/registry/registry.go index 4241075c3f..983e4243bf 100644 --- a/registry/registry.go +++ b/registry/registry.go @@ -3,7 +3,6 @@ package registry // import "github.com/docker/docker/registry" import ( "crypto/tls" - "fmt" "net" "net/http" "os" @@ -53,7 +52,7 @@ func hasFile(files []os.DirEntry, name string) bool { func ReadCertsDirectory(tlsConfig *tls.Config, directory string) error { fs, err := os.ReadDir(directory) if err != nil && !os.IsNotExist(err) { - return err + return invalidParam(err) } for _, f := range fs { @@ -61,7 +60,7 @@ func ReadCertsDirectory(tlsConfig *tls.Config, directory string) error { if tlsConfig.RootCAs == nil { systemPool, err := tlsconfig.SystemCertPool() if err != nil { - return fmt.Errorf("unable to get system cert pool: %v", err) + return invalidParamWrapf(err, "unable to get system cert pool") } tlsConfig.RootCAs = systemPool } @@ -77,7 +76,7 @@ func ReadCertsDirectory(tlsConfig *tls.Config, directory string) error { keyName := certName[:len(certName)-5] + ".key" logrus.Debugf("cert: %s", filepath.Join(directory, f.Name())) if !hasFile(fs, keyName) { - return fmt.Errorf("missing key %s for client certificate %s. Note that CA certificates should use the extension .crt", keyName, certName) + return invalidParamf("missing key %s for client certificate %s. CA certificates must use the extension .crt", keyName, certName) } cert, err := tls.LoadX509KeyPair(filepath.Join(directory, certName), filepath.Join(directory, keyName)) if err != nil { @@ -90,7 +89,7 @@ func ReadCertsDirectory(tlsConfig *tls.Config, directory string) error { certName := keyName[:len(keyName)-4] + ".cert" logrus.Debugf("key: %s", filepath.Join(directory, f.Name())) if !hasFile(fs, certName) { - return fmt.Errorf("Missing client certificate %s for key %s", certName, keyName) + return invalidParamf("missing client certificate %s for key %s", certName, keyName) } } } |