summaryrefslogtreecommitdiff
path: root/source/x/x11/patch/xorg-server/0003-6907b6ea2b4ce949cb07271f5b678d5966d9df42.patch
diff options
context:
space:
mode:
authorPatrick J Volkerding <volkerdi@slackware.com>2022-08-08 23:29:31 +0000
committerEric Hameleers <alien@slackware.com>2022-08-09 07:00:15 +0200
commit2d7cee39612aff5630994ad4634733902c6f78db (patch)
treea2f87b530a6de9398ddedeffa31bff40d19615cf /source/x/x11/patch/xorg-server/0003-6907b6ea2b4ce949cb07271f5b678d5966d9df42.patch
parent581afe42faa86fbb4014e48913cc5183aee69203 (diff)
downloadcurrent-2d7cee39612aff5630994ad4634733902c6f78db.tar.gz
Mon Aug 8 23:29:31 UTC 202220220808232931
Hey folks, here's that graphics stack upgrade that you've been waiting for! After looking at what drivers are currently shipped by other projects, I took an axe to the driver list. Some of the removed drivers will still compile even though they are abandoned, and some of the others are still getting git commits (which allows *some* of them to compile). The removed stuff mostly looks obsolete to me (we really can't support ancient hardware forever). But if you think I've gone too far with any of these removals, please make or contribute to a thread about it on LQ and I'll take any comments there into consideration. a/kernel-firmware-20220808_e6857b6-noarch-1.txz: Upgraded. ap/vim-9.0.0174-x86_64-1.txz: Upgraded. l/gnu-efi-3.0.15-x86_64-1.txz: Upgraded. n/libtirpc-1.3.3-x86_64-1.txz: Upgraded. n/mutt-2.2.7-x86_64-1.txz: Upgraded. x/egl-wayland-1.1.10-x86_64-1.txz: Upgraded. x/libdrm-2.4.112-x86_64-1.txz: Upgraded. x/libglvnd-1.4.0-x86_64-1.txz: Upgraded. x/mesa-22.1.5-x86_64-1.txz: Upgraded. Includes Mesa amber 21.3.9 DRI drivers, and mesa-demos-8.5.0. Thanks to LuckyCyborg for posting some valuable hints on LQ. x/xcb-proto-1.15.2-x86_64-1.txz: Upgraded. x/xf86-input-acecad-1.5.0-x86_64-14.txz: Removed. x/xf86-input-evdev-2.10.6-x86_64-4.txz: Rebuilt. x/xf86-input-joystick-1.6.3-x86_64-5.txz: Removed. x/xf86-input-keyboard-1.9.0-x86_64-5.txz: Removed. x/xf86-input-libinput-1.2.1-x86_64-2.txz: Rebuilt. x/xf86-input-mouse-1.9.3-x86_64-3.txz: Removed. x/xf86-input-penmount-1.5.0-x86_64-14.txz: Removed. x/xf86-input-synaptics-1.9.2-x86_64-1.txz: Upgraded. x/xf86-input-vmmouse-13.1.0-x86_64-9.txz: Removed. x/xf86-input-void-1.4.1-x86_64-3.txz: Removed. x/xf86-input-wacom-1.0.0-x86_64-2.txz: Rebuilt. x/xf86-video-amdgpu-22.0.0-x86_64-2.txz: Rebuilt. x/xf86-video-apm-1.3.0-x86_64-3.txz: Removed. x/xf86-video-ark-0.7.5-x86_64-13.txz: Removed. x/xf86-video-ast-1.1.5-x86_64-7.txz: Removed. x/xf86-video-ati-20220730_7a6a34af-x86_64-1.txz: Upgraded. x/xf86-video-chips-1.4.0-x86_64-3.txz: Removed. x/xf86-video-cirrus-1.5.3-x86_64-7.txz: Removed. x/xf86-video-dummy-0.4.0-x86_64-2.txz: Rebuilt. x/xf86-video-glint-1.2.9-x86_64-5.txz: Removed. x/xf86-video-i128-1.4.0-x86_64-3.txz: Removed. x/xf86-video-i740-1.4.0-x86_64-3.txz: Removed. x/xf86-video-intel-20210115_31486f40-x86_64-1.txz: Upgraded. x/xf86-video-mach64-6.9.6-x86_64-3.txz: Removed. x/xf86-video-mga-2.0.0-x86_64-3.txz: Removed. x/xf86-video-neomagic-1.3.0-x86_64-3.txz: Removed. x/xf86-video-nouveau-20220125_29cc528-x86_64-1.txz: Upgraded. x/xf86-video-nv-2.1.21-x86_64-5.txz: Removed. x/xf86-video-openchrome-0.6.0-x86_64-6.txz: Rebuilt. x/xf86-video-r128-6.12.0-x86_64-3.txz: Removed. x/xf86-video-rendition-4.2.7-x86_64-3.txz: Removed. x/xf86-video-s3-0.7.0-x86_64-3.txz: Removed. x/xf86-video-s3virge-1.11.0-x86_64-3.txz: Removed. x/xf86-video-savage-20190128_8579718-x86_64-3.txz: Removed. x/xf86-video-siliconmotion-1.7.9-x86_64-5.txz: Removed. x/xf86-video-sis-0.12.0-x86_64-3.txz: Removed. x/xf86-video-sisusb-0.9.7-x86_64-5.txz: Removed. x/xf86-video-tdfx-1.5.0-x86_64-3.txz: Removed. x/xf86-video-tga-1.2.2-x86_64-13.txz: Removed. x/xf86-video-trident-1.3.8-x86_64-5.txz: Removed. x/xf86-video-tseng-1.2.5-x86_64-13.txz: Removed. x/xf86-video-v4l-0.3.0-x86_64-3.txz: Removed. x/xf86-video-vboxvideo-1.0.0-x86_64-5.txz: Removed. x/xf86-video-vesa-2.5.0-x86_64-4.txz: Rebuilt. x/xf86-video-vmware-20220621_ff5637a-x86_64-1.txz: Upgraded. x/xf86-video-voodoo-1.2.5-x86_64-14.txz: Removed. x/xorg-server-21.1.4-x86_64-1.txz: Upgraded. x/xorg-server-xephyr-21.1.4-x86_64-1.txz: Upgraded. x/xorg-server-xnest-21.1.4-x86_64-1.txz: Upgraded. x/xorg-server-xvfb-21.1.4-x86_64-1.txz: Upgraded. x/xorg-server-xwayland-22.1.3-x86_64-1.txz: Upgraded. x/xorgproto-2022.1-x86_64-1.txz: Upgraded. xap/geeqie-2.0-x86_64-1.txz: Upgraded. xap/mozilla-firefox-103.0.2-x86_64-1.txz: Upgraded. This is a bugfix release. For more information, see: https://www.mozilla.org/en-US/firefox/103.0.2/releasenotes/ xap/vim-gvim-9.0.0174-x86_64-1.txz: Upgraded. extra/xf86-video-fbdev/xf86-video-fbdev-0.5.0-x86_64-2.txz: Rebuilt.
Diffstat (limited to 'source/x/x11/patch/xorg-server/0003-6907b6ea2b4ce949cb07271f5b678d5966d9df42.patch')
-rw-r--r--source/x/x11/patch/xorg-server/0003-6907b6ea2b4ce949cb07271f5b678d5966d9df42.patch181
1 files changed, 0 insertions, 181 deletions
diff --git a/source/x/x11/patch/xorg-server/0003-6907b6ea2b4ce949cb07271f5b678d5966d9df42.patch b/source/x/x11/patch/xorg-server/0003-6907b6ea2b4ce949cb07271f5b678d5966d9df42.patch
deleted file mode 100644
index 11121070..00000000
--- a/source/x/x11/patch/xorg-server/0003-6907b6ea2b4ce949cb07271f5b678d5966d9df42.patch
+++ /dev/null
@@ -1,181 +0,0 @@
-From 6907b6ea2b4ce949cb07271f5b678d5966d9df42 Mon Sep 17 00:00:00 2001
-From: Peter Hutterer <peter.hutterer@who-t.net>
-Date: Tue, 5 Jul 2022 11:11:06 +1000
-Subject: [PATCH] xkb: add request length validation for XkbSetGeometry
-
-No validation of the various fields on that report were done, so a
-malicious client could send a short request that claims it had N
-sections, or rows, or keys, and the server would process the request for
-N sections, running out of bounds of the actual request data.
-
-Fix this by adding size checks to ensure our data is valid.
-
-ZDI-CAN 16062, CVE-2022-2319.
-
-This vulnerability was discovered by:
-Jan-Niklas Sohn working with Trend Micro Zero Day Initiative
-
-Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
----
- xkb/xkb.c | 43 ++++++++++++++++++++++++++++++++++++++-----
- 1 file changed, 38 insertions(+), 5 deletions(-)
-
-diff --git a/xkb/xkb.c b/xkb/xkb.c
-index 34b2c290b..4692895db 100644
---- a/xkb/xkb.c
-+++ b/xkb/xkb.c
-@@ -5156,7 +5156,7 @@ _GetCountedString(char **wire_inout, ClientPtr client, char **str)
- }
-
- static Status
--_CheckSetDoodad(char **wire_inout,
-+_CheckSetDoodad(char **wire_inout, xkbSetGeometryReq *req,
- XkbGeometryPtr geom, XkbSectionPtr section, ClientPtr client)
- {
- char *wire;
-@@ -5167,6 +5167,9 @@ _CheckSetDoodad(char **wire_inout,
- Status status;
-
- dWire = (xkbDoodadWireDesc *) (*wire_inout);
-+ if (!_XkbCheckRequestBounds(client, req, dWire, dWire + 1))
-+ return BadLength;
-+
- any = dWire->any;
- wire = (char *) &dWire[1];
- if (client->swapped) {
-@@ -5269,7 +5272,7 @@ _CheckSetDoodad(char **wire_inout,
- }
-
- static Status
--_CheckSetOverlay(char **wire_inout,
-+_CheckSetOverlay(char **wire_inout, xkbSetGeometryReq *req,
- XkbGeometryPtr geom, XkbSectionPtr section, ClientPtr client)
- {
- register int r;
-@@ -5280,6 +5283,9 @@ _CheckSetOverlay(char **wire_inout,
-
- wire = *wire_inout;
- olWire = (xkbOverlayWireDesc *) wire;
-+ if (!_XkbCheckRequestBounds(client, req, olWire, olWire + 1))
-+ return BadLength;
-+
- if (client->swapped) {
- swapl(&olWire->name);
- }
-@@ -5291,6 +5297,9 @@ _CheckSetOverlay(char **wire_inout,
- xkbOverlayKeyWireDesc *kWire;
- XkbOverlayRowPtr row;
-
-+ if (!_XkbCheckRequestBounds(client, req, rWire, rWire + 1))
-+ return BadLength;
-+
- if (rWire->rowUnder > section->num_rows) {
- client->errorValue = _XkbErrCode4(0x20, r, section->num_rows,
- rWire->rowUnder);
-@@ -5299,6 +5308,9 @@ _CheckSetOverlay(char **wire_inout,
- row = XkbAddGeomOverlayRow(ol, rWire->rowUnder, rWire->nKeys);
- kWire = (xkbOverlayKeyWireDesc *) &rWire[1];
- for (k = 0; k < rWire->nKeys; k++, kWire++) {
-+ if (!_XkbCheckRequestBounds(client, req, kWire, kWire + 1))
-+ return BadLength;
-+
- if (XkbAddGeomOverlayKey(ol, row,
- (char *) kWire->over,
- (char *) kWire->under) == NULL) {
-@@ -5332,6 +5344,9 @@ _CheckSetSections(XkbGeometryPtr geom,
- register int r;
- xkbRowWireDesc *rWire;
-
-+ if (!_XkbCheckRequestBounds(client, req, sWire, sWire + 1))
-+ return BadLength;
-+
- if (client->swapped) {
- swapl(&sWire->name);
- swaps(&sWire->top);
-@@ -5357,6 +5372,9 @@ _CheckSetSections(XkbGeometryPtr geom,
- XkbRowPtr row;
- xkbKeyWireDesc *kWire;
-
-+ if (!_XkbCheckRequestBounds(client, req, rWire, rWire + 1))
-+ return BadLength;
-+
- if (client->swapped) {
- swaps(&rWire->top);
- swaps(&rWire->left);
-@@ -5371,6 +5389,9 @@ _CheckSetSections(XkbGeometryPtr geom,
- for (k = 0; k < rWire->nKeys; k++, kWire++) {
- XkbKeyPtr key;
-
-+ if (!_XkbCheckRequestBounds(client, req, kWire, kWire + 1))
-+ return BadLength;
-+
- key = XkbAddGeomKey(row);
- if (!key)
- return BadAlloc;
-@@ -5396,7 +5417,7 @@ _CheckSetSections(XkbGeometryPtr geom,
- register int d;
-
- for (d = 0; d < sWire->nDoodads; d++) {
-- status = _CheckSetDoodad(&wire, geom, section, client);
-+ status = _CheckSetDoodad(&wire, req, geom, section, client);
- if (status != Success)
- return status;
- }
-@@ -5405,7 +5426,7 @@ _CheckSetSections(XkbGeometryPtr geom,
- register int o;
-
- for (o = 0; o < sWire->nOverlays; o++) {
-- status = _CheckSetOverlay(&wire, geom, section, client);
-+ status = _CheckSetOverlay(&wire, req, geom, section, client);
- if (status != Success)
- return status;
- }
-@@ -5439,6 +5460,9 @@ _CheckSetShapes(XkbGeometryPtr geom,
- xkbOutlineWireDesc *olWire;
- XkbOutlinePtr ol;
-
-+ if (!_XkbCheckRequestBounds(client, req, shapeWire, shapeWire + 1))
-+ return BadLength;
-+
- shape =
- XkbAddGeomShape(geom, shapeWire->name, shapeWire->nOutlines);
- if (!shape)
-@@ -5449,12 +5473,18 @@ _CheckSetShapes(XkbGeometryPtr geom,
- XkbPointPtr pt;
- xkbPointWireDesc *ptWire;
-
-+ if (!_XkbCheckRequestBounds(client, req, olWire, olWire + 1))
-+ return BadLength;
-+
- ol = XkbAddGeomOutline(shape, olWire->nPoints);
- if (!ol)
- return BadAlloc;
- ol->corner_radius = olWire->cornerRadius;
- ptWire = (xkbPointWireDesc *) &olWire[1];
- for (p = 0, pt = ol->points; p < olWire->nPoints; p++, pt++, ptWire++) {
-+ if (!_XkbCheckRequestBounds(client, req, ptWire, ptWire + 1))
-+ return BadLength;
-+
- pt->x = ptWire->x;
- pt->y = ptWire->y;
- if (client->swapped) {
-@@ -5560,12 +5590,15 @@ _CheckSetGeom(XkbGeometryPtr geom, xkbSetGeometryReq * req, ClientPtr client)
- return status;
-
- for (i = 0; i < req->nDoodads; i++) {
-- status = _CheckSetDoodad(&wire, geom, NULL, client);
-+ status = _CheckSetDoodad(&wire, req, geom, NULL, client);
- if (status != Success)
- return status;
- }
-
- for (i = 0; i < req->nKeyAliases; i++) {
-+ if (!_XkbCheckRequestBounds(client, req, wire, wire + XkbKeyNameLength))
-+ return BadLength;
-+
- if (XkbAddGeomKeyAlias(geom, &wire[XkbKeyNameLength], wire) == NULL)
- return BadAlloc;
- wire += 2 * XkbKeyNameLength;
---
-GitLab
-