Tk Library Source Code

View Ticket
Login
Ticket UUID: 1239915
Title: Bad processing of "*" in ldap::search
Type: Bug Version: None
Submitter: pdav Created on: 2005-07-17 20:26:36
Subsystem: ldap Assigned To: loewerj
Priority: 5 Medium Severity:
Status: Closed Last Modified: 2005-07-20 18:59:04
Resolution: Fixed Closed By: mic42
    Closed on: 2005-07-20 11:59:04
Description:
The ldap::search processing of substrings does not    
handle "*" when used in more complex situations    
than "*x", "*x*" or "x*". For example, this little test    
program displays :    
   (sn=david) : 3 result(s)   
   (sn=da*id) : 0 result(s)     <--- obviousely wrong!   
   
------------------------------------------------------------------------   
#!/usr/local/bin/tclsh8.4     
 
package require ldap 
 
set host ldap.u-strasbg.fr 
set base "o=ulp" 
set filter1 "(sn=david)" 
set filter2 "(sn=da*id)" 
 
set ldapfd [::ldap::connect $host] 
set r1 [::ldap::search $ldapfd $base $filter1 {}] 
set r2 [::ldap::search $ldapfd $base $filter2 {}] 
::ldap::disconnect $ldapfd 
 
puts "$filter1 : [llength $r1] result(s)" 
puts "$filter2 : [llength $r2] result(s)" 
--------------------------------------------------------------------------   
  
The attached patch provides a general solution to the 
"*" handling. It is still not the complete solution to RFC 
2254, but a little step forward. 
.. :-(
User Comments: mic42 added on 2005-07-20 18:59:04:
Logged In: YES 
user_id=302287

Patch is now commited in CVS.

pdav added on 2005-07-18 03:26:37:

File Added - 142375: pda-ldap-1

Attachments: