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