diff options
author | Andrew Tridgell <tridge@samba.org> | 2010-09-29 22:08:48 -0700 |
---|---|---|
committer | Andrew Tridgell <tridge@samba.org> | 2010-09-29 22:12:57 -0700 |
commit | 1a9f5b45f80030c63dbd5616c6de1e99cbf539c5 (patch) | |
tree | b123ca9149434ac9a02707ae437f93bda7e28c59 /source4/dsdb/repl | |
parent | 287e35f4cfe8be3663afcde50d9cc66e120c43b6 (diff) | |
download | samba-1a9f5b45f80030c63dbd5616c6de1e99cbf539c5.tar.gz samba-1a9f5b45f80030c63dbd5616c6de1e99cbf539c5.tar.bz2 samba-1a9f5b45f80030c63dbd5616c6de1e99cbf539c5.zip |
s4-drepl: don't call UpdateRefs on a RODC
we use the ADD_REF bit in getncchanges instead
Pair-Programmed-With: Anatoliy Atanasov <anatoliy.atanasov@postpath.com>
Diffstat (limited to 'source4/dsdb/repl')
-rw-r--r-- | source4/dsdb/repl/drepl_out_helpers.c | 16 |
1 files changed, 11 insertions, 5 deletions
diff --git a/source4/dsdb/repl/drepl_out_helpers.c b/source4/dsdb/repl/drepl_out_helpers.c index 1477d6fb54..2a32e5ca04 100644 --- a/source4/dsdb/repl/drepl_out_helpers.c +++ b/source4/dsdb/repl/drepl_out_helpers.c @@ -623,16 +623,22 @@ static void dreplsrv_op_pull_source_apply_changes_trigger(struct tevent_req *req return; } + if (state->op->extended_op != DRSUAPI_EXOP_NONE || + state->op->service->am_rodc) { + /* + we don't do the UpdateRefs for extended ops or if we + are a RODC + */ + tevent_req_done(req); + return; + } + /* now we need to update the repsTo record for this partition on the server. These records are initially established when we join the domain, but they quickly expire. We do it here so we can use the already established DRSUAPI pipe */ - if (state->op->extended_op == DRSUAPI_EXOP_NONE) { - dreplsrv_update_refs_trigger(req); - } else { - tevent_req_done(req); - } + dreplsrv_update_refs_trigger(req); } static void dreplsrv_update_refs_done(struct tevent_req *subreq); |