fix: enforce bucket quota from browser uploads (#10129)

This commit is contained in:
Harshavardhana 2020-07-24 21:16:54 -07:00 committed by GitHub
parent 8a23988711
commit 5ffc733eec
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23

View File

@ -1037,6 +1037,11 @@ func (web *webAPIHandlers) Upload(w http.ResponseWriter, r *http.Request) {
return
}
if err := enforceBucketQuota(ctx, bucket, size); err != nil {
writeWebErrorResponse(w, err)
return
}
// Extract incoming metadata if any.
metadata, err := extractMetadata(ctx, r)
if err != nil {
@ -2201,6 +2206,8 @@ func toWebAPIError(ctx context.Context, err error) APIError {
switch err.(type) {
case StorageFull:
return getAPIError(ErrStorageFull)
case BucketQuotaExceeded:
return getAPIError(ErrAdminBucketQuotaExceeded)
case BucketNotFound:
return getAPIError(ErrNoSuchBucket)
case BucketNotEmpty: