[Fedora-directory-commits] ldapserver/ldap/servers/plugins/replication windows_protocol_util.c, 1.30, 1.31 windows_tot_protocol.c, 1.9, 1.10

Nathan Kinder (nkinder) fedora-directory-commits at redhat.com
Tue Sep 4 15:45:59 UTC 2007


Author: nkinder

Update of /cvs/dirsec/ldapserver/ldap/servers/plugins/replication
In directory cvs-int.fedora.redhat.com:/tmp/cvs-serv23522/plugins/replication

Modified Files:
	windows_protocol_util.c windows_tot_protocol.c 
Log Message:
Resolves: 207567
Summary: Corrected search scope used to find entries to sync in winsync total update protocol.



Index: windows_protocol_util.c
===================================================================
RCS file: /cvs/dirsec/ldapserver/ldap/servers/plugins/replication/windows_protocol_util.c,v
retrieving revision 1.30
retrieving revision 1.31
diff -u -r1.30 -r1.31
--- windows_protocol_util.c	30 Aug 2007 15:56:35 -0000	1.30
+++ windows_protocol_util.c	4 Sep 2007 15:45:57 -0000	1.31
@@ -3028,23 +3028,11 @@
 	return retval;
 }
 
-static int 
-windows_process_total_delete(Private_Repl_Protocol *prp,Slapi_Entry *e, Slapi_DN* remote_dn)
-{
-	int retval = 0;
-	if (delete_remote_entry_allowed(e))
-	{			
-		retval = windows_conn_send_delete(prp->conn, slapi_sdn_get_dn(remote_dn), NULL, NULL /* returned controls */);
-	}
-	return retval;
-}
-
 /* Entry point for the total protocol */
 int windows_process_total_entry(Private_Repl_Protocol *prp,Slapi_Entry *e)
 {
 	int retval = 0;
 	int is_ours = 0;
-	int is_tombstone = 0;
 	Slapi_DN *remote_dn = NULL;
 	int missing_entry = 0;
 	const Slapi_DN *local_dn = slapi_entry_get_sdn_const(e);
@@ -3063,14 +3051,7 @@
 				agmt_get_long_name(prp->agmt), slapi_sdn_get_dn(local_dn));
 			goto error;
 		}
-		/* Either the entry is a tombstone, or not a tombstone */
-		if (is_tombstone)
-		{
-			retval = windows_process_total_delete(prp,e,remote_dn);
-		} else
-		{
-			retval = windows_process_total_add(prp,e,remote_dn,missing_entry);
-		}
+		retval = windows_process_total_add(prp,e,remote_dn,missing_entry);
 	}
 	if (remote_dn)
 	{


Index: windows_tot_protocol.c
===================================================================
RCS file: /cvs/dirsec/ldapserver/ldap/servers/plugins/replication/windows_tot_protocol.c,v
retrieving revision 1.9
retrieving revision 1.10
diff -u -r1.9 -r1.10
--- windows_tot_protocol.c	10 Nov 2006 23:45:17 -0000	1.9
+++ windows_tot_protocol.c	4 Sep 2007 15:45:57 -0000	1.10
@@ -171,8 +171,10 @@
 	dn = slapi_sdn_get_dn( windows_private_get_directory_subtree(prp->agmt));
 
 	pb = slapi_pblock_new ();
-    slapi_search_internal_set_pb (pb, dn, /* XXX modify the searchfilter and scope? */
-                                  LDAP_SCOPE_ONELEVEL, "(|(objectclass=ntuser)(objectclass=ntgroup)(nsuniqueid=*))", NULL, 0, NULL, NULL, 
+    /* Perform a subtree search for any ntuser or ntgroup entries underneath the
+     * suffix defined in the sync agreement. */
+    slapi_search_internal_set_pb (pb, dn, 
+                                  LDAP_SCOPE_SUBTREE, "(|(objectclass=ntuser)(objectclass=ntgroup))", NULL, 0, NULL, NULL, 
                                   repl_get_plugin_identity (PLUGIN_MULTIMASTER_REPLICATION), 0);
     cb_data.prp = prp;
     cb_data.rc = 0;
@@ -180,8 +182,6 @@
 	cb_data.sleep_on_busy = 0UL;
 	cb_data.last_busy = current_time ();
 
-    /* this search get all the entries from the replicated area including tombstones
-       and referrals */
     slapi_search_internal_callback_pb (pb, &cb_data /* callback data */,
                                        get_result /* result callback */,
                                        send_entry /* entry callback */,




More information about the Fedora-directory-commits mailing list