Only add the paging control if the server supports it. This is partly to work around a bug where a server will not allow all users to page, and will return insufficient access instead of ignoring the control.
This commit is contained in:
parent
74e994eed1
commit
756529b3ae
1 changed files with 4 additions and 3 deletions
|
@ -1386,14 +1386,15 @@ class Net::LDAP::Connection #:nodoc:
|
|||
search_attributes.to_ber_sequence
|
||||
].to_ber_appsequence(3)
|
||||
|
||||
controls = [
|
||||
controls = []
|
||||
controls <<
|
||||
[
|
||||
Net::LDAP::LdapControls::PagedResults.to_ber,
|
||||
# Criticality MUST be false to interoperate with normal LDAPs.
|
||||
false.to_ber,
|
||||
rfc2696_cookie.map{ |v| v.to_ber}.to_ber_sequence.to_s.to_ber
|
||||
].to_ber_sequence
|
||||
].to_ber_contextspecific(0)
|
||||
].to_ber_sequence if paged_searches_supported
|
||||
controls = controls.to_ber_contextspecific(0)
|
||||
|
||||
pkt = [next_msgid.to_ber, request, controls].to_ber_sequence
|
||||
@conn.write pkt
|
||||
|
|
Loading…
Reference in a new issue