Commit Graph

18838 Commits

Author SHA1 Message Date
Enrico Weigelt, metux IT consult 1d1df61c04 (submit/bsd-defines v2) xfree86: os-support: drop unused CONSOLE_GET_* defines
These don't seem to be used anywhere, so we can drop them.

Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
2024-06-29 12:43:28 +02:00
Enrico Weigelt, metux IT consult 03afd50c88 (submit/bsd-defines v2) xfree86. os-support: drop obsolete XMODE_* defines
These only had been used by xf86-video-chips, but meanwhile this
defines them on it's own, so we can drop them from here now.

Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
2024-06-29 12:43:28 +02:00
Enrico Weigelt, metux IT consult 63f7cdf761 (submit/drop-obsolete-have-dix-config.h) drop obsolete HAVE_DIX_CONFIG_H
The symbol controls whether to include dix-config.h, and it's always set,
thus we don't need it (and dozens of ifdef's) anymore.

This commit only removes them from our own source files, where we can
guarantee that dix-config.h is present - leaving the (potentially exported)
headers untouched.

Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
2024-06-29 12:43:28 +02:00
Enrico Weigelt, metux IT consult b2a681aadc (submit/os-utils) os: utils: drop obsolete REMOVE_ENV_LD conditional
This always had been set since it's incarnation back two decades
ago, on XFree86 4.3.0.1. Probably no need to keep that around anymore.

Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
2024-06-29 12:43:28 +02:00
Enrico Weigelt, metux IT consult 0556b71589 (submit/os-utils) os: utils: drop unused USE_ISPRINT
This always had been disabled since it's incarnation XFree86 4.3.0.1,
back two decades ago, so there's likely no need for it.

Fixes: d568221710
Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
2024-06-29 12:43:28 +02:00
Enrico Weigelt, metux IT consult e2a178970b (submit/os-utils) os: utils: drop REMOVE_LONG_ENV conditional
This always had been enabled since it's incarnation back two decades ago,
so it doesn't seem to be necessary keeping that conditional any longer.

Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
2024-06-29 12:43:28 +02:00
Enrico Weigelt, metux IT consult bc33fba520 (submit/os-utils) os: utils: drop unused VENDORSUPPORT
This doesn't seem to be used anymore for two decades now,
so there's probably no need to keep it any longer.

Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
2024-06-29 12:43:28 +02:00
Enrico Weigelt, metux IT consult 9805481b38 (submit/os-utils) os: utils: drop unused NO_OUTPUT_PIPES
This hasn't been used/enabled for over 20 years, so there's probably
no reason for keeping it even longer.

Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
2024-06-29 12:43:28 +02:00
Enrico Weigelt, metux IT consult e70b5b3ee0 (submit/os-utils) os: utils: minor code formatting cleanup
Just correcting some small indention issues, no actual change.

Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
2024-06-29 12:43:28 +02:00
Enrico Weigelt, metux IT consult f5b23d72d4 (submit/cursor-api) dix: drop superfluous XineramaGetCursorScreen()
It's only used for record extension, no external callers, thus doesn't
need to be exported. Since it's just for retrieving one struct value,
it's not needed at all - we can do this directly (just like we do in
many other places)

