Commit Graph

9433 Commits

Author SHA1 Message Date
Enrico Weigelt, metux IT consult daf794b5fe (!1955) Xext: geext: drop obsolete geext.h
This header has now become obsolete. There're also no external consumers
(drivers, etc) left, so it now finally can be dropped entirely.

Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
2025-05-22 17:34:42 +02:00
Enrico Weigelt, metux IT consult 1853984d6e (!1961) kdrive: protect against allocation failures and NULL pointers
Even if those situations shouldn't practically happen, it's better to have
some sanity checks just in case.

Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
2025-05-22 17:34:42 +02:00
Enrico Weigelt, metux IT consult 0e9b15f024 (!1967) dix: protect from pScreen->SetCursorPosition == NULL
It's safer not relying on all ScreenProc's actually filled.

../dix/events.c: In function ‘CheckPhysLimits’:
../dix/events.c:780:14: warning: dereference of NULL ‘pScreen’ [CWE-476] [-Wanalyzer-null-dereference]
  780 |             (*pScreen->SetCursorPosition)
      |             ~^~~~~~~~~~~~~~~~~~~~~~~~~~~~

Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
2025-05-22 17:34:41 +02:00
Enrico Weigelt, metux IT consult 65c0c35197 (!1967) dix: move props into WindowRec and fix potential NULL deref
The pointer to the window properties is currently inside the WindowOptional
structure, which may or may not exist at any given time. Thus, before accessing
those fields, at least need to check whether it exists, potentially need to
create it first.

Since a pointer is small (in relation to WindowRec) and windows having properties
is a pretty common, we can make our life much simpler here by moving the pointer
directly into WindowRec, so we don't need extra WindowOptionalRec allocation.

This also fixes an analyzer warning on potential NULL dereference issue:

