x11vnc: wording changes; remove "-rawfb cons" in favor of "console"

pull/1/head
runge 19 years ago
parent 0abd329d6a
commit d7d55ec8ad

File diff suppressed because it is too large Load Diff

@ -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);
}

@ -2486,7 +2486,7 @@ static void pipe_keyboard(rfbBool down, rfbKeySym keysym, rfbClientPtr client) {
if (pipeinput_int == PIPEINPUT_VID) {
v4l_key_command(down, keysym, client);
} else if (pipeinput_int == PIPEINPUT_CONS) {
} else if (pipeinput_int == PIPEINPUT_CONSOLE) {
console_key_command(down, keysym, client);
} else if (pipeinput_int == PIPEINPUT_UINPUT) {
uinput_key_command(down, keysym, client);

@ -26,15 +26,15 @@ char *console_guess(char *str, int *fd) {
if (strstr(in, "/dev/fb") == in) {
free(in);
in = (char *) malloc(strlen("cons:") + strlen(str) + 1);
sprintf(in, "cons:%s", str);
in = (char *) malloc(strlen("console:") + strlen(str) + 1);
sprintf(in, "console:%s", str);
} else if (strstr(in, "fb") == in) {
free(in);
in = (char *) malloc(strlen("cons:/dev/") + strlen(str) + 1);
sprintf(in, "cons:/dev/%s", str);
in = (char *) malloc(strlen("console:/dev/") + strlen(str) + 1);
sprintf(in, "console:/dev/%s", str);
}
if (strstr(in, "cons") != in) {
if (strstr(in, "console") != in) {
rfbLog("console_guess: unrecognized console/fb format: %s\n", str);
free(in);
return NULL;
@ -77,19 +77,16 @@ char *console_guess(char *str, int *fd) {
have_uinput = check_uinput();
}
if (!strcmp(in, "consx") || !strcmp(in, "consolex")) {
if (!strcmp(in, "consolex")) {
do_input = 0;
} else if (!strcmp(in, "cons") || !strcmp(in, "console")) {
} else if (!strcmp(in, "console")) {
/* current active VT: */
if (! have_uinput) {
tty = 0;
}
} else {
int n;
if (sscanf(in, "cons%d", &n) == 1) {
tty = n;
have_uinput = 0;
} else if (sscanf(in, "console%d", &n) != 1) {
if (sscanf(in, "console%d", &n) != 1) {
tty = n;
have_uinput = 0;
}
@ -98,7 +95,7 @@ char *console_guess(char *str, int *fd) {
if (do_input) {
if (tty >=0 && tty < 64) {
pipeinput_str = (char *) malloc(10);
sprintf(pipeinput_str, "CONS%d", tty);
sprintf(pipeinput_str, "CONSOLE%d", tty);
rfbLog("console_guess: file pipeinput %s\n",
pipeinput_str);
initialize_pipeinput();

@ -37,7 +37,7 @@
#define PIPEINPUT_NONE 0x0
#define PIPEINPUT_VID 0x1
#define PIPEINPUT_CONS 0x2
#define PIPEINPUT_CONSOLE 0x2
#define PIPEINPUT_UINPUT 0x3
#define MAX_BUTTONS 5

@ -521,7 +521,7 @@ static void pipe_pointer(int mask, int x, int y, rfbClientPtr client) {
if (pipeinput_int == PIPEINPUT_VID) {
v4l_pointer_command(mask, x, y, client);
} else if (pipeinput_int == PIPEINPUT_CONS) {
} else if (pipeinput_int == PIPEINPUT_CONSOLE) {
console_pointer_command(mask, x, y, client);
} else if (pipeinput_int == PIPEINPUT_UINPUT) {
uinput_pointer_command(mask, x, y, client);
@ -924,10 +924,10 @@ if (0) fprintf(stderr, "initialize_pipeinput: %s -- %s\n", pipeinput_str, p);
if (!strcmp(p, "VID")) {
pipeinput_int = PIPEINPUT_VID;
return;
} else if (strstr(p, "CONS") == p) {
} else if (strstr(p, "CONSOLE") == p) {
int tty = 0, n;
char dev[32];
if (sscanf(p, "CONS%d", &n) == 1) {
if (sscanf(p, "CONSOLE%d", &n) == 1) {
tty = n;
}
sprintf(dev, "/dev/tty%d", tty);
@ -938,7 +938,7 @@ if (0) fprintf(stderr, "initialize_pipeinput: %s -- %s\n", pipeinput_str, p);
free(pipeinput_cons_dev);
}
pipeinput_cons_dev = strdup(dev);
pipeinput_int = PIPEINPUT_CONS;
pipeinput_int = PIPEINPUT_CONSOLE;
} else {
rfbLog("pipeinput: could not open: %s\n", dev);
rfbLogPerror("open");

@ -961,7 +961,7 @@ if (db) fprintf(stderr, "initialize_raw_fb reset\n");
rawfb_dev_video = 1;
} else if (strstr(str, "dev/video")) {
rawfb_dev_video = 1;
} else if (strstr(str, "cons") == str || strstr(str, "fb") == str ||
} else if (strstr(str, "console") == str || strstr(str, "fb") == str ||
strstr(str, "/dev/fb") == str) {
char *str2 = console_guess(str, &raw_fb_fd);
if (str2 == NULL) {

@ -1152,7 +1152,7 @@ int wait_for_client(int *argc, char** argv, int http) {
if (!strcmp(argv[i], "-desktop")) {
dt = 1;
}
if (1) fprintf(stderr, "args %d %s\n", i, argv[i]);
if (db) fprintf(stderr, "args %d %s\n", i, argv[i]);
}
str = strdup(use_dpy);

@ -481,15 +481,18 @@ in that case).
.PP
\fB-grabkbd\fR
.IP
When VNC viewers are connected, attempt to the grab the
keyboard so someone sitting at the physical display
is not able to enter keystrokes. This method uses
When VNC viewers are connected, attempt to the grab
the keyboard so a (non-malicious) user sitting at the
physical display is not able to enter keystrokes.
This method uses
.IR XGrabKeyboard (3X11)
and so it is not secure and does not
rule out the person at the physical display injecting
keystrokes by flooding the server with them, grabbing
the keyboard himself, etc. Some degree of cooperation
from the person at the display is assumed.
and so it is
not secure and does not rule out the person at the
physical display injecting keystrokes by flooding the
server with them, grabbing the keyboard himself, etc.
Some degree of cooperation from the person at the
display is assumed. This is intended for remote
help-desk or educational usage modes.
.PP
\fB-grabptr\fR
.IP
@ -2827,7 +2830,7 @@ If the string begins with "video", see the VIDEO4LINUX
discusion below where the device may be queried for
(and possibly set) the framebuffer parameters.
.IP
If the string begins with "cons", "/dev/fb", or
If the string begins with "console", "/dev/fb", or
"fb", see the LINUX CONSOLE discussion below where
the framebuffer device is opened and keystrokes (and
possibly mouse events) are inserted into the console.
@ -2982,39 +2985,39 @@ is on your system you may want to use that instead of
the following method because it will be faster and more
accurate for Linux text console.
.IP
If the rawfb string begins with "cons" the framebuffer
device /dev/fb0 is opened (this requires the appropriate
kernel modules to be installed) and so is /dev/tty0.
The latter is used to inject keystrokes (not all are
supported, but the basic ones are). You will need to
be root to inject keystrokes. /dev/tty0 refers to the
active VT, to indicate one explicitly, use "cons2",
etc. using the VT number.
.IP
If the Linux version seems to be 2.6 or later and
the "uinput" module appears to be present, then
the uinput method will be used instead of /dev/ttyN.
uinput allows insertion of BOTH keystrokes and mouse
input and so it preferred when accessing graphical
(e.g. QT-embedded) linux console apps. See \fB-pipeinput\fR
UINPUT below for more information on this mode; you
will have to use \fB-pipeinput\fR if you want to tweak any
UINPUT parameters. You may also want to also use the
\fB-nodragging\fR and \fB-cursor\fR none options. Use "cons0",
etc or \fB-pipeinput\fR CONS to force the /dev/ttyN method.
If the rawfb string begins with "console" the
framebuffer device /dev/fb0 is opened (this requires
the appropriate kernel modules to be installed) and so
is /dev/tty0. The latter is used to inject keystrokes
(not all are supported, but the basic ones are).
You will need to be root to inject keystrokes.
/dev/tty0 refers to the active VT, to indicate one
explicitly, use "console2", etc. using the VT number.
.IP
If the Linux version seems to be 2.6 or later and the
"uinput" module appears to be present, then the uinput
method will be used instead of /dev/ttyN. uinput allows
insertion of BOTH keystrokes and mouse input and so it
preferred when accessing graphical (e.g. QT-embedded)
linux console apps. See \fB-pipeinput\fR UINPUT below for
more information on this mode; you will have to use
\fB-pipeinput\fR if you want to tweak any UINPUT parameters.
You may also want to also use the \fB-nodragging\fR and
\fB-cursor\fR none options. Use "console0", etc or
\fB-pipeinput\fR CONSOLE to force the /dev/ttyN method.
.IP
Note you can change VT remotely using the
.IR chvt (1)
command. Sometimes switching out and back corrects
the framebuffer state.
.IP
To skip input injecting entirely use "consx".
To skip input injecting entirely use "consolex".
.IP
The strings "console", or "/dev/fb0" can be used
instead of "cons". The latter can be used to specify
a different framebuffer device, e.g. /dev/fb1. As a
shortcut the "/dev/" can be dropped. If the name is
something nonstandard, use "cons:/dev/foofb"
The string "/dev/fb0" (1, etc.) can be used instead
of "console". This can be used to specify a different
framebuffer device, e.g. /dev/fb1. As a shortcut the
"/dev/" can be dropped. If the name is something
nonstandard, use "console:/dev/foofb"
.IP
If you do not want x11vnc to guess the framebuffer's
WxHxB and masks automatically (sometimes the kernel
@ -3022,12 +3025,12 @@ given inaccurate information), specify them with a
@WxHxB at the end of the string.
.IP
Examples:
\fB-rawfb\fR cons (same as \fB-rawfb\fR console)
\fB-rawfb\fR console (same as \fB-rawfb\fR console)
\fB-rawfb\fR /dev/fb0 (same)
\fB-rawfb\fR cons3 (force /dev/tty3)
\fB-rawfb\fR consx (no keystrokes or mouse)
\fB-rawfb\fR console3 (force /dev/tty3)
\fB-rawfb\fR consolex (no keystrokes or mouse)
\fB-rawfb\fR console:/dev/nonstd
\fB-rawfb\fR cons \fB-pipeinput\fR UINPUT:accel=4.0
\fB-rawfb\fR console \fB-pipeinput\fR UINPUT:accel=4.0
.PP
\fB-freqtab\fR \fIfile\fR
.IP
@ -3078,9 +3081,10 @@ F1, F2, ..., F6 will switch the video capture pixel
format to HI240, RGB565, RGB24, RGB32, RGB555, and
GREY respectively. See \fB-rawfb\fR video for details.
.IP
If cmd is "CONS" or "CONSn" where n is a Linux
console number, then the linux console keystroke
insertion to /dev/ttyN (see \fB-rawfb\fR cons) is performed.
If cmd is "CONSOLE" or "CONSOLEn" where n
is a Linux console number, then the linux console
keystroke insertion to /dev/ttyN (see \fB-rawfb\fR console)
is performed.
.IP
If cmd begins with "UINPUT" then the Linux uinput
module is used to insert both keystroke and mouse events
@ -3137,7 +3141,7 @@ If you set the env. var X11VNC_UINPUT_THRESHOLDS then
the thresh=n mode will be enabled. It it currently
not working well. If |dx| <= thresh and |dy| < thresh
no acceleration is applied. Use "thresh=+n" |dx| +
|dy| <= thresh to be used instead (X11?)
|dy| < thresh to be used instead (X11?)
.IP
Example:
\fB-pipeinput\fR UINPUT:accel=4.0 \fB-cursor\fR none

Loading…
Cancel
Save