Note: the check on noPanoramixExtensions is superfluous, since the only
call site already does it.

Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
2024-06-29 12:43:28 +02:00
Enrico Weigelt, metux IT consult 157f607398 (submit/cursor-api) dix: unexport GetSpritePosition()
This function isn't used in any external modules, thus no need to export it.

Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
2024-06-29 12:43:28 +02:00
Enrico Weigelt, metux IT consult 164716f257 (submit/cursor-api) dix: unexport PointerConfinedToScreen()
It's not used by external modules, so no need to export it.

Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
2024-06-29 12:43:28 +02:00
Enrico Weigelt, metux IT consult f6d0fac9b0 (submit/cursor-api) dix: unexport NewCurrentScreen()
It's not used by external modules/drivers, so no need to export it.

Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
2024-06-29 12:43:28 +02:00
Enrico Weigelt, metux IT consult 07bb24c89f (submit/cursor-api) dix: unexport CheckCursorConfinement()
This function isn't used by any external module, so no need to export it.

Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
2024-06-29 12:43:28 +02:00
Enrico Weigelt, metux IT consult 183258fd33 (submit/cursor-api) dix: unexport CursorMetricsFromGlyph()
This function isn't used by external modules, thus no need to export it.

Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
2024-06-29 12:43:28 +02:00
Enrico Weigelt, metux IT consult 232dc44c1a (submit/cursor-api) dix: unexport ServerBitsFromGlyph()
This function isn't used by external modules/drivers, so no need to export it.

Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
2024-06-29 12:43:28 +02:00
Enrico Weigelt, metux IT consult de074b2336 (submit/cursor-api) dix: unexport cursor allocation functions
These functions aren't used by external modules, so no need to export them.

Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
2024-06-29 12:43:28 +02:00
Enrico Weigelt, metux IT consult f1ea1122c7 (submit/cursor-api) dix: unexport cursor refcounting functions
These aren't used externally (drivers/modules), thus no need to export them.

Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
2024-06-29 12:43:28 +02:00
Enrico Weigelt, metux IT consult ca33c2e6aa (submit/cursor-api) dix: unexport rootCursor
This field is only used by DIX and XI, thus no need to export it.

Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
2024-06-29 12:43:28 +02:00
Enrico Weigelt, metux IT consult 18c2e5a383 (submit/split-input.h) include: move private definitions out of input.h
It's not good having the public server api headers clobbered with private
definitions, so cleaning them up.

Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
2024-06-29 12:43:28 +02:00
Enrico Weigelt, metux IT consult 5430bb498d (submit/xquartz-unused-code) xquartz: drop unused code
These code pieces have been commented out since their introduction back
almost two decades ago, so probably no need for them anymore.

Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
2024-06-29 12:43:28 +02:00
Enrico Weigelt, metux IT consult f50adbbc71 (submit/property.h) dix: unexport DeleteAllWindowProperties()
Not used by any drivers, so no need to keep it exported.

Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
2024-06-29 12:43:28 +02:00
Enrico Weigelt, metux IT consult ff098b5e63 (submit/property.h) dix: unexport dixLookupProperty()
It's not used by any drivers, so no need to keep it exported.

Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
2024-06-29 12:43:28 +02:00
Enrico Weigelt, metux IT consult ddf1ca6b36 (submit/property.h) include: split out non-exported stuff from property.h
Reduce cluttering public interface with non-exported stuff, moving those
things into a separate internal header.

Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
2024-06-29 12:43:28 +02:00
Enrico Weigelt, metux IT consult 1b3991cfd6 (submit/cleanup-alloc-funcs) treewide: replace xnfstrdup() calls by XNFstrdup()
This has been nothing but an alias for two decades now (somewhere in R6.6),
so there doesn't seem to be any practical need for this indirection.

The macro still needs to remain, as long as (external) drivers still using it.

Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
2024-06-29 12:43:28 +02:00
Enrico Weigelt, metux IT consult 5d0ce67ac3 (submit/cleanup-alloc-funcs) treewide: replace xnfcalloc() calls by XNFcallocarray()
This has been nothing but an alias for two decades now (somewhere in R6.6),
so there doesn't seem to be any practical need for this indirection.

The macro still needs to remain, as long as (external) drivers still using it.

Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
2024-06-29 12:43:27 +02:00
Enrico Weigelt, metux IT consult f550afcd58 (submit/cleanup-alloc-funcs) treewide: replace strdup() calls to Xstrdup()
This has been nothing but an alias for two decades now (somewhere in R6.6),
so there doesn't seem to be any practical need for this indirection.

The macro still needs to remain, as long as (external) drivers still using it.

Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
2024-06-29 12:43:27 +02:00
Enrico Weigelt, metux IT consult 35a6920340 (submit/cleanup-alloc-funcs) treewide: replace xnfrealloc() calls to XNFrealloc()
This has been nothing but an alias for two decades now (somewhere in R6.6),
so there doesn't seem to be any practical need for this indirection.

The macro still needs to remain, as long as (external) drivers still using it.

Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
2024-06-29 12:43:27 +02:00
Enrico Weigelt, metux IT consult 48573418d3 (submit/cleanup-alloc-funcs) treewide: replace xnfreallocarray macro call by XNFreallocarray()
The xnfreallocarray was added along (and just as an alias to) XNFreallocarray
back a decade ago. It's just used in a few places and it's only saves us from
passing the first parameter (NULL), so the actual benefit isn't really huge.

No (known) driver is using it, so the macro can be dropped entirely.

Fixes: ae75d50395
Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
2024-06-29 12:43:27 +02:00
Enrico Weigelt, metux IT consult 68338c5f3f (submit/cleanup-alloc-funcs) xfree86: replace xnfreallocarray() calls by XNFreallocarray
The xnfallocarray was added along (and just as an alias to) XNFreallocarray
back a decade ago. It's just used in a few places and it's only saves us from
passing the first parameter (NULL), so the actual benefit isn't really huge.

No (known) driver is using it, so the macro can be dropped entirely.

