Skip to content

Commit 84e2ccc

Browse files
author
blackhedd
committed
Started adding support for LDAP rfc-2251 controls.
1 parent 504aa8c commit 84e2ccc

File tree

1 file changed

+18
-0
lines changed

1 file changed

+18
-0
lines changed

lib/net/ldap.rb

Lines changed: 18 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -274,6 +274,9 @@ class LdapError < Exception; end
274274
0 => :string, # password
275275
1 => :string, # Kerberos v4
276276
2 => :string, # Kerberos v5
277+
},
278+
:constructed => {
279+
0 => :array, # RFC-2251 Control
277280
}
278281
}
279282
}
@@ -885,12 +888,27 @@ def search args = {}
885888
search_filter.to_ber,
886889
search_attributes.to_ber_sequence
887890
].to_ber_appsequence(3)
891+
892+
=begin
893+
controls = [
894+
[
895+
"1.2.840.113556.1.4.319".to_ber,
896+
false.to_ber,
897+
898+
[10.to_ber, "".to_ber].to_ber_sequence.to_s.to_ber
899+
].to_ber_sequence
900+
901+
].to_ber_contextspecific(0)
902+
903+
pkt = [next_msgid.to_ber, request, controls].to_ber_sequence
904+
=end
888905
pkt = [next_msgid.to_ber, request].to_ber_sequence
889906
@conn.write pkt
890907

891908
result_code = 0
892909

893910
while (be = @conn.read_ber(AsnSyntax)) && (pdu = LdapPdu.new( be ))
911+
#p be
894912
case pdu.app_tag
895913
when 4 # search-data
896914
yield( pdu.search_entry ) if block_given?

0 commit comments

Comments
 (0)