From 96f515657ac4cd762247e1d717d76419e75ac5d4 Mon Sep 17 00:00:00 2001 From: Stefan Metzmacher Date: Sat, 12 Mar 2011 02:15:38 +0100 Subject: [PATCH] remote proxy params --- source4/rpc_server/remote/dcesrv_remote.c | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) diff --git a/source4/rpc_server/remote/dcesrv_remote.c b/source4/rpc_server/remote/dcesrv_remote.c index d34643a68db3..b0204edc9e39 100644 --- a/source4/rpc_server/remote/dcesrv_remote.c +++ b/source4/rpc_server/remote/dcesrv_remote.c @@ -291,6 +291,7 @@ static void remote_op_dispatch_done(struct tevent_req *subreq); struct dcesrv_remote_call { struct dcesrv_call_state *dce_call; struct dcesrv_remote_private *priv; + struct dcerpc_binding_handle_call_params params; }; static NTSTATUS remote_op_dispatch(struct dcesrv_call_state *dce_call, TALLOC_CTX *mem_ctx, void *r) @@ -319,6 +320,12 @@ static NTSTATUS remote_op_dispatch(struct dcesrv_call_state *dce_call, TALLOC_CT } rcall->dce_call = dce_call; rcall->priv = priv; + rcall->params.r_mem = mem_ctx; + rcall->params.r_ptr = r; + rcall->params.in.num_pipes = 0; + rcall->params.in.pipes = NULL; + rcall->params.out.num_pipes = 0; + rcall->params.out.pipes = NULL; if (priv->c_pipe->conn->flags & DCERPC_DEBUG_PRINT_IN) { ndr_print_function_debug(call->ndr_print, name, NDR_IN | NDR_SET_VALUES, r); @@ -330,7 +337,7 @@ static NTSTATUS remote_op_dispatch(struct dcesrv_call_state *dce_call, TALLOC_CT subreq = dcerpc_binding_handle_call_send(rcall, dce_call->event_ctx, priv->c_pipe->binding_handle, NULL, table, - opnum, mem_ctx, r); + opnum, &rcall->params); if (subreq == NULL) { DEBUG(0,("dcesrv_remote: call[%s] dcerpc_binding_handle_call_send() failed!\n", name)); return NT_STATUS_NO_MEMORY; -- 2.34.1