Remove process of packets in rdp_connect.

The process of packets in rdp_connect assumes that the
first packets are demand active to set g_rdp_shareid which
is not true. In case when CredSSP+Kerberos is in use an
enhanced redirection PDU packet is sent before the demande
active PDU.

This fixes the problem with rdesktop silently exists in
the case above.



git-svn-id: svn://svn.code.sf.net/p/rdesktop/code/rdesktop/trunk@1794 423420c4-83ab-492f-b58f-81f9feb106b5
This commit is contained in:
Henrik Andersson 2014-04-23 06:11:55 +00:00
parent a8e9328c9f
commit 708c3861f1

13
rdp.c
View File

@ -1728,23 +1728,14 @@ RD_BOOL
rdp_connect(char *server, uint32 flags, char *domain, char *password,
char *command, char *directory, RD_BOOL reconnect)
{
RD_BOOL deactivated = False;
uint32 ext_disc_reason = 0;
if (!sec_connect(server, g_username, domain, password, reconnect))
return False;
rdp_send_logon_info(flags, domain, g_username, password, command, directory);
/* run RDP loop until first licence demand active PDU */
while (!g_rdp_shareid)
{
if (g_network_error)
return False;
if (g_network_error)
return False;
if (!rdp_loop(&deactivated, &ext_disc_reason))
return False;
}
return True;
}