From 6a11aba526cd2e5cc87a0ca81b214772cdff5c61 Mon Sep 17 00:00:00 2001 From: Robert Shearman Date: Fri, 2 Jun 2006 20:45:09 +0100 Subject: [PATCH] rpcrt4: Skip over the right-hand-side data for the protocol floor so that we can parse the towers received from native rpcrt4. --- dlls/rpcrt4/rpc_transport.c | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/dlls/rpcrt4/rpc_transport.c b/dlls/rpcrt4/rpc_transport.c index 34634b58282..1a574d28988 100644 --- a/dlls/rpcrt4/rpc_transport.c +++ b/dlls/rpcrt4/rpc_transport.c @@ -864,10 +864,12 @@ RPC_STATUS RpcTransport_ParseTopOfTower(const unsigned char *tower_data, if ((protocol_floor->count_lhs != sizeof(protocol_floor->protid)) || (protocol_floor->count_rhs > tower_size)) return EPT_S_NOT_REGISTERED; + tower_data += protocol_floor->count_rhs; + tower_size -= protocol_floor->count_rhs; floor4 = (twr_empty_floor_t *)tower_data; if ((tower_size < sizeof(*floor4)) || - (floor4->count_lhs != sizeof(protocol_floor->protid))) + (floor4->count_lhs != sizeof(floor4->protid))) return EPT_S_NOT_REGISTERED; for(i = 0; i < MAX_PROTSEQ; i++)