aboutsummaryrefslogtreecommitdiff
path: root/weed/s3api/s3api_object_handlers_retention.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_retention.go
parent7661449f82a85a397410a3013674a3fded5f9ee4 (diff)
downloadseaweedfs-1d1c7174932474dfe315143c43830900286021d6.tar.xz
seaweedfs-1d1c7174932474dfe315143c43830900286021d6.zip
refactor
Diffstat (limited to 'weed/s3api/s3api_object_handlers_retention.go')
-rw-r--r--weed/s3api/s3api_object_handlers_retention.go6
1 files changed, 3 insertions, 3 deletions
diff --git a/weed/s3api/s3api_object_handlers_retention.go b/weed/s3api/s3api_object_handlers_retention.go
index fb6d6e737..899c2453c 100644
--- a/weed/s3api/s3api_object_handlers_retention.go
+++ b/weed/s3api/s3api_object_handlers_retention.go
@@ -25,8 +25,8 @@ func (s3a *S3ApiServer) PutObjectRetentionHandler(w http.ResponseWriter, r *http
// Get version ID from query parameters
versionId := r.URL.Query().Get("versionId")
- // Validate governance bypass permission
- bypassGovernance := s3a.validateGovernanceBypass(r, bucket, object)
+ // Evaluate governance bypass request (header + permission validation)
+ governanceBypassAllowed := s3a.evaluateGovernanceBypassRequest(r, bucket, object)
// Parse retention configuration from request body
retention, err := parseObjectRetention(r)
@@ -44,7 +44,7 @@ func (s3a *S3ApiServer) PutObjectRetentionHandler(w http.ResponseWriter, r *http
}
// Set retention on the object
- if err := s3a.setObjectRetention(bucket, object, versionId, retention, bypassGovernance); err != nil {
+ if err := s3a.setObjectRetention(bucket, object, versionId, retention, governanceBypassAllowed); err != nil {
glog.Errorf("PutObjectRetentionHandler: failed to set retention: %v", err)
// Handle specific error cases