Commit Graph

20116 Commits

Author SHA1 Message Date
Enrico Weigelt, metux IT consult 09cfc0fcec (1859) dix: make LEGAL_NEW_RESOURCE() macro private
Not used by any external driver, so no need to keep it in public header.

Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
2025-06-03 11:37:35 +02:00
Enrico Weigelt, metux IT consult 41ae677b8b (1861) dix: make DDXTouchPointInfoRec private
This type isn't used by any external drivers, so no need to
keep it in public API.

Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
2025-06-03 11:37:35 +02:00
Enrico Weigelt, metux IT consult 986556b23a (1866) dix: use calloc() in _dixAllocateScreenObjectWithPrivates()
We're clearing the whole object size anyways, so we can directly
use calloc() instead of malloc() plus memset().

Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
2025-06-03 11:37:35 +02:00
Enrico Weigelt, metux IT consult 9fc27414fd (1867) dix: unexport and rename CreateWindow()
a) an internal function that's not used by any drivers
b) conflicting with function/define of same name on win32

Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
2025-06-03 11:37:35 +02:00
Enrico Weigelt, metux IT consult fffa9aa8b0 (1871) damage: fix resource access flag on destroy
When destroying a resource, the lookup needs to be done with
DixDestroyAccess (instead of DixWriteAccess) flag - otherwise
xace hooks can't properly differenciate what's happening.

Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
Fixes: 6c46645cfc
2025-06-03 11:37:35 +02:00
Enrico Weigelt, metux IT consult 4420c97a7b (1880) Xi: use fixed define for extenion base opcode
Several places outside Xi (eg. dix, security hooks, ...) need to know the
actual XI base opcode. This formerly had been done by a global variable,
which is filled on XI init. This has some drawbacks, eg. requires that
XI really is initialized before anybody else attempting to access this
variable - changes in extension init order could be dangerous.

Since extension opcodes are now (compile-time) fixed for all known
extensions (including XI), this isn't needed anymore. We can really
rely on the XI extension always having the same opcode base. So we
can drop that variable entirely and use the corresponding define instead.

Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
2025-06-03 11:37:35 +02:00
Enrico Weigelt, metux IT consult 8237e265af (1880) dix: reserve fixed extension opcodes for known extensions
Assign fixed opcodes for known (in-tree) extensions and add
defines for them. Other places (eg. security extensions) that
need to know those opcodes now can directly use those defines
not having to look them up at runtime.

Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
2025-06-03 11:37:35 +02:00
Enrico Weigelt, metux IT consult 1b878feef0 (1880) dix: add support for reserved extension slots
In order to allow extensions being registered at fixed opcodes,
there need to be a reserved slot range. Thus `NumExtensions` needs
to start out with the upper ceiling of the reserved slot space.
Thus it cannot tell whether the array already had been allocated,
and some slots now may be NULL, so we need some extra checks.

Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
2025-06-03 11:37:35 +02:00
Enrico Weigelt, metux IT consult 96d22ac9aa (1880) dix: AddExtension: simplify error return path
Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
2025-06-03 11:37:35 +02:00
Enrico Weigelt, metux IT consult 659abbadc8 (1880) dix: simplify extension query
Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
2025-06-03 11:37:35 +02:00
Enrico Weigelt, metux IT consult 08c6bbf32b (1881) Xace: remove remains of XACE_CORE_DISPATCH
There's no actual caller of this hook - removed almost a decade ago
(see commit 6cb34816af), but some remains
had been forgotten to clean up.

Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
2025-06-03 11:37:35 +02:00
Enrico Weigelt, metux IT consult 7e7ca1b5ae (1882) xwin: drop unused variable WindowsDRIReqCode
This variable is assigned once, but never used.

Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
2025-06-03 11:37:35 +02:00
Enrico Weigelt, metux IT consult 673dc8fb18 (1883) Xquartz: drop unused variable DRIReqCode
This variable is assigned once, but never used.

Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
2025-06-03 11:37:35 +02:00
Enrico Weigelt, metux IT consult 8c2b016ae9 (1884) xfree86: dri: drop unused variable DRIReqCode
This variable is assigned once, but never used.

Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
2025-06-03 11:37:35 +02:00
Enrico Weigelt, metux IT consult 88304840c1 (1886) XI: drop now obsolete SReplyIDispatch()
nothing else to do for it anymore, since all previous callers now have been
migrated to do the byte-swapping directly, so it can be dropped entirely.

Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
2025-06-03 11:37:35 +02:00
Enrico Weigelt, metux IT consult 3d2d9c4495 (1886) XI: directly write out X_XIGetFocus reply
Write out the X_XIGetFocus reply directly (and do the swapping
within the request handler) instead of going through separate callback
that's having demux the replies again.

Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
2025-06-03 11:37:35 +02:00
Enrico Weigelt, metux IT consult 9b80c56198 (1886) XI: directly write out X_XIGetSelectedEvents reply
Write out the X_XIGetSelectedEvents reply directly (and do the swapping
within the request handler) instead of going through separate callback
that's having demux the replies again.

Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
2025-06-03 11:37:35 +02:00
Enrico Weigelt, metux IT consult 5a5dddbdec (1886) XI: directly write out X_XIGetProperty reply
Write out the X_XIGetProperty reply directly (and do the swapping
within the request handler) instead of going through separate callback
that's having demux the replies again.

Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
2025-06-03 11:37:35 +02:00
Enrico Weigelt, metux IT consult f968077100 (1886) XI: directly write out X_XIListProperties reply
Write out the X_XIListProperties reply directly (and do the swapping
within the request handler) instead of going through separate callback
that's having demux the replies again.

Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
2025-06-03 11:37:35 +02:00
Enrico Weigelt, metux IT consult d0de2cdf4d (1886) XI: directly write out X_XIPassiveGrabDevice reply
Write out the X_XIPassiveGrabDevice reply directly (and do the swapping
within the request handler) instead of going through separate callback
that's having demux the replies again.

Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
2025-06-03 11:37:35 +02:00
Enrico Weigelt, metux IT consult 2dbe9854e9 (1886) XI: directly write out X_XIGrabDevice reply
Write out the X_XIGrabDevice reply directly (and do the swapping
within the request handler) instead of going through separate callback
that's having demux the replies again.

Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
2025-06-03 11:37:35 +02:00
Enrico Weigelt, metux IT consult 02f9aef5ee (1886) XI: directly write out X_XIQueryDevice reply
Write out the X_XIQueryDevice  reply directly (and do the swapping
within the request handler) instead of going through separate callback
that's having demux the replies again.

Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
2025-06-03 11:37:35 +02:00
Enrico Weigelt, metux IT consult 9aca1a404e (1886) XI: directly write out X_XIQueryVersion reply
Write out the X_XIQueryVersion reply directly (and do the swapping
within the request handler) instead of going through separate callback
that's having demux the replies again.

Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
2025-06-03 11:37:35 +02:00
Enrico Weigelt, metux IT consult ab84bed41c (1886) XI: directly write out X_XIGetClientPointer reply
Write out the X_XIGetClientPointer reply directly (and do the swapping
within the request handler) instead of going through separate callback
that's having demux the replies again.

Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
2025-06-03 11:37:35 +02:00
Enrico Weigelt, metux IT consult 0ac34c0c44 (1886) XI: directly write out X_XIQueryPointer reply
Write out the X_XIQueryPointer reply directly (and do the swapping
within the request handler) instead of going through separate callback
that's having demux the replies again.

Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
2025-06-03 11:37:35 +02:00
Enrico Weigelt, metux IT consult b294a16845 (1886) XI: directly write out X_GetDeviceProperty reply
Write out the X_GetDeviceProperty reply directly (and do the swapping
within the request handler) instead of going through separate callback
that's having demux the replies again.

Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
2025-06-03 11:37:35 +02:00
Enrico Weigelt, metux IT consult dc58917c5c (1886) XI: directly write out X_ListDeviceProperties reply
Write out the X_ListDeviceProperties reply directly (and do the swapping
within the request handler) instead of going through separate callback
that's having demux the replies again.

Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
2025-06-03 11:37:35 +02:00
Enrico Weigelt, metux IT consult ce001bc635 (1886) XI: directly write out X_ChangeDeviceControl reply
Write out the X_ChangeDeviceControl reply directly (and do the swapping
within the request handler) instead of going through separate callback
that's having demux the replies again.

Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
2025-06-03 11:37:35 +02:00
Enrico Weigelt, metux IT consult f0b358a3b9 (1886) XI: directly write out X_GetDeviceControl reply
Write out the X_GetDeviceControl reply directly (and do the swapping
within the request handler) instead of going through separate callback
that's having demux the replies again.

Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
2025-06-03 11:37:35 +02:00
Enrico Weigelt, metux IT consult e87f7b4c7a (1886) XI: directly write out X_SetDeviceValuators reply
Write out the X_SetDeviceValuators reply directly (and do the swapping
within the request handler) instead of going through separate callback
that's having demux the replies again.

Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
2025-06-03 11:37:35 +02:00
Enrico Weigelt, metux IT consult 2f66205552 (1886) XI: directly write out X_QueryDeviceState reply
Write out the X_QueryDeviceState reply directly (and do the swapping
within the request handler) instead of going through separate callback
that's having demux the replies again.

Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
2025-06-03 11:37:35 +02:00
Enrico Weigelt, metux IT consult 6ac6ace79d (1886) XI: directly write out X_SetDeviceButtonMapping reply
Write out the X_SetDeviceButtonMapping reply directly (and do the swapping
within the request handler) instead of going through separate callback
that's having demux the replies again.

Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
2025-06-03 11:37:35 +02:00
Enrico Weigelt, metux IT consult 2d9b3175c9 (1886) XI: directly write out X_GetDeviceButtonMapping reply
Write out the X_GetDeviceButtonMapping reply directly (and do the swapping
within the request handler) instead of going through separate callback
that's having demux the replies again.

Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
2025-06-03 11:37:35 +02:00
Enrico Weigelt, metux IT consult 2b790ff842 (1886) XI: directly write out X_SetDeviceModifierMapping reply
Write out X_SetDeviceModifierMapping the reply directly (and do the swapping
within the request handler) instead of going through separate callback
that's having demux the replies again.

Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
2025-06-03 11:37:35 +02:00
Enrico Weigelt, metux IT consult 356e0a5f03 (1886) XI: directly write out X_GetDeviceModifierMapping reply
Write out X_GetDeviceModifierMapping the reply directly (and do the swapping
within the request handler) instead of going through separate callback
that's having demux the replies again.

Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
2025-06-03 11:37:35 +02:00
Enrico Weigelt, metux IT consult 1a3dd73155 (1886) XI: directly write out X_GetDeviceKeyMapping reply
Write out X_GetDeviceKeyMapping the reply directly (and do the swapping
within the request handler) instead of going through separate callback
that's having demux the replies again.

Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
2025-06-03 11:37:35 +02:00
Enrico Weigelt, metux IT consult 81b5b6f379 (1886) XI: directly write out X_GetFeedbackControl reply
Write out X_GetFeedbackControl the reply directly (and do the swapping
within the request handler) instead of going through separate callback
that's having demux the replies again.

Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
2025-06-03 11:37:35 +02:00
Enrico Weigelt, metux IT consult 690dcd25e7 (1886) XI: directly write out X_GetDeviceFocus reply
Write out X_GetDeviceFocus the reply directly (and do the swapping
within the request handler) instead of going through separate callback
that's having demux the replies again.

Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
2025-06-03 11:37:35 +02:00
Enrico Weigelt, metux IT consult ad8333683f (1886) XI: directly write out X_GrabDevice reply
Write out X_GrabDevice the reply directly (and do the swapping
within the request handler) instead of going through separate callback
that's having demux the replies again.

Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
2025-06-03 11:37:35 +02:00
Enrico Weigelt, metux IT consult ccca3bd2bf (1886) XI: directly write out X_GetDeviceMotionEvents reply
Write out X_GetDeviceMotionEvents the reply directly (and do the swapping
within the request handler) instead of going through separate callback
that's having demux the replies again.

Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
2025-06-03 11:37:35 +02:00
Enrico Weigelt, metux IT consult 4bc7f7d953 (1886) Xi: declare variables where needed in ProcXGetDeviceMotionEvents()
Improve code readability by moving variable declarations to where
they're actually needed.

Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
2025-06-03 11:37:35 +02:00
Enrico Weigelt, metux IT consult 6355930427 (1886) XI: drop extra temp variable in ProcXGetDeviceMotionEvents()
The value is only checked once, so no need to copy it to a temporary
variable first.

Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
2025-06-03 11:37:35 +02:00
Enrico Weigelt, metux IT consult 504b7cb86a (1886) XI: use SwapLongs() in ProcXGetDeviceMotionEvents()
We already have a standard function for swapping 32 bit ints,
so let's use this one instead of rolling our own loop.

Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
2025-06-03 11:37:35 +02:00
Enrico Weigelt, metux IT consult 7afacdf1b2 (1886) XI: directly write out X_GetDeviceDontPropagateList reply
Write out X_GetDeviceDontPropagateList the reply directly (and do the swapping
within the request handler) instead of going through separate callback
that's having demux the replies again.

Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
2025-06-03 11:37:35 +02:00
Enrico Weigelt, metux IT consult 4d16420692 (1886) XI: directly write out X_GetSelectedExtensionEvents reply
Write out X_GetSelectedExtensionEvents the reply directly (and do the swapping
within the request handler) instead of going through separate callback
that's having demux the replies again.

Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
2025-06-03 11:37:35 +02:00
Enrico Weigelt, metux IT consult 0c5c4f9f89 (1886) XI: directly write out X_SetDeviceMode reply
Write out X_SetDeviceMode the reply directly (and do the swapping
within the request handler) instead of going through separate callback
that's having demux the replies again.

Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
2025-06-03 11:37:35 +02:00
Enrico Weigelt, metux IT consult 91bfcb98fd (1886) XI: directly write out X_OpenDevice reply
Write out X_OpenDevice the reply directly (and do the swapping
within the request handler) instead of going through separate callback
that's having demux the replies again.

Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
2025-06-03 11:37:35 +02:00
Enrico Weigelt, metux IT consult 5f94953789 (1886) XI: directly write out X_ListInputDevices reply
Write out X_ListInputDevices the reply directly (and do the swapping
within the request handler) instead of going through separate callback
that's having demux the replies again.

Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
2025-06-03 11:37:35 +02:00
Enrico Weigelt, metux IT consult 476ef09ce8 (1886) XI: directly write out X_GetExtensionVersion reply
Write out the X_GetExtensionVersion reply directly (and do the swapping
within the request handler) instead of going through separate callback
that's having demux the replies again.

Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
2025-06-03 11:37:35 +02:00
Enrico Weigelt, metux IT consult ece1ac6a9a (1886) XI: canonicalize reply struct declarations and naming
* name all of them "rep", as throughout most of the Xserver codebase
* always declare them where initialized

Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
2025-06-03 11:37:35 +02:00