Skip to content

Commit 392231e

Browse files
come-ncbackportbot[bot]
authored andcommitted
fix(user_ldap): Escape filter part when searching for group members
Signed-off-by: Côme Chilliet <come.chilliet@nextcloud.com>
1 parent f81ab0e commit 392231e

1 file changed

Lines changed: 3 additions & 3 deletions

File tree

apps/user_ldap/lib/Group_LDAP.php

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -119,7 +119,7 @@ public function inGroup($uid, $gid): bool {
119119
$parts = explode('@', $mid); //making sure we get only the uid
120120
$mid = $parts[0];
121121
}
122-
$filter = str_replace('%uid', $mid, $this->access->connection->ldapLoginFilter);
122+
$filter = str_replace('%uid', $this->access->escapeFilterPart($mid), $this->access->connection->ldapLoginFilter);
123123
$filterParts[] = $filter;
124124
$bytes += strlen($filter);
125125
if ($bytes >= 9000000) {
@@ -920,7 +920,7 @@ public function usersInGroup($gid, $search = '', $limit = -1, $offset = 0) {
920920
case 'memberuid':
921921
//we got uids, need to get their DNs to 'translate' them to user names
922922
$filter = $this->access->combineFilterWithAnd([
923-
str_replace('%uid', trim($member), $this->access->connection->ldapLoginFilter),
923+
str_replace('%uid', $this->access->escapeFilterPart($member), $this->access->connection->ldapLoginFilter),
924924
$this->access->combineFilterWithAnd([
925925
$this->access->getFilterPartForUserSearch($search),
926926
$this->access->connection->ldapUserFilter
@@ -1043,7 +1043,7 @@ public function countUsersInGroup($gid, $search = '') {
10431043
}
10441044
//we got uids, need to get their DNs to 'translate' them to user names
10451045
$filter = $this->access->combineFilterWithAnd([
1046-
str_replace('%uid', $member, $this->access->connection->ldapLoginFilter),
1046+
str_replace('%uid', $this->access->escapeFilterPart($member), $this->access->connection->ldapLoginFilter),
10471047
$this->access->getFilterPartForUserSearch($search)
10481048
]);
10491049
$ldap_users = $this->access->fetchListOfUsers($filter, ['dn'], 1);

0 commit comments

Comments
 (0)