aboutsummaryrefslogtreecommitdiff
path: root/weed/s3api/s3api_object_handlers_put.go
diff options
context:
space:
mode:
authorchrislu <chris.lu@gmail.com>2025-07-18 20:16:04 -0700
committerchrislu <chris.lu@gmail.com>2025-07-18 20:16:04 -0700
commit1d1c7174932474dfe315143c43830900286021d6 (patch)
treec07a72d76492950df1176e5675df801af5a3ef06 /weed/s3api/s3api_object_handlers_put.go
parent7661449f82a85a397410a3013674a3fded5f9ee4 (diff)
downloadseaweedfs-1d1c7174932474dfe315143c43830900286021d6.tar.xz
seaweedfs-1d1c7174932474dfe315143c43830900286021d6.zip
refactor
Diffstat (limited to 'weed/s3api/s3api_object_handlers_put.go')
-rw-r--r--weed/s3api/s3api_object_handlers_put.go4
1 files changed, 2 insertions, 2 deletions
diff --git a/weed/s3api/s3api_object_handlers_put.go b/weed/s3api/s3api_object_handlers_put.go
index 408479f8b..c3db70fb9 100644
--- a/weed/s3api/s3api_object_handlers_put.go
+++ b/weed/s3api/s3api_object_handlers_put.go
@@ -119,8 +119,8 @@ func (s3a *S3ApiServer) PutObjectHandler(w http.ResponseWriter, r *http.Request)
// For non-versioned buckets, check if existing object has object lock protections
// that would prevent overwrite (PUT operations overwrite existing objects in non-versioned buckets)
if !versioningEnabled {
- bypassGovernance := s3a.validateGovernanceBypass(r, bucket, object)
- if err := s3a.checkObjectLockPermissions(r, bucket, object, "", bypassGovernance); err != nil {
+ governanceBypassAllowed := s3a.evaluateGovernanceBypassRequest(r, bucket, object)
+ if err := s3a.enforceObjectLockProtections(r, bucket, object, "", governanceBypassAllowed); err != nil {
glog.V(2).Infof("PutObjectHandler: object lock permissions check failed for %s/%s: %v", bucket, object, err)
s3err.WriteErrorResponse(w, r, s3err.ErrAccessDenied)
return