libfreerdp-core: add more error handling.
This commit is contained in:
parent
e21a2688b5
commit
07b159a0c2
@ -58,6 +58,8 @@
|
||||
|
||||
boolean rdp_client_connect(rdpRdp* rdp)
|
||||
{
|
||||
boolean ret;
|
||||
|
||||
rdp->settings->autologon = 1;
|
||||
|
||||
nego_init(rdp->nego);
|
||||
@ -73,12 +75,16 @@ boolean rdp_client_connect(rdpRdp* rdp)
|
||||
return False;
|
||||
}
|
||||
|
||||
ret = False;
|
||||
if (rdp->nego->selected_protocol & PROTOCOL_NLA)
|
||||
transport_connect_nla(rdp->transport);
|
||||
ret = transport_connect_nla(rdp->transport);
|
||||
else if (rdp->nego->selected_protocol & PROTOCOL_TLS)
|
||||
transport_connect_tls(rdp->transport);
|
||||
ret = transport_connect_tls(rdp->transport);
|
||||
else if (rdp->nego->selected_protocol & PROTOCOL_RDP)
|
||||
transport_connect_rdp(rdp->transport);
|
||||
ret = transport_connect_rdp(rdp->transport);
|
||||
|
||||
if (!ret)
|
||||
return False;
|
||||
|
||||
if (mcs_connect(rdp->mcs) != True)
|
||||
{
|
||||
|
@ -438,6 +438,11 @@ static void rdp_process_fastpath_pdu(rdpRdp* rdp, STREAM* s)
|
||||
uint16 length;
|
||||
|
||||
length = fastpath_read_header(rdp->fastpath, s);
|
||||
if (length > stream_get_size(s))
|
||||
{
|
||||
printf("incorrect FastPath PDU header length %d\n", length);
|
||||
return;
|
||||
}
|
||||
|
||||
/* TODO: fipsInformation */
|
||||
|
||||
|
Loading…
x
Reference in New Issue
Block a user