summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorStefan Metzmacher <metze@samba.org>2010-10-01 09:53:05 +0200
committerStefan Metzmacher <metze@samba.org>2010-10-02 03:11:38 +0000
commit76232a40d844dc37720e07ee0f2131526a1a6942 (patch)
treeee429cf4a857b37fa53c1165a581e19c418f04ad
parent47b3d88a7da37c45d9d0d0be5f164fa0a8c56328 (diff)
downloadsamba-76232a40d844dc37720e07ee0f2131526a1a6942.tar.gz
samba-76232a40d844dc37720e07ee0f2131526a1a6942.tar.bz2
samba-76232a40d844dc37720e07ee0f2131526a1a6942.zip
s4:rpc_server/netlogon: don't use dcerpc_binding_handle_call_send/recv() directly
metze Autobuild-User: Stefan Metzmacher <metze@samba.org> Autobuild-Date: Sat Oct 2 03:11:38 UTC 2010 on sn-devel-104
-rw-r--r--source4/rpc_server/netlogon/dcerpc_netlogon.c21
1 files changed, 9 insertions, 12 deletions
diff --git a/source4/rpc_server/netlogon/dcerpc_netlogon.c b/source4/rpc_server/netlogon/dcerpc_netlogon.c
index dee4dc4a49..6d485215bf 100644
--- a/source4/rpc_server/netlogon/dcerpc_netlogon.c
+++ b/source4/rpc_server/netlogon/dcerpc_netlogon.c
@@ -2279,15 +2279,15 @@ struct netr_dnsupdate_RODC_state {
/*
called when the forwarded RODC dns update request is finished
*/
-static void netr_dnsupdate_RODC_callback(struct tevent_req *req)
+static void netr_dnsupdate_RODC_callback(struct tevent_req *subreq)
{
struct netr_dnsupdate_RODC_state *st =
- tevent_req_callback_data(req,
+ tevent_req_callback_data(subreq,
struct netr_dnsupdate_RODC_state);
NTSTATUS status;
- status = dcerpc_binding_handle_call_recv(req);
- talloc_free(req);
+ status = dcerpc_dnsupdate_RODC_r_recv(subreq, st->dce_call);
+ TALLOC_FREE(subreq);
if (!NT_STATUS_IS_OK(status)) {
DEBUG(0,(__location__ ": IRPC callback failed %s\n", nt_errstr(status)));
st->dce_call->fault_code = DCERPC_FAULT_CANT_PERFORM;
@@ -2312,7 +2312,7 @@ static NTSTATUS dcesrv_netr_DsrUpdateReadOnlyServerDnsRecords(struct dcesrv_call
NTSTATUS nt_status;
struct dcerpc_binding_handle *binding_handle;
struct netr_dnsupdate_RODC_state *st;
- struct tevent_req *req;
+ struct tevent_req *subreq;
nt_status = dcesrv_netr_creds_server_step_check(dce_call,
mem_ctx,
@@ -2349,17 +2349,14 @@ static NTSTATUS dcesrv_netr_DsrUpdateReadOnlyServerDnsRecords(struct dcesrv_call
}
/* forward the call */
- req = dcerpc_binding_handle_call_send(st, dce_call->event_ctx,
- binding_handle,
- NULL, &ndr_table_irpc,
- NDR_DNSUPDATE_RODC,
- st, st->r2);
- NT_STATUS_HAVE_NO_MEMORY(req);
+ subreq = dcerpc_dnsupdate_RODC_r_send(st, dce_call->event_ctx,
+ binding_handle, st->r2);
+ NT_STATUS_HAVE_NO_MEMORY(subreq);
dce_call->state_flags |= DCESRV_CALL_STATE_FLAG_ASYNC;
/* setup the callback */
- tevent_req_set_callback(req, netr_dnsupdate_RODC_callback, st);
+ tevent_req_set_callback(subreq, netr_dnsupdate_RODC_callback, st);
return NT_STATUS_OK;
}