summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorArthur Schiwon <blizzz@owncloud.com>2015-03-05 13:15:21 +0100
committerArthur Schiwon <blizzz@owncloud.com>2015-03-05 13:15:21 +0100
commit42d3ed47e23724419aeed0df5ccedec6f92ac172 (patch)
tree405dd628c34ad43a0a6ea75c495625f7196d4d8a
parent7e0fd8fb501459f3ff1cfa5ddb40e1c97d50d617 (diff)
downloadnextcloud-server-42d3ed47e23724419aeed0df5ccedec6f92ac172.tar.gz
nextcloud-server-42d3ed47e23724419aeed0df5ccedec6f92ac172.zip
set up paged search when limit is 0
-rw-r--r--apps/user_ldap/lib/access.php11
1 files changed, 11 insertions, 0 deletions
diff --git a/apps/user_ldap/lib/access.php b/apps/user_ldap/lib/access.php
index ebd34d5b942..c1b6ebaf1ca 100644
--- a/apps/user_ldap/lib/access.php
+++ b/apps/user_ldap/lib/access.php
@@ -1443,6 +1443,17 @@ class Access extends LDAPUtility implements user\IUserTools {
}
}
+ } else if($this->connection->hasPagedResultSupport && $limit === 0) {
+ // a search without limit was requested. However, if we do use
+ // Paged Search once, we always must do it. This requires us to
+ // initialize it with the configured page size.
+ $this->abandonPagedSearch();
+ // in case someone set it to 0 … use 500, otherwise no results will
+ // be returned.
+ $pageSize = intval($this->connection->ldapPagingSize) > 0 ? intval($this->connection->ldapPagingSize) : 500;
+ $pagedSearchOK = $this->ldap->controlPagedResult(
+ $this->connection->getConnectionResource(), $pageSize, false, ''
+ );
}
return $pagedSearchOK;