libfreerdp-core: test and fix server redirection (IP-based, not token-based yet)

This commit is contained in:
Marc-André Moreau 2011-09-03 17:59:52 -04:00
parent e4c7662148
commit bca678dd61
3 changed files with 4 additions and 2 deletions

View File

@ -1660,8 +1660,6 @@ boolean rdp_recv_demand_active(rdpRdp* rdp, STREAM* s)
if (pduType != PDU_TYPE_DEMAND_ACTIVE)
return False;
//printf("Demand Active PDU\n");
stream_read_uint32(s, rdp->settings->share_id); /* shareId (4 bytes) */
stream_read_uint16(s, lengthSourceDescriptor); /* lengthSourceDescriptor (2 bytes) */
stream_read_uint16(s, lengthCombinedCapabilities); /* lengthCombinedCapabilities (2 bytes) */

View File

@ -118,8 +118,10 @@ boolean rdp_client_redirect(rdpRdp* rdp)
mcs_free(rdp->mcs);
nego_free(rdp->nego);
license_free(rdp->license);
transport_free(rdp->transport);
rdp->transport = transport_new(settings);
rdp->license = license_new(rdp);
rdp->nego = nego_new(rdp->transport);
rdp->mcs = mcs_new(rdp->transport);

View File

@ -405,6 +405,8 @@ boolean rdp_recv_out_of_sequence_pdu(rdpRdp* rdp, STREAM* s)
uint16 length;
uint16 channelId;
//freerdp_hexdump(s->p, stream_get_left(s));
rdp_read_share_control_header(s, &length, &type, &channelId);
if (type == PDU_TYPE_DATA)