diff options
author | Morris Jobke <hey@morrisjobke.de> | 2015-01-12 17:42:37 +0100 |
---|---|---|
committer | Morris Jobke <hey@morrisjobke.de> | 2015-01-12 17:42:37 +0100 |
commit | af4d60adb0ab96f6af1d83003a1ee49230ada51e (patch) | |
tree | 1ac48f47d7ab67ac050afd8d481507dc870f8eaa | |
parent | 7a393abdbdf2acad73bbc37f7af501b90eac8d1b (diff) | |
parent | f28235a7ef6664978a8b4f6d16a47df508244294 (diff) | |
download | nextcloud-server-af4d60adb0ab96f6af1d83003a1ee49230ada51e.tar.gz nextcloud-server-af4d60adb0ab96f6af1d83003a1ee49230ada51e.zip |
Merge pull request #13280 from owncloud/fix-12306
fix retrieval of user groups
-rw-r--r-- | apps/user_ldap/lib/access.php | 6 | ||||
-rw-r--r-- | apps/user_ldap/lib/connection.php | 4 |
2 files changed, 8 insertions, 2 deletions
diff --git a/apps/user_ldap/lib/access.php b/apps/user_ldap/lib/access.php index f3657176f70..0fb968cebe7 100644 --- a/apps/user_ldap/lib/access.php +++ b/apps/user_ldap/lib/access.php @@ -149,7 +149,11 @@ class Access extends LDAPUtility implements user\IUserTools { $this->abandonPagedSearch(); // openLDAP requires that we init a new Paged Search. Not needed by AD, // but does not hurt either. - $this->initPagedSearch($filter, array($dn), array($attr), 1, 0); + $pagingSize = intval($this->connection->ldapPagingSize); + // 0 won't result in replies, small numbers may leave out groups + // (cf. #12306), 500 is default for paging and should work everywhere. + $maxResults = $pagingSize < 20 ? $pagingSize : 500; + $this->initPagedSearch($filter, array($dn), array($attr), $maxResults, 0); $dn = $this->DNasBaseParameter($dn); $rr = @$this->ldap->read($cr, $dn, $filter, array($attr)); if(!$this->ldap->isResource($rr)) { diff --git a/apps/user_ldap/lib/connection.php b/apps/user_ldap/lib/connection.php index c9b4fded9f9..a9d21ffc8e7 100644 --- a/apps/user_ldap/lib/connection.php +++ b/apps/user_ldap/lib/connection.php @@ -26,11 +26,13 @@ namespace OCA\user_ldap\lib; //magic properties (incomplete) /** * responsible for LDAP connections in context with the provided configuration + * * @property string ldapUserFilter * @property string ldapUserDisplayName * @property boolean hasPagedResultSupport * @property string[] ldapBaseUsers -*/ + * @property int|string ldapPagingSize holds an integer + */ class Connection extends LDAPUtility { private $ldapConnectionRes = null; private $configPrefix; |