Fixes: ae75d50395
Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
2024-06-29 12:43:27 +02:00
Enrico Weigelt, metux IT consult de0e2e32e3 (submit/cleanup-alloc-funcs) treewide: replace xnfalloc() calls to XNFalloc()
This has been nothing but an alias for two decades now (somewhere in R6.6),
so there doesn't seem to be any practical need for this indirection.

The macro still needs to remain, as long as (external) drivers still using it.

Fixes: ded6147bfb
Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
2024-06-29 12:43:27 +02:00
Enrico Weigelt, metux IT consult 8f9b5d1469 (submit/split-client.h) os: unexport client id retrieval functions
These aren't used by any (known) external modules, thus no need to export them.

Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
2024-06-29 12:43:27 +02:00
Enrico Weigelt, metux IT consult a5b0ffeac1 (submit/split-client.h) os: unexport DetermineClientPid() and DetermineClientCmd()
These aren't used by any drivers/modules, so no need to export them.

Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
2024-06-29 12:43:27 +02:00
Enrico Weigelt, metux IT consult 7dde52144c (submit/split-client.h) os: split off internal definitions from client.h
The client.h file is part of the public module API, but it also contains
definitions that aren't useful for being used in modules. Splitting them
out into their own client_priv.h file, which isn't part of the API.

Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
2024-06-29 12:43:27 +02:00
Enrico Weigelt, metux IT consult 52f11ad5c2 (submit/fix-SelectSelectionInput) dix: create empty selection objects as-needed in dixLookupSelection()
For now, new selection objects are only created in ProcSetSelectionOwner()
when dixLookupSelection() can't find the requested one (returns BadMatch).

When somebody's trying to listen on a not-yet existing selection, via
XFixesSelectSelectionInput() -- XFIXES:SelectSelectionInput message -- he's
also getting BadMatch. This isn't neccessarily completely wrong, the spec
doesn't really tell anything about those situations (it doens't tell anything
about selection's lifetimes, just their ownerships). But there are real-
world clients not expecting an error here and crashing - the problem popped
up just recently, due to a necessary security fix (remote memory corruption
plus XACE missing to catch SelectSelectionInput) that alread went unnoticed
for far too long (*1).

So, it's better being polite and interpret the spec in the way that any
potential selection exists as soon as it's used by someone. (in fact, they
never get deleted anyways, just cleared).

XACE consumers get properly notified by the new Selection object creation
(eg. SElinux is attaching it's private data to it). And all callers already
prepared to get a cleared Selection object, because that's always been a
perfectly normal situation - Selection objects never get removed again,
just cleared.

*1) 601fd0fd84

