summarylogtreecommitdiffstats
diff options
context:
space:
mode:
authorPlaton Ryzhikov2020-09-02 15:09:43 +0300
committerPlaton Ryzhikov2020-09-02 15:09:43 +0300
commit3edef69d9b1b37de01bcba131050df4839c20c52 (patch)
tree473835c948408a3a8665ae7794dda75d3e2b6464
parentbb51b1fac214ac200001e154ee21859180719de8 (diff)
downloadaur-3edef69d9b1b37de01bcba131050df4839c20c52.tar.gz
update to 1.20.9-2
-rw-r--r--.SRCINFO4
-rw-r--r--0001-xfree86-Take-second-reference-for-SavedCursor-in-xf8.patch34
-rw-r--r--PKGBUILD7
3 files changed, 43 insertions, 2 deletions
diff --git a/.SRCINFO b/.SRCINFO
index 4e651f91fbfc..c486224e3748 100644
--- a/.SRCINFO
+++ b/.SRCINFO
@@ -1,6 +1,6 @@
pkgbase = xorg-server-noudev
pkgver = 1.20.9
- pkgrel = 1
+ pkgrel = 2
url = https://xorg.freedesktop.org
arch = x86_64
arch = aarch64
@@ -41,6 +41,7 @@ pkgbase = xorg-server-noudev
source = xserver-autobind-hotplug.patch
source = 0001-v2-FS-58644.patch
source = 0002-fix-libshadow-2.patch
+ source = 0001-xfree86-Take-second-reference-for-SavedCursor-in-xf8.patch
source = xvfb-run
source = xvfb-run.1
validpgpkeys = 7B27A3F1A6E18CD9588B4AE8310180050905E40C
@@ -53,6 +54,7 @@ pkgbase = xorg-server-noudev
sha512sums = d84f4d63a502b7af76ea49944d1b21e2030dfd250ac1e82878935cf631973310ac9ba1f0dfedf10980ec6c7431d61b7daa4b7bbaae9ee477b2c19812c1661a22
sha512sums = 74e1aa0c101e42f0f25349d305641873b3a79ab3b9bb2d4ed68ba8e392b4db2701fcbc35826531ee2667d3ee55673e4b4fecc2a9f088141af29ceb400f72f363
sha512sums = 3d3be34ad9fa976daec53573d3a30a9f1953341ba5ee27099af0141f0ef7994fa5cf84dc08aae848380e6abfc10879f9a67f07601c7a437abf8aef13a3ec9fe1
+ sha512sums = 7511af2aa99e2f6398987350ad0ff089c22c10017d40981ab610201b953ca4b29cd24aa1ff201ba792f03bdcca7d59d34c2809f4691f84bd86e8ec8016dd279d
sha512sums = 73c8ead9fba6815dabfec0a55b3a53f01169f6f2d14ac4a431e53b2d96028672dbd6b50a3314568847b37b1e54ea4fc02bdf677feabb3b2697af55e2e5331810
sha512sums = de5e2cb3c6825e6cf1f07ca0d52423e17f34d70ec7935e9dd24be5fb9883bf1e03b50ff584931bd3b41095c510ab2aa44d2573fd5feaebdcb59363b65607ff22
diff --git a/0001-xfree86-Take-second-reference-for-SavedCursor-in-xf8.patch b/0001-xfree86-Take-second-reference-for-SavedCursor-in-xf8.patch
new file mode 100644
index 000000000000..872259bb8093
--- /dev/null
+++ b/0001-xfree86-Take-second-reference-for-SavedCursor-in-xf8.patch
@@ -0,0 +1,34 @@
+From 919f1f46fc67dae93b2b3f278fcbfc77af34ec58 Mon Sep 17 00:00:00 2001
+From: =?UTF-8?q?Michel=20D=C3=A4nzer?= <mdaenzer@redhat.com>
+Date: Mon, 31 Aug 2020 12:10:43 +0200
+Subject: [PATCH] xfree86: Take second reference for SavedCursor in
+ xf86CursorSetCursor
+
+The same pointer is kept in CurrentCursor as well, therefore two
+RefCursor calls are needed.
+
+Fixes use-after-free after switching VTs.
+
+Closes: https://gitlab.freedesktop.org/xorg/xserver/-/issues/1067
+Signed-off-by: Laurent Carlier <lordheavym@gmail.com>
+---
+ hw/xfree86/ramdac/xf86CursorRD.c | 3 +++
+ 1 file changed, 3 insertions(+)
+
+diff --git a/hw/xfree86/ramdac/xf86CursorRD.c b/hw/xfree86/ramdac/xf86CursorRD.c
+index 9aa3de97b..c8362d169 100644
+--- a/hw/xfree86/ramdac/xf86CursorRD.c
++++ b/hw/xfree86/ramdac/xf86CursorRD.c
+@@ -334,6 +334,9 @@ xf86CursorSetCursor(DeviceIntPtr pDev, ScreenPtr pScreen, CursorPtr pCurs,
+ ScreenPriv->HotY = cursor->bits->yhot;
+
+ if (!infoPtr->pScrn->vtSema) {
++ cursor = RefCursor(cursor);
++ if (ScreenPriv->SavedCursor)
++ FreeCursor(ScreenPriv->SavedCursor, None);
+ ScreenPriv->SavedCursor = cursor;
+ return;
+ }
+--
+2.28.0
+
diff --git a/PKGBUILD b/PKGBUILD
index 75c7e1b64a42..35bcb036cbec 100644
--- a/PKGBUILD
+++ b/PKGBUILD
@@ -11,7 +11,7 @@ _pkgbase=xorg-server
pkgname=('xorg-server-noudev' 'xorg-server-xephyr-noudev' 'xorg-server-xvfb-noudev' 'xorg-server-xnest-noudev'
'xorg-server-xwayland-noudev' 'xorg-server-common-noudev' 'xorg-server-devel-noudev')
pkgver=1.20.9
-pkgrel=1
+pkgrel=2
arch=('x86_64' 'aarch64')
license=('custom')
groups=('xorg-noudev')
@@ -26,6 +26,7 @@ source=(https://xorg.freedesktop.org/releases/individual/xserver/${_pkgbase}-${p
xserver-autobind-hotplug.patch
0001-v2-FS-58644.patch
0002-fix-libshadow-2.patch
+ 0001-xfree86-Take-second-reference-for-SavedCursor-in-xf8.patch
xvfb-run # with updates from FC master
xvfb-run.1)
validpgpkeys=('7B27A3F1A6E18CD9588B4AE8310180050905E40C'
@@ -38,6 +39,7 @@ sha512sums=('d9b5f93e1b9763a89187d8b272aa7d4ce9709641b8539f4536708af153310e5a493
'd84f4d63a502b7af76ea49944d1b21e2030dfd250ac1e82878935cf631973310ac9ba1f0dfedf10980ec6c7431d61b7daa4b7bbaae9ee477b2c19812c1661a22'
'74e1aa0c101e42f0f25349d305641873b3a79ab3b9bb2d4ed68ba8e392b4db2701fcbc35826531ee2667d3ee55673e4b4fecc2a9f088141af29ceb400f72f363'
'3d3be34ad9fa976daec53573d3a30a9f1953341ba5ee27099af0141f0ef7994fa5cf84dc08aae848380e6abfc10879f9a67f07601c7a437abf8aef13a3ec9fe1'
+ '7511af2aa99e2f6398987350ad0ff089c22c10017d40981ab610201b953ca4b29cd24aa1ff201ba792f03bdcca7d59d34c2809f4691f84bd86e8ec8016dd279d'
'73c8ead9fba6815dabfec0a55b3a53f01169f6f2d14ac4a431e53b2d96028672dbd6b50a3314568847b37b1e54ea4fc02bdf677feabb3b2697af55e2e5331810'
'de5e2cb3c6825e6cf1f07ca0d52423e17f34d70ec7935e9dd24be5fb9883bf1e03b50ff584931bd3b41095c510ab2aa44d2573fd5feaebdcb59363b65607ff22')
@@ -53,6 +55,9 @@ prepare() {
# Fix libshadow.so: libfb.so => not found - merge in master
patch -Np1 -i ../0002-fix-libshadow-2.patch
+
+ # Fix FS#67774 - merged upstream
+ patch -Np1 -i ../0001-xfree86-Take-second-reference-for-SavedCursor-in-xf8.patch
}
build() {