xkb: Make the RT_XKBCLIENT resource private

Currently, the resource in only available to the xkb.c source file.

In preparation for the next commit, to be able to free the resources
from XkbRemoveResourceClient(), make that variable private instead.

This is related to:

CVE-2025-62230, ZDI-CAN-27545

This vulnerability was discovered by:
Jan-Niklas Sohn working with Trend Micro Zero Day Initiative

Signed-off-by: Olivier Fourdan <ofourdan@redhat.com>
Reviewed-by: Michel Dänzer <mdaenzer@redhat.com>
(cherry picked from commit 99790a2c92)

Part-of: <https://gitlab.freedesktop.org/xorg/xserver/-/merge_requests/2088>
This commit is contained in:
Olivier Fourdan 2025-09-10 15:55:06 +02:00
parent 4d07b16328
commit a1d4f04bbd
2 changed files with 3 additions and 1 deletions

View file

@ -58,6 +58,8 @@ THE USE OR PERFORMANCE OF THIS SOFTWARE.
#include "inputstr.h"
#include "events.h"
extern RESTYPE RT_XKBCLIENT;
typedef struct _XkbInterest {
DeviceIntPtr dev;
ClientPtr client;

View file

@ -50,7 +50,7 @@ int XkbKeyboardErrorCode;
CARD32 xkbDebugFlags = 0;
static CARD32 xkbDebugCtrls = 0;
static RESTYPE RT_XKBCLIENT;
RESTYPE RT_XKBCLIENT = 0;
/***====================================================================***/