X-Fixes: 601fd0fd84
Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
2024-06-29 12:43:27 +02:00
Enrico Weigelt, metux IT consult 8d525b6ade (submit/fix-ftbs-netbsd) fix FTBS on NetBSD
../hw/xfree86/os-support/bsd/bsd_init.c: In function ‘xf86CloseConsole’:
../hw/xfree86/os-support/xf86_os_support.h:22:6: error: ‘dispatchException’ undeclared (first use in this function)
   22 |  if (dispatchException & DE_TERMINATE) { \
      |      ^~~~~~~~~~~~~~~~~
../hw/xfree86/os-support/bsd/bsd_init.c:634:13: note: in expansion of macro ‘xf86FatalError’
  634 |             xf86FatalError("xf86CloseConsole: KDDISABIO failed (%s)",
      |             ^~~~~~~~~~~~~~
../hw/xfree86/os-support/xf86_os_support.h:22:6: note: each undeclared identifier is reported only once for each function it appears in
   22 |  if (dispatchException & DE_TERMINATE) { \
      |      ^~~~~~~~~~~~~~~~~
../hw/xfree86/os-support/bsd/bsd_init.c:634:13: note: in expansion of macro ‘xf86FatalError’
  634 |             xf86FatalError("xf86CloseConsole: KDDISABIO failed (%s)",
      |             ^~~~~~~~~~~~~~
../hw/xfree86/os-support/xf86_os_support.h:22:26: error: ‘DE_TERMINATE’ undeclared (first use in this function); did you mean ‘ACTION_TERMINATE’?
   22 |  if (dispatchException & DE_TERMINATE) { \
      |                          ^~~~~~~~~~~~
../hw/xfree86/os-support/bsd/bsd_init.c:634:13: note: in expansion of macro ‘xf86FatalError’
  634 |             xf86FatalError("xf86CloseConsole: KDDISABIO failed (%s)",
      |             ^~~~~~~~~~~~~~

Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
2024-06-29 12:43:27 +02:00
Enrico Weigelt, metux IT consult 56b2f2fefb (submit/meson-sdk.pc) meson.build: fix missing dependencies in xorg-server.pc
xorg-server.pc missed a few dependencies, so consumers might not
get them and break build.

Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
2024-06-29 12:43:27 +02:00
Enrico Weigelt, metux IT consult 6380bb55f2 (submit/ci-freebsd) ci: add FreeBSD build
Build the Xserver in FreeBSD VM.

Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
2024-06-29 12:43:27 +02:00
Enrico Weigelt, metux IT consult 180a385bb6 (submit/fix-ftbs-solaris) os: fix link failure on Illumos
On SunOS, the BSD socket API as well as hostname lookups isn't
implemented in libc, but separate libraries. We need to link them
explicitly.

Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
2024-06-29 12:43:27 +02:00
Enrico Weigelt, metux IT consult 439c2060c4 (submit/fix-ftbs-solaris) os: fix FTBS on Illumos due missing symbols
Several feature defines need to be set before including system headers,
otherwise build breaks:

> /usr/include/X11/Xtrans/Xtranssock.c: In function '_XSERVTransSocketRead':
> /usr/include/X11/Xtrans/Xtranssock.c:2161:14: error: 'struct msghdr' has no member named 'msg_control'
>  2161 |             .msg_control = cmsgbuf.buf,
>       |              ^~~~~~~~~~~
> /usr/include/X11/Xtrans/Xtranssock.c:2162:14: error: 'struct msghdr' has no member named 'msg_controllen'
>  2162 |             .msg_controllen = CMSG_LEN(MAX_FDS * sizeof(int))
>       |              ^~~~~~~~~~~~~~
>
> ../os/access.c:339:14: error: implicit declaration of function 'asprintf'; did you mean 'Xasprintf'? [-Werror=implicit-function-declaration]
>   339 |     length = asprintf(addr, "%s%c%s", type, delimiter, value);
>       |              ^~~~~~~~
>       |              Xasprintf

Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
2024-06-29 12:43:27 +02:00
Enrico Weigelt, metux IT consult 93d2f04e27 (submit/selection.h) dix: rename selection.h to selection_priv.h
rename it in order to reflects it's private nature (not exported).

Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
2024-06-29 12:43:27 +02:00
Enrico Weigelt, metux IT consult d8b0730604 (submit/selection.h) dix: unexport selection functions
No driver needs them, so no reason to keep them exported.

Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
2024-06-29 12:43:27 +02:00
Enrico Weigelt, metux IT consult b79e555779 (submit/selection.h) dix: don't install selection.h anymore
This file isn't included by any driver - not even indirectly, and hard
to imagine any driver ever needs it, so no need to keep it installed.

Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
2024-06-29 12:43:27 +02:00
Enrico Weigelt, metux IT consult 9f80d0317a (submit/meson-no-udev) meson.build: disable udev on platforms not having it
Several more platforms lacking udev haven't been catched yet.

Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
2024-06-29 12:43:27 +02:00
Enrico Weigelt, metux IT consult 72e80c1203 (submit/xfuncproto) fix mising includes of <X11/Xfuncproto.h>
Several places using _X_ATTRIBUTE_PRINTF macro from X11/Xfuncproto.h
but missing to include it, so it depends on other headers whether it's
included by mere accident, which quickly causes trouble if include order
changes. Cleaning that up by adding explicit include statements.

Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
2024-06-29 12:43:27 +02:00
Enrico Weigelt, metux IT consult 847f5c4931 (submit/colormap.h) dix: move colormap flags into colormap_priv.h and rename them
These aren't used by any drivers/modules, so no need to keep them exported.
As already touching them, give them a proper name prefix for clarity.

Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
2024-06-29 12:43:27 +02:00
Enrico Weigelt, metux IT consult 8dd6a9f0c4 (submit/colormap.h) dix: move internal defines into colormap.c
These are really internal to colormap.c, so move them there.

Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
2024-06-29 12:43:27 +02:00
Enrico Weigelt, metux IT consult 9c36e20dc7 (submit/colormap.h) include: colormap.h: drop unused defines
These aren't used anywhere, so we can drop them.

Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
2024-06-29 12:43:27 +02:00
Enrico Weigelt, metux IT consult bcd5ce0e34 (submit/colormap.h) include: colormap.h: drop unused typedef colorResourcePtr
This typedef isn't used anywhere, so can be dropped.

Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
2024-06-29 12:43:27 +02:00
Enrico Weigelt, metux IT consult 10ad9d36dc (submit/colormap.h) dix: unexport IsMapInstalled()
Not used by any driver/module, so no need to keep it exported.

Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
2024-06-29 12:43:27 +02:00