Commit 8d79a63d authored by runge's avatar runge

incorporate new ultravnc_dsm_helper.c.

parent 6de3f0be
2010-04-25 Karl Runge <runge@karlrunge.com>
* x11vnc: incorporate new ultravnc_dsm_helper.c, add pointer_mask
remote control query. Cut openssl default -ping delay.
2010-04-18 Karl Runge <runge@karlrunge.com> 2010-04-18 Karl Runge <runge@karlrunge.com>
* x11vnc/misc: improvements to demo scripts * x11vnc/misc: improvements to demo scripts
* x11vnc: Alias -coe for -connect_or_exit. more accurate * x11vnc: Alias -coe for -connect_or_exit. more accurate
......
...@@ -2,7 +2,7 @@ ...@@ -2,7 +2,7 @@
Copyright (C) 2002-2010 Karl J. Runge <runge@karlrunge.com> Copyright (C) 2002-2010 Karl J. Runge <runge@karlrunge.com>
All rights reserved. All rights reserved.
x11vnc README file Date: Sun Apr 18 17:09:43 EDT 2010 x11vnc README file Date: Fri Apr 23 00:36:17 EDT 2010
The following information is taken from these URLs: The following information is taken from these URLs:
...@@ -11183,6 +11183,8 @@ Enhanced TightVNC Viewer (SSVNC: SSL/SSH VNC viewer) ...@@ -11183,6 +11183,8 @@ Enhanced TightVNC Viewer (SSVNC: SSL/SSH VNC viewer)
(-grab/-graball option). (-grab/-graball option).
* Fix for Popup menu positioning for old window managers (-popupfix * Fix for Popup menu positioning for old window managers (-popupfix
option). option).
* The VNC Viewer ssvncviewer supports IPv6 natively (no helpers
needed.)
The list of 3rd party software bundled in the archive files: The list of 3rd party software bundled in the archive files:
* TightVNC Viewer (windows, unix, macosx) * TightVNC Viewer (windows, unix, macosx)
...@@ -12076,7 +12078,7 @@ x11vnc: a VNC server for real X displays ...@@ -12076,7 +12078,7 @@ x11vnc: a VNC server for real X displays
Here are all of x11vnc command line options: Here are all of x11vnc command line options:
% x11vnc -opts (see below for -help long descriptions) % x11vnc -opts (see below for -help long descriptions)
x11vnc: allow VNC connections to real X11 displays. 0.9.10 lastmod: 2010-04-18 x11vnc: allow VNC connections to real X11 displays. 0.9.10 lastmod: 2010-04-22
x11vnc options: x11vnc options:
-display disp -auth file -N -display disp -auth file -N
...@@ -12206,7 +12208,7 @@ libvncserver-tight-extension options: ...@@ -12206,7 +12208,7 @@ libvncserver-tight-extension options:
% x11vnc -help % x11vnc -help
x11vnc: allow VNC connections to real X11 displays. 0.9.10 lastmod: 2010-04-18 x11vnc: allow VNC connections to real X11 displays. 0.9.10 lastmod: 2010-04-22
(type "x11vnc -opts" to just list the options.) (type "x11vnc -opts" to just list the options.)
...@@ -12299,7 +12301,7 @@ Options: ...@@ -12299,7 +12301,7 @@ Options:
-6 IPv6 listening support. In addition to IPv4, the -6 IPv6 listening support. In addition to IPv4, the
IPv6 address is listened on for incoming connections. IPv6 address is listened on for incoming connections.
The same port as IPv4 is used. The same port number as IPv4 is used.
NOTE: This x11vnc binary was compiled to have the NOTE: This x11vnc binary was compiled to have the
"-6" IPv6 listening mode ENABLED by default (CPPFLAGS "-6" IPv6 listening mode ENABLED by default (CPPFLAGS
...@@ -17258,6 +17260,7 @@ n ...@@ -17258,6 +17260,7 @@ n
pointer_y print XQueryPointer y cursor position. pointer_y print XQueryPointer y cursor position.
pointer_same print XQueryPointer ptr on same screen. pointer_same print XQueryPointer ptr on same screen.
pointer_root print XQueryPointer curr ptr rootwin. pointer_root print XQueryPointer curr ptr rootwin.
pointer_mask print XQueryPointer button and mods mask
mouse_x print x11vnc's idea of cursor position. mouse_x print x11vnc's idea of cursor position.
mouse_y print x11vnc's idea of cursor position. mouse_y print x11vnc's idea of cursor position.
noop do nothing. noop do nothing.
...@@ -17567,9 +17570,11 @@ n ...@@ -17567,9 +17570,11 @@ n
ext_xrecord ext_xkb ext_xshm ext_xinerama ext_overlay ext_xrecord ext_xkb ext_xshm ext_xinerama ext_overlay
ext_xfixes ext_xdamage ext_xrandr rootwin num_buttons ext_xfixes ext_xdamage ext_xrandr rootwin num_buttons
button_mask mouse_x mouse_y grab_state pointer_pos button_mask mouse_x mouse_y grab_state pointer_pos
pointer_x pointer_y pointer_same pointer_root bpp depth pointer_x pointer_y pointer_same pointer_root
indexed_color dpy_x dpy_y wdpy_x wdpy_y off_x off_y pointer_mask bpp depth indexed_color dpy_x dpy_y wdpy_x
cdpy_x cdpy_y coff_x coff_y rfbauth passwd viewpasswd wdpy_y off_x off_y cdpy_x cdpy_y coff_x coff_y rfbauth
passwd viewpasswd
-QD variable Just like -query variable, but returns the default -QD variable Just like -query variable, but returns the default
value for that parameter (no running x11vnc server value for that parameter (no running x11vnc server
is consulted) is consulted)
......
This diff is collapsed.
...@@ -144,7 +144,7 @@ void print_help(int mode) { ...@@ -144,7 +144,7 @@ void print_help(int mode) {
#if X11VNC_IPV6 #if X11VNC_IPV6
"-6 IPv6 listening support. In addition to IPv4, the\n" "-6 IPv6 listening support. In addition to IPv4, the\n"
" IPv6 address is listened on for incoming connections.\n" " IPv6 address is listened on for incoming connections.\n"
" The same port as IPv4 is used.\n" " The same port number as IPv4 is used.\n"
"\n" "\n"
#if X11VNC_LISTEN6 #if X11VNC_LISTEN6
" NOTE: This x11vnc binary was compiled to have the\n" " NOTE: This x11vnc binary was compiled to have the\n"
...@@ -5131,6 +5131,7 @@ void print_help(int mode) { ...@@ -5131,6 +5131,7 @@ void print_help(int mode) {
" pointer_y print XQueryPointer y cursor position.\n" " pointer_y print XQueryPointer y cursor position.\n"
" pointer_same print XQueryPointer ptr on same screen.\n" " pointer_same print XQueryPointer ptr on same screen.\n"
" pointer_root print XQueryPointer curr ptr rootwin.\n" " pointer_root print XQueryPointer curr ptr rootwin.\n"
" pointer_mask print XQueryPointer button and mods mask\n"
" mouse_x print x11vnc's idea of cursor position.\n" " mouse_x print x11vnc's idea of cursor position.\n"
" mouse_y print x11vnc's idea of cursor position.\n" " mouse_y print x11vnc's idea of cursor position.\n"
" noop do nothing.\n" " noop do nothing.\n"
...@@ -5440,9 +5441,11 @@ void print_help(int mode) { ...@@ -5440,9 +5441,11 @@ void print_help(int mode) {
" ext_xrecord ext_xkb ext_xshm ext_xinerama ext_overlay\n" " ext_xrecord ext_xkb ext_xshm ext_xinerama ext_overlay\n"
" ext_xfixes ext_xdamage ext_xrandr rootwin num_buttons\n" " ext_xfixes ext_xdamage ext_xrandr rootwin num_buttons\n"
" button_mask mouse_x mouse_y grab_state pointer_pos\n" " button_mask mouse_x mouse_y grab_state pointer_pos\n"
" pointer_x pointer_y pointer_same pointer_root bpp depth\n" " pointer_x pointer_y pointer_same pointer_root\n"
" indexed_color dpy_x dpy_y wdpy_x wdpy_y off_x off_y\n" " pointer_mask bpp depth indexed_color dpy_x dpy_y wdpy_x\n"
" cdpy_x cdpy_y coff_x coff_y rfbauth passwd viewpasswd\n" " wdpy_y off_x off_y cdpy_x cdpy_y coff_x coff_y rfbauth\n"
" passwd viewpasswd\n"
"\n"
"-QD variable Just like -query variable, but returns the default\n" "-QD variable Just like -query variable, but returns the default\n"
" value for that parameter (no running x11vnc server\n" " value for that parameter (no running x11vnc server\n"
" is consulted)\n" " is consulted)\n"
......
...@@ -6126,10 +6126,10 @@ char *process_remote_cmd(char *cmd, int stringonly) { ...@@ -6126,10 +6126,10 @@ char *process_remote_cmd(char *cmd, int stringonly) {
} }
goto qry; goto qry;
} }
if (!strcmp(p, "pointer_pos") || !strcmp(p, "pointer_x") || !strcmp(p, "pointer_y") || !strcmp(p, "pointer_same") || !strcmp(p, "pointer_root")) { if (!strcmp(p, "pointer_pos") || !strcmp(p, "pointer_x") || !strcmp(p, "pointer_y") || !strcmp(p, "pointer_same") || !strcmp(p, "pointer_root") || !strcmp(p, "pointer_mask")) {
int px = -1, py = -1; int px = -1, py = -1;
int wx, wy; int wx, wy;
unsigned int m; unsigned int m = 0;
Window r, c; Window r, c;
Bool same_screen = True; Bool same_screen = True;
...@@ -6144,6 +6144,8 @@ char *process_remote_cmd(char *cmd, int stringonly) { ...@@ -6144,6 +6144,8 @@ char *process_remote_cmd(char *cmd, int stringonly) {
snprintf(buf, bufn, "aro=%s:%d", p, same_screen); snprintf(buf, bufn, "aro=%s:%d", p, same_screen);
} else if (!strcmp(p, "pointer_root")) { /* skip-cmd-list */ } else if (!strcmp(p, "pointer_root")) { /* skip-cmd-list */
snprintf(buf, bufn, "aro=%s:0x%x", p, (unsigned int) rootwin); snprintf(buf, bufn, "aro=%s:0x%x", p, (unsigned int) rootwin);
} else if (!strcmp(p, "pointer_mask")) { /* skip-cmd-list */
snprintf(buf, bufn, "aro=%s:0x%x", p, m);
} }
if (!dpy) { if (!dpy) {
goto qry; goto qry;
...@@ -6166,6 +6168,8 @@ char *process_remote_cmd(char *cmd, int stringonly) { ...@@ -6166,6 +6168,8 @@ char *process_remote_cmd(char *cmd, int stringonly) {
snprintf(buf, bufn, "aro=%s:%d", p, same_screen); snprintf(buf, bufn, "aro=%s:%d", p, same_screen);
} else if (!strcmp(p, "pointer_root")) { /* skip-cmd-list */ } else if (!strcmp(p, "pointer_root")) { /* skip-cmd-list */
snprintf(buf, bufn, "aro=%s:0x%x", p, (unsigned int) r); snprintf(buf, bufn, "aro=%s:0x%x", p, (unsigned int) r);
} else if (!strcmp(p, "pointer_mask")) { /* skip-cmd-list */
snprintf(buf, bufn, "aro=%s:0x%x", p, m);
} }
if (rc_npieces < 10) { if (rc_npieces < 10) {
rfbLog("remote_cmd: %s: %s\n", p, buf); rfbLog("remote_cmd: %s: %s\n", p, buf);
......
...@@ -3014,11 +3014,12 @@ static void ping_clients(int tile_cnt) { ...@@ -3014,11 +3014,12 @@ static void ping_clients(int tile_cnt) {
if (tile_cnt > 0) { if (tile_cnt > 0) {
last_send = now; last_send = now;
} else if (tile_cnt < 0) { } else if (tile_cnt < 0) {
/* negative tile_cnt is -ping case */
if (now >= last_send - tile_cnt) { if (now >= last_send - tile_cnt) {
mark_rect_as_modified(0, 0, 1, 1, 1); mark_rect_as_modified(0, 0, 1, 1, 1);
last_send = now; last_send = now;
} }
} else if (now - last_send > 2) { } else if (now - last_send > 5) {
/* Send small heartbeat to client */ /* Send small heartbeat to client */
mark_rect_as_modified(0, 0, 1, 1, 1); mark_rect_as_modified(0, 0, 1, 1, 1);
last_send = now; last_send = now;
......
...@@ -2717,6 +2717,19 @@ void openssl_port(int restart) { ...@@ -2717,6 +2717,19 @@ void openssl_port(int restart) {
return; return;
} }
if (ipv6_listen && screen->port <= 0) {
if (got_rfbport) {
screen->port = got_rfbport_val;
} else {
int ap = 5900;
if (auto_port > 0) {
ap = auto_port;
}
screen->port = find_free_port6(ap, ap+200);
}
rfbLog("openssl_port: reset port from 0 => %d\n", screen->port);
}
if (restart) { if (restart) {
port = screen->port; port = screen->port;
} else if (screen->listenSock > -1 && screen->port > 0) { } else if (screen->listenSock > -1 && screen->port > 0) {
...@@ -4279,6 +4292,8 @@ if (db) rfbLog("raw_xfer bad write: %d -> %d | %d/%d errno=%d\n", csock, s_out ...@@ -4279,6 +4292,8 @@ if (db) rfbLog("raw_xfer bad write: %d -> %d | %d/%d errno=%d\n", csock, s_out
#define ENC_HAVE_OPENSSL 0 #define ENC_HAVE_OPENSSL 0
#endif #endif
#define ENC_DISABLE_SHOW_CERT
#include "enc.h" #include "enc.h"
static void symmetric_encryption_xfer(int csock, int s_in, int s_out) { static void symmetric_encryption_xfer(int csock, int s_in, int s_out) {
......
...@@ -2,7 +2,7 @@ ...@@ -2,7 +2,7 @@
.TH X11VNC "1" "April 2010" "x11vnc " "User Commands" .TH X11VNC "1" "April 2010" "x11vnc " "User Commands"
.SH NAME .SH NAME
x11vnc - allow VNC connections to real X11 displays x11vnc - allow VNC connections to real X11 displays
version: 0.9.10, lastmod: 2010-04-18 version: 0.9.10, lastmod: 2010-04-22
.SH SYNOPSIS .SH SYNOPSIS
.B x11vnc .B x11vnc
[OPTION]... [OPTION]...
...@@ -114,7 +114,7 @@ enter the port number. ...@@ -114,7 +114,7 @@ enter the port number.
.IP .IP
IPv6 listening support. In addition to IPv4, the IPv6 listening support. In addition to IPv4, the
IPv6 address is listened on for incoming connections. IPv6 address is listened on for incoming connections.
The same port as IPv4 is used. The same port number as IPv4 is used.
.IP .IP
NOTE: This x11vnc binary was compiled to have the NOTE: This x11vnc binary was compiled to have the
"-6" IPv6 listening mode ENABLED by default (CPPFLAGS "-6" IPv6 listening mode ENABLED by default (CPPFLAGS
...@@ -6004,6 +6004,8 @@ pointer_same print XQueryPointer ptr on same screen. ...@@ -6004,6 +6004,8 @@ pointer_same print XQueryPointer ptr on same screen.
.IP .IP
pointer_root print XQueryPointer curr ptr rootwin. pointer_root print XQueryPointer curr ptr rootwin.
.IP .IP
pointer_mask print XQueryPointer button and mods mask
.IP
mouse_x print x11vnc's idea of cursor position. mouse_x print x11vnc's idea of cursor position.
.IP .IP
mouse_y print x11vnc's idea of cursor position. mouse_y print x11vnc's idea of cursor position.
...@@ -6411,9 +6413,10 @@ pipeinput clients client_count pid ext_xtest ext_xtrap ...@@ -6411,9 +6413,10 @@ pipeinput clients client_count pid ext_xtest ext_xtrap
ext_xrecord ext_xkb ext_xshm ext_xinerama ext_overlay ext_xrecord ext_xkb ext_xshm ext_xinerama ext_overlay
ext_xfixes ext_xdamage ext_xrandr rootwin num_buttons ext_xfixes ext_xdamage ext_xrandr rootwin num_buttons
button_mask mouse_x mouse_y grab_state pointer_pos button_mask mouse_x mouse_y grab_state pointer_pos
pointer_x pointer_y pointer_same pointer_root bpp depth pointer_x pointer_y pointer_same pointer_root
indexed_color dpy_x dpy_y wdpy_x wdpy_y off_x off_y pointer_mask bpp depth indexed_color dpy_x dpy_y wdpy_x
cdpy_x cdpy_y coff_x coff_y rfbauth passwd viewpasswd wdpy_y off_x off_y cdpy_x cdpy_y coff_x coff_y rfbauth
passwd viewpasswd
.PP .PP
\fB-QD\fR \fIvariable\fR \fB-QD\fR \fIvariable\fR
.IP .IP
......
...@@ -47,7 +47,7 @@ int xtrap_base_event_type = 0; ...@@ -47,7 +47,7 @@ int xtrap_base_event_type = 0;
int xdamage_base_event_type = 0; int xdamage_base_event_type = 0;
/* date +'lastmod: %Y-%m-%d' */ /* date +'lastmod: %Y-%m-%d' */
char lastmod[] = "0.9.10 lastmod: 2010-04-18"; char lastmod[] = "0.9.10 lastmod: 2010-04-22";
/* X display info */ /* X display info */
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment