diff --git a/source/dsdb/repl/drepl_out_helpers.c b/source/dsdb/repl/drepl_out_helpers.c index e0c3268f9d9..694d89dfe34 100644 --- a/source/dsdb/repl/drepl_out_helpers.c +++ b/source/dsdb/repl/drepl_out_helpers.c @@ -326,6 +326,13 @@ static void dreplsrv_op_pull_source_get_changes_recv(struct rpc_request *req) return; } + if (ctr_level == 6) { + if (!W_ERROR_IS_OK(ctr6->drs_error)) { + composite_error(c, werror_to_ntstatus(ctr6->drs_error)); + return; + } + } + dreplsrv_op_pull_source_apply_changes_send(st, r, ctr_level, ctr1, ctr6); } diff --git a/source/libnet/libnet_become_dc.c b/source/libnet/libnet_become_dc.c index 556a51e8af8..1f7444062a9 100644 --- a/source/libnet/libnet_become_dc.c +++ b/source/libnet/libnet_become_dc.c @@ -2463,6 +2463,12 @@ static WERROR becomeDC_drsuapi_pull_partition_recv(struct libnet_BecomeDC_state return WERR_BAD_NET_RESP; } + if (ctr_level == 6) { + if (!W_ERROR_IS_OK(ctr6->drs_error)) { + return ctr6->drs_error; + } + } + switch (ctr_level) { case 1: source_dsa_guid = &ctr1->source_dsa_guid;