]> git.sur5r.net Git - openldap/blobdiff - servers/slapd/result.c
More for ITS#6103
[openldap] / servers / slapd / result.c
index 4f2a7f17b12e5ea3f58ace77df8ef316ea7cf269..4b222da6404cd16488ac425c06f736f913ddc1d9 100644 (file)
@@ -145,7 +145,7 @@ static long send_ldap_ber(
 
        /* write only one pdu at a time - wait til it's our turn */
        ldap_pvt_thread_mutex_lock( &conn->c_write1_mutex );
-       if (( op->o_abandon && !op->o_cancel ) || connection_state_closing( conn )) {
+       if (( op->o_abandon && !op->o_cancel ) || !connection_valid( conn )) {
                ldap_pvt_thread_mutex_unlock( &conn->c_write1_mutex );
                return 0;
        }
@@ -211,7 +211,7 @@ static long send_ldap_ber(
                /* wait for socket to be write-ready */
                ldap_pvt_thread_mutex_lock( &conn->c_write2_mutex );
                conn->c_writewaiter = 1;
-               slapd_set_write( conn->c_sd, 1 );
+               slapd_set_write( conn->c_sd, 2 );
 
                ldap_pvt_thread_mutex_unlock( &conn->c_write1_mutex );
                ldap_pvt_thread_mutex_unlock( &conn->c_mutex );
@@ -456,7 +456,7 @@ send_ldap_response(
                op->o_protocol == LDAP_VERSION2 )
        {
                rc = ber_printf( ber, "t{ess" /*"}"*/,
-                       rs->sr_tag, rs->sr_err,
+                       rs->sr_tag, rc,
                rs->sr_matched == NULL ? "" : rs->sr_matched,
                rs->sr_text == NULL ? "" : rs->sr_text );
        } else 
@@ -1669,4 +1669,3 @@ slap_attr_flags( AttributeName *an )
 
        return flags;
 }
-