|
|
|
@ -326,7 +326,9 @@ void print_help(int mode) {
|
|
|
|
|
" to the program location and in standard locations\n"
|
|
|
|
|
" (/usr/local/share/x11vnc/classes, etc). Under -ssl or\n"
|
|
|
|
|
" -stunnel the ssl classes subdirectory is sought.\n"
|
|
|
|
|
#ifndef REL8x
|
|
|
|
|
"-http_ssl As -http, but force lookup for ssl classes subdir.\n"
|
|
|
|
|
#endif
|
|
|
|
|
"\n"
|
|
|
|
|
"-connect string For use with \"vncviewer -listen\" reverse connections.\n"
|
|
|
|
|
" If \"string\" has the form \"host\" or \"host:port\"\n"
|
|
|
|
@ -396,14 +398,16 @@ void print_help(int mode) {
|
|
|
|
|
" a global -viewonly is in effect (all input is discarded\n"
|
|
|
|
|
" in that case).\n"
|
|
|
|
|
"\n"
|
|
|
|
|
"-grabkbd When VNC viewers are connected, attempt to the grab the\n"
|
|
|
|
|
" keyboard so someone sitting at the physical display\n"
|
|
|
|
|
" is not able to enter keystrokes. This method uses\n"
|
|
|
|
|
" XGrabKeyboard(3X11) and so it is not secure and does not\n"
|
|
|
|
|
" rule out the person at the physical display injecting\n"
|
|
|
|
|
" keystrokes by flooding the server with them, grabbing\n"
|
|
|
|
|
" the keyboard himself, etc. Some degree of cooperation\n"
|
|
|
|
|
" from the person at the display is assumed.\n"
|
|
|
|
|
"-grabkbd When VNC viewers are connected, attempt to the grab\n"
|
|
|
|
|
" the keyboard so a (non-malicious) user sitting at the\n"
|
|
|
|
|
" physical display is not able to enter keystrokes.\n"
|
|
|
|
|
" This method uses XGrabKeyboard(3X11) and so it is\n"
|
|
|
|
|
" not secure and does not rule out the person at the\n"
|
|
|
|
|
" physical display injecting keystrokes by flooding the\n"
|
|
|
|
|
" server with them, grabbing the keyboard himself, etc.\n"
|
|
|
|
|
" Some degree of cooperation from the person at the\n"
|
|
|
|
|
" display is assumed. This is intended for remote\n"
|
|
|
|
|
" help-desk or educational usage modes.\n"
|
|
|
|
|
"-grabptr As -grabkbd, but for the mouse pointer using\n"
|
|
|
|
|
" XGrabPointer(3X11). Unfortunately due to the way the X\n"
|
|
|
|
|
" server works, the mouse can still be moved around by the\n"
|
|
|
|
@ -585,6 +589,7 @@ void print_help(int mode) {
|
|
|
|
|
" from inetd and xdm/gdm/kdm). All of the -unixpw options\n"
|
|
|
|
|
" and contraints apply.\n"
|
|
|
|
|
"\n"
|
|
|
|
|
#endif
|
|
|
|
|
"-display WAIT:... A special usage mode for the normal -display option.\n"
|
|
|
|
|
" Useful with -unixpw, but can be used independently\n"
|
|
|
|
|
" of it. If the display string begins with WAIT: then\n"
|
|
|
|
@ -610,6 +615,7 @@ void print_help(int mode) {
|
|
|
|
|
" of the form XAUTHORITY=<file> or raw xauthority data for\n"
|
|
|
|
|
" the display (e.g. \"xauth extract - $DISPLAY\" output).\n"
|
|
|
|
|
"\n"
|
|
|
|
|
#ifndef REL8x
|
|
|
|
|
" In the case of -unixpw (but not -unixpw_nis), then the\n"
|
|
|
|
|
" above command is run as the user who just authenticated\n"
|
|
|
|
|
" via the login and password prompt.\n"
|
|
|
|
@ -650,6 +656,7 @@ void print_help(int mode) {
|
|
|
|
|
" process that will not switch, but it is only encoding\n"
|
|
|
|
|
" and decoding the encrypted stream at that point.\n"
|
|
|
|
|
"\n"
|
|
|
|
|
#endif
|
|
|
|
|
" As a special case, WAIT:cmd=FINDDISPLAY will run a\n"
|
|
|
|
|
" script that works on most Unixes to determine a user's\n"
|
|
|
|
|
" DISPLAY variable and xauthority data (see who(1)).\n"
|
|
|
|
@ -672,6 +679,7 @@ void print_help(int mode) {
|
|
|
|
|
" the VNC client first attaches to since some VNC viewers\n"
|
|
|
|
|
" will not automatically adjust to a new framebuffer size.\n"
|
|
|
|
|
"\n"
|
|
|
|
|
#ifndef REL8x
|
|
|
|
|
"-ssl [pem] Use the openssl library (www.openssl.org) to provide a\n"
|
|
|
|
|
" built-in encrypted SSL tunnel between VNC viewers and\n"
|
|
|
|
|
" x11vnc. This requires libssl support to be compiled\n"
|
|
|
|
@ -2375,7 +2383,7 @@ void print_help(int mode) {
|
|
|
|
|
" discusion below where the device may be queried for\n"
|
|
|
|
|
" (and possibly set) the framebuffer parameters.\n"
|
|
|
|
|
"\n"
|
|
|
|
|
" If the string begins with \"cons\", \"/dev/fb\", or\n"
|
|
|
|
|
" If the string begins with \"console\", \"/dev/fb\", or\n"
|
|
|
|
|
" \"fb\", see the LINUX CONSOLE discussion below where\n"
|
|
|
|
|
" the framebuffer device is opened and keystrokes (and\n"
|
|
|
|
|
" possibly mouse events) are inserted into the console.\n"
|
|
|
|
@ -2519,38 +2527,38 @@ void print_help(int mode) {
|
|
|
|
|
" the following method because it will be faster and more\n"
|
|
|
|
|
" accurate for Linux text console.\n"
|
|
|
|
|
"\n"
|
|
|
|
|
" If the rawfb string begins with \"cons\" the framebuffer\n"
|
|
|
|
|
" device /dev/fb0 is opened (this requires the appropriate\n"
|
|
|
|
|
" kernel modules to be installed) and so is /dev/tty0.\n"
|
|
|
|
|
" The latter is used to inject keystrokes (not all are\n"
|
|
|
|
|
" supported, but the basic ones are). You will need to\n"
|
|
|
|
|
" be root to inject keystrokes. /dev/tty0 refers to the\n"
|
|
|
|
|
" active VT, to indicate one explicitly, use \"cons2\",\n"
|
|
|
|
|
" etc. using the VT number.\n"
|
|
|
|
|
"\n"
|
|
|
|
|
" If the Linux version seems to be 2.6 or later and\n"
|
|
|
|
|
" the \"uinput\" module appears to be present, then\n"
|
|
|
|
|
" the uinput method will be used instead of /dev/ttyN.\n"
|
|
|
|
|
" uinput allows insertion of BOTH keystrokes and mouse\n"
|
|
|
|
|
" input and so it preferred when accessing graphical\n"
|
|
|
|
|
" (e.g. QT-embedded) linux console apps. See -pipeinput\n"
|
|
|
|
|
" UINPUT below for more information on this mode; you\n"
|
|
|
|
|
" will have to use -pipeinput if you want to tweak any\n"
|
|
|
|
|
" UINPUT parameters. You may also want to also use the\n"
|
|
|
|
|
" -nodragging and -cursor none options. Use \"cons0\",\n"
|
|
|
|
|
" etc or -pipeinput CONS to force the /dev/ttyN method.\n"
|
|
|
|
|
" If the rawfb string begins with \"console\" the\n"
|
|
|
|
|
" framebuffer device /dev/fb0 is opened (this requires\n"
|
|
|
|
|
" the appropriate kernel modules to be installed) and so\n"
|
|
|
|
|
" is /dev/tty0. The latter is used to inject keystrokes\n"
|
|
|
|
|
" (not all are supported, but the basic ones are).\n"
|
|
|
|
|
" You will need to be root to inject keystrokes.\n"
|
|
|
|
|
" /dev/tty0 refers to the active VT, to indicate one\n"
|
|
|
|
|
" explicitly, use \"console2\", etc. using the VT number.\n"
|
|
|
|
|
"\n"
|
|
|
|
|
" If the Linux version seems to be 2.6 or later and the\n"
|
|
|
|
|
" \"uinput\" module appears to be present, then the uinput\n"
|
|
|
|
|
" method will be used instead of /dev/ttyN. uinput allows\n"
|
|
|
|
|
" insertion of BOTH keystrokes and mouse input and so it\n"
|
|
|
|
|
" preferred when accessing graphical (e.g. QT-embedded)\n"
|
|
|
|
|
" linux console apps. See -pipeinput UINPUT below for\n"
|
|
|
|
|
" more information on this mode; you will have to use\n"
|
|
|
|
|
" -pipeinput if you want to tweak any UINPUT parameters.\n"
|
|
|
|
|
" You may also want to also use the -nodragging and\n"
|
|
|
|
|
" -cursor none options. Use \"console0\", etc or\n"
|
|
|
|
|
" -pipeinput CONSOLE to force the /dev/ttyN method.\n"
|
|
|
|
|
"\n"
|
|
|
|
|
" Note you can change VT remotely using the chvt(1)\n"
|
|
|
|
|
" command. Sometimes switching out and back corrects\n"
|
|
|
|
|
" the framebuffer state.\n"
|
|
|
|
|
"\n"
|
|
|
|
|
" To skip input injecting entirely use \"consx\".\n"
|
|
|
|
|
" To skip input injecting entirely use \"consolex\".\n"
|
|
|
|
|
"\n"
|
|
|
|
|
" The strings \"console\", or \"/dev/fb0\" can be used\n"
|
|
|
|
|
" instead of \"cons\". The latter can be used to specify\n"
|
|
|
|
|
" a different framebuffer device, e.g. /dev/fb1. As a\n"
|
|
|
|
|
" shortcut the \"/dev/\" can be dropped. If the name is\n"
|
|
|
|
|
" something nonstandard, use \"cons:/dev/foofb\"\n"
|
|
|
|
|
" The string \"/dev/fb0\" (1, etc.) can be used instead\n"
|
|
|
|
|
" of \"console\". This can be used to specify a different\n"
|
|
|
|
|
" framebuffer device, e.g. /dev/fb1. As a shortcut the\n"
|
|
|
|
|
" \"/dev/\" can be dropped. If the name is something\n"
|
|
|
|
|
" nonstandard, use \"console:/dev/foofb\"\n"
|
|
|
|
|
"\n"
|
|
|
|
|
" If you do not want x11vnc to guess the framebuffer's\n"
|
|
|
|
|
" WxHxB and masks automatically (sometimes the kernel\n"
|
|
|
|
@ -2558,12 +2566,12 @@ void print_help(int mode) {
|
|
|
|
|
" @WxHxB at the end of the string.\n"
|
|
|
|
|
"\n"
|
|
|
|
|
" Examples:\n"
|
|
|
|
|
" -rawfb cons (same as -rawfb console)\n"
|
|
|
|
|
" -rawfb console (same as -rawfb console)\n"
|
|
|
|
|
" -rawfb /dev/fb0 (same)\n"
|
|
|
|
|
" -rawfb cons3 (force /dev/tty3)\n"
|
|
|
|
|
" -rawfb consx (no keystrokes or mouse)\n"
|
|
|
|
|
" -rawfb console3 (force /dev/tty3)\n"
|
|
|
|
|
" -rawfb consolex (no keystrokes or mouse)\n"
|
|
|
|
|
" -rawfb console:/dev/nonstd\n"
|
|
|
|
|
" -rawfb cons -pipeinput UINPUT:accel=4.0\n"
|
|
|
|
|
" -rawfb console -pipeinput UINPUT:accel=4.0\n"
|
|
|
|
|
"\n"
|
|
|
|
|
"-freqtab file For use with \"-rawfb video\" for TV tuner devices to\n"
|
|
|
|
|
" specify station frequencies. Instead of using the built\n"
|
|
|
|
@ -2610,9 +2618,10 @@ void print_help(int mode) {
|
|
|
|
|
" format to HI240, RGB565, RGB24, RGB32, RGB555, and\n"
|
|
|
|
|
" GREY respectively. See -rawfb video for details.\n"
|
|
|
|
|
"\n"
|
|
|
|
|
" If cmd is \"CONS\" or \"CONSn\" where n is a Linux\n"
|
|
|
|
|
" console number, then the linux console keystroke\n"
|
|
|
|
|
" insertion to /dev/ttyN (see -rawfb cons) is performed.\n"
|
|
|
|
|
" If cmd is \"CONSOLE\" or \"CONSOLEn\" where n\n"
|
|
|
|
|
" is a Linux console number, then the linux console\n"
|
|
|
|
|
" keystroke insertion to /dev/ttyN (see -rawfb console)\n"
|
|
|
|
|
" is performed.\n"
|
|
|
|
|
"\n"
|
|
|
|
|
" If cmd begins with \"UINPUT\" then the Linux uinput\n"
|
|
|
|
|
" module is used to insert both keystroke and mouse events\n"
|
|
|
|
@ -2667,7 +2676,7 @@ void print_help(int mode) {
|
|
|
|
|
" the thresh=n mode will be enabled. It it currently\n"
|
|
|
|
|
" not working well. If |dx| <= thresh and |dy| < thresh\n"
|
|
|
|
|
" no acceleration is applied. Use \"thresh=+n\" |dx| +\n"
|
|
|
|
|
" |dy| <= thresh to be used instead (X11?)\n"
|
|
|
|
|
" |dy| < thresh to be used instead (X11?)\n"
|
|
|
|
|
"\n"
|
|
|
|
|
" Example:\n"
|
|
|
|
|
" -pipeinput UINPUT:accel=4.0 -cursor none\n"
|
|
|
|
@ -3505,8 +3514,8 @@ void nopassword_warning_msg(int gotloc) {
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
void print_license(void) {
|
|
|
|
|
#if !SKIP_HELP
|
|
|
|
|
char license[] =
|
|
|
|
|
#if !SKIP_HELP
|
|
|
|
|
" GNU GENERAL PUBLIC LICENSE\n"
|
|
|
|
|
" Version 2, June 1991\n"
|
|
|
|
|
"\n"
|
|
|
|
@ -3765,6 +3774,7 @@ void print_license(void) {
|
|
|
|
|
"of preserving the free status of all derivatives of our free software and\n"
|
|
|
|
|
"of promoting the sharing and reuse of software generally.\n"
|
|
|
|
|
"\n"
|
|
|
|
|
#endif
|
|
|
|
|
" NO WARRANTY\n"
|
|
|
|
|
"\n"
|
|
|
|
|
" 11. BECAUSE THE PROGRAM IS LICENSED FREE OF CHARGE, THERE IS NO WARRANTY\n"
|
|
|
|
@ -3787,6 +3797,7 @@ void print_license(void) {
|
|
|
|
|
"PROGRAMS), EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE\n"
|
|
|
|
|
"POSSIBILITY OF SUCH DAMAGES.\n"
|
|
|
|
|
"\n"
|
|
|
|
|
#if !SKIP_HELP
|
|
|
|
|
" END OF TERMS AND CONDITIONS\n"
|
|
|
|
|
"\n"
|
|
|
|
|
" Appendix: How to Apply These Terms to Your New Programs\n"
|
|
|
|
@ -3847,6 +3858,7 @@ void print_license(void) {
|
|
|
|
|
"consider it more useful to permit linking proprietary applications with the\n"
|
|
|
|
|
"library. If this is what you want to do, use the GNU Library General\n"
|
|
|
|
|
"Public License instead of this License.\n"
|
|
|
|
|
#endif
|
|
|
|
|
;
|
|
|
|
|
|
|
|
|
|
char top[] =
|
|
|
|
@ -3860,7 +3872,6 @@ void print_license(void) {
|
|
|
|
|
dup2(1, 2);
|
|
|
|
|
fprintf(stderr, top, lastmod);
|
|
|
|
|
fprintf(stderr, "%s", license);
|
|
|
|
|
#endif
|
|
|
|
|
exit(1);
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|