Translate storage access denied error to S3 Access Denied response (#3015)

This commit is contained in:
Anis Elleuch
2016-10-21 00:09:55 +01:00
committed by Harshavardhana
parent 8876e0a80a
commit 41f9ab1c69
7 changed files with 145 additions and 6 deletions

View File

@@ -46,6 +46,13 @@ func toObjectErr(err error, params ...string) error {
}
case errDiskFull:
err = StorageFull{}
case errFileAccessDenied:
if len(params) >= 2 {
err = PrefixAccessDenied{
Bucket: params[0],
Object: params[1],
}
}
case errIsNotRegular, errFileAccessDenied:
if len(params) >= 2 {
err = ObjectExistsAsDirectory{
@@ -145,6 +152,13 @@ func (e ObjectExistsAsDirectory) Error() string {
return "Object exists on : " + e.Bucket + " as directory " + e.Object
}
//PrefixAccessDenied object access is denied.
type PrefixAccessDenied GenericError
func (e PrefixAccessDenied) Error() string {
return "Prefix access is denied: " + e.Bucket + "/" + e.Object
}
// BucketExists bucket exists.
type BucketExists GenericError