From cc899e8d96dee8aadd84c44cdace0fffaf026a8c Mon Sep 17 00:00:00 2001 From: Stefan Metzmacher Date: Sun, 22 Sep 2013 08:31:49 +0200 Subject: s4:rpc_server: don't support functions DCERPC pipes in remoted backend Signed-off-by: Stefan Metzmacher Reviewed-by: Andreas Schneider --- source4/rpc_server/remote/dcesrv_remote.c | 12 ++++++++++++ 1 file changed, 12 insertions(+) (limited to 'source4/rpc_server/remote') diff --git a/source4/rpc_server/remote/dcesrv_remote.c b/source4/rpc_server/remote/dcesrv_remote.c index 2d6be6adee..df4e574c89 100644 --- a/source4/rpc_server/remote/dcesrv_remote.c +++ b/source4/rpc_server/remote/dcesrv_remote.c @@ -161,6 +161,18 @@ static NTSTATUS remote_op_ndr_pull(struct dcesrv_call_state *dce_call, TALLOC_CT return NT_STATUS_NET_WRITE_FAULT; } + /* + * We don't have support for calls with pipes. + */ + if (table->calls[opnum].in_pipes.num_pipes != 0) { + dce_call->fault_code = DCERPC_FAULT_OP_RNG_ERROR; + return NT_STATUS_NET_WRITE_FAULT; + } + if (table->calls[opnum].out_pipes.num_pipes != 0) { + dce_call->fault_code = DCERPC_FAULT_OP_RNG_ERROR; + return NT_STATUS_NET_WRITE_FAULT; + } + *r = talloc_size(mem_ctx, table->calls[opnum].struct_size); if (!*r) { return NT_STATUS_NO_MEMORY; -- cgit