Skip to content
Merged
Changes from 1 commit
Commits
Show all changes
22 commits
Select commit Hold shift + click to select a range
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Prev Previous commit
Next Next commit
Small optimisation of _groupMembers
This will not change the result as users are check to be existing
 afterwards but avoids this check when we know it’s a group.

Signed-off-by: Côme Chilliet <[email protected]>
  • Loading branch information
come-nc authored and CarlSchwan committed Oct 20, 2022
commit 8b19cfcd885451080a5114dc451a3c78a8dccc81
9 changes: 7 additions & 2 deletions apps/user_ldap/lib/Group_LDAP.php
Original file line number Diff line number Diff line change
Expand Up @@ -294,8 +294,13 @@ private function _groupMembers(string $dnGroup, array &$seen = []): array {
if ((int)$this->access->connection->ldapNestedGroups === 1) {
while ($recordDn = array_shift($members)) {
$nestedMembers = $this->_groupMembers($recordDn, $seen);
$members = array_merge($members, $nestedMembers);
$allMembers[] = $recordDn;
if (!empty($nestedMembers)) {
// Group, queue its members for processing
$members = array_merge($members, $nestedMembers);
} else {
// User (or empty group, or previously seen group), add it to the member list
$allMembers[] = $recordDn;
}
}
} else {
$allMembers = $members;
Expand Down