GUACAMOLE-600: Add support for setting the FreeRDP TcpAckTimeout setting.
This commit is contained in:
parent
47b9360d46
commit
ca0fc75f9b
@ -54,6 +54,7 @@ const char fips_nla_mode_warning[] = (
|
||||
const char* GUAC_RDP_CLIENT_ARGS[] = {
|
||||
"hostname",
|
||||
"port",
|
||||
"server-timeout",
|
||||
GUAC_RDP_ARGV_DOMAIN,
|
||||
GUAC_RDP_ARGV_USERNAME,
|
||||
GUAC_RDP_ARGV_PASSWORD,
|
||||
@ -159,6 +160,11 @@ enum RDP_ARGS_IDX {
|
||||
*/
|
||||
IDX_PORT,
|
||||
|
||||
/**
|
||||
* The amount of time to wait for the server to respond, in seconds.
|
||||
*/
|
||||
IDX_SERVER_TIMEOUT,
|
||||
|
||||
/**
|
||||
* The domain of the user logging in.
|
||||
*/
|
||||
@ -780,6 +786,11 @@ guac_rdp_settings* guac_rdp_parse_args(guac_user* user,
|
||||
guac_user_parse_args_int(user, GUAC_RDP_CLIENT_ARGS, argv, IDX_PORT,
|
||||
settings->security_mode == GUAC_SECURITY_VMCONNECT ? RDP_DEFAULT_VMCONNECT_PORT : RDP_DEFAULT_PORT);
|
||||
|
||||
/* Look for timeout settings and parse or set defaults. */
|
||||
settings->server_timeout =
|
||||
guac_user_parse_args_int(user, GUAC_RDP_CLIENT_ARGS, argv,
|
||||
IDX_SERVER_TIMEOUT, RDP_DEFAULT_SERVER_TIMEOUT);
|
||||
|
||||
guac_user_log(user, GUAC_LOG_DEBUG,
|
||||
"User resolution is %ix%i at %i DPI",
|
||||
user->info.optimal_width,
|
||||
@ -1424,6 +1435,7 @@ void guac_rdp_push_settings(guac_client* client,
|
||||
/* Connection */
|
||||
rdp_settings->ServerHostname = guac_strdup(guac_settings->hostname);
|
||||
rdp_settings->ServerPort = guac_settings->port;
|
||||
rdp_settings->TcpAckTimeout = guac_settings->server_timeout * 1000;
|
||||
|
||||
/* Session */
|
||||
rdp_settings->ColorDepth = guac_settings->color_depth;
|
||||
|
@ -33,6 +33,11 @@
|
||||
*/
|
||||
#define RDP_CLIENT_HOSTNAME_SIZE 32
|
||||
|
||||
/**
|
||||
* The default server response timeout, in seconds.
|
||||
*/
|
||||
#define RDP_DEFAULT_SERVER_TIMEOUT 10
|
||||
|
||||
/**
|
||||
* The default RDP port.
|
||||
*/
|
||||
@ -156,6 +161,11 @@ typedef struct guac_rdp_settings {
|
||||
*/
|
||||
int port;
|
||||
|
||||
/**
|
||||
* The timeout, in seconds, to wait for the remote host to respond.
|
||||
*/
|
||||
int server_timeout;
|
||||
|
||||
/**
|
||||
* The domain of the user logging in.
|
||||
*/
|
||||
|
Loading…
Reference in New Issue
Block a user