diff --git a/rdp.c b/rdp.c index 507975f..29e0eed 100644 --- a/rdp.c +++ b/rdp.c @@ -379,7 +379,7 @@ rdp_send_logon_info(uint32 flags, char *domain, char *user, DEBUG_RDP5(("Sending RDP5-style Logon packet\n")); - if (g_redirect_cookie_len > 0) + if (g_redirect == True && g_redirect_cookie_len > 0) { len_password = g_redirect_cookie_len; len_password -= 2; /* substract 2 bytes which is added below */ @@ -444,7 +444,7 @@ rdp_send_logon_info(uint32 flags, char *domain, char *user, if (0 < len_password) { - if (0 < g_redirect_cookie_len) + if (g_redirect == True && 0 < g_redirect_cookie_len) { out_uint8p(s, g_redirect_cookie, g_redirect_cookie_len); } @@ -514,6 +514,10 @@ rdp_send_logon_info(uint32 flags, char *domain, char *user, } s_mark_end(s); + + /* clear the redirect flag */ + g_redirect = False; + sec_send(s, sec_flags); }