libfreerdp-core: added second workaround for TSG packet

This commit is contained in:
Marc-André Moreau 2012-11-11 21:44:55 -05:00
parent 54243abaec
commit 7c628e5465
2 changed files with 9 additions and 2 deletions

View File

@ -1015,6 +1015,7 @@ int rpc_recv_pdu(rdpRpc* rpc)
printf("Fragmented PDU\n");
#if 0
while (!(fragHeader.pfc_flags & PFC_LAST_FRAG))
{
bytesRead = 0;
@ -1054,6 +1055,7 @@ int rpc_recv_pdu(rdpRpc* rpc)
totalBytesRead += status;
}
}
#endif
}
if (header->ptype == PTYPE_RTS) /* RTS PDU */
@ -1366,7 +1368,7 @@ rdpRpc* rpc_new(rdpTransport* transport)
rpc->ReceiveWindow = 0x00010000;
rpc->VirtualConnection = rpc_client_virtual_connection_new(rpc);
rpc->call_id = 0;
rpc->call_id = 1;
}
return rpc;

View File

@ -1108,7 +1108,12 @@ int tsg_read(rdpTsg* tsg, BYTE* data, UINT32 length)
if (header->frag_length == 64)
{
printf("Ignoring 64-byte length PDU (probably TsProxySetupPipe return code)\n");
printf("Ignoring 64-byte length PDU (probably TsProxySetupReceivePipe return code)\n");
return tsg_read(tsg, data, length);
}
if (header->frag_length == 80)
{
printf("Ignoring 80-byte length PDU (probably TsProxySetupReceivePipe return code)\n");
return tsg_read(tsg, data, length);
}