Commit Graph

22241 Commits

Author SHA1 Message Date
Enrico Weigelt, metux IT consult
3fece7d7a6 .gitub: add NetBSD 10.1 build
Adding NetBSD 10.1 build to our CI pipelines.

Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
2025-12-15 12:15:12 +01:00
Enrico Weigelt, metux IT consult
a897fecfcf .github: scripts: git-smart-checkout.sh
pull submodules if existing

Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
2025-12-15 10:25:25 +01:00
Enrico Weigelt, metux IT consult
857e397c15 os: Xtranssock: fix (signed) char array subscript
>  In file included from /usr/include/ctype.h:100,
>                   from ../include/misc.h:154,
>                   from ../include/os.h:51,
>                   from ../os/Xtransint.h:256,
>                   from ../os/transport.c:57:
> ../os/Xtranssock.c: In function ‘is_numeric’:
> ../os/Xtranssock.c:217:19: error: array subscript has type ‘char’ [-Werror=char-subscripts]
>    217 |  if (!isdigit (str[i]))
>        |                   ^

Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
2025-12-14 11:27:49 +01:00
Enrico Weigelt, metux IT consult
aafd986528 glx: fix (signed) char array subscript
Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
2025-12-14 11:26:15 +01:00
Enrico Weigelt, metux IT consult
c95748921a xfree86: drop obsolete xf86SetTVOut() and xf86SetRGBOut()
These are only defined on NetBSD and not used anywhere, and not
functional at all (just killing the Xserver). No need to carry
them around any longer.

Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
2025-12-14 11:24:39 +01:00
Enrico Weigelt, metux IT consult
9a54f4b908 os: enable UNIX sockets on Mingw32
Mingw32 also supports unix sockets, so no need to disable them here.

Since it's now always enabled, follow-up commits can now drop all the
extra #ifdef's on UNIXCONN and so reduce complexity.

Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
2025-12-14 11:03:00 +01:00
Enrico Weigelt, metux IT consult
16d4d44551 os: drop symbol TCPCONN
It's been always enabled for aeons, so no practical need to
disable it.

Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
2025-12-13 15:59:07 +01:00
Enrico Weigelt, metux IT consult
7ba4f6a2b6 os: xtrans: define trans_mkdir() when UNIXCONN is enabled
trans_mkdir() is needed for unix sockets, so the correct switch is
UNIXCONN, instead of WIN32.

Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
2025-12-13 15:46:11 +01:00
Oleh Nykyforchyn
ee73f84c65 xfree86/common: make screenConfig take autoAddGPU into account
This patch puts configServerFlags() before configScreen()'s and
makes the latter to use xf86Info.autoAddGPU value.

Fixes: https://github.com/X11Libre/xserver/issues/1658
Signed-off-by: Oleh Nykyforchyn <oleh.nyk@gmail.com>
2025-12-13 15:27:06 +01:00
Enrico Weigelt, metux IT consult
0292d41748 .github: enable -Werror on mingw32
Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
2025-12-12 19:41:55 +01:00
Enrico Weigelt, metux IT consult
43c5b45f4a mingw32: fix winsock2.h include
winsock2.h needs to be included before windows.h

> /usr/share/mingw-w64/include/winsock2.h:15:2: error: #warning Please include winsock2.h before windows.h [-Werror=cpp]
>    15 | #warning Please include winsock2.h before windows.h
>       |  ^~~~~~~

Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
2025-12-12 19:41:55 +01:00
Enrico Weigelt, metux IT consult
3c2bf225ca xnest: silence type mismatch warning on ming32
KeySym and xcb_keysym_t should both be 32bit, but for the compiler
they're long vs int, so it's spitting out a warning here. That's
coming from xorgproto's weird way of defining those types.

Add static type size assert and hard typecast to silence it.

Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
2025-12-12 19:41:55 +01:00
Enrico Weigelt, metux IT consult
a712daada2 exa: silence calloc() warning on mingw32
Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
2025-12-12 19:41:55 +01:00
Enrico Weigelt, metux IT consult
1e66e2e02d meson.build: disable suggest-attribute=format warning on mingw32
Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
2025-12-12 19:41:55 +01:00
Enrico Weigelt, metux IT consult
8e872d69be .github: temporary disable job purge job
It's failing too often due rate limits etc.

Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
2025-12-12 16:31:28 +01:00
Enrico Weigelt, metux IT consult
005993d888 .github: enable -Werror on FreeBSD
Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
2025-12-12 15:27:14 +01:00
Enrico Weigelt, metux IT consult
777baa343b .github: enable -Werror on Dragonfly BSD
Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
2025-12-12 14:45:41 +01:00
Alan Coopersmith
1e5c56eb9a os: Use EVP APIs when building with OpenSSL 3
Avoids deprecation warnings for old SHA1 APIs in OpenSSL 3.0 and later

