summaryrefslogtreecommitdiff
path: root/source4/librpc
diff options
context:
space:
mode:
authorStefan Metzmacher <metze@samba.org>2012-08-24 08:27:47 +0200
committerStefan Metzmacher <metze@samba.org>2012-08-25 01:39:41 +0200
commit0bd0ad967d1b5f82cbbd2df8fcb8a54d1ed5db40 (patch)
treef6a1d5bea5c6bee94cd07c4bef3f19660cfb3958 /source4/librpc
parente44b5bdb2cc756620517a7341e1ad81d606e359d (diff)
downloadsamba-0bd0ad967d1b5f82cbbd2df8fcb8a54d1ed5db40.tar.gz
samba-0bd0ad967d1b5f82cbbd2df8fcb8a54d1ed5db40.tar.bz2
samba-0bd0ad967d1b5f82cbbd2df8fcb8a54d1ed5db40.zip
s4:librpc/rpc: also call dcerpc_schedule_io_trigger() after bind and alter_context responses
metze
Diffstat (limited to 'source4/librpc')
-rw-r--r--source4/librpc/rpc/dcerpc.c7
1 files changed, 7 insertions, 0 deletions
diff --git a/source4/librpc/rpc/dcerpc.c b/source4/librpc/rpc/dcerpc.c
index 759397971a..331a6b018e 100644
--- a/source4/librpc/rpc/dcerpc.c
+++ b/source4/librpc/rpc/dcerpc.c
@@ -1395,6 +1395,13 @@ static void dcerpc_request_recv_data(struct dcecli_connection *c,
if (req->recv_handler != NULL) {
dcerpc_req_dequeue(req);
req->state = RPC_REQUEST_DONE;
+
+ /*
+ * We have to look at shipping further requests before calling
+ * the async function, that one might close the pipe
+ */
+ dcerpc_schedule_io_trigger(c);
+
req->recv_handler(req, raw_packet, pkt);
return;
}