[Date Prev][Date Next] [Chronological] [Thread] [Top]

FW: problem with ldap search

Hi All, 

we are using a openldap 2.1.25 with private backend (we planning to upgrade in our next release). A very funny thing is happening. When we try to search using a client application written in c++ (file attached), bind and connect succeeds, but search never returns ie. it keeps on waiting for result till the timeout limit. (if i dont' use the timeout param in ldap_search, it never returns). 
When i use the same type of search but with unix ldapsearch, i get the result. 

Apparently following line of code, 

if ( ber_flush(conn-c_sb, ber, 0)== 0) { // line 146 of result.c , function name send_ldap_ber

which is responsible for actually writing to the client socket, is called with same parameter values in both the cases. and it does return 0 in both the cases as well. But it does write to client in one case (unix ldapsearch) but not in another (c++ client file). 

any suggestion, how to drill it down further or what might be causing this problem. 

thanks a lot, 

-Indu S Das

Attachment: Client.C
Description: Binary data

Attachment: search.sh
Description: Binary data