From 7864f9d69235b4b0ce7f03d613f1b523515c9a07 Mon Sep 17 00:00:00 2001 From: Aiden Luo Date: Thu, 19 Apr 2018 13:57:41 +0800 Subject: [PATCH] sesrun support start other session based on session_code argument --- sesman/tools/sesrun.c | 9 ++++++--- 1 file changed, 6 insertions(+), 3 deletions(-) diff --git a/sesman/tools/sesrun.c b/sesman/tools/sesrun.c index b9bca988..57335dd1 100644 --- a/sesman/tools/sesrun.c +++ b/sesman/tools/sesrun.c @@ -46,6 +46,7 @@ main(int argc, char **argv) int height; int bpp; int display; + int session_code; struct stream *in_s; struct stream *out_s; char *username; @@ -62,15 +63,17 @@ main(int argc, char **argv) { g_printf("xrdp session starter v0.1\n"); g_printf("\nusage:\n"); - g_printf("sesrun \n"); + g_printf("sesrun \n"); + g_printf("session code 0 for Xvnc, 10 for X11RDP, 20 for Xorg\n"); } - else if (argc == 7) + else if (argc == 8) { username = argv[2]; password = argv[3]; width = g_atoi(argv[4]); height = g_atoi(argv[5]); bpp = g_atoi(argv[6]); + session_code = g_atoi(argv[7]); make_stream(in_s); init_stream(in_s, 8192); make_stream(out_s); @@ -83,7 +86,7 @@ main(int argc, char **argv) if (g_tcp_connect(sck, argv[1], g_cfg.listen_port) == 0) { s_push_layer(out_s, channel_hdr, 8); - out_uint16_be(out_s, 0); /* code */ + out_uint16_be(out_s, session_code); /* code */ i = g_strlen(username); out_uint16_be(out_s, i); out_uint8a(out_s, username, i);