@@ -27,7 +27,7 @@ class Net::LDAP::Filter
2727
2828 def initialize ( op , left , right ) #:nodoc:
2929 unless FilterTypes . include? ( op )
30- raise Net ::LDAP ::LdapError , "Invalid or unsupported operator #{ op . inspect } in LDAP Filter."
30+ raise Net ::LDAP ::OperatorError , "Invalid or unsupported operator #{ op . inspect } in LDAP Filter."
3131 end
3232 @op = op
3333 @left = left
@@ -290,7 +290,7 @@ def parse_ber(ber)
290290 ber . last . each { |b |
291291 case b . ber_identifier
292292 when 0x80 # context-specific primitive 0, SubstringFilter "initial"
293- raise Net ::LDAP ::LdapError , "Unrecognized substring filter; bad initial value." if str . length > 0
293+ raise Net ::LDAP ::SubstringFilterError , "Unrecognized substring filter; bad initial value." if str . length > 0
294294 str += escape ( b )
295295 when 0x81 # context-specific primitive 0, SubstringFilter "any"
296296 str += "*#{ escape ( b ) } "
@@ -309,9 +309,9 @@ def parse_ber(ber)
309309 # call to_s to get rid of the BER-identifiedness of the incoming string.
310310 present? ( ber . to_s )
311311 when 0xa9 # context-specific constructed 9, "extensible comparison"
312- raise Net ::LDAP ::LdapError , "Invalid extensible search filter, should be at least two elements" if ber . size < 2
313-
314- # Reassembles the extensible filter parts
312+ raise Net ::LDAP ::SearchFilterError , "Invalid extensible search filter, should be at least two elements" if ber . size < 2
313+
314+ # Reassembles the extensible filter parts
315315 # (["sn", "2.4.6.8.10", "Barbara Jones", '1'])
316316 type = value = dn = rule = nil
317317 ber . each do |element |
@@ -330,7 +330,7 @@ def parse_ber(ber)
330330
331331 ex ( attribute , value )
332332 else
333- raise Net ::LDAP ::LdapError , "Invalid BER tag-value (#{ ber . ber_identifier } ) in search filter."
333+ raise Net ::LDAP ::BERInvalidError , "Invalid BER tag-value (#{ ber . ber_identifier } ) in search filter."
334334 end
335335 end
336336
@@ -357,7 +357,7 @@ def parse_ldap_filter(obj)
357357 when 0xa3 # equalityMatch. context-specific constructed 3.
358358 eq ( obj [ 0 ] , obj [ 1 ] )
359359 else
360- raise Net ::LDAP ::LdapError , "Unknown LDAP search-filter type: #{ obj . ber_identifier } "
360+ raise Net ::LDAP ::SearchFilterTypeUnknownError , "Unknown LDAP search-filter type: #{ obj . ber_identifier } "
361361 end
362362 end
363363 end
@@ -532,7 +532,7 @@ def to_ber
532532 seq = [ ]
533533
534534 unless @left =~ /^([-;\w ]*)(:dn)?(:(\w +|[.\w ]+))?$/
535- raise Net ::LDAP ::LdapError , "Bad attribute #{ @left } "
535+ raise Net ::LDAP ::BadAttributeError , "Bad attribute #{ @left } "
536536 end
537537 type , dn , rule = $1, $2, $4
538538
@@ -639,7 +639,7 @@ def match(entry)
639639 l = entry [ @left ] and l = Array ( l ) and l . index ( @right )
640640 end
641641 else
642- raise Net ::LDAP ::LdapError , "Unknown filter type in match: #{ @op } "
642+ raise Net ::LDAP ::FilterTypeUnknownError , "Unknown filter type in match: #{ @op } "
643643 end
644644 end
645645
@@ -672,7 +672,7 @@ def parse(ldap_filter_string)
672672 def initialize ( str )
673673 require 'strscan' # Don't load strscan until we need it.
674674 @filter = parse ( StringScanner . new ( str ) )
675- raise Net ::LDAP ::LdapError , "Invalid filter syntax." unless @filter
675+ raise Net ::LDAP ::FilterSyntaxInvalidError , "Invalid filter syntax." unless @filter
676676 end
677677
678678 ##
0 commit comments