diff --git a/cmd-common.go b/cmd-common.go index 2cf43471..d4aac4f7 100644 --- a/cmd-common.go +++ b/cmd-common.go @@ -83,12 +83,8 @@ func (manager mcClientManager) getSourceReader(sourceURL string, sourceConfig *h if err != nil { return nil, 0, "", iodine.New(err, map[string]string{"failedURL": sourceURL}) } - // check if the bucket is valid - // For object storage URL's do a StatBucket(), not necessary for fs client - if client.GetType(sourceURL) != client.Filesystem { - if _, err := sourceClnt.Stat(); err != nil { - return nil, 0, "", iodine.New(err, map[string]string{"failedURL": sourceURL}) - } + if _, err := sourceClnt.Stat(); err != nil { + return nil, 0, "", iodine.New(err, map[string]string{"failedURL": sourceURL}) } return sourceClnt.Get() } diff --git a/cmd-config.go b/cmd-config.go index fa3eba1b..602a5cda 100644 --- a/cmd-config.go +++ b/cmd-config.go @@ -34,12 +34,6 @@ import ( "github.com/minio-io/minio/pkg/utils/log" ) -const ( - mcConfigDir = ".mc/" - mcConfigWindowsDir = "mc/" - mcConfigFile = "config.json" -) - type hostConfig struct { AccessKeyID string SecretAccessKey string @@ -51,21 +45,6 @@ type configV1 struct { Hosts map[string]*hostConfig } -var ( - mcCurrentConfigVersion = "1.0.0" -) - -const ( - // do not pass accesskeyid and secretaccesskey through cli - // users should manually edit them, add a stub entry - globalAccessKeyID = "YOUR-ACCESS-KEY-ID-HERE" - globalSecretAccessKey = "YOUR-SECRET-ACCESS-KEY-HERE" -) - -const ( - exampleHostURL = "YOUR-EXAMPLE.COM" -) - func getMcConfigDir() (string, error) { u, err := user.Current() if err != nil { @@ -292,8 +271,10 @@ func getHostConfig(requestURL string) (*hostConfig, error) { return nil, iodine.New(errInvalidAuth{}, nil) } // verify Auth key validity for all hosts - if !client.IsValidAccessKey(hostCfg.AccessKeyID) || !client.IsValidSecretKey(hostCfg.SecretAccessKey) { - return nil, iodine.New(errInvalidAuthKeys{}, nil) + if hostCfg.AccessKeyID != globalAccessKeyID && hostCfg.SecretAccessKey != globalSecretAccessKey { + if !client.IsValidAccessKey(hostCfg.AccessKeyID) || !client.IsValidSecretKey(hostCfg.SecretAccessKey) { + return nil, iodine.New(errInvalidAuthKeys{}, nil) + } } return hostCfg, nil } diff --git a/globals.go b/globals.go index ce2212e4..696c19e6 100644 --- a/globals.go +++ b/globals.go @@ -29,4 +29,23 @@ var ( mcUserAgent = "Minio/" + Version + " (" + os.Args[0] + "; " + runtime.GOOS + "; " + runtime.GOARCH + ")" + + mcCurrentConfigVersion = "1.0.0" +) + +const ( + mcConfigDir = ".mc/" + mcConfigWindowsDir = "mc/" + mcConfigFile = "config.json" +) + +const ( + // do not pass accesskeyid and secretaccesskey through cli + // users should manually edit them, add a stub entry + globalAccessKeyID = "YOUR-ACCESS-KEY-ID-HERE" + globalSecretAccessKey = "YOUR-SECRET-ACCESS-KEY-HERE" +) + +const ( + exampleHostURL = "YOUR-EXAMPLE.COM" )