// Freeze a Group into a flattened protobuf-based structure // ready to be persisted to disk. func FreezeGroup(group acl.Group) (*freezer.Group, error) { frozenGroup := &freezer.Group{} frozenGroup.Name = proto.String(group.Name) frozenGroup.Inherit = proto.Bool(group.Inherit) frozenGroup.Inheritable = proto.Bool(group.Inheritable) for _, id := range group.AddUsers() { frozenGroup.Add = append(frozenGroup.Add, uint32(id)) } for _, id := range group.RemoveUsers() { frozenGroup.Remove = append(frozenGroup.Remove, uint32(id)) } return frozenGroup, nil }