Update to 1.2.80
- remove deprecated patches - tigervnc-102434.patch - tigervnc-viewer-reparent.patch - tigervnc11-java7.patch - patches merged - tigervnc11-xorg111.patch - tigervnc11-xorg112.patch Signed-off-by: Adam Tkac <atkac@redhat.com>
This commit is contained in:
parent
9dada1da81
commit
5e164de8bf
1
.gitignore
vendored
1
.gitignore
vendored
@ -4,3 +4,4 @@ tigervnc-1.0.90-20100721svn4113.tar.bz2
|
||||
/tigervnc-1.0.90-20110117svn4237.tar.bz2
|
||||
/tigervnc-1.0.90.tar.gz
|
||||
/tigervnc-1.1.0.tar.gz
|
||||
/tigervnc-1.2.80-20120905svn4996.tar.bz2
|
||||
|
2
sources
2
sources
@ -1 +1 @@
|
||||
1a5598b4a2ac530fb51411438959e11e tigervnc-1.1.0.tar.gz
|
||||
ff71586fdd126885dd695516a7771720 tigervnc-1.2.80-20120905svn4996.tar.bz2
|
||||
|
@ -1,66 +0,0 @@
|
||||
diff -up tigervnc-1.0.90-20101208svn4225/unix/vncviewer/CConn.cxx.102434 tigervnc-1.0.90-20101208svn4225/unix/vncviewer/CConn.cxx
|
||||
--- tigervnc-1.0.90-20101208svn4225/unix/vncviewer/CConn.cxx.102434 2010-12-08 15:42:16.000000000 +0100
|
||||
+++ tigervnc-1.0.90-20101208svn4225/unix/vncviewer/CConn.cxx 2010-12-08 17:35:37.898546362 +0100
|
||||
@@ -38,6 +38,8 @@
|
||||
#include <network/TcpSocket.h>
|
||||
#include <cassert>
|
||||
#include <list>
|
||||
+#include <string>
|
||||
+#include <iostream>
|
||||
|
||||
#include "TXViewport.h"
|
||||
#include "DesktopWindow.h"
|
||||
@@ -232,6 +234,15 @@ void CConn::getUserPasswd(char** user, c
|
||||
return;
|
||||
}
|
||||
|
||||
+ /* XXX Who wrote this code? Yes, it is really ugly */
|
||||
+ if (passwdInput) {
|
||||
+ std::string s;
|
||||
+ std::cin >> s;
|
||||
+ *password = strdup(s.c_str());
|
||||
+ if (user) *user = 0;
|
||||
+ return;
|
||||
+ }
|
||||
+
|
||||
const char* secType = secTypeName(csecurity->getType());
|
||||
const char* titlePrefix = _("VNC authentication");
|
||||
unsigned int titleLen = strlen(titlePrefix) + strlen(secType) + 4;
|
||||
diff -up tigervnc-1.0.90-20101208svn4225/unix/vncviewer/parameters.h.102434 tigervnc-1.0.90-20101208svn4225/unix/vncviewer/parameters.h
|
||||
--- tigervnc-1.0.90-20101208svn4225/unix/vncviewer/parameters.h.102434 2009-03-23 17:49:47.000000000 +0100
|
||||
+++ tigervnc-1.0.90-20101208svn4225/unix/vncviewer/parameters.h 2010-12-08 17:34:44.138568781 +0100
|
||||
@@ -42,6 +42,7 @@ extern rfb::BoolParameter customCompress
|
||||
extern rfb::IntParameter compressLevel;
|
||||
extern rfb::BoolParameter noJpeg;
|
||||
extern rfb::IntParameter qualityLevel;
|
||||
+extern rfb::BoolParameter passwdInput;
|
||||
|
||||
extern char aboutText[];
|
||||
extern char* programName;
|
||||
diff -up tigervnc-1.0.90-20101208svn4225/unix/vncviewer/vncviewer.cxx.102434 tigervnc-1.0.90-20101208svn4225/unix/vncviewer/vncviewer.cxx
|
||||
--- tigervnc-1.0.90-20101208svn4225/unix/vncviewer/vncviewer.cxx.102434 2010-11-18 14:33:57.000000000 +0100
|
||||
+++ tigervnc-1.0.90-20101208svn4225/unix/vncviewer/vncviewer.cxx 2010-12-08 17:34:44.138568781 +0100
|
||||
@@ -61,7 +61,7 @@ IntParameter wmDecorationHeight("WMDecor
|
||||
StringParameter passwordFile("PasswordFile",
|
||||
"Password file for VNC authentication", "");
|
||||
AliasParameter passwd("passwd", "Alias for PasswordFile", &passwordFile);
|
||||
-
|
||||
+BoolParameter passwdInput("passwdInput", "Gets password from stdin", false);
|
||||
BoolParameter useLocalCursor("UseLocalCursor",
|
||||
"Render the mouse cursor locally", true);
|
||||
BoolParameter dotWhenNoCursor("DotWhenNoCursor",
|
||||
diff -up tigervnc-1.0.90-20101208svn4225/unix/vncviewer/vncviewer.man.102434 tigervnc-1.0.90-20101208svn4225/unix/vncviewer/vncviewer.man
|
||||
--- tigervnc-1.0.90-20101208svn4225/unix/vncviewer/vncviewer.man.102434 2009-10-07 17:13:00.000000000 +0200
|
||||
+++ tigervnc-1.0.90-20101208svn4225/unix/vncviewer/vncviewer.man 2010-12-08 17:34:44.138568781 +0100
|
||||
@@ -119,6 +119,11 @@ the server, you can specify it here to a
|
||||
"~/.vnc/passwd".
|
||||
|
||||
.TP
|
||||
+.B \-passwdInput \fItrue, false\fP
|
||||
+Force standard vnc dialog to getting password and reads password from stdin.
|
||||
+Default is false(shows dialog window)
|
||||
+
|
||||
+.TP
|
||||
.B \-Shared
|
||||
When you make a connection to a VNC server, all other existing connections are
|
||||
normally closed. This option requests that they be left open, allowing you to
|
@ -1,121 +0,0 @@
|
||||
diff -up tightvnc-1.5.0-20081015svn3022/unix/tx/TXViewport.cxx.viewer-reparent tightvnc-1.5.0-20081015svn3022/unix/tx/TXViewport.cxx
|
||||
--- tightvnc-1.5.0-20081015svn3022/unix/tx/TXViewport.cxx.viewer-reparent 2008-03-14 14:37:09.000000000 +0100
|
||||
+++ tightvnc-1.5.0-20081015svn3022/unix/tx/TXViewport.cxx 2008-10-23 13:11:39.000000000 +0200
|
||||
@@ -44,6 +44,21 @@ TXViewport::~TXViewport()
|
||||
delete vScrollbar;
|
||||
}
|
||||
|
||||
+void TXViewport::reparent(long embed_window)
|
||||
+{
|
||||
+ XReparentWindow(dpy, win(), (Window)embed_window, 0, 0);
|
||||
+ XSelectInput(dpy, embed_window, child->eventMask);
|
||||
+ if (!eventHandler)
|
||||
+ this->setEventHandler(this);
|
||||
+}
|
||||
+
|
||||
+void TXViewport::handleEvent(TXWindow* w, XEvent* ev)
|
||||
+{
|
||||
+ if (child && child->eventHandler)
|
||||
+ ((TXEventHandler *)child->eventHandler)->handleEvent(child, ev);
|
||||
+}
|
||||
+
|
||||
+
|
||||
void TXViewport::setChild(TXWindow* child_)
|
||||
{
|
||||
child = child_;
|
||||
diff -up tightvnc-1.5.0-20081015svn3022/unix/tx/TXViewport.h.viewer-reparent tightvnc-1.5.0-20081015svn3022/unix/tx/TXViewport.h
|
||||
--- tightvnc-1.5.0-20081015svn3022/unix/tx/TXViewport.h.viewer-reparent 2008-03-14 14:37:09.000000000 +0100
|
||||
+++ tightvnc-1.5.0-20081015svn3022/unix/tx/TXViewport.h 2008-10-23 13:11:39.000000000 +0200
|
||||
@@ -32,8 +32,8 @@
|
||||
#include "TXWindow.h"
|
||||
#include "TXScrollbar.h"
|
||||
|
||||
-class TXViewport : public TXWindow, public TXScrollbarCallback,
|
||||
- public rfb::Timer::Callback {
|
||||
+class TXViewport : public TXWindow, public TXScrollbarCallback,
|
||||
+ public TXEventHandler, public rfb::Timer::Callback {
|
||||
public:
|
||||
TXViewport(Display* dpy_, int width, int height, TXWindow* parent_=0);
|
||||
virtual ~TXViewport();
|
||||
@@ -59,6 +59,12 @@ public:
|
||||
// normally.
|
||||
bool bumpScrollEvent(XMotionEvent* ev);
|
||||
|
||||
+ // reparent the viewport into a new window
|
||||
+ void reparent(long embed_window);
|
||||
+
|
||||
+ // event handler
|
||||
+ void handleEvent(TXWindow* w, XEvent* ev);
|
||||
+
|
||||
private:
|
||||
virtual void resizeNotify();
|
||||
virtual void scrollbarPos(int x, int y, TXScrollbar* sb);
|
||||
diff -up tightvnc-1.5.0-20081015svn3022/unix/tx/TXWindow.h.viewer-reparent tightvnc-1.5.0-20081015svn3022/unix/tx/TXWindow.h
|
||||
--- tightvnc-1.5.0-20081015svn3022/unix/tx/TXWindow.h.viewer-reparent 2006-05-18 13:08:21.000000000 +0200
|
||||
+++ tightvnc-1.5.0-20081015svn3022/unix/tx/TXWindow.h 2008-10-23 13:11:39.000000000 +0200
|
||||
@@ -183,6 +183,9 @@ public:
|
||||
|
||||
Display* const dpy;
|
||||
|
||||
+ TXEventHandler* eventHandler;
|
||||
+ long eventMask;
|
||||
+
|
||||
int xPad, yPad, bevel;
|
||||
|
||||
private:
|
||||
@@ -195,9 +198,7 @@ private:
|
||||
TXWindow* parent;
|
||||
Window win_;
|
||||
int width_, height_;
|
||||
- TXEventHandler* eventHandler;
|
||||
TXDeleteWindowCallback* dwc;
|
||||
- long eventMask;
|
||||
XSizeHints sizeHints;
|
||||
std::map<Atom,Time> selectionOwnTime;
|
||||
std::map<Atom,bool> selectionOwner_;
|
||||
diff -up tightvnc-1.5.0-20081015svn3022/unix/vncviewer/CConn.cxx.viewer-reparent tightvnc-1.5.0-20081015svn3022/unix/vncviewer/CConn.cxx
|
||||
--- tightvnc-1.5.0-20081015svn3022/unix/vncviewer/CConn.cxx.viewer-reparent 2008-10-23 13:11:39.000000000 +0200
|
||||
+++ tightvnc-1.5.0-20081015svn3022/unix/vncviewer/CConn.cxx 2008-10-23 13:11:39.000000000 +0200
|
||||
@@ -647,10 +647,18 @@ void CConn::recreateViewport()
|
||||
|
||||
void CConn::reconfigureViewport()
|
||||
{
|
||||
+ const char * par = embedParent.getValueStr();
|
||||
viewport->setMaxSize(cp.width, cp.height);
|
||||
if (fullScreen) {
|
||||
viewport->resize(DisplayWidth(dpy,DefaultScreen(dpy)),
|
||||
DisplayHeight(dpy,DefaultScreen(dpy)));
|
||||
+ } else if (strlen(par) != 0) {
|
||||
+ XWindowAttributes win_attr;
|
||||
+ Window w = strtol(par, (char **)NULL, 0);
|
||||
+
|
||||
+ XGetWindowAttributes(dpy, w, &win_attr);
|
||||
+ viewport->reparent(w);
|
||||
+ viewport->resize(win_attr.width, win_attr.height);
|
||||
} else {
|
||||
int w = cp.width;
|
||||
int h = cp.height;
|
||||
diff -up tightvnc-1.5.0-20081015svn3022/unix/vncviewer/parameters.h.viewer-reparent tightvnc-1.5.0-20081015svn3022/unix/vncviewer/parameters.h
|
||||
--- tightvnc-1.5.0-20081015svn3022/unix/vncviewer/parameters.h.viewer-reparent 2008-10-23 13:11:39.000000000 +0200
|
||||
+++ tightvnc-1.5.0-20081015svn3022/unix/vncviewer/parameters.h 2008-10-23 13:12:41.000000000 +0200
|
||||
@@ -42,6 +42,7 @@ extern rfb::IntParameter compressLevel;
|
||||
extern rfb::BoolParameter noJpeg;
|
||||
extern rfb::IntParameter qualityLevel;
|
||||
extern rfb::BoolParameter passwdInput;
|
||||
+extern rfb::StringParameter embedParent;
|
||||
|
||||
extern char aboutText[];
|
||||
extern char* programName;
|
||||
diff -up tightvnc-1.5.0-20081015svn3022/unix/vncviewer/vncviewer.cxx.viewer-reparent tightvnc-1.5.0-20081015svn3022/unix/vncviewer/vncviewer.cxx
|
||||
--- tightvnc-1.5.0-20081015svn3022/unix/vncviewer/vncviewer.cxx.viewer-reparent 2008-10-23 13:11:39.000000000 +0200
|
||||
+++ tightvnc-1.5.0-20081015svn3022/unix/vncviewer/vncviewer.cxx 2008-10-23 13:12:59.000000000 +0200
|
||||
@@ -106,6 +106,9 @@ StringParameter displayname("display", "
|
||||
|
||||
StringParameter via("via", "Gateway to tunnel via", "");
|
||||
|
||||
+/* Support for reparenting */
|
||||
+StringParameter embedParent("Parent", "X Window to use as a parent", "");
|
||||
+
|
||||
BoolParameter customCompressLevel("CustomCompressLevel",
|
||||
"Use custom compression level. "
|
||||
"Default if CompressLevel is specified.", false);
|
@ -1,17 +1,18 @@
|
||||
%global snap 20120905svn4996
|
||||
|
||||
Name: tigervnc
|
||||
Version: 1.1.0
|
||||
Release: 6%{?dist}
|
||||
Version: 1.2.80
|
||||
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.service
|
||||
Source2: vncserver.sysconfig
|
||||
Source6: vncviewer.desktop
|
||||
Source7: xserver110.patch
|
||||
BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n)
|
||||
|
||||
BuildRequires: libX11-devel, automake, autoconf, libtool, gettext, gettext-autopoint
|
||||
@ -23,7 +24,7 @@ BuildRequires: mesa-libGL-devel, libXinerama-devel, ImageMagick
|
||||
BuildRequires: freetype-devel, libXdmcp-devel
|
||||
BuildRequires: desktop-file-utils, java-devel, jpackage-utils
|
||||
BuildRequires: libjpeg-turbo-devel, gnutls-devel, pam-devel
|
||||
BuildRequires: systemd-units
|
||||
BuildRequires: systemd-units, cmake, fltk-devel
|
||||
|
||||
Requires(post): systemd-units systemd-sysv chkconfig coreutils
|
||||
Requires(preun):systemd-units
|
||||
@ -36,15 +37,10 @@ Obsoletes: vnc < 4.1.3-2, vnc-libs < 4.1.3-2
|
||||
Provides: tightvnc = 1.5.0-0.15.20090204svn3586
|
||||
Obsoletes: tightvnc < 1.5.0-0.15.20090204svn3586
|
||||
|
||||
Patch0: tigervnc-102434.patch
|
||||
Patch4: tigervnc-cookie.patch
|
||||
Patch8: tigervnc-viewer-reparent.patch
|
||||
Patch10: tigervnc11-ldnow.patch
|
||||
Patch11: tigervnc11-gethomedir.patch
|
||||
Patch13: tigervnc11-rh692048.patch
|
||||
Patch16: tigervnc11-xorg111.patch
|
||||
Patch17: tigervnc11-xorg112.patch
|
||||
Patch18: tigervnc11-java7.patch
|
||||
|
||||
%description
|
||||
Virtual Network Computing (VNC) is a remote display system which
|
||||
@ -124,38 +120,26 @@ BuildArch: noarch
|
||||
This package contains license of the TigerVNC suite
|
||||
|
||||
%prep
|
||||
%setup -q -n %{name}-%{version}
|
||||
%setup -q -n %{name}-%{version}-%{snap}
|
||||
|
||||
%patch0 -p1 -b .102434
|
||||
%patch4 -p1 -b .cookie
|
||||
%patch8 -p1 -b .viewer-reparent
|
||||
%patch10 -p1 -b .ldnow
|
||||
%patch11 -p1 -b .gethomedir
|
||||
%patch13 -p1 -b .rh692048
|
||||
|
||||
cp -r /usr/share/xorg-x11-server-source/* unix/xserver
|
||||
%patch16 -p1 -b .xorg111
|
||||
pushd unix/xserver
|
||||
for all in `find . -type f -perm -001`; do
|
||||
chmod -x "$all"
|
||||
done
|
||||
patch -p1 -b --suffix .vnc < %{SOURCE7}
|
||||
%patch17 -p1 -b .xorg112
|
||||
patch -p1 -b --suffix .vnc < ../xserver113.patch
|
||||
popd
|
||||
|
||||
%patch18 -p1 -b .java7
|
||||
|
||||
# Use newer gettext
|
||||
sed -i 's/AM_GNU_GETTEXT_VERSION.*/AM_GNU_GETTEXT_VERSION([0.18.1])/' \
|
||||
configure.ac
|
||||
|
||||
%build
|
||||
export CFLAGS="$RPM_OPT_FLAGS"
|
||||
export CXXFLAGS="$CFLAGS"
|
||||
|
||||
autoreconf -fiv
|
||||
%configure --disable-static --with-system-jpeg --without-simd
|
||||
|
||||
%{cmake} .
|
||||
make %{?_smp_mflags}
|
||||
|
||||
pushd unix/xserver
|
||||
@ -176,7 +160,8 @@ autoreconf -fiv
|
||||
--with-dri-driver-path=%{_libdir}/dri \
|
||||
--without-dtrace \
|
||||
--disable-unit-tests \
|
||||
--disable-devel-docs
|
||||
--disable-devel-docs \
|
||||
--disable-selective-werror
|
||||
|
||||
make %{?_smp_mflags}
|
||||
popd
|
||||
@ -187,7 +172,8 @@ make
|
||||
popd
|
||||
|
||||
# Build Java applet
|
||||
pushd java/src/com/tigervnc/vncviewer/
|
||||
pushd java
|
||||
%{cmake} .
|
||||
make
|
||||
popd
|
||||
|
||||
@ -222,10 +208,10 @@ desktop-file-install \
|
||||
%{SOURCE6}
|
||||
|
||||
# Install Java applet
|
||||
pushd java/src/com/tigervnc/vncviewer/
|
||||
pushd java
|
||||
mkdir -p $RPM_BUILD_ROOT%{_datadir}/vnc/classes
|
||||
install -m755 VncViewer.jar $RPM_BUILD_ROOT%{_datadir}/vnc/classes
|
||||
install -m644 index.vnc $RPM_BUILD_ROOT%{_datadir}/vnc/classes
|
||||
install -m644 com/tigervnc/vncviewer/index.vnc $RPM_BUILD_ROOT%{_datadir}/vnc/classes
|
||||
popd
|
||||
|
||||
%find_lang %{name} %{name}.lang
|
||||
@ -293,13 +279,23 @@ fi
|
||||
|
||||
%files server-applet
|
||||
%defattr(-,root,root,-)
|
||||
%doc java/src/com/tigervnc/vncviewer/README
|
||||
%doc java/com/tigervnc/vncviewer/README
|
||||
%{_datadir}/vnc/classes/*
|
||||
|
||||
%files license
|
||||
%doc LICENCE.TXT
|
||||
|
||||
%changelog
|
||||
* Fri Aug 17 2012 Adam Tkac <atkac redhat com> 1.2.80-0.1.20120905svn4996
|
||||
- update to 1.2.80
|
||||
- remove deprecated patches
|
||||
- tigervnc-102434.patch
|
||||
- tigervnc-viewer-reparent.patch
|
||||
- tigervnc11-java7.patch
|
||||
- patches merged
|
||||
- tigervnc11-xorg111.patch
|
||||
- tigervnc11-xorg112.patch
|
||||
|
||||
* Wed Apr 04 2012 Adam Jackson <ajax@redhat.com> 1.1.0-6
|
||||
- RHEL exclusion for -server-module on ppc* too
|
||||
|
||||
|
@ -1,15 +1,15 @@
|
||||
diff -up tigervnc-1.0.90/unix/xserver/hw/vnc/Makefile.am.gethomedir tigervnc-1.0.90/unix/xserver/hw/vnc/Makefile.am
|
||||
--- tigervnc-1.0.90/unix/xserver/hw/vnc/Makefile.am.gethomedir 2011-03-22 10:53:05.206429397 +0100
|
||||
+++ tigervnc-1.0.90/unix/xserver/hw/vnc/Makefile.am 2011-03-22 10:53:30.550388457 +0100
|
||||
diff -up tigervnc-1.2.0/unix/xserver/hw/vnc/Makefile.am.gethomedir tigervnc-1.2.0/unix/xserver/hw/vnc/Makefile.am
|
||||
--- tigervnc-1.2.0/unix/xserver/hw/vnc/Makefile.am.gethomedir 2012-08-22 15:52:01.876216608 +0200
|
||||
+++ tigervnc-1.2.0/unix/xserver/hw/vnc/Makefile.am 2012-08-22 15:52:45.973143684 +0200
|
||||
@@ -5,6 +5,7 @@ RFB_LIB=$(LIB_DIR)/rfb/librfb.la
|
||||
RDR_LIB=$(LIB_DIR)/rdr/librdr.la $(GNUTLS_LDFLAGS)
|
||||
RDR_LIB=$(LIB_DIR)/rdr/librdr.la
|
||||
NETWORK_LIB=$(LIB_DIR)/network/libnetwork.la
|
||||
XREGION_LIB=$(LIB_DIR)/Xregion/libXregion.la
|
||||
+OS_LIB=$(LIB_DIR)/os/libos.la
|
||||
COMMON_LIBS=$(NETWORK_LIB) $(RFB_LIB) $(RDR_LIB) $(XREGION_LIB)
|
||||
|
||||
noinst_LTLIBRARIES = libvnccommon.la
|
||||
@@ -52,7 +53,7 @@ libvnc_la_CPPFLAGS = $(XVNC_CPPFLAGS) -I
|
||||
@@ -55,7 +56,7 @@ libvnc_la_CPPFLAGS = $(XVNC_CPPFLAGS) -I
|
||||
|
||||
libvnc_la_LDFLAGS = -module -avoid-version -Wl,-z,now
|
||||
|
||||
|
@ -1,12 +0,0 @@
|
||||
diff -up tigervnc-1.1.0/java/src/com/tigervnc/vncviewer/Makefile.java7 tigervnc-1.1.0/java/src/com/tigervnc/vncviewer/Makefile
|
||||
--- tigervnc-1.1.0/java/src/com/tigervnc/vncviewer/Makefile.java7 2012-03-27 14:20:20.107009796 +0200
|
||||
+++ tigervnc-1.1.0/java/src/com/tigervnc/vncviewer/Makefile 2012-03-27 14:20:25.959966078 +0200
|
||||
@@ -4,7 +4,7 @@
|
||||
|
||||
CP = cp
|
||||
JC = javac
|
||||
-JCFLAGS = -target 1.5 -classpath ../../../
|
||||
+JCFLAGS = -target 1.7 -classpath ../../../
|
||||
JAR = jar
|
||||
ARCHIVE = VncViewer.jar
|
||||
MANIFEST = MANIFEST.MF
|
@ -1,9 +1,9 @@
|
||||
diff -up tigervnc-1.0.90-20100721svn4113/unix/xserver/hw/vnc/Makefile.am.ldnow tigervnc-1.0.90-20100721svn4113/unix/xserver/hw/vnc/Makefile.am
|
||||
--- tigervnc-1.0.90-20100721svn4113/unix/xserver/hw/vnc/Makefile.am.ldnow 2010-05-18 15:48:02.000000000 +0200
|
||||
+++ tigervnc-1.0.90-20100721svn4113/unix/xserver/hw/vnc/Makefile.am 2010-07-21 17:05:45.242942531 +0200
|
||||
@@ -50,7 +50,7 @@ libvnc_la_CPPFLAGS = $(XVNC_CPPFLAGS) -I
|
||||
-I$(top_srcdir)/hw/xfree86/os-support/bus \
|
||||
-I$(includedir)/pixman-1 -I$(includedir)
|
||||
diff -up tigervnc-1.2.0/unix/xserver/hw/vnc/Makefile.am.ldnow tigervnc-1.2.0/unix/xserver/hw/vnc/Makefile.am
|
||||
--- tigervnc-1.2.0/unix/xserver/hw/vnc/Makefile.am.ldnow 2011-10-31 09:14:40.000000000 +0100
|
||||
+++ tigervnc-1.2.0/unix/xserver/hw/vnc/Makefile.am 2012-08-22 15:51:47.013241342 +0200
|
||||
@@ -53,7 +53,7 @@ libvnc_la_CPPFLAGS = $(XVNC_CPPFLAGS) -I
|
||||
-I$(top_srcdir)/include \
|
||||
${XSERVERLIBS_CFLAGS} -I$(includedir)
|
||||
|
||||
-libvnc_la_LDFLAGS = -module -avoid-version
|
||||
+libvnc_la_LDFLAGS = -module -avoid-version -Wl,-z,now
|
||||
|
@ -1,235 +0,0 @@
|
||||
diff -up tigervnc-1.1.0/unix/xserver/hw/vnc/Input.cc.xorg111 tigervnc-1.1.0/unix/xserver/hw/vnc/Input.cc
|
||||
--- tigervnc-1.1.0/unix/xserver/hw/vnc/Input.cc.xorg111 2011-08-09 23:16:36.000000000 +0200
|
||||
+++ tigervnc-1.1.0/unix/xserver/hw/vnc/Input.cc 2011-11-11 11:59:14.226819903 +0100
|
||||
@@ -82,10 +82,11 @@ static KeyCode KeysymToKeycode(KeySymsPt
|
||||
/* Event queue is shared between all devices. */
|
||||
#if XORG == 15
|
||||
static xEvent *eventq = NULL;
|
||||
-#else
|
||||
+#elif XORG < 111
|
||||
static EventList *eventq = NULL;
|
||||
#endif
|
||||
|
||||
+#if XORG < 111
|
||||
static void initEventq(void)
|
||||
{
|
||||
/* eventq is never free()-ed because it exists during server life. */
|
||||
@@ -100,7 +101,9 @@ static void initEventq(void)
|
||||
#endif
|
||||
}
|
||||
}
|
||||
+#endif /* XORG < 111 */
|
||||
|
||||
+#if XORG < 111
|
||||
static void enqueueEvents(DeviceIntPtr dev, int n)
|
||||
{
|
||||
int i;
|
||||
@@ -122,6 +125,7 @@ static void enqueueEvents(DeviceIntPtr d
|
||||
);
|
||||
}
|
||||
}
|
||||
+#endif /* XORG < 111 */
|
||||
|
||||
InputDevice::InputDevice(rfb::VNCServerST *_server)
|
||||
: server(_server), oldButtonMask(0)
|
||||
@@ -141,12 +145,17 @@ InputDevice::InputDevice(rfb::VNCServerS
|
||||
keyboardProc, TRUE);
|
||||
RegisterKeyboardDevice(keyboardDev);
|
||||
#endif
|
||||
+#if XORG < 111
|
||||
initEventq();
|
||||
+#endif
|
||||
}
|
||||
|
||||
void InputDevice::PointerButtonAction(int buttonMask)
|
||||
{
|
||||
- int i, n;
|
||||
+ int i;
|
||||
+#if XORG < 111
|
||||
+ int n;
|
||||
+#endif
|
||||
#if XORG >= 110
|
||||
ValuatorMask mask;
|
||||
#endif
|
||||
@@ -160,13 +169,17 @@ void InputDevice::PointerButtonAction(in
|
||||
#if XORG < 110
|
||||
n = GetPointerEvents(eventq, pointerDev, action, i + 1,
|
||||
POINTER_RELATIVE, 0, 0, NULL);
|
||||
-#else
|
||||
+ enqueueEvents(pointerDev, n);
|
||||
+#elif XORG < 111
|
||||
valuator_mask_set_range(&mask, 0, 0, NULL);
|
||||
n = GetPointerEvents(eventq, pointerDev, action, i + 1,
|
||||
POINTER_RELATIVE, &mask);
|
||||
-#endif
|
||||
enqueueEvents(pointerDev, n);
|
||||
-
|
||||
+#else
|
||||
+ valuator_mask_set_range(&mask, 0, 0, NULL);
|
||||
+ QueuePointerEvents(pointerDev, action, i + 1,
|
||||
+ POINTER_RELATIVE, &mask);
|
||||
+#endif
|
||||
}
|
||||
}
|
||||
|
||||
@@ -175,7 +188,10 @@ void InputDevice::PointerButtonAction(in
|
||||
|
||||
void InputDevice::PointerMove(const rfb::Point &pos)
|
||||
{
|
||||
- int n, valuators[2];
|
||||
+ int valuators[2];
|
||||
+#if XORG < 111
|
||||
+ int n;
|
||||
+#endif
|
||||
#if XORG >= 110
|
||||
ValuatorMask mask;
|
||||
#endif
|
||||
@@ -190,12 +206,16 @@ void InputDevice::PointerMove(const rfb:
|
||||
#if XORG < 110
|
||||
n = GetPointerEvents(eventq, pointerDev, MotionNotify, 0, POINTER_ABSOLUTE, 0,
|
||||
2, valuators);
|
||||
-#else
|
||||
+ enqueueEvents(pointerDev, n);
|
||||
+#elif XORG < 111
|
||||
valuator_mask_set_range(&mask, 0, 2, valuators);
|
||||
n = GetPointerEvents(eventq, pointerDev, MotionNotify, 0, POINTER_ABSOLUTE,
|
||||
&mask);
|
||||
-#endif
|
||||
enqueueEvents(pointerDev, n);
|
||||
+#else
|
||||
+ valuator_mask_set_range(&mask, 0, 2, valuators);
|
||||
+ QueuePointerEvents(pointerDev, MotionNotify, 0, POINTER_ABSOLUTE, &mask);
|
||||
+#endif
|
||||
|
||||
cursorPos = pos;
|
||||
}
|
||||
@@ -299,14 +319,20 @@ void InputDevice::initInputDevice(void)
|
||||
static inline void pressKey(DeviceIntPtr dev, int kc, bool down, const char *msg)
|
||||
{
|
||||
int action;
|
||||
+#if XORG < 111
|
||||
unsigned int n;
|
||||
+#endif
|
||||
|
||||
if (msg != NULL)
|
||||
vlog.debug("%s %d %s", msg, kc, down ? "down" : "up");
|
||||
|
||||
action = down ? KeyPress : KeyRelease;
|
||||
- n = GetKeyboardEvents(eventq, dev, action, kc);
|
||||
+#if XORG < 111
|
||||
+ n = GetKeyboardEvents(eventq, dev, action, kc, NULL);
|
||||
enqueueEvents(dev, n);
|
||||
+#else
|
||||
+ QueueKeyboardEvents(dev, action, kc, NULL);
|
||||
+#endif
|
||||
}
|
||||
|
||||
#define IS_PRESSED(keyc, keycode) \
|
||||
@@ -341,8 +367,11 @@ public:
|
||||
int state, maxKeysPerMod, keycode;
|
||||
#if XORG >= 17
|
||||
KeyCode *modmap = NULL;
|
||||
-
|
||||
+#if XORG >= 111
|
||||
+ state = XkbStateFieldFromRec(&dev->master->key->xkbInfo->state);
|
||||
+#else /* XORG >= 111 */
|
||||
state = XkbStateFieldFromRec(&dev->u.master->key->xkbInfo->state);
|
||||
+#endif /* XORG >= 111 */
|
||||
#else
|
||||
KeyClassPtr keyc = dev->key;
|
||||
state = keyc->state;
|
||||
@@ -380,7 +409,11 @@ public:
|
||||
#if XORG >= 17
|
||||
KeyCode *modmap = NULL;
|
||||
|
||||
+#if XORG >= 111
|
||||
+ keyc = dev->master->key;
|
||||
+#else /* XORG >= 111 */
|
||||
keyc = dev->u.master->key;
|
||||
+#endif /* XORG >= 111 */
|
||||
state = XkbStateFieldFromRec(&keyc->xkbInfo->state);
|
||||
#else
|
||||
keyc = dev->key;
|
||||
@@ -596,7 +629,11 @@ void InputDevice::keyEvent(rdr::U32 keys
|
||||
}
|
||||
|
||||
#if XORG >= 17
|
||||
+#if XORG >= 111
|
||||
+ keyc = keyboardDev->master->key;
|
||||
+#else /* XORG >= 111 */
|
||||
keyc = keyboardDev->u.master->key;
|
||||
+#endif /* XORG >= 111 */
|
||||
|
||||
keymap = XkbGetCoreMap(keyboardDev);
|
||||
if (!keymap) {
|
||||
@@ -753,7 +790,11 @@ ModeSwitchFound:
|
||||
XkbApplyMappingChange(keyboardDev, keymap, minKeyCode,
|
||||
maxKeyCode - minKeyCode + 1,
|
||||
NULL, serverClient);
|
||||
+#if XORG >= 111
|
||||
+ XkbCopyDeviceKeymap(keyboardDev->master, keyboardDev);
|
||||
+#else
|
||||
XkbCopyDeviceKeymap(keyboardDev->u.master, keyboardDev);
|
||||
+#endif
|
||||
#endif /* XORG < 17 */
|
||||
break;
|
||||
}
|
||||
diff -up tigervnc-1.1.0/unix/xserver/hw/vnc/xorg-version.h.xorg111 tigervnc-1.1.0/unix/xserver/hw/vnc/xorg-version.h
|
||||
--- tigervnc-1.1.0/unix/xserver/hw/vnc/xorg-version.h.xorg111 2011-08-09 23:16:36.000000000 +0200
|
||||
+++ tigervnc-1.1.0/unix/xserver/hw/vnc/xorg-version.h 2011-11-11 11:55:32.255835319 +0100
|
||||
@@ -36,6 +36,8 @@
|
||||
#define XORG 19
|
||||
#elif XORG_VERSION_CURRENT < ((1 * 10000000) + (10 * 100000) + (99 * 1000))
|
||||
#define XORG 110
|
||||
+#elif XORG_VERSION_CURRENT < ((1 * 10000000) + (11 * 100000) + (99 * 1000))
|
||||
+#define XORG 111
|
||||
#else
|
||||
#error "X.Org newer than 1.10 is not supported"
|
||||
#endif
|
||||
diff -up tigervnc-1.1.0/unix/xserver/hw/vnc/xvnc.cc.xorg111 tigervnc-1.1.0/unix/xserver/hw/vnc/xvnc.cc
|
||||
--- tigervnc-1.1.0/unix/xserver/hw/vnc/xvnc.cc.xorg111 2011-08-09 23:16:36.000000000 +0200
|
||||
+++ tigervnc-1.1.0/unix/xserver/hw/vnc/xvnc.cc 2011-11-11 11:55:32.256835319 +0100
|
||||
@@ -211,7 +211,11 @@ static void vfbFreeFramebufferMemory(vfb
|
||||
|
||||
extern "C" {
|
||||
|
||||
+#if XORG < 111
|
||||
void ddxGiveUp()
|
||||
+#else
|
||||
+void ddxGiveUp(enum ExitCode error)
|
||||
+#endif
|
||||
{
|
||||
int i;
|
||||
|
||||
@@ -221,9 +225,17 @@ void ddxGiveUp()
|
||||
}
|
||||
|
||||
void
|
||||
+#if XORG < 111
|
||||
AbortDDX()
|
||||
+#else
|
||||
+AbortDDX(enum ExitCode error)
|
||||
+#endif
|
||||
{
|
||||
+#if XORG < 111
|
||||
ddxGiveUp();
|
||||
+#else
|
||||
+ ddxGiveUp(error);
|
||||
+#endif
|
||||
}
|
||||
|
||||
#ifdef __DARWIN__
|
||||
@@ -668,8 +680,13 @@ vfbUninstallColormap(ColormapPtr pmap)
|
||||
{
|
||||
if (pmap->mid != pmap->pScreen->defColormap)
|
||||
{
|
||||
+#if XORG < 111
|
||||
curpmap = (ColormapPtr) LookupIDByType(pmap->pScreen->defColormap,
|
||||
RT_COLORMAP);
|
||||
+#else
|
||||
+ dixLookupResourceByType((pointer *) &curpmap, pmap->pScreen->defColormap,
|
||||
+ RT_COLORMAP, serverClient, DixUnknownAccess);
|
||||
+#endif
|
||||
(*pmap->pScreen->InstallColormap)(curpmap);
|
||||
}
|
||||
}
|
@ -1,429 +0,0 @@
|
||||
diff -up xserver/hw/vnc/vncExtInit.cc.xorg112 xserver/hw/vnc/vncExtInit.cc
|
||||
--- xserver/hw/vnc/vncExtInit.cc.xorg112 2011-08-09 23:16:36.000000000 +0200
|
||||
+++ xserver/hw/vnc/vncExtInit.cc 2012-03-27 12:54:56.937271323 +0200
|
||||
@@ -56,6 +56,7 @@ extern "C" {
|
||||
#include "XserverDesktop.h"
|
||||
#include "vncHooks.h"
|
||||
#include "vncExtInit.h"
|
||||
+#include "xorg-version.h"
|
||||
|
||||
extern "C" {
|
||||
|
||||
@@ -360,10 +361,16 @@ void vncClientCutText(const char* str, i
|
||||
ev.window = cur->window;
|
||||
ev.time = GetTimeInMillis();
|
||||
if (cur->client->swapped) {
|
||||
+#if XORG < 112
|
||||
int n;
|
||||
swaps(&ev.sequenceNumber, n);
|
||||
swapl(&ev.window, n);
|
||||
swapl(&ev.time, n);
|
||||
+#else
|
||||
+ swaps(&ev.sequenceNumber);
|
||||
+ swapl(&ev.window);
|
||||
+ swapl(&ev.time);
|
||||
+#endif
|
||||
}
|
||||
WriteToClient(cur->client, sizeof(xVncExtClientCutTextNotifyEvent),
|
||||
(char *)&ev);
|
||||
@@ -406,9 +413,14 @@ void vncQueryConnect(XserverDesktop* des
|
||||
ev.sequenceNumber = cur->client->sequence;
|
||||
ev.window = cur->window;
|
||||
if (cur->client->swapped) {
|
||||
+#if XORG < 112
|
||||
int n;
|
||||
swaps(&ev.sequenceNumber, n);
|
||||
swapl(&ev.window, n);
|
||||
+#else
|
||||
+ swaps(&ev.sequenceNumber);
|
||||
+ swapl(&ev.window);
|
||||
+#endif
|
||||
}
|
||||
WriteToClient(cur->client, sizeof(xVncExtQueryConnectNotifyEvent),
|
||||
(char *)&ev);
|
||||
@@ -449,10 +461,16 @@ static void SendSelectionChangeEvent(Ato
|
||||
ev.window = cur->window;
|
||||
ev.selection = selection;
|
||||
if (cur->client->swapped) {
|
||||
+#if XORG < 112
|
||||
int n;
|
||||
swaps(&ev.sequenceNumber, n);
|
||||
swapl(&ev.window, n);
|
||||
swapl(&ev.selection, n);
|
||||
+#else
|
||||
+ swaps(&ev.sequenceNumber);
|
||||
+ swapl(&ev.window);
|
||||
+ swapl(&ev.selection);
|
||||
+#endif
|
||||
}
|
||||
WriteToClient(cur->client, sizeof(xVncExtSelectionChangeNotifyEvent),
|
||||
(char *)&ev);
|
||||
@@ -473,7 +491,6 @@ static int ProcVncExtSetParam(ClientPtr
|
||||
param.buf[stuff->paramLen] = 0;
|
||||
|
||||
xVncExtSetParamReply rep;
|
||||
- int n;
|
||||
rep.type = X_Reply;
|
||||
rep.length = 0;
|
||||
rep.success = 0;
|
||||
@@ -514,8 +531,14 @@ static int ProcVncExtSetParam(ClientPtr
|
||||
|
||||
deny:
|
||||
if (client->swapped) {
|
||||
+#if XORG < 112
|
||||
+ int n;
|
||||
swaps(&rep.sequenceNumber, n);
|
||||
swapl(&rep.length, n);
|
||||
+#else
|
||||
+ swaps(&rep.sequenceNumber);
|
||||
+ swapl(&rep.length);
|
||||
+#endif
|
||||
}
|
||||
WriteToClient(client, sizeof(xVncExtSetParamReply), (char *)&rep);
|
||||
return (client->noClientException);
|
||||
@@ -523,9 +546,13 @@ deny:
|
||||
|
||||
static int SProcVncExtSetParam(ClientPtr client)
|
||||
{
|
||||
- register char n;
|
||||
REQUEST(xVncExtSetParamReq);
|
||||
+#if XORG < 112
|
||||
+ register char n;
|
||||
swaps(&stuff->length, n);
|
||||
+#else
|
||||
+ swaps(&stuff->length);
|
||||
+#endif
|
||||
REQUEST_AT_LEAST_SIZE(xVncExtSetParamReq);
|
||||
return ProcVncExtSetParam(client);
|
||||
}
|
||||
@@ -539,7 +566,6 @@ static int ProcVncExtGetParam(ClientPtr
|
||||
param.buf[stuff->paramLen] = 0;
|
||||
|
||||
xVncExtGetParamReply rep;
|
||||
- int n;
|
||||
rep.type = X_Reply;
|
||||
rep.sequenceNumber = client->sequence;
|
||||
rep.success = 0;
|
||||
@@ -557,9 +583,16 @@ static int ProcVncExtGetParam(ClientPtr
|
||||
rep.length = (len + 3) >> 2;
|
||||
rep.valueLen = len;
|
||||
if (client->swapped) {
|
||||
+#if XORG < 112
|
||||
+ int n;
|
||||
swaps(&rep.sequenceNumber, n);
|
||||
swapl(&rep.length, n);
|
||||
swaps(&rep.valueLen, n);
|
||||
+#else
|
||||
+ swaps(&rep.sequenceNumber);
|
||||
+ swapl(&rep.length);
|
||||
+ swaps(&rep.valueLen);
|
||||
+#endif
|
||||
}
|
||||
WriteToClient(client, sizeof(xVncExtGetParamReply), (char *)&rep);
|
||||
if (value)
|
||||
@@ -570,9 +603,13 @@ static int ProcVncExtGetParam(ClientPtr
|
||||
|
||||
static int SProcVncExtGetParam(ClientPtr client)
|
||||
{
|
||||
- register char n;
|
||||
REQUEST(xVncExtGetParamReq);
|
||||
+#if XORG < 112
|
||||
+ register char n;
|
||||
swaps(&stuff->length, n);
|
||||
+#else
|
||||
+ swaps(&stuff->length);
|
||||
+#endif
|
||||
REQUEST_AT_LEAST_SIZE(xVncExtGetParamReq);
|
||||
return ProcVncExtGetParam(client);
|
||||
}
|
||||
@@ -586,7 +623,6 @@ static int ProcVncExtGetParamDesc(Client
|
||||
param.buf[stuff->paramLen] = 0;
|
||||
|
||||
xVncExtGetParamDescReply rep;
|
||||
- int n;
|
||||
rep.type = X_Reply;
|
||||
rep.sequenceNumber = client->sequence;
|
||||
rep.success = 0;
|
||||
@@ -601,9 +637,16 @@ static int ProcVncExtGetParamDesc(Client
|
||||
rep.length = (len + 3) >> 2;
|
||||
rep.descLen = len;
|
||||
if (client->swapped) {
|
||||
+#if XORG < 112
|
||||
+ int n;
|
||||
swaps(&rep.sequenceNumber, n);
|
||||
swapl(&rep.length, n);
|
||||
swaps(&rep.descLen, n);
|
||||
+#else
|
||||
+ swaps(&rep.sequenceNumber);
|
||||
+ swapl(&rep.length);
|
||||
+ swaps(&rep.descLen);
|
||||
+#endif
|
||||
}
|
||||
WriteToClient(client, sizeof(xVncExtGetParamDescReply), (char *)&rep);
|
||||
if (desc)
|
||||
@@ -613,9 +656,13 @@ static int ProcVncExtGetParamDesc(Client
|
||||
|
||||
static int SProcVncExtGetParamDesc(ClientPtr client)
|
||||
{
|
||||
- register char n;
|
||||
REQUEST(xVncExtGetParamDescReq);
|
||||
+#if XORG < 112
|
||||
+ register char n;
|
||||
swaps(&stuff->length, n);
|
||||
+#else
|
||||
+ swaps(&stuff->length);
|
||||
+#endif
|
||||
REQUEST_AT_LEAST_SIZE(xVncExtGetParamDescReq);
|
||||
return ProcVncExtGetParamDesc(client);
|
||||
}
|
||||
@@ -626,7 +673,6 @@ static int ProcVncExtListParams(ClientPt
|
||||
REQUEST_SIZE_MATCH(xVncExtListParamsReq);
|
||||
|
||||
xVncExtListParamsReply rep;
|
||||
- int n;
|
||||
rep.type = X_Reply;
|
||||
rep.sequenceNumber = client->sequence;
|
||||
|
||||
@@ -642,9 +688,16 @@ static int ProcVncExtListParams(ClientPt
|
||||
rep.length = (len + 3) >> 2;
|
||||
rep.nParams = nParams;
|
||||
if (client->swapped) {
|
||||
+#if XORG < 112
|
||||
+ int n;
|
||||
swaps(&rep.sequenceNumber, n);
|
||||
swapl(&rep.length, n);
|
||||
swaps(&rep.nParams, n);
|
||||
+#else
|
||||
+ swaps(&rep.sequenceNumber);
|
||||
+ swapl(&rep.length);
|
||||
+ swaps(&rep.nParams);
|
||||
+#endif
|
||||
}
|
||||
WriteToClient(client, sizeof(xVncExtListParamsReply), (char *)&rep);
|
||||
rdr::U8* data = new rdr::U8[len];
|
||||
@@ -664,9 +717,13 @@ static int ProcVncExtListParams(ClientPt
|
||||
|
||||
static int SProcVncExtListParams(ClientPtr client)
|
||||
{
|
||||
- register char n;
|
||||
REQUEST(xVncExtListParamsReq);
|
||||
+#if XORG < 112
|
||||
+ register char n;
|
||||
swaps(&stuff->length, n);
|
||||
+#else
|
||||
+ swaps(&stuff->length);
|
||||
+#endif
|
||||
REQUEST_SIZE_MATCH(xVncExtListParamsReq);
|
||||
return ProcVncExtListParams(client);
|
||||
}
|
||||
@@ -689,11 +746,19 @@ static int ProcVncExtSetServerCutText(Cl
|
||||
|
||||
static int SProcVncExtSetServerCutText(ClientPtr client)
|
||||
{
|
||||
- register char n;
|
||||
REQUEST(xVncExtSetServerCutTextReq);
|
||||
+#if XORG < 112
|
||||
+ register char n;
|
||||
swaps(&stuff->length, n);
|
||||
+#else
|
||||
+ swaps(&stuff->length);
|
||||
+#endif
|
||||
REQUEST_AT_LEAST_SIZE(xVncExtSetServerCutTextReq);
|
||||
+#if XORG < 112
|
||||
swapl(&stuff->textLen, n);
|
||||
+#else
|
||||
+ swapl(&stuff->textLen);
|
||||
+#endif
|
||||
return ProcVncExtSetServerCutText(client);
|
||||
}
|
||||
|
||||
@@ -703,15 +768,21 @@ static int ProcVncExtGetClientCutText(Cl
|
||||
REQUEST_SIZE_MATCH(xVncExtGetClientCutTextReq);
|
||||
|
||||
xVncExtGetClientCutTextReply rep;
|
||||
- int n;
|
||||
rep.type = X_Reply;
|
||||
rep.length = (clientCutTextLen + 3) >> 2;
|
||||
rep.sequenceNumber = client->sequence;
|
||||
rep.textLen = clientCutTextLen;
|
||||
if (client->swapped) {
|
||||
+#if XORG < 112
|
||||
+ int n;
|
||||
swaps(&rep.sequenceNumber, n);
|
||||
swapl(&rep.length, n);
|
||||
swapl(&rep.textLen, n);
|
||||
+#else
|
||||
+ swaps(&rep.sequenceNumber);
|
||||
+ swapl(&rep.length);
|
||||
+ swapl(&rep.textLen);
|
||||
+#endif
|
||||
}
|
||||
WriteToClient(client, sizeof(xVncExtGetClientCutTextReply), (char *)&rep);
|
||||
if (clientCutText)
|
||||
@@ -721,9 +792,13 @@ static int ProcVncExtGetClientCutText(Cl
|
||||
|
||||
static int SProcVncExtGetClientCutText(ClientPtr client)
|
||||
{
|
||||
- register char n;
|
||||
REQUEST(xVncExtGetClientCutTextReq);
|
||||
+#if XORG < 112
|
||||
+ register char n;
|
||||
swaps(&stuff->length, n);
|
||||
+#else
|
||||
+ swaps(&stuff->length);
|
||||
+#endif
|
||||
REQUEST_SIZE_MATCH(xVncExtGetClientCutTextReq);
|
||||
return ProcVncExtGetClientCutText(client);
|
||||
}
|
||||
@@ -753,12 +828,21 @@ static int ProcVncExtSelectInput(ClientP
|
||||
|
||||
static int SProcVncExtSelectInput(ClientPtr client)
|
||||
{
|
||||
- register char n;
|
||||
REQUEST(xVncExtSelectInputReq);
|
||||
+#if XORG < 112
|
||||
+ register char n;
|
||||
swaps(&stuff->length, n);
|
||||
+#else
|
||||
+ swaps(&stuff->length);
|
||||
+#endif
|
||||
REQUEST_SIZE_MATCH(xVncExtSelectInputReq);
|
||||
+#if XORG < 112
|
||||
swapl(&stuff->window, n);
|
||||
swapl(&stuff->mask, n);
|
||||
+#else
|
||||
+ swapl(&stuff->window);
|
||||
+ swapl(&stuff->mask);
|
||||
+#endif
|
||||
return ProcVncExtSelectInput(client);
|
||||
}
|
||||
|
||||
@@ -804,9 +888,14 @@ static int ProcVncExtConnect(ClientPtr c
|
||||
rep.length = 0;
|
||||
rep.sequenceNumber = client->sequence;
|
||||
if (client->swapped) {
|
||||
+#if XORG < 112
|
||||
int n;
|
||||
swaps(&rep.sequenceNumber, n);
|
||||
swapl(&rep.length, n);
|
||||
+#else
|
||||
+ swaps(&rep.sequenceNumber);
|
||||
+ swapl(&rep.length);
|
||||
+#endif
|
||||
}
|
||||
WriteToClient(client, sizeof(xVncExtConnectReply), (char *)&rep);
|
||||
return (client->noClientException);
|
||||
@@ -814,9 +903,13 @@ static int ProcVncExtConnect(ClientPtr c
|
||||
|
||||
static int SProcVncExtConnect(ClientPtr client)
|
||||
{
|
||||
- register char n;
|
||||
REQUEST(xVncExtConnectReq);
|
||||
+#if XORG < 112
|
||||
+ register char n;
|
||||
swaps(&stuff->length, n);
|
||||
+#else
|
||||
+ swaps(&stuff->length);
|
||||
+#endif
|
||||
REQUEST_AT_LEAST_SIZE(xVncExtConnectReq);
|
||||
return ProcVncExtConnect(client);
|
||||
}
|
||||
@@ -836,7 +929,6 @@ static int ProcVncExtGetQueryConnect(Cli
|
||||
qcTimeout = 0;
|
||||
|
||||
xVncExtGetQueryConnectReply rep;
|
||||
- int n;
|
||||
rep.type = X_Reply;
|
||||
rep.sequenceNumber = client->sequence;
|
||||
rep.timeout = qcTimeout;
|
||||
@@ -845,11 +937,20 @@ static int ProcVncExtGetQueryConnect(Cli
|
||||
rep.opaqueId = (CARD32)(long)queryConnectId;
|
||||
rep.length = (rep.userLen + rep.addrLen + 3) >> 2;
|
||||
if (client->swapped) {
|
||||
+#if XORG < 112
|
||||
+ int n;
|
||||
swaps(&rep.sequenceNumber, n);
|
||||
swapl(&rep.userLen, n);
|
||||
swapl(&rep.addrLen, n);
|
||||
swapl(&rep.timeout, n);
|
||||
swapl(&rep.opaqueId, n);
|
||||
+#else
|
||||
+ swaps(&rep.sequenceNumber);
|
||||
+ swapl(&rep.userLen);
|
||||
+ swapl(&rep.addrLen);
|
||||
+ swapl(&rep.timeout);
|
||||
+ swapl(&rep.opaqueId);
|
||||
+#endif
|
||||
}
|
||||
WriteToClient(client, sizeof(xVncExtGetQueryConnectReply), (char *)&rep);
|
||||
if (qcTimeout)
|
||||
@@ -861,9 +962,13 @@ static int ProcVncExtGetQueryConnect(Cli
|
||||
|
||||
static int SProcVncExtGetQueryConnect(ClientPtr client)
|
||||
{
|
||||
- register char n;
|
||||
REQUEST(xVncExtGetQueryConnectReq);
|
||||
+#if XORG < 112
|
||||
+ register char n;
|
||||
swaps(&stuff->length, n);
|
||||
+#else
|
||||
+ swaps(&stuff->length);
|
||||
+#endif
|
||||
REQUEST_SIZE_MATCH(xVncExtGetQueryConnectReq);
|
||||
return ProcVncExtGetQueryConnect(client);
|
||||
}
|
||||
@@ -888,10 +993,15 @@ static int ProcVncExtApproveConnect(Clie
|
||||
|
||||
static int SProcVncExtApproveConnect(ClientPtr client)
|
||||
{
|
||||
- register char n;
|
||||
REQUEST(xVncExtApproveConnectReq);
|
||||
+#if XORG < 112
|
||||
+ register char n;
|
||||
swaps(&stuff->length, n);
|
||||
swapl(&stuff->opaqueId, n);
|
||||
+#else
|
||||
+ swaps(&stuff->length);
|
||||
+ swapl(&stuff->opaqueId);
|
||||
+#endif
|
||||
REQUEST_SIZE_MATCH(xVncExtApproveConnectReq);
|
||||
return ProcVncExtApproveConnect(client);
|
||||
}
|
||||
diff -up xserver/hw/vnc/xf86vncModule.cc.xorg112 xserver/hw/vnc/xf86vncModule.cc
|
||||
--- xserver/hw/vnc/xf86vncModule.cc.xorg112 2011-08-09 23:16:36.000000000 +0200
|
||||
+++ xserver/hw/vnc/xf86vncModule.cc 2012-03-27 12:54:56.938271322 +0200
|
||||
@@ -26,6 +26,8 @@
|
||||
#include <rfb/Logger_stdio.h>
|
||||
#include <rfb/LogWriter.h>
|
||||
|
||||
+#include "xorg-version.h"
|
||||
+
|
||||
extern "C" {
|
||||
#define class c_class
|
||||
#define private c_private
|
||||
@@ -89,7 +91,12 @@ static void vncExtensionInitWithParams(I
|
||||
ScrnInfoPtr pScrn = xf86Screens[scr];
|
||||
|
||||
for (ParameterIterator i(Configuration::global()); i.param; i.next()) {
|
||||
- char* val = xf86FindOptionValue(pScrn->options, i.param->getName());
|
||||
+ const char *val;
|
||||
+#if XORG < 112
|
||||
+ val = xf86FindOptionValue(pScrn->options, i.param->getName());
|
||||
+#else
|
||||
+ val = xf86FindOptionValue((XF86OptionPtr)pScrn->options, i.param->getName());
|
||||
+#endif
|
||||
if (val)
|
||||
i.param->setParam(val);
|
||||
}
|
||||
diff -up xserver/hw/vnc/xorg-version.h.xorg112 xserver/hw/vnc/xorg-version.h
|
||||
--- xserver/hw/vnc/xorg-version.h.xorg112 2012-03-27 12:55:27.576240843 +0200
|
||||
+++ xserver/hw/vnc/xorg-version.h 2012-03-27 12:56:07.541204026 +0200
|
||||
@@ -38,6 +38,8 @@
|
||||
#define XORG 110
|
||||
#elif XORG_VERSION_CURRENT < ((1 * 10000000) + (11 * 100000) + (99 * 1000))
|
||||
#define XORG 111
|
||||
+#elif XORG_VERSION_CURRENT < ((1 * 10000000) + (12 * 100000) + (99 * 1000))
|
||||
+#define XORG 112
|
||||
#else
|
||||
#error "X.Org newer than 1.10 is not supported"
|
||||
#endif
|
@ -1,91 +0,0 @@
|
||||
diff -up xserver/configure.ac.vnc xserver/configure.ac
|
||||
--- xserver/configure.ac.vnc 2011-03-22 10:41:05.508614018 +0100
|
||||
+++ xserver/configure.ac 2011-03-22 10:47:01.592023995 +0100
|
||||
@@ -30,7 +30,6 @@ AC_INIT([xorg-server], 1.10.0, [https://
|
||||
RELEASE_DATE="2011-2-25"
|
||||
AC_CONFIG_SRCDIR([Makefile.am])
|
||||
AM_INIT_AUTOMAKE([foreign dist-bzip2])
|
||||
-AM_MAINTAINER_MODE
|
||||
|
||||
# Require xorg-macros minimum of 1.10 for XORG_CHECK_SGML_DOCTOOLS
|
||||
m4_ifndef([XORG_MACROS_VERSION],
|
||||
@@ -65,6 +64,7 @@ dnl forcing an entire recompile.x
|
||||
AC_CONFIG_HEADERS(include/version-config.h)
|
||||
|
||||
AM_PROG_AS
|
||||
+AC_PROG_CXX
|
||||
AC_PROG_LN_S
|
||||
AC_LIBTOOL_WIN32_DLL
|
||||
AC_DISABLE_STATIC
|
||||
@@ -1510,6 +1510,14 @@ if test "x$XVFB" = xyes; then
|
||||
AC_SUBST([XVFB_SYS_LIBS])
|
||||
fi
|
||||
|
||||
+dnl Xvnc DDX
|
||||
+AC_SUBST([XVNC_CPPFLAGS], ["-DHAVE_DIX_CONFIG_H $XEXT_INC $FB_INC $MI_INC $RENDER_INC $RANDR_INC"])
|
||||
+AC_SUBST([XVNC_LIBS], ["$FB_LIB $FIXES_LIB $XEXT_LIB $CONFIG_LIB $DBE_LIB $RECORD_LIB $GLX_LIBS $RANDR_LIB $RENDER_LIB $DAMAGE_LIB $MIEXT_SYNC_LIB $MIEXT_DAMAGE_LIB $MIEXT_SHADOW_LIB $XI_LIB $XKB_LIB $XKB_STUB_LIB $COMPOSITE_LIB $MAIN_LIB"])
|
||||
+AC_SUBST([XVNC_SYS_LIBS], ["$GLX_SYS_LIBS"])
|
||||
+
|
||||
+dnl This is necessary to allow Xvnc to statically link with GnuTLS
|
||||
+AC_ARG_VAR(GNUTLS_LDFLAGS, [Custom linker flags for using GnuTLS, e.g. -L{GnuTLS directory}/lib -lgnutls])
|
||||
+AC_SUBST(GNUTLS_LDFLAGS)
|
||||
|
||||
dnl Xnest DDX
|
||||
|
||||
@@ -1548,6 +1556,8 @@ xorg_bus_linuxpci=no
|
||||
xorg_bus_bsdpci=no
|
||||
xorg_bus_sparc=no
|
||||
|
||||
+AC_DEFINE_UNQUOTED(XORG_VERSION_CURRENT, [$VENDOR_RELEASE], [Current Xorg version])
|
||||
+
|
||||
if test "x$XORG" = xyes; then
|
||||
XORG_DDXINCS='-I$(top_srcdir)/hw/xfree86 -I$(top_srcdir)/hw/xfree86/include -I$(top_srcdir)/hw/xfree86/common'
|
||||
XORG_OSINCS='-I$(top_srcdir)/hw/xfree86/os-support -I$(top_srcdir)/hw/xfree86/os-support/bus -I$(top_srcdir)/os'
|
||||
@@ -1792,7 +1802,6 @@ if test "x$XORG" = xyes; then
|
||||
AC_DEFINE(XORGSERVER, 1, [Building Xorg server])
|
||||
AC_DEFINE(XFree86Server, 1, [Building XFree86 server])
|
||||
AC_DEFINE(XFree86LOADER, 1, [Building loadable XFree86 server])
|
||||
- AC_DEFINE_UNQUOTED(XORG_VERSION_CURRENT, [$VENDOR_RELEASE], [Current Xorg version])
|
||||
AC_DEFINE(NEED_XF86_TYPES, 1, [Need XFree86 typedefs])
|
||||
AC_DEFINE(NEED_XF86_PROTOTYPES, 1, [Need XFree86 helper functions])
|
||||
AC_DEFINE(__XSERVERNAME__, "Xorg", [Name of X server])
|
||||
@@ -2254,6 +2263,7 @@ hw/dmx/Makefile
|
||||
hw/dmx/man/Makefile
|
||||
hw/vfb/Makefile
|
||||
hw/vfb/man/Makefile
|
||||
+hw/vnc/Makefile
|
||||
hw/xnest/Makefile
|
||||
hw/xnest/man/Makefile
|
||||
hw/xwin/Makefile
|
||||
diff -up xserver/hw/Makefile.am.vnc xserver/hw/Makefile.am
|
||||
--- xserver/hw/Makefile.am.vnc 2011-03-22 10:41:05.528613984 +0100
|
||||
+++ xserver/hw/Makefile.am 2011-03-22 10:41:05.630613813 +0100
|
||||
@@ -33,7 +33,8 @@ SUBDIRS = \
|
||||
$(XNEST_SUBDIRS) \
|
||||
$(DMX_SUBDIRS) \
|
||||
$(KDRIVE_SUBDIRS) \
|
||||
- $(XQUARTZ_SUBDIRS)
|
||||
+ $(XQUARTZ_SUBDIRS) \
|
||||
+ vnc
|
||||
|
||||
DIST_SUBDIRS = dmx xfree86 vfb xnest xwin xquartz kdrive
|
||||
|
||||
diff -up xserver/mi/miinitext.c.vnc xserver/mi/miinitext.c
|
||||
--- xserver/mi/miinitext.c.vnc 2011-03-22 10:41:05.591613878 +0100
|
||||
+++ xserver/mi/miinitext.c 2011-03-22 10:41:05.630613813 +0100
|
||||
@@ -263,6 +263,7 @@ extern void DamageExtensionInit(INITARGS
|
||||
extern void CompositeExtensionInit(INITARGS);
|
||||
#endif
|
||||
extern void GEExtensionInit(INITARGS);
|
||||
+extern void vncExtensionInit(INITARGS);
|
||||
|
||||
/* The following is only a small first step towards run-time
|
||||
* configurable extensions.
|
||||
@@ -433,6 +434,7 @@ InitExtensions(int argc, char *argv[])
|
||||
#ifdef XF86BIGFONT
|
||||
if (!noXFree86BigfontExtension) XFree86BigfontExtensionInit();
|
||||
#endif
|
||||
+ vncExtensionInit();
|
||||
#if !defined(NO_HW_ONLY_EXTS)
|
||||
#if defined(XF86VIDMODE)
|
||||
if (!noXFree86VidModeExtension) XFree86VidModeExtensionInit();
|
Loading…
Reference in New Issue
Block a user