package/x11r7/xserver_xorg-server: remove unmaintained versions 1.14.7 & 1.17.4
authorBernd Kuhls <bernd.kuhls@t-online.de>
Sat, 29 Aug 2020 11:34:03 +0000 (13:34 +0200)
committerArnout Vandecappelle (Essensium/Mind) <arnout@mind.be>
Tue, 1 Sep 2020 20:10:09 +0000 (22:10 +0200)
Upstream does not maintain these older versions anymore. Due to security
fixes not being backported to these versions anymore we remove these old
X server versions.

Move current patches from version-specific directory to package directory.

No legacy handling is added for the old versions, since it's simply a
version bump. THe old packages and features (AIGLX) that depend on the
old versions do have legacy handling.

Remove legacy handling for 1.19.*

Signed-off-by: Bernd Kuhls <bernd.kuhls@t-online.de>
Signed-off-by: Arnout Vandecappelle (Essensium/Mind) <arnout@mind.be>
28 files changed:
Config.in.legacy
package/x11r7/xserver_xorg-server/0001-modesettings-needs-dri2.patch [new file with mode: 0644]
package/x11r7/xserver_xorg-server/0002-configure.ac-Fix-check-for-CLOCK_MONOTONIC.patch [new file with mode: 0644]
package/x11r7/xserver_xorg-server/0003-Remove-check-for-useSIGIO-option.patch [new file with mode: 0644]
package/x11r7/xserver_xorg-server/0004-include-misc.h-fix-uClibc-build.patch [new file with mode: 0644]
package/x11r7/xserver_xorg-server/0005-hw-xwayland-Makefile.am-fix-build-without-glx.patch [new file with mode: 0644]
package/x11r7/xserver_xorg-server/0006-hw-xfree86-common-xf86Init.c-fix-build-without-glx.patch [new file with mode: 0644]
package/x11r7/xserver_xorg-server/0007-fix-for-ZDI-11426.patch [new file with mode: 0644]
package/x11r7/xserver_xorg-server/1.14.7/0001-sdksyms-gcc5.patch [deleted file]
package/x11r7/xserver_xorg-server/1.14.7/0002-Xi-Zero-target-buffer-in-SProcXSendExtensionEvent.patch [deleted file]
package/x11r7/xserver_xorg-server/1.14.7/0003-dix-Disallow-GenericEvent-in-SendEvent-request.patch [deleted file]
package/x11r7/xserver_xorg-server/1.14.7/0004-Xi-Verify-all-events-in-ProcXSendExtensionEvent.patch [deleted file]
package/x11r7/xserver_xorg-server/1.14.7/0005-Xi-Do-not-try-to-swap-GenericEvent.patch [deleted file]
package/x11r7/xserver_xorg-server/1.17.4/0001-modesettings-needs-dri2.patch [deleted file]
package/x11r7/xserver_xorg-server/1.17.4/0002-Xi-Zero-target-buffer-in-SProcXSendExtensionEvent.patch [deleted file]
package/x11r7/xserver_xorg-server/1.17.4/0003-dix-Disallow-GenericEvent-in-SendEvent-request.patch [deleted file]
package/x11r7/xserver_xorg-server/1.17.4/0004-Xi-Verify-all-events-in-ProcXSendExtensionEvent.patch [deleted file]
package/x11r7/xserver_xorg-server/1.17.4/0005-Xi-Do-not-try-to-swap-GenericEvent.patch [deleted file]
package/x11r7/xserver_xorg-server/1.20.8/0001-modesettings-needs-dri2.patch [deleted file]
package/x11r7/xserver_xorg-server/1.20.8/0002-configure.ac-Fix-check-for-CLOCK_MONOTONIC.patch [deleted file]
package/x11r7/xserver_xorg-server/1.20.8/0003-Remove-check-for-useSIGIO-option.patch [deleted file]
package/x11r7/xserver_xorg-server/1.20.8/0004-include-misc.h-fix-uClibc-build.patch [deleted file]
package/x11r7/xserver_xorg-server/1.20.8/0005-hw-xwayland-Makefile.am-fix-build-without-glx.patch [deleted file]
package/x11r7/xserver_xorg-server/1.20.8/0006-hw-xfree86-common-xf86Init.c-fix-build-without-glx.patch [deleted file]
package/x11r7/xserver_xorg-server/1.20.8/0007-fix-for-ZDI-11426.patch [deleted file]
package/x11r7/xserver_xorg-server/Config.in
package/x11r7/xserver_xorg-server/xserver_xorg-server.hash
package/x11r7/xserver_xorg-server/xserver_xorg-server.mk

index 3bcdaf92873d6cd9e7e7f3682f22b03b9f7b32e4..0c37b600ba1ff22a63dc334c9bacf2f841d21648 100644 (file)
@@ -146,6 +146,12 @@ endif
 
 comment "Legacy options removed in 2020.11"
 
+config BR2_PACKAGE_XSERVER_XORG_SERVER_AIGLX
+       bool "X.org Enable AIGLX Extension"
+       select BR2_LEGACY
+       help
+         AIGLX Extension was removed in X.org X server version 1.19.0
+
 config BR2_PACKAGE_AMD_CATALYST
        bool "amd-catalyst"
        select BR2_LEGACY
@@ -1114,13 +1120,6 @@ config BR2_PACKAGE_DOCKER_ENGINE_STATIC_CLIENT
          BR2_PACKAGE_DOCKER_CLI_STATIC, following the package split of
          docker-engine and docker-cli.
 
-config BR2_PACKAGE_XSERVER_XORG_SERVER_V_1_19
-       bool "Modular X.org server was updated to version 1.20.0"
-       select BR2_LEGACY
-       select BR2_PACKAGE_XSERVER_XORG_SERVER_V_1_20
-       help
-         Modular X.org server was updated to version 1.20.0
-
 config BR2_PACKAGE_XPROTO_APPLEWMPROTO
        bool "xproto-applewmproto package replaced by xorgproto"
        select BR2_LEGACY
