89 |
BOOL lspci_enabled = False; |
BOOL lspci_enabled = False; |
90 |
BOOL g_owncolmap = False; |
BOOL g_owncolmap = False; |
91 |
BOOL g_ownbackstore = True; /* We can't rely on external BackingStore */ |
BOOL g_ownbackstore = True; /* We can't rely on external BackingStore */ |
92 |
|
BOOL g_seamless_rdp = False; |
93 |
uint32 g_embed_wnd; |
uint32 g_embed_wnd; |
94 |
uint32 g_rdp5_performanceflags = |
uint32 g_rdp5_performanceflags = |
95 |
RDP5_NO_WALLPAPER | RDP5_NO_FULLWINDOWDRAG | RDP5_NO_MENUANIMATIONS; |
RDP5_NO_WALLPAPER | RDP5_NO_FULLWINDOWDRAG | RDP5_NO_MENUANIMATIONS; |
147 |
#ifdef HAVE_ICONV |
#ifdef HAVE_ICONV |
148 |
fprintf(stderr, " -L: local codepage\n"); |
fprintf(stderr, " -L: local codepage\n"); |
149 |
#endif |
#endif |
150 |
|
fprintf(stderr, " -A: enable SeamlessRDP mode\n"); |
151 |
fprintf(stderr, " -B: use BackingStore of X-server (if available)\n"); |
fprintf(stderr, " -B: use BackingStore of X-server (if available)\n"); |
152 |
fprintf(stderr, " -e: disable encryption (French TS)\n"); |
fprintf(stderr, " -e: disable encryption (French TS)\n"); |
153 |
fprintf(stderr, " -E: disable encryption from client to server\n"); |
fprintf(stderr, " -E: disable encryption from client to server\n"); |
392 |
int c; |
int c; |
393 |
char *locale = NULL; |
char *locale = NULL; |
394 |
int username_option = 0; |
int username_option = 0; |
395 |
|
BOOL geometry_option = False; |
396 |
int run_count = 0; /* Session Directory support */ |
int run_count = 0; /* Session Directory support */ |
397 |
BOOL continue_connect = True; /* Session Directory support */ |
BOOL continue_connect = True; /* Session Directory support */ |
398 |
|
|
419 |
#endif |
#endif |
420 |
|
|
421 |
while ((c = getopt(argc, argv, |
while ((c = getopt(argc, argv, |
422 |
VNCOPT "u:L:d:s:c:p:n:k:g:fbBeEmzCDKS:T:NX:a:x:Pr:045h?")) != -1) |
VNCOPT "Au:L:d:s:c:p:n:k:g:fbBeEmzCDKS:T:NX:a:x:Pr:045h?")) != -1) |
423 |
{ |
{ |
424 |
switch (c) |
switch (c) |
425 |
{ |
{ |
437 |
break; |
break; |
438 |
#endif |
#endif |
439 |
|
|
440 |
|
case 'A': |
441 |
|
g_seamless_rdp = True; |
442 |
|
break; |
443 |
|
|
444 |
case 'u': |
case 'u': |
445 |
STRNCPY(g_username, optarg, sizeof(g_username)); |
STRNCPY(g_username, optarg, sizeof(g_username)); |
446 |
username_option = 1; |
username_option = 1; |
491 |
break; |
break; |
492 |
|
|
493 |
case 'g': |
case 'g': |
494 |
|
geometry_option = True; |
495 |
g_fullscreen = False; |
g_fullscreen = False; |
496 |
if (!strcmp(optarg, "workarea")) |
if (!strcmp(optarg, "workarea")) |
497 |
{ |
{ |
740 |
STRNCPY(server, argv[optind], sizeof(server)); |
STRNCPY(server, argv[optind], sizeof(server)); |
741 |
parse_server_and_port(server); |
parse_server_and_port(server); |
742 |
|
|
743 |
|
if (g_seamless_rdp) |
744 |
|
{ |
745 |
|
if (g_win_button_size) |
746 |
|
{ |
747 |
|
error("You cannot use -S and -A at the same time\n"); |
748 |
|
return 1; |
749 |
|
} |
750 |
|
g_rdp5_performanceflags &= ~RDP5_NO_FULLWINDOWDRAG; |
751 |
|
if (geometry_option) |
752 |
|
{ |
753 |
|
error("You cannot use -g and -A at the same time\n"); |
754 |
|
return 1; |
755 |
|
} |
756 |
|
if (g_fullscreen) |
757 |
|
{ |
758 |
|
error("You cannot use -f and -A at the same time\n"); |
759 |
|
return 1; |
760 |
|
} |
761 |
|
if (g_hide_decorations) |
762 |
|
{ |
763 |
|
error("You cannot use -D and -A at the same time\n"); |
764 |
|
return 1; |
765 |
|
} |
766 |
|
if (g_embed_wnd) |
767 |
|
{ |
768 |
|
error("You cannot use -X and -A at the same time\n"); |
769 |
|
return 1; |
770 |
|
} |
771 |
|
if (!g_use_rdp5) |
772 |
|
{ |
773 |
|
error("You cannot use -4 and -A at the same time\n"); |
774 |
|
return 1; |
775 |
|
} |
776 |
|
g_width = -100; |
777 |
|
g_grab_keyboard = False; |
778 |
|
} |
779 |
|
|
780 |
if (!username_option) |
if (!username_option) |
781 |
{ |
{ |
782 |
pw = getpwuid(getuid()); |
pw = getpwuid(getuid()); |