- update to 1.0.90 snapshot

- patches merged
- tigervnc10-compat.patch
- tigervnc10-rh510185.patch
- tigervnc10-rh524340.patch
- tigervnc10-rh516274.patch
This commit is contained in:
Adam Tkac 2009-12-21 15:55:21 +00:00
parent 1dd02a6af2
commit ab51d8d5e3
8 changed files with 45 additions and 643 deletions

View File

@ -1,2 +1,2 @@
tigervnc-1.0.0.tar.gz
xorg-x11-server-source-1.6.4-0.3.fc11.x86_64.rpm
tigervnc-1.0.90-20091221svn3929.tar.bz2
shave-1.tar.bz2

View File

@ -1,2 +1,2 @@
622c6689a66651419b5431efdee99d5a tigervnc-1.0.0.tar.gz
bc5cb09b51297251c9f2e25e5719a735 xorg-x11-server-source-1.6.4-0.3.fc11.x86_64.rpm
012731b0df6b00345401bc33e8f8dfe3 tigervnc-1.0.90-20091221svn3929.tar.bz2
4b7761c018efd6dc0e14c82c5bdd36fa shave-1.tar.bz2

View File

@ -1,19 +1,29 @@
--- vnc-4_1-unixsrc/unix/vncserver.cookie 2005-02-23 12:28:18.000000000 +0000
+++ vnc-4_1-unixsrc/unix/vncserver 2005-03-03 22:04:28.000000000 +0000
@@ -116,18 +116,12 @@
diff -up tigervnc-1.0.90-20091221svn3929/unix/vncserver.cookie tigervnc-1.0.90-20091221svn3929/unix/vncserver
--- tigervnc-1.0.90-20091221svn3929/unix/vncserver.cookie 2009-11-12 11:39:54.000000000 +0100
+++ tigervnc-1.0.90-20091221svn3929/unix/vncserver 2009-12-21 16:15:01.907799091 +0100
@@ -189,27 +189,12 @@ $vncPort = 5900 + $displayNumber;
$desktopLog = "$vncUserDir/$host:$displayNumber.log";
unlink($desktopLog);
-# Make an X server cookie - use as the seed the sum of the current time, our
-# PID and part of the encrypted form of the password. Ideally we'd use
-# /dev/urandom, but that's only available on Linux.
-# Make an X server cookie - use /dev/urandom on systems that have it,
-# otherwise use perl's random number generator, seeded with the sum
-# of the current time, our PID and part of the encrypted form of the password.
-
-srand(time+$$+unpack("L",`cat $vncUserDir/passwd`));
-$cookie = "";
-for (1..16) {
- $cookie .= sprintf("%02x", int(rand(256)) % 256);
-my $cookie = "";
-if (open(URANDOM, '<', '/dev/urandom')) {
- my $randata;
- if (sysread(URANDOM, $randata, 16) == 16) {
- $cookie = unpack 'h*', $randata;
- }
- close(URANDOM);
-}
-
-if ($cookie eq "") {
- srand(time+$$+unpack("L",`cat $vncUserDir/passwd`));
- for (1..16) {
- $cookie .= sprintf("%02x", int(rand(256)) % 256);
- }
-}
-
-system("xauth -f $xauthorityFile add $host:$displayNumber . $cookie");
-system("xauth -f $xauthorityFile add $host/unix:$displayNumber . $cookie");
+# Make an X server cookie - use mcookie

View File

@ -1,17 +1,19 @@
%define snap 20091221svn3929
Name: tigervnc
Version: 1.0.0
Release: 3%{?dist}
Version: 1.0.90
Release: 0.1.%{snap}%{?dist}
Summary: A TigerVNC remote display system
Group: User Interface/Desktops
License: GPLv2+
URL: http://www.tigervnc.com
Source0: %{name}-%{version}.tar.gz
Source0: %{name}-%{version}-%{snap}.tar.bz2
Source1: vncserver.init
Source2: vncserver.sysconfig
Source3: shave-1.tar.bz2
Source6: vncviewer.desktop
Source7: xorg-x11-server-source-1.6.4-0.3.fc11.x86_64.rpm
BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n)
BuildRequires: libX11-devel, automake, autoconf, libtool, gettext, cvs
@ -39,10 +41,6 @@ Obsoletes: tightvnc < 1.5.0-0.15.20090204svn3586
Patch0: tigervnc-102434.patch
Patch4: tigervnc-cookie.patch
Patch8: tigervnc-viewer-reparent.patch
Patch10: tigervnc10-compat.patch
Patch11: tigervnc10-rh510185.patch
Patch12: tigervnc10-rh524340.patch
Patch13: tigervnc10-rh516274.patch
%description
Virtual Network Computing (VNC) is a remote display system which
@ -88,43 +86,34 @@ to access the desktop on your machine.
%endif
%prep
%setup -q -n %{name}-%{version}
%setup -q -n %{name}-%{version}-%{snap}
rpm2cpio %{SOURCE7} > cpio
cpio -id < cpio
cp -r usr/share/xorg-x11-server-source/* unix/xserver
cp -r /usr/share/xorg-x11-server-source/* unix/xserver
pushd unix/xserver
for all in `find . -type f -perm -001`; do
chmod -x "$all"
done
patch -p1 -b --suffix .vnc < ../xserver16.patch
patch -p1 -b --suffix .vnc < ../xserver17.patch
tar -xjf %{SOURCE3}
popd
%patch0 -p1 -b .102434
%patch4 -p1 -b .cookie
%patch8 -p1 -b .viewer-reparent
%patch10 -p1 -b .compat
%patch11 -p0 -b .rh510185
%patch12 -p0 -b .rh524340
%patch13 -p1 -b .rh516274
# Use newer gettext
sed -i 's/AM_GNU_GETTEXT_VERSION.*/AM_GNU_GETTEXT_VERSION([0.17])/' \
unix/configure.ac
configure.ac
%build
export CFLAGS="$RPM_OPT_FLAGS"
export CXXFLAGS="$CFLAGS"
pushd unix
autoreconf -fiv
%configure \
--disable-static
%configure --disable-static
make %{?_smp_mflags}
popd
pushd unix/xserver
autoreconf -fiv
@ -153,9 +142,7 @@ popd
%install
rm -rf $RPM_BUILD_ROOT
pushd unix
make install DESTDIR=$RPM_BUILD_ROOT
popd
pushd unix/xserver/hw/vnc
make install DESTDIR=$RPM_BUILD_ROOT
@ -250,6 +237,14 @@ fi
%endif
%changelog
* Mon Dec 21 2009 Adam Tkac <atkac redhat com> 1.0.90-0.1.20091221svn3929
- update to 1.0.90 snapshot
- patches merged
- tigervnc10-compat.patch
- tigervnc10-rh510185.patch
- tigervnc10-rh524340.patch
- tigervnc10-rh516274.patch
* Mon Oct 26 2009 Adam Tkac <atkac redhat com> 1.0.0-3
- create Xvnc keyboard mapping before first keypress (#516274)

View File

@ -1,452 +0,0 @@
diff -up tigervnc-0.0.91/unix/xserver/dbe/dbestruct.h.compat tigervnc-0.0.91/unix/xserver/dbe/dbestruct.h
--- tigervnc-0.0.91/unix/xserver/dbe/dbestruct.h.compat 2009-08-04 13:03:50.973394492 +0200
+++ tigervnc-0.0.91/unix/xserver/dbe/dbestruct.h 2009-08-04 13:04:34.469880005 +0200
@@ -37,10 +37,24 @@
/* INCLUDES */
#define NEED_DBE_PROTOCOL
-#include <X11/extensions/Xdbeproto.h>
+#include <X11/extensions/dbeproto.h>
#include "windowstr.h"
#include "privates.h"
+typedef struct
+{
+ VisualID visual; /* one visual ID that supports double-buffering */
+ int depth; /* depth of visual in bits */
+ int perflevel; /* performance level of visual */
+}
+XdbeVisualInfo;
+
+typedef struct
+{
+ int count; /* number of items in visual_depth */
+ XdbeVisualInfo *visinfo; /* list of visuals & depths for scrn */
+}
+XdbeScreenVisualInfo;
/* DEFINES */
diff -up tigervnc-0.0.91/unix/xserver/dix/main.c.compat tigervnc-0.0.91/unix/xserver/dix/main.c
--- tigervnc-0.0.91/unix/xserver/dix/main.c.compat 2009-08-04 12:44:48.695952134 +0200
+++ tigervnc-0.0.91/unix/xserver/dix/main.c 2009-08-04 12:44:54.805950929 +0200
@@ -112,7 +112,7 @@ Equipment Corporation.
#ifdef DPMSExtension
#define DPMS_SERVER
-#include <X11/extensions/dpms.h>
+#include <X11/extensions/dpmsconst.h>
#include "dpmsproc.h"
#endif
diff -up tigervnc-0.0.91/unix/xserver/hw/xfree86/dixmods/extmod/modinit.h.compat tigervnc-0.0.91/unix/xserver/hw/xfree86/dixmods/extmod/modinit.h
--- tigervnc-0.0.91/unix/xserver/hw/xfree86/dixmods/extmod/modinit.h.compat 2009-08-04 12:53:36.025952295 +0200
+++ tigervnc-0.0.91/unix/xserver/hw/xfree86/dixmods/extmod/modinit.h 2009-08-04 12:59:54.800369244 +0200
@@ -8,7 +8,7 @@
#endif
#define _SHAPE_SERVER_ /* don't want Xlib structures */
-#include <X11/extensions/shapestr.h>
+#include <X11/extensions/shapeproto.h>
#ifdef MULTIBUFFER
extern void MultibufferExtensionInit(INITARGS);
@@ -18,9 +18,7 @@ extern void MultibufferExtensionInit(INI
#ifdef XTEST
extern void XTestExtensionInit(INITARGS);
-#define _XTEST_SERVER_
-#include <X11/extensions/XTest.h>
-#include <X11/extensions/xteststr.h>
+#include <X11/extensions/xtestproto.h>
#endif
#if 1
@@ -47,7 +45,7 @@ extern void XFree86DGARegister(INITARGS)
#ifdef DPMSExtension
extern void DPMSExtensionInit(INITARGS);
-#include <X11/extensions/dpmsstr.h>
+#include <X11/extensions/dpmsconst.h>
#endif
#ifdef XV
@@ -65,7 +63,7 @@ extern void ResExtensionInit(INITARGS);
#ifdef SHM
extern void ShmExtensionInit(INITARGS);
-#include <X11/extensions/shmstr.h>
+#include <X11/extensions/shmproto.h>
extern void ShmRegisterFuncs(
ScreenPtr pScreen,
ShmFuncsPtr funcs);
diff -up tigervnc-0.0.91/unix/xserver/mi/mieq.c.compat tigervnc-0.0.91/unix/xserver/mi/mieq.c
--- tigervnc-0.0.91/unix/xserver/mi/mieq.c.compat 2009-08-04 12:48:58.849508634 +0200
+++ tigervnc-0.0.91/unix/xserver/mi/mieq.c 2009-08-04 12:49:05.904463326 +0200
@@ -56,7 +56,7 @@ in this Software without prior written a
#ifdef DPMSExtension
# include "dpmsproc.h"
# define DPMS_SERVER
-# include <X11/extensions/dpms.h>
+# include <X11/extensions/dpmsconst.h>
#endif
#define QUEUE_SIZE 512
diff -up tigervnc-0.0.91/unix/xserver/mi/miinitext.c.compat tigervnc-0.0.91/unix/xserver/mi/miinitext.c
--- tigervnc-0.0.91/unix/xserver/mi/miinitext.c.compat 2009-08-04 13:05:09.055952024 +0200
+++ tigervnc-0.0.91/unix/xserver/mi/miinitext.c 2009-08-04 13:05:29.550796329 +0200
@@ -160,8 +160,7 @@ typedef void (*InitExtension)(INITARGS);
#endif
#ifdef MITSHM
-#define _XSHM_SERVER_
-#include <X11/extensions/shmstr.h>
+#include <X11/extensions/shmproto.h>
#endif
#ifdef XTEST
#define _XTEST_SERVER_
diff -up tigervnc-0.0.91/unix/xserver/mi/miscrinit.c.compat tigervnc-0.0.91/unix/xserver/mi/miscrinit.c
--- tigervnc-0.0.91/unix/xserver/mi/miscrinit.c.compat 2009-08-04 12:49:38.923574102 +0200
+++ tigervnc-0.0.91/unix/xserver/mi/miscrinit.c 2009-08-04 12:52:10.821079519 +0200
@@ -40,7 +40,8 @@ from The Open Group.
#include "miline.h"
#ifdef MITSHM
#define _XSHM_SERVER_
-#include <X11/extensions/XShm.h>
+#include "../Xext/shmint.h"
+#include <X11/extensions/shm.h>
#endif
/* We use this structure to propogate some information from miScreenInit to
diff -up tigervnc-0.0.91/unix/xserver/os/WaitFor.c.compat tigervnc-0.0.91/unix/xserver/os/WaitFor.c
--- tigervnc-0.0.91/unix/xserver/os/WaitFor.c.compat 2009-08-04 13:02:13.945950767 +0200
+++ tigervnc-0.0.91/unix/xserver/os/WaitFor.c 2009-08-04 13:02:20.872260157 +0200
@@ -109,8 +109,7 @@ mffs(fd_mask mask)
}
#ifdef DPMSExtension
-#define DPMS_SERVER
-#include <X11/extensions/dpms.h>
+#include <X11/extensions/dpmsconst.h>
#endif
struct _OsTimerRec {
diff -up tigervnc-0.0.91/unix/xserver/Xext/dpms.c.compat tigervnc-0.0.91/unix/xserver/Xext/dpms.c
--- tigervnc-0.0.91/unix/xserver/Xext/dpms.c.compat 2009-08-04 13:00:52.007897171 +0200
+++ tigervnc-0.0.91/unix/xserver/Xext/dpms.c 2009-08-04 13:01:55.390510562 +0200
@@ -44,9 +44,7 @@ Equipment Corporation.
#include "dixstruct.h"
#include "extnsionst.h"
#include "opaque.h"
-#define DPMS_SERVER
-#include <X11/extensions/dpms.h>
-#include <X11/extensions/dpmsstr.h>
+#include <X11/extensions/dpmsproto.h>
#include "dpmsproc.h"
#include "modinit.h"
diff -up tigervnc-0.0.91/unix/xserver/Xext/saver.c.compat tigervnc-0.0.91/unix/xserver/Xext/saver.c
--- tigervnc-0.0.91/unix/xserver/Xext/saver.c.compat 2009-08-04 13:00:32.202830460 +0200
+++ tigervnc-0.0.91/unix/xserver/Xext/saver.c 2009-08-04 13:00:40.425950910 +0200
@@ -54,8 +54,7 @@ in this Software without prior written a
#include "panoramiXsrv.h"
#endif
#ifdef DPMSExtension
-#define DPMS_SERVER
-#include <X11/extensions/dpms.h>
+#include <X11/extensions/dpmsconst.h>
#endif
#include <stdio.h>
diff -up tigervnc-0.0.91/unix/xserver/Xext/shape.c.compat tigervnc-0.0.91/unix/xserver/Xext/shape.c
--- tigervnc-0.0.91/unix/xserver/Xext/shape.c.compat 2009-08-04 12:55:04.971289373 +0200
+++ tigervnc-0.0.91/unix/xserver/Xext/shape.c 2009-08-04 12:56:11.729403547 +0200
@@ -43,8 +43,7 @@ in this Software without prior written a
#include "dixstruct.h"
#include "resource.h"
#include "opaque.h"
-#define _SHAPE_SERVER_ /* don't want Xlib structures */
-#include <X11/extensions/shapestr.h>
+#include <X11/extensions/shapeproto.h>
#include "regionstr.h"
#include "gcstruct.h"
#include "modinit.h"
diff -up tigervnc-0.0.91/unix/xserver/Xext/shm.c.compat tigervnc-0.0.91/unix/xserver/Xext/shm.c
--- tigervnc-0.0.91/unix/xserver/Xext/shm.c.compat 2009-08-04 12:59:17.061957614 +0200
+++ tigervnc-0.0.91/unix/xserver/Xext/shm.c 2009-08-04 12:59:28.798390520 +0200
@@ -54,8 +54,7 @@ in this Software without prior written a
#include "servermd.h"
#include "shmint.h"
#include "xace.h"
-#define _XSHM_SERVER_
-#include <X11/extensions/shmstr.h>
+#include <X11/extensions/shmproto.h>
#include <X11/Xfuncproto.h>
/* Needed for Solaris cross-zone shared memory extension */
diff -up tigervnc-0.0.91/unix/xserver/Xext/shmint.h.compat tigervnc-0.0.91/unix/xserver/Xext/shmint.h
--- tigervnc-0.0.91/unix/xserver/Xext/shmint.h.compat 2009-08-04 12:46:20.728924373 +0200
+++ tigervnc-0.0.91/unix/xserver/Xext/shmint.h 2009-08-04 12:48:32.789367347 +0200
@@ -24,12 +24,39 @@
#define _SHMINT_H_
#define _XSHM_SERVER_
-#include <X11/extensions/shmstr.h>
+#include <X11/extensions/shmproto.h>
#include "screenint.h"
#include "pixmap.h"
#include "gc.h"
+#define XSHM_PUT_IMAGE_ARGS \
+ DrawablePtr /* dst */, \
+ GCPtr /* pGC */, \
+ int /* depth */, \
+ unsigned int /* format */, \
+ int /* w */, \
+ int /* h */, \
+ int /* sx */, \
+ int /* sy */, \
+ int /* sw */, \
+ int /* sh */, \
+ int /* dx */, \
+ int /* dy */, \
+ char * /* data */
+
+#define XSHM_CREATE_PIXMAP_ARGS \
+ ScreenPtr /* pScreen */, \
+ int /* width */, \
+ int /* height */, \
+ int /* depth */, \
+ char * /* addr */
+
+typedef struct _ShmFuncs {
+ PixmapPtr (* CreatePixmap)(XSHM_CREATE_PIXMAP_ARGS);
+ void (* PutImage)(XSHM_PUT_IMAGE_ARGS);
+} ShmFuncs, *ShmFuncsPtr;
+
void
ShmRegisterFuncs(ScreenPtr pScreen, ShmFuncsPtr funcs);
diff -up tigervnc-0.0.91/unix/xserver/Xext/sync.c.compat tigervnc-0.0.91/unix/xserver/Xext/sync.c
--- tigervnc-0.0.91/unix/xserver/Xext/sync.c.compat 2009-08-04 12:56:54.327558255 +0200
+++ tigervnc-0.0.91/unix/xserver/Xext/sync.c 2009-08-04 12:57:28.765950708 +0200
@@ -67,9 +67,8 @@ PERFORMANCE OF THIS SOFTWARE.
#include "dixstruct.h"
#include "resource.h"
#include "opaque.h"
-#define _SYNC_SERVER
-#include <X11/extensions/sync.h>
-#include <X11/extensions/syncstr.h>
+#include <X11/extensions/syncproto.h>
+#include "syncsrv.h"
#include <stdio.h>
#if !defined(WIN32)
diff -up tigervnc-0.0.91/unix/xserver/Xext/syncsrv.h.compat tigervnc-0.0.91/unix/xserver/Xext/syncsrv.h
--- tigervnc-0.0.91/unix/xserver/Xext/syncsrv.h.compat 2009-08-04 12:58:20.254370035 +0200
+++ tigervnc-0.0.91/unix/xserver/Xext/syncsrv.h 2009-08-04 12:58:43.898331403 +0200
@@ -0,0 +1,176 @@
+/*
+
+Copyright 1991, 1993, 1994, 1998 The Open Group
+
+Permission to use, copy, modify, distribute, and sell this software and its
+documentation for any purpose is hereby granted without fee, provided that
+the above copyright notice appear in all copies and that both that
+copyright notice and this permission notice appear in supporting
+documentation.
+
+The above copyright notice and this permission notice shall be included in
+all copies or substantial portions of the Software.
+
+THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
+OPEN GROUP BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN
+AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
+CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
+
+Except as contained in this notice, the name of The Open Group shall not be
+used in advertising or otherwise to promote the sale, use or other dealings
+in this Software without prior written authorization from The Open Group.
+
+*/
+
+/***********************************************************
+Copyright 1991,1993 by Digital Equipment Corporation, Maynard, Massachusetts,
+and Olivetti Research Limited, Cambridge, England.
+
+ All Rights Reserved
+
+Permission to use, copy, modify, and distribute this software and its
+documentation for any purpose and without fee is hereby granted,
+provided that the above copyright notice appear in all copies and that
+both that copyright notice and this permission notice appear in
+supporting documentation, and that the names of Digital or Olivetti
+not be used in advertising or publicity pertaining to distribution of the
+software without specific, written prior permission.
+
+DIGITAL AND OLIVETTI DISCLAIM ALL WARRANTIES WITH REGARD TO THIS
+SOFTWARE, INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND
+FITNESS, IN NO EVENT SHALL THEY BE LIABLE FOR ANY SPECIAL, INDIRECT OR
+CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF
+USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR
+OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
+PERFORMANCE OF THIS SOFTWARE.
+
+******************************************************************/
+
+#ifndef _SYNCSRV_H_
+#define _SYNCSRV_H_
+
+#define CARD64 XSyncValue /* XXX temporary! need real 64 bit values for Alpha */
+
+typedef struct _SyncCounter {
+ ClientPtr client; /* Owning client. 0 for system counters */
+ XSyncCounter id; /* resource ID */
+ CARD64 value; /* counter value */
+ struct _SyncTriggerList *pTriglist; /* list of triggers */
+ Bool beingDestroyed; /* in process of going away */
+ struct _SysCounterInfo *pSysCounterInfo; /* NULL if not a system counter */
+} SyncCounter;
+
+/*
+ * The System Counter interface
+ */
+
+typedef enum {
+ XSyncCounterNeverChanges,
+ XSyncCounterNeverIncreases,
+ XSyncCounterNeverDecreases,
+ XSyncCounterUnrestricted
+} SyncCounterType;
+
+typedef struct _SysCounterInfo {
+ char *name;
+ CARD64 resolution;
+ CARD64 bracket_greater;
+ CARD64 bracket_less;
+ SyncCounterType counterType; /* how can this counter change */
+ void (*QueryValue)(
+ pointer /*pCounter*/,
+ CARD64 * /*freshvalue*/
+);
+ void (*BracketValues)(
+ pointer /*pCounter*/,
+ CARD64 * /*lessthan*/,
+ CARD64 * /*greaterthan*/
+);
+} SysCounterInfo;
+
+
+
+typedef struct _SyncTrigger {
+ SyncCounter *pCounter;
+ CARD64 wait_value; /* wait value */
+ unsigned int value_type; /* Absolute or Relative */
+ unsigned int test_type; /* transition or Comparision type */
+ CARD64 test_value; /* trigger event threshold value */
+ Bool (*CheckTrigger)(
+ struct _SyncTrigger * /*pTrigger*/,
+ CARD64 /*newval*/
+ );
+ void (*TriggerFired)(
+ struct _SyncTrigger * /*pTrigger*/
+ );
+ void (*CounterDestroyed)(
+ struct _SyncTrigger * /*pTrigger*/
+ );
+} SyncTrigger;
+
+typedef struct _SyncTriggerList {
+ SyncTrigger *pTrigger;
+ struct _SyncTriggerList *next;
+} SyncTriggerList;
+
+typedef struct _SyncAlarmClientList {
+ ClientPtr client;
+ XID delete_id;
+ struct _SyncAlarmClientList *next;
+} SyncAlarmClientList;
+
+typedef struct _SyncAlarm {
+ SyncTrigger trigger;
+ ClientPtr client;
+ XSyncAlarm alarm_id;
+ CARD64 delta;
+ int events;
+ int state;
+ SyncAlarmClientList *pEventClients;
+} SyncAlarm;
+
+typedef struct {
+ ClientPtr client;
+ CARD32 delete_id;
+ int num_waitconditions;
+} SyncAwaitHeader;
+
+typedef struct {
+ SyncTrigger trigger;
+ CARD64 event_threshold;
+ SyncAwaitHeader *pHeader;
+} SyncAwait;
+
+typedef union {
+ SyncAwaitHeader header;
+ SyncAwait await;
+} SyncAwaitUnion;
+
+
+extern pointer SyncCreateSystemCounter(
+ char * /* name */,
+ CARD64 /* inital_value */,
+ CARD64 /* resolution */,
+ SyncCounterType /* change characterization */,
+ void (* /*QueryValue*/ ) (
+ pointer /* pCounter */,
+ CARD64 * /* pValue_return */), /* XXX prototype */
+ void (* /*BracketValues*/) (
+ pointer /* pCounter */,
+ CARD64 * /* pbracket_less */,
+ CARD64 * /* pbracket_greater */)
+);
+
+extern void SyncChangeCounter(
+ SyncCounter * /* pCounter*/,
+ CARD64 /* new_value */
+);
+
+extern void SyncDestroySystemCounter(
+ pointer pCounter
+);
+extern void InitServertime(void);
+
+#endif /* _SYNCSRV_H_ */
diff -up tigervnc-0.0.91/unix/xserver/Xext/xtest.c.compat tigervnc-0.0.91/unix/xserver/Xext/xtest.c
--- tigervnc-0.0.91/unix/xserver/Xext/xtest.c.compat 2009-08-04 12:58:55.065952028 +0200
+++ tigervnc-0.0.91/unix/xserver/Xext/xtest.c 2009-08-04 12:59:06.039590190 +0200
@@ -43,9 +43,7 @@
#include "dixevents.h"
#include "sleepuntil.h"
#include "mi.h"
-#define _XTEST_SERVER_
-#include <X11/extensions/XTest.h>
-#include <X11/extensions/xteststr.h>
+#include <X11/extensions/xtestproto.h>
#include <X11/extensions/XI.h>
#include <X11/extensions/XIproto.h>
diff -up tigervnc-0.0.91/unix/xserver/Xext/xvdisp.c.compat tigervnc-0.0.91/unix/xserver/Xext/xvdisp.c
--- tigervnc-0.0.91/unix/xserver/Xext/xvdisp.c.compat 2009-08-04 13:00:08.478343287 +0200
+++ tigervnc-0.0.91/unix/xserver/Xext/xvdisp.c 2009-08-04 13:00:19.228751587 +0200
@@ -42,8 +42,7 @@ SOFTWARE.
#include <X11/extensions/Xvproto.h>
#include "xvdix.h"
#ifdef MITSHM
-#define _XSHM_SERVER_
-#include <X11/extensions/shmstr.h>
+#include <X11/extensions/shmproto.h>
#endif
#include "xvdisp.h"

View File

@ -1,32 +0,0 @@
unchanged:
--- unix/vncviewer/vncviewer.man (revision 3902)
+++ unix/vncviewer/vncviewer.man (working copy)
@@ -156,7 +156,9 @@
.B \-LowColorLevel, \-LowColourLevel \fIlevel\fP
Selects the reduced color level to use on slow links. \fIlevel\fP can range
from 0 to 2, 0 meaning 8 colors, 1 meaning 64 colors (the default), 2 meaning
-256 colors.
+256 colors. Note that decision if reduced color level is used is made by
+vncviewer. If you would like to force vncviewer to use reduced color level
+use \fB-AutoSelect=0\fP parameter.
.TP
.B \-PreferredEncoding \fIencoding\fP
only in patch2:
unchanged:
--- unix/vncviewer/vncviewer.cxx (revision 3902)
+++ unix/vncviewer/vncviewer.cxx (working copy)
@@ -337,6 +337,13 @@
&& !::fullColour.hasBeenSet()
&& !::fullColourAlias.hasBeenSet());
}
+ if (!::fullColour.hasBeenSet() && !::fullColourAlias.hasBeenSet()) {
+ // Default to FullColor=0 if AutoSelect=0 && LowColorLevel is set
+ if (!::autoSelect && (::lowColourLevel.hasBeenSet() ||
+ ::lowColourLevelAlias.hasBeenSet())) {
+ ::fullColour.setParam(false);
+ }
+ }
if (!::customCompressLevel.hasBeenSet()) {
// Default to CustomCompressLevel=1 if CompressLevel is used.
::customCompressLevel.setParam(::compressLevel.hasBeenSet());

View File

@ -1,36 +0,0 @@
diff -up tigervnc-1.0.0/unix/xserver/dix/main.c.rh516274 tigervnc-1.0.0/unix/xserver/dix/main.c
--- tigervnc-1.0.0/unix/xserver/dix/main.c.rh516274 2009-10-14 13:10:14.894393124 +0200
+++ tigervnc-1.0.0/unix/xserver/dix/main.c 2009-10-14 13:10:14.904391193 +0200
@@ -125,6 +125,8 @@ extern FontPtr defaultFont;
extern void InitProcVectors(void);
extern Bool CreateGCperDepthArray(void);
+extern void workaroundRHBZ516274(void);
+
#ifndef PANORAMIX
static
#endif
@@ -368,6 +370,7 @@ int main(int argc, char *argv[], char *e
InitCoreDevices();
InitInput(argc, argv);
InitAndStartDevices();
+ workaroundRHBZ516274();
dixSaveScreens(serverClient, SCREEN_SAVER_FORCER, ScreenSaverReset);
diff -up tigervnc-1.0.0/unix/xserver/hw/vnc/XserverDesktop.cc.rh516274 tigervnc-1.0.0/unix/xserver/hw/vnc/XserverDesktop.cc
--- tigervnc-1.0.0/unix/xserver/hw/vnc/XserverDesktop.cc.rh516274 2009-08-20 11:46:42.000000000 +0200
+++ tigervnc-1.0.0/unix/xserver/hw/vnc/XserverDesktop.cc 2009-10-14 13:10:30.936890666 +0200
@@ -1511,3 +1511,12 @@ static int vfbMouseProc(DeviceIntPtr pDe
}
return Success;
}
+
+extern "C" {
+
+void workaroundRHBZ516274(void)
+{
+ CopyKeyClass(vncKeyboardDevice, vncKeyboardDevice->u.master);
+}
+
+};

View File

@ -1,83 +0,0 @@
Index: unix/vncviewer/DesktopWindow.h
===================================================================
--- unix/vncviewer/DesktopWindow.h (revision 3903)
+++ unix/vncviewer/DesktopWindow.h (working copy)
@@ -29,6 +29,7 @@
#include "TXWindow.h"
#include "TXViewport.h"
#include "TXImage.h"
+#include "parameters.h"
class CConn;
@@ -54,6 +55,12 @@
// resetLocalCursor() stops the rendering of the local cursor
void resetLocalCursor();
+ // setNoCursor() sets what to display when no cursor is defined - if dot or
+ // nothing.
+ inline void setNoCursor() {
+ XDefineCursor(dpy, win(), dotWhenNoCursor ? dotCursor : noCursor);
+ }
+
// Methods forwarded from CConn
void setColourMapEntries(int firstColour, int nColours, rdr::U16* rgbs);
void serverCutText(const char* str, rdr::U32 len);
Index: unix/vncviewer/CConn.cxx
===================================================================
--- unix/vncviewer/CConn.cxx (revision 3903)
+++ unix/vncviewer/CConn.cxx (working copy)
@@ -684,6 +684,7 @@
desktop->resetLocalCursor();
}
dotWhenNoCursor.setParam(options.dotWhenNoCursor.checked());
+ desktop->setNoCursor();
checkEncodings();
}
Index: unix/vncviewer/DesktopWindow.cxx
===================================================================
--- unix/vncviewer/DesktopWindow.cxx (revision 3903)
+++ unix/vncviewer/DesktopWindow.cxx (working copy)
@@ -79,7 +79,7 @@
PointerMotionMask | KeyPressMask | KeyReleaseMask |
EnterWindowMask | LeaveWindowMask);
createXCursors();
- XDefineCursor(dpy, win(), dotCursor);
+ setNoCursor();
im = new TXImage(dpy, width(), height());
if (!serverPF.trueColour)
im->setPF(serverPF);
@@ -139,12 +139,9 @@
if (((rdr::U8*)mask)[i]) break;
if (i == mask_len) {
- if (dotWhenNoCursor) {
+ if (dotWhenNoCursor)
vlog.debug("cursor is empty - using dot");
- XDefineCursor(dpy, win(), dotCursor);
- } else {
- XDefineCursor(dpy, win(), noCursor);
- }
+ setNoCursor();
cursorAvailable = false;
return;
}
@@ -206,7 +203,7 @@
void DesktopWindow::resetLocalCursor()
{
hideLocalCursor();
- XDefineCursor(dpy, win(), dotCursor);
+ setNoCursor();
cursorAvailable = false;
}
@@ -226,7 +223,7 @@
if (!getPF().equal(cursor.getPF()) ||
cursor.getRect().is_empty()) {
vlog.error("attempting to render invalid local cursor");
- XDefineCursor(dpy, win(), dotCursor);
+ setNoCursor();
cursorAvailable = false;
return;
}