xserver/randr
Olivier Fourdan fce91bcbe2 randr: Check for overflow in RRChangeProviderProperty()
A client might send a request causing an integer overflow when computing
the total size to allocate in RRChangeProviderProperty().

To avoid the issue, check that total length in bytes won't exceed the
maximum integer value.

CVE-2025-49180

This issue was discovered by Nils Emmerich <nemmerich@ernw.de> and
reported by Julian Suleder via ERNW Vulnerability Disclosure.

Signed-off-by: Olivier Fourdan <ofourdan@redhat.com>
Reviewed-by: Peter Hutterer <peter.hutterer@who-t.net>
(cherry picked from commit 3c3a4b767b)

Part-of: <https://gitlab.freedesktop.org/xorg/xserver/-/merge_requests/2026>
2025-06-17 15:08:17 +02:00
..
meson.build Drop Xorg DDX 2024-04-12 10:40:05 +02:00
randr.c randr: move private definitons from randrstr.h to randrstr_priv.h 2024-02-22 23:47:49 +00:00
randrstr.h render: drop obsolete macros pict_f_transform and pict_f_vector 2024-03-03 22:54:16 +00:00
randrstr_priv.h randr: move private definitons from randrstr.h to randrstr_priv.h 2024-02-22 23:47:49 +00:00
rrcrtc.c randr: move private definitons from randrstr.h to randrstr_priv.h 2024-02-22 23:47:49 +00:00
rrdispatch.c randr: move private definitons from randrstr.h to randrstr_priv.h 2024-02-22 23:47:49 +00:00
rrinfo.c Convert top level extensions to new *allocarray functions 2015-04-21 16:57:08 -07:00
rrlease.c randr: move private definitons from randrstr.h to randrstr_priv.h 2024-02-22 23:47:49 +00:00
rrmode.c randr: move private definitons from randrstr.h to randrstr_priv.h 2024-02-22 23:47:49 +00:00
rrmonitor.c randr: move private definitons from randrstr.h to randrstr_priv.h 2024-02-22 23:47:49 +00:00
rroutput.c randr: move private definitons from randrstr.h to randrstr_priv.h 2024-02-22 23:47:49 +00:00
rrpointer.c randr: Fix logic in RRPointerToNearestCrtc 2014-07-30 14:40:17 -07:00
rrproperty.c randr: move private definitons from randrstr.h to randrstr_priv.h 2024-02-22 23:47:49 +00:00
rrprovider.c randr: drop duplicate _X_EXPORT from .c source 2024-03-03 22:34:26 +00:00
rrproviderproperty.c randr: Check for overflow in RRChangeProviderProperty() 2025-06-17 15:08:17 +02:00
rrscreen.c randr: move private definitons from randrstr.h to randrstr_priv.h 2024-02-22 23:47:49 +00:00
rrsdispatch.c randr: move private definitons from randrstr.h to randrstr_priv.h 2024-02-22 23:47:49 +00:00
rrtransform.c randr: Silence -Wshift-negative-value warnings 2015-10-19 11:51:52 -04:00
rrtransform.h render: drop obsolete macros pict_f_transform and pict_f_vector 2024-03-03 22:54:16 +00:00
rrxinerama.c randr: move private definitons from randrstr.h to randrstr_priv.h 2024-02-22 23:47:49 +00:00