mirror of
https://git.openldap.org/openldap/openldap.git
synced 2025-01-06 10:46:21 +08:00
if for any reason ldap_search_ext() fails (e.g. ITS#3706) don't wait for results
This commit is contained in:
parent
2e39dd74b8
commit
4199f4577a
@ -119,18 +119,22 @@ retry:
|
||||
|
||||
if ( rs->sr_err != LDAP_SUCCESS ) {
|
||||
fail:;
|
||||
if ( rs->sr_err == LDAP_SERVER_DOWN ) {
|
||||
if ( do_retry ) {
|
||||
do_retry = 0;
|
||||
if ( ldap_back_retry( lc, op, rs, LDAP_BACK_DONTSEND ) ) {
|
||||
goto retry;
|
||||
}
|
||||
}
|
||||
rc = ldap_back_op_result( lc, op, rs, msgid, LDAP_BACK_DONTSEND );
|
||||
ldap_back_freeconn( op, lc );
|
||||
lc = NULL;
|
||||
if ( rs->sr_err != LDAP_SERVER_DOWN ) {
|
||||
rs->sr_err = slap_map_api2result( rs );
|
||||
rs->sr_text = NULL;
|
||||
goto finish;
|
||||
}
|
||||
|
||||
if ( do_retry ) {
|
||||
do_retry = 0;
|
||||
if ( ldap_back_retry( lc, op, rs, LDAP_BACK_DONTSEND ) ) {
|
||||
goto retry;
|
||||
}
|
||||
}
|
||||
rc = ldap_back_op_result( lc, op, rs, msgid, LDAP_BACK_DONTSEND );
|
||||
ldap_back_freeconn( op, lc );
|
||||
lc = NULL;
|
||||
goto finish;
|
||||
}
|
||||
|
||||
/* We pull apart the ber result, stuff it into a slapd entry, and
|
||||
|
Loading…
Reference in New Issue
Block a user