Browse Source

Merge branch 'add_acl_hepler' into 10_acl_merged

pull/4090/head
changlin.shi 2 years ago
parent
commit
c5804b99a0
  1. 4
      weed/s3api/s3acl/acl_helper.go
  2. 14
      weed/s3api/s3acl/acl_helper_test.go

4
weed/s3api/s3acl/acl_helper.go

@ -411,6 +411,8 @@ func AssembleEntryWithAcp(objectEntry *filer_pb.Entry, objectOwner string, grant
if len(objectOwner) > 0 { if len(objectOwner) > 0 {
objectEntry.Extended[s3_constants.ExtAmzOwnerKey] = []byte(objectOwner) objectEntry.Extended[s3_constants.ExtAmzOwnerKey] = []byte(objectOwner)
} else {
delete(objectEntry.Extended, s3_constants.ExtAmzOwnerKey)
} }
if len(grants) > 0 { if len(grants) > 0 {
@ -420,6 +422,8 @@ func AssembleEntryWithAcp(objectEntry *filer_pb.Entry, objectOwner string, grant
return s3err.ErrInvalidRequest return s3err.ErrInvalidRequest
} }
objectEntry.Extended[s3_constants.ExtAmzAclKey] = grantsBytes objectEntry.Extended[s3_constants.ExtAmzAclKey] = grantsBytes
} else {
delete(objectEntry.Extended, s3_constants.ExtAmzAclKey)
} }
return s3err.ErrNone return s3err.ErrNone

14
weed/s3api/s3acl/acl_helper_test.go

@ -487,8 +487,9 @@ func TestDetermineReqGrants(t *testing.T) {
func TestAssembleEntryWithAcp(t *testing.T) { func TestAssembleEntryWithAcp(t *testing.T) {
defaultOwner := "admin" defaultOwner := "admin"
{
//case1 //case1
//assemble with non-empty grants
expectOwner := "accountS" expectOwner := "accountS"
expectGrants := []*s3.Grant{ expectGrants := []*s3.Grant{
{ {
@ -512,22 +513,19 @@ func TestAssembleEntryWithAcp(t *testing.T) {
if !grantsEquals(resultGrants, expectGrants) { if !grantsEquals(resultGrants, expectGrants) {
t.Fatal("grants not expect") t.Fatal("grants not expect")
} }
}
{
//case2 //case2
entry := &filer_pb.Entry{} //assemble with empty grants (override)
AssembleEntryWithAcp(entry, "", nil) AssembleEntryWithAcp(entry, "", nil)
resultOwner = GetAcpOwner(entry.Extended, defaultOwner)
resultOwner := GetAcpOwner(entry.Extended, defaultOwner)
if resultOwner != defaultOwner { if resultOwner != defaultOwner {
t.Fatalf("owner not expect") t.Fatalf("owner not expect")
} }
resultGrants := GetAcpGrants(entry.Extended) resultGrants = GetAcpGrants(entry.Extended)
if len(resultGrants) != 0 { if len(resultGrants) != 0 {
t.Fatal("grants not expect") t.Fatal("grants not expect")
} }
}
} }

|||||||
100:0
Loading…
Cancel
Save