Skip to content

Commit 80d7e1e

Browse files
authored
Merge pull request #54304 from nextcloud/backport/54298/stable27
2 parents d17bffd + 7dde0c8 commit 80d7e1e

2 files changed

Lines changed: 13 additions & 8 deletions

File tree

apps/dav/lib/CardDAV/AddressBookImpl.php

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -189,6 +189,10 @@ public function getPermissions() {
189189
$permissions = $this->addressBook->getACL();
190190
$result = 0;
191191
foreach ($permissions as $permission) {
192+
if ($this->addressBookInfo['principaluri'] !== $permission['principal']) {
193+
continue;
194+
}
195+
192196
switch ($permission['privilege']) {
193197
case '{DAV:}read':
194198
$result |= Constants::PERMISSION_READ;

apps/dav/tests/unit/CardDAV/AddressBookImplTest.php

Lines changed: 9 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -272,14 +272,15 @@ public function testGetPermissions($permissions, $expected): void {
272272
public function dataTestGetPermissions() {
273273
return [
274274
[[], 0],
275-
[[['privilege' => '{DAV:}read']], 1],
276-
[[['privilege' => '{DAV:}write']], 6],
277-
[[['privilege' => '{DAV:}all']], 31],
278-
[[['privilege' => '{DAV:}read'],['privilege' => '{DAV:}write']], 7],
279-
[[['privilege' => '{DAV:}read'],['privilege' => '{DAV:}all']], 31],
280-
[[['privilege' => '{DAV:}all'],['privilege' => '{DAV:}write']], 31],
281-
[[['privilege' => '{DAV:}read'],['privilege' => '{DAV:}write'],['privilege' => '{DAV:}all']], 31],
282-
[[['privilege' => '{DAV:}all'],['privilege' => '{DAV:}read'],['privilege' => '{DAV:}write']], 31],
275+
[[['privilege' => '{DAV:}read', 'principal' => 'principals/system/system']], 1],
276+
[[['privilege' => '{DAV:}read', 'principal' => 'principals/system/system'], ['privilege' => '{DAV:}write', 'principal' => 'principals/someone/else']], 1],
277+
[[['privilege' => '{DAV:}write', 'principal' => 'principals/system/system']], 6],
278+
[[['privilege' => '{DAV:}all', 'principal' => 'principals/system/system']], 31],
279+
[[['privilege' => '{DAV:}read', 'principal' => 'principals/system/system'],['privilege' => '{DAV:}write', 'principal' => 'principals/system/system']], 7],
280+
[[['privilege' => '{DAV:}read', 'principal' => 'principals/system/system'],['privilege' => '{DAV:}all', 'principal' => 'principals/system/system']], 31],
281+
[[['privilege' => '{DAV:}all', 'principal' => 'principals/system/system'],['privilege' => '{DAV:}write', 'principal' => 'principals/system/system']], 31],
282+
[[['privilege' => '{DAV:}read', 'principal' => 'principals/system/system'],['privilege' => '{DAV:}write', 'principal' => 'principals/system/system'],['privilege' => '{DAV:}all', 'principal' => 'principals/system/system']], 31],
283+
[[['privilege' => '{DAV:}all', 'principal' => 'principals/system/system'],['privilege' => '{DAV:}read', 'principal' => 'principals/system/system'],['privilege' => '{DAV:}write', 'principal' => 'principals/system/system']], 31],
283284
];
284285
}
285286

0 commit comments

Comments
 (0)