forked from TrueCloudLab/frostfs-s3-gw
[#328] Log invalid lock enabled header
Signed-off-by: Denis Kirillov <d.kirillov@yadro.com>
This commit is contained in:
parent
ee48d1dc85
commit
4ee3648183
2 changed files with 12 additions and 3 deletions
|
@ -813,7 +813,7 @@ func (h *handler) parseCommonCreateBucketParams(reqInfo *middleware.ReqInfo, box
|
||||||
return nil, nil, fmt.Errorf("couldn't set placement policy: %w", err)
|
return nil, nil, fmt.Errorf("couldn't set placement policy: %w", err)
|
||||||
}
|
}
|
||||||
|
|
||||||
p.ObjectLockEnabled = isLockEnabled(r.Header)
|
p.ObjectLockEnabled = isLockEnabled(h.reqLogger(r.Context()), r.Header)
|
||||||
|
|
||||||
return key, p, nil
|
return key, p, nil
|
||||||
}
|
}
|
||||||
|
@ -1096,9 +1096,17 @@ func (h handler) setPlacementPolicy(prm *layer.CreateBucketParams, namespace, lo
|
||||||
return errors.GetAPIError(errors.ErrInvalidLocationConstraint)
|
return errors.GetAPIError(errors.ErrInvalidLocationConstraint)
|
||||||
}
|
}
|
||||||
|
|
||||||
func isLockEnabled(header http.Header) bool {
|
func isLockEnabled(log *zap.Logger, header http.Header) bool {
|
||||||
lockEnabledStr := header.Get(api.AmzBucketObjectLockEnabled)
|
lockEnabledStr := header.Get(api.AmzBucketObjectLockEnabled)
|
||||||
lockEnabled, _ := strconv.ParseBool(lockEnabledStr)
|
if len(lockEnabledStr) == 0 {
|
||||||
|
return false
|
||||||
|
}
|
||||||
|
|
||||||
|
lockEnabled, err := strconv.ParseBool(lockEnabledStr)
|
||||||
|
if err != nil {
|
||||||
|
log.Warn(logs.InvalidBucketObjectLockEnabledHeader, zap.String("header", lockEnabledStr), zap.Error(err))
|
||||||
|
}
|
||||||
|
|
||||||
return lockEnabled
|
return lockEnabled
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -147,4 +147,5 @@ const (
|
||||||
SuccessfulAuth = "successful auth"
|
SuccessfulAuth = "successful auth"
|
||||||
PolicyRequest = "policy request"
|
PolicyRequest = "policy request"
|
||||||
FailedToGenerateRequestID = "failed to generate request id"
|
FailedToGenerateRequestID = "failed to generate request id"
|
||||||
|
InvalidBucketObjectLockEnabledHeader = "invalid X-Amz-Bucket-Object-Lock-Enabled header"
|
||||||
)
|
)
|
||||||
|
|
Loading…
Reference in a new issue