Author: metze
Date: 2006-12-08 17:34:15 +0000 (Fri, 08 Dec 2006)
New Revision: 20079

WebSVN: 
http://websvn.samba.org/cgi-bin/viewcvs.cgi?view=rev&root=samba&rev=20079

Log:
the 2nd guid is the source_dsa invocation_id not the objectGUID,
this wasn't noticed because on the 1st dc in the forest both have the
same value

metze
Modified:
   branches/SAMBA_4_0/source/libnet/libnet_become_dc.c
   branches/SAMBA_4_0/source/librpc/idl/drsuapi.idl
   branches/SAMBA_4_0/source/torture/rpc/drsuapi.c
   branches/SAMBA_4_0/source/torture/rpc/dssync.c


Changeset:
Modified: branches/SAMBA_4_0/source/libnet/libnet_become_dc.c
===================================================================
--- branches/SAMBA_4_0/source/libnet/libnet_become_dc.c 2006-12-08 03:47:55 UTC 
(rev 20078)
+++ branches/SAMBA_4_0/source/libnet/libnet_become_dc.c 2006-12-08 17:34:15 UTC 
(rev 20079)
@@ -118,6 +118,7 @@
                struct drsuapi_DsReplicaObjectIdentifier nc;
                struct GUID destination_dsa_guid;
                struct GUID source_dsa_guid;
+               struct GUID source_dsa_invocation_id;
                struct drsuapi_DsReplicaHighWaterMark highwatermark;
                struct drsuapi_DsReplicaCoursorCtrEx *uptodateness_vector;
                uint32_t replica_flags;
@@ -1555,7 +1556,7 @@
        if (drsuapi_h->remote_info28.supported_extensions & 
DRSUAPI_SUPPORTED_EXTENSION_GETCHGREQ_V8) {
                r->in.level                             = 8;
                r->in.req.req8.destination_dsa_guid     = 
partition->destination_dsa_guid;
-               r->in.req.req8.source_dsa_guid          = 
partition->source_dsa_guid;
+               r->in.req.req8.source_dsa_invocation_id = 
partition->source_dsa_invocation_id;
                r->in.req.req8.naming_context           = &partition->nc;
                r->in.req.req8.highwatermark            = 
partition->highwatermark;
                r->in.req.req8.uptodateness_vector      = 
partition->uptodateness_vector;
@@ -1571,7 +1572,7 @@
        } else {
                r->in.level                             = 5;
                r->in.req.req5.destination_dsa_guid     = 
partition->destination_dsa_guid;
-               r->in.req.req5.source_dsa_guid          = 
partition->source_dsa_guid;
+               r->in.req.req5.source_dsa_invocation_id = 
partition->source_dsa_invocation_id;
                r->in.req.req5.naming_context           = &partition->nc;
                r->in.req.req5.highwatermark            = 
partition->highwatermark;
                r->in.req.req5.uptodateness_vector      = 
partition->uptodateness_vector;

Modified: branches/SAMBA_4_0/source/librpc/idl/drsuapi.idl
===================================================================
--- branches/SAMBA_4_0/source/librpc/idl/drsuapi.idl    2006-12-08 03:47:55 UTC 
(rev 20078)
+++ branches/SAMBA_4_0/source/librpc/idl/drsuapi.idl    2006-12-08 17:34:15 UTC 
(rev 20079)
@@ -230,7 +230,7 @@
 
        typedef struct {
                GUID destination_dsa_guid;
-               GUID source_dsa_guid;
+               GUID source_dsa_invocation_id; /* the 'invocationId' field of 
the CN=NTDS Settings object */
                [ref] drsuapi_DsReplicaObjectIdentifier *naming_context;
                drsuapi_DsReplicaHighWaterMark highwatermark;
                drsuapi_DsReplicaCoursorCtrEx *uptodateness_vector;
@@ -258,7 +258,7 @@
 
        typedef struct {
                GUID destination_dsa_guid;
-               GUID source_dsa_guid;
+               GUID source_dsa_invocation_id; /* the 'invocationId' field of 
the CN=NTDS Settings object */
                [ref] drsuapi_DsReplicaObjectIdentifier *naming_context;
                drsuapi_DsReplicaHighWaterMark highwatermark;
                drsuapi_DsReplicaCoursorCtrEx *uptodateness_vector;

Modified: branches/SAMBA_4_0/source/torture/rpc/drsuapi.c
===================================================================
--- branches/SAMBA_4_0/source/torture/rpc/drsuapi.c     2006-12-08 03:47:55 UTC 
(rev 20078)
+++ branches/SAMBA_4_0/source/torture/rpc/drsuapi.c     2006-12-08 17:34:15 UTC 
(rev 20079)
@@ -553,7 +553,7 @@
                        nc.dn   = priv->domain_obj_dn?priv->domain_obj_dn:"";
 
                        r.in.req.req5.destination_dsa_guid              = 
GUID_random();
-                       r.in.req.req5.source_dsa_guid                   = 
null_guid;
+                       r.in.req.req5.source_dsa_invocation_id          = 
null_guid;
                        r.in.req.req5.naming_context                    = &nc;
                        r.in.req.req5.highwatermark.tmp_highest_usn     = 0;
                        r.in.req.req5.highwatermark.reserved_usn        = 0;
@@ -575,7 +575,7 @@
                        nc.dn   = priv->domain_obj_dn?priv->domain_obj_dn:"";
 
                        r.in.req.req8.destination_dsa_guid              = 
GUID_random();
-                       r.in.req.req8.source_dsa_guid                   = 
null_guid;
+                       r.in.req.req8.source_dsa_invocation_id          = 
null_guid;
                        r.in.req.req8.naming_context                    = &nc;
                        r.in.req.req8.highwatermark.tmp_highest_usn     = 0;
                        r.in.req.req8.highwatermark.reserved_usn        = 0;

Modified: branches/SAMBA_4_0/source/torture/rpc/dssync.c
===================================================================
--- branches/SAMBA_4_0/source/torture/rpc/dssync.c      2006-12-08 03:47:55 UTC 
(rev 20078)
+++ branches/SAMBA_4_0/source/torture/rpc/dssync.c      2006-12-08 17:34:15 UTC 
(rev 20079)
@@ -421,7 +421,7 @@
                        nc.dn   = partition; 
 
                        r.in.req.req5.destination_dsa_guid              = 
ctx->new_dc.invocation_id;
-                       r.in.req.req5.source_dsa_guid                   = 
null_guid;
+                       r.in.req.req5.source_dsa_invocation_id          = 
null_guid;
                        r.in.req.req5.naming_context                    = &nc;
                        r.in.req.req5.highwatermark.tmp_highest_usn     = 
highest_usn;
                        r.in.req.req5.highwatermark.reserved_usn        = 0;
@@ -452,7 +452,7 @@
                        /* nc.dn can be set to any other ad partition */
                        
                        r.in.req.req8.destination_dsa_guid              = 
ctx->new_dc.invocation_id;
-                       r.in.req.req8.source_dsa_guid                   = 
null_guid;
+                       r.in.req.req8.source_dsa_invocation_id          = 
null_guid;
                        r.in.req.req8.naming_context                    = &nc;
                        r.in.req.req8.highwatermark.tmp_highest_usn     = 
highest_usn;
                        r.in.req.req8.highwatermark.reserved_usn        = 0;

Reply via email to