align and use XRDP_SBIN_PATH
This commit is contained in:
parent
673aaa36b1
commit
ef69b94717
@ -111,6 +111,7 @@ x_server_running(int display)
|
|||||||
return x_running;
|
return x_running;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/******************************************************************************/
|
||||||
static void DEFAULT_CC
|
static void DEFAULT_CC
|
||||||
session_start_sessvc(int xpid, int wmpid, long data)
|
session_start_sessvc(int xpid, int wmpid, long data)
|
||||||
{
|
{
|
||||||
@ -118,20 +119,20 @@ session_start_sessvc(int xpid, int wmpid, long data)
|
|||||||
char wmpid_str[25];
|
char wmpid_str[25];
|
||||||
char xpid_str[25];
|
char xpid_str[25];
|
||||||
char exe_path[262];
|
char exe_path[262];
|
||||||
char cur_dir[256];
|
|
||||||
int i;
|
int i;
|
||||||
|
|
||||||
/* new style waiting for clients */
|
/* new style waiting for clients */
|
||||||
g_sprintf(wmpid_str, "%d", wmpid);
|
g_sprintf(wmpid_str, "%d", wmpid);
|
||||||
g_sprintf(xpid_str, "%d", xpid);
|
g_sprintf(xpid_str, "%d", xpid);
|
||||||
log_message(&(g_cfg.log), LOG_LEVEL_INFO, "starting sessvc - xpid=%s - wmpid=%s",xpid_str, wmpid_str);
|
log_message(&(g_cfg.log), LOG_LEVEL_INFO,
|
||||||
|
"starting xrdp-sessvc - xpid=%s - wmpid=%s",
|
||||||
|
xpid_str, wmpid_str);
|
||||||
|
|
||||||
sessvc_params = list_create();
|
sessvc_params = list_create();
|
||||||
sessvc_params->auto_free = 1;
|
sessvc_params->auto_free = 1;
|
||||||
|
|
||||||
/* building parameters */
|
/* building parameters */
|
||||||
g_get_current_dir(cur_dir, 255);
|
g_snprintf(exe_path, 261, "%s/xrdp-sessvc", XRDP_SBIN_PATH);
|
||||||
g_snprintf(exe_path, 261, "%s/%s", cur_dir, "sessvc");
|
|
||||||
|
|
||||||
list_add_item(sessvc_params, (long)g_strdup(exe_path));
|
list_add_item(sessvc_params, (long)g_strdup(exe_path));
|
||||||
list_add_item(sessvc_params, (long)g_strdup(xpid_str));
|
list_add_item(sessvc_params, (long)g_strdup(xpid_str));
|
||||||
@ -142,16 +143,20 @@ session_start_sessvc(int xpid, int wmpid, long data)
|
|||||||
g_execvp(exe_path, ((char**)sessvc_params->items));
|
g_execvp(exe_path, ((char**)sessvc_params->items));
|
||||||
|
|
||||||
/* should not get here */
|
/* should not get here */
|
||||||
log_message(&(g_cfg.log), LOG_LEVEL_ALWAYS, "error starting sessvc - pid %d - xpid=%s - wmpid=%s",
|
log_message(&(g_cfg.log), LOG_LEVEL_ALWAYS,
|
||||||
|
"error starting xrdp-sessvc - pid %d - xpid=%s - wmpid=%s",
|
||||||
g_getpid(), xpid_str, wmpid_str);
|
g_getpid(), xpid_str, wmpid_str);
|
||||||
|
|
||||||
/* logging parameters */
|
/* logging parameters */
|
||||||
/* no problem calling strerror for thread safety: other threads are blocked */
|
/* no problem calling strerror for thread safety: other threads
|
||||||
log_message(&(g_cfg.log), LOG_LEVEL_DEBUG, "errno: %d, description: %s", errno, g_get_strerror());
|
are blocked */
|
||||||
|
log_message(&(g_cfg.log), LOG_LEVEL_DEBUG, "errno: %d, description: %s",
|
||||||
|
errno, g_get_strerror());
|
||||||
log_message(&(g_cfg.log), LOG_LEVEL_DEBUG, "execve parameter list:");
|
log_message(&(g_cfg.log), LOG_LEVEL_DEBUG, "execve parameter list:");
|
||||||
for (i = 0; i < (sessvc_params->count); i++)
|
for (i = 0; i < (sessvc_params->count); i++)
|
||||||
{
|
{
|
||||||
log_message(&(g_cfg.log), LOG_LEVEL_DEBUG, " argv[%d] = %s", i, (char*)list_get_item(sessvc_params, i));
|
log_message(&(g_cfg.log), LOG_LEVEL_DEBUG, " argv[%d] = %s", i,
|
||||||
|
(char*)list_get_item(sessvc_params, i));
|
||||||
}
|
}
|
||||||
list_delete(sessvc_params);
|
list_delete(sessvc_params);
|
||||||
|
|
||||||
@ -177,7 +182,6 @@ session_start(int width, int height, int bpp, char* username, char* password,
|
|||||||
char geometry[32];
|
char geometry[32];
|
||||||
char depth[32];
|
char depth[32];
|
||||||
char screen[32];
|
char screen[32];
|
||||||
char cur_dir[256];
|
|
||||||
char text[256];
|
char text[256];
|
||||||
char passwd_file[256];
|
char passwd_file[256];
|
||||||
char** pp1;
|
char** pp1;
|
||||||
@ -215,7 +219,6 @@ for user %s denied", username);
|
|||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
g_get_current_dir(cur_dir, 255);
|
|
||||||
display = 10;
|
display = 10;
|
||||||
|
|
||||||
/*while (x_server_running(display) && display < 50)*/
|
/*while (x_server_running(display) && display < 50)*/
|
||||||
@ -276,7 +279,7 @@ for user %s denied", username);
|
|||||||
}
|
}
|
||||||
/* if we're here something happened to g_execlp3
|
/* if we're here something happened to g_execlp3
|
||||||
so we try running the default window manager */
|
so we try running the default window manager */
|
||||||
g_sprintf(text, "%s/%s", cur_dir, g_cfg.default_wm);
|
g_sprintf(text, "%s/%s", XRDP_CFG_PATH, g_cfg.default_wm);
|
||||||
g_execlp3(text, g_cfg.default_wm, 0);
|
g_execlp3(text, g_cfg.default_wm, 0);
|
||||||
|
|
||||||
log_message(&(g_cfg.log), LOG_LEVEL_ALWAYS,"error starting default wm for user %s - pid %d",
|
log_message(&(g_cfg.log), LOG_LEVEL_ALWAYS,"error starting default wm for user %s - pid %d",
|
||||||
|
Loading…
Reference in New Issue
Block a user