Enrico Weigelt, metux IT consult
3369a29359
[PR #3162 ] os: split WriteToClient() into exported frontend and internal dixWriteToClient()
...
Move the actual body of WriteToClient() into a new internal worker
dixWriteToClient() and turn WriteToClient() into a thin exported
frontend that just delegates to it.
This separates the two roles the function had: the exported, legacy
entry point kept for ABI compatibility with out-of-tree drivers/modules,
and the worker used by all in-tree reply/event paths. In-tree callers
will be moved over to dixWriteToClient() in the following commits, which
also lets the frontend be instrumented later without affecting internal
paths.
dixWriteToClient() is declared in the private os/io_priv.h but still
exported (_X_EXPORT), since in-tree modules that may be built as separate
shared objects (e.g. GLX) need to link against it.
The xi1/xi2 protocol unit tests intercept the reply path via
-Wl,-wrap,WriteToClient. As the in-tree reply path moves onto
dixWriteToClient(), retarget the linker wrap (and the WRAP_FUNCTION /
wrapped_* references) to dixWriteToClient(); this also covers calls that
still go through the WriteToClient() frontend, since it funnels into the
same worker.
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
PR: https://github.com/X11Libre/xserver/pull/3162
Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
2026-06-26 23:17:09 +02:00
..
.gitignore
callback.h
include: misc.h: drop duplicate definition of CallbackListPtr
2025-09-25 09:36:53 +02:00
client.h
include: drop including dix-config.h
2026-02-10 11:48:39 +01:00
colormap.h
colormapst.h
compiler.h
include: parentheses around macro argument symbols
2026-06-24 19:12:55 +02:00
compositeext.h
composite: move public SDK header to include/
2026-02-12 13:21:41 +01:00
cursor.h
cursorstr.h
include: unexport CURSOR_BITS_SIZE() and CURSOR_REC_SIZE() macros
2025-11-08 10:45:43 +01:00
damage.h
include: fix missing includes of <X11/Xfuncproto.h>
2026-04-24 13:04:40 +02:00
damagestr.h
include: parentheses around macro argument symbols
2026-06-24 19:12:55 +02:00
dgaproc.h
xfree86: move over public SDK headers to include/
2026-02-12 16:21:02 +01:00
displaymode.h
include: drop including dix-config.h
2026-02-10 11:48:39 +01:00
dix.h
include: new header for fundamental pointer types
2026-02-12 18:28:35 +01:00
dixaccess.h
dixfont.h
include: new header for fundamental pointer types
2026-02-12 18:28:35 +01:00
dixfontstr.h
include: parentheses around macro argument symbols
2026-06-24 19:12:55 +02:00
dixstruct.h
dix: use xorg_list saveSet list
2026-06-25 15:37:02 +02:00
dri.h
xfree86: dri: move over public SDK headers to include/
2026-02-12 18:28:35 +01:00
dri2.h
include: dri2.h: fix missing include of "dix.h"
2026-04-24 16:44:17 +02:00
dri3.h
dri3: move public dri3.h sdk header to include/
2026-02-12 14:24:36 +01:00
dristruct.h
include: parentheses around macro argument symbols
2026-06-24 19:12:55 +02:00
edid.h
include: parentheses around macro argument symbols
2026-06-24 19:12:55 +02:00
events.h
eventstr.h
exa.h
Fix typos
2026-04-19 12:32:26 +02:00
exevents.h
dix: unexport XIUnregisterPropertyHandler() and XIDeleteAllDeviceProperties()
2025-11-20 19:21:37 +01:00
extension.h
include: new header for fundamental pointer types
2026-02-12 18:28:35 +01:00
extinit.h
include: update comment about exported noPanoramiXExtension
2025-09-15 10:26:11 +02:00
extnsionst.h
include: extnsionst.h: drop unnecessary includes
2026-06-18 13:50:05 +02:00
fb.h
include: parentheses around macro argument symbols
2026-06-24 19:12:55 +02:00
fbdevhw.h
xfree86: fbdevhw: move over public SDK header to include/
2026-02-12 16:26:30 +01:00
fboverlay.h
fb: move over public SDK headers to include/
2026-02-12 14:39:31 +01:00
fbpict.h
fb: move over public SDK headers to include/
2026-02-12 14:39:31 +01:00
fbrop.h
include: parentheses around macro argument symbols
2026-06-24 19:12:55 +02:00
fd_notify.h
fourcc.h
xv: change FOURCC_RGBA32 to AMD one
2026-06-24 19:25:57 +02:00
gc.h
gcstruct.h
include: replace DDXPoint by xPoint
2026-02-10 15:58:55 +01:00
glamor.h
glamor_egl: remove unneeded xf86 includes/GLAMOR_FOR_XORG
2026-05-12 14:50:18 +02:00
globals.h
os: unexport SeatId and move it to dix settings
2026-02-03 11:34:14 +01:00
glx_extinit.h
glx: turn retval of xorgGlxCreateVendor() into void
2026-04-23 19:45:53 +02:00
glxvndabi.h
include: new header for fundamental pointer types
2026-02-12 18:28:35 +01:00
glyphstr.h
render: move over public SDK headers to include/
2026-02-12 17:43:44 +01:00
i2c_def.h
xfree86: i2c: move over public SDK headers to include/
2026-02-12 19:50:11 +01:00
input.h
include: new header for fundamental pointer types
2026-02-12 18:28:35 +01:00
inputstr.h
include: inputstr.h: drop assert()
2026-06-19 19:24:57 +02:00
list.h
list: make xorg_list cope with zero-initialized list heads
2026-06-25 10:47:59 +02:00
meson.build
mi: drop mioverlay.h
2026-06-24 19:26:49 +02:00
mi.h
mi: move over public SDK headers to include/
2026-02-12 16:21:38 +01:00
micmap.h
mi: move over public SDK headers to include/
2026-02-12 16:21:38 +01:00
micoord.h
include: parentheses around macro argument symbols
2026-06-24 19:12:55 +02:00
migc.h
mi: move over public SDK headers to include/
2026-02-12 16:21:38 +01:00
miline.h
include: parentheses around macro argument symbols
2026-06-24 19:12:55 +02:00
mipict.h
include: parentheses around macro argument symbols
2026-06-24 19:12:55 +02:00
mipointer.h
mi: move over public SDK headers to include/
2026-02-12 16:21:38 +01:00
mipointrst.h
mi: move over public SDK headers to include/
2026-02-12 16:21:38 +01:00
misc.h
include: parentheses around macro argument symbols
2026-06-24 19:12:55 +02:00
miscstruct.h
mistruct.h
mi: move over public SDK headers to include/
2026-02-12 16:21:38 +01:00
misync.h
Xext: move over public SDK headers to include/
2026-02-12 19:00:42 +01:00
misyncfd.h
include: fix missing includes of <X11/Xfuncproto.h>
2026-04-24 13:04:40 +02:00
misyncshm.h
include: fix missing includes of <X11/Xfuncproto.h>
2026-04-24 13:04:40 +02:00
misyncstr.h
include: new header for fundamental pointer types
2026-02-12 18:28:35 +01:00
mizerarc.h
include: fix missing includes of <X11/Xfuncproto.h>
2026-04-24 13:04:40 +02:00
opaque.h
dix: unexport enableIndirectGLX
2025-11-20 19:25:41 +01:00
optionstr.h
os.h
[PR #3162 ] os: split WriteToClient() into exported frontend and internal dixWriteToClient()
2026-06-26 23:17:09 +02:00
picture.h
include: parentheses around macro argument symbols
2026-06-24 19:12:55 +02:00
picturestr.h
include: parentheses around macro argument symbols
2026-06-24 19:12:55 +02:00
pixmap.h
include: parentheses around macro argument symbols
2026-06-24 19:12:55 +02:00
pixmapstr.h
include: pixmapstr.h: inline PixmapBox() and fix signedness
2025-09-18 20:26:31 +02:00
present.h
present: move over public SDK header to include/
2026-02-12 16:21:20 +01:00
privates.h
include: parentheses around macro argument symbols
2026-06-24 19:12:55 +02:00
property.h
include: new header for fundamental pointer types
2026-02-12 18:28:35 +01:00
propertyst.h
protocol-versions.h
ptrveloc.h
randrstr.h
include: parentheses around macro argument symbols
2026-06-24 19:12:55 +02:00
region.h
regionstr.h
include: parentheses around macro argument symbols
2026-06-24 19:12:55 +02:00
resource.h
include: new header for fundamental pointer types
2026-02-12 18:28:35 +01:00
rgb.h
rrtransform.h
randr: move over public SDK headers to include/
2026-02-12 15:35:58 +01:00
sarea.h
xfree86: dri: move over public SDK headers to include/
2026-02-12 18:28:35 +01:00
screenint.h
scrnintstr.h
xfixes: move cursor count priv data into ScreenRec
2026-06-24 19:23:27 +02:00
servermd.h
include: drop including dix-config.h
2026-02-10 11:48:39 +01:00
shadow.h
miext: shadow: move over public SDK header to include/
2026-02-12 14:39:55 +01:00
shadowfb.h
xfree86: shadowfb: move public SDK headers into include/
2026-02-13 10:11:07 +01:00
shmint.h
Xext: move over public SDK headers to include/
2026-02-12 19:00:42 +01:00
syncsdk.h
include: parentheses around macro argument symbols
2026-06-24 19:12:55 +02:00
validate.h
mi: move ValidateRec to mi_priv.h and rename to MiValidateRec
2026-02-10 18:27:41 +01:00
vbe.h
include: parentheses around macro argument symbols
2026-06-24 19:12:55 +02:00
vbeModes.h
include: parentheses around macro argument symbols
2026-06-24 19:12:55 +02:00
vgaHW.h
xfree86: vgahw: move over public SDK header to include/
2026-02-12 17:08:29 +01:00
vidmodestr.h
include: drop including dix-config.h
2026-02-10 11:48:39 +01:00
vndserver.h
glx: move over vndserver.h public SDK header to include/
2026-02-12 14:25:12 +01:00
wfbrename.h
fb: move over public SDK headers to include/
2026-02-12 14:39:31 +01:00
window.h
include: parentheses around macro argument symbols
2026-06-24 19:12:55 +02:00
windowstr.h
include: parentheses around macro argument symbols
2026-06-24 19:12:55 +02:00
xaarop.h
include: parentheses around macro argument symbols
2026-06-24 19:12:55 +02:00
xf86.h
include: parentheses around macro argument symbols
2026-06-24 19:12:55 +02:00
xf86_OSlib.h
xfree86: common: move public SDK headers to include/
2026-02-12 19:51:51 +01:00
xf86_OSproc.h
xfree86: common: move public SDK headers to include/
2026-02-12 19:51:51 +01:00
xf86cmap.h
include: new header for fundamental pointer types
2026-02-12 18:28:35 +01:00
xf86Crtc.h
xf86: check return value of XF86_CRTC_CONFIG_PTR in xf86CompatOutput()
2026-03-16 13:14:07 +01:00
xf86Cursor.h
xfree86: ramdac: move over public SDK headers to include/
2026-02-13 11:40:38 +01:00
xf86DDC.h
xfree86: ddc: move public SDK headers to include/
2026-02-12 19:18:54 +01:00
xf86fbman.h
xfree86: move over public SDK headers to include/
2026-02-12 16:21:02 +01:00
xf86i2c.h
xfree86: i2c: move over public SDK headers to include/
2026-02-12 19:50:11 +01:00
xf86int10.h
include: parentheses around macro argument symbols
2026-06-24 19:12:55 +02:00
xf86Modes.h
xfree86: modes: move public SDK headers to include/
2026-02-12 19:03:56 +01:00
xf86Module.h
include: parentheses around macro argument symbols
2026-06-24 19:12:55 +02:00
xf86Opt.h
include: fix missing includes of <X11/Xfuncproto.h>
2026-04-24 13:04:40 +02:00
xf86Optionstr.h
xfree86: move over public SDK headers to include/
2026-02-12 16:21:02 +01:00
xf86Optrec.h
include: dont include xorg-config.h
2026-02-13 14:00:33 +01:00
xf86Parser.h
include: dont include xorg-config.h
2026-02-13 14:00:33 +01:00
xf86Pci.h
treewide: fix typos
2026-03-16 13:11:07 +01:00
xf86platformBus.h
include: parentheses around macro argument symbols
2026-06-24 19:12:55 +02:00
xf86Priv.h
include: new header for fundamental pointer types
2026-02-12 18:28:35 +01:00
xf86Privstr.h
xfree86: move over public SDK headers to include/
2026-02-12 16:21:02 +01:00
xf86RandR12.h
xfree86: modes: move public SDK headers to include/
2026-02-12 19:03:56 +01:00
xf86sbusBus.h
xfree86: move over public SDK headers to include/
2026-02-12 16:21:02 +01:00
xf86str.h
include: parentheses around macro argument symbols
2026-06-24 19:12:55 +02:00
xf86Xinput.h
include: new header for fundamental pointer types
2026-02-12 18:28:35 +01:00
xf86xv.h
include: new header for fundamental pointer types
2026-02-12 18:28:35 +01:00
xf86xvmc.h
include: new header for fundamental pointer types
2026-02-12 18:28:35 +01:00
xisb.h
include: fix missing includes of <X11/Xfuncproto.h>
2026-04-24 13:04:40 +02:00
xkb-config.h.in
xkbrules.h
xkbsrv.h
Add docs for some internal methods
2026-03-16 13:20:45 +01:00
xkbstr.h
include: parentheses around macro argument symbols
2026-06-24 19:12:55 +02:00
xlibre_ptrtypes.h
include: xlibre_ptrtypes: protect from double declaration of ClientPtr
2026-04-30 14:39:39 +02:00
xorgVersion.h
include: parentheses around macro argument symbols
2026-06-24 19:12:55 +02:00
Xprintf.h
include: fix warning on XNFvasprintf() prototype
2025-12-04 17:28:58 +01:00
xserver-properties.h
Treewide: Fix typos
2026-03-16 13:11:07 +01:00
Xserver.d
xvdix.h
Xext: move over public SDK headers to include/
2026-02-12 19:00:42 +01:00
xvmcext.h
Xext: move over public SDK headers to include/
2026-02-12 19:00:42 +01:00
xwin-config.h.meson.in
treewide: Pull DEFAULT_LOGDIR into dix-config.h
2026-03-18 14:09:52 +01:00