hook up the kill disconnect timeout to the sesman config file

This commit is contained in:
Jay Sorg 2013-08-24 17:57:00 -07:00
parent 1fb8fd9b97
commit 069838f355
2 changed files with 30 additions and 0 deletions

View File

@ -559,6 +559,13 @@ session_start_fork(int width, int height, int bpp, char *username,
env_set_user(username, passwd_file, display);
env_check_password_file(passwd_file, password);
g_snprintf(text, 255, "%d", g_cfg->sess.max_idle_time);
g_setenv("XRDP_SESMAN_MAX_IDLE_TIME", text, 1);
g_snprintf(text, 255, "%d", g_cfg->sess.max_disc_time);
g_setenv("XRDP_SESMAN_MAX_DISC_TIME", text, 1);
g_snprintf(text, 255, "%d", g_cfg->sess.kill_disconnected);
g_setenv("XRDP_SESMAN_KILL_DISCONNECTED", text, 1);
if (type == SESMAN_SESSION_TYPE_XVNC)
{
xserver_params = list_create();

View File

@ -971,6 +971,7 @@ int
rdpup_init(void)
{
char text[256];
char *ptext;
int i;
if (!g_directory_exist("/tmp/.xrdp"))
@ -1055,6 +1056,28 @@ rdpup_init(void)
}
}
ptext = getenv("XRDP_SESMAN_MAX_IDLE_TIME");
if (ptext != 0)
{
}
ptext = getenv("XRDP_SESMAN_MAX_DISC_TIME");
if (ptext != 0)
{
g_disconnect_timeout = atoi(ptext);
}
ptext = getenv("XRDP_SESMAN_KILL_DISCONNECTED");
if (ptext != 0)
{
g_do_kill_disconnected = atoi(ptext);
}
if (g_disconnect_timeout == 0)
{
g_do_kill_disconnected = 0;
}
rdpLog("kill disconencted [%d] timeout [%d]\n", g_do_kill_disconnected,
g_disconnect_timeout);
return 1;
}