]> git.sur5r.net Git - openldap/commitdiff
reintroduce changes made in tools/slapadd.c v1.64 (looks like missing during code...
authorJong Hyuk Choi <jongchoi@openldap.org>
Fri, 26 Mar 2004 21:54:06 +0000 (21:54 +0000)
committerJong Hyuk Choi <jongchoi@openldap.org>
Fri, 26 Mar 2004 21:54:06 +0000 (21:54 +0000)
servers/slapd/slapadd.c

index 4dd59578efd0a0ddbe207dbf90ba183c684f2a18..0d164f2b8dd6c56ca5ab7fe11739d6a752fb50c2 100644 (file)
@@ -308,7 +308,8 @@ slapadd( int argc, char **argv )
                        }
                }
 
-               if ( update_ctxcsn == SLAP_TOOL_CTXCSN_KEEP ) {
+               if ( update_ctxcsn == SLAP_TOOL_CTXCSN_KEEP &&
+                       ( replica_promotion || replica_demotion )) {
                        if ( is_entry_syncProviderSubentry( e )) { 
                                if ( !LDAP_SLIST_EMPTY( &consumer_subentry )) {
                                        fprintf( stderr, "%s: consumer and provider subentries "
@@ -402,8 +403,9 @@ slapadd( int argc, char **argv )
                        }
                }
 
-               if ( !is_entry_syncProviderSubentry( e ) &&
-                        !is_entry_syncConsumerSubentry( e )) {
+               if (( !is_entry_syncProviderSubentry( e ) &&
+                        !is_entry_syncConsumerSubentry( e )) ||
+                        ( !replica_promotion && !replica_demotion )) {
                        if (!dryrun) {
                                ID id = be->be_entry_put( be, e, &bvtext );
                                if( id == NOID ) {