]> git.sur5r.net Git - openldap/blobdiff - servers/slapd/back-monitor/entry.c
ITS#4458 re-encode passwd request
[openldap] / servers / slapd / back-monitor / entry.c
index a7b83d489fb9be3175b0d44e4e468e67a32ca858..3b3d4691c531c8c08351d0af4991c55ff48d8f1b 100644 (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;
        }
@@ -193,7 +193,7 @@ monitor_entry_stub(
        if ( rc )
                return NULL;
 
-       e = ch_calloc( 1, sizeof( Entry ));
+       e = entry_alloc();
        if ( e ) {
                struct berval nrdn;