aboutsummaryrefslogtreecommitdiff
path: root/weed/s3api/s3api_object_handlers.go
diff options
context:
space:
mode:
authorKonstantin Lebedev <9497591+kmlebedev@users.noreply.github.com>2022-03-29 16:55:09 +0500
committerKonstantin Lebedev <9497591+kmlebedev@users.noreply.github.com>2022-03-29 16:55:09 +0500
commit9231971c88fc16efdeffdd52030c942dbbf3a890 (patch)
tree539383ec62128c55cbec71f86af900e6303fb590 /weed/s3api/s3api_object_handlers.go
parent51bd015179b0c134768b7d3340003131f7e39029 (diff)
downloadseaweedfs-9231971c88fc16efdeffdd52030c942dbbf3a890.tar.xz
seaweedfs-9231971c88fc16efdeffdd52030c942dbbf3a890.zip
fix test_s3.test_multi_object_delete_key_limit and
test_multi_objectv2_delete_key_limit
Diffstat (limited to 'weed/s3api/s3api_object_handlers.go')
-rw-r--r--weed/s3api/s3api_object_handlers.go9
1 files changed, 9 insertions, 0 deletions
diff --git a/weed/s3api/s3api_object_handlers.go b/weed/s3api/s3api_object_handlers.go
index 6bcf2266f..4d6c18a78 100644
--- a/weed/s3api/s3api_object_handlers.go
+++ b/weed/s3api/s3api_object_handlers.go
@@ -27,6 +27,10 @@ import (
"github.com/chrislusf/seaweedfs/weed/util"
)
+const (
+ deleteMultipleObjectsLimmit = 1000
+)
+
func mimeDetect(r *http.Request, dataReader io.Reader) io.ReadCloser {
mimeBuffer := make([]byte, 512)
size, _ := dataReader.Read(mimeBuffer)
@@ -217,6 +221,11 @@ func (s3a *S3ApiServer) DeleteMultipleObjectsHandler(w http.ResponseWriter, r *h
return
}
+ if len(deleteObjects.Objects) > deleteMultipleObjectsLimmit {
+ s3err.WriteErrorResponse(w, r, s3err.ErrInvalidMaxDeleteObjects)
+ return
+ }
+
var deletedObjects []ObjectIdentifier
var deleteErrors []DeleteError
var auditLog *s3err.AccessLog