1.14.0
Resolves: RHEL-45316 Move old log to log.old if present Resolves: RHEL-54294 Fix shared memory leak Resolves: RHEL-55768
This commit is contained in:
parent
c27de8c289
commit
ed0ea16f50
1
.gitignore
vendored
1
.gitignore
vendored
@ -32,3 +32,4 @@ tigervnc-1.0.90-20100721svn4113.tar.bz2
|
|||||||
/tigervnc-1.11.0.tar.gz
|
/tigervnc-1.11.0.tar.gz
|
||||||
/tigervnc-1.12.0.tar.gz
|
/tigervnc-1.12.0.tar.gz
|
||||||
/tigervnc-1.13.1.tar.gz
|
/tigervnc-1.13.1.tar.gz
|
||||||
|
/tigervnc-1.14.0.tar.gz
|
||||||
|
2
sources
2
sources
@ -1 +1 @@
|
|||||||
SHA512 (tigervnc-1.13.1.tar.gz) = 9190dbcd3b57ba52286c158c0675104d68463d7e3ea8e23493514b64451ddb511f3daf0f177339bc231155daea376d9c8dc58216663e10aa12f67468f4559da5
|
SHA512 (tigervnc-1.14.0.tar.gz) = ee36f0aa40957274fb00fd755624a8bea80432d797d6c183645ed1251058ab30594d2261693b5655c5ca85a22e53f93029eeccc51fe86780398d1a017fa2311c
|
||||||
|
@ -0,0 +1,24 @@
|
|||||||
|
From 4f6a3521874da5a67fd746389cfa9b6199eb3582 Mon Sep 17 00:00:00 2001
|
||||||
|
From: Pierre Ossman <ossman@cendio.se>
|
||||||
|
Date: Mon, 29 Jul 2024 16:16:08 +0200
|
||||||
|
Subject: [PATCH] Add missing comma in default security type list
|
||||||
|
|
||||||
|
Otherwise it merges with the next entry, removing both of them from the
|
||||||
|
default list.
|
||||||
|
---
|
||||||
|
common/rfb/SecurityClient.cxx | 2 +-
|
||||||
|
1 file changed, 1 insertion(+), 1 deletion(-)
|
||||||
|
|
||||||
|
diff --git a/common/rfb/SecurityClient.cxx b/common/rfb/SecurityClient.cxx
|
||||||
|
index 12860662f..63e0cadc0 100644
|
||||||
|
--- a/common/rfb/SecurityClient.cxx
|
||||||
|
+++ b/common/rfb/SecurityClient.cxx
|
||||||
|
@@ -60,7 +60,7 @@ StringParameter SecurityClient::secTypes
|
||||||
|
"X509Plain,TLSPlain,X509Vnc,TLSVnc,X509None,TLSNone,"
|
||||||
|
#endif
|
||||||
|
#ifdef HAVE_NETTLE
|
||||||
|
- "RA2,RA2_256,RA2ne,RA2ne_256,DH,MSLogonII"
|
||||||
|
+ "RA2,RA2_256,RA2ne,RA2ne_256,DH,MSLogonII,"
|
||||||
|
#endif
|
||||||
|
"VncAuth,None",
|
||||||
|
ConfViewer);
|
File diff suppressed because it is too large
Load Diff
29
tigervnc-correctly-handle-zrle-cursors.patch
Normal file
29
tigervnc-correctly-handle-zrle-cursors.patch
Normal file
@ -0,0 +1,29 @@
|
|||||||
|
From 6d9017eeb364491cf2acdf1c7e61aee8dd198527 Mon Sep 17 00:00:00 2001
|
||||||
|
From: Pierre Ossman <ossman@cendio.se>
|
||||||
|
Date: Fri, 30 Aug 2024 16:15:09 +0200
|
||||||
|
Subject: [PATCH] Correctly handle ZRLE cursors
|
||||||
|
|
||||||
|
Cursor data has a depth of 32 bits and hence cannot use CPIXELs.
|
||||||
|
|
||||||
|
This is a regression from baca73d.
|
||||||
|
---
|
||||||
|
common/rfb/ZRLEDecoder.cxx | 4 ++--
|
||||||
|
1 file changed, 2 insertions(+), 2 deletions(-)
|
||||||
|
|
||||||
|
diff --git a/common/rfb/ZRLEDecoder.cxx b/common/rfb/ZRLEDecoder.cxx
|
||||||
|
index 474fd6ca1..e274a697a 100644
|
||||||
|
--- a/common/rfb/ZRLEDecoder.cxx
|
||||||
|
+++ b/common/rfb/ZRLEDecoder.cxx
|
||||||
|
@@ -125,10 +125,10 @@ void ZRLEDecoder::zrleDecode(const Rect& r, rdr::InStream* is,
|
||||||
|
Pixel maxPixel = pf.pixelFromRGB((uint16_t)-1, (uint16_t)-1, (uint16_t)-1);
|
||||||
|
bool fitsInLS3Bytes = maxPixel < (1<<24);
|
||||||
|
bool fitsInMS3Bytes = (maxPixel & 0xff) == 0;
|
||||||
|
- bool isLowCPixel = (sizeof(T) == 4) &&
|
||||||
|
+ bool isLowCPixel = (sizeof(T) == 4) && (pf.depth <= 24) &&
|
||||||
|
((fitsInLS3Bytes && pf.isLittleEndian()) ||
|
||||||
|
(fitsInMS3Bytes && pf.isBigEndian()));
|
||||||
|
- bool isHighCPixel = (sizeof(T) == 4) &&
|
||||||
|
+ bool isHighCPixel = (sizeof(T) == 4) && (pf.depth <= 24) &&
|
||||||
|
((fitsInLS3Bytes && pf.isBigEndian()) ||
|
||||||
|
(fitsInMS3Bytes && pf.isLittleEndian()));
|
||||||
|
|
27
tigervnc-handle-existing-config-directory-in-vncpasswd.patch
Normal file
27
tigervnc-handle-existing-config-directory-in-vncpasswd.patch
Normal file
@ -0,0 +1,27 @@
|
|||||||
|
From 445e0230cf4e939dcc59caf5d5f001c2f7b04da6 Mon Sep 17 00:00:00 2001
|
||||||
|
From: Pierre Ossman <ossman@cendio.se>
|
||||||
|
Date: Thu, 15 Aug 2024 14:24:42 +0200
|
||||||
|
Subject: [PATCH] Handle existing config directory in vncpasswd
|
||||||
|
|
||||||
|
This fixes commit a79c33d.
|
||||||
|
---
|
||||||
|
unix/vncpasswd/vncpasswd.cxx | 6 ++++--
|
||||||
|
1 file changed, 4 insertions(+), 2 deletions(-)
|
||||||
|
|
||||||
|
diff --git a/unix/vncpasswd/vncpasswd.cxx b/unix/vncpasswd/vncpasswd.cxx
|
||||||
|
index 6666955f1..9f794e129 100644
|
||||||
|
--- a/unix/vncpasswd/vncpasswd.cxx
|
||||||
|
+++ b/unix/vncpasswd/vncpasswd.cxx
|
||||||
|
@@ -213,8 +213,10 @@ int main(int argc, char** argv)
|
||||||
|
exit(1);
|
||||||
|
}
|
||||||
|
if (os::mkdir_p(configDir, 0777) == -1) {
|
||||||
|
- fprintf(stderr, "Could not create VNC config directory: %s\n", strerror(errno));
|
||||||
|
- exit(1);
|
||||||
|
+ if (errno != EEXIST) {
|
||||||
|
+ fprintf(stderr, "Could not create VNC config directory: %s\n", strerror(errno));
|
||||||
|
+ exit(1);
|
||||||
|
+ }
|
||||||
|
}
|
||||||
|
snprintf(fname, sizeof(fname), "%s/passwd", configDir);
|
||||||
|
}
|
@ -1,135 +0,0 @@
|
|||||||
diff --git a/common/rfb/SSecurityPlain.cxx b/common/rfb/SSecurityPlain.cxx
|
|
||||||
index 6f65e87..3142ba3 100644
|
|
||||||
--- a/common/rfb/SSecurityPlain.cxx
|
|
||||||
+++ b/common/rfb/SSecurityPlain.cxx
|
|
||||||
@@ -27,6 +27,8 @@
|
|
||||||
#include <rdr/InStream.h>
|
|
||||||
#if !defined(WIN32) && !defined(__APPLE__)
|
|
||||||
#include <rfb/UnixPasswordValidator.h>
|
|
||||||
+#include <unistd.h>
|
|
||||||
+#include <pwd.h>
|
|
||||||
#endif
|
|
||||||
#ifdef WIN32
|
|
||||||
#include <rfb/WinPasswdValidator.h>
|
|
||||||
@@ -45,21 +47,22 @@ StringParameter PasswordValidator::plainUsers
|
|
||||||
|
|
||||||
bool PasswordValidator::validUser(const char* username)
|
|
||||||
{
|
|
||||||
- CharArray users(plainUsers.getValueStr()), user;
|
|
||||||
+ std::vector<std::string> users;
|
|
||||||
|
|
||||||
- while (users.buf) {
|
|
||||||
- strSplit(users.buf, ',', &user.buf, &users.buf);
|
|
||||||
-#ifdef WIN32
|
|
||||||
- if (0 == stricmp(user.buf, "*"))
|
|
||||||
- return true;
|
|
||||||
- if (0 == stricmp(user.buf, username))
|
|
||||||
- return true;
|
|
||||||
-#else
|
|
||||||
- if (!strcmp(user.buf, "*"))
|
|
||||||
- return true;
|
|
||||||
- if (!strcmp(user.buf, username))
|
|
||||||
- return true;
|
|
||||||
+ users = split(plainUsers, ',');
|
|
||||||
+
|
|
||||||
+ for (size_t i = 0; i < users.size(); i++) {
|
|
||||||
+ if (users[i] == "*")
|
|
||||||
+ return true;
|
|
||||||
+#if !defined(WIN32) && !defined(__APPLE__)
|
|
||||||
+ if (users[i] == "%u") {
|
|
||||||
+ struct passwd *pw = getpwnam(username);
|
|
||||||
+ if (pw && pw->pw_uid == getuid())
|
|
||||||
+ return true;
|
|
||||||
+ }
|
|
||||||
#endif
|
|
||||||
+ if (users[i] == username)
|
|
||||||
+ return true;
|
|
||||||
}
|
|
||||||
return false;
|
|
||||||
}
|
|
||||||
diff --git a/common/rfb/util.cxx b/common/rfb/util.cxx
|
|
||||||
index 649eb0b..cce73a0 100644
|
|
||||||
--- a/common/rfb/util.cxx
|
|
||||||
+++ b/common/rfb/util.cxx
|
|
||||||
@@ -99,6 +99,26 @@ namespace rfb {
|
|
||||||
return false;
|
|
||||||
}
|
|
||||||
|
|
||||||
+ std::vector<std::string> split(const char* src,
|
|
||||||
+ const char delimiter)
|
|
||||||
+ {
|
|
||||||
+ std::vector<std::string> out;
|
|
||||||
+ const char *start, *stop;
|
|
||||||
+
|
|
||||||
+ start = src;
|
|
||||||
+ do {
|
|
||||||
+ stop = strchr(start, delimiter);
|
|
||||||
+ if (stop == NULL) {
|
|
||||||
+ out.push_back(start);
|
|
||||||
+ } else {
|
|
||||||
+ out.push_back(std::string(start, stop-start));
|
|
||||||
+ start = stop + 1;
|
|
||||||
+ }
|
|
||||||
+ } while (stop != NULL);
|
|
||||||
+
|
|
||||||
+ return out;
|
|
||||||
+ }
|
|
||||||
+
|
|
||||||
bool strContains(const char* src, char c) {
|
|
||||||
int l=strlen(src);
|
|
||||||
for (int i=0; i<l; i++)
|
|
||||||
diff --git a/common/rfb/util.h b/common/rfb/util.h
|
|
||||||
index f0ac9ef..ed15c28 100644
|
|
||||||
--- a/common/rfb/util.h
|
|
||||||
+++ b/common/rfb/util.h
|
|
||||||
@@ -27,6 +27,9 @@
|
|
||||||
#include <limits.h>
|
|
||||||
#include <string.h>
|
|
||||||
|
|
||||||
+#include <string>
|
|
||||||
+#include <vector>
|
|
||||||
+
|
|
||||||
struct timeval;
|
|
||||||
|
|
||||||
#ifdef __GNUC__
|
|
||||||
@@ -76,6 +79,10 @@ namespace rfb {
|
|
||||||
// that part of the string. Obviously, setting both to 0 is not useful...
|
|
||||||
bool strSplit(const char* src, const char limiter, char** out1, char** out2, bool fromEnd=false);
|
|
||||||
|
|
||||||
+ // Splits a string with the specified delimiter
|
|
||||||
+ std::vector<std::string> split(const char* src,
|
|
||||||
+ const char delimiter);
|
|
||||||
+
|
|
||||||
// Returns true if src contains c
|
|
||||||
bool strContains(const char* src, char c);
|
|
||||||
|
|
||||||
diff --git a/unix/x0vncserver/x0vncserver.man b/unix/x0vncserver/x0vncserver.man
|
|
||||||
index c36ae34..78db730 100644
|
|
||||||
--- a/unix/x0vncserver/x0vncserver.man
|
|
||||||
+++ b/unix/x0vncserver/x0vncserver.man
|
|
||||||
@@ -125,8 +125,8 @@ parameter instead.
|
|
||||||
.B \-PlainUsers \fIuser-list\fP
|
|
||||||
A comma separated list of user names that are allowed to authenticate via
|
|
||||||
any of the "Plain" security types (Plain, TLSPlain, etc.). Specify \fB*\fP
|
|
||||||
-to allow any user to authenticate using this security type. Default is to
|
|
||||||
-deny all users.
|
|
||||||
+to allow any user to authenticate using this security type. Specify \fB%u\fP
|
|
||||||
+to allow the user of the server process. Default is to deny all users.
|
|
||||||
.
|
|
||||||
.TP
|
|
||||||
.B \-pam_service \fIname\fP, \-PAMService \fIname\fP
|
|
||||||
diff --git a/unix/xserver/hw/vnc/Xvnc.man b/unix/xserver/hw/vnc/Xvnc.man
|
|
||||||
index ea87dea..e9fb654 100644
|
|
||||||
--- a/unix/xserver/hw/vnc/Xvnc.man
|
|
||||||
+++ b/unix/xserver/hw/vnc/Xvnc.man
|
|
||||||
@@ -200,8 +200,8 @@ parameter instead.
|
|
||||||
.B \-PlainUsers \fIuser-list\fP
|
|
||||||
A comma separated list of user names that are allowed to authenticate via
|
|
||||||
any of the "Plain" security types (Plain, TLSPlain, etc.). Specify \fB*\fP
|
|
||||||
-to allow any user to authenticate using this security type. Default is to
|
|
||||||
-deny all users.
|
|
||||||
+to allow any user to authenticate using this security type. Specify \fB%u\fP
|
|
||||||
+to allow the user of the server process. Default is to deny all users.
|
|
||||||
.
|
|
||||||
.TP
|
|
||||||
.B \-pam_service \fIname\fP, \-PAMService \fIname\fP
|
|
@ -1,17 +0,0 @@
|
|||||||
diff --git a/unix/xserver/hw/vnc/xvnc.c b/unix/xserver/hw/vnc/xvnc.c
|
|
||||||
index f8141959..c5c36539 100644
|
|
||||||
--- a/unix/xserver/hw/vnc/xvnc.c
|
|
||||||
+++ b/unix/xserver/hw/vnc/xvnc.c
|
|
||||||
@@ -366,8 +366,10 @@ ddxProcessArgument(int argc, char *argv[], int i)
|
|
||||||
if (strcmp(argv[i], "-inetd") == 0) {
|
|
||||||
int nullfd;
|
|
||||||
|
|
||||||
- dup2(0, 3);
|
|
||||||
- vncInetdSock = 3;
|
|
||||||
+ if ((vncInetdSock = dup(0)) == -1)
|
|
||||||
+ FatalError
|
|
||||||
+ ("Xvnc error: failed to allocate a new file descriptor for -inetd: %s\n", strerror(errno));
|
|
||||||
+
|
|
||||||
|
|
||||||
/* Avoid xserver >= 1.19's epoll-fd becoming fd 2 / stderr only to be
|
|
||||||
replaced by /dev/null by OsInit() because the pollfd is not
|
|
@ -1,6 +1,7 @@
|
|||||||
diff -up xserver/configure.ac.xserver116-rebased xserver/configure.ac
|
diff --git a/configure.ac b/configure.ac
|
||||||
--- xserver/configure.ac.xserver116-rebased 2016-09-29 13:14:45.595441590 +0200
|
index 0909cc5b4..c01873200 100644
|
||||||
+++ xserver/configure.ac 2016-09-29 13:14:45.631442006 +0200
|
--- a/configure.ac
|
||||||
|
+++ b/configure.ac
|
||||||
@@ -74,6 +74,7 @@ dnl forcing an entire recompile.x
|
@@ -74,6 +74,7 @@ dnl forcing an entire recompile.x
|
||||||
AC_CONFIG_HEADERS(include/version-config.h)
|
AC_CONFIG_HEADERS(include/version-config.h)
|
||||||
|
|
||||||
@ -9,35 +10,30 @@ diff -up xserver/configure.ac.xserver116-rebased xserver/configure.ac
|
|||||||
AC_PROG_LN_S
|
AC_PROG_LN_S
|
||||||
LT_PREREQ([2.2])
|
LT_PREREQ([2.2])
|
||||||
LT_INIT([disable-static win32-dll])
|
LT_INIT([disable-static win32-dll])
|
||||||
@@ -1863,6 +1864,10 @@ if test "x$XVFB" = xyes; then
|
@@ -1735,6 +1736,14 @@ if test "x$XVFB" = xyes; then
|
||||||
AC_SUBST([XVFB_SYS_LIBS])
|
AC_SUBST([XVFB_SYS_LIBS])
|
||||||
fi
|
fi
|
||||||
|
|
||||||
+dnl Xvnc DDX
|
+dnl Xvnc DDX
|
||||||
+AC_SUBST([XVNC_CPPFLAGS], ["-DHAVE_DIX_CONFIG_H $XSERVER_CFLAGS"])
|
|
||||||
+AC_SUBST([XVNC_LIBS], ["$FB_LIB $FIXES_LIB $XEXT_LIB $CONFIG_LIB $DBE_LIB $RECORD_LIB $GLX_LIBS $RANDR_LIB $RENDER_LIB $DAMAGE_LIB $DRI3_LIB $PRESENT_LIB $MIEXT_SYNC_LIB $MIEXT_DAMAGE_LIB $MIEXT_SHADOW_LIB $XI_LIB $XKB_LIB $XKB_STUB_LIB $COMPOSITE_LIB $MAIN_LIB"])
|
+AC_SUBST([XVNC_LIBS], ["$FB_LIB $FIXES_LIB $XEXT_LIB $CONFIG_LIB $DBE_LIB $RECORD_LIB $GLX_LIBS $RANDR_LIB $RENDER_LIB $DAMAGE_LIB $DRI3_LIB $PRESENT_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"])
|
+AC_SUBST([XVNC_SYS_LIBS], ["$GLX_SYS_LIBS"])
|
||||||
|
+
|
||||||
|
+PKG_CHECK_MODULES(GBM, "$LIBGBM", [GBM=yes], [GBM=no])
|
||||||
|
+if test "x$GBM" = xyes; then
|
||||||
|
+ AC_DEFINE(HAVE_GBM, 1, [Have GBM support])
|
||||||
|
+fi
|
||||||
|
|
||||||
dnl Xnest DDX
|
dnl Xnest DDX
|
||||||
|
|
||||||
@@ -1898,6 +1903,8 @@ if test "x$XORG" = xauto; then
|
@@ -2058,7 +2067,6 @@ if test "x$GLAMOR" = xyes; then
|
||||||
fi
|
[AC_DEFINE(GLAMOR_HAS_EGL_QUERY_DRIVER, 1, [Have GLAMOR_HAS_EGL_QUERY_DRIVER])],
|
||||||
AC_MSG_RESULT([$XORG])
|
[])
|
||||||
|
|
||||||
+AC_DEFINE_UNQUOTED(XORG_VERSION_CURRENT, [$VENDOR_RELEASE], [Current Xorg version])
|
- PKG_CHECK_MODULES(GBM, "$LIBGBM", [GBM=yes], [GBM=no])
|
||||||
+
|
if test "x$GBM" = xyes; then
|
||||||
if test "x$XORG" = xyes; then
|
AC_DEFINE(GLAMOR_HAS_GBM, 1,
|
||||||
XORG_DDXINCS='-I$(top_srcdir)/hw/xfree86 -I$(top_srcdir)/hw/xfree86/include -I$(top_srcdir)/hw/xfree86/common'
|
[Build glamor with GBM-based EGL support])
|
||||||
XORG_OSINCS='-I$(top_srcdir)/hw/xfree86/os-support -I$(top_srcdir)/hw/xfree86/os-support/bus -I$(top_srcdir)/os'
|
@@ -2523,6 +2531,7 @@ hw/dmx/Makefile
|
||||||
@@ -2116,7 +2123,6 @@ if test "x$XORG" = xyes; then
|
|
||||||
AC_DEFINE(XORG_SERVER, 1, [Building Xorg server])
|
|
||||||
AC_DEFINE(XORGSERVER, 1, [Building Xorg server])
|
|
||||||
AC_DEFINE(XFree86Server, 1, [Building 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])
|
|
||||||
@@ -2691,6 +2697,7 @@ hw/dmx/Makefile
|
|
||||||
hw/dmx/man/Makefile
|
hw/dmx/man/Makefile
|
||||||
hw/vfb/Makefile
|
hw/vfb/Makefile
|
||||||
hw/vfb/man/Makefile
|
hw/vfb/man/Makefile
|
||||||
@ -45,47 +41,98 @@ diff -up xserver/configure.ac.xserver116-rebased xserver/configure.ac
|
|||||||
hw/xnest/Makefile
|
hw/xnest/Makefile
|
||||||
hw/xnest/man/Makefile
|
hw/xnest/man/Makefile
|
||||||
hw/xwin/Makefile
|
hw/xwin/Makefile
|
||||||
diff -up xserver/hw/Makefile.am.xserver116-rebased xserver/hw/Makefile.am
|
diff --git a/dri3/Makefile.am b/dri3/Makefile.am
|
||||||
--- xserver/hw/Makefile.am.xserver116-rebased 2016-09-29 13:14:45.601441659 +0200
|
index e47a734e0..99c3718a5 100644
|
||||||
+++ xserver/hw/Makefile.am 2016-09-29 13:14:45.631442006 +0200
|
--- a/dri3/Makefile.am
|
||||||
@@ -38,7 +38,8 @@ SUBDIRS = \
|
+++ b/dri3/Makefile.am
|
||||||
$(DMX_SUBDIRS) \
|
@@ -1,7 +1,7 @@
|
||||||
$(KDRIVE_SUBDIRS) \
|
noinst_LTLIBRARIES = libdri3.la
|
||||||
$(XQUARTZ_SUBDIRS) \
|
AM_CFLAGS = \
|
||||||
- $(XWAYLAND_SUBDIRS)
|
- -DHAVE_XORG_CONFIG_H \
|
||||||
+ $(XWAYLAND_SUBDIRS) \
|
- @DIX_CFLAGS@ @XORG_CFLAGS@
|
||||||
+ vnc
|
+ @DIX_CFLAGS@ \
|
||||||
|
+ @LIBDRM_CFLAGS@
|
||||||
|
|
||||||
DIST_SUBDIRS = dmx xfree86 vfb xnest xwin xquartz kdrive xwayland
|
libdri3_la_SOURCES = \
|
||||||
|
dri3.h \
|
||||||
|
diff --git a/dri3/dri3.c b/dri3/dri3.c
|
||||||
|
index ba32facd7..191252969 100644
|
||||||
|
--- a/dri3/dri3.c
|
||||||
|
+++ b/dri3/dri3.c
|
||||||
|
@@ -20,10 +20,6 @@
|
||||||
|
* OF THIS SOFTWARE.
|
||||||
|
*/
|
||||||
|
|
||||||
diff --git xserver/mi/miinitext.c xserver/mi/miinitext.c
|
-#ifdef HAVE_XORG_CONFIG_H
|
||||||
index 5596e21..003fc3c 100644
|
-#include <xorg-config.h>
|
||||||
--- xserver/mi/miinitext.c
|
-#endif
|
||||||
+++ xserver/mi/miinitext.c
|
-
|
||||||
@@ -107,8 +107,15 @@ SOFTWARE.
|
#include "dri3_priv.h"
|
||||||
#include "os.h"
|
|
||||||
#include "globals.h"
|
|
||||||
|
|
||||||
+#ifdef TIGERVNC
|
#include <drm_fourcc.h>
|
||||||
+extern void vncExtensionInit(INITARGS);
|
diff --git a/dri3/dri3_priv.h b/dri3/dri3_priv.h
|
||||||
+#endif
|
index b087a9529..f319d1770 100644
|
||||||
|
--- a/dri3/dri3_priv.h
|
||||||
|
+++ b/dri3/dri3_priv.h
|
||||||
|
@@ -23,6 +23,7 @@
|
||||||
|
#ifndef _DRI3PRIV_H_
|
||||||
|
#define _DRI3PRIV_H_
|
||||||
|
|
||||||
|
+#include "dix-config.h"
|
||||||
|
#include <X11/X.h>
|
||||||
|
#include "scrnintstr.h"
|
||||||
|
#include "misc.h"
|
||||||
|
diff --git a/dri3/dri3_request.c b/dri3/dri3_request.c
|
||||||
|
index 958877efa..687168930 100644
|
||||||
|
--- a/dri3/dri3_request.c
|
||||||
|
+++ b/dri3/dri3_request.c
|
||||||
|
@@ -20,10 +20,6 @@
|
||||||
|
* OF THIS SOFTWARE.
|
||||||
|
*/
|
||||||
|
|
||||||
|
-#ifdef HAVE_XORG_CONFIG_H
|
||||||
|
-#include <xorg-config.h>
|
||||||
|
-#endif
|
||||||
|
-
|
||||||
|
#include "dri3_priv.h"
|
||||||
|
#include <syncsrv.h>
|
||||||
|
#include <unistd.h>
|
||||||
|
diff --git a/dri3/dri3_screen.c b/dri3/dri3_screen.c
|
||||||
|
index b98259753..3c7e5bf60 100644
|
||||||
|
--- a/dri3/dri3_screen.c
|
||||||
|
+++ b/dri3/dri3_screen.c
|
||||||
|
@@ -20,10 +20,6 @@
|
||||||
|
* OF THIS SOFTWARE.
|
||||||
|
*/
|
||||||
|
|
||||||
|
-#ifdef HAVE_XORG_CONFIG_H
|
||||||
|
-#include <xorg-config.h>
|
||||||
|
-#endif
|
||||||
|
-
|
||||||
|
#include "dri3_priv.h"
|
||||||
|
#include <syncsdk.h>
|
||||||
|
#include <misync.h>
|
||||||
|
diff --git a/hw/Makefile.am b/hw/Makefile.am
|
||||||
|
index 19895dc77..3ecfa8b7a 100644
|
||||||
|
--- a/hw/Makefile.am
|
||||||
|
+++ b/hw/Makefile.am
|
||||||
|
@@ -44,3 +44,5 @@ DIST_SUBDIRS = dmx xfree86 vfb xnest xwin xquartz kdrive xwayland
|
||||||
|
|
||||||
|
relink:
|
||||||
|
$(AM_V_at)for i in $(SUBDIRS) ; do $(MAKE) -C $$i relink || exit 1 ; done
|
||||||
+
|
+
|
||||||
/* List of built-in (statically linked) extensions */
|
+SUBDIRS += vnc
|
||||||
static const ExtensionModule staticExtensions[] = {
|
diff --git a/include/dix-config.h.in b/include/dix-config.h.in
|
||||||
+#ifdef TIGERVNC
|
index f8fc67067..d53c4e72f 100644
|
||||||
+ {vncExtensionInit, "VNC-EXTENSION", NULL},
|
--- a/include/dix-config.h.in
|
||||||
+#endif
|
+++ b/include/dix-config.h.in
|
||||||
{GEExtensionInit, "Generic Event Extension", &noGEExtension},
|
@@ -83,6 +83,9 @@
|
||||||
{ShapeExtensionInit, "SHAPE", NULL},
|
/* Define to 1 if you have the <fcntl.h> header file. */
|
||||||
#ifdef MITSHM
|
#undef HAVE_FCNTL_H
|
||||||
--- xserver/include/os.h~ 2016-10-03 09:07:29.000000000 +0200
|
|
||||||
+++ xserver/include/os.h 2016-10-03 14:13:00.013654506 +0200
|
+/* Have GBM support */
|
||||||
@@ -621,7 +621,7 @@
|
+#undef HAVE_GBM
|
||||||
extern _X_EXPORT void
|
+
|
||||||
LogClose(enum ExitCode error);
|
/* Define to 1 if you have the `getdtablesize' function. */
|
||||||
extern _X_EXPORT Bool
|
#undef HAVE_GETDTABLESIZE
|
||||||
-LogSetParameter(LogParameter param, int value);
|
|
||||||
+LogSetParameter(enum _LogParameter param, int value);
|
|
||||||
extern _X_EXPORT void
|
|
||||||
LogVWrite(int verb, const char *f, va_list args)
|
|
||||||
_X_ATTRIBUTE_PRINTF(2, 0);
|
|
||||||
|
@ -4,8 +4,8 @@
|
|||||||
%global modulename vncsession
|
%global modulename vncsession
|
||||||
|
|
||||||
Name: tigervnc
|
Name: tigervnc
|
||||||
Version: 1.13.1
|
Version: 1.14.0
|
||||||
Release: 11%{?dist}
|
Release: 2%{?dist}
|
||||||
Summary: A TigerVNC remote display system
|
Summary: A TigerVNC remote display system
|
||||||
|
|
||||||
%global _hardened_build 1
|
%global _hardened_build 1
|
||||||
@ -26,10 +26,11 @@ Patch1: tigervnc-use-gnome-as-default-session.patch
|
|||||||
Patch2: tigervnc-vncsession-restore-script-systemd-service.patch
|
Patch2: tigervnc-vncsession-restore-script-systemd-service.patch
|
||||||
|
|
||||||
# Upstream patches
|
# Upstream patches
|
||||||
Patch50: tigervnc-support-username-alias-in-plainusers.patch
|
Patch50: tigervnc-vncsession-use-bin-sh-when-shell-not-set.patch
|
||||||
Patch51: tigervnc-use-dup-to-get-available-fd-for-inetd.patch
|
Patch51: tigervnc-add-missing-coma-in-default-security-type-list.patch
|
||||||
Patch52: tigervnc-add-option-to-force-view-only-remote-connections.patch
|
Patch52: tigervnc-vncsession-move-existing-log-to-log-old-if-present.patch
|
||||||
Patch53: tigervnc-vncsession-use-bin-sh-when-shell-not-set.patch
|
Patch53: tigervnc-handle-existing-config-directory-in-vncpasswd.patch
|
||||||
|
Patch54: tigervnc-correctly-handle-zrle-cursors.patch
|
||||||
|
|
||||||
# Upstreamable patches
|
# Upstreamable patches
|
||||||
Patch80: tigervnc-dont-get-pointer-position-for-floating-device.patch
|
Patch80: tigervnc-dont-get-pointer-position-for-floating-device.patch
|
||||||
@ -77,11 +78,13 @@ BuildRequires: libXinerama-devel
|
|||||||
BuildRequires: libXt-devel
|
BuildRequires: libXt-devel
|
||||||
BuildRequires: libXtst-devel
|
BuildRequires: libXtst-devel
|
||||||
BuildRequires: libdrm-devel
|
BuildRequires: libdrm-devel
|
||||||
|
BuildRequires: mesa-libgbm-devel
|
||||||
BuildRequires: libtool
|
BuildRequires: libtool
|
||||||
BuildRequires: libxkbfile-devel
|
BuildRequires: libxkbfile-devel
|
||||||
BuildRequires: libxshmfence-devel
|
BuildRequires: libxshmfence-devel
|
||||||
BuildRequires: mesa-libGL-devel
|
BuildRequires: mesa-libGL-devel
|
||||||
BuildRequires: xorg-x11-font-utils
|
BuildRequires: pkgconfig(fontutil)
|
||||||
|
BuildRequires: pkgconfig(xkbcomp)
|
||||||
BuildRequires: xorg-x11-server-devel
|
BuildRequires: xorg-x11-server-devel
|
||||||
BuildRequires: xorg-x11-server-source
|
BuildRequires: xorg-x11-server-source
|
||||||
BuildRequires: xorg-x11-util-macros
|
BuildRequires: xorg-x11-util-macros
|
||||||
@ -189,22 +192,23 @@ for all in `find . -type f -perm -001`; do
|
|||||||
chmod -x "$all"
|
chmod -x "$all"
|
||||||
done
|
done
|
||||||
# Xorg patches
|
# Xorg patches
|
||||||
%patch100 -p1 -b .xserver120-rebased
|
%patch -P100 -p1 -b .xserver120-rebased
|
||||||
%patch101 -p1 -b .rpath
|
%patch -P101 -p1 -b .rpath
|
||||||
popd
|
popd
|
||||||
|
|
||||||
# Tigervnc patches
|
# Tigervnc patches
|
||||||
%patch1 -p1 -b .use-gnome-as-default-session
|
%patch -P1 -p1 -b .use-gnome-as-default-session
|
||||||
%patch2 -p1 -b .vncsession-restore-script-systemd-service
|
%patch -P2 -p1 -b .vncsession-restore-script-systemd-service
|
||||||
|
|
||||||
# Upstream patches
|
# Upstream patches
|
||||||
%patch50 -p1 -b .support-username-alias-in-plainusers
|
%patch -P50 -p1 -b .vncsession-use-bin-sh-when-shell-not-set
|
||||||
%patch51 -p1 -b .use-dup-to-get-available-fd-for-inetd
|
%patch -P51 -p1 -b .add-missing-coma-in-default-security-type-list
|
||||||
%patch52 -p1 -b .add-option-to-force-view-only-remote-connections
|
%patch -P52 -p1 -b .vncsession-move-existing-log-to-log-old-if-present
|
||||||
%patch53 -p1 -b .tigervnc-vncsession-use-bin-sh-when-shell-not-set
|
%patch -P53 -p1 -b .handle-existing-config-directory-in-vncpasswd
|
||||||
|
%patch -P54 -p1 -b .correctly-handle-zrle-cursors.patch
|
||||||
|
|
||||||
# Upstreamable patches
|
# Upstreamable patches
|
||||||
%patch80 -p1 -b .dont-get-pointer-position-for-floating-device
|
%patch -P80 -p1 -b .dont-get-pointer-position-for-floating-device
|
||||||
|
|
||||||
%build
|
%build
|
||||||
%ifarch sparcv9 sparc64 s390 s390x
|
%ifarch sparcv9 sparc64 s390 s390x
|
||||||
@ -237,11 +241,10 @@ autoreconf -fiv
|
|||||||
--with-fontdir=%{_datadir}/X11/fonts \
|
--with-fontdir=%{_datadir}/X11/fonts \
|
||||||
--with-xkb-output=%{_localstatedir}/lib/xkb \
|
--with-xkb-output=%{_localstatedir}/lib/xkb \
|
||||||
--enable-install-libxf86config \
|
--enable-install-libxf86config \
|
||||||
--enable-glx --disable-dri --enable-dri2 --disable-dri3 \
|
--enable-glx --disable-dri --enable-dri2 --enable-dri3 \
|
||||||
--disable-unit-tests \
|
--disable-unit-tests \
|
||||||
--disable-config-hal \
|
--disable-config-hal \
|
||||||
--disable-config-udev \
|
--disable-config-udev \
|
||||||
--with-dri-driver-path=%{_libdir}/dri \
|
|
||||||
--without-dtrace \
|
--without-dtrace \
|
||||||
--disable-devel-docs \
|
--disable-devel-docs \
|
||||||
--disable-selective-werror
|
--disable-selective-werror
|
||||||
@ -387,6 +390,14 @@ fi
|
|||||||
%ghost %verify(not md5 size mode mtime) %{_sharedstatedir}/selinux/%{selinuxtype}/active/modules/200/%{modulename}
|
%ghost %verify(not md5 size mode mtime) %{_sharedstatedir}/selinux/%{selinuxtype}/active/modules/200/%{modulename}
|
||||||
|
|
||||||
%changelog
|
%changelog
|
||||||
|
* Tue Jul 23 2024 Jan Grulich <jgrulich@redhat.com> - 1.14.0-2
|
||||||
|
- 1.14.0
|
||||||
|
Resolves: RHEL-45316
|
||||||
|
- Move old log to log.old if present
|
||||||
|
Resolves: RHEL-54294
|
||||||
|
- Fix shared memory leak
|
||||||
|
Resolves: RHEL-55768
|
||||||
|
|
||||||
* Mon Aug 05 2024 Jan Grulich <jgrulich@redhat.com> - 1.13.1-11
|
* Mon Aug 05 2024 Jan Grulich <jgrulich@redhat.com> - 1.13.1-11
|
||||||
- vncsession: use /bin/sh if the user shell is not set
|
- vncsession: use /bin/sh if the user shell is not set
|
||||||
Resolves: RHEL-50679
|
Resolves: RHEL-50679
|
||||||
|
Loading…
Reference in New Issue
Block a user