summaryrefslogtreecommitdiff
path: root/source4/dsdb/repl
diff options
context:
space:
mode:
authorAndrew Tridgell <tridge@samba.org>2009-09-15 20:51:10 -0700
committerAndrew Tridgell <tridge@samba.org>2009-09-15 20:51:10 -0700
commit30d13288e5bb506584a0bf012d7b2e579a6a2074 (patch)
tree8216e60486afe8d783712093546955bb8fa88afa /source4/dsdb/repl
parentf80363c90a60a4496309a50d760ca05ac4b59e4f (diff)
downloadsamba-30d13288e5bb506584a0bf012d7b2e579a6a2074.tar.gz
samba-30d13288e5bb506584a0bf012d7b2e579a6a2074.tar.bz2
samba-30d13288e5bb506584a0bf012d7b2e579a6a2074.zip
s4-repl: take advantage of async RPC forwarding
This uses async RPC forwarding for the DsReplicaSync call
Diffstat (limited to 'source4/dsdb/repl')
-rw-r--r--source4/dsdb/repl/drepl_service.c8
1 files changed, 3 insertions, 5 deletions
diff --git a/source4/dsdb/repl/drepl_service.c b/source4/dsdb/repl/drepl_service.c
index cb415b65e6..75ce42b91a 100644
--- a/source4/dsdb/repl/drepl_service.c
+++ b/source4/dsdb/repl/drepl_service.c
@@ -113,18 +113,16 @@ static NTSTATUS drepl_replica_sync(struct irpc_message *msg,
{
struct dreplsrv_service *service = talloc_get_type(msg->private_data,
struct dreplsrv_service);
- WERROR werr;
struct GUID *guid = &r->in.req.req1.naming_context->guid;
- werr = dreplsrv_schedule_partition_pull_by_guid(service, msg, guid);
- if (W_ERROR_IS_OK(werr)) {
+ r->out.result = dreplsrv_schedule_partition_pull_by_guid(service, msg, guid);
+ if (W_ERROR_IS_OK(r->out.result)) {
DEBUG(3,("drepl_replica_sync: forcing sync of partition %s\n",
GUID_string(msg, guid)));
dreplsrv_run_pending_ops(service);
} else {
DEBUG(3,("drepl_replica_sync: failed setup of sync of partition %s - %s\n",
- GUID_string(msg, guid), win_errstr(werr)));
- return NT_STATUS_INTERNAL_ERROR;
+ GUID_string(msg, guid), win_errstr(r->out.result)));
}
return NT_STATUS_OK;
}