From 4a75fb14b79ad60253e9eb33653bca70cea75b7b Mon Sep 17 00:00:00 2001 From: "Enrico Weigelt, metux IT consult" Date: Tue, 23 Sep 2025 12:15:29 +0200 Subject: [PATCH] os: unexport ReplyCallback It's only used by record extension, not used by any drivers at all (neither FOSS nor proprietary), so it shouldn't be in the public SDK. Since it's never been used by any driver, it's effectively no ABI change, so we can safely do this within ABI-25. Signed-off-by: Enrico Weigelt, metux IT consult --- include/os.h | 11 ----------- os/client_priv.h | 13 +++++++++++++ os/io.c | 2 +- 3 files changed, 14 insertions(+), 12 deletions(-) diff --git a/include/os.h b/include/os.h index 675d5335d..50bd4fa2d 100644 --- a/include/os.h +++ b/include/os.h @@ -194,17 +194,6 @@ PrivsElevated(void); extern _X_EXPORT int GetClientFd(ClientPtr); -/* stuff for ReplyCallback */ -extern _X_EXPORT CallbackListPtr ReplyCallback; -typedef struct { - ClientPtr client; - const void *replyData; - unsigned long dataLenBytes; /* actual bytes from replyData + pad bytes */ - unsigned long bytesRemaining; - Bool startOfReply; - unsigned long padBytes; /* pad bytes from zeroed array */ -} ReplyInfoRec; - /* stuff for FlushCallback */ extern _X_EXPORT CallbackListPtr FlushCallback; diff --git a/os/client_priv.h b/os/client_priv.h index d0642f131..4cfa98f8d 100644 --- a/os/client_priv.h +++ b/os/client_priv.h @@ -10,6 +10,8 @@ #include #include +#include "include/callback.h" + /* Client IDs. Use GetClientPid, GetClientCmdName and GetClientCmdArgs * instead of accessing the fields directly. */ struct _ClientId { @@ -60,4 +62,15 @@ _X_EXPORT void SetCriticalOutputPending(void); /* exported only for DRI module, but should not be used by external drivers */ _X_EXPORT void ResetCurrentRequest(struct _Client *client); +/* stuff for ReplyCallback */ +extern CallbackListPtr ReplyCallback; +typedef struct { + ClientPtr client; + const void *replyData; + unsigned long dataLenBytes; /* actual bytes from replyData + pad bytes */ + unsigned long bytesRemaining; + Bool startOfReply; + unsigned long padBytes; /* pad bytes from zeroed array */ +} ReplyInfoRec; + #endif /* _XSERVER_DIX_CLIENT_PRIV_H */ diff --git a/os/io.c b/os/io.c index 9c53cc7e6..8c5d60e29 100644 --- a/os/io.c +++ b/os/io.c @@ -82,7 +82,7 @@ SOFTWARE. #include "dixstruct.h" #include "misc.h" -CallbackListPtr ReplyCallback; +CallbackListPtr ReplyCallback = NULL; CallbackListPtr FlushCallback; typedef struct _connectionInput {