summaryrefslogtreecommitdiff
path: root/source4/dsdb/samdb
diff options
context:
space:
mode:
authorStefan Metzmacher <metze@samba.org>2007-01-12 16:02:10 +0000
committerGerald (Jerry) Carter <jerry@samba.org>2007-10-10 14:40:29 -0500
commit18f81804696c0916652acc1f9491e96fda0d25fc (patch)
treec9a5783413ce8961f14b23ead21c05e58d26febf /source4/dsdb/samdb
parentfaf57b1dc5a451109d4b2b64965d87ee3c6c04eb (diff)
downloadsamba-18f81804696c0916652acc1f9491e96fda0d25fc.tar.gz
samba-18f81804696c0916652acc1f9491e96fda0d25fc.tar.bz2
samba-18f81804696c0916652acc1f9491e96fda0d25fc.zip
r20709: pass a repsFromTo1 struct down as it contains all needed info for the source dsa
and the highwater mark vector metze (This used to be commit a31e017e5388e5abd6ed9d09adcf26d2527954a6)
Diffstat (limited to 'source4/dsdb/samdb')
-rw-r--r--source4/dsdb/samdb/ldb_modules/repl_meta_data.c11
-rw-r--r--source4/dsdb/samdb/samdb.h3
2 files changed, 8 insertions, 6 deletions
diff --git a/source4/dsdb/samdb/ldb_modules/repl_meta_data.c b/source4/dsdb/samdb/ldb_modules/repl_meta_data.c
index 7998d5466c..a1fe2e7eb5 100644
--- a/source4/dsdb/samdb/ldb_modules/repl_meta_data.c
+++ b/source4/dsdb/samdb/ldb_modules/repl_meta_data.c
@@ -677,6 +677,9 @@ static int replmd_replicated_uptodate_modify(struct replmd_replicated_request *a
return replmd_replicated_request_error(ar, ret);
}
+ /*
+ * first create the new replUpToDateVector
+ */
ouv_value = ldb_msg_find_ldb_val(ar->sub.search_msg, "replUpToDateVector");
if (ouv_value) {
nt_status = ndr_pull_struct_blob(ouv_value, ar->sub.mem_ctx, &ouv,
@@ -743,7 +746,7 @@ static int replmd_replicated_uptodate_modify(struct replmd_replicated_request *a
*/
found = false;
for (j=0; j < ni; j++) {
- if (!GUID_equal(ar->objs->source_dsa_invocation_id,
+ if (!GUID_equal(&ar->objs->source_dsa->source_dsa_invocation_id,
&nuv.ctr.ctr2.cursors[j].source_dsa_invocation_id)) {
continue;
}
@@ -757,7 +760,7 @@ static int replmd_replicated_uptodate_modify(struct replmd_replicated_request *a
* and use the tmp_highest_usn because this is what we have just applied
* to our ldb
*/
- nuv.ctr.ctr2.cursors[j].highest_usn = ar->objs->new_highwatermark->tmp_highest_usn;
+ nuv.ctr.ctr2.cursors[j].highest_usn = ar->objs->source_dsa->highwatermark.tmp_highest_usn;
nuv.ctr.ctr2.cursors[j].last_sync_success = now;
break;
}
@@ -769,8 +772,8 @@ static int replmd_replicated_uptodate_modify(struct replmd_replicated_request *a
* and use the tmp_highest_usn because this is what we have just applied
* to our ldb
*/
- nuv.ctr.ctr2.cursors[ni].source_dsa_invocation_id= *ar->objs->source_dsa_invocation_id;
- nuv.ctr.ctr2.cursors[ni].highest_usn = ar->objs->new_highwatermark->tmp_highest_usn;
+ nuv.ctr.ctr2.cursors[ni].source_dsa_invocation_id= ar->objs->source_dsa->source_dsa_invocation_id;
+ nuv.ctr.ctr2.cursors[ni].highest_usn = ar->objs->source_dsa->highwatermark.tmp_highest_usn;
nuv.ctr.ctr2.cursors[ni].last_sync_success = now;
ni++;
}
diff --git a/source4/dsdb/samdb/samdb.h b/source4/dsdb/samdb/samdb.h
index 73e40183aa..0a4804dfb3 100644
--- a/source4/dsdb/samdb/samdb.h
+++ b/source4/dsdb/samdb/samdb.h
@@ -50,8 +50,7 @@ struct dsdb_extended_replicated_object {
struct dsdb_extended_replicated_objects {
struct ldb_dn *partition_dn;
- const struct GUID *source_dsa_invocation_id;
- const struct drsuapi_DsReplicaHighWaterMark *new_highwatermark;
+ const struct repsFromTo1 *source_dsa;
const struct drsuapi_DsReplicaCursor2CtrEx *uptodateness_vector;
uint32_t num_objects;