summaryrefslogtreecommitdiff
path: root/source4/rpc_server/common/forward.c
diff options
context:
space:
mode:
Diffstat (limited to 'source4/rpc_server/common/forward.c')
-rw-r--r--source4/rpc_server/common/forward.c10
1 files changed, 7 insertions, 3 deletions
diff --git a/source4/rpc_server/common/forward.c b/source4/rpc_server/common/forward.c
index 51e7507d18..c983ac361e 100644
--- a/source4/rpc_server/common/forward.c
+++ b/source4/rpc_server/common/forward.c
@@ -57,13 +57,14 @@ static void dcesrv_irpc_forward_callback(struct tevent_req *subreq)
-/*
- forward a RPC call using IRPC to another task
+/**
+ * Forward a RPC call using IRPC to another task
*/
void dcesrv_irpc_forward_rpc_call(struct dcesrv_call_state *dce_call, TALLOC_CTX *mem_ctx,
void *r, uint32_t callid,
const struct ndr_interface_table *ndr_table,
- const char *dest_task, const char *opname)
+ const char *dest_task, const char *opname,
+ uint32_t timeout)
{
struct dcesrv_forward_state *st;
struct dcerpc_binding_handle *binding_handle;
@@ -96,6 +97,9 @@ void dcesrv_irpc_forward_rpc_call(struct dcesrv_call_state *dce_call, TALLOC_CTX
return;
}
+ /* reset timeout for the handle */
+ dcerpc_binding_handle_set_timeout(binding_handle, timeout);
+
/* forward the call */
subreq = dcerpc_binding_handle_call_send(st, dce_call->event_ctx,
binding_handle,