int asyncmeta_back_cancel( a_metaconn_t *mc, Operation *op, ber_int_t msgid, int candidate ) { a_metainfo_t *mi = mc->mc_info; a_metatarget_t *mt = mi->mi_targets[ candidate ]; a_metasingleconn_t *msc = &mc->mc_conns[ candidate ]; int rc = LDAP_OTHER; Debug( LDAP_DEBUG_TRACE, ">>> %s asyncmeta_back_cancel[%d] msgid=%d\n", op->o_log_prefix, candidate, msgid ); if (msc->msc_ld == NULL) { Debug( LDAP_DEBUG_TRACE, ">>> %s asyncmeta_back_cancel[%d] msgid=%d\n already reset", op->o_log_prefix, candidate, msgid ); return LDAP_SUCCESS; } /* default behavior */ if ( META_BACK_TGT_ABANDON( mt ) ) { rc = ldap_abandon_ext( msc->msc_ld, msgid, NULL, NULL ); } else if ( META_BACK_TGT_IGNORE( mt ) ) { rc = ldap_pvt_discard( msc->msc_ld, msgid ); } else if ( META_BACK_TGT_CANCEL( mt ) ) { rc = ldap_cancel_s( msc->msc_ld, msgid, NULL, NULL ); } else { assert( 0 ); } Debug( LDAP_DEBUG_TRACE, "<<< %s asyncmeta_back_cancel[%d] err=%d\n", op->o_log_prefix, candidate, rc ); return rc; }
int meta_back_cancel( metaconn_t *mc, Operation *op, SlapReply *rs, ber_int_t msgid, int candidate, ldap_back_send_t sendok ) { metainfo_t *mi = (metainfo_t *)op->o_bd->be_private; metatarget_t *mt = mi->mi_targets[ candidate ]; metasingleconn_t *msc = &mc->mc_conns[ candidate ]; int rc = LDAP_OTHER; Debug( LDAP_DEBUG_TRACE, ">>> %s meta_back_cancel[%d] msgid=%d\n", op->o_log_prefix, candidate, msgid ); /* default behavior */ if ( META_BACK_TGT_ABANDON( mt ) ) { rc = ldap_abandon_ext( msc->msc_ld, msgid, NULL, NULL ); } else if ( META_BACK_TGT_IGNORE( mt ) ) { rc = ldap_pvt_discard( msc->msc_ld, msgid ); } else if ( META_BACK_TGT_CANCEL( mt ) ) { rc = ldap_cancel_s( msc->msc_ld, msgid, NULL, NULL ); } else { LDAP_BUG(); } Debug( LDAP_DEBUG_TRACE, "<<< %s meta_back_cancel[%d] err=%d\n", op->o_log_prefix, candidate, rc ); return rc; }