diff --git a/package/x11r7/xserver_xorg-server/0001-modesettings-needs-dri2.patch b/package/x11r7/xserver_xorg-server/0001-modesettings-needs-dri2.patch
new file mode 100644 (file)
index 0000000..97ec29d
--- /dev/null
@@ -0,0 +1,20 @@
+Kernel modesettings support also depends on dri2, see
+http://cgit.freedesktop.org/xorg/xserver/tree/hw/xfree86/drivers/modesetting/Makefile.am#n46
+
+Patch sent upstream: https://gitlab.freedesktop.org/xorg/xserver/issues/479
+
+[rebased for version 1.20.0]
+Signed-off-by: Bernd Kuhls <bernd.kuhls@t-online.de>
+
+diff -uNr xorg-server-1.17.2.org/configure.ac xorg-server-1.17.2/configure.ac
+--- xorg-server-1.17.2.org/configure.ac        2015-06-16 17:42:40.000000000 +0200
++++ xorg-server-1.17.2/configure.ac    2015-08-08 10:44:59.702382624 +0200
+@@ -2036,7 +2036,7 @@
+               XORG_SYS_LIBS="$XORG_SYS_LIBS $XORG_MODULES_LIBS"
+       fi
+-      if test "x$DRM" = xyes; then
++      if test "x$DRM" = xyes -a "x$DRI2" = xyes; then
+               XORG_DRIVER_MODESETTING=yes
+       fi
diff --git a/package/x11r7/xserver_xorg-server/0002-configure.ac-Fix-check-for-CLOCK_MONOTONIC.patch b/package/x11r7/xserver_xorg-server/0002-configure.ac-Fix-check-for-CLOCK_MONOTONIC.patch
new file mode 100644 (file)
index 0000000..c5f04bf
--- /dev/null
@@ -0,0 +1,66 @@
+Discover monotonic clock using compile-time check
+
+monotonic clock check does not work when cross-compiling.
+
+Upstream-Status: Denied [Does not work on OpenBSD]
+Signed-off-by: Jussi Kukkonen <jussi.kukkonen@intel.com>
+
+
+
+Original patch follows:
+
+When xorg-xserver is being cross-compiled, there is currently no way
+for us to detect whether the monotonic clock is available on the
+target system, because we aren't able to run a test program on the host
+system. Currently, in this situation, we default to not use the
+monotonic clock. One problem with this situation is that the user will
+be treated as idle when the date is updated.
+
+To fix this situation, we now use a compile-time check to detect whether the
+monotonic clock is available. This check can run just fine when we are
+cross-compiling.
+
+Signed-off-by: David James <davidjames at google.com>
+
+Downloaded from
+https://github.com/openembedded/openembedded-core/blob/master/meta/recipes-graphics/xorg-xserver/xserver-xorg/0001-configure.ac-Fix-check-for-CLOCK_MONOTONIC.patch
+
+Signed-off-by: Bernd Kuhls <bernd.kuhls@t-online.de>
+---
+ configure.ac | 17 +++++++----------
+ 1 file changed, 7 insertions(+), 10 deletions(-)
+
+diff --git a/configure.ac b/configure.ac
+index f7ab48c..26e85cd 100644
+--- a/configure.ac
++++ b/configure.ac
+@@ -1048,19 +1048,16 @@ if ! test "x$have_clock_gettime" = xno; then
+         CPPFLAGS="$CPPFLAGS -D_POSIX_C_SOURCE=200112L"
+     fi
+-    AC_RUN_IFELSE([AC_LANG_SOURCE([
++    AC_COMPILE_IFELSE([AC_LANG_SOURCE([[
+ #include <time.h>
+-
+-int main(int argc, char *argv[[]]) {
+-    struct timespec tp;
+-
+-    if (clock_gettime(CLOCK_MONOTONIC, &tp) == 0)
++#include <unistd.h>
++int main() {
++#if !(defined(_POSIX_MONOTONIC_CLOCK) && _POSIX_MONOTONIC_CLOCK >= 0 && defined(CLOCK_MONOTONIC))
++        #error No monotonic clock
++#endif
+         return 0;
+-    else
+-        return 1;
+ }
+-    ])], [MONOTONIC_CLOCK=yes], [MONOTONIC_CLOCK=no],
+-       [MONOTONIC_CLOCK="cross compiling"])
++]])],[MONOTONIC_CLOCK=yes], [MONOTONIC_CLOCK=no])
+     LIBS="$LIBS_SAVE"
+     CPPFLAGS="$CPPFLAGS_SAVE"
+-- 
+2.1.4
+
diff --git a/package/x11r7/xserver_xorg-server/0003-Remove-check-for-useSIGIO-option.patch b/package/x11r7/xserver_xorg-server/0003-Remove-check-for-useSIGIO-option.patch
new file mode 100644 (file)
index 0000000..d4f0cca
--- /dev/null
@@ -0,0 +1,53 @@
+From cf407b16cd65ad6e26a9c8e5984e163409a5c0f7 Mon Sep 17 00:00:00 2001
+From: Prabhu Sundararaj <prabhu.sundararaj@nxp.com>
+Date: Mon, 30 Jan 2017 16:32:06 -0600
+Subject: [PATCH] Remove check for useSIGIO option
+
+Original patch follows:
+Commit 6a5a4e60373c1386b311b2a8bb666c32d68a9d99 removes the configure of useSIGIO
+option.
+
+As the xfree86 SIGIO support is reworked to use internal versions of OsBlockSIGIO
+and OsReleaseSIGIO.
+
+No longer the check for useSIGIO is needed
+
+Upstream-Status: Pending
+
+Signed-off-by: Prabhu Sundararaj <prabhu.sundararaj@nxp.com>
+
+Downloaded from
+https://github.com/openembedded/openembedded-core/blob/master/meta/recipes-graphics/xorg-xserver/xserver-xorg/0003-Remove-check-for-useSIGIO-option.patch
+
+Signed-off-by: Mylène Josserand <mylene.josserand@free-electrons.com>
+---
+ hw/xfree86/os-support/shared/sigio.c | 6 ------
+ 1 file changed, 6 deletions(-)
+
+diff --git a/hw/xfree86/os-support/shared/sigio.c b/hw/xfree86/os-support/shared/sigio.c
+index 884a71c..be76498 100644
+--- a/hw/xfree86/os-support/shared/sigio.c
++++ b/hw/xfree86/os-support/shared/sigio.c
+@@ -185,9 +185,6 @@ xf86InstallSIGIOHandler(int fd, void (*f) (int, void *), void *closure)
+     int i;
+     int installed = FALSE;
+-    if (!xf86Info.useSIGIO)
+-        return 0;
+-
+     for (i = 0; i < MAX_FUNCS; i++) {
+         if (!xf86SigIOFuncs[i].f) {
+             if (xf86IsPipe(fd))
+@@ -256,9 +253,6 @@ xf86RemoveSIGIOHandler(int fd)
+     int max;
+     int ret;
+-    if (!xf86Info.useSIGIO)
+-        return 0;
+-
+     max = 0;
+     ret = 0;
+     for (i = 0; i < MAX_FUNCS; i++) {
+-- 
+2.7.4
+
diff --git a/package/x11r7/xserver_xorg-server/0004-include-misc.h-fix-uClibc-build.patch b/package/x11r7/xserver_xorg-server/0004-include-misc.h-fix-uClibc-build.patch
new file mode 100644 (file)
index 0000000..562aa79
--- /dev/null
@@ -0,0 +1,31 @@
+From 2e8fca00f5bdb02f2f59aaa428d1e9d808ab0e86 Mon Sep 17 00:00:00 2001
+From: Bernd Kuhls <bernd.kuhls@t-online.de>
+Date: Sat, 16 Jun 2018 19:20:16 +0200
+Subject: [PATCH] include/misc.h: fix uClibc build
+
+A similar fix was used for Dovecot:
+https://www.dovecot.org/list/dovecot/2017-November/110019.html
+
+Signed-off-by: Bernd Kuhls <bernd.kuhls@t-online.de>
+---
+ include/misc.h | 4 ++++
+ 1 file changed, 4 insertions(+)
+
+diff --git a/include/misc.h b/include/misc.h
+index 14920c3c3..390e52b60 100644
+--- a/include/misc.h
++++ b/include/misc.h
+@@ -185,6 +185,10 @@ typedef struct _xReq *xReqPtr;
+ #endif
+ #endif
++#undef bswap_16
++#undef bswap_32
++#undef bswap_64
++
+ /**
+  * Calculate the number of bytes needed to hold bits.
+  * @param bits The minimum number of bits needed.
+-- 
+2.17.1
+
diff --git a/package/x11r7/xserver_xorg-server/0005-hw-xwayland-Makefile.am-fix-build-without-glx.patch b/package/x11r7/xserver_xorg-server/0005-hw-xwayland-Makefile.am-fix-build-without-glx.patch
new file mode 100644 (file)
index 0000000..5f19a26
--- /dev/null
@@ -0,0 +1,45 @@
+From b1d2a82d644518c1a75775244ac63be738aaf062 Mon Sep 17 00:00:00 2001
+From: Fabrice Fontaine <fontaine.fabrice@gmail.com>
+Date: Fri, 19 Apr 2019 10:19:50 +0200
+Subject: [PATCH] hw/xwayland/Makefile.am: fix build without glx
+
+Commit d8ec33fe0542141aed1d9016d2ecaf52da944b4b added libglxvnd.la to
+Xwayland_LDFLAGS but GLX can be disabled through --disable-glx.
+In this case, build fails on:
+
+make[3]: *** No rule to make target '../../glx/libglxvnd.la', needed by 'Xwayland'.  Stop.
+make[3]: *** Waiting for unfinished jobs....
+
+Fixes:
+ - http://autobuild.buildroot.org/results/397f8098c57fc6c88aa12dc8d35ebb1b933d52ef
+
+Signed-off-by: Fabrice Fontaine <fontaine.fabrice@gmail.com>
+[Upstream status:
+https://gitlab.freedesktop.org/xorg/xserver/merge_requests/173]
+---
+ hw/xwayland/Makefile.am | 6 +++++-
+ 1 file changed, 5 insertions(+), 1 deletion(-)
+
+diff --git a/hw/xwayland/Makefile.am b/hw/xwayland/Makefile.am
+index bc1cb8506..502879e2a 100644
+--- a/hw/xwayland/Makefile.am
++++ b/hw/xwayland/Makefile.am
+@@ -21,10 +21,14 @@ Xwayland_SOURCES =                         \
+       $(top_srcdir)/Xi/stubs.c                \
+       $(top_srcdir)/mi/miinitext.c
++if GLX
++GLXVND_LIB = $(top_builddir)/glx/libglxvnd.la
++endif
++
+ Xwayland_LDADD =                              \
+       $(glamor_lib)                           \
+       $(XWAYLAND_LIBS)                        \
+-      $(top_builddir)/glx/libglxvnd.la        \
++      $(GLXVND_LIB)                           \
+       $(XWAYLAND_SYS_LIBS)                    \
+       $(top_builddir)/Xext/libXvidmode.la     \
+       $(XSERVER_SYS_LIBS)
+-- 
+2.20.1
+
diff --git a/package/x11r7/xserver_xorg-server/0006-hw-xfree86-common-xf86Init.c-fix-build-without-glx.patch b/package/x11r7/xserver_xorg-server/0006-hw-xfree86-common-xf86Init.c-fix-build-without-glx.patch
new file mode 100644 (file)
index 0000000..f1fdfe3
--- /dev/null
@@ -0,0 +1,45 @@
+From 49456e0a37fac7bc9d1f01bc1519fb0d699956db Mon Sep 17 00:00:00 2001
+From: Fabrice Fontaine <fontaine.fabrice@gmail.com>
+Date: Fri, 27 Dec 2019 23:33:37 +0100
+Subject: [PATCH] hw/xfree86/common/xf86Init.c: fix build without glx
+
+Since commit d8ec33fe0542141aed1d9016d2ecaf52da944b4b, an include on
+glxvndabi.h has been added to hw/xfree86/common/xf86Init.c
+
+However, if glx is disabled through --disable-glx and GLX headers are
+not installed in the build's environment, build fails on:
+
+In file included from xf86Init.c:81:
+../../../include/glxvndabi.h:64:10: fatal error: GL/glxproto.h: No such file or directory
+   64 | #include <GL/glxproto.h>
+      |          ^~~~~~~~~~~~~~~
+
+Fix this failure by removing this include which does not seem to be
+needed (an other option would have been to keep it under an ifdef GLXEXT
+block)
+
+Fixes:
+ - http://autobuild.buildroot.org/results/de838a843f97673d1381a55fd4e9b07164693913
+
+Signed-off-by: Fabrice Fontaine <fontaine.fabrice@gmail.com>
+[Retrieved from:
+https://gitlab.freedesktop.org/xorg/xserver/commit/49456e0a37fac7bc9d1f01bc1519fb0d699956db]
+---
+ hw/xfree86/common/xf86Init.c | 1 -
+ 1 file changed, 1 deletion(-)
+
+diff --git a/hw/xfree86/common/xf86Init.c b/hw/xfree86/common/xf86Init.c
+index 0631c7237..e6fb11398 100644
+--- a/hw/xfree86/common/xf86Init.c
++++ b/hw/xfree86/common/xf86Init.c
+@@ -74,7 +74,6 @@
+ #include "xf86Crtc.h"
+ #include "picturestr.h"
+ #include "randrstr.h"
+-#include "glxvndabi.h"
+ #include "xf86Bus.h"
+ #ifdef XSERVER_LIBPCIACCESS
+ #include "xf86VGAarbiter.h"
+-- 
+2.24.1
+
diff --git a/package/x11r7/xserver_xorg-server/0007-fix-for-ZDI-11426.patch b/package/x11r7/xserver_xorg-server/0007-fix-for-ZDI-11426.patch
new file mode 100644 (file)
index 0000000..ce623b2
--- /dev/null
@@ -0,0 +1,36 @@
+From aac28e162e5108510065ad4c323affd6deffd816 Mon Sep 17 00:00:00 2001
+From: Matthieu Herrb <matthieu@herrb.eu>
+Date: Sat, 25 Jul 2020 19:33:50 +0200
+Subject: [PATCH] fix for ZDI-11426
+
+Avoid leaking un-initalized memory to clients by zeroing the
+whole pixmap on initial allocation.
+
+This vulnerability was discovered by:
+Jan-Niklas Sohn working with Trend Micro Zero Day Initiative
+
+Signed-off-by: Matthieu Herrb <matthieu@herrb.eu>
+Reviewed-by: Alan Coopersmith <alan.coopersmith@oracle.com>
+Signed-off-by: Bernd Kuhls <bernd.kuhls@t-online.de>
+[downloaded from upstream commit
+ https://gitlab.freedesktop.org/xorg/xserver/-/commit/aac28e162e5108510065ad4c323affd6deffd816]
+---
+ dix/pixmap.c | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/dix/pixmap.c b/dix/pixmap.c
+index 1186d7dbbf..5a0146bbb6 100644
+--- a/dix/pixmap.c
++++ b/dix/pixmap.c
+@@ -116,7 +116,7 @@ AllocatePixmap(ScreenPtr pScreen, int pixDataSize)
+     if (pScreen->totalPixmapSize > ((size_t) - 1) - pixDataSize)
+         return NullPixmap;
+-    pPixmap = malloc(pScreen->totalPixmapSize + pixDataSize);
++    pPixmap = calloc(1, pScreen->totalPixmapSize + pixDataSize);
+     if (!pPixmap)
+         return NullPixmap;
+-- 
+GitLab
+
diff --git a/package/x11r7/xserver_xorg-server/1.14.7/0001-sdksyms-gcc5.patch b/package/x11r7/xserver_xorg-server/1.14.7/0001-sdksyms-gcc5.patch
deleted file mode 100644 (file)
index ad544aa..0000000
+++ /dev/null
@@ -1,50 +0,0 @@
-From 21b896939c5bb242f3aacc37baf12379e43254b6 Mon Sep 17 00:00:00 2001
-From: Egbert Eich <eich@freedesktop.org>
-Date: Tue, 3 Mar 2015 16:27:05 +0100
-Subject: symbols: Fix sdksyms.sh to cope with gcc5
-
-Gcc5 adds additional lines stating line numbers before and
-after __attribute__() which need to be skipped.
-
-Downloaded from upstream commit
-https://cgit.freedesktop.org/xorg/xserver/commit/hw/xfree86/sdksyms.sh?id=21b896939c5bb242f3aacc37baf12379e43254b6
-
-Signed-off-by: Bernd Kuhls <bernd.kuhls@t-online.de>
-Signed-off-by: Egbert Eich <eich@freedesktop.org>
-Tested-by: Daniel Stone <daniels@collabora.com>
-Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
-
-diff --git a/hw/xfree86/sdksyms.sh b/hw/xfree86/sdksyms.sh
-index 2305073..05ac410 100755
---- a/hw/xfree86/sdksyms.sh
-+++ b/hw/xfree86/sdksyms.sh
-@@ -350,13 +350,25 @@ BEGIN {
-     if (sdk) {
-       n = 3;
-+        # skip line numbers GCC 5 adds before __attribute__
-+        while ($n == "" || $0 ~ /^# [0-9]+ "/) {
-+           getline;
-+           n = 1;
-+        }
-+
-       # skip attribute, if any
-       while ($n ~ /^(__attribute__|__global)/ ||
-           # skip modifiers, if any
-           $n ~ /^\*?(unsigned|const|volatile|struct|_X_EXPORT)$/ ||
-           # skip pointer
--          $n ~ /^[a-zA-Z0-9_]*\*$/)
-+          $n ~ /^[a-zA-Z0-9_]*\*$/) {
-           n++;
-+            # skip line numbers GCC 5 adds after __attribute__
-+            while ($n == "" || $0 ~ /^# [0-9]+ "/) {
-+               getline;
-+               n = 1;
-+            }
-+        }
-       # type specifier may not be set, as in
-       #   extern _X_EXPORT unsigned name(...)
--- 
-cgit v0.10.2
-
diff --git a/package/x11r7/xserver_xorg-server/1.14.7/0002-Xi-Zero-target-buffer-in-SProcXSendExtensionEvent.patch b/package/x11r7/xserver_xorg-server/1.14.7/0002-Xi-Zero-target-buffer-in-SProcXSendExtensionEvent.patch
deleted file mode 100644 (file)
index c15dc9f..0000000
+++ /dev/null
@@ -1,39 +0,0 @@
-From 05442de962d3dc624f79fc1a00eca3ffc5489ced Mon Sep 17 00:00:00 2001
-From: Michal Srb <msrb@suse.com>
-Date: Wed, 24 May 2017 15:54:39 +0300
-Subject: [PATCH] Xi: Zero target buffer in SProcXSendExtensionEvent.
-
-Make sure that the xEvent eventT is initialized with zeros, the same way as
-in SProcSendEvent.
-
-Some event swapping functions do not overwrite all 32 bytes of xEvent
-structure, for example XSecurityAuthorizationRevoked. Two cooperating
-clients, one swapped and the other not, can send
-XSecurityAuthorizationRevoked event to each other to retrieve old stack data
-from X server. This can be potentialy misused to go around ASLR or
-stack-protector.
-
-Signed-off-by: Michal Srb <msrb@suse.com>
-Reviewed-by: Peter Hutterer <peter.hutterer@who-t.net>
-Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
-Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
----
- Xi/sendexev.c | 2 +-
- 1 file changed, 1 insertion(+), 1 deletion(-)
-
-diff --git a/Xi/sendexev.c b/Xi/sendexev.c
-index 11d82029f..1cf118ab6 100644
---- a/Xi/sendexev.c
-+++ b/Xi/sendexev.c
-@@ -78,7 +78,7 @@ SProcXSendExtensionEvent(ClientPtr client)
- {
-     CARD32 *p;
-     int i;
--    xEvent eventT;
-+    xEvent eventT = { .u.u.type = 0 };
-     xEvent *eventP;
-     EventSwapPtr proc;
--- 
-2.11.0
-
diff --git a/package/x11r7/xserver_xorg-server/1.14.7/0003-dix-Disallow-GenericEvent-in-SendEvent-request.patch b/package/x11r7/xserver_xorg-server/1.14.7/0003-dix-Disallow-GenericEvent-in-SendEvent-request.patch
deleted file mode 100644 (file)
index 12da5f5..0000000
+++ /dev/null
@@ -1,71 +0,0 @@
-From 215f894965df5fb0bb45b107d84524e700d2073c Mon Sep 17 00:00:00 2001
-From: Michal Srb <msrb@suse.com>
-Date: Wed, 24 May 2017 15:54:40 +0300
-Subject: [PATCH] dix: Disallow GenericEvent in SendEvent request.
-
-The SendEvent request holds xEvent which is exactly 32 bytes long, no more,
-no less. Both ProcSendEvent and SProcSendEvent verify that the received data
-exactly match the request size. However nothing stops the client from passing
-in event with xEvent::type = GenericEvent and any value of
-xGenericEvent::length.
-
-In the case of ProcSendEvent, the event will be eventually passed to
-WriteEventsToClient which will see that it is Generic event and copy the
-arbitrary length from the receive buffer (and possibly past it) and send it to
-the other client. This allows clients to copy unitialized heap memory out of X
-server or to crash it.
-
-In case of SProcSendEvent, it will attempt to swap the incoming event by
-calling a swapping function from the EventSwapVector array. The swapped event
-is written to target buffer, which in this case is local xEvent variable. The
-xEvent variable is 32 bytes long, but the swapping functions for GenericEvents
-expect that the target buffer has size matching the size of the source
-GenericEvent. This allows clients to cause stack buffer overflows.
-
-Signed-off-by: Michal Srb <msrb@suse.com>
-Reviewed-by: Peter Hutterer <peter.hutterer@who-t.net>
-Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
-Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
----
- dix/events.c  | 6 ++++++
- dix/swapreq.c | 7 +++++++
- 2 files changed, 13 insertions(+)
-
-diff --git a/dix/events.c b/dix/events.c
-index 3e3a01ef9..d3a33ea3f 100644
---- a/dix/events.c
-+++ b/dix/events.c
-@@ -5366,6 +5366,12 @@ ProcSendEvent(ClientPtr client)
-         client->errorValue = stuff->event.u.u.type;
-         return BadValue;
-     }
-+    /* Generic events can have variable size, but SendEvent request holds
-+       exactly 32B of event data. */
-+    if (stuff->event.u.u.type == GenericEvent) {
-+        client->errorValue = stuff->event.u.u.type;
-+        return BadValue;
-+    }
-     if (stuff->event.u.u.type == ClientMessage &&
-         stuff->event.u.u.detail != 8 &&
-         stuff->event.u.u.detail != 16 && stuff->event.u.u.detail != 32) {
-diff --git a/dix/swapreq.c b/dix/swapreq.c
-index 719e9b81c..67850593b 100644
---- a/dix/swapreq.c
-+++ b/dix/swapreq.c
-@@ -292,6 +292,13 @@ SProcSendEvent(ClientPtr client)
-     swapl(&stuff->destination);
-     swapl(&stuff->eventMask);
-+    /* Generic events can have variable size, but SendEvent request holds
-+       exactly 32B of event data. */
-+    if (stuff->event.u.u.type == GenericEvent) {
-+        client->errorValue = stuff->event.u.u.type;
-+        return BadValue;
-+    }
-+
-     /* Swap event */
-     proc = EventSwapVector[stuff->event.u.u.type & 0177];
-     if (!proc || proc == NotImplemented)        /* no swapping proc; invalid event type? */
--- 
-2.11.0
-
diff --git a/package/x11r7/xserver_xorg-server/1.14.7/0004-Xi-Verify-all-events-in-ProcXSendExtensionEvent.patch b/package/x11r7/xserver_xorg-server/1.14.7/0004-Xi-Verify-all-events-in-ProcXSendExtensionEvent.patch
deleted file mode 100644 (file)
index 2e65100..0000000
+++ /dev/null
@@ -1,50 +0,0 @@
-From 8caed4df36b1f802b4992edcfd282cbeeec35d9d Mon Sep 17 00:00:00 2001
-From: Michal Srb <msrb@suse.com>
-Date: Wed, 24 May 2017 15:54:41 +0300
-Subject: [PATCH] Xi: Verify all events in ProcXSendExtensionEvent.
-
-The requirement is that events have type in range
-EXTENSION_EVENT_BASE..lastEvent, but it was tested
-only for first event of all.
-
-Signed-off-by: Michal Srb <msrb@suse.com>
-Reviewed-by: Peter Hutterer <peter.hutterer@who-t.net>
-Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
-Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
----
- Xi/sendexev.c | 12 +++++++-----
- 1 file changed, 7 insertions(+), 5 deletions(-)
-
-diff --git a/Xi/sendexev.c b/Xi/sendexev.c
-index 1cf118ab6..5e63bfcca 100644
---- a/Xi/sendexev.c
-+++ b/Xi/sendexev.c
-@@ -117,7 +117,7 @@ SProcXSendExtensionEvent(ClientPtr client)
- int
- ProcXSendExtensionEvent(ClientPtr client)
- {
--    int ret;
-+    int ret, i;
-     DeviceIntPtr dev;
-     xEvent *first;
-     XEventClass *list;
-@@ -141,10 +141,12 @@ ProcXSendExtensionEvent(ClientPtr client)
-     /* The client's event type must be one defined by an extension. */
-     first = ((xEvent *) &stuff[1]);
--    if (!((EXTENSION_EVENT_BASE <= first->u.u.type) &&
--          (first->u.u.type < lastEvent))) {
--        client->errorValue = first->u.u.type;
--        return BadValue;
-+    for (i = 0; i < stuff->num_events; i++) {
-+        if (!((EXTENSION_EVENT_BASE <= first[i].u.u.type) &&
-+            (first[i].u.u.type < lastEvent))) {
-+            client->errorValue = first[i].u.u.type;
-+            return BadValue;
-+        }
-     }
-     list = (XEventClass *) (first + stuff->num_events);
--- 
-2.11.0
-
diff --git a/package/x11r7/xserver_xorg-server/1.14.7/0005-Xi-Do-not-try-to-swap-GenericEvent.patch b/package/x11r7/xserver_xorg-server/1.14.7/0005-Xi-Do-not-try-to-swap-GenericEvent.patch
deleted file mode 100644 (file)
index 871e762..0000000
+++ /dev/null
@@ -1,45 +0,0 @@
-From ba336b24052122b136486961c82deac76bbde455 Mon Sep 17 00:00:00 2001
-From: Michal Srb <msrb@suse.com>
-Date: Wed, 24 May 2017 15:54:42 +0300
-Subject: [PATCH] Xi: Do not try to swap GenericEvent.
-
-The SProcXSendExtensionEvent must not attempt to swap GenericEvent because
-it is assuming that the event has fixed size and gives the swapping function
-xEvent-sized buffer.
-
-A GenericEvent would be later rejected by ProcXSendExtensionEvent anyway.
-
-Signed-off-by: Michal Srb <msrb@suse.com>
-Reviewed-by: Peter Hutterer <peter.hutterer@who-t.net>
-Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
-Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
----
- Xi/sendexev.c | 10 +++++++++-
- 1 file changed, 9 insertions(+), 1 deletion(-)
-
-diff --git a/Xi/sendexev.c b/Xi/sendexev.c
-index 5e63bfcca..5c2e0fc56 100644
---- a/Xi/sendexev.c
-+++ b/Xi/sendexev.c
-@@ -95,9 +95,17 @@ SProcXSendExtensionEvent(ClientPtr client)
-     eventP = (xEvent *) &stuff[1];
-     for (i = 0; i < stuff->num_events; i++, eventP++) {
-+        if (eventP->u.u.type == GenericEvent) {
-+            client->errorValue = eventP->u.u.type;
-+            return BadValue;
-+        }
-+
-         proc = EventSwapVector[eventP->u.u.type & 0177];
--        if (proc == NotImplemented)     /* no swapping proc; invalid event type? */
-+        /* no swapping proc; invalid event type? */
-+        if (proc == NotImplemented) {
-+            client->errorValue = eventP->u.u.type;
-             return BadValue;
-+        }
-         (*proc) (eventP, &eventT);
-         *eventP = eventT;
-     }
--- 
-2.11.0
-
diff --git a/package/x11r7/xserver_xorg-server/1.17.4/0001-modesettings-needs-dri2.patch b/package/x11r7/xserver_xorg-server/1.17.4/0001-modesettings-needs-dri2.patch
deleted file mode 100644 (file)
index 4ef95ef..0000000
+++ /dev/null
@@ -1,19 +0,0 @@
-Kernel modesettings support also depends on dri2, see
-http://cgit.freedesktop.org/xorg/xserver/tree/hw/xfree86/drivers/modesetting/Makefile.am#n46
-
-Patch sent upstream: https://bugs.freedesktop.org/show_bug.cgi?id=91584
-
-Signed-off-by: Bernd Kuhls <bernd.kuhls@t-online.de>
-
-diff -uNr xorg-server-1.17.2.org/configure.ac xorg-server-1.17.2/configure.ac
---- xorg-server-1.17.2.org/configure.ac        2015-06-16 17:42:40.000000000 +0200
-+++ xorg-server-1.17.2/configure.ac    2015-08-08 10:44:59.702382624 +0200
-@@ -2036,7 +2036,7 @@
-               XORG_SYS_LIBS="$XORG_SYS_LIBS $XORG_MODULES_LIBS"
-       fi
--      if test "x$DRM" = xyes; then
-+      if test "x$DRM" = xyes -a "x$DRI2" = xyes; then
-               dnl 2.4.46 is required for cursor hotspot support.
-               PKG_CHECK_EXISTS(libdrm >= 2.4.46)
-               XORG_DRIVER_MODESETTING=yes
diff --git a/package/x11r7/xserver_xorg-server/1.17.4/0002-Xi-Zero-target-buffer-in-SProcXSendExtensionEvent.patch b/package/x11r7/xserver_xorg-server/1.17.4/0002-Xi-Zero-target-buffer-in-SProcXSendExtensionEvent.patch
deleted file mode 100644 (file)
index c15dc9f..0000000
+++ /dev/null
@@ -1,39 +0,0 @@
-From 05442de962d3dc624f79fc1a00eca3ffc5489ced Mon Sep 17 00:00:00 2001
-From: Michal Srb <msrb@suse.com>
-Date: Wed, 24 May 2017 15:54:39 +0300
-Subject: [PATCH] Xi: Zero target buffer in SProcXSendExtensionEvent.
-
-Make sure that the xEvent eventT is initialized with zeros, the same way as
-in SProcSendEvent.
-
-Some event swapping functions do not overwrite all 32 bytes of xEvent
-structure, for example XSecurityAuthorizationRevoked. Two cooperating
-clients, one swapped and the other not, can send
-XSecurityAuthorizationRevoked event to each other to retrieve old stack data
-from X server. This can be potentialy misused to go around ASLR or
-stack-protector.
-
-Signed-off-by: Michal Srb <msrb@suse.com>
-Reviewed-by: Peter Hutterer <peter.hutterer@who-t.net>
-Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
-Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
----
- Xi/sendexev.c | 2 +-
- 1 file changed, 1 insertion(+), 1 deletion(-)
-
-diff --git a/Xi/sendexev.c b/Xi/sendexev.c
-index 11d82029f..1cf118ab6 100644
---- a/Xi/sendexev.c
-+++ b/Xi/sendexev.c
-@@ -78,7 +78,7 @@ SProcXSendExtensionEvent(ClientPtr client)
- {
-     CARD32 *p;
-     int i;
--    xEvent eventT;
-+    xEvent eventT = { .u.u.type = 0 };
-     xEvent *eventP;
-     EventSwapPtr proc;
--- 
-2.11.0
-
diff --git a/package/x11r7/xserver_xorg-server/1.17.4/0003-dix-Disallow-GenericEvent-in-SendEvent-request.patch b/package/x11r7/xserver_xorg-server/1.17.4/0003-dix-Disallow-GenericEvent-in-SendEvent-request.patch
deleted file mode 100644 (file)
index 12da5f5..0000000
+++ /dev/null
@@ -1,71 +0,0 @@
-From 215f894965df5fb0bb45b107d84524e700d2073c Mon Sep 17 00:00:00 2001
-From: Michal Srb <msrb@suse.com>
-Date: Wed, 24 May 2017 15:54:40 +0300
-Subject: [PATCH] dix: Disallow GenericEvent in SendEvent request.
-
-The SendEvent request holds xEvent which is exactly 32 bytes long, no more,
-no less. Both ProcSendEvent and SProcSendEvent verify that the received data
-exactly match the request size. However nothing stops the client from passing
-in event with xEvent::type = GenericEvent and any value of
-xGenericEvent::length.
-
-In the case of ProcSendEvent, the event will be eventually passed to
-WriteEventsToClient which will see that it is Generic event and copy the
-arbitrary length from the receive buffer (and possibly past it) and send it to
-the other client. This allows clients to copy unitialized heap memory out of X
-server or to crash it.
-
-In case of SProcSendEvent, it will attempt to swap the incoming event by
-calling a swapping function from the EventSwapVector array. The swapped event
-is written to target buffer, which in this case is local xEvent variable. The
-xEvent variable is 32 bytes long, but the swapping functions for GenericEvents
-expect that the target buffer has size matching the size of the source
-GenericEvent. This allows clients to cause stack buffer overflows.
-
-Signed-off-by: Michal Srb <msrb@suse.com>
-Reviewed-by: Peter Hutterer <peter.hutterer@who-t.net>
-Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
-Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
----
- dix/events.c  | 6 ++++++
- dix/swapreq.c | 7 +++++++
- 2 files changed, 13 insertions(+)
-
-diff --git a/dix/events.c b/dix/events.c
-index 3e3a01ef9..d3a33ea3f 100644
---- a/dix/events.c
-+++ b/dix/events.c
-@@ -5366,6 +5366,12 @@ ProcSendEvent(ClientPtr client)
-         client->errorValue = stuff->event.u.u.type;
-         return BadValue;
-     }
-+    /* Generic events can have variable size, but SendEvent request holds
-+       exactly 32B of event data. */
-+    if (stuff->event.u.u.type == GenericEvent) {
-+        client->errorValue = stuff->event.u.u.type;
-+        return BadValue;
-+    }
-     if (stuff->event.u.u.type == ClientMessage &&
-         stuff->event.u.u.detail != 8 &&
-         stuff->event.u.u.detail != 16 && stuff->event.u.u.detail != 32) {
-diff --git a/dix/swapreq.c b/dix/swapreq.c
-index 719e9b81c..67850593b 100644
---- a/dix/swapreq.c
-+++ b/dix/swapreq.c
-@@ -292,6 +292,13 @@ SProcSendEvent(ClientPtr client)
-     swapl(&stuff->destination);
-     swapl(&stuff->eventMask);
-+    /* Generic events can have variable size, but SendEvent request holds
-+       exactly 32B of event data. */
-+    if (stuff->event.u.u.type == GenericEvent) {
-+        client->errorValue = stuff->event.u.u.type;
-+        return BadValue;
-+    }
-+
-     /* Swap event */
-     proc = EventSwapVector[stuff->event.u.u.type & 0177];
-     if (!proc || proc == NotImplemented)        /* no swapping proc; invalid event type? */
--- 
-2.11.0
-
diff --git a/package/x11r7/xserver_xorg-server/1.17.4/0004-Xi-Verify-all-events-in-ProcXSendExtensionEvent.patch b/package/x11r7/xserver_xorg-server/1.17.4/0004-Xi-Verify-all-events-in-ProcXSendExtensionEvent.patch
deleted file mode 100644 (file)
index 2e65100..0000000
+++ /dev/null
@@ -1,50 +0,0 @@
-From 8caed4df36b1f802b4992edcfd282cbeeec35d9d Mon Sep 17 00:00:00 2001
-From: Michal Srb <msrb@suse.com>
-Date: Wed, 24 May 2017 15:54:41 +0300
-Subject: [PATCH] Xi: Verify all events in ProcXSendExtensionEvent.
-
-The requirement is that events have type in range
-EXTENSION_EVENT_BASE..lastEvent, but it was tested
-only for first event of all.
-
-Signed-off-by: Michal Srb <msrb@suse.com>
-Reviewed-by: Peter Hutterer <peter.hutterer@who-t.net>
-Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
-Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
----
- Xi/sendexev.c | 12 +++++++-----
- 1 file changed, 7 insertions(+), 5 deletions(-)
-
-diff --git a/Xi/sendexev.c b/Xi/sendexev.c
-index 1cf118ab6..5e63bfcca 100644
---- a/Xi/sendexev.c
-+++ b/Xi/sendexev.c
-@@ -117,7 +117,7 @@ SProcXSendExtensionEvent(ClientPtr client)
- int
- ProcXSendExtensionEvent(ClientPtr client)
- {
--    int ret;
-+    int ret, i;
-     DeviceIntPtr dev;
-     xEvent *first;
-     XEventClass *list;
-@@ -141,10 +141,12 @@ ProcXSendExtensionEvent(ClientPtr client)
-     /* The client's event type must be one defined by an extension. */
-     first = ((xEvent *) &stuff[1]);
--    if (!((EXTENSION_EVENT_BASE <= first->u.u.type) &&
--          (first->u.u.type < lastEvent))) {
--        client->errorValue = first->u.u.type;
--        return BadValue;
-+    for (i = 0; i < stuff->num_events; i++) {
-+        if (!((EXTENSION_EVENT_BASE <= first[i].u.u.type) &&
-+            (first[i].u.u.type < lastEvent))) {
-+            client->errorValue = first[i].u.u.type;
-+            return BadValue;
-+        }
-     }
-     list = (XEventClass *) (first + stuff->num_events);
--- 
-2.11.0
-
diff --git a/package/x11r7/xserver_xorg-server/1.17.4/0005-Xi-Do-not-try-to-swap-GenericEvent.patch b/package/x11r7/xserver_xorg-server/1.17.4/0005-Xi-Do-not-try-to-swap-GenericEvent.patch
deleted file mode 100644 (file)
index 871e762..0000000
+++ /dev/null
@@ -1,45 +0,0 @@
-From ba336b24052122b136486961c82deac76bbde455 Mon Sep 17 00:00:00 2001
-From: Michal Srb <msrb@suse.com>
-Date: Wed, 24 May 2017 15:54:42 +0300
-Subject: [PATCH] Xi: Do not try to swap GenericEvent.
-
-The SProcXSendExtensionEvent must not attempt to swap GenericEvent because
-it is assuming that the event has fixed size and gives the swapping function
-xEvent-sized buffer.
-
-A GenericEvent would be later rejected by ProcXSendExtensionEvent anyway.
-
-Signed-off-by: Michal Srb <msrb@suse.com>
-Reviewed-by: Peter Hutterer <peter.hutterer@who-t.net>
-Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
-Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
----
- Xi/sendexev.c | 10 +++++++++-
- 1 file changed, 9 insertions(+), 1 deletion(-)
-
-diff --git a/Xi/sendexev.c b/Xi/sendexev.c
-index 5e63bfcca..5c2e0fc56 100644
---- a/Xi/sendexev.c
-+++ b/Xi/sendexev.c
-@@ -95,9 +95,17 @@ SProcXSendExtensionEvent(ClientPtr client)
-     eventP = (xEvent *) &stuff[1];
-     for (i = 0; i < stuff->num_events; i++, eventP++) {
-+        if (eventP->u.u.type == GenericEvent) {
-+            client->errorValue = eventP->u.u.type;
-+            return BadValue;
-+        }
-+
-         proc = EventSwapVector[eventP->u.u.type & 0177];
--        if (proc == NotImplemented)     /* no swapping proc; invalid event type? */
-+        /* no swapping proc; invalid event type? */
-+        if (proc == NotImplemented) {
-+            client->errorValue = eventP->u.u.type;
-             return BadValue;
-+        }
-         (*proc) (eventP, &eventT);
-         *eventP = eventT;
-     }
--- 
-2.11.0
-
diff --git a/package/x11r7/xserver_xorg-server/1.20.8/0001-modesettings-needs-dri2.patch b/package/x11r7/xserver_xorg-server/1.20.8/0001-modesettings-needs-dri2.patch
deleted file mode 100644 (file)
index 97ec29d..0000000
+++ /dev/null
@@ -1,20 +0,0 @@
-Kernel modesettings support also depends on dri2, see
-http://cgit.freedesktop.org/xorg/xserver/tree/hw/xfree86/drivers/modesetting/Makefile.am#n46
-
-Patch sent upstream: https://gitlab.freedesktop.org/xorg/xserver/issues/479
-
-[rebased for version 1.20.0]
-Signed-off-by: Bernd Kuhls <bernd.kuhls@t-online.de>
-
-diff -uNr xorg-server-1.17.2.org/configure.ac xorg-server-1.17.2/configure.ac
---- xorg-server-1.17.2.org/configure.ac        2015-06-16 17:42:40.000000000 +0200
-+++ xorg-server-1.17.2/configure.ac    2015-08-08 10:44:59.702382624 +0200
-@@ -2036,7 +2036,7 @@
-               XORG_SYS_LIBS="$XORG_SYS_LIBS $XORG_MODULES_LIBS"
-       fi
--      if test "x$DRM" = xyes; then
-+      if test "x$DRM" = xyes -a "x$DRI2" = xyes; then
-               XORG_DRIVER_MODESETTING=yes
-       fi
diff --git a/package/x11r7/xserver_xorg-server/1.20.8/0002-configure.ac-Fix-check-for-CLOCK_MONOTONIC.patch b/package/x11r7/xserver_xorg-server/1.20.8/0002-configure.ac-Fix-check-for-CLOCK_MONOTONIC.patch
deleted file mode 100644 (file)
index c5f04bf..0000000
+++ /dev/null
@@ -1,66 +0,0 @@
-Discover monotonic clock using compile-time check
-
-monotonic clock check does not work when cross-compiling.
-
-Upstream-Status: Denied [Does not work on OpenBSD]
-Signed-off-by: Jussi Kukkonen <jussi.kukkonen@intel.com>
-
-
-
-Original patch follows:
-
-When xorg-xserver is being cross-compiled, there is currently no way
-for us to detect whether the monotonic clock is available on the
-target system, because we aren't able to run a test program on the host
-system. Currently, in this situation, we default to not use the
-monotonic clock. One problem with this situation is that the user will
-be treated as idle when the date is updated.
-
-To fix this situation, we now use a compile-time check to detect whether the
-monotonic clock is available. This check can run just fine when we are
-cross-compiling.
-
-Signed-off-by: David James <davidjames at google.com>
-
-Downloaded from
-https://github.com/openembedded/openembedded-core/blob/master/meta/recipes-graphics/xorg-xserver/xserver-xorg/0001-configure.ac-Fix-check-for-CLOCK_MONOTONIC.patch
-
-Signed-off-by: Bernd Kuhls <bernd.kuhls@t-online.de>
----
- configure.ac | 17 +++++++----------
- 1 file changed, 7 insertions(+), 10 deletions(-)
-
-diff --git a/configure.ac b/configure.ac
-index f7ab48c..26e85cd 100644
---- a/configure.ac
-+++ b/configure.ac
-@@ -1048,19 +1048,16 @@ if ! test "x$have_clock_gettime" = xno; then
-         CPPFLAGS="$CPPFLAGS -D_POSIX_C_SOURCE=200112L"
-     fi
--    AC_RUN_IFELSE([AC_LANG_SOURCE([
-+    AC_COMPILE_IFELSE([AC_LANG_SOURCE([[
- #include <time.h>
--
--int main(int argc, char *argv[[]]) {
--    struct timespec tp;
--
--    if (clock_gettime(CLOCK_MONOTONIC, &tp) == 0)
-+#include <unistd.h>
-+int main() {
-+#if !(defined(_POSIX_MONOTONIC_CLOCK) && _POSIX_MONOTONIC_CLOCK >= 0 && defined(CLOCK_MONOTONIC))
-+        #error No monotonic clock
-+#endif
-         return 0;
--    else
--        return 1;
- }
--    ])], [MONOTONIC_CLOCK=yes], [MONOTONIC_CLOCK=no],
--       [MONOTONIC_CLOCK="cross compiling"])
-+]])],[MONOTONIC_CLOCK=yes], [MONOTONIC_CLOCK=no])
-     LIBS="$LIBS_SAVE"
-     CPPFLAGS="$CPPFLAGS_SAVE"
--- 
-2.1.4
-
diff --git a/package/x11r7/xserver_xorg-server/1.20.8/0003-Remove-check-for-useSIGIO-option.patch b/package/x11r7/xserver_xorg-server/1.20.8/0003-Remove-check-for-useSIGIO-option.patch
deleted file mode 100644 (file)
index d4f0cca..0000000
+++ /dev/null
@@ -1,53 +0,0 @@
-From cf407b16cd65ad6e26a9c8e5984e163409a5c0f7 Mon Sep 17 00:00:00 2001
-From: Prabhu Sundararaj <prabhu.sundararaj@nxp.com>
-Date: Mon, 30 Jan 2017 16:32:06 -0600
-Subject: [PATCH] Remove check for useSIGIO option
-
-Original patch follows:
-Commit 6a5a4e60373c1386b311b2a8bb666c32d68a9d99 removes the configure of useSIGIO
-option.
-
-As the xfree86 SIGIO support is reworked to use internal versions of OsBlockSIGIO
-and OsReleaseSIGIO.
-
-No longer the check for useSIGIO is needed
-
-Upstream-Status: Pending
-
-Signed-off-by: Prabhu Sundararaj <prabhu.sundararaj@nxp.com>
-
-Downloaded from
-https://github.com/openembedded/openembedded-core/blob/master/meta/recipes-graphics/xorg-xserver/xserver-xorg/0003-Remove-check-for-useSIGIO-option.patch
-
-Signed-off-by: Mylène Josserand <mylene.josserand@free-electrons.com>
----
- hw/xfree86/os-support/shared/sigio.c | 6 ------
- 1 file changed, 6 deletions(-)
-
-diff --git a/hw/xfree86/os-support/shared/sigio.c b/hw/xfree86/os-support/shared/sigio.c
-index 884a71c..be76498 100644
---- a/hw/xfree86/os-support/shared/sigio.c
-+++ b/hw/xfree86/os-support/shared/sigio.c
-@@ -185,9 +185,6 @@ xf86InstallSIGIOHandler(int fd, void (*f) (int, void *), void *closure)
-     int i;
-     int installed = FALSE;
--    if (!xf86Info.useSIGIO)
--        return 0;
--
-     for (i = 0; i < MAX_FUNCS; i++) {
-         if (!xf86SigIOFuncs[i].f) {
-             if (xf86IsPipe(fd))
-@@ -256,9 +253,6 @@ xf86RemoveSIGIOHandler(int fd)
-     int max;
-     int ret;
--    if (!xf86Info.useSIGIO)
--        return 0;
--
-     max = 0;
-     ret = 0;
-     for (i = 0; i < MAX_FUNCS; i++) {
--- 
-2.7.4
-
diff --git a/package/x11r7/xserver_xorg-server/1.20.8/0004-include-misc.h-fix-uClibc-build.patch b/package/x11r7/xserver_xorg-server/1.20.8/0004-include-misc.h-fix-uClibc-build.patch
deleted file mode 100644 (file)
index 562aa79..0000000
+++ /dev/null
@@ -1,31 +0,0 @@
-From 2e8fca00f5bdb02f2f59aaa428d1e9d808ab0e86 Mon Sep 17 00:00:00 2001
-From: Bernd Kuhls <bernd.kuhls@t-online.de>
-Date: Sat, 16 Jun 2018 19:20:16 +0200
-Subject: [PATCH] include/misc.h: fix uClibc build
-
-A similar fix was used for Dovecot:
-https://www.dovecot.org/list/dovecot/2017-November/110019.html
-
-Signed-off-by: Bernd Kuhls <bernd.kuhls@t-online.de>
----
- include/misc.h | 4 ++++
- 1 file changed, 4 insertions(+)
-
-diff --git a/include/misc.h b/include/misc.h
-index 14920c3c3..390e52b60 100644
---- a/include/misc.h
-+++ b/include/misc.h
-@@ -185,6 +185,10 @@ typedef struct _xReq *xReqPtr;
- #endif
- #endif
-+#undef bswap_16
-+#undef bswap_32
-+#undef bswap_64
-+
- /**
-  * Calculate the number of bytes needed to hold bits.
-  * @param bits The minimum number of bits needed.
--- 
-2.17.1
-
diff --git a/package/x11r7/xserver_xorg-server/1.20.8/0005-hw-xwayland-Makefile.am-fix-build-without-glx.patch b/package/x11r7/xserver_xorg-server/1.20.8/0005-hw-xwayland-Makefile.am-fix-build-without-glx.patch
deleted file mode 100644 (file)
index 5f19a26..0000000
+++ /dev/null
@@ -1,45 +0,0 @@
-From b1d2a82d644518c1a75775244ac63be738aaf062 Mon Sep 17 00:00:00 2001
-From: Fabrice Fontaine <fontaine.fabrice@gmail.com>
-Date: Fri, 19 Apr 2019 10:19:50 +0200
-Subject: [PATCH] hw/xwayland/Makefile.am: fix build without glx
-
-Commit d8ec33fe0542141aed1d9016d2ecaf52da944b4b added libglxvnd.la to
-Xwayland_LDFLAGS but GLX can be disabled through --disable-glx.
-In this case, build fails on:
-
-make[3]: *** No rule to make target '../../glx/libglxvnd.la', needed by 'Xwayland'.  Stop.
-make[3]: *** Waiting for unfinished jobs....
-
-Fixes:
- - http://autobuild.buildroot.org/results/397f8098c57fc6c88aa12dc8d35ebb1b933d52ef
-
-Signed-off-by: Fabrice Fontaine <fontaine.fabrice@gmail.com>
-[Upstream status:
-https://gitlab.freedesktop.org/xorg/xserver/merge_requests/173]
----
- hw/xwayland/Makefile.am | 6 +++++-
- 1 file changed, 5 insertions(+), 1 deletion(-)
-
-diff --git a/hw/xwayland/Makefile.am b/hw/xwayland/Makefile.am
-index bc1cb8506..502879e2a 100644
---- a/hw/xwayland/Makefile.am
-+++ b/hw/xwayland/Makefile.am
-@@ -21,10 +21,14 @@ Xwayland_SOURCES =                         \
-       $(top_srcdir)/Xi/stubs.c                \
-       $(top_srcdir)/mi/miinitext.c
-+if GLX
-+GLXVND_LIB = $(top_builddir)/glx/libglxvnd.la
-+endif
-+
- Xwayland_LDADD =                              \
-       $(glamor_lib)                           \
-       $(XWAYLAND_LIBS)                        \
--      $(top_builddir)/glx/libglxvnd.la        \
-+      $(GLXVND_LIB)                           \
-       $(XWAYLAND_SYS_LIBS)                    \
-       $(top_builddir)/Xext/libXvidmode.la     \
-       $(XSERVER_SYS_LIBS)
--- 
-2.20.1
-
diff --git a/package/x11r7/xserver_xorg-server/1.20.8/0006-hw-xfree86-common-xf86Init.c-fix-build-without-glx.patch b/package/x11r7/xserver_xorg-server/1.20.8/0006-hw-xfree86-common-xf86Init.c-fix-build-without-glx.patch
deleted file mode 100644 (file)
index f1fdfe3..0000000
+++ /dev/null
@@ -1,45 +0,0 @@
-From 49456e0a37fac7bc9d1f01bc1519fb0d699956db Mon Sep 17 00:00:00 2001
-From: Fabrice Fontaine <fontaine.fabrice@gmail.com>
-Date: Fri, 27 Dec 2019 23:33:37 +0100
-Subject: [PATCH] hw/xfree86/common/xf86Init.c: fix build without glx
-
-Since commit d8ec33fe0542141aed1d9016d2ecaf52da944b4b, an include on
-glxvndabi.h has been added to hw/xfree86/common/xf86Init.c
-
-However, if glx is disabled through --disable-glx and GLX headers are
-not installed in the build's environment, build fails on:
-
-In file included from xf86Init.c:81:
-../../../include/glxvndabi.h:64:10: fatal error: GL/glxproto.h: No such file or directory
-   64 | #include <GL/glxproto.h>
-      |          ^~~~~~~~~~~~~~~
-
-Fix this failure by removing this include which does not seem to be
-needed (an other option would have been to keep it under an ifdef GLXEXT
-block)
-
-Fixes:
- - http://autobuild.buildroot.org/results/de838a843f97673d1381a55fd4e9b07164693913
-
-Signed-off-by: Fabrice Fontaine <fontaine.fabrice@gmail.com>
-[Retrieved from:
-https://gitlab.freedesktop.org/xorg/xserver/commit/49456e0a37fac7bc9d1f01bc1519fb0d699956db]
----
- hw/xfree86/common/xf86Init.c | 1 -
- 1 file changed, 1 deletion(-)
-
-diff --git a/hw/xfree86/common/xf86Init.c b/hw/xfree86/common/xf86Init.c
-index 0631c7237..e6fb11398 100644
---- a/hw/xfree86/common/xf86Init.c
-+++ b/hw/xfree86/common/xf86Init.c
-@@ -74,7 +74,6 @@
- #include "xf86Crtc.h"
- #include "picturestr.h"
- #include "randrstr.h"
--#include "glxvndabi.h"
- #include "xf86Bus.h"
- #ifdef XSERVER_LIBPCIACCESS
- #include "xf86VGAarbiter.h"
--- 
-2.24.1
-
diff --git a/package/x11r7/xserver_xorg-server/1.20.8/0007-fix-for-ZDI-11426.patch b/package/x11r7/xserver_xorg-server/1.20.8/0007-fix-for-ZDI-11426.patch
deleted file mode 100644 (file)
index ce623b2..0000000
+++ /dev/null
@@ -1,36 +0,0 @@
-From aac28e162e5108510065ad4c323affd6deffd816 Mon Sep 17 00:00:00 2001
-From: Matthieu Herrb <matthieu@herrb.eu>
-Date: Sat, 25 Jul 2020 19:33:50 +0200
-Subject: [PATCH] fix for ZDI-11426
-
-Avoid leaking un-initalized memory to clients by zeroing the
-whole pixmap on initial allocation.
-
-This vulnerability was discovered by:
-Jan-Niklas Sohn working with Trend Micro Zero Day Initiative
-
-Signed-off-by: Matthieu Herrb <matthieu@herrb.eu>
-Reviewed-by: Alan Coopersmith <alan.coopersmith@oracle.com>
-Signed-off-by: Bernd Kuhls <bernd.kuhls@t-online.de>
-[downloaded from upstream commit
- https://gitlab.freedesktop.org/xorg/xserver/-/commit/aac28e162e5108510065ad4c323affd6deffd816]
----
- dix/pixmap.c | 2 +-
- 1 file changed, 1 insertion(+), 1 deletion(-)
-
-diff --git a/dix/pixmap.c b/dix/pixmap.c
-index 1186d7dbbf..5a0146bbb6 100644
---- a/dix/pixmap.c
-+++ b/dix/pixmap.c
-@@ -116,7 +116,7 @@ AllocatePixmap(ScreenPtr pScreen, int pixDataSize)
-     if (pScreen->totalPixmapSize > ((size_t) - 1) - pixDataSize)
-         return NullPixmap;
--    pPixmap = malloc(pScreen->totalPixmapSize + pixDataSize);
-+    pPixmap = calloc(1, pScreen->totalPixmapSize + pixDataSize);
-     if (!pPixmap)
-         return NullPixmap;
--- 
-GitLab
-
index 79968ea9792d0d06ad1b9fa307aca4eaeb5e8d8d..e3056683cc6267e3bf9e9d2659fa386c16cac20d 100644 (file)
@@ -40,49 +40,6 @@ config BR2_PACKAGE_XSERVER_XORG_SERVER
 
          http://xorg.freedesktop.org
 
-if BR2_PACKAGE_XSERVER_XORG_SERVER
-
-config BR2_PACKAGE_XSERVER_XORG_SERVER_VIDEODRV_ABI_14
-       bool
-
-config BR2_PACKAGE_XSERVER_XORG_SERVER_VIDEODRV_ABI_19
-       bool
-
-config BR2_PACKAGE_XSERVER_XORG_SERVER_VIDEODRV_ABI_24
-       bool
-
-config BR2_PACKAGE_XSERVER_XORG_SERVER_VIDEODRV_ABI
-       int
-       default 14 if BR2_PACKAGE_XSERVER_XORG_SERVER_VIDEODRV_ABI_14
-       default 19 if BR2_PACKAGE_XSERVER_XORG_SERVER_VIDEODRV_ABI_19
-       default 24 if BR2_PACKAGE_XSERVER_XORG_SERVER_VIDEODRV_ABI_24
-
-choice
-       bool "X Window System server version"
-
-config BR2_PACKAGE_XSERVER_XORG_SERVER_V_1_20
-       bool "1.20.8"
-       select BR2_PACKAGE_XSERVER_XORG_SERVER_VIDEODRV_ABI_24
-       select BR2_PACKAGE_XLIB_LIBXFONT2
-
-config BR2_PACKAGE_XSERVER_XORG_SERVER_V_1_17
-       bool "1.17.4"
-       select BR2_PACKAGE_XSERVER_XORG_SERVER_VIDEODRV_ABI_19
-       select BR2_PACKAGE_XLIB_LIBXFONT
-
-config BR2_PACKAGE_XSERVER_XORG_SERVER_V_1_14
-       bool "1.14.7"
-       select BR2_PACKAGE_XSERVER_XORG_SERVER_VIDEODRV_ABI_14
-       select BR2_PACKAGE_XLIB_LIBXFONT
-
-endchoice
-
-config BR2_PACKAGE_XSERVER_XORG_SERVER_VERSION
-       string
-       default "1.20.8" if BR2_PACKAGE_XSERVER_XORG_SERVER_V_1_20
-       default "1.17.4" if BR2_PACKAGE_XSERVER_XORG_SERVER_V_1_17
-       default "1.14.7" if BR2_PACKAGE_XSERVER_XORG_SERVER_V_1_14
-
 choice
        prompt "X Window System server type"
        help
@@ -114,13 +71,6 @@ config BR2_PACKAGE_XSERVER_XORG_SERVER_KDRIVE
 
 endchoice
 
-config BR2_PACKAGE_XSERVER_XORG_SERVER_AIGLX
-       bool "Enable AIGLX Extension"
-       # AIGLX Extension removed in 1.19.0
-       depends on BR2_PACKAGE_XSERVER_XORG_SERVER_V_1_14 || BR2_PACKAGE_XSERVER_XORG_SERVER_V_1_17
-       help
-         Enable/Use AIGLX extension.
-
 if BR2_PACKAGE_XSERVER_XORG_SERVER_KDRIVE
 
 config BR2_PACKAGE_XSERVER_XORG_SERVER_KDRIVE_EVDEV
index f7b1bc14bf1aecf19268a141e77cf1e41470850a..7d75853c62a616af2cbedc69eb7f6f9e780023dc 100644 (file)
@@ -1,8 +1,3 @@
-# From http://lists.x.org/archives/xorg-announce/2014-June/002440.html
-sha1   7a95765e56b124758fcd7b609589e65b8870880b                                xorg-server-1.14.7.tar.bz2
-sha256 fcf66fa6ad86227613d2d3e8ae13ded297e2a1e947e9060a083eaf80d323451f        xorg-server-1.14.7.tar.bz2
-# From https://lists.x.org/archives/xorg-announce/2015-October/002650.html
-sha256 0c4b45c116a812a996eb432d8508cf26c2ec8c3916ff2a50781796882f8d6457        xorg-server-1.17.4.tar.bz2
 # From https://lists.x.org/archives/xorg-announce/2020-March/003041.html
 sha256 d17b646bee4ba0fb7850c1cc55b18e3e8513ed5c02bdf38da7e107f84e2d0146  xorg-server-1.20.8.tar.bz2
 sha512 ab0ec0fcbf490c61558b9297f61b58fd2dedb676c78bef6431dc9166054743b43a0091b88a8b3f4e81d1f539909440ee7e188a298cefabe13ea89159639cd805  xorg-server-1.20.8.tar.bz2
index 07714be340e2f5d8c9b17b293f76da5b4c432079..7c8119e37125309f44bbd407293d08272bc17712 100644 (file)
@@ -4,7 +4,7 @@
 #
 ################################################################################
 
-XSERVER_XORG_SERVER_VERSION = $(call qstrip,$(BR2_PACKAGE_XSERVER_XORG_SERVER_VERSION))
+XSERVER_XORG_SERVER_VERSION = 1.20.9
 XSERVER_XORG_SERVER_SOURCE = xorg-server-$(XSERVER_XORG_SERVER_VERSION).tar.bz2
 XSERVER_XORG_SERVER_SITE = https://xorg.freedesktop.org/archive/individual/xserver
 XSERVER_XORG_SERVER_LICENSE = MIT
@@ -38,10 +38,8 @@ XSERVER_XORG_SERVER_DEPENDENCIES = \
        mcookie \
        host-pkgconf
 
-ifeq ($(BR2_PACKAGE_XSERVER_XORG_SERVER_V_1_20),y)
 # 1.20.8/0007-fix-for-ZDI-11426.patch
 XSERVER_XORG_SERVER_IGNORE_CVES += CVE-2020-14347
-endif
 
 # We force -O2 regardless of the optimization level chosen by the
 # user, as the X.org server is known to trigger some compiler bugs at
@@ -132,12 +130,6 @@ else
 XSERVER_XORG_SERVER_CONF_OPTS += --disable-dri --disable-glx
 endif
 
-ifeq ($(BR2_PACKAGE_XSERVER_XORG_SERVER_AIGLX),y)
-XSERVER_XORG_SERVER_CONF_OPTS += --enable-aiglx
-else
-XSERVER_XORG_SERVER_CONF_OPTS += --disable-aiglx
-endif
-
 # Optional packages
 ifeq ($(BR2_PACKAGE_TSLIB),y)
 XSERVER_XORG_SERVER_DEPENDENCIES += tslib