From: Pierangelo Masarati Date: Mon, 12 Jul 2004 22:50:34 +0000 (+0000) Subject: change flags only if entry massaging goes fine X-Git-Tag: OPENDLAP_REL_ENG_2_2_MP~77 X-Git-Url: https://git.sur5r.net/?a=commitdiff_plain;h=7011c4f3e2859c13de84a219d2ae56737efc72e5;p=openldap change flags only if entry massaging goes fine --- diff --git a/servers/slapd/overlays/rwm.c b/servers/slapd/overlays/rwm.c index 959cc4882f..13069fe095 100644 --- a/servers/slapd/overlays/rwm.c +++ b/servers/slapd/overlays/rwm.c @@ -21,6 +21,8 @@ #include +#include + #include "slap.h" #include "rwm.h" @@ -637,6 +639,7 @@ rwm_send_entry( Operation *op, SlapReply *rs ) (struct ldaprwmap *)on->on_bi.bi_private; Entry *e = NULL; + int flags; struct berval dn = BER_BVNULL, ndn = BER_BVNULL; dncookie dc; @@ -660,6 +663,8 @@ rwm_send_entry( Operation *op, SlapReply *rs ) dc.normalized = 0; #endif + flags = rs->sr_flags; + if ( !( rs->sr_flags & REP_ENTRY_MODIFIABLE ) ) { /* FIXME: all we need to duplicate are: * - dn @@ -674,7 +679,7 @@ rwm_send_entry( Operation *op, SlapReply *rs ) goto fail; } - rs->sr_flags |= ( REP_ENTRY_MODIFIABLE | REP_ENTRY_MUSTBEFREED ); + flags |= ( REP_ENTRY_MODIFIABLE | REP_ENTRY_MUSTBEFREED ); } /* @@ -825,6 +830,7 @@ next_attr:; rs->sr_entry = e; + rs->sr_flags = flags; return SLAP_CB_CONTINUE;