diff --git a/tigervnc-1.10.1.tar.gz b/tigervnc-1.10.1.tar.gz new file mode 100644 index 0000000..64c281f Binary files /dev/null and b/tigervnc-1.10.1.tar.gz differ diff --git a/tigervnc-1.9.0.tar.gz b/tigervnc-1.9.0.tar.gz deleted file mode 100644 index 2b7cb5d..0000000 Binary files a/tigervnc-1.9.0.tar.gz and /dev/null differ diff --git a/tigervnc-getmaster.patch b/tigervnc-getmaster.patch deleted file mode 100644 index 23c3d58..0000000 --- a/tigervnc-getmaster.patch +++ /dev/null @@ -1,88 +0,0 @@ -diff --git a/unix/xserver/hw/vnc/InputXKB.c b/unix/xserver/hw/vnc/InputXKB.c -index a9bd11d..7b54b43 100644 ---- a/unix/xserver/hw/vnc/InputXKB.c -+++ b/unix/xserver/hw/vnc/InputXKB.c -@@ -214,10 +214,7 @@ void vncPrepareInputDevices(void) - - unsigned vncGetKeyboardState(void) - { -- DeviceIntPtr master; -- -- master = GetMaster(vncKeyboardDev, KEYBOARD_OR_FLOAT); -- return XkbStateFieldFromRec(&master->key->xkbInfo->state); -+ return XkbStateFieldFromRec(&vncKeyboardDev->master->key->xkbInfo->state); - } - - unsigned vncGetLevelThreeMask(void) -@@ -238,7 +235,7 @@ unsigned vncGetLevelThreeMask(void) - return 0; - } - -- xkb = GetMaster(vncKeyboardDev, KEYBOARD_OR_FLOAT)->key->xkbInfo->desc; -+ xkb = vncKeyboardDev->master->key->xkbInfo->desc; - - act = XkbKeyActionPtr(xkb, keycode, state); - if (act == NULL) -@@ -263,7 +260,7 @@ KeyCode vncPressShift(void) - if (state & ShiftMask) - return 0; - -- xkb = GetMaster(vncKeyboardDev, KEYBOARD_OR_FLOAT)->key->xkbInfo->desc; -+ xkb = vncKeyboardDev->master->key->xkbInfo->desc; - for (key = xkb->min_key_code; key <= xkb->max_key_code; key++) { - XkbAction *act; - unsigned char mask; -@@ -303,7 +300,7 @@ size_t vncReleaseShift(KeyCode *keys, size_t maxKeys) - - count = 0; - -- master = GetMaster(vncKeyboardDev, KEYBOARD_OR_FLOAT); -+ master = vncKeyboardDev->master; - xkb = master->key->xkbInfo->desc; - for (key = xkb->min_key_code; key <= xkb->max_key_code; key++) { - XkbAction *act; -@@ -359,7 +356,7 @@ KeyCode vncPressLevelThree(void) - return 0; - } - -- xkb = GetMaster(vncKeyboardDev, KEYBOARD_OR_FLOAT)->key->xkbInfo->desc; -+ xkb = vncKeyboardDev->master->key->xkbInfo->desc; - - act = XkbKeyActionPtr(xkb, keycode, state); - if (act == NULL) -@@ -390,7 +387,7 @@ size_t vncReleaseLevelThree(KeyCode *keys, size_t maxKeys) - - count = 0; - -- master = GetMaster(vncKeyboardDev, KEYBOARD_OR_FLOAT); -+ master = vncKeyboardDev->master; - xkb = master->key->xkbInfo->desc; - for (key = xkb->min_key_code; key <= xkb->max_key_code; key++) { - XkbAction *act; -@@ -433,7 +430,7 @@ KeyCode vncKeysymToKeycode(KeySym keysym, unsigned state, unsigned *new_state) - if (new_state != NULL) - *new_state = state; - -- xkb = GetMaster(vncKeyboardDev, KEYBOARD_OR_FLOAT)->key->xkbInfo->desc; -+ xkb = vncKeyboardDev->master->key->xkbInfo->desc; - for (key = xkb->min_key_code; key <= xkb->max_key_code; key++) { - unsigned int state_out; - KeySym dummy; -@@ -511,7 +508,7 @@ int vncIsAffectedByNumLock(KeyCode keycode) - if (numlock_keycode == 0) - return 0; - -- xkb = GetMaster(vncKeyboardDev, KEYBOARD_OR_FLOAT)->key->xkbInfo->desc; -+ xkb = vncKeyboardDev->master->key->xkbInfo->desc; - - act = XkbKeyActionPtr(xkb, numlock_keycode, state); - if (act == NULL) -@@ -545,7 +542,7 @@ KeyCode vncAddKeysym(KeySym keysym, unsigned state) - KeySym *syms; - KeySym upper, lower; - -- master = GetMaster(vncKeyboardDev, KEYBOARD_OR_FLOAT); -+ master = vncKeyboardDev->master; - xkb = master->key->xkbInfo->desc; - for (key = xkb->max_key_code; key >= xkb->min_key_code; key--) { - if (XkbKeyNumGroups(xkb, key) == 0) diff --git a/tigervnc-ignore-buttons-in-mouse-leave-event.patch b/tigervnc-ignore-buttons-in-mouse-leave-event.patch deleted file mode 100644 index bf6a6d9..0000000 --- a/tigervnc-ignore-buttons-in-mouse-leave-event.patch +++ /dev/null @@ -1,27 +0,0 @@ -From be88293952175258992c1ed2f5a1b7d8f78fe7cc Mon Sep 17 00:00:00 2001 -From: Pierre Ossman -Date: Tue, 31 Jul 2018 16:06:59 +0200 -Subject: Ignore buttons in mouse leave events - -For KDE we can sometimes get a bunch of stray FL_LEAVE events before -gaining focus. Sending their included button information gets things -in the incorrect order with regard to other synchronisation we do on -focus. So just ignore buttons as the only information we want out of -the leave information is a position update. - -diff --git a/vncviewer/Viewport.cxx b/vncviewer/Viewport.cxx -index ff27f7bf..7b5df572 100644 ---- a/vncviewer/Viewport.cxx -+++ b/vncviewer/Viewport.cxx -@@ -587,7 +587,10 @@ int Viewport::handle(int event) - - case FL_LEAVE: - window()->cursor(FL_CURSOR_DEFAULT); -- // Fall through as we want a last move event to help trigger edge stuff -+ // We want a last move event to help trigger edge stuff -+ handlePointerEvent(Point(Fl::event_x() - x(), Fl::event_y() - y()), 0); -+ return 1; -+ - case FL_PUSH: - case FL_RELEASE: - case FL_DRAG: diff --git a/tigervnc-manpages.patch b/tigervnc-manpages.patch deleted file mode 100644 index 8e4b9c9..0000000 --- a/tigervnc-manpages.patch +++ /dev/null @@ -1,28 +0,0 @@ -diff --git a/unix/vncserver b/unix/vncserver -index 9e7a6ac..139f960 100755 ---- a/unix/vncserver -+++ b/unix/vncserver -@@ -684,6 +684,7 @@ sub Usage - " [-geometry x]\n". - " [-pixelformat rgbNNN|bgrNNN]\n". - " [-fp ]\n". -+ " [-cc ]\n". - " [-fg]\n". - " [-autokill]\n". - " [-noxstartup]\n". -diff --git a/vncviewer/vncviewer.cxx b/vncviewer/vncviewer.cxx -index f076565..05669a4 100644 ---- a/vncviewer/vncviewer.cxx -+++ b/vncviewer/vncviewer.cxx -@@ -352,6 +352,11 @@ static void usage(const char *programName) - " %s [parameters] -listen [port] [parameters]\n" - " %s [parameters] [.tigervnc file]\n", - programName, programName, programName); -+ fprintf(stderr,"\n" -+ "Options:\n\n" -+ " -display Xdisplay - Specifies the X display for the viewer window\n" -+ " -geometry geometry - Standard X position and sizing specification.\n"); -+ - fprintf(stderr,"\n" - "Parameters can be turned on with - or off with -=0\n" - "Parameters which take a value can be specified as " diff --git a/tigervnc-passwd-crash-with-malloc-checks.patch b/tigervnc-passwd-crash-with-malloc-checks.patch deleted file mode 100644 index 0874b54..0000000 --- a/tigervnc-passwd-crash-with-malloc-checks.patch +++ /dev/null @@ -1,41 +0,0 @@ -diff --git a/common/rfb/Password.cxx b/common/rfb/Password.cxx -index 240c9d4..cf9362e 100644 ---- a/common/rfb/Password.cxx -+++ b/common/rfb/Password.cxx -@@ -55,7 +55,7 @@ PlainPasswd::~PlainPasswd() { - - void PlainPasswd::replaceBuf(char* b) { - if (buf) -- memset(buf, 0, strlen(buf)); -+ memset(buf, 0, length ? length : strlen(buf)); - CharArray::replaceBuf(b); - } - -diff --git a/common/rfb/util.h b/common/rfb/util.h -index b678b89..fffe322 100644 ---- a/common/rfb/util.h -+++ b/common/rfb/util.h -@@ -50,16 +50,21 @@ namespace rfb { - CharArray() : buf(0) {} - CharArray(char* str) : buf(str) {} // note: assumes ownership - CharArray(int len) { -+ length = len; - buf = new char[len]; - } - ~CharArray() { -- delete [] buf; -+ if (buf) { -+ delete [] buf; -+ buf = nullptr; -+ } - } - void format(const char *fmt, ...) __printf_attr(2, 3); - // Get the buffer pointer & clear it (i.e. caller takes ownership) - char* takeBuf() {char* tmp = buf; buf = 0; return tmp;} -- void replaceBuf(char* b) {delete [] buf; buf = b;} -+ void replaceBuf(char* b) {if (buf) delete [] buf; buf = b;} - char* buf; -+ int length = 0; - private: - CharArray(const CharArray&); - CharArray& operator=(const CharArray&); diff --git a/tigervnc-shebang.patch b/tigervnc-shebang.patch deleted file mode 100644 index f76af87..0000000 --- a/tigervnc-shebang.patch +++ /dev/null @@ -1,9 +0,0 @@ -diff -up tigervnc-1.3.0/unix/vncserver.shebang tigervnc-1.3.0/unix/vncserver ---- tigervnc-1.3.0/unix/vncserver.shebang 2013-07-24 12:22:34.962158378 +0100 -+++ tigervnc-1.3.0/unix/vncserver 2013-07-24 12:22:41.593188190 +0100 -@@ -1,4 +1,4 @@ --#!/usr/bin/env perl -+#!/usr/bin/perl - # - # Copyright (C) 2009-2010 D. R. Commander. All Rights Reserved. - # Copyright (C) 2005-2006 Sun Microsystems, Inc. All Rights Reserved. diff --git a/tigervnc-utilize-system-crypto-policies.patch b/tigervnc-utilize-system-crypto-policies.patch deleted file mode 100644 index dbf0dab..0000000 --- a/tigervnc-utilize-system-crypto-policies.patch +++ /dev/null @@ -1,13 +0,0 @@ -diff --git a/common/rfb/Security.cxx b/common/rfb/Security.cxx -index e623ab5..4987b29 100644 ---- a/common/rfb/Security.cxx -+++ b/common/rfb/Security.cxx -@@ -52,7 +52,7 @@ static LogWriter vlog("Security"); - #ifdef HAVE_GNUTLS - StringParameter Security::GnuTLSPriority("GnuTLSPriority", - "GnuTLS priority string that controls the TLS session’s handshake algorithms", -- "NORMAL"); -+ "@SYSTEM"); - #endif - - Security::Security() diff --git a/tigervnc-xstartup.patch b/tigervnc-xstartup.patch deleted file mode 100644 index b2ed420..0000000 --- a/tigervnc-xstartup.patch +++ /dev/null @@ -1,33 +0,0 @@ -diff --git a/unix/vncserver b/unix/vncserver -index c4d0535..64c6744 100755 ---- a/unix/vncserver -+++ b/unix/vncserver -@@ -61,27 +61,7 @@ $defaultXStartup - = ("#!/bin/sh\n\n". - "unset SESSION_MANAGER\n". - "unset DBUS_SESSION_BUS_ADDRESS\n". -- "OS=`uname -s`\n". -- "if [ \$OS = 'Linux' ]; then\n". -- " case \"\$WINDOWMANAGER\" in\n". -- " \*gnome\*)\n". -- " if [ -e /etc/SuSE-release ]; then\n". -- " PATH=\$PATH:/opt/gnome/bin\n". -- " export PATH\n". -- " fi\n". -- " ;;\n". -- " esac\n". -- "fi\n". -- "if [ -x /etc/X11/xinit/xinitrc ]; then\n". -- " exec /etc/X11/xinit/xinitrc\n". -- "fi\n". -- "if [ -f /etc/X11/xinit/xinitrc ]; then\n". -- " exec sh /etc/X11/xinit/xinitrc\n". -- "fi\n". -- "[ -r \$HOME/.Xresources ] && xrdb \$HOME/.Xresources\n". -- "xsetroot -solid grey\n". -- "xterm -geometry 80x24+10+10 -ls -title \"\$VNCDESKTOP Desktop\" &\n". -- "twm &\n"); -+ "exec /etc/X11/xinit/xinitrc\n"); - - $defaultConfig - = ("## Supported server options to pass to vncserver upon invocation can be listed\n". diff --git a/tigervnc.spec b/tigervnc.spec index 43504f2..9a18578 100644 --- a/tigervnc.spec +++ b/tigervnc.spec @@ -1,28 +1,20 @@ %global _hardened_build 1 Name: tigervnc -Version: 1.9.0 -Release: 7 +Version: 1.10.1 +Release: 1 Summary: A TigerVNC remote display system License: GPLv2+ URL: http://www.tigervnc.com -Source0: %{name}-%{version}.tar.gz +Source0: https://github.com/TigerVNC/tigervnc/archive/%{name}-%{version}.tar.gz Source1: vncserver.service Source2: vncserver.sysconfig Source3: 10-libvnc.conf Source4: xvnc.service Source5: xvnc.socket -Patch1: tigervnc-manpages.patch -Patch2: tigervnc-getmaster.patch -Patch3: tigervnc-shebang.patch -Patch4: tigervnc-xstartup.patch -Patch5: tigervnc-utilize-system-crypto-policies.patch -Patch6: tigervnc-ignore-buttons-in-mouse-leave-event.patch -Patch7: tigervnc-passwd-crash-with-malloc-checks.patch - Patch100: tigervnc-xserver120.patch BuildRequires: gcc-c++ systemd cmake automake autoconf gettext gettext-autopoint pixman-devel fltk-devel >= 1.3.3 @@ -91,32 +83,13 @@ If you want to use web browser in clients, please install this package. %setup -q cp -r /usr/share/xorg-x11-server-source/* unix/xserver +%patch100 -p1 -b .xserver120-rebased pushd unix/xserver for all in `find . -type f -perm -001`; do chmod -x "$all" done popd -%patch100 -p1 -b .xserver120-rebased -# Synchronise manpages and --help output (bug #980870). -%patch1 -p1 -b .manpages - -# libvnc.so: don't use unexported GetMaster function (bug #744881 again). -%patch2 -p1 -b .getmaster - -# Don't use shebang in vncserver script. -%patch3 -p1 -b .shebang - -# Clearer xstartup file (bug #923655). -%patch4 -p1 -b .xstartup - -# Utilize system-wide crypto policies -%patch5 -p1 -b .utilize-system-crypto-policies - -%patch6 -p1 -b .ignore-buttons-in-mouse-leave-event - -%patch7 -p1 -b .tigervnc-passwd-crash-with-malloc-checks - %build export CFLAGS="$RPM_OPT_FLAGS -fpic" export CXXFLAGS="$CFLAGS" @@ -179,7 +152,6 @@ popd pushd java mkdir -p %{buildroot}%{_datadir}/vnc/classes install -m755 VncViewer.jar %{buildroot}%{_datadir}/vnc/classes -install -m644 com/tigervnc/vncviewer/index.vnc %{buildroot}%{_datadir}/vnc/classes popd %find_lang %{name} %{name}.lang @@ -245,6 +217,12 @@ install -m 644 %{SOURCE3} %{buildroot}%{_sysconfdir}/X11/xorg.conf.d/10-libvnc.c %{_mandir}/man1/* %changelog +* Sat Jan 11 2020 openEuler Buildteam - 1.10.1-1 +- Type:enhancement +- Id:NA +- SUG:NA +- DESC:update version to 1.10.1 + * Tue Dec 31 2019 openEuler Buildteam - 1.9.0-7 - Type:bugfix - ID:NA