From c7c9e61987dbc46fe962647727bfe52e0fdd8de0 Mon Sep 17 00:00:00 2001 From: Andrew Tridgell Date: Thu, 27 Nov 2003 07:28:46 +0000 Subject: more epmapper and mgmt magic protocol 0x1f is interesting - its ncacn_http ! (This used to be commit e3d40e3da6e15407162c1d0a29d2cbe86842228e) --- source4/librpc/rpc/dcerpc_tcp.c | 10 ++++++++++ 1 file changed, 10 insertions(+) (limited to 'source4/librpc/rpc/dcerpc_tcp.c') diff --git a/source4/librpc/rpc/dcerpc_tcp.c b/source4/librpc/rpc/dcerpc_tcp.c index c50b71c3f0..468cd9465b 100644 --- a/source4/librpc/rpc/dcerpc_tcp.c +++ b/source4/librpc/rpc/dcerpc_tcp.c @@ -48,6 +48,16 @@ static NTSTATUS tcp_raw_recv(struct dcerpc_pipe *p, return NT_STATUS_NET_WRITE_FAULT; } + /* this could be a ncacn_http endpoint - this doesn't work + yet, but it goes close */ + if (strncmp(blob1.data, "ncacn_http/1.0", 14) == 0) { + memmove(blob1.data, blob1.data+14, 2); + ret = read_data(tcp->fd, blob1.data+2, 14); + if (ret != 14) { + return NT_STATUS_NET_WRITE_FAULT; + } + } + /* we might have recieved a partial fragment, in which case we need to pull the rest of it */ frag_length = SVAL(blob1.data, 8); -- cgit