aboutsummaryrefslogtreecommitdiff
path: root/weed/s3api/s3api_object_handlers_put.go
diff options
context:
space:
mode:
authorchrislu <chris.lu@gmail.com>2025-07-18 02:02:54 -0700
committerchrislu <chris.lu@gmail.com>2025-07-18 02:02:54 -0700
commiteeeb595346ceadddd28c60500d64fa467bd266a2 (patch)
tree946ab2ae96fb2034976eb749866684ce3cf0e236 /weed/s3api/s3api_object_handlers_put.go
parent678f962ded38b2169ea8c3c872fbdb6a96959732 (diff)
downloadseaweedfs-eeeb595346ceadddd28c60500d64fa467bd266a2.tar.xz
seaweedfs-eeeb595346ceadddd28c60500d64fa467bd266a2.zip
change error style
Diffstat (limited to 'weed/s3api/s3api_object_handlers_put.go')
-rw-r--r--weed/s3api/s3api_object_handlers_put.go6
1 files changed, 6 insertions, 0 deletions
diff --git a/weed/s3api/s3api_object_handlers_put.go b/weed/s3api/s3api_object_handlers_put.go
index 7eaf32013..655bd405c 100644
--- a/weed/s3api/s3api_object_handlers_put.go
+++ b/weed/s3api/s3api_object_handlers_put.go
@@ -31,6 +31,8 @@ var (
ErrObjectLockModeRequiresDate = errors.New("object lock mode requires retention until date")
ErrRetentionDateRequiresMode = errors.New("retention until date requires object lock mode")
ErrGovernanceBypassVersioningRequired = errors.New("governance bypass header can only be used on versioned buckets")
+ ErrInvalidObjectLockDuration = errors.New("object lock duration must be greater than 0 days")
+ ErrObjectLockDurationExceeded = errors.New("object lock duration exceeds maximum allowed days")
)
func (s3a *S3ApiServer) PutObjectHandler(w http.ResponseWriter, r *http.Request) {
@@ -566,6 +568,10 @@ func mapValidationErrorToS3Error(err error) s3err.ErrorCode {
return s3err.ErrInvalidRequest
case errors.Is(err, ErrGovernanceBypassVersioningRequired):
return s3err.ErrInvalidRequest
+ case errors.Is(err, ErrInvalidObjectLockDuration):
+ return s3err.ErrInvalidRequest
+ case errors.Is(err, ErrObjectLockDurationExceeded):
+ return s3err.ErrInvalidRequest
default:
return s3err.ErrInvalidRequest
}