diff options
author | Stefan Metzmacher <metze@samba.org> | 2009-04-07 21:02:55 +0200 |
---|---|---|
committer | Stefan Metzmacher <metze@samba.org> | 2009-04-10 19:38:30 +0200 |
commit | 225a4f7cc2b83bb84ca4022eaf9b0d92d35c3d80 (patch) | |
tree | 719bc252f6efe50a5a1199810e9e59a7cbf8d6f3 /source4/rpc_server | |
parent | f20f5ae8e6b9ca5c90441a3083f6904168388fdf (diff) | |
download | samba-225a4f7cc2b83bb84ca4022eaf9b0d92d35c3d80.tar.gz samba-225a4f7cc2b83bb84ca4022eaf9b0d92d35c3d80.tar.bz2 samba-225a4f7cc2b83bb84ca4022eaf9b0d92d35c3d80.zip |
s4:rpc_server: report available output for all replies
metze
Diffstat (limited to 'source4/rpc_server')
-rw-r--r-- | source4/rpc_server/dcerpc_server.c | 24 |
1 files changed, 24 insertions, 0 deletions
diff --git a/source4/rpc_server/dcerpc_server.c b/source4/rpc_server/dcerpc_server.c index d7bd7601f7..67edb62b4f 100644 --- a/source4/rpc_server/dcerpc_server.c +++ b/source4/rpc_server/dcerpc_server.c @@ -467,6 +467,12 @@ static NTSTATUS dcesrv_fault(struct dcesrv_call_state *call, uint32_t fault_code DLIST_ADD_END(call->replies, rep, struct data_blob_list_item *); dcesrv_call_set_list(call, DCESRV_LIST_CALL_LIST); + if (call->conn->call_list && call->conn->call_list->replies) { + if (call->conn->transport.report_output_data) { + call->conn->transport.report_output_data(call->conn); + } + } + return NT_STATUS_OK; } @@ -506,6 +512,12 @@ static NTSTATUS dcesrv_bind_nak(struct dcesrv_call_state *call, uint32_t reason) DLIST_ADD_END(call->replies, rep, struct data_blob_list_item *); dcesrv_call_set_list(call, DCESRV_LIST_CALL_LIST); + if (call->conn->call_list && call->conn->call_list->replies) { + if (call->conn->transport.report_output_data) { + call->conn->transport.report_output_data(call->conn); + } + } + return NT_STATUS_OK; } @@ -706,6 +718,12 @@ static NTSTATUS dcesrv_bind(struct dcesrv_call_state *call) DLIST_ADD_END(call->replies, rep, struct data_blob_list_item *); dcesrv_call_set_list(call, DCESRV_LIST_CALL_LIST); + if (call->conn->call_list && call->conn->call_list->replies) { + if (call->conn->transport.report_output_data) { + call->conn->transport.report_output_data(call->conn); + } + } + return NT_STATUS_OK; } @@ -877,6 +895,12 @@ static NTSTATUS dcesrv_alter(struct dcesrv_call_state *call) DLIST_ADD_END(call->replies, rep, struct data_blob_list_item *); dcesrv_call_set_list(call, DCESRV_LIST_CALL_LIST); + if (call->conn->call_list && call->conn->call_list->replies) { + if (call->conn->transport.report_output_data) { + call->conn->transport.report_output_data(call->conn); + } + } + return NT_STATUS_OK; } |