Closes: https://gitlab.freedesktop.org/xorg/xserver/-/issues/1845
Signed-off-by: Alan Coopersmith <alan.coopersmith@oracle.com>
Part-of: <https://gitlab.freedesktop.org/xorg/xserver/-/merge_requests/2066>
2025-12-12 14:28:18 +01:00
Alan Coopersmith
2fe12aa2b0 test: add unit tests for x_sha1_* functions in os/xsha1.
Simple confirmation of known values, not exhaustive testing.

Tested with SHA-1 implementations from:
 - libcrypto (OpenSSL 3)
 - libgcrypt
 - libnettle
 - Solaris libmd

Signed-off-by: Alan Coopersmith <alan.coopersmith@oracle.com>
Part-of: <https://gitlab.freedesktop.org/xorg/xserver/-/merge_requests/2066>
2025-12-12 14:28:18 +01:00
Enrico Weigelt, metux IT consult
4609d2e5e8 dix: Dispatch() separate variable for read result
Mixing result variables for separate things is making the code hard
to understand, so add a new local variable for temporarily storing
the result of ReadRequestFromClient().

Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
2025-12-12 13:49:15 +01:00
Enrico Weigelt, metux IT consult
819547669b meson.build: enable -Wchar-subscripts
Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
2025-12-12 13:48:15 +01:00
Enrico Weigelt, metux IT consult
3d742db3a9 os: xtrans: declare trans_mkdir() static function only if needed
Win32/mingw32 doesn't need it, so compiler warns on it.

Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
2025-12-12 13:47:24 +01:00
Enrico Weigelt, metux IT consult
7389686d6d os: xtrans: drop status pointer from *Accept() functions
Nobody's ever looking at this value, so no need to keep it.

Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
2025-12-12 13:47:15 +01:00
Enrico Weigelt, metux IT consult
c9d9da7cf0 os: xtrans: drop obsolete LOCALCONN code paths
the symbol LOCALCONN is never defined, so these code pathes are dead.

Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
2025-12-12 13:26:20 +01:00
Enrico Weigelt, metux IT consult
faa1b1e27a os: xtransutil: drop unused FAIL_HARD code pathes
The symbol is never defined anywhere, so these dead code pathes
can be removed entirely.

Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
2025-12-12 13:18:50 +01:00
Enrico Weigelt, metux IT consult
f6dba72943 meson.build: enable -Wshift-negative-value
Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
2025-12-11 20:49:43 +01:00
Enrico Weigelt, metux IT consult
27262cb9f4 .github: update tidy-up branch list
Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
2025-12-11 20:47:16 +01:00
Enrico Weigelt, metux IT consult
05893d65c9 xquartz: declare variables when needed
Declare some more variables when actually needed / assigned first time.

Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
2025-12-11 20:38:44 +01:00
Enrico Weigelt, metux IT consult
21fbe9394b test: fix tautological constant out of range warning
>  ../test/misc.c:172:5: warning: result of comparison of constant 4611686018427387903 with expression of type 'CARD32' (aka 'unsigned int') is always true [-Wtautological-constant-out-of-range-compare]
>     172 |     REQUEST_FIXED_SIZE(req, SIZE_MAX);
>         |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
>   ../include/dix.h:88:25: note: expanded from macro 'REQUEST_FIXED_SIZE'
>      88 |             (((n) >> 2) >= client->req_len) ||                         \
>         |              ~~~~~~~~~~ ^  ~~~~~~~~~~~~~~~

