diff --git a/services/clientlog/pkg/service/shares.go b/services/clientlog/pkg/service/shares.go index a809c52dae..90694db82a 100644 --- a/services/clientlog/pkg/service/shares.go +++ b/services/clientlog/pkg/service/shares.go @@ -21,15 +21,13 @@ import ( "github.com/opencloud-eu/opencloud/pkg/log" ) -// ancestorGrantsKey makes a stat return the active grants on the resource and its ancestors, -// excluding the space root. The storage only returns them to service accounts. -const ancestorGrantsKey = "ancestor-grants" - +// The storage returns the active grants on a resource and its ancestors, excluding the space +// root, only to service accounts. var ( // resourceFieldMask returns the complete resource info including the ancestor grants - resourceFieldMask = &fieldmaskpb.FieldMask{Paths: []string{"*", ancestorGrantsKey}} + resourceFieldMask = &fieldmaskpb.FieldMask{Paths: []string{"*", utils.AncestorGrantsKey}} // ancestorGrantsFieldMask returns the basic resource info and the ancestor grants - ancestorGrantsFieldMask = &fieldmaskpb.FieldMask{Paths: []string{ancestorGrantsKey}} + ancestorGrantsFieldMask = &fieldmaskpb.FieldMask{Paths: []string{utils.AncestorGrantsKey}} ) // addShareRecipients adds the grantees of shares on the resource or on one of its ancestors @@ -70,11 +68,11 @@ func addParentShareRecipients(ctx context.Context, gwc gateway.GatewayAPIClient, // getShareRecipients returns the grantees of the ancestor grants of the resource and the users // that were denied access on the resource or one of its ancestors. func getShareRecipients(ctx context.Context, gwc gateway.GatewayAPIClient, info *provider.ResourceInfo) (recipients, denied []string, err error) { - if !utils.ExistsInOpaque(info.GetOpaque(), ancestorGrantsKey) { + if !utils.ExistsInOpaque(info.GetOpaque(), utils.AncestorGrantsKey) { return nil, nil, nil } - gs, err := utils.ReadGrantsFromOpaque(info.GetOpaque(), ancestorGrantsKey) + gs, err := utils.ReadGrantsFromOpaque(info.GetOpaque(), utils.AncestorGrantsKey) if err != nil { return nil, nil, err } diff --git a/services/clientlog/pkg/service/shares_test.go b/services/clientlog/pkg/service/shares_test.go index bffef3bc2f..6f619b2452 100644 --- a/services/clientlog/pkg/service/shares_test.go +++ b/services/clientlog/pkg/service/shares_test.go @@ -57,7 +57,7 @@ var _ = Describe("share recipients", func() { // resourceInfo returns a resource info as stat'ed with the ancestor grants resourceInfo := func(id *provider.ResourceId, grants ...*provider.Grant) *provider.ResourceInfo { - o, err := utils.AppendGrantsToOpaque(nil, ancestorGrantsKey, grants) + o, err := utils.AppendGrantsToOpaque(nil, utils.AncestorGrantsKey, grants) Expect(err).ToNot(HaveOccurred()) return &provider.ResourceInfo{Id: id, Opaque: o} } @@ -114,7 +114,7 @@ var _ = Describe("share recipients", func() { It("fails when the ancestor grants can't be decoded", func() { info := &provider.ResourceInfo{Id: fileID, Opaque: &types.Opaque{Map: map[string]*types.OpaqueEntry{ - ancestorGrantsKey: {Decoder: "json", Value: []byte("not json")}, + utils.AncestorGrantsKey: {Decoder: "json", Value: []byte("not json")}, }}} _, _, err := getShareRecipients(ctx, gwc, info) Expect(err).To(HaveOccurred()) @@ -144,7 +144,7 @@ var _ = Describe("share recipients", func() { gwc.EXPECT().Stat(mock.Anything, mock.MatchedBy(func(req *provider.StatRequest) bool { return utils.ResourceIDEqual(req.GetRef().GetResourceId(), rootID) && req.GetRef().GetPath() == "./a" && - req.GetFieldMask().GetPaths()[0] == ancestorGrantsKey + req.GetFieldMask().GetPaths()[0] == utils.AncestorGrantsKey })).Return(&provider.StatResponse{ Status: okStatus, Info: resourceInfo(folderA, userGrant(&user.UserId{OpaqueId: "bob"}, viewer)), @@ -178,7 +178,7 @@ var _ = Describe("share recipients", func() { info.ParentId = folderA info.Space = &provider.StorageSpace{Id: &provider.StorageSpaceId{OpaqueId: storageID + "$" + spaceID}} gwc.EXPECT().Stat(mock.Anything, mock.MatchedBy(func(req *provider.StatRequest) bool { - return req.GetFieldMask().GetPaths()[1] == ancestorGrantsKey + return req.GetFieldMask().GetPaths()[1] == utils.AncestorGrantsKey })).Return(&provider.StatResponse{Status: okStatus, Info: info}, nil).Once() members := utils.AppendJSONToOpaque(nil, "grants", map[string]*provider.ResourcePermissions{