mirror of
https://git.yoctoproject.org/git/poky
synced 2026-01-01 13:58:04 +00:00
>From https://lists.x.org/archives/xorg-announce/2025-October/003635.html: 1) CVE-2025-62229: Use-after-free in XPresentNotify structures creation Using the X11 Present extension, when processing and adding the notifications after presenting a pixmap, if an error occurs, a dangling pointer may be left in the error code path of the function causing a use-after-free when eventually destroying the notification structures later. Introduced in: Xorg 1.15 Fixed in: xorg-server-21.1.19 and xwayland-24.1.9 Fix: https://gitlab.freedesktop.org/xorg/xserver/-/commit/5a4286b1 Found by: Jan-Niklas Sohn working with Trend Micro Zero Day Initiative. 2) CVE-2025-62230: Use-after-free in Xkb client resource removal When removing the Xkb resources for a client, the function XkbRemoveResourceClient() will free the XkbInterest data associated with the device, but not the resource associated with it. As a result, when the client terminates, the resource delete function triggers a use-after-free. Introduced in: X11R6 Fixed in: xorg-server-21.1.19 and xwayland-24.1.9 Fix: https://gitlab.freedesktop.org/xorg/xserver/-/commit/99790a2c https://gitlab.freedesktop.org/xorg/xserver/-/commit/10c94238 Found by: Jan-Niklas Sohn working with Trend Micro Zero Day Initiative. 3) CVE-2025-62231: Value overflow in Xkb extension XkbSetCompatMap() The XkbCompatMap structure stores some of its values using an unsigned short, but fails to check whether the sum of the input data might overflow the maximum unsigned short value. Introduced in: X11R6 Fixed in: xorg-server-21.1.19 and xwayland-24.1.9 Fix: https://gitlab.freedesktop.org/xorg/xserver/-/commit/475d9f49 Found by: Jan-Niklas Sohn working with Trend Micro Zero Day Initiative. (From OE-Core rev: f3b5fc0174478e1ab6d3d03c8fdc75be28d0fd3b) Signed-off-by: Ross Burton <ross.burton@arm.com> Signed-off-by: Mathieu Dubois-Briand <mathieu.dubois-briand@bootlin.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
56 lines
2.6 KiB
BlitzBasic
56 lines
2.6 KiB
BlitzBasic
SUMMARY = "XWayland is an X Server that runs under Wayland."
|
|
DESCRIPTION = "XWayland is an X Server running as a Wayland client, \
|
|
and thus is capable of displaying native X11 client applications in a \
|
|
Wayland compositor environment. The goal of XWayland is to facilitate \
|
|
the transition from X Window System to Wayland environments, providing \
|
|
a way to run unported applications in the meantime."
|
|
HOMEPAGE = "https://fedoraproject.org/wiki/Changes/XwaylandStandalone"
|
|
|
|
LICENSE = "MIT"
|
|
LIC_FILES_CHKSUM = "file://COPYING;md5=5df87950af51ac2c5822094553ea1880"
|
|
|
|
SRC_URI = "https://www.x.org/archive/individual/xserver/xwayland-${PV}.tar.xz \
|
|
file://0001-present-Fix-use-after-free-in-present_create_notifie.patch \
|
|
file://0002-xkb-Make-the-RT_XKBCLIENT-resource-private.patch \
|
|
file://0003-xkb-Free-the-XKB-resource-when-freeing-XkbInterest.patch \
|
|
file://0004-xkb-Prevent-overflow-in-XkbSetCompatMap.patch \
|
|
"
|
|
SRC_URI[sha256sum] = "c8908d57c8ed9ceb8293c16ba7ad5af522efaf1ba7e51f9e4cf3c0774d199907"
|
|
|
|
UPSTREAM_CHECK_REGEX = "xwayland-(?P<pver>\d+(\.(?!90\d)\d+)+)\.tar"
|
|
|
|
inherit meson features_check pkgconfig
|
|
REQUIRED_DISTRO_FEATURES = "x11 opengl"
|
|
|
|
DEPENDS += "xorgproto xtrans pixman libxkbfile libxfont2 wayland wayland-native wayland-protocols libdrm libepoxy libxcvt libtirpc"
|
|
|
|
OPENGL_PKGCONFIGS = "glx glamor dri3"
|
|
PACKAGECONFIG ??= "${XORG_CRYPTO} ${XWAYLAND_EI} \
|
|
${@bb.utils.contains('DISTRO_FEATURES', 'opengl', '${OPENGL_PKGCONFIGS}', '', d)} \
|
|
"
|
|
PACKAGECONFIG[dri3] = "-Ddri3=true,-Ddri3=false,libxshmfence"
|
|
PACKAGECONFIG[libdecor] = "-Dlibdecor=true,-Dlibdecor=false,libdecor"
|
|
PACKAGECONFIG[glx] = "-Dglx=true,-Dglx=false,virtual/libgl virtual/libx11"
|
|
PACKAGECONFIG[glamor] = "-Dglamor=true,-Dglamor=false,libepoxy virtual/libgbm,libegl"
|
|
PACKAGECONFIG[unwind] = "-Dlibunwind=true,-Dlibunwind=false,libunwind"
|
|
PACKAGECONFIG[xinerama] = "-Dxinerama=true,-Dxinerama=false"
|
|
|
|
# Xorg requires a SHA1 implementation, pick one
|
|
XORG_CRYPTO ??= "openssl"
|
|
PACKAGECONFIG[openssl] = "-Dsha1=libcrypto,,openssl"
|
|
PACKAGECONFIG[nettle] = "-Dsha1=libnettle,,nettle"
|
|
PACKAGECONFIG[gcrypt] = "-Dsha1=libgcrypt,,libgcrypt"
|
|
XWAYLAND_EI ??= "xwayland_ei_false"
|
|
PACKAGECONFIG[xwayland_ei_false] = "-Dxwayland_ei=false"
|
|
PACKAGECONFIG[xwayland_ei_portal] = "-Dxwayland_ei=portal,,libei"
|
|
PACKAGECONFIG[xwayland_ei_socket] = "-Dxwayland_ei=socket,,libei"
|
|
|
|
do_install:append() {
|
|
# remove files not needed and clashing with xserver-xorg
|
|
rm -rf ${D}/${libdir}/xorg/
|
|
}
|
|
|
|
FILES:${PN} += "${libdir}/xorg/protocol.txt"
|
|
|
|
RDEPENDS:${PN} += "xkbcomp ${@bb.utils.contains("DISTRO_FEATURES", "systemd", "", "x11-volatiles", d)}"
|