We don't really need SIZE_MAX (platform specific) for this job, just a big
enough number.

Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
2025-12-11 20:36:09 +01:00
Enrico Weigelt, metux IT consult
01768051cf xwin: drop wrapping on ScreenRec->CloseScreen()
Instead of complicated wrapping, just call fbCloseScreen() directly.

Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
2025-12-11 20:33:13 +01:00
Enrico Weigelt, metux IT consult
a0c67bd720 xquartz: drop obsolete _mesa_free() and _mesa_malloc()
These macros are always defined to free() and malloc(), so we don't
really need them, instead can use those functions directly.

Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
2025-12-11 20:30:47 +01:00
Enrico Weigelt, metux IT consult
eb082584b6 os: utils: ‘VerifyDisplayName: fix array subscript signedness
../os/utils.c: In function ‘VerifyDisplayName’:
../os/utils.c:624:23: warning: array subscript has type ‘char’ [-Wchar-subscripts]
  624 |         if (!isdigit(d[i])) {
      |                       ^

Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
2025-12-11 20:15:02 +01:00
Enrico Weigelt, metux IT consult
d7a3c8901e test: fix signess warning
> ../test/xi2/protocol-xiwarppointer.c:169:24: warning: shifting a negative signed value is undefined [-Wshift-negative-value]
>     169 | request.dst_x = -1 << 16;
>         | ~~ ^
> ../test/xi2/protocol-xiwarppointer.c:182:24: warning: shifting a negative signed value is undefined [-Wshift-negative-value]
>     182 | request.dst_y = -1 << 16;
>         | ~~ ^

Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
2025-12-11 20:14:39 +01:00
Enrico Weigelt, metux IT consult
fce17e9308 .github: *BSD: silence warning on duplicate typedef
>  In file included from ../glx/glxdricommon.c:35:
>  /usr/local/include/GL/internal/dri_interface.h:445:26: warning: redefinition of typedef 'GLsync' is a C11 feature [-Wtypedef-redefinition]
>    445 | typedef struct __GLsync *GLsync;
>        |                          ^
>  /usr/local/include/GL/glext.h:1367:26: note: previous definition is here
>   1367 | typedef struct __GLsync *GLsync;
>        |                          ^

Since it's coming from MESA, the only thing we can do here is
suppressing this warning explicitly.

Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
2025-12-11 16:31:36 +01:00
Enrico Weigelt, metux IT consult
6d41b43829 .github: switch dependencies to our new mirrors
Our new automatic mirrors have a special prefix, so we need to
fixup the URLs.

Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
2025-12-11 14:47:20 +01:00
Enrico Weigelt, metux IT consult
0a18956047 kdrive: ephyr: add noreturn attribute to ephyrProcessErrorEvent()
>  ../hw/kdrive/ephyr/ephyr.c:977:1: warning: function 'ephyrProcessErrorEvent' could be declared with attribute 'noreturn' [-Wmissing-noreturn]
>    977 | {
>        | ^

Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
2025-12-11 14:34:16 +01:00
Enrico Weigelt, metux IT consult
f590b320cc xfree86: silence warnings on SYSCALL() macro
> ../hw/xfree86/os-support/shared/posix_tty.c:366:38: warning: while loop has empty body [-Wempty-body]
>    366 |     SYSCALL(r = read(fd, buf, count));
>        |                                      ^

Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
2025-12-11 14:33:53 +01:00
Enrico Weigelt, metux IT consult
7b15c8a9b4 xext: xvdisp: fix printf format
> ../Xext/xvdisp.c: In function ‘ProcXvListImageFormats’:
> ../Xext/xvdisp.c:1017:81: warning: format ‘%ld’ expects argument of type ‘long int’, but argument 3 has type ‘size_t’ {aka ‘unsigned int’} [-Wformat=]
>  1017 |         LogMessage(X_WARNING, "ProcXvListImageFormats() payload_len mismatch: %ld but shoud be %d\n",
>       |                                                                               ~~^
>       |                                                                                 |
>       |                                                                                 long int
>       |                                                                               %d
>  1018 |                    rpcbuf.wpos, (pPort->pAdaptor->nImages*sz_xvImageFormatInfo));
>       |                    ~~~~~~~~~~~
>       |                          |
>       |                          size_t {aka unsigned int}

Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
2025-12-11 10:28:49 +01:00
Enrico Weigelt, metux IT consult
ceeabba033 .github: nightly purge of old pipelines from certain branches
Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
2025-12-10 20:06:00 +01:00
Enrico Weigelt, metux IT consult
980385e2ec xext: namespace: fix printf format string
../Xext/namespace/hook-init-rootwindow.c: In function ‘hookInitRootWindow’:
../Xext/namespace/hook-init-rootwindow.c:38:21: warning: format ‘%x’ expects argument of type ‘unsigned int’, but argument 3 has type ‘XID’ {aka ‘long unsigned int’} [-Wformat=]
   38 |             XNS_LOG("<%s> actual root 0x%0" PRIx32 "\n", walk->name, walk->rootWindow->drawable.id);
      |                     ^~~~~~~~~~~~~~~~~~~~~~~                          ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
      |                                                                                                |
      |                                                                                                XID {aka long unsigned int}
../Xext/namespace/namespace.h:71:50: note: in definition of macro ‘XNS_LOG’
   71 | #define XNS_LOG(...) do { printf("XNS "); printf(__VA_ARGS__); } while (0)
      |                                                  ^~~~~~~~~~~
../Xext/namespace/hook-init-rootwindow.c:38:43: note: format string is defined here
   38 |             XNS_LOG("<%s> actual root 0x%0" PRIx32 "\n", walk->name, walk->rootWindow->drawable.id);
      |                                         ~~^
      |                                           |
      |                                           unsigned int
      |                                         %0lx
../Xext/namespace/hook-init-rootwindow.c:70:17: warning: format ‘%x’ expects argument of type ‘unsigned int’, but argument 3 has type ‘XID’ {aka ‘long unsigned int’} [-Wformat=]
   70 |         XNS_LOG("<%s> virtual root 0x%0" PRIx32 "\n", walk->name, walk->rootWindow->drawable.id);
      |                 ^~~~~~~~~~~~~~~~~~~~~~~~                          ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
      |                                                                                             |
      |                                                                                             XID {aka long unsigned int}
../Xext/namespace/namespace.h:71:50: note: in definition of macro ‘XNS_LOG’
   71 | #define XNS_LOG(...) do { printf("XNS "); printf(__VA_ARGS__); } while (0)
      |                                                  ^~~~~~~~~~~
../Xext/namespace/hook-init-rootwindow.c:70:40: note: format string is defined here
   70 |         XNS_LOG("<%s> virtual root 0x%0" PRIx32 "\n", walk->name, walk->rootWindow->drawable.id);
      |                                      ~~^
      |                                        |
      |                                        unsigned int
      |                                      %0lx

Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
2025-12-10 19:58:21 +01:00
Enrico Weigelt, metux IT consult
4895dec748 .github: use our own mirrors instead of freedesktop.org
Since gitlab.freedesktop.org isn't very reliable, better use our
own mirrors instead.

Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
2025-12-10 19:55:35 +01:00
Enrico Weigelt, metux IT consult
bc5cb4e8f3 .github: move CI scripts from .gitlab-ci/ to .github/scripts
We're not using gitlab anymore (and the CI config there is totally
unmaintained), so better move the scripts to the right place.

Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
2025-12-10 19:15:35 +01:00
Enrico Weigelt, metux IT consult
10b4f53c97 include: dix.h: declare clients[] array prototype without size
Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
2025-12-10 16:24:11 +01:00
Enrico Weigelt, metux IT consult
0b2a21722b .github: macos: split off own version of install-prereq.sh
Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
2025-12-10 16:23:53 +01:00
Enrico Weigelt, metux IT consult
d8afe67983 .github: fix artifact cache key on mingw32
We're not calling install-prereq.sh, so no need to have it's
hash in the cache key.

Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
2025-12-10 15:46:32 +01:00
Enrico Weigelt, metux IT consult
f4b90697ce xfree86: fix include of xf86VGAarbiter_priv.h
Needs to be included also in non-pciaccess case, so the dummy
functions are declared.

Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
2025-12-10 15:24:08 +01:00
Enrico Weigelt, metux IT consult
01777ec8dd xfree86: fix xf86VGAarbiterWrapFunctions() definition in non-libpciaccess case
Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
2025-12-10 15:24:08 +01:00
Enrico Weigelt, metux IT consult
df0f1cc687 os: Xtranssock: fix printf format warning
> ../os/Xtranssock.c: In function '_XSERVTransSocketReopen':
> ../os/Xtranssock.c:449:49: warning: format '%d' expects argument of type 'int', but argument 3 has type 'size_t' {aka 'long unsigned int'} [-Wformat=]
>         prmsg (1, "SocketReopen: invalid portlen %d\n", portlen);
>                                                  ~^     ~~~~~~~
>                                                  %ld

Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
2025-12-10 15:11:27 +01:00
Enrico Weigelt, metux IT consult
19f015d8e6 os.h: fix _X_ATTRIBUTE_VPRINTF() macro on MacOS and FreeBSD
their compiler doesn't seem to support gnu_printf attribute.

Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
2025-12-10 15:02:00 +01:00
Oleh Nykyforchyn
ae689438dc xfree86/modesetting: prevent modesetting driver from
grabbing claimed slots

This patch makes modesetting driver use the return value of the extended
xf86ClaimFbSlot to prevent crashes.

Fixes: https://github.com/X11Libre/xserver/issues/1505
Signed-off-by: Oleh Nykyforchyn <oleh.nyk@gmail.com>
2025-12-10 15:00:31 +01:00