Open
Description
Search only returns 126 entries when nsslapd-sizelimit
is 126
Description
When performing a paged search using the net-ldap
gem, and the LDAP server's nsslapd-sizelimit
is set to a value below 127 (e.g., 126), the search returns only up to that limit and does not continue with additional pages.
Expected behavior:
Paged searches should continue retrieving results and return all entries from my server
Environment
- LDAP Server: 389 Directory Server (Docker image:
quay.io/389ds/dirsrv:latest
) - Server setting:
nsslapd-sizelimit=126
- net-ldap version: 0.17.1
- Ruby version: 3.3.6
Reproduction Steps
Set the server limit above the threshold (works as expected):
dsconf localhost config replace nsslapd-sizelimit=127
Then:
ldap = Net::LDAP.new(
host: '127.0.0.1',
port: 3389,
auth: {
method: :simple,
username: 'USERNAME',
password: 'PASSWORD'
}
)
ldap.search(base: 'ou=People,dc=example,dc=com').size
# => 4966
Now set the server limit below the threshold:
dsconf localhost config replace nsslapd-sizelimit=126
Then rerun the same Ruby code:
ldap.search(base: 'ou=People,dc=example,dc=com').size
# => 126
No additional pages are fetched, and the result is truncated at the server-side limit.
Additional Notes
- This issue does not occur in LDAP client
ldapsearch
.
Metadata
Metadata
Assignees
Labels
No labels