Hello community, here is the log from the commit of package x11vnc for openSUSE:Factory checked in at 2012-06-14 21:11:56 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Comparing /work/SRC/openSUSE:Factory/x11vnc (Old) and /work/SRC/openSUSE:Factory/.x11vnc.new (New) ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "x11vnc", Maintainer is "[email protected]" Changes: -------- --- /work/SRC/openSUSE:Factory/x11vnc/x11vnc.changes 2011-09-23 12:50:54.000000000 +0200 +++ /work/SRC/openSUSE:Factory/.x11vnc.new/x11vnc.changes 2012-06-14 21:12:22.000000000 +0200 @@ -2 +2 @@ -Sun Sep 19 13:57:39 CEST 2010 - [email protected] +Mon Feb 13 10:57:48 UTC 2012 - [email protected] @@ -4,143 +4 @@ -- Update to version 0.9.12: - + One can now specify the maximum number of displays that can be - created in -create mode via the env. var. - X11VNC_CREATE_MAX_DISPLAYS - + The X11VNC_NO_LIMIT_SHM env. var. is added to skip any - automatic shared memory reduction. - + The kdm display manager is now detected when trying not to get - killed by the display manager. - + Documentation improvements. - + Build fixes. -- Changes from version 0.9.11: - + The source tree is synchronized with the most recent - libvncclient (this only affects -reflect mode.) - + The SSL enabled Java VNC Viewer Makefile has been modified so - that the jar files that are built are compatible back to Java - 1.4. - + In -reflect mode cursor position updates are now handled - correctly. - + In -create/-unixpw mode, the env. var. FD_USERPREFS may be set - to a filename in the user's home directory that includes - default username:options values (so the options do not need to - be typed every time at the login prompt.) - + Miscellaneous new features and changes: - - An option -always_inject is provided: Even if there is no - displacement (dx = dy = 0) for a VNC mouse event force the - pointer to the indicated x,y position anyway. - - New java viewer debugging and workaround applet parameters: - debugKeyboard mapF5_to_atsign forbid_Ctrl_Alt - - You can set X11VNC_AVAHI_NAME, X11VNC_AVAHI_HOST, and/or - X11VNC_AVAHI_PORT environment variables to override the - default values. For example: -env X11VNC_AVAHI_NAME=wally - - When opening the X11 display extra XAUTHLOCALHOSTNAME - settings are attempted. -- Changes from version 0.9.10: - + IPv6 is now supported for all usage modes: forward and reverse - connections, SSL and unencrypted, etc. - + The included SSL enabled Java VNC viewer applet now supports - Chained SSL Certificates (x11vnc -ssl always has.) The applet - autodects x11vnc and set GET=1 for faster connecting via HTTPS. - + A demo CGI script 'desktop.cgi' shows how to create an SSL - encrypted, multi-user x11vnc web login desktop service. The - user logs into a secure web site and gets his/her own virtual - desktop and his browser accesses it with the SSL Java VNC - Viewer applet. - + A serverCert Java Viewer applet parameter is provided. Use an - authenticated HTTPS browser connection to set this parameter - (the user could set it locally too.) The onetimekey tool has - -certonly option for this scheme. - + The Xdummy script (use Xorg 'dummy' driver instead of Xvfb) no - longer requires being run as root. - + Miscellaneous new features and changes: - - The amount of time to wait for HTTPS applet downloads to - finish can be set in env. var. - X11VNC_HTTPS_DOWNLOAD_WAIT_TIME. - - The example scripts connect_switch, ultravnc_repeater.pl, - inet6to4 have settings to let them run reliably for long - times as daemons. They also support IPv6. - - Use STUNNEL_LISTEN in -stunnel mode to have it listen on a - particular interface. Also STUNNEL_PROG. - - New remote control query options: pointer_x, pointer_y, - pointer_same, pointer_root, and pointer_mask. A demo script - using them misc/panner.pl is provided. - - The X11VNC_DISABLE_SSL_CLIENT_MODE env. var. can be set to - disable SSL client role in reverse connections. This means - the VNC viewer side must be in SSL client role. UltraVNC - repeater operation can benefit from this. - - The X property X11VNC_TRAP_XRANDR can be set on a desktop to - force x11vnc to use the -xrandr screen size change trapping - code. - - The TightVNC sercurity type (TightVNC features enabler) now - works for RFB version 3.8. - - RECORD scroll detection is now working with the new gtk/gdk - scroll mechanism. Set X11VNC_SCROLL_MUST_EQUAL to disable. - - Various minor improvements, see - http://sourceforge.net/projects/libvncserver/files/x11vnc/0.9.10/release-notes-0.9.10.txt/download -- Rebase x11vnc-examples.diff, and complete it. -- Remove installed headers: since we don't ship a library, they - wouldn't be usable. -- Use %{_bindir}, %{_datadir}. - -------------------------------------------------------------------- -Wed Mar 10 00:27:01 CET 2010 - [email protected] - -- update to x11vnc-0.9.9 to fix build with current xorg-x11 - -------------------------------------------------------------------- -Fri Jul 31 14:51:04 CEST 2009 - [email protected] - -- Update to x11vnc-0.9.8: - * various thread safe corrections including sendMutex guard, - zrle thread safety vie per-client buffers, thread safety - via TLS (tight) - * prepare tight security type for RFB 3.8 - -------------------------------------------------------------------- -Tue Apr 21 16:53:26 CEST 2009 - [email protected] - -- Fix and package x11vnc.desktop. -- Update to 0.9.7: - * client_examples/SDLvncviewer: mouse wheel, clipboard support, - Alt release, resizability - * Better ZYWRLE support - * improve timeouts, port fallback, and connection time of the - SSL Java viewers - -------------------------------------------------------------------- -Tue Sep 23 13:30:21 CEST 2008 - [email protected] - -- Move make check into %check section -- Move x11vnc scripts into %{_docdir}/x11vnc/examples -- Update to 0.9.4: - * Reverse VNC connections (-connect/-connect_or_Exit) work now in - -find and -create X session modes. - * Reverse VNC sessions can now use a Web proxy, SOCKS proxy, - UltraVNC repeater proxy, SSH connection or even CGI to make the - outgoing connection by using -proxy. - * Support for ZYWRLE encoding (RealVNC ZRLE extended for motion - video and photo regions by using wavelets). - * Support for indexed color maps with depth != 8. - * Java viewer code now included in release. - * Various little improvements and features. - -------------------------------------------------------------------- -Fri Sep 12 17:33:04 CEST 2008 - [email protected] - -- Avoid compiler warning about missing return in non-void function. - -------------------------------------------------------------------- -Thu Jun 26 13:12:16 CEST 2008 - [email protected] - -- Update to 0.9.3: - * Minor bugfixes (mostly in Java SSL viewer). - -------------------------------------------------------------------- -Wed Aug 8 00:01:01 CEST 2007 - [email protected] - -- Updated x11vnc_ssh script: - * Probe for free port on server. - * Remove hextile from list of preferred encodings. -- Build with SSL support for encrypting VNC auth + traffic. - -------------------------------------------------------------------- -Tue Jul 24 01:09:49 CEST 2007 - [email protected] +- patch license to follow spdx.org standard @@ -148 +6,206 @@ -- added unzip to buildreq +------------------------------------------------------------------- +Tue Oct 18 20:22:02 UTC 2011 - [email protected] + +- merge patches from openSUSE:Factory/x11vnc + +------------------------------------------------------------------- +Sat Oct 15 08:57:59 UTC 2011 - [email protected] + +- dropped stack-overflow, merged upstream + +- update to 0.9.13: + * improved support for non-X11 touchscreen devices, such as the Qtmoko Neo + Freerunner + * interaction with the TSLIB touchscreen library is supported + * the non-X11 input injection methods on Linux are extended to potentially + handle more devices + * Unix sockets and raw stdio (i.e. non-TCP/socket) connections are enabled + * the SSL enabled Java VNC Viewer now handles mouse wheel events + +------------------------------------------------------------------- +Sat Sep 11 16:53:28 UTC 2010 - [email protected] + +- update to 0.9.12: + * the kdm display manager is now detected when trying not to get killed by + the display manager + * one can now specify the maximum number of displays that can be created in + -create mode via X11VNC_CREATE_MAX_DISPLAYS + +------------------------------------------------------------------- +Mon Aug 9 09:00:23 UTC 2010 - [email protected] + +- update to 0.9.11: + * the SSL enabled Java VNC Viewer Makefile has been modified so that the jar + files that are built are compatible back to Java 1.4 + * in -create/-unixpw mode, the environment variable FD_USERPREFS may be set + to a filename in the user's home directory that includes default + username:options values (so the options do not need to be typed every time + at the login prompt) + * the source tree is synchronized with the most recent libvncclient + +------------------------------------------------------------------- +Mon May 3 21:55:06 UTC 2010 - [email protected] + +- update to 0.9.10: + * IPv6 is now supported for all usage modes + * a demo CGI script, "desktop.cgi", shows how to create an SSL- + encrypted, multi-user x11vnc Web login desktop service + * the included SSL-enabled Java VNC viewer applet supports ++++ 165 more lines (skipped) ++++ between /work/SRC/openSUSE:Factory/x11vnc/x11vnc.changes ++++ and /work/SRC/openSUSE:Factory/.x11vnc.new/x11vnc.changes Old: ---- stack-overflow x11vnc-0.9.12.tar.bz2 New: ---- x11vnc-0.9.13.tar.bz2 x11vnc-lame-libm.diff x11vnc-lib64.diff x11vnc-rpmlintrc x11vnc-tkx11vnc.desktop x11vnc.png ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Other differences: ------------------ ++++++ x11vnc.spec ++++++ --- /var/tmp/diff_new_pack.OYLLx7/_old 2012-06-14 21:12:25.000000000 +0200 +++ /var/tmp/diff_new_pack.OYLLx7/_new 2012-06-14 21:12:25.000000000 +0200 @@ -1,7 +1,8 @@ +# vim: set ts=4 sw=4 et: # -# spec file for package x11vnc (Version 0.9.12) +# spec file for package x11vnc # -# Copyright (c) 2010 SUSE LINUX Products GmbH, Nuernberg, Germany. +# Copyright (c) 2012 SUSE LINUX Products GmbH, Nuernberg, Germany. # # All modifications and additions to the file contributed by third parties # remain the property of their copyright owners, unless otherwise agreed @@ -15,79 +16,141 @@ # Please submit bugfixes or comments via http://bugs.opensuse.org/ # -# norootforbuild - Name: x11vnc -BuildRequires: libjpeg-devel openssl-devel unzip xorg-x11-devel -License: GPLv2+ -Group: Development/Libraries/X11 -Version: 0.9.12 -Release: 1 -Summary: Export running X11 session via VNC -Url: http://libvncserver.sf.net/ -Source0: %{name}-%{version}.tar.bz2 -Source1: x11vnc_ssh -Patch1: stack-check -Patch2: stack-overflow -Patch4: x11vnc-thread-auth.diff +Version: 0.9.13 +Release: 0 +Summary: VNC Server for Real X Displays +License: GPL-2.0+ +Group: System/X11/Utilities +# http://prdownloads.sourceforge.net/libvncserver/x11vnc-%{version}.tar.gz +Source: x11vnc-%{version}.tar.bz2 +Source1: %{name}-tkx11vnc.desktop +Source2: x11vnc_ssh +Source3: x11vnc.png +Source99: %{name}-rpmlintrc +Patch1: %{name}-lib64.diff +Patch2: %{name}-lame-libm.diff +Patch3: stack-check +Patch5: x11vnc-thread-auth.diff Patch6: x11vnc-examples.diff Patch7: x11vnc.desktop.generics +Url: http://www.karlrunge.com/x11vnc BuildRoot: %{_tmppath}/%{name}-%{version}-build +BuildRequires: autoconf +BuildRequires: automake +BuildRequires: avahi-devel >= 0.6.5 +BuildRequires: dbus-1-devel +BuildRequires: gcc +BuildRequires: libjpeg-devel +BuildRequires: libtool +BuildRequires: make +BuildRequires: openssl-devel +BuildRequires: unzip +BuildRequires: update-desktop-files +BuildRequires: xorg-x11-devel +BuildRequires: zlib-devel %description -VNC is a set of programs using the RFB (Remote Frame Buffer) protocol. -They are designed to "export" a frame buffer via the network. It is in -wide use for administration. - -X.org has a virtual Xvnc server which you can start as an own screen -(e.g. :1) and connect to with a VNC client (e.g. vncviewer from -tightvnc). This package contains the x11vnc binary that allows you to -export a screen of a running non-virtual X11 server. x11vnc has been -split off LibVNCServer on 2007-07-16. +x11vnc allows one to remotely view and interact with real X displays (i.e. a +display corresponding to a physical monitor, keyboard, and mouse) with any VNC +viewer. In this way it plays the role for Unix/X11 that WinVNC plays for +Windows. + +For Unix, the VNC implementation includes a virtual X11 server Xvnc (usually +launched via the vncserver command) that is not associated with a real +display, but provides a "fake" one X11 clients (xterm, mozilla, etc.) can +attach to. A remote user then connects to Xvnc via the VNC client vncviewer +from anywhere on the network to view and interact with the whole virtual X11 +desktop. + +The VNC protocol is in most cases better suited for remote connections with +low bandwidth and high latency than is the X11 protocol. Also, with no state +maintained the viewing-end can crash, be rebooted, or relocated and the +applications and desktop continue running. Not so with X11. + +%package frontend +Summary: Simple GUI Frontend to x11vnc +Group: System/X11/Utilities +Requires: %{name} = %{version}-%{release} +Requires: tcl tk + +%description frontend +x11vnc allows one to remotely view and interact with real X displays (i.e. a +display corresponding to a physical monitor, keyboard, and mouse) with any VNC +viewer. In this way it plays the role for Unix/X11 that WinVNC plays for +Windows. + +This package adds a simple GUI frontend to run x11vnc. %prep -%setup -%patch1 -p1 -%patch2 -p1 -#%patch4 -p1 -%patch6 -p1 -%patch7 -p1 +%setup -q +%if "%{_lib}"=="lib64" +%patch1 +%endif +%patch2 +%patch3 +# workaround for Factory, as maintaining that patch with fuzz==0 is +# too annoying (it patches files that are modified by other patches): +%__patch -p0 -i "%{PATCH5}" +%patch6 +%patch7 mv x11vnc/misc x11vnc/examples -# aclocal; autoheader; automake --add-missing --copy; autoconf -# ./configure --enable-maintainer-mode -# sh ./autogen.sh %build -#%{?suse_update_config:%{suse_update_config -f}} -autoreconf -f -CFLAGS="$RPM_OPT_FLAGS -D_REENTRANT" \ - ./configure --enable-shared --with-gnu-ld --prefix=/usr \ - --mandir=%{_mandir} --infodir=%{_infodir} --libdir=%{_libdir} \ - --libexecdir=%{_libdir} %{_target_cpu}-suse-linux -%{__make} %{?jobs:-j%jobs} +autoreconf -fiv + +CFLAGS="%{optflags} -D_REENTRANT -fno-strict-aliasing" \ +%configure \ + --enable-shared \ + --with-gnu-ld \ +%if 0%{?_with_ffmpeg:1} + --with-ffmpeg \ +%else + --without-ffmpeg \ +%endif + --with-x \ + --with-24bpp \ + --with-filetransfer \ + --with-jpeg="%{_usr}" \ + --with-zlib="%{_usr}" \ + %{_target_cpu}-suse-linux -%check -make check +%__make %{?_smp_flags} %install %makeinstall -install -m 0755 x11vnc/tkx11vnc $RPM_BUILD_ROOT%{_bindir}/ -install -m 0755 %SOURCE1 $RPM_BUILD_ROOT%{_bindir}/ -# Do not ship headers: we don't ship a library, so they'd be useless -rm -r %{buildroot}%{_includedir}/rfb/ +%__install -m 0755 x11vnc/tkx11vnc "%{buildroot}%{_bindir}/" +%__install -m 0755 "%{SOURCE2}" "%{buildroot}%{_bindir}/" +%__install -D -m 0644 "%{SOURCE3}" "%{buildroot}%{_datadir}/pixmaps/x11vnc.png" +%__install -D -m 0644 "%{SOURCE1}" "%{buildroot}%{_datadir}/applications/tkx11vnc.desktop" +for d in tkx11vnc x11vnc; do + %suse_update_desktop_file -r "$d" System RemoteAccess +done + +%__rm -rf "%{buildroot}%{_includedir}/rfb" + +find x11vnc/examples/ -name 'Makefile*' -exec %__rm {} \; +find x11vnc/examples/ -type f -exec %__chmod 0644 {} \; %clean -[ "${RPM_BUILD_ROOT}" != "/" -a -d ${RPM_BUILD_ROOT} ] && rm -rf ${RPM_BUILD_ROOT} +%{?buildroot:%__rm -rf "%{buildroot}"} %files %defattr(-,root,root) -%doc x11vnc/README x11vnc/examples/ +%doc AUTHORS README NEWS ChangeLog TODO COPYING +%doc x11vnc/examples %{_bindir}/x11vnc %{_bindir}/x11vnc_ssh -%{_bindir}/tkx11vnc -%{_mandir}/man1/x11vnc.1.gz -%{_datadir}/x11vnc/ +%doc %{_mandir}/man1/x11vnc.1%{ext_man} +%dir %{_datadir}/x11vnc +%{_datadir}/x11vnc/* %{_datadir}/applications/x11vnc.desktop +%{_datadir}/pixmaps/x11vnc.png + +%files frontend +%defattr(-,root,root) +%{_bindir}/tkx11vnc +%{_datadir}/applications/tkx11vnc.desktop %changelog ++++++ stack-check ++++++ --- /var/tmp/diff_new_pack.OYLLx7/_old 2012-06-14 21:12:25.000000000 +0200 +++ /var/tmp/diff_new_pack.OYLLx7/_new 2012-06-14 21:12:25.000000000 +0200 @@ -1,18 +1,11 @@ -# NOTE: This does not currently work :-( - -Index: x11vnc-0.9.7/x11vnc/Makefile.am -================================================================================ ---- x11vnc-0.9.9/x11vnc/Makefile.am -+++ x11vnc-0.9.9/x11vnc/Makefile.am -@@ -25,6 +25,11 @@ - bin_PROGRAMS=x11vnc - x11vnc_SOURCES = 8to24.c appshare.c avahi.c cleanup.c connections.c cursor.c gui.c help.c inet.c keyboard.c linuxfb.c macosx.c macosxCG.c macosxCGP.c macosxCGS.c options.c pm.c pointer.c rates.c remote.c scan.c screen.c selection.c solid.c sslcmds.c sslhelper.c uinput.c unixpw.c user.c userinput.c util.c v4l.c win_utils.c x11vnc.c x11vnc_defs.c xdamage.c xevents.c xinerama.c xkb_bell.c xrandr.c xrecord.c xwrappers.c 8to24.h allowed_input_t.h avahi.h blackout_t.h cleanup.h connections.h cursor.h enc.h enums.h gui.h help.h inet.h keyboard.h linuxfb.h macosx.h macosxCG.h macosxCGP.h macosxCGS.h nox11.h nox11_funcs.h options.h params.h pm.h pointer.h rates.h remote.h scan.h screen.h scrollevent_t.h selection.h solid.h sslcmds.h sslhelper.h ssltools.h tkx11vnc.h uinput.h unixpw.h user.h userinput.h util.h v4l.h win_utils.h winattr_t.h x11vnc.h xdamage.h xevents.h xinerama.h xkb_bell.h xrandr.h xrecord.h xwrappers.h +--- x11vnc/Makefile.am.orig 2010-07-23 05:37:33.000000000 +0200 ++++ x11vnc/Makefile.am 2010-08-09 21:14:42.000000000 +0200 +@@ -33,3 +33,8 @@ + INCLUDES = $(INCLUDES_LIBVNCSERVER) @X_CFLAGS@ @AVAHI_CFLAGS@ -+avahi.c_CFLAGS = -fstack-protector -+connections.c_CFLAGS = -fstack-protector -+uinput.c_CFLAGS = -fstack-protector -+userinput.c_CFLAGS = -fstack-protector + x11vnc_LDADD=$(LDADD) @SSL_LIBS@ @CRYPT_LIBS@ @X_LIBS@ @AVAHI_LIBS@ $(LD_CYGIPC) + - if HAVE_SYSTEM_LIBVNCSERVER - INCLUDES_LIBVNCSERVER = @SYSTEM_LIBVNCSERVER_CFLAGS@ - else ++CFLAGS_avahi.c = $(CFLAGS) -fstack-protector ++CFLAGS_connections.c = $(CFLAGS) -fstack-protector ++CFLAGS_uinput.c = $(CFLAGS) -fstack-protector ++CFLAGS_userinput.c = $(CFLAGS) -fstack-protector ++++++ x11vnc-0.9.12.tar.bz2 -> x11vnc-0.9.13.tar.bz2 ++++++ ++++ 20071 lines of diff (skipped) ++++++ x11vnc-examples.diff ++++++ --- /var/tmp/diff_new_pack.OYLLx7/_old 2012-06-14 21:12:26.000000000 +0200 +++ /var/tmp/diff_new_pack.OYLLx7/_new 2012-06-14 21:12:26.000000000 +0200 @@ -1,8 +1,80 @@ -Index: x11vnc-0.9.12/README -=================================================================== ---- x11vnc-0.9.12.orig/README -+++ x11vnc-0.9.12/README -@@ -980,7 +980,7 @@ make +--- x11vnc/help.c.orig 2011-10-18 22:11:23.033000420 +0200 ++++ x11vnc/help.c 2011-10-18 22:11:33.301000421 +0200 +@@ -1803,7 +1803,7 @@ + " Xdummy:\n" + "\n" + " The Xdummy wrapper is part of the x11vnc source code\n" +-" (x11vnc/misc/Xdummy) It should be available in PATH\n" ++" (x11vnc/examples/Xdummy) It should be available in PATH\n" + " and have run \"Xdummy -install\" once to create the\n" + " shared library. Xdummy only works on Linux. As of\n" + " 12/2009 it no longer needs to be run as root, and the\n" +--- x11vnc/Makefile.in.orig 2011-10-18 22:10:18.218000421 +0200 ++++ x11vnc/Makefile.in 2011-10-18 22:10:21.622000420 +0200 +@@ -250,8 +250,8 @@ + @HAVE_X11_TRUE@@OSX_OPENGL_TRUE@@OSX_TRUE@GL = /System/Library/Frameworks/OpenGL.framework/Versions/A/Libraries/libGL.dylib + @OSX_TRUE@x11vnc_LDFLAGS = $(FRAMEWORKS) + @OSX_TRUE@x11vnc_CFLAGS = -ObjC +-SUBDIRS = misc +-DIST_SUBDIRS = misc ++SUBDIRS = examples ++DIST_SUBDIRS = examples + desktopdir = $(datadir)/applications + desktop_DATA = x11vnc.desktop + man_MANS = x11vnc.1 +--- x11vnc/misc/turbovnc/README.orig 2011-10-18 22:11:41.278000421 +0200 ++++ x11vnc/misc/turbovnc/README 2011-10-18 22:11:47.087000419 +0200 +@@ -45,7 +45,7 @@ + + For those in a hurry: + +- cd x11vnc-x.y.z/x11vnc/misc/turbovnc ++ cd x11vnc-x.y.z/x11vnc/examples/turbovnc + ./apply_turbovnc + cd ../../.. + env LDFLAGS='-L/DIR -Xlinker --rpath=/DIR' ./configure +@@ -58,7 +58,7 @@ + ---------------------- + + After unpacking your x11vnc-x.y.z.tar.gz tarball cd to the +-x11vnc-x.y.z/x11vnc/misc/turbovnc (where this README file is) and from ++x11vnc-x.y.z/x11vnc/examples/turbovnc (where this README file is) and from + that directory run: + + ./apply_turbovnc +--- x11vnc/Makefile.am.orig 2011-10-18 22:10:08.444000421 +0200 ++++ x11vnc/Makefile.am 2011-10-18 22:10:14.067000419 +0200 +@@ -17,8 +17,8 @@ + x11vnc_CFLAGS = -ObjC + endif + +-SUBDIRS = misc +-DIST_SUBDIRS = misc ++SUBDIRS = examples ++DIST_SUBDIRS = examples + + desktopdir = $(datadir)/applications + desktop_DATA = x11vnc.desktop +--- x11vnc/README.orig 2011-10-18 22:10:31.923000420 +0200 ++++ x11vnc/README 2011-10-18 22:11:14.365000420 +0200 +@@ -912,14 +912,14 @@ + * Improved support for non-X11 touchscreen devices (e.g. handheld or + cell phone) via Linux uinput input injection. Additional tuning + parameters are added. TSLIB touchscreen calibration is supported. +- Tested on Qtmoko Neo Freerunner. A tool, misc/uinput.pl, is ++ Tested on Qtmoko Neo Freerunner. A tool, examples/uinput.pl, is + provided to diagnose uinput behavior on new devices. The env. + vars. X11VNC_UINPUT_BUS and X11VNC_UINPUT_VERSION are available if + leaving them unset does not work. + * The Linux uinput non-X11 input injection can now be bypassed: + events can be directly written to the /dev/input/event devices + specified by the user (direct_abs=..., etc.) A -pipeinput input +- injection helper script, misc/qt_tslib_inject.pl is provided as a ++ injection helper script, examples/qt_tslib_inject.pl is provided as a + tweakable non-builtin direct input injection method. + * The list of new uinput parameters for the above two features is: + pressure, tslib_cal, touch_always, dragskip, btn_touch; +@@ -1036,7 +1036,7 @@ x11vnc to use the -xrandr screen size change trapping code. * New remote control query options: pointer_x, pointer_y, pointer_same, pointer_root, and pointer_mask. A demo script using @@ -11,7 +83,7 @@ * The -sslScripts option prints out the SSL certificate management scripts. -@@ -5394,7 +5394,7 @@ xprop -root -f VNC_CONNECT 8s -set VNC_C +@@ -5525,7 +5525,7 @@ Q-67: Can x11vnc provide a multi-user desktop web login service as an Apache CGI or PHP script? Yes. See the example script desktop.cgi for ideas. It is in the source @@ -20,7 +92,7 @@ Applet to the web browser with the correct connection information for the user's virtual desktop (an Xvfb session via -create; be sure to add the Xvfb package.) HTTPS/SSL enabled Apache should be used to -@@ -6348,12 +6348,12 @@ EndSection +@@ -6479,12 +6479,12 @@ down the delays, e.g. "-wait 5" and "-defer 5" (or even a smaller setting) to poll and pump things out more quickly. @@ -35,7 +107,16 @@ ./apply_turbovnc cd ../../.. env LDFLAGS='-L/DIR -Xlinker --rpath=/DIR' ./configure -@@ -7609,7 +7609,7 @@ minal #2) +@@ -6498,7 +6498,7 @@ + it went. + + There also may be some Linux.i686 and Darwin.i386 x11vnc binaries with +- TurboVNC support in the misc. bins directory. For other platforms you ++ TurboVNC support in the examples bins directory. For other platforms you + will need to compile yourself. + + On relatively cheap and old hardware (Althon64 X2 5000+ / GeForce +@@ -7740,7 +7740,7 @@ Note the -pipeinput helper program could actually control the raw framebuffer. In the libvncserver CVS a simple example program @@ -44,7 +125,7 @@ "slideshow" application. Also the builtin "-pipeinput VID" mode does this for webcams and TV capture devices (/dev/video0.) -@@ -7619,7 +7619,7 @@ minal #2) +@@ -7750,7 +7750,7 @@ Another example provided in libvncserver CVS is a script to inject keystrokes into the Linux console (e.g. the virtual consoles: @@ -53,7 +134,25 @@ the vncterm/LinuxVNC.c program also in the libvncserver CVS. So to view and interact with VT #2 (assuming it is the active VT) one can run something like: -@@ -8937,7 +8937,7 @@ or: +@@ -8087,7 +8087,7 @@ + writing the touchscreen events directly to /dev/input/event1 then + input can be injected into the system. There is no x11vnc builtin mode + for this yet (until we understand it better), but there is a working +- script provided in x11vnc/misc/qt_tslib_inject.pl. So one could use it ++ script provided in x11vnc/examples/qt_tslib_inject.pl. So one could use it + this way for example: + x11vnc ... -rawfb console -pipeinput path/to/qt_tslib_inject.pl -env INJECT_O + PTIONS=clickonly,cal=/etc/pointercal +@@ -8096,7 +8096,7 @@ + options mean (e.g. /etc/pointercal contains TSLIB's calibration + parameters and are necessary to achieve accurate pointing.) + +- The x11vnc/misc/qt_tslib_inject.pl script can potentially be modified ++ The x11vnc/examples/qt_tslib_inject.pl script can potentially be modified + to handle other devices where the uinput method fails. It could also + be modified to create 'hot keys', etc. + +@@ -9144,7 +9144,7 @@ For inetd.conf, an example is: 5900 stream tcp6 nowait root /usr/sbin/tcpd /usr/local/bin/x11vnc_wrapper.sh @@ -62,7 +161,7 @@ acts as a relay for any IPv4 application to allow connections over IPv6. For example: inet6to4 5900 localhost:5900 -@@ -13794,7 +13794,7 @@ Options: +@@ -14238,7 +14238,7 @@ Xdummy: The Xdummy wrapper is part of the x11vnc source code @@ -71,54 +170,37 @@ and have run "Xdummy -install" once to create the shared library. Xdummy only works on Linux. As of 12/2009 it no longer needs to be run as root, and the -Index: x11vnc-0.9.12/configure.ac -=================================================================== ---- x11vnc-0.9.12.orig/configure.ac -+++ x11vnc-0.9.12/configure.ac -@@ -810,7 +810,7 @@ if test "$build_x11vnc" = "yes"; then - # - # configure.ac:690: required file `x11vnc/Makefile.in' not found - # -- AC_CONFIG_FILES([x11vnc/Makefile x11vnc/misc/Makefile x11vnc/misc/turbovnc/Makefile]) -+ AC_CONFIG_FILES([x11vnc/Makefile x11vnc/examples/Makefile x11vnc/examples/turbovnc/Makefile]) - - if test ! -z "$with_system_libvncserver" -a "x$with_system_libvncserver" != "xno"; then - # need to move local tarball rfb headers aside: -Index: x11vnc-0.9.12/x11vnc/Makefile.am -=================================================================== ---- x11vnc-0.9.12.orig/x11vnc/Makefile.am -+++ x11vnc-0.9.12/x11vnc/Makefile.am -@@ -9,8 +9,8 @@ x11vnc_LDFLAGS = -framework ApplicationS - x11vnc_CFLAGS = -ObjC - endif - --SUBDIRS = misc --DIST_SUBDIRS = misc -+SUBDIRS = examples -+DIST_SUBDIRS = examples - - desktopdir = $(datadir)/applications - desktop_DATA = x11vnc.desktop -Index: x11vnc-0.9.12/x11vnc/Makefile.in -=================================================================== ---- x11vnc-0.9.12.orig/x11vnc/Makefile.in -+++ x11vnc-0.9.12/x11vnc/Makefile.in -@@ -241,8 +241,8 @@ with_ffmpeg = @with_ffmpeg@ - @HAVE_SYSTEM_LIBVNCSERVER_TRUE@LDADD = @SYSTEM_LIBVNCSERVER_LIBS@ @WSOCKLIB@ - @OSX_TRUE@x11vnc_LDFLAGS = -framework ApplicationServices -framework Carbon -framework IOKit -framework Cocoa - @OSX_TRUE@x11vnc_CFLAGS = -ObjC --SUBDIRS = misc --DIST_SUBDIRS = misc -+SUBDIRS = examples -+DIST_SUBDIRS = examples - desktopdir = $(datadir)/applications - desktop_DATA = x11vnc.desktop - man_MANS = x11vnc.1 -Index: x11vnc-0.9.12/x11vnc/README -=================================================================== ---- x11vnc-0.9.12.orig/x11vnc/README -+++ x11vnc-0.9.12/x11vnc/README -@@ -980,7 +980,7 @@ make +--- x11vnc/x11vnc.1.orig 2011-10-18 22:12:02.480000421 +0200 ++++ x11vnc/x11vnc.1 2011-10-18 22:12:10.382000419 +0200 +@@ -2003,7 +2003,7 @@ + Xdummy: + .IP + The Xdummy wrapper is part of the x11vnc source code +-(x11vnc/misc/Xdummy) It should be available in PATH ++(x11vnc/examples/Xdummy) It should be available in PATH + and have run "Xdummy \fB-install"\fR once to create the + shared library. Xdummy only works on Linux. As of + 12/2009 it no longer needs to be run as root, and the +--- README.orig 2011-10-18 22:08:05.333000420 +0200 ++++ README 2011-10-18 22:09:35.980000420 +0200 +@@ -912,14 +912,14 @@ + * Improved support for non-X11 touchscreen devices (e.g. handheld or + cell phone) via Linux uinput input injection. Additional tuning + parameters are added. TSLIB touchscreen calibration is supported. +- Tested on Qtmoko Neo Freerunner. A tool, misc/uinput.pl, is ++ Tested on Qtmoko Neo Freerunner. A tool, examples/uinput.pl, is + provided to diagnose uinput behavior on new devices. The env. + vars. X11VNC_UINPUT_BUS and X11VNC_UINPUT_VERSION are available if + leaving them unset does not work. + * The Linux uinput non-X11 input injection can now be bypassed: + events can be directly written to the /dev/input/event devices + specified by the user (direct_abs=..., etc.) A -pipeinput input +- injection helper script, misc/qt_tslib_inject.pl is provided as a ++ injection helper script, examples/qt_tslib_inject.pl is provided as a + tweakable non-builtin direct input injection method. + * The list of new uinput parameters for the above two features is: + pressure, tslib_cal, touch_always, dragskip, btn_touch; +@@ -1036,7 +1036,7 @@ x11vnc to use the -xrandr screen size change trapping code. * New remote control query options: pointer_x, pointer_y, pointer_same, pointer_root, and pointer_mask. A demo script using @@ -127,16 +209,7 @@ * The -sslScripts option prints out the SSL certificate management scripts. -@@ -5394,7 +5394,7 @@ xprop -root -f VNC_CONNECT 8s -set VNC_C - Q-67: Can x11vnc provide a multi-user desktop web login service as an - Apache CGI or PHP script? - Yes. See the example script desktop.cgi for ideas. It is in the source -- tree in the directory x11vnc/misc. It serves x11vnc's SSL enabled Java -+ tree in the directory x11vnc/examples. It serves x11vnc's SSL enabled Java - Applet to the web browser with the correct connection information for - the user's virtual desktop (an Xvfb session via -create; be sure to - add the Xvfb package.) HTTPS/SSL enabled Apache should be used to -@@ -6348,12 +6348,12 @@ EndSection +@@ -6479,7 +6479,7 @@ down the delays, e.g. "-wait 5" and "-defer 5" (or even a smaller setting) to poll and pump things out more quickly. @@ -145,13 +218,7 @@ x11vnc with TurboVNC support. You will also need to download the TurboJPEG software. - In brief, the steps look like this: -- cd x11vnc-x.y.z/x11vnc/misc/turbovnc -+ cd x11vnc-x.y.z/x11vnc/examples/turbovnc - ./apply_turbovnc - cd ../../.. - env LDFLAGS='-L/DIR -Xlinker --rpath=/DIR' ./configure -@@ -7609,7 +7609,7 @@ minal #2) +@@ -7740,7 +7740,7 @@ Note the -pipeinput helper program could actually control the raw framebuffer. In the libvncserver CVS a simple example program @@ -160,7 +227,7 @@ "slideshow" application. Also the builtin "-pipeinput VID" mode does this for webcams and TV capture devices (/dev/video0.) -@@ -7619,7 +7619,7 @@ minal #2) +@@ -7750,7 +7750,7 @@ Another example provided in libvncserver CVS is a script to inject keystrokes into the Linux console (e.g. the virtual consoles: @@ -169,7 +236,25 @@ the vncterm/LinuxVNC.c program also in the libvncserver CVS. So to view and interact with VT #2 (assuming it is the active VT) one can run something like: -@@ -8937,7 +8937,7 @@ or: +@@ -8087,7 +8087,7 @@ + writing the touchscreen events directly to /dev/input/event1 then + input can be injected into the system. There is no x11vnc builtin mode + for this yet (until we understand it better), but there is a working +- script provided in x11vnc/misc/qt_tslib_inject.pl. So one could use it ++ script provided in x11vnc/examples/qt_tslib_inject.pl. So one could use it + this way for example: + x11vnc ... -rawfb console -pipeinput path/to/qt_tslib_inject.pl -env INJECT_O + PTIONS=clickonly,cal=/etc/pointercal +@@ -8096,7 +8096,7 @@ + options mean (e.g. /etc/pointercal contains TSLIB's calibration + parameters and are necessary to achieve accurate pointing.) + +- The x11vnc/misc/qt_tslib_inject.pl script can potentially be modified ++ The x11vnc/examples/qt_tslib_inject.pl script can potentially be modified + to handle other devices where the uinput method fails. It could also + be modified to create 'hot keys', etc. + +@@ -9144,7 +9144,7 @@ For inetd.conf, an example is: 5900 stream tcp6 nowait root /usr/sbin/tcpd /usr/local/bin/x11vnc_wrapper.sh @@ -178,60 +263,14 @@ acts as a relay for any IPv4 application to allow connections over IPv6. For example: inet6to4 5900 localhost:5900 -@@ -13794,7 +13794,7 @@ Options: - Xdummy: - - The Xdummy wrapper is part of the x11vnc source code -- (x11vnc/misc/Xdummy) It should be available in PATH -+ (x11vnc/examples/Xdummy) It should be available in PATH - and have run "Xdummy -install" once to create the - shared library. Xdummy only works on Linux. As of - 12/2009 it no longer needs to be run as root, and the -Index: x11vnc-0.9.12/x11vnc/help.c -=================================================================== ---- x11vnc-0.9.12.orig/x11vnc/help.c -+++ x11vnc-0.9.12/x11vnc/help.c -@@ -1573,7 +1573,7 @@ void print_help(int mode) { - " Xdummy:\n" - "\n" - " The Xdummy wrapper is part of the x11vnc source code\n" --" (x11vnc/misc/Xdummy) It should be available in PATH\n" -+" (x11vnc/examples/Xdummy) It should be available in PATH\n" - " and have run \"Xdummy -install\" once to create the\n" - " shared library. Xdummy only works on Linux. As of\n" - " 12/2009 it no longer needs to be run as root, and the\n" -Index: x11vnc-0.9.12/x11vnc/misc/turbovnc/README -=================================================================== ---- x11vnc-0.9.12.orig/x11vnc/misc/turbovnc/README -+++ x11vnc-0.9.12/x11vnc/misc/turbovnc/README -@@ -45,7 +45,7 @@ QUICK-START: - - For those in a hurry: - -- cd x11vnc-x.y.z/x11vnc/misc/turbovnc -+ cd x11vnc-x.y.z/x11vnc/examples/turbovnc - ./apply_turbovnc - cd ../../.. - env LDFLAGS='-L/DIR -Xlinker --rpath=/DIR' ./configure -@@ -58,7 +58,7 @@ PATCHING AND BUILDING: - ---------------------- - - After unpacking your x11vnc-x.y.z.tar.gz tarball cd to the --x11vnc-x.y.z/x11vnc/misc/turbovnc (where this README file is) and from -+x11vnc-x.y.z/x11vnc/examples/turbovnc (where this README file is) and from - that directory run: +--- configure.ac.orig 2011-10-18 22:09:38.625000420 +0200 ++++ configure.ac 2011-10-18 22:09:47.621000421 +0200 +@@ -837,7 +837,7 @@ + # + # configure.ac:690: required file `x11vnc/Makefile.in' not found + # +- AC_CONFIG_FILES([x11vnc/Makefile x11vnc/misc/Makefile x11vnc/misc/turbovnc/Makefile]) ++ AC_CONFIG_FILES([x11vnc/Makefile x11vnc/examples/Makefile x11vnc/examples/turbovnc/Makefile]) - ./apply_turbovnc -Index: x11vnc-0.9.12/x11vnc/x11vnc.1 -=================================================================== ---- x11vnc-0.9.12.orig/x11vnc/x11vnc.1 -+++ x11vnc-0.9.12/x11vnc/x11vnc.1 -@@ -1735,7 +1735,7 @@ By default FINDCREATEDISPLAY will try Xv - Xdummy: - .IP - The Xdummy wrapper is part of the x11vnc source code --(x11vnc/misc/Xdummy) It should be available in PATH -+(x11vnc/examples/Xdummy) It should be available in PATH - and have run "Xdummy \fB-install"\fR once to create the - shared library. Xdummy only works on Linux. As of - 12/2009 it no longer needs to be run as root, and the + if test ! -z "$with_system_libvncserver" -a "x$with_system_libvncserver" != "xno"; then + # need to move local tarball rfb headers aside: ++++++ x11vnc-lame-libm.diff ++++++ --- configure.ac.orig 2006-01-08 10:48:28.000000000 +0100 +++ configure.ac 2006-01-08 10:48:45.000000000 +0100 @@ -36,7 +36,7 @@ AC_SUBST(with_ffmpeg) AM_CONDITIONAL(WITH_FFMPEG, test ! -z "$with_ffmpeg") if test ! -z "$with_ffmpeg"; then - AC_CHECK_LIB(mp3lame, lame_init, HAVE_MP3LAME="true", HAVE_MP3LAME="false" ) + AC_CHECK_LIB(mp3lame -lm, lame_init, HAVE_MP3LAME="true", HAVE_MP3LAME="false" ) fi AM_CONDITIONAL(HAVE_MP3LAME, test "$HAVE_MP3LAME" = "true") ++++++ x11vnc-lib64.diff ++++++ --- configure.ac.orig 2007-02-02 08:56:14.000000000 +0100 +++ configure.ac 2007-02-02 08:57:08.000000000 +0100 @@ -351,14 +351,14 @@ saved_CPPFLAGS="$CPPFLAGS" saved_LDFLAGS="$LDFLAGS" CPPFLAGS="$CPPFLAGS -I$with_jpeg/include" - LDFLAGS="$LDFLAGS -L$with_jpeg/lib" + LDFLAGS="$LDFLAGS -L$with_jpeg/lib64" if test "x$ld_minus_R" = "xno"; then : elif test "x$GCC" = "xyes"; then # this is not complete... in general a rat's nest. - LDFLAGS="$LDFLAGS -Xlinker -R$with_jpeg/lib" + LDFLAGS="$LDFLAGS -Xlinker -R$with_jpeg/lib64" else - LDFLAGS="$LDFLAGS -R$with_jpeg/lib" + LDFLAGS="$LDFLAGS -R$with_jpeg/lib64" fi fi AC_CHECK_HEADER(jpeglib.h, HAVE_JPEGLIB_H="true") @@ -398,13 +398,13 @@ saved_CPPFLAGS="$CPPFLAGS" saved_LDFLAGS="$LDFLAGS" CPPFLAGS="$CPPFLAGS -I$with_zlib/include" - LDFLAGS="$LDFLAGS -L$with_zlib/lib" + LDFLAGS="$LDFLAGS -L$with_zlib/lib64" if test "x$ld_minus_R" = "xno"; then : elif test "x$GCC" = "xyes"; then - LDFLAGS="$LDFLAGS -Xlinker -R$with_zlib/lib" + LDFLAGS="$LDFLAGS -Xlinker -R$with_zlib/lib64" else - LDFLAGS="$LDFLAGS -R$with_zlib/lib" + LDFLAGS="$LDFLAGS -R$with_zlib/lib64" fi fi AC_CHECK_HEADER(zlib.h, HAVE_ZLIB_H="true") ++++++ x11vnc-rpmlintrc ++++++ addFilter("W: files-duplicate /usr/share/x11vnc/classes/index.vnc /usr/share/x11vnc/classes/ssl/index.vnc") addFilter("W: patch-not-applied Patch5: x11vnc-thread-auth.diff") ++++++ x11vnc-thread-auth.diff ++++++ --- /var/tmp/diff_new_pack.OYLLx7/_old 2012-06-14 21:12:26.000000000 +0200 +++ /var/tmp/diff_new_pack.OYLLx7/_new 2012-06-14 21:12:26.000000000 +0200 @@ -1,19 +1,16 @@ -Index: x11vnc-0.9.8/x11vnc/screen.c -=================================================================== ---- x11vnc-0.9.8.orig/x11vnc/screen.c -+++ x11vnc-0.9.8/x11vnc/screen.c -@@ -3907,8 +3907,40 @@ if (0 && dt > 0.0) fprintf(stderr, "dt: +--- x11vnc/screen.c.orig 2009-12-21 05:58:10.000000000 +0100 ++++ x11vnc/screen.c 2009-12-21 23:17:28.000000000 +0100 +@@ -4201,6 +4201,37 @@ return msec; } - /* ++/* + * Terrible hack for the multithreaded x11vnc ... + * But we get the client confused if we start sending stuff in our + * main loop prior to it being initialized properly. So wait. + * It's polling :-( + */ -+static void _mt_wait_for_client(void) -+{ ++static void _mt_wait_for_client() { + time_t start = time(0); + while (!client_count) { + if (first_conn_timeout && time(0) - start > first_conn_timeout) @@ -23,33 +20,29 @@ + while (1) { + rfbClientIteratorPtr iter; + rfbClientPtr cl; -+ iter = rfbGetClientIterator(screen); ++ iter = rfbGetClientIterator(screen); + while( (cl = rfbClientIteratorNext(iter)) ) { -+ //ClientData *cd = (ClientData *) cl->clientData; ++ //ClientData *cd = (ClientData *) cl->clientData; + if (cl->state == RFB_NORMAL) { + rfbReleaseClientIterator(iter); + return; + } + } -+ rfbReleaseClientIterator(iter); ++ rfbReleaseClientIterator(iter); + if (first_conn_timeout && time(0) - start > first_conn_timeout) + return; + usleep(100*1000); + } +} + -+/* + /* * main x11vnc loop: polls, checks for events, iterate libvncserver, etc. */ - void watch_loop(void) { - int cnt = 0, tile_diffs = 0, skip_pe = 0, wait; -@@ -3917,8 +3949,9 @@ void watch_loop(void) { - +@@ -4212,6 +4243,7 @@ if (use_threads && !started_rfbRunEventLoop) { started_rfbRunEventLoop = 1; rfbRunEventLoop(screen, -1, TRUE); -+ _mt_wait_for_client(); ++ _mt_wait_for_client(); } while (1) { - char msg[] = "new client: %s taking unixpw client off hold.\n"; ++++++ x11vnc-tkx11vnc.desktop ++++++ [Desktop Entry] Categories= Encoding=UTF-8 Terminal=false Exec=tkx11vnc Icon=x11vnc Type=Application StartupNotify=false Name=X11VNC GenericName=X11VNC Comment=Connect to remote X display through VNC ++++++ x11vnc.desktop.generics ++++++ --- /var/tmp/diff_new_pack.OYLLx7/_old 2012-06-14 21:12:26.000000000 +0200 +++ /var/tmp/diff_new_pack.OYLLx7/_new 2012-06-14 21:12:26.000000000 +0200 @@ -1,18 +1,15 @@ -Index: x11vnc-0.9.7/x11vnc/x11vnc.desktop -=================================================================== ---- x11vnc-0.9.7.orig/x11vnc/x11vnc.desktop -+++ x11vnc-0.9.7/x11vnc/x11vnc.desktop -@@ -1,9 +1,11 @@ +--- x11vnc/x11vnc.desktop.orig 2009-10-07 22:21:23.000000000 +0200 ++++ x11vnc/x11vnc.desktop 2011-10-18 22:17:09.333000421 +0200 +@@ -1,9 +1,10 @@ [Desktop Entry] -+X-SuSE-translate=false Name=X11VNC Server -Comment=Share this desktop by VNC +GenericName=VNC Server +Comment=Share this desktop via VNC Exec=x11vnc -gui tray=setpass -rfbport PROMPT -bg -o %%HOME/.x11vnc.log.%%VNCDISPLAY -Icon=computer -+#Icon=computer Terminal=false ++Icon=x11vnc Type=Application StartupNotify=false #StartupWMClass=x11vnc_port_prompt -- To unsubscribe, e-mail: [email protected] For additional commands, e-mail: [email protected]
