From f1e4ae9971e61f7c4a43ae0049a1162cc2e3dafb Mon Sep 17 00:00:00 2001 From: Andrew Bartlett Date: Sat, 22 Jul 2017 22:00:59 +1200 Subject: [PATCH] s4-drepl: Block GetNCChanges during a DsReplicaSync If we do not block these, we can get RPC faults (DCERPC_NCA_S_PROTO_ERROR) which gives WERR_WRITE_FAULT back to the DsReplicaSync call as there are two outstanding requests on the wire at the one time. We will get to the next operation as soon as this is finished when we call run_pending_ops(). BUG: https://bugzilla.samba.org/show_bug.cgi?id=12926 Signed-off-by: Andrew Bartlett Reviewed-by: Stefan Metzmacher Autobuild-User(master): Stefan Metzmacher Autobuild-Date(master): Sun Jul 23 12:32:49 CEST 2017 on sn-devel-144 --- source4/dsdb/repl/drepl_out_pull.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/source4/dsdb/repl/drepl_out_pull.c b/source4/dsdb/repl/drepl_out_pull.c index 8af64124e89..8b8ecd90d89 100644 --- a/source4/dsdb/repl/drepl_out_pull.c +++ b/source4/dsdb/repl/drepl_out_pull.c @@ -198,7 +198,7 @@ void dreplsrv_run_pull_ops(struct dreplsrv_service *s) struct tevent_req *subreq; WERROR werr; - if (s->ops.current) { + if (s->ops.n_current || s->ops.current) { /* if there's still one running, we're done */ return; } -- 2.11.4.GIT