Subject: | Inappropriate error code from search when connection times out |
I have an application that opens connections to a number of LDAP servers and uses these in a long running process. When one of the connections times out and is dropped either at the network level or by the remote server I reconnect on detecting relevant failures.
Net::LDAP returns LDAP_OPERATIONS_ERROR (Internal server error) in these circumstances, which does not seem to be the naturally expected result. I had allowed for LDAP_LOCAL_ERROR and LDAP_SERVER_DOWN which I had assummed would be the correct result.
I have looked into the code but it is not obvious to me where this would have to be changed. This could be solved either by a code change or by a documentation change, but in the latter case guidance is needed to the programmer as to how (s)he should determine that the communications channel dropped rather than a real internal error has been signalled by the server.
Currently running under Perl 5.6.x on Solaris 5.8 and Perl 5.8.3 on Fedora 3 latest release.