From 5bf257fa9ba32ec31886be34edff35eb41f885d4 Mon Sep 17 00:00:00 2001 From: Andrew Tridgell Date: Mon, 21 Dec 2009 21:12:19 +1100 Subject: s4-drs: use the extended linearized form for DRS replication We were sending zero GUIDs. Not good! Pair-Programmed-With: Andrew Bartlett --- source4/rpc_server/drsuapi/getncchanges.c | 9 ++++----- 1 file changed, 4 insertions(+), 5 deletions(-) (limited to 'source4') diff --git a/source4/rpc_server/drsuapi/getncchanges.c b/source4/rpc_server/drsuapi/getncchanges.c index b48bc68293..18c9242a10 100644 --- a/source4/rpc_server/drsuapi/getncchanges.c +++ b/source4/rpc_server/drsuapi/getncchanges.c @@ -239,7 +239,6 @@ static WERROR get_nc_changes_add_la(TALLOC_CTX *mem_ctx, const struct dsdb_schema *schema, const struct dsdb_attribute *sa, struct ldb_message *msg, - struct ldb_message_element *el, struct dsdb_dn *dsdb_dn, struct drsuapi_DsReplicaLinkedAttribute **la_list, uint32_t *la_count) @@ -287,9 +286,9 @@ static WERROR get_nc_changes_add_la(TALLOC_CTX *mem_ctx, } /* we need a message_element with just one value in it */ - v = data_blob_string_const(dsdb_dn_get_linearized(*la_list, dsdb_dn)); + v = data_blob_string_const(dsdb_dn_get_extended_linearized(*la_list, dsdb_dn, 1)); - val_el = *el; + val_el.name = sa->lDAPDisplayName; val_el.values = &v; val_el.num_values = 1; @@ -298,7 +297,7 @@ static WERROR get_nc_changes_add_la(TALLOC_CTX *mem_ctx, if (drs.value_ctr.num_values != 1) { DEBUG(1,(__location__ ": Failed to build DRS blob for linked attribute %s in %s\n", - el->name, ldb_dn_get_linearized(msg->dn))); + sa->lDAPDisplayName, ldb_dn_get_linearized(msg->dn))); return WERR_DS_DRA_INTERNAL_ERROR; } @@ -379,7 +378,7 @@ static WERROR get_nc_changes_add_links(struct ldb_context *sam_ctx, } werr = get_nc_changes_add_la(mem_ctx, sam_ctx, schema, sa, msg, - el, dsdb_dn, la_list, la_count); + dsdb_dn, la_list, la_count); if (!W_ERROR_IS_OK(werr)) { talloc_free(tmp_ctx); return werr; -- cgit