process callbacks first; they are supposed to remove modifications they successfully handled, so that regular modify function can complain if any unhandled modification remains

This commit is contained in:
Pierangelo Masarati 2006-08-05 15:51:13 +00:00
parent bbdc0bcd00
commit b1faecd35c

View File

@ -42,11 +42,7 @@ monitor_entry_update(
mp = ( monitor_entry_t * )e->e_private;
if ( mp->mp_info && mp->mp_info->mss_update ) {
rc = mp->mp_info->mss_update( op, rs, e );
}
if ( rc == SLAP_CB_CONTINUE && mp->mp_cb ) {
if ( mp->mp_cb ) {
struct monitor_callback_t *mc;
for ( mc = mp->mp_cb; mc; mc = mc->mc_next ) {
@ -59,6 +55,10 @@ monitor_entry_update(
}
}
if ( rc == SLAP_CB_CONTINUE && mp->mp_info && mp->mp_info->mss_update ) {
rc = mp->mp_info->mss_update( op, rs, e );
}
if ( rc == SLAP_CB_CONTINUE ) {
rc = LDAP_SUCCESS;
}
@ -115,11 +115,7 @@ monitor_entry_modify(
mp = ( monitor_entry_t * )e->e_private;
if ( mp->mp_info && mp->mp_info->mss_modify ) {
rc = mp->mp_info->mss_modify( op, rs, e );
}
if ( rc == SLAP_CB_CONTINUE && mp->mp_cb ) {
if ( mp->mp_cb ) {
struct monitor_callback_t *mc;
for ( mc = mp->mp_cb; mc; mc = mc->mc_next ) {
@ -132,6 +128,10 @@ monitor_entry_modify(
}
}
if ( rc == SLAP_CB_CONTINUE && mp->mp_info && mp->mp_info->mss_modify ) {
rc = mp->mp_info->mss_modify( op, rs, e );
}
if ( rc == SLAP_CB_CONTINUE ) {
rc = LDAP_SUCCESS;
}