lc->lc_conn = lc_curr.lc_conn;
ber_dupbv( &lc->lc_local_ndn, &lc_curr.lc_local_ndn );
- ldap_pvt_thread_mutex_init( &lc->lc_mutex );
-
if ( lc_curr.lc_ispriv ) {
ber_dupbv( &lc->lc_cred, &li->acl_passwd );
ber_dupbv( &lc->lc_bound_ndn, &li->acl_authcDN );
* it from all the callers, and I made the function return the flag, so
* it can be used to simplify the check.
*
- * Note: lc_mutex is locked; dolock indicates whether li->conn_mutex
- * must be locked or not
+ * Note: dolock indicates whether li->conn_mutex must be locked or not
*/
static int
ldap_back_dobind_int(
int
ldap_back_dobind( struct ldapconn *lc, Operation *op, SlapReply *rs, ldap_back_send_t sendok )
{
- int rc;
-
- ldap_pvt_thread_mutex_lock( &lc->lc_mutex );
- rc = ldap_back_dobind_int( lc, op, rs, sendok, 1, 1 );
- ldap_pvt_thread_mutex_unlock( &lc->lc_mutex );
-
- return rc;
+ return ldap_back_dobind_int( lc, op, rs, sendok, 1, 1 );
}
/*
lc = ldap_back_getconn( op, rs, LDAP_BACK_SENDERR );
if ( !lc || !ldap_back_dobind( lc, op, rs, LDAP_BACK_SENDERR ) ) {
- return -1;
+ return rs->sr_err;
}
ctrls = op->o_ctrls;
rc = ldap_back_proxy_authz_ctrl( lc, op, rs, &ctrls );
if ( rc != LDAP_SUCCESS ) {
send_ldap_result( op, rs );
- rc = -1;
+ rc = rs->sr_err;
goto cleanup;
}
lc = ldap_back_getconn( op, rs, LDAP_BACK_SENDERR );
if ( !lc || !ldap_back_dobind( lc, op, rs, LDAP_BACK_SENDERR ) ) {
- return -1;
+ return rs->sr_err;
}
for ( i = 0, ml = op->oq_modify.rs_modlist; ml; i++, ml = ml->sml_next )