| ../dix/property.c: In function ‘dixChangeWindowProperty’:
|../dix/property.c:343:37: warning: dereference of NULL ‘*pWin.optional’ [CWE-476] [-Wanalyzer-null-dereference]
|  343 |         pProp->next = pWin->optional->userProps;
|      |                       ~~~~~~~~~~~~~~^~~~~~~~~~~

Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
2025-05-22 17:34:41 +02:00
Enrico Weigelt, metux IT consult 9da65a88c4 (!1969) xfree86: parser: fix possible use-after-free xf86freeOutputClassList()
Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
2025-05-22 17:34:41 +02:00
Enrico Weigelt, metux IT consult 0a500e400d (!1969) xfree86: dri: extra safety checks for NULL pointers / disabled extension
Be more cautious on possible NULL pointers or not yet registered
devPrivates. Better a gracefully fail instead of hard segfault.

Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
2025-05-22 17:34:41 +02:00
Enrico Weigelt, metux IT consult 64ccf43f34 (!1969) xfree86: ddc: safety check for NULL pointer
Even though it *should* never be actually hit, it's still safer
to check for NULL instead of letting us crash with segfault.

Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
2025-05-22 17:34:41 +02:00
Enrico Weigelt, metux IT consult 90897f1479 (!1969) xfree86: common: extra safety checks for NULL pointers
Even though it's unlikely ever getting it, still safer to have some
extra checks / asserts than unexpected segfault.

Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
2025-05-22 17:34:41 +02:00
Enrico Weigelt, metux IT consult dd40eb46ea (!1969) xfree86: common: fix not-found check in xf86platformAddDevice()
Safer (and easier to understand) if we look at the result pointer
instead of the counter for testing whether device wasn't found.

Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
2025-05-22 17:34:40 +02:00
Enrico Weigelt, metux IT consult 8cd24a7227 (!1969) xfree86: common: gracefully handle allocation failure
Better try to handle memory allocation gracefully than just hard
crashing by segfault.

Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
2025-05-22 17:34:40 +02:00
Enrico Weigelt, metux IT consult de8ec4a2da (!1969) xfree86: utils: gracefully handle allocation failure.
Better failing gracefully instead of hard crash via segfault.

Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
2025-05-22 17:34:40 +02:00
Enrico Weigelt, metux IT consult 6964009a16 (!1969) xfree86: int10: extra NULL protection
Even though chances are really low it's ever getting hit, it's still safer
to have some sanity checks (which don't cost us much) than risking segfault.

Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
2025-05-22 17:34:40 +02:00
Enrico Weigelt, metux IT consult 1993c1f7c6 (!1969) xfree86: modes: fix uninitialized variables
| ../hw/xfree86/modes/xf86RandR12.c: In function ‘xf86ComputeCrtcPan’:
| ../hw/xfree86/modes/xf86RandR12.c:310:54: warning: use of uninitialized value ‘r[1]’ [CWE-457] [-Wanalyzer-use-of-uninitialized-value]
|   310 |             q[i] = m->m[1][i] * r[0] - m->m[0][i] * r[1];
|       |                                                     ~^~~

Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
2025-05-22 17:34:40 +02:00
Enrico Weigelt, metux IT consult 25fac50dcc (!1969) xfree86: loader: add assert() in LoadModule()
There's (remote) chance that the (internal) module name could become
NULL (eg. allocation failure). Even though chances to hit it are very
low, it's still better to have a check here (that doesn't cost us much),
just in case. Assert fail is still better than segfault, since we're
at least getting some hint what might have happened.

Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
2025-05-22 17:34:40 +02:00
Enrico Weigelt, metux IT consult 361f78bf4c (!1969) xfree86: parser: check for alloc failure and possible NULL pointers
Adding paranoid extra checks against allocation failure and NULL pointers.
Even though might not be actually hit in practise, it's still better to
be cautious, just in case. And reducing analyzer noise this way.

Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
2025-05-22 17:34:40 +02:00
Enrico Weigelt, metux IT consult 8fd16682e1 (!1969) xfree86: x86emu: add extra assert()'s
The analyzer warnings (possible NULL dereference) are probably just
false alarms. But for safety adding assert()'s, which don't cost us
anything in non-debug builds.

Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
2025-05-22 17:34:40 +02:00
Enrico Weigelt, metux IT consult 97a5423197 (!1974) os: drop self-limiting resources
It's only rarely used and can be easily achieved by generic means,
eg. via ulimit or supervisor settings.

Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
2025-05-22 17:34:39 +02:00
Enrico Weigelt, metux IT consult b5c1771945 (!1982) include: don't install propertyst.h
Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
2025-05-22 17:34:39 +02:00
Enrico Weigelt, metux IT consult e3fb6235c2 (!1982) xfree86: xf86Priv.h: dont include propertyst.h
Nothing in here needs anything from that include file, so no need for
including it.

Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
2025-05-22 17:34:39 +02:00
Enrico Weigelt, metux IT consult 1f5a65cbb6 (!1982) xfree86: xf86.h: dont include propertyst.h
Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
2025-05-22 17:34:39 +02:00
Enrico Weigelt, metux IT consult aa6614babf (!1982) xfree86: xf86Events.c: add missing include of property.h
the file calls some functions from property.h, so it needs to be included.

Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
2025-05-22 17:34:39 +02:00
Enrico Weigelt, metux IT consult 1fdd80ad6f (!1985) randr: unexport and document RRProviderAutoConfigGpuScreen()
Not used by any external drivers, so no need to keep it exported.

Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
2025-05-22 17:34:38 +02:00
Enrico Weigelt, metux IT consult 447c9557e9 (!1985) randr: unexport and document RROutputSetSubpixelOrder()
Not used by any external drivers, so no need to keep it exported.

Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
2025-05-22 17:34:38 +02:00
Enrico Weigelt, metux IT consult 0f721f8878 (!1985) randr: unexport and document RRHasScanoutPixmap()
Not used by any external drivers, so no need to keep it exported.

Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
2025-05-22 17:34:37 +02:00
Enrico Weigelt, metux IT consult 9c4c30e9dc (!1985) randr: unexport and document RRCrtcDetachScanoutPixmap()
Not used by any external drivers, so no need to keep it exported.

Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
2025-05-22 17:34:37 +02:00
Enrico Weigelt, metux IT consult ed9c55c3d7 (!1985) randr: unexport and document RRCrtcDestroy()
Not used by any external drivers, so no need to keep it exported.

Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
2025-05-22 17:34:37 +02:00
Enrico Weigelt, metux IT consult 5497972937 (!1985) randr: unexport and document RRResourcesChanged()
Not used by external drivers, so no need to keep it exported.

Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
2025-05-22 17:34:37 +02:00
Enrico Weigelt, metux IT consult 1d2ce6eefa (!1987) glamor: unexport glamor_set_glvnd_vendor()
Not used by any external drivers, so no need to keep it exported.

Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
2025-05-22 17:34:36 +02:00
Enrico Weigelt, metux IT consult f9668b2a4e (!1987) glamor: unexport glamor_set_pixmap_texture()
Not used by any external drivers, so no need to keep it exported.

Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
2025-05-22 17:34:36 +02:00
Enrico Weigelt, metux IT consult 56d69a7f88 (!1987) ephyr: workaround for name clash between Xlib and Xserver
A slight change in include order can cause Xlib to be included and defining
"GC" type, which is conflicting with Xserver's own type by same name.

As long as MR !1393 hasn't merged yet, we need to do an ugly workaround
using some preprocessor black magic.

Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
2025-05-22 17:34:35 +02:00
Enrico Weigelt, metux IT consult c7db35ddfe (!1988) xfree86: drop xf86VGAarbiter.h
It doesn't serve any practical purpose anymore and also isn't included
by any external driver, thus also no need to keep it in SDK.

Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
2025-05-22 17:34:35 +02:00
Enrico Weigelt, metux IT consult 65d066752d (!1988) xfree86: unexport xf86VGAarbiterAllowDRI()
Not used by any external drivers, so no need to keep it exported.

Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
2025-05-22 17:34:35 +02:00
Enrico Weigelt, metux IT consult cd65f1782e (!1988) xfree86: drop obsolete xf86VGAarbiterDeviceDecodes()
Not used by anybody, so no need to keep it anymore.

Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
2025-05-22 17:34:35 +02:00
Enrico Weigelt, metux IT consult 5637e3e4fc (!1979) xwayland: protect against alloc failures and NULL pointers
Protecting against NULL pointers and allocation failures.
Printing out a bug warning in those cases.

Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
2025-05-22 17:34:35 +02:00
Enrico Weigelt, metux IT consult 1ecf9747a0 (!1990) xfree86: unexport xf86RemoveInputEventDrainCallback()
Not used by any external drivers, so no need to keep it exported.

Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
2025-05-22 17:34:35 +02:00
Enrico Weigelt, metux IT consult 59c5b52fa7 (!1990) xfree86: unexport xf86AddInputEventDrainCallback()
Not used by any external drivers, so no need to keep it exported.

Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
2025-05-22 17:34:35 +02:00
Enrico Weigelt, metux IT consult 35b8f8f850 (!1990) xfree86: unexport xf86LookupInput()
Not used by any external drivers, so no need to keep it exported.

Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
2025-05-22 17:34:35 +02:00
Enrico Weigelt, metux IT consult b06e3af673 (!1990) xfree86: unexport xf86LookupInputDriver()
Not used by any external drivers, so no need to keep it exported.

Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
2025-05-22 17:34:35 +02:00
Enrico Weigelt, metux IT consult e0b0c76d24 (!1990) xfree86: unexport xf86InputEnableVTProbe()
Not used by any external drivers, so no need to keep it exported.

Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
2025-05-22 17:34:35 +02:00
Enrico Weigelt, metux IT consult f228a227c7 (!1990) xfree86: unexport xf86PostButtonEventM()
Not used by any external drivers, so no need to keep it exported.

Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
2025-05-22 17:34:35 +02:00
Enrico Weigelt, metux IT consult a361865a6d (!1990) xfree86: make xf86VIDrvMsgVerb() static
Only used inside xf86Helper.c, so can be made static.

Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
2025-05-22 17:34:35 +02:00
Enrico Weigelt, metux IT consult 75678dca4f (!1990) xfree86: make xf86PostKeyEvent() static
Only used inside xf86Xinput.c, so can be made static.

Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
2025-05-22 17:34:35 +02:00
Enrico Weigelt, metux IT consult c469091176 (!1990) xfree86: drop obsolete xf86PostKeyEventM()
It's now only a wrapper calling xf86PostKeyEvent(), and no external driver
using it anymore, so we can drop it entirely.

Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
2025-05-22 17:34:35 +02:00
Enrico Weigelt, metux IT consult 9c26407716 (!1990) xfree86: drop unused xf86DeleteInputDriver()
Not used anywhere, so no need to keep it around any longer.

Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
2025-05-22 17:34:35 +02:00
Enrico Weigelt, metux IT consult d8e0d603dd (!1990) xfree86: drop unused xf86EnableDevice()
Not used anywhere, so no need to keep it around any longer.

Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
2025-05-22 17:34:35 +02:00
Enrico Weigelt, metux IT consult 4b8ce1a231 (!1990) xfree86: drop unused xf86PostKeyEventP()
Not used anywhere, so no need to keep it around any longer.

Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
2025-05-22 17:34:35 +02:00
Enrico Weigelt, metux IT consult 160c069116 (!1990) xfree86: drop unused xf86PostProximityEventP()
Not used anywhere, so no need to keep it around any longer.

Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
2025-05-22 17:34:35 +02:00
Enrico Weigelt, metux IT consult 1b2128f5a1 (!1990) xfree86: drop unused xf86PostMotionEventP()
Not used anywhere, so no need to keep it around any longer.

Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
2025-05-22 17:34:35 +02:00
Enrico Weigelt, metux IT consult 2d9bd108e6 (!1991) xfree86: xf86Option: unexport xf86MarkOptionUsedByName()
Not used by any external drivers, so no need to keep it exported.

Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
2025-05-22 17:34:35 +02:00
Enrico Weigelt, metux IT consult c885613d3b (!1991) xfree86: xf86Option: unexport xf86MarkOptionUsed()
Not used by any external drivers, so no need to keep it exported.

Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
2025-05-22 17:34:35 +02:00