From a24fb2b537a57c308385de9fe5149e29740d1d1b Mon Sep 17 00:00:00 2001 From: Stefan Metzmacher Date: Wed, 16 Jul 2008 12:58:29 +0200 Subject: drsuapi: get ctr6 out of xpress compressed level metze (This used to be commit 4e0708148a121bd41a12abf6122d5d6f3f09667a) --- source4/dsdb/repl/drepl_out_helpers.c | 5 +++++ source4/libnet/libnet_become_dc.c | 5 +++++ source4/torture/rpc/dssync.c | 5 +++++ 3 files changed, 15 insertions(+) diff --git a/source4/dsdb/repl/drepl_out_helpers.c b/source4/dsdb/repl/drepl_out_helpers.c index d79d94fc12..e0c3268f9d 100644 --- a/source4/dsdb/repl/drepl_out_helpers.c +++ b/source4/dsdb/repl/drepl_out_helpers.c @@ -316,6 +316,11 @@ static void dreplsrv_op_pull_source_get_changes_recv(struct rpc_request *req) r->out.ctr.ctr7.type == DRSUAPI_COMPRESSION_TYPE_MSZIP) { ctr_level = 6; ctr6 = r->out.ctr.ctr7.ctr.mszip6.ctr6; + } else if (*r->out.level == 7 && + r->out.ctr.ctr7.level == 6 && + r->out.ctr.ctr7.type == DRSUAPI_COMPRESSION_TYPE_XPRESS) { + ctr_level = 6; + ctr6 = r->out.ctr.ctr7.ctr.xpress6.ctr6; } else { composite_error(c, werror_to_ntstatus(WERR_BAD_NET_RESP)); return; diff --git a/source4/libnet/libnet_become_dc.c b/source4/libnet/libnet_become_dc.c index 3a437db440..556a51e8af 100644 --- a/source4/libnet/libnet_become_dc.c +++ b/source4/libnet/libnet_become_dc.c @@ -2454,6 +2454,11 @@ static WERROR becomeDC_drsuapi_pull_partition_recv(struct libnet_BecomeDC_state r->out.ctr.ctr7.type == DRSUAPI_COMPRESSION_TYPE_MSZIP) { ctr_level = 6; ctr6 = r->out.ctr.ctr7.ctr.mszip6.ctr6; + } else if (*r->out.level == 7 && + r->out.ctr.ctr7.level == 6 && + r->out.ctr.ctr7.type == DRSUAPI_COMPRESSION_TYPE_XPRESS) { + ctr_level = 6; + ctr6 = r->out.ctr.ctr7.ctr.xpress6.ctr6; } else { return WERR_BAD_NET_RESP; } diff --git a/source4/torture/rpc/dssync.c b/source4/torture/rpc/dssync.c index ec527687c0..9c07e5f532 100644 --- a/source4/torture/rpc/dssync.c +++ b/source4/torture/rpc/dssync.c @@ -725,6 +725,11 @@ static bool test_FetchData(struct torture_context *tctx, struct DsSyncTest *ctx) && r.out.ctr.ctr7.type == DRSUAPI_COMPRESSION_TYPE_MSZIP) { out_level = 6; ctr6 = r.out.ctr.ctr7.ctr.mszip6.ctr6; + } else if (ret == true && *r.out.level == 7 + && r.out.ctr.ctr7.level == 6 + && r.out.ctr.ctr7.type == DRSUAPI_COMPRESSION_TYPE_XPRESS) { + out_level = 6; + ctr6 = r.out.ctr.ctr7.ctr.xpress6.ctr6; } if (out_level == 6) { -- cgit