From a9e27cf240875f527a16c86fd911a214425bce74 Mon Sep 17 00:00:00 2001 From: "Enrico Weigelt, metux IT consult" Date: Tue, 19 Aug 2025 19:21:25 +0200 Subject: [PATCH] [PR #796] xkb: ProcXkbGetKbdByName(): extra payload size sanity check PR: https://github.com/X11Libre/xserver/pull/796 --- xkb/xkb.c | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/xkb/xkb.c b/xkb/xkb.c index ba1ee1d4bb..dc92d66dd9 100644 --- a/xkb/xkb.c +++ b/xkb/xkb.c @@ -6090,6 +6090,10 @@ ProcXkbGetKbdByName(ClientPtr client) XkbAssembleGeometry(client, new->geom, grep, &childbuf); + if (childbuf.wpos != (grep.length * 4)) + LogMessage(X_WARNING, "ProcXkbGetKbdByName() childbuf size (%ld) mismatch nrep size (%ld // %d units)\n", + (unsigned long)childbuf.wpos, (unsigned long)grep.length * 4, grep.length); + if (client->swapped) { swaps(&grep.sequenceNumber); swapl(&grep.length);