diff options
author | Stefan Metzmacher <metze@samba.org> | 2010-10-01 09:53:05 +0200 |
---|---|---|
committer | Stefan Metzmacher <metze@samba.org> | 2010-10-02 03:11:38 +0000 |
commit | 76232a40d844dc37720e07ee0f2131526a1a6942 (patch) | |
tree | ee429cf4a857b37fa53c1165a581e19c418f04ad | |
parent | 47b3d88a7da37c45d9d0d0be5f164fa0a8c56328 (diff) | |
download | samba-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.c | 21 |
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; } |