summaryrefslogtreecommitdiffstats
path: root/meta/recipes-graphics/xorg-xserver/xserver-xorg/CVE-2024-0409.patch
diff options
context:
space:
mode:
Diffstat (limited to 'meta/recipes-graphics/xorg-xserver/xserver-xorg/CVE-2024-0409.patch')
-rw-r--r--meta/recipes-graphics/xorg-xserver/xserver-xorg/CVE-2024-0409.patch46
1 files changed, 46 insertions, 0 deletions
diff --git a/meta/recipes-graphics/xorg-xserver/xserver-xorg/CVE-2024-0409.patch b/meta/recipes-graphics/xorg-xserver/xserver-xorg/CVE-2024-0409.patch
new file mode 100644
index 0000000000..9763e0b562
--- /dev/null
+++ b/meta/recipes-graphics/xorg-xserver/xserver-xorg/CVE-2024-0409.patch
@@ -0,0 +1,46 @@
1From 2ef0f1116c65d5cb06d7b6d83f8a1aea702c94f7 Mon Sep 17 00:00:00 2001
2From: Olivier Fourdan <ofourdan@redhat.com>
3Date: Wed, 6 Dec 2023 11:51:56 +0100
4Subject: [PATCH] ephyr,xwayland: Use the proper private key for cursor
5
6The cursor in DIX is actually split in two parts, the cursor itself and
7the cursor bits, each with their own devPrivates.
8
9The cursor itself includes the cursor bits, meaning that the cursor bits
10devPrivates in within structure of the cursor.
11
12Both Xephyr and Xwayland were using the private key for the cursor bits
13to store the data for the cursor, and when using XSELINUX which comes
14with its own special devPrivates, the data stored in that cursor bits'
15devPrivates would interfere with the XSELINUX devPrivates data and the
16SELINUX security ID would point to some other unrelated data, causing a
17crash in the XSELINUX code when trying to (re)use the security ID.
18
19CVE-2024-0409
20
21Signed-off-by: Olivier Fourdan <ofourdan@redhat.com>
22Reviewed-by: Peter Hutterer <peter.hutterer@who-t.net>
23
24Upstream-Status: Backport [https://gitlab.freedesktop.org/xorg/xserver/-/commit/2ef0f1116c65d5cb06d7b6d83f8a1aea702c94f7]
25CVE: CVE-2024-0409
26Signed-off-by: Vijay Anusuri <vanusuri@mvista.com>
27---
28 hw/kdrive/ephyr/ephyrcursor.c | 2 +-
29 1 file changed, 1 insertion(+), 1 deletion(-)
30
31diff --git a/hw/kdrive/ephyr/ephyrcursor.c b/hw/kdrive/ephyr/ephyrcursor.c
32index f991899..3f192d0 100644
33--- a/hw/kdrive/ephyr/ephyrcursor.c
34+++ b/hw/kdrive/ephyr/ephyrcursor.c
35@@ -246,7 +246,7 @@ miPointerSpriteFuncRec EphyrPointerSpriteFuncs = {
36 Bool
37 ephyrCursorInit(ScreenPtr screen)
38 {
39- if (!dixRegisterPrivateKey(&ephyrCursorPrivateKey, PRIVATE_CURSOR_BITS,
40+ if (!dixRegisterPrivateKey(&ephyrCursorPrivateKey, PRIVATE_CURSOR,
41 sizeof(ephyrCursorRec)))
42 return FALSE;
43
44--
452.25.1
46