Silence some error spamming when rdesktop is in reconnect loop.

git-svn-id: svn://svn.code.sf.net/p/rdesktop/code/rdesktop/trunk@1713 423420c4-83ab-492f-b58f-81f9feb106b5
This commit is contained in:
Henrik Andersson 2013-06-14 12:54:38 +00:00
parent 2374054495
commit cd7a7342cb
2 changed files with 13 additions and 7 deletions

View File

@ -124,6 +124,7 @@ uint32 g_reconnect_logonid = 0;
char g_reconnect_random[16]; char g_reconnect_random[16];
time_t g_reconnect_random_ts; time_t g_reconnect_random_ts;
RD_BOOL g_has_reconnect_random = False; RD_BOOL g_has_reconnect_random = False;
RD_BOOL g_reconnect_loop = False;
uint8 g_client_random[SEC_RANDOM_SIZE]; uint8 g_client_random[SEC_RANDOM_SIZE];
RD_BOOL g_pending_resize = False; RD_BOOL g_pending_resize = False;
@ -497,7 +498,6 @@ main(int argc, char *argv[])
char password[64]; char password[64];
char shell[256]; char shell[256];
char directory[256]; char directory[256];
RD_BOOL reconnect_loop;
RD_BOOL prompt_password, deactivated; RD_BOOL prompt_password, deactivated;
struct passwd *pw; struct passwd *pw;
uint32 flags, ext_disc_reason = 0; uint32 flags, ext_disc_reason = 0;
@ -1084,7 +1084,7 @@ main(int argc, char *argv[])
lspci_init(); lspci_init();
rdpdr_init(); rdpdr_init();
reconnect_loop = False; g_reconnect_loop = False;
while (1) while (1)
{ {
rdesktop_reset_state(); rdesktop_reset_state();
@ -1106,7 +1106,7 @@ main(int argc, char *argv[])
g_network_error = False; g_network_error = False;
if (reconnect_loop == False) if (g_reconnect_loop == False)
return EX_PROTOCOL; return EX_PROTOCOL;
/* check if auto reconnect cookie has timed out */ /* check if auto reconnect cookie has timed out */
@ -1120,6 +1120,9 @@ main(int argc, char *argv[])
continue; continue;
} }
g_network_error = False;
/* By setting encryption to False here, we have an encrypted login /* By setting encryption to False here, we have an encrypted login
packet but unencrypted transfer of other packets */ packet but unencrypted transfer of other packets */
if (!g_packet_encryption) if (!g_packet_encryption)
@ -1137,7 +1140,7 @@ main(int argc, char *argv[])
} }
g_redirect = False; g_redirect = False;
reconnect_loop = False; g_reconnect_loop = False;
rdp_main_loop(&deactivated, &ext_disc_reason); rdp_main_loop(&deactivated, &ext_disc_reason);
DEBUG(("Disconnecting...\n")); DEBUG(("Disconnecting...\n"));
@ -1153,7 +1156,7 @@ main(int argc, char *argv[])
fprintf(stderr, "Disconnected due to network error, retrying to reconnect for %d minutes.\n", fprintf(stderr, "Disconnected due to network error, retrying to reconnect for %d minutes.\n",
RECONNECT_TIMEOUT/60); RECONNECT_TIMEOUT/60);
g_network_error = False; g_network_error = False;
reconnect_loop = True; g_reconnect_loop = True;
continue; continue;
} }
@ -1164,7 +1167,7 @@ main(int argc, char *argv[])
if (g_pending_resize) if (g_pending_resize)
{ {
g_pending_resize = False; g_pending_resize = False;
reconnect_loop = True; g_reconnect_loop = True;
continue; continue;
} }
break; break;

5
tcp.c
View File

@ -65,6 +65,7 @@ static struct stream g_out[STREAM_COUNT];
int g_tcp_port_rdp = TCP_PORT_RDP; int g_tcp_port_rdp = TCP_PORT_RDP;
extern RD_BOOL g_user_quit; extern RD_BOOL g_user_quit;
extern RD_BOOL g_network_error; extern RD_BOOL g_network_error;
extern RD_BOOL g_reconnect_loop;
/* wait till socket is ready to write or timeout */ /* wait till socket is ready to write or timeout */
static RD_BOOL static RD_BOOL
@ -467,7 +468,9 @@ tcp_connect(char *server)
if (connect(g_sock, (struct sockaddr *) &servaddr, sizeof(struct sockaddr)) < 0) if (connect(g_sock, (struct sockaddr *) &servaddr, sizeof(struct sockaddr)) < 0)
{ {
error("connect: %s\n", TCP_STRERROR); if (!g_reconnect_loop)
error("connect: %s\n", TCP_STRERROR);
TCP_CLOSE(g_sock); TCP_CLOSE(g_sock);
return False; return False;
} }