Commit graph xserver/os
Author SHA1 Message Date
Enrico Weigelt, metux IT consult
cedcb83034 os: osdep.h: fix FTBS on musl
https://github.com/X11Libre/xserver/issues/2890

musl doesn't indirectly include errno.h as much as other libc's do.
In general it's a good idea to always explicitly include what's needed,
instead of relying on indirect includes.

Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
2026-06-08 11:14:56 +02:00
Peter Hutterer
c7a91b33df os/access: fix off-by-one in hostname character validation range
In siHostnameCheckAddr(), the digit validation range was 0x30-0x3A, but
0x3A is the colon character (':'). The ASCII range for digits 0-9 is
0x30-0x39.

Colons in hostnames violate RFC 2396 section 3.2.2 and we're not parsing
the host:port notation here.

Assisted-by: Claude:claude-claude-opus-4-6
Part-of: <https://gitlab.freedesktop.org/xorg/xserver/-/merge_requests/2200>
Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
2026-06-05 14:55:38 +02:00
Peter Hutterer
a9575f4b7a os/log: handle NULL string argument in vpnprintf
Since this function is called from signal handlers (e.g. OsSigHandler
processing SIGSEGV/SIGBUS), a NULL %s argument triggers a recursive fault.

Assisted-by: Claude:claude-claude-opus-4-6
Part-of: <https://gitlab.freedesktop.org/xorg/xserver/-/merge_requests/2200>

----------------------------------------------------------------------------

Modified to fit Xlibre changes.
See: https://github.com/X11Libre/xserver/pull/2794

Signed-off-by: stefan11111 <stefan11111github@gmail.com>
2026-06-05 11:11:41 +02:00
Mikhail Dmitrichenko
1d863e7e58 os: check ospoll allocation failures
ospoll_create() initializes backend-specific state immediately after
allocating the ospoll structure. Check the allocation result for each
backend before dereferencing it and return NULL on failure.

Signed-off-by: Mikhail Dmitrichenko <m.dmitrichenko222@gmail.com>
Part-of: <https://gitlab.freedesktop.org/xorg/xserver/-/merge_requests/2217>
2026-06-03 19:10:01 +02:00
John Studnicka
b477959552 lint: Add targeted NOLINT on existing ASM
Some checks failed
Build X servers / drivers-build-ubuntu (video-nouveau:25.0.0) (push) Has been cancelled
Build X servers / drivers-build-ubuntu (video-nv:25.0.0) (push) Has been cancelled
Build X servers / drivers-build-ubuntu (video-omap:25.0.0) (push) Has been cancelled
Build X servers / drivers-build-ubuntu (video-qxl:25.0.0) (push) Has been cancelled
Build X servers / drivers-build-ubuntu (video-r128:25.0.0) (push) Has been cancelled
Build X servers / drivers-build-ubuntu (video-rendition:25.0.0) (push) Has been cancelled
Build X servers / drivers-build-ubuntu (video-s3virge:25.0.0) (push) Has been cancelled
Build X servers / drivers-build-ubuntu (video-savage:25.0.0) (push) Has been cancelled
Build X servers / drivers-build-ubuntu (video-siliconmotion:25.0.0) (push) Has been cancelled
Build X servers / drivers-build-ubuntu (video-sis:25.0.0) (push) Has been cancelled
Build X servers / drivers-build-ubuntu (video-sisusb:25.0.0) (push) Has been cancelled
Build X servers / drivers-build-ubuntu (video-suncg14:25.0.0) (push) Has been cancelled
Build X servers / drivers-build-ubuntu (video-suncg3:25.0.0) (push) Has been cancelled
Build X servers / drivers-build-ubuntu (video-suncg6:25.0.0) (push) Has been cancelled
Build X servers / drivers-build-ubuntu (video-sunffb:25.0.0) (push) Has been cancelled
Build X servers / drivers-build-ubuntu (video-sunleo:25.0.0) (push) Has been cancelled
Build X servers / drivers-build-ubuntu (video-suntcx:25.0.0) (push) Has been cancelled
Build X servers / drivers-build-ubuntu (video-tdfx:25.0.0) (push) Has been cancelled
Build X servers / drivers-build-ubuntu (video-trident:25.0.0) (push) Has been cancelled
Build X servers / drivers-build-ubuntu (video-v4l:25.0.1) (push) Has been cancelled
Build X servers / drivers-build-ubuntu (video-vbox:25.0.0) (push) Has been cancelled
Build X servers / drivers-build-ubuntu (video-vesa:25.0.0) (push) Has been cancelled
Build X servers / drivers-build-ubuntu (video-vmware:25.0.0) (push) Has been cancelled
Build X servers / drivers-build-ubuntu (video-voodoo:25.0.0) (push) Has been cancelled
Build X servers / drivers-build-ubuntu (video-xgi:25.0.0) (push) Has been cancelled
Build X servers / xserver-build-mingw32-ubuntu (push) Has been cancelled
Build X servers / xserver-build-freebsd (push) Has been cancelled
Build X servers / xserver-build-dragonflybsd (push) Has been cancelled
Build X servers / xserver-build-netbsd (push) Has been cancelled
Build X servers / Release pushed tag (push) Has been cancelled
Signed-off-by: John Studnicka <contact@zentec.dev>
2026-05-26 12:15:17 +02:00
Aggelos Tselios
1e0c1fa022 os: client: rename get_argmax_fptr to get_argmax_from_kern
Some checks failed
Build X servers / drivers-build-ubuntu (video-nouveau:25.0.0) (push) Has been cancelled
Build X servers / drivers-build-ubuntu (video-nv:25.0.0) (push) Has been cancelled
Build X servers / drivers-build-ubuntu (video-omap:25.0.0) (push) Has been cancelled
Build X servers / drivers-build-ubuntu (video-qxl:25.0.0) (push) Has been cancelled
Build X servers / drivers-build-ubuntu (video-r128:25.0.0) (push) Has been cancelled
Build X servers / drivers-build-ubuntu (video-rendition:25.0.0) (push) Has been cancelled
Build X servers / drivers-build-ubuntu (video-s3virge:25.0.0) (push) Has been cancelled
Build X servers / drivers-build-ubuntu (video-savage:25.0.0) (push) Has been cancelled
Build X servers / drivers-build-ubuntu (video-siliconmotion:25.0.0) (push) Has been cancelled
Build X servers / drivers-build-ubuntu (video-sis:25.0.0) (push) Has been cancelled
Build X servers / drivers-build-ubuntu (video-sisusb:25.0.0) (push) Has been cancelled
Build X servers / drivers-build-ubuntu (video-suncg14:25.0.0) (push) Has been cancelled
Build X servers / drivers-build-ubuntu (video-suncg3:25.0.0) (push) Has been cancelled
Build X servers / drivers-build-ubuntu (video-suncg6:25.0.0) (push) Has been cancelled
Build X servers / drivers-build-ubuntu (video-sunffb:25.0.0) (push) Has been cancelled
Build X servers / drivers-build-ubuntu (video-sunleo:25.0.0) (push) Has been cancelled
Build X servers / drivers-build-ubuntu (video-suntcx:25.0.0) (push) Has been cancelled
Build X servers / drivers-build-ubuntu (video-tdfx:25.0.0) (push) Has been cancelled
Build X servers / drivers-build-ubuntu (video-trident:25.0.0) (push) Has been cancelled
Build X servers / drivers-build-ubuntu (video-v4l:25.0.1) (push) Has been cancelled
Build X servers / drivers-build-ubuntu (video-vbox:25.0.0) (push) Has been cancelled
Build X servers / drivers-build-ubuntu (video-vesa:25.0.0) (push) Has been cancelled
Build X servers / drivers-build-ubuntu (video-vmware:25.0.0) (push) Has been cancelled
Build X servers / drivers-build-ubuntu (video-voodoo:25.0.0) (push) Has been cancelled
Build X servers / drivers-build-ubuntu (video-xgi:25.0.0) (push) Has been cancelled
Build X servers / xserver-build-mingw32-ubuntu (push) Has been cancelled
Build X servers / xserver-build-freebsd (push) Has been cancelled
Build X servers / xserver-build-dragonflybsd (push) Has been cancelled
Build X servers / xserver-build-netbsd (push) Has been cancelled
Build X servers / Release pushed tag (push) Has been cancelled
the _fptr suffix is used in other parts when they replaced apple blocks
functionality. However in this case a more descriptive name is better
(since this function can technically be reused in other places in the
future)

Signed-off-by: Aggelos Tselios <aggelostselios777@gmail.com>
2026-05-23 11:30:04 +02:00
Aggelos Tselios
ab31666079 os: client: replace apple block with proper function
Replace an apple block in DetermineClientCmd with a regular C function,
in the part responsible for fetching argmax from the kernel on Apple
systems.

Signed-off-by: Aggelos Tselios <aggelostselios777@gmail.com>
2026-05-23 11:30:04 +02:00
Enrico Weigelt, metux IT consult
a7310e147c os/auth: fix error paths when reading from /dev/urandom
Some checks are pending
Build X servers / drivers-build-ubuntu (video-rendition:25.0.0) (push) Blocked by required conditions
Build X servers / drivers-build-ubuntu (video-s3virge:25.0.0) (push) Blocked by required conditions
Build X servers / drivers-build-ubuntu (video-savage:25.0.0) (push) Blocked by required conditions
Build X servers / drivers-build-ubuntu (video-siliconmotion:25.0.0) (push) Blocked by required conditions
Build X servers / drivers-build-ubuntu (video-sis:25.0.0) (push) Blocked by required conditions
Build X servers / drivers-build-ubuntu (video-sisusb:25.0.0) (push) Blocked by required conditions
Build X servers / drivers-build-ubuntu (video-suncg14:25.0.0) (push) Blocked by required conditions
Build X servers / drivers-build-ubuntu (video-suncg3:25.0.0) (push) Blocked by required conditions
Build X servers / drivers-build-ubuntu (video-suncg6:25.0.0) (push) Blocked by required conditions
Build X servers / drivers-build-ubuntu (video-sunffb:25.0.0) (push) Blocked by required conditions
Build X servers / drivers-build-ubuntu (video-sunleo:25.0.0) (push) Blocked by required conditions
Build X servers / drivers-build-ubuntu (video-suntcx:25.0.0) (push) Blocked by required conditions
Build X servers / drivers-build-ubuntu (video-tdfx:25.0.0) (push) Blocked by required conditions
Build X servers / drivers-build-ubuntu (video-trident:25.0.0) (push) Blocked by required conditions
Build X servers / drivers-build-ubuntu (video-v4l:25.0.1) (push) Blocked by required conditions
Build X servers / drivers-build-ubuntu (video-vbox:25.0.0) (push) Blocked by required conditions
Build X servers / drivers-build-ubuntu (video-vesa:25.0.0) (push) Blocked by required conditions
Build X servers / drivers-build-ubuntu (video-vmware:25.0.0) (push) Blocked by required conditions
Build X servers / drivers-build-ubuntu (video-voodoo:25.0.0) (push) Blocked by required conditions
Build X servers / drivers-build-ubuntu (video-xgi:25.0.0) (push) Blocked by required conditions
Build X servers / xserver-build-mingw32-ubuntu (push) Waiting to run
Build X servers / xserver-build-macos (push) Waiting to run
Build X servers / xserver-build-freebsd (push) Waiting to run
Build X servers / xserver-build-dragonflybsd (push) Waiting to run
Build X servers / xserver-build-netbsd (push) Waiting to run
Build X servers / xserver-build-cygwin (push) Waiting to run
Build X servers / xserver-build-arch (push) Waiting to run
Build X servers / Check Signed-Off-By (push) Waiting to run
Build X servers / Release pushed tag (push) Blocked by required conditions
check PRs for merge conflicts / notify (push) Waiting to run
Handle /dev/urandom errors while reading, otherwise the
MIT-MAGIC-COOKIE-1 authentication cookies contains unintialized data
(which both can leak data and allows predicting the value).

Assisted-by: Claude:claude-claude-opus-4-6
Part-of: <https://gitlab.freedesktop.org/xorg/xserver/-/merge_requests/2200>
Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
2026-05-21 17:13:24 +02:00
Peter Hutterer
cd2f6a0f19 os/auth: prefer getrandom() over arc4random_buf() and /dev/urandom
Some checks are pending
Build X servers / drivers-build-ubuntu (video-rendition:25.0.0) (push) Blocked by required conditions
Build X servers / drivers-build-ubuntu (video-s3virge:25.0.0) (push) Blocked by required conditions
Build X servers / drivers-build-ubuntu (video-savage:25.0.0) (push) Blocked by required conditions
Build X servers / drivers-build-ubuntu (video-siliconmotion:25.0.0) (push) Blocked by required conditions
Build X servers / drivers-build-ubuntu (video-sis:25.0.0) (push) Blocked by required conditions
Build X servers / drivers-build-ubuntu (video-sisusb:25.0.0) (push) Blocked by required conditions
Build X servers / drivers-build-ubuntu (video-suncg14:25.0.0) (push) Blocked by required conditions
Build X servers / drivers-build-ubuntu (video-suncg3:25.0.0) (push) Blocked by required conditions
Build X servers / drivers-build-ubuntu (video-suncg6:25.0.0) (push) Blocked by required conditions
Build X servers / drivers-build-ubuntu (video-sunffb:25.0.0) (push) Blocked by required conditions
Build X servers / drivers-build-ubuntu (video-sunleo:25.0.0) (push) Blocked by required conditions
Build X servers / drivers-build-ubuntu (video-suntcx:25.0.0) (push) Blocked by required conditions
Build X servers / drivers-build-ubuntu (video-tdfx:25.0.0) (push) Blocked by required conditions
Build X servers / drivers-build-ubuntu (video-trident:25.0.0) (push) Blocked by required conditions
Build X servers / drivers-build-ubuntu (video-v4l:25.0.1) (push) Blocked by required conditions
Build X servers / drivers-build-ubuntu (video-vbox:25.0.0) (push) Blocked by required conditions
Build X servers / drivers-build-ubuntu (video-vesa:25.0.0) (push) Blocked by required conditions
Build X servers / drivers-build-ubuntu (video-vmware:25.0.0) (push) Blocked by required conditions
Build X servers / drivers-build-ubuntu (video-voodoo:25.0.0) (push) Blocked by required conditions
Build X servers / drivers-build-ubuntu (video-xgi:25.0.0) (push) Blocked by required conditions
Build X servers / xserver-build-mingw32-ubuntu (push) Waiting to run
Build X servers / xserver-build-macos (push) Waiting to run
Build X servers / xserver-build-freebsd (push) Waiting to run
Build X servers / xserver-build-dragonflybsd (push) Waiting to run
Build X servers / xserver-build-netbsd (push) Waiting to run
Build X servers / xserver-build-cygwin (push) Waiting to run
Build X servers / xserver-build-arch (push) Waiting to run
Build X servers / Check Signed-Off-By (push) Waiting to run
Build X servers / Release pushed tag (push) Blocked by required conditions
check PRs for merge conflicts / notify (push) Waiting to run
Use getrandom() as the preferred source of random data when available,
getrandom() works in chroots and containers without the random device
node.

Note this is a build-time preference, not a runtime preference.

Assisted-by: Claude:claude-claude-opus-4-6
Part-of: <https://gitlab.freedesktop.org/xorg/xserver/-/merge_requests/2200>
Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
2026-05-20 19:50:09 +02:00
Peter Hutterer
a3fd529207 os/client: fix kvm handle leak and NULL dereferences on OpenBSD
Some checks are pending
Build X servers / xserver-build-ubuntu (push) Waiting to run
Build X servers / drivers-build-ubuntu (push) Waiting to run
Build X servers / xserver-build-mingw32-ubuntu (push) Waiting to run
Build X servers / xserver-build-macos (push) Waiting to run
Build X servers / xserver-build-freebsd (push) Waiting to run
Build X servers / xserver-build-dragonflybsd (push) Waiting to run
Build X servers / xserver-build-netbsd (push) Waiting to run
Build X servers / xserver-build-cygwin (push) Waiting to run
Build X servers / Check Signed-Off-By (push) Waiting to run
Build X servers / Release pushed tag (push) Blocked by required conditions
check PRs for merge conflicts / notify (push) Waiting to run
And remove a redundant argv == NULL check

Co-Authored-by: Claude Code <noreply@anthropic.com>
Part-of: <https://gitlab.freedesktop.org/xorg/xserver/-/merge_requests/2184>
Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
2026-04-30 16:36:51 +02:00
Enrico Weigelt, metux IT consult
f6d822a251 os: access: handle allocation failures
Some checks are pending
Build X servers / xserver-build-ubuntu (push) Waiting to run
Build X servers / drivers-build-ubuntu (push) Waiting to run
Build X servers / xserver-build-mingw32-ubuntu (push) Waiting to run
Build X servers / xserver-build-macos (push) Waiting to run
Build X servers / xserver-build-freebsd (push) Waiting to run
Build X servers / xserver-build-dragonflybsd (push) Waiting to run
Build X servers / xserver-build-netbsd (push) Waiting to run
Build X servers / xserver-build-cygwin (push) Waiting to run
Build X servers / Check Signed-Off-By (push) Waiting to run
Build X servers / Release pushed tag (push) Blocked by required conditions
check PRs for merge conflicts / notify (push) Waiting to run
Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
2026-04-30 13:23:09 +02:00
Alan Coopersmith
df26f56dc7 os: handle memory allocation failure in set_font_authorizations()
Reported in #1817:
xwayland-24.1.6/redhat-linux-build/../os/utils.c:1108:9:
 warning[-Wanalyzer-possible-null-dereference]:
  dereference of possibly-NULL ‘result’
xwayland-24.1.6/redhat-linux-build/../os/utils.c:1108:9:
 danger: ‘malloc((long unsigned int)len + 18)’ could be NULL:
  unchecked value from (3)

Signed-off-by: Alan Coopersmith <alan.coopersmith@oracle.com>
Part-of: <https://gitlab.freedesktop.org/xorg/xserver/-/merge_requests/2163>
2026-04-21 10:44:53 +02:00
Alan Coopersmith
7820550cf3 os: use winsock2.h definitions on mingw in xserver_poll.h
Some checks are pending
Build X servers / xserver-build-ubuntu (push) Waiting to run
Build X servers / drivers-build-ubuntu (push) Waiting to run
Build X servers / xserver-build-mingw32-ubuntu (push) Waiting to run
Build X servers / xserver-build-macos (push) Waiting to run
Build X servers / xserver-build-freebsd (push) Waiting to run
Build X servers / xserver-build-dragonflybsd (push) Waiting to run
Build X servers / xserver-build-netbsd (push) Waiting to run
Build X servers / xserver-build-cygwin (push) Waiting to run
Build X servers / Check Signed-Off-By (push) Waiting to run
Build X servers / Release pushed tag (push) Blocked by required conditions
check PRs for merge conflicts / notify (push) Waiting to run
Avoids build warnings & failures, such as:

../os/xserver_poll.h:40: warning: "POLLNVAL" redefined
   40 | #define POLLNVAL        0x20
      |
/usr/share/mingw-w64/include/winsock2.h:1190: note: this is the location
 of the previous definition
 1190 | #define POLLNVAL   0x0004
      |
../os/xserver_poll.h:42:8: error: redefinition of ‘struct pollfd’
   42 | struct pollfd
      |        ^~~~~~
/usr/share/mingw-w64/include/winsock2.h:1192:16: note: originally defined here
 1192 | typedef struct pollfd {
      |                ^~~~~~

Signed-off-by: Alan Coopersmith <alan.coopersmith@oracle.com>
Part-of: <https://gitlab.freedesktop.org/xorg/xserver/-/merge_requests/2141>
2026-04-21 10:33:12 +02:00
John Studnicka
cf7c358d5b os: add busfault dummy struct
Some checks failed
Build X servers / xserver-build-ubuntu (push) Has been cancelled
Build X servers / drivers-build-ubuntu (push) Has been cancelled
Build X servers / xserver-build-mingw32-ubuntu (push) Has been cancelled
Build X servers / xserver-build-macos (push) Has been cancelled
Build X servers / xserver-build-freebsd (push) Has been cancelled
Build X servers / xserver-build-dragonflybsd (push) Has been cancelled
Build X servers / xserver-build-netbsd (push) Has been cancelled
Build X servers / xserver-build-cygwin (push) Has been cancelled
Build X servers / Check Signed-Off-By (push) Has been cancelled
check PRs for merge conflicts / notify (push) Has been cancelled
Build X servers / Release pushed tag (push) Has been cancelled
This should make the busfault structs happy on both sides of the ifdef

Signed-off-by: John Studnicka <contact@zentec.dev>
2026-03-25 14:40:09 +01:00
EXtremeExploit
16fe763707 os/log: Fix syslog identification
Some checks are pending
Build X servers / xserver-build-ubuntu (push) Waiting to run
Build X servers / drivers-build-ubuntu (push) Waiting to run
Build X servers / xserver-build-mingw32-ubuntu (push) Waiting to run
Build X servers / xserver-build-macos (push) Waiting to run
Build X servers / xserver-build-freebsd (push) Waiting to run
Build X servers / xserver-build-dragonflybsd (push) Waiting to run
Build X servers / xserver-build-netbsd (push) Waiting to run
Build X servers / xserver-build-cygwin (push) Waiting to run
Build X servers / Check Signed-Off-By (push) Waiting to run
Build X servers / Release pushed tag (push) Blocked by required conditions
check PRs for merge conflicts / notify (push) Waiting to run
Signed-off-by: EXtremeExploit <pedro.montes.alcalde@gmail.com>
2026-03-18 10:13:41 +01:00
stefan11111
e6a0fa4b0c Treewide: Fix typos
Signed-off-by: Diego Viola <diego.viola@gmail.com>
Part-of: <https://gitlab.freedesktop.org/xorg/xserver/-/merge_requests/2134>

----------------------------------------------------------------------------

This commit is the result of `git apply commit.diff --reject`
applied on e8f4522312

67c82078fe does not
apply to Xlibre

Signed-off-by: stefan11111 <stefan11111@shitposting.expert>
2026-03-16 13:11:07 +01:00
Alan Coopersmith
465742c7b4 os: add a generic -verbose option instead of making each server add its own
Replaces Xwayland's server-specific implementation, but leaves Xorg's
since it sets global variables in the xfree86 ddx layer.  Also leaves
Xephyr's differently-spelled "-verbosity" for backwards compatibility.

Signed-off-by: Alan Coopersmith <alan.coopersmith@oracle.com>
Part-of: <https://gitlab.freedesktop.org/xorg/xserver/-/merge_requests/2131>
2026-03-16 13:06:32 +01:00
Alan Coopersmith
3ee086b897 os: fix sha1 build error with Nettle 4.0
Some checks are pending
Build X servers / xserver-build-ubuntu (push) Waiting to run
Build X servers / drivers-build-ubuntu (push) Waiting to run
Build X servers / xserver-build-mingw32-ubuntu (push) Waiting to run
Build X servers / xserver-build-macos (push) Waiting to run
Build X servers / xserver-build-freebsd (push) Waiting to run
Build X servers / xserver-build-dragonflybsd (push) Waiting to run
Build X servers / xserver-build-netbsd (push) Waiting to run
Build X servers / xserver-build-cygwin (push) Waiting to run
Build X servers / Check Signed-Off-By (push) Waiting to run
Build X servers / Release pushed tag (push) Blocked by required conditions
check PRs for merge conflicts / notify (push) Waiting to run
Nettle 2.6 (released in 2013) split the sha.h header into sha1.h & sha2.h,
but left the sha.h header for compatibility until the recent Nettle 4.0
release finally removed it.

Nettle 4.0 also dropped the length argument from the sha1_digest function.

Closes: https://gitlab.freedesktop.org/xorg/xserver/-/issues/1871
Signed-off-by: Alan Coopersmith <alan.coopersmith@oracle.com>
Part-of: <https://gitlab.freedesktop.org/xorg/xserver/-/merge_requests/2133>
2026-03-16 13:02:37 +01:00
Enrico Weigelt, metux IT consult
14f03de002 xwin: move winsock specific errno checks into ossock
Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
2026-02-11 12:02:44 +01:00
Enrico Weigelt, metux IT consult
673ad0822b meson: move strlcat() and strlcpy() detection into os/meson.build
Some checks are pending
delete old workflow runs / delete_old_workflow_runs_branches (wip/logging_submitted_1) (push) Waiting to run
delete old workflow runs / delete_old_workflow_runs_branches (wip/maint-xnest) (push) Waiting to run
delete old workflow runs / delete_old_workflow_runs_branches (wip/marshal) (push) Waiting to run
delete old workflow runs / delete_old_workflow_runs_branches (wip/matrix-test) (push) Waiting to run
delete old workflow runs / delete_old_workflow_runs_branches (wip/meson) (push) Waiting to run
delete old workflow runs / delete_old_workflow_runs_branches (wip/misc.h) (push) Waiting to run
delete old workflow runs / delete_old_workflow_runs_branches (wip/mpbt) (push) Waiting to run
delete old workflow runs / delete_old_workflow_runs_branches (wip/netbsd) (push) Waiting to run
delete old workflow runs / delete_old_workflow_runs_branches (wip/no-libsystemd) (push) Waiting to run
delete old workflow runs / delete_old_workflow_runs_branches (wip/optional-pci) (push) Waiting to run
delete old workflow runs / delete_old_workflow_runs_branches (wip/os-unexport) (push) Waiting to run
delete old workflow runs / delete_old_workflow_runs_branches (wip/pciaccess) (push) Waiting to run
delete old workflow runs / delete_old_workflow_runs_branches (wip/pedantic) (push) Waiting to run
delete old workflow runs / delete_old_workflow_runs_branches (wip/pixmap-lifecycle) (push) Waiting to run
delete old workflow runs / delete_old_workflow_runs_branches (wip/reallocarray) (push) Waiting to run
delete old workflow runs / delete_old_workflow_runs_branches (wip/requests) (push) Waiting to run
delete old workflow runs / delete_old_workflow_runs_branches (wip/screenproc) (push) Waiting to run
delete old workflow runs / delete_old_workflow_runs_branches (wip/screenproc-wrap) (push) Waiting to run
delete old workflow runs / delete_old_workflow_runs_branches (wip/swap0) (push) Waiting to run
delete old workflow runs / delete_old_workflow_runs_branches (wip/swapping) (push) Waiting to run
delete old workflow runs / delete_old_workflow_runs_branches (wip/swapping_new) (push) Waiting to run
delete old workflow runs / delete_old_workflow_runs_branches (wip/warn-conv) (push) Waiting to run
delete old workflow runs / delete_old_workflow_runs_branches (wip/win32_2) (push) Waiting to run
delete old workflow runs / delete_old_workflow_runs_branches (wip/xcb-marshal) (push) Waiting to run
delete old workflow runs / delete_old_workflow_runs_branches (wip/xf86_platform_bus_newabi) (push) Waiting to run
delete old workflow runs / delete_old_workflow_runs_branches (wip/xf86bigfont) (push) Waiting to run
delete old workflow runs / delete_old_workflow_runs_branches (wip/xi-properties) (push) Waiting to run
delete old workflow runs / delete_old_workflow_runs_branches (wip/xnest-render) (push) Waiting to run
delete old workflow runs / delete_old_workflow_runs_branches (wip/xnest-rootless) (push) Waiting to run
delete old workflow runs / delete_old_workflow_runs_branches (wip/xnest-shm) (push) Waiting to run
That's OS specific, and the fallback implementations are in os/,
so it's better to also move the detection there.

Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
2026-02-10 16:16:49 +01:00
Enrico Weigelt, metux IT consult
e1dc65bdf0 os: drop ifdef NO_PART_NET code path
This symbol is never defined, so that code path isn't needed.
Disabling "partial network" (thus, not arborting when not all
requested interfaces can't be bound) can be done via command line.

Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
2026-02-10 11:48:42 +01:00
Enrico Weigelt, metux IT consult
4642d6207f os: unexport SeatId and move it to dix settings
Some checks are pending
delete old workflow runs / delete_old_workflow_runs_branches (wip/logging_submitted_1) (push) Waiting to run
delete old workflow runs / delete_old_workflow_runs_branches (wip/maint-xnest) (push) Waiting to run
delete old workflow runs / delete_old_workflow_runs_branches (wip/marshal) (push) Waiting to run
delete old workflow runs / delete_old_workflow_runs_branches (wip/matrix-test) (push) Waiting to run
delete old workflow runs / delete_old_workflow_runs_branches (wip/meson) (push) Waiting to run
delete old workflow runs / delete_old_workflow_runs_branches (wip/misc.h) (push) Waiting to run
delete old workflow runs / delete_old_workflow_runs_branches (wip/mpbt) (push) Waiting to run
delete old workflow runs / delete_old_workflow_runs_branches (wip/netbsd) (push) Waiting to run
delete old workflow runs / delete_old_workflow_runs_branches (wip/no-libsystemd) (push) Waiting to run
delete old workflow runs / delete_old_workflow_runs_branches (wip/optional-pci) (push) Waiting to run
delete old workflow runs / delete_old_workflow_runs_branches (wip/os-unexport) (push) Waiting to run
delete old workflow runs / delete_old_workflow_runs_branches (wip/pciaccess) (push) Waiting to run
delete old workflow runs / delete_old_workflow_runs_branches (wip/pedantic) (push) Waiting to run
delete old workflow runs / delete_old_workflow_runs_branches (wip/pixmap-lifecycle) (push) Waiting to run
delete old workflow runs / delete_old_workflow_runs_branches (wip/reallocarray) (push) Waiting to run
delete old workflow runs / delete_old_workflow_runs_branches (wip/requests) (push) Waiting to run
delete old workflow runs / delete_old_workflow_runs_branches (wip/screenproc) (push) Waiting to run
delete old workflow runs / delete_old_workflow_runs_branches (wip/screenproc-wrap) (push) Waiting to run
delete old workflow runs / delete_old_workflow_runs_branches (wip/swap0) (push) Waiting to run
delete old workflow runs / delete_old_workflow_runs_branches (wip/swapping) (push) Waiting to run
delete old workflow runs / delete_old_workflow_runs_branches (wip/swapping_new) (push) Waiting to run
delete old workflow runs / delete_old_workflow_runs_branches (wip/warn-conv) (push) Waiting to run
delete old workflow runs / delete_old_workflow_runs_branches (wip/win32_2) (push) Waiting to run
delete old workflow runs / delete_old_workflow_runs_branches (wip/xcb-marshal) (push) Waiting to run
delete old workflow runs / delete_old_workflow_runs_branches (wip/xf86_platform_bus_newabi) (push) Waiting to run
delete old workflow runs / delete_old_workflow_runs_branches (wip/xf86bigfont) (push) Waiting to run
delete old workflow runs / delete_old_workflow_runs_branches (wip/xi-properties) (push) Waiting to run
delete old workflow runs / delete_old_workflow_runs_branches (wip/xnest-render) (push) Waiting to run
delete old workflow runs / delete_old_workflow_runs_branches (wip/xnest-rootless) (push) Waiting to run
delete old workflow runs / delete_old_workflow_runs_branches (wip/xnest-shm) (push) Waiting to run
Not used by any external module/driver, so no need to keep it
public. Also move it to the new dix settings code and rename it.

Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
2026-02-03 11:34:14 +01:00
Enrico Weigelt, metux IT consult
885ba96ff6 os: xtrans: drop some unused defines
The TRANS_LOCAL_*_INDEX defines aren't used anymore.

Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
2026-01-07 10:56:57 +01:00
Alan Coopersmith
2a41522349 os: make FormatInt64() handle LONG_MIN correctly
Some checks failed
delete old workflow runs / delete_old_workflow_runs_branches (wip/maint-xnest) (push) Has been cancelled
delete old workflow runs / delete_old_workflow_runs_branches (wip/marshal) (push) Has been cancelled
delete old workflow runs / delete_old_workflow_runs_branches (wip/matrix-test) (push) Has been cancelled
delete old workflow runs / delete_old_workflow_runs_branches (wip/meson) (push) Has been cancelled
delete old workflow runs / delete_old_workflow_runs_branches (wip/misc.h) (push) Has been cancelled
delete old workflow runs / delete_old_workflow_runs_branches (wip/mpbt) (push) Has been cancelled
delete old workflow runs / delete_old_workflow_runs_branches (wip/netbsd) (push) Has been cancelled
delete old workflow runs / delete_old_workflow_runs_branches (wip/no-libsystemd) (push) Has been cancelled
delete old workflow runs / delete_old_workflow_runs_branches (wip/optional-pci) (push) Has been cancelled
delete old workflow runs / delete_old_workflow_runs_branches (wip/os-unexport) (push) Has been cancelled
delete old workflow runs / delete_old_workflow_runs_branches (wip/pciaccess) (push) Has been cancelled
delete old workflow runs / delete_old_workflow_runs_branches (wip/pedantic) (push) Has been cancelled
delete old workflow runs / delete_old_workflow_runs_branches (wip/pixmap-lifecycle) (push) Has been cancelled
delete old workflow runs / delete_old_workflow_runs_branches (wip/reallocarray) (push) Has been cancelled
delete old workflow runs / delete_old_workflow_runs_branches (wip/requests) (push) Has been cancelled
delete old workflow runs / delete_old_workflow_runs_branches (wip/screenproc) (push) Has been cancelled
delete old workflow runs / delete_old_workflow_runs_branches (wip/screenproc-wrap) (push) Has been cancelled
delete old workflow runs / delete_old_workflow_runs_branches (wip/swap0) (push) Has been cancelled
delete old workflow runs / delete_old_workflow_runs_branches (wip/swapping) (push) Has been cancelled
delete old workflow runs / delete_old_workflow_runs_branches (wip/swapping_new) (push) Has been cancelled
delete old workflow runs / delete_old_workflow_runs_branches (wip/warn-conv) (push) Has been cancelled
delete old workflow runs / delete_old_workflow_runs_branches (wip/win32_2) (push) Has been cancelled
delete old workflow runs / delete_old_workflow_runs_branches (wip/xcb-marshal) (push) Has been cancelled
delete old workflow runs / delete_old_workflow_runs_branches (wip/xf86_platform_bus_newabi) (push) Has been cancelled
delete old workflow runs / delete_old_workflow_runs_branches (wip/xf86bigfont) (push) Has been cancelled
delete old workflow runs / delete_old_workflow_runs_branches (wip/xi-properties) (push) Has been cancelled
delete old workflow runs / delete_old_workflow_runs_branches (wip/xnest-render) (push) Has been cancelled
delete old workflow runs / delete_old_workflow_runs_branches (wip/xnest-rootless) (push) Has been cancelled
delete old workflow runs / delete_old_workflow_runs_branches (wip/xnest-shm) (push) Has been cancelled
Build X servers / Release pushed tag (push) Has been cancelled
When compiling with gcc 15.2.0 using -O3 -m64 on Solaris SPARC & x64,
we'd get a test failure of:

Assertion failed: strcmp(logmsg, expected) == 0,
 file ../test/signal-logging.c, line 339, function logging_format

because 'num *= -1' produced a value that was out of the range of the
int64_t it was being stored in.  (Compiling with -O2 worked fine with
the same compiler/configuration/platform though.)

Signed-off-by: Alan Coopersmith <alan.coopersmith@oracle.com>
Part-of: <https://gitlab.freedesktop.org/xorg/xserver/-/merge_requests/2117>
2026-01-01 13:23:22 +01:00
b-aaz
d334e01e31 os: osdep: Disabled a section on Cygwin that was redundant.
The section does some mappings between POSIX and windows APIs that are
already handled by Cygwin. This caused build errors on Cygwin due to
redefinition of things like the sigset_t struct.

Signed-off-by: b-aaz <b-aazbsd@proton.me>
2025-12-21 12:59:03 +01:00
b-aaz
7f7efe8195 Revert 9a82f5c, bring back Cygwin support.
Brought back the code removed in that commit so that we can bring back
Cygwin support.
Small changes are done in the process of resolving conflicts against the
current head.

Some checks have not been reverted, because they were not necessary
anymore.

Signed-off-by: b-aaz <b-aazbsd@proton.me>
2025-12-21 12:59:03 +01:00
Mikhail Dmitrichenko
252dda933a os: avoid closing null fd at Fopen
Some checks failed
delete old workflow runs / delete_old_workflow_runs_branches (wip/maint-xnest) (push) Has been cancelled
delete old workflow runs / delete_old_workflow_runs_branches (wip/marshal) (push) Has been cancelled
delete old workflow runs / delete_old_workflow_runs_branches (wip/matrix-test) (push) Has been cancelled
delete old workflow runs / delete_old_workflow_runs_branches (wip/meson) (push) Has been cancelled
delete old workflow runs / delete_old_workflow_runs_branches (wip/misc.h) (push) Has been cancelled
delete old workflow runs / delete_old_workflow_runs_branches (wip/mpbt) (push) Has been cancelled
delete old workflow runs / delete_old_workflow_runs_branches (wip/netbsd) (push) Has been cancelled
delete old workflow runs / delete_old_workflow_runs_branches (wip/no-libsystemd) (push) Has been cancelled
delete old workflow runs / delete_old_workflow_runs_branches (wip/optional-pci) (push) Has been cancelled
delete old workflow runs / delete_old_workflow_runs_branches (wip/os-unexport) (push) Has been cancelled
delete old workflow runs / delete_old_workflow_runs_branches (wip/pciaccess) (push) Has been cancelled
delete old workflow runs / delete_old_workflow_runs_branches (wip/pedantic) (push) Has been cancelled
delete old workflow runs / delete_old_workflow_runs_branches (wip/pixmap-lifecycle) (push) Has been cancelled
delete old workflow runs / delete_old_workflow_runs_branches (wip/reallocarray) (push) Has been cancelled
delete old workflow runs / delete_old_workflow_runs_branches (wip/requests) (push) Has been cancelled
delete old workflow runs / delete_old_workflow_runs_branches (wip/screenproc) (push) Has been cancelled
delete old workflow runs / delete_old_workflow_runs_branches (wip/screenproc-wrap) (push) Has been cancelled
delete old workflow runs / delete_old_workflow_runs_branches (wip/swap0) (push) Has been cancelled
delete old workflow runs / delete_old_workflow_runs_branches (wip/swapping) (push) Has been cancelled
delete old workflow runs / delete_old_workflow_runs_branches (wip/swapping_new) (push) Has been cancelled
delete old workflow runs / delete_old_workflow_runs_branches (wip/warn-conv) (push) Has been cancelled
delete old workflow runs / delete_old_workflow_runs_branches (wip/win32_2) (push) Has been cancelled
delete old workflow runs / delete_old_workflow_runs_branches (wip/xcb-marshal) (push) Has been cancelled
delete old workflow runs / delete_old_workflow_runs_branches (wip/xf86_platform_bus_newabi) (push) Has been cancelled
delete old workflow runs / delete_old_workflow_runs_branches (wip/xf86bigfont) (push) Has been cancelled
delete old workflow runs / delete_old_workflow_runs_branches (wip/xi-properties) (push) Has been cancelled
delete old workflow runs / delete_old_workflow_runs_branches (wip/xnest-render) (push) Has been cancelled
delete old workflow runs / delete_old_workflow_runs_branches (wip/xnest-rootless) (push) Has been cancelled
delete old workflow runs / delete_old_workflow_runs_branches (wip/xnest-shm) (push) Has been cancelled
Build X servers / Release pushed tag (push) Has been cancelled
In `Fopen` function variable `iop` may store NULL as a result of `fopen`
call. In this case, if later privileges couldn't be restored (`seteuid`
call fails), further `fclose(iop)` call will cause runtime error.

This commit adds check `iop` for NULL before calling `fclose` to prevent
potential NULL pointer dereference.

Found by Linux Verification Center (linuxtesting.org) with SVACE.

Signed-off-by: Mikhail Dmitrichenko <m.dmitrichenko222@gmail.com>
Part-of: <https://gitlab.freedesktop.org/xorg/xserver/-/merge_requests/2115>
2025-12-19 18:31:23 +01:00
b-aaz
a5f87f20b2 os: Cleaned up the log functions and handled return values.
Some checks are pending
delete old workflow runs / delete_old_workflow_runs_branches (wip/logging_submitted_1) (push) Waiting to run
delete old workflow runs / delete_old_workflow_runs_branches (wip/maint-xnest) (push) Waiting to run
delete old workflow runs / delete_old_workflow_runs_branches (wip/marshal) (push) Waiting to run
delete old workflow runs / delete_old_workflow_runs_branches (wip/matrix-test) (push) Waiting to run
delete old workflow runs / delete_old_workflow_runs_branches (wip/meson) (push) Waiting to run
delete old workflow runs / delete_old_workflow_runs_branches (wip/misc.h) (push) Waiting to run
delete old workflow runs / delete_old_workflow_runs_branches (wip/mpbt) (push) Waiting to run
delete old workflow runs / delete_old_workflow_runs_branches (wip/netbsd) (push) Waiting to run
delete old workflow runs / delete_old_workflow_runs_branches (wip/no-libsystemd) (push) Waiting to run
delete old workflow runs / delete_old_workflow_runs_branches (wip/optional-pci) (push) Waiting to run
delete old workflow runs / delete_old_workflow_runs_branches (wip/os-unexport) (push) Waiting to run
delete old workflow runs / delete_old_workflow_runs_branches (wip/pciaccess) (push) Waiting to run
delete old workflow runs / delete_old_workflow_runs_branches (wip/pedantic) (push) Waiting to run
delete old workflow runs / delete_old_workflow_runs_branches (wip/pixmap-lifecycle) (push) Waiting to run
delete old workflow runs / delete_old_workflow_runs_branches (wip/reallocarray) (push) Waiting to run
delete old workflow runs / delete_old_workflow_runs_branches (wip/requests) (push) Waiting to run
delete old workflow runs / delete_old_workflow_runs_branches (wip/screenproc) (push) Waiting to run
delete old workflow runs / delete_old_workflow_runs_branches (wip/screenproc-wrap) (push) Waiting to run
delete old workflow runs / delete_old_workflow_runs_branches (wip/swap0) (push) Waiting to run
delete old workflow runs / delete_old_workflow_runs_branches (wip/swapping) (push) Waiting to run
delete old workflow runs / delete_old_workflow_runs_branches (wip/swapping_new) (push) Waiting to run
delete old workflow runs / delete_old_workflow_runs_branches (wip/warn-conv) (push) Waiting to run
delete old workflow runs / delete_old_workflow_runs_branches (wip/win32_2) (push) Waiting to run
delete old workflow runs / delete_old_workflow_runs_branches (wip/xcb-marshal) (push) Waiting to run
delete old workflow runs / delete_old_workflow_runs_branches (wip/xf86_platform_bus_newabi) (push) Waiting to run
delete old workflow runs / delete_old_workflow_runs_branches (wip/xf86bigfont) (push) Waiting to run
delete old workflow runs / delete_old_workflow_runs_branches (wip/xi-properties) (push) Waiting to run
delete old workflow runs / delete_old_workflow_runs_branches (wip/xnest-render) (push) Waiting to run
delete old workflow runs / delete_old_workflow_runs_branches (wip/xnest-rootless) (push) Waiting to run
delete old workflow runs / delete_old_workflow_runs_branches (wip/xnest-shm) (push) Waiting to run
The old function used int for write() return values, that could overflow.
And the return values of the write calls were discarded and not checked.

Now if the write() to the log file fails, a warning will be logged to
stderr and the log message will be appended after the warning.

If writes to stderr fail, a warning will be logged to stdout and the log
message will be appended after the warning.

If writes to stdout fail, we can't really do anything else and will
continue on silently.

Also used the length returned by strftime for the next write call to
eliminate an extra use of strlen.

The -1 was also removed from the buflen argument of strftime because it
was unnecessary.

Did some small formatting changes too.

Signed-off-by: b-aaz <b-aazbsd@proton.me>
2025-12-19 12:21:44 +01:00
Enrico Weigelt, metux IT consult
857e397c15 os: Xtranssock: fix (signed) char array subscript
Some checks are pending
delete old workflow runs / delete_old_workflow_runs_branches (wip/logging_submitted_1) (push) Waiting to run
delete old workflow runs / delete_old_workflow_runs_branches (wip/maint-xnest) (push) Waiting to run
delete old workflow runs / delete_old_workflow_runs_branches (wip/marshal) (push) Waiting to run
delete old workflow runs / delete_old_workflow_runs_branches (wip/matrix-test) (push) Waiting to run
delete old workflow runs / delete_old_workflow_runs_branches (wip/meson) (push) Waiting to run
delete old workflow runs / delete_old_workflow_runs_branches (wip/misc.h) (push) Waiting to run
delete old workflow runs / delete_old_workflow_runs_branches (wip/mpbt) (push) Waiting to run
delete old workflow runs / delete_old_workflow_runs_branches (wip/netbsd) (push) Waiting to run
delete old workflow runs / delete_old_workflow_runs_branches (wip/no-libsystemd) (push) Waiting to run
delete old workflow runs / delete_old_workflow_runs_branches (wip/optional-pci) (push) Waiting to run
delete old workflow runs / delete_old_workflow_runs_branches (wip/os-unexport) (push) Waiting to run
delete old workflow runs / delete_old_workflow_runs_branches (wip/pciaccess) (push) Waiting to run
delete old workflow runs / delete_old_workflow_runs_branches (wip/pedantic) (push) Waiting to run
delete old workflow runs / delete_old_workflow_runs_branches (wip/pixmap-lifecycle) (push) Waiting to run
delete old workflow runs / delete_old_workflow_runs_branches (wip/reallocarray) (push) Waiting to run
delete old workflow runs / delete_old_workflow_runs_branches (wip/requests) (push) Waiting to run
delete old workflow runs / delete_old_workflow_runs_branches (wip/screenproc) (push) Waiting to run
delete old workflow runs / delete_old_workflow_runs_branches (wip/screenproc-wrap) (push) Waiting to run
delete old workflow runs / delete_old_workflow_runs_branches (wip/swap0) (push) Waiting to run
delete old workflow runs / delete_old_workflow_runs_branches (wip/swapping) (push) Waiting to run
delete old workflow runs / delete_old_workflow_runs_branches (wip/swapping_new) (push) Waiting to run
delete old workflow runs / delete_old_workflow_runs_branches (wip/warn-conv) (push) Waiting to run
delete old workflow runs / delete_old_workflow_runs_branches (wip/win32_2) (push) Waiting to run
delete old workflow runs / delete_old_workflow_runs_branches (wip/xcb-marshal) (push) Waiting to run
delete old workflow runs / delete_old_workflow_runs_branches (wip/xf86_platform_bus_newabi) (push) Waiting to run
delete old workflow runs / delete_old_workflow_runs_branches (wip/xf86bigfont) (push) Waiting to run
delete old workflow runs / delete_old_workflow_runs_branches (wip/xi-properties) (push) Waiting to run
delete old workflow runs / delete_old_workflow_runs_branches (wip/xnest-render) (push) Waiting to run
delete old workflow runs / delete_old_workflow_runs_branches (wip/xnest-rootless) (push) Waiting to run
delete old workflow runs / delete_old_workflow_runs_branches (wip/xnest-shm) (push) Waiting to run
>  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
9a54f4b908 os: enable UNIX sockets on Mingw32
Some checks are pending
delete old workflow runs / delete_old_workflow_runs_branches (wip/logging_submitted_1) (push) Waiting to run
delete old workflow runs / delete_old_workflow_runs_branches (wip/maint-xnest) (push) Waiting to run
delete old workflow runs / delete_old_workflow_runs_branches (wip/marshal) (push) Waiting to run
delete old workflow runs / delete_old_workflow_runs_branches (wip/matrix-test) (push) Waiting to run
delete old workflow runs / delete_old_workflow_runs_branches (wip/meson) (push) Waiting to run
delete old workflow runs / delete_old_workflow_runs_branches (wip/misc.h) (push) Waiting to run
delete old workflow runs / delete_old_workflow_runs_branches (wip/mpbt) (push) Waiting to run
delete old workflow runs / delete_old_workflow_runs_branches (wip/netbsd) (push) Waiting to run
delete old workflow runs / delete_old_workflow_runs_branches (wip/no-libsystemd) (push) Waiting to run
delete old workflow runs / delete_old_workflow_runs_branches (wip/optional-pci) (push) Waiting to run
delete old workflow runs / delete_old_workflow_runs_branches (wip/os-unexport) (push) Waiting to run
delete old workflow runs / delete_old_workflow_runs_branches (wip/pciaccess) (push) Waiting to run
delete old workflow runs / delete_old_workflow_runs_branches (wip/pedantic) (push) Waiting to run
delete old workflow runs / delete_old_workflow_runs_branches (wip/pixmap-lifecycle) (push) Waiting to run
delete old workflow runs / delete_old_workflow_runs_branches (wip/reallocarray) (push) Waiting to run
delete old workflow runs / delete_old_workflow_runs_branches (wip/requests) (push) Waiting to run
delete old workflow runs / delete_old_workflow_runs_branches (wip/screenproc) (push) Waiting to run
delete old workflow runs / delete_old_workflow_runs_branches (wip/screenproc-wrap) (push) Waiting to run
delete old workflow runs / delete_old_workflow_runs_branches (wip/swap0) (push) Waiting to run
delete old workflow runs / delete_old_workflow_runs_branches (wip/swapping) (push) Waiting to run
delete old workflow runs / delete_old_workflow_runs_branches (wip/swapping_new) (push) Waiting to run
delete old workflow runs / delete_old_workflow_runs_branches (wip/warn-conv) (push) Waiting to run
delete old workflow runs / delete_old_workflow_runs_branches (wip/win32_2) (push) Waiting to run
delete old workflow runs / delete_old_workflow_runs_branches (wip/xcb-marshal) (push) Waiting to run
delete old workflow runs / delete_old_workflow_runs_branches (wip/xf86_platform_bus_newabi) (push) Waiting to run
delete old workflow runs / delete_old_workflow_runs_branches (wip/xf86bigfont) (push) Waiting to run
delete old workflow runs / delete_old_workflow_runs_branches (wip/xi-properties) (push) Waiting to run
delete old workflow runs / delete_old_workflow_runs_branches (wip/xnest-render) (push) Waiting to run
delete old workflow runs / delete_old_workflow_runs_branches (wip/xnest-rootless) (push) Waiting to run
delete old workflow runs / delete_old_workflow_runs_branches (wip/xnest-shm) (push) Waiting to run
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
Some checks are pending
delete old workflow runs / delete_old_workflow_runs_branches (wip/logging_submitted_1) (push) Waiting to run
delete old workflow runs / delete_old_workflow_runs_branches (wip/maint-xnest) (push) Waiting to run
delete old workflow runs / delete_old_workflow_runs_branches (wip/marshal) (push) Waiting to run
delete old workflow runs / delete_old_workflow_runs_branches (wip/matrix-test) (push) Waiting to run
delete old workflow runs / delete_old_workflow_runs_branches (wip/meson) (push) Waiting to run
delete old workflow runs / delete_old_workflow_runs_branches (wip/misc.h) (push) Waiting to run
delete old workflow runs / delete_old_workflow_runs_branches (wip/mpbt) (push) Waiting to run
delete old workflow runs / delete_old_workflow_runs_branches (wip/netbsd) (push) Waiting to run
delete old workflow runs / delete_old_workflow_runs_branches (wip/no-libsystemd) (push) Waiting to run
delete old workflow runs / delete_old_workflow_runs_branches (wip/optional-pci) (push) Waiting to run
delete old workflow runs / delete_old_workflow_runs_branches (wip/os-unexport) (push) Waiting to run
delete old workflow runs / delete_old_workflow_runs_branches (wip/pciaccess) (push) Waiting to run
delete old workflow runs / delete_old_workflow_runs_branches (wip/pedantic) (push) Waiting to run
delete old workflow runs / delete_old_workflow_runs_branches (wip/pixmap-lifecycle) (push) Waiting to run
delete old workflow runs / delete_old_workflow_runs_branches (wip/reallocarray) (push) Waiting to run
delete old workflow runs / delete_old_workflow_runs_branches (wip/requests) (push) Waiting to run
delete old workflow runs / delete_old_workflow_runs_branches (wip/screenproc) (push) Waiting to run
delete old workflow runs / delete_old_workflow_runs_branches (wip/screenproc-wrap) (push) Waiting to run
delete old workflow runs / delete_old_workflow_runs_branches (wip/swap0) (push) Waiting to run
delete old workflow runs / delete_old_workflow_runs_branches (wip/swapping) (push) Waiting to run
delete old workflow runs / delete_old_workflow_runs_branches (wip/swapping_new) (push) Waiting to run
delete old workflow runs / delete_old_workflow_runs_branches (wip/warn-conv) (push) Waiting to run
delete old workflow runs / delete_old_workflow_runs_branches (wip/win32_2) (push) Waiting to run
delete old workflow runs / delete_old_workflow_runs_branches (wip/xcb-marshal) (push) Waiting to run
delete old workflow runs / delete_old_workflow_runs_branches (wip/xf86_platform_bus_newabi) (push) Waiting to run
delete old workflow runs / delete_old_workflow_runs_branches (wip/xf86bigfont) (push) Waiting to run
delete old workflow runs / delete_old_workflow_runs_branches (wip/xi-properties) (push) Waiting to run
delete old workflow runs / delete_old_workflow_runs_branches (wip/xnest-render) (push) Waiting to run
delete old workflow runs / delete_old_workflow_runs_branches (wip/xnest-rootless) (push) Waiting to run
delete old workflow runs / delete_old_workflow_runs_branches (wip/xnest-shm) (push) Waiting to run
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
Alan Coopersmith
1e5c56eb9a os: Use EVP APIs when building with OpenSSL 3
Some checks are pending
delete old workflow runs / delete_old_workflow_runs_branches (wip/logging_submitted_1) (push) Waiting to run
delete old workflow runs / delete_old_workflow_runs_branches (wip/maint-xnest) (push) Waiting to run
delete old workflow runs / delete_old_workflow_runs_branches (wip/marshal) (push) Waiting to run
delete old workflow runs / delete_old_workflow_runs_branches (wip/matrix-test) (push) Waiting to run
delete old workflow runs / delete_old_workflow_runs_branches (wip/meson) (push) Waiting to run
delete old workflow runs / delete_old_workflow_runs_branches (wip/misc.h) (push) Waiting to run
delete old workflow runs / delete_old_workflow_runs_branches (wip/mpbt) (push) Waiting to run
delete old workflow runs / delete_old_workflow_runs_branches (wip/netbsd) (push) Waiting to run
delete old workflow runs / delete_old_workflow_runs_branches (wip/no-libsystemd) (push) Waiting to run
delete old workflow runs / delete_old_workflow_runs_branches (wip/optional-pci) (push) Waiting to run
delete old workflow runs / delete_old_workflow_runs_branches (wip/os-unexport) (push) Waiting to run
delete old workflow runs / delete_old_workflow_runs_branches (wip/pciaccess) (push) Waiting to run
delete old workflow runs / delete_old_workflow_runs_branches (wip/pedantic) (push) Waiting to run
delete old workflow runs / delete_old_workflow_runs_branches (wip/pixmap-lifecycle) (push) Waiting to run
delete old workflow runs / delete_old_workflow_runs_branches (wip/reallocarray) (push) Waiting to run
delete old workflow runs / delete_old_workflow_runs_branches (wip/requests) (push) Waiting to run
delete old workflow runs / delete_old_workflow_runs_branches (wip/screenproc) (push) Waiting to run
delete old workflow runs / delete_old_workflow_runs_branches (wip/screenproc-wrap) (push) Waiting to run
delete old workflow runs / delete_old_workflow_runs_branches (wip/swap0) (push) Waiting to run
delete old workflow runs / delete_old_workflow_runs_branches (wip/swapping) (push) Waiting to run
delete old workflow runs / delete_old_workflow_runs_branches (wip/swapping_new) (push) Waiting to run
delete old workflow runs / delete_old_workflow_runs_branches (wip/warn-conv) (push) Waiting to run
delete old workflow runs / delete_old_workflow_runs_branches (wip/win32_2) (push) Waiting to run
delete old workflow runs / delete_old_workflow_runs_branches (wip/xcb-marshal) (push) Waiting to run
delete old workflow runs / delete_old_workflow_runs_branches (wip/xf86_platform_bus_newabi) (push) Waiting to run
delete old workflow runs / delete_old_workflow_runs_branches (wip/xf86bigfont) (push) Waiting to run
delete old workflow runs / delete_old_workflow_runs_branches (wip/xi-properties) (push) Waiting to run
delete old workflow runs / delete_old_workflow_runs_branches (wip/xnest-render) (push) Waiting to run
delete old workflow runs / delete_old_workflow_runs_branches (wip/xnest-rootless) (push) Waiting to run
delete old workflow runs / delete_old_workflow_runs_branches (wip/xnest-shm) (push) Waiting to run
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
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
Some checks are pending
delete old workflow runs / delete_old_workflow_runs_branches (wip/logging_submitted_1) (push) Waiting to run
delete old workflow runs / delete_old_workflow_runs_branches (wip/maint-xnest) (push) Waiting to run
delete old workflow runs / delete_old_workflow_runs_branches (wip/marshal) (push) Waiting to run
delete old workflow runs / delete_old_workflow_runs_branches (wip/matrix-test) (push) Waiting to run
delete old workflow runs / delete_old_workflow_runs_branches (wip/meson) (push) Waiting to run
delete old workflow runs / delete_old_workflow_runs_branches (wip/misc.h) (push) Waiting to run
delete old workflow runs / delete_old_workflow_runs_branches (wip/mpbt) (push) Waiting to run
delete old workflow runs / delete_old_workflow_runs_branches (wip/netbsd) (push) Waiting to run
delete old workflow runs / delete_old_workflow_runs_branches (wip/no-libsystemd) (push) Waiting to run
delete old workflow runs / delete_old_workflow_runs_branches (wip/optional-pci) (push) Waiting to run
delete old workflow runs / delete_old_workflow_runs_branches (wip/os-unexport) (push) Waiting to run
delete old workflow runs / delete_old_workflow_runs_branches (wip/pciaccess) (push) Waiting to run
delete old workflow runs / delete_old_workflow_runs_branches (wip/pedantic) (push) Waiting to run
delete old workflow runs / delete_old_workflow_runs_branches (wip/pixmap-lifecycle) (push) Waiting to run
delete old workflow runs / delete_old_workflow_runs_branches (wip/reallocarray) (push) Waiting to run
delete old workflow runs / delete_old_workflow_runs_branches (wip/requests) (push) Waiting to run
delete old workflow runs / delete_old_workflow_runs_branches (wip/screenproc) (push) Waiting to run
delete old workflow runs / delete_old_workflow_runs_branches (wip/screenproc-wrap) (push) Waiting to run
delete old workflow runs / delete_old_workflow_runs_branches (wip/swap0) (push) Waiting to run
delete old workflow runs / delete_old_workflow_runs_branches (wip/swapping) (push) Waiting to run
delete old workflow runs / delete_old_workflow_runs_branches (wip/swapping_new) (push) Waiting to run
delete old workflow runs / delete_old_workflow_runs_branches (wip/warn-conv) (push) Waiting to run
delete old workflow runs / delete_old_workflow_runs_branches (wip/win32_2) (push) Waiting to run
delete old workflow runs / delete_old_workflow_runs_branches (wip/xcb-marshal) (push) Waiting to run
delete old workflow runs / delete_old_workflow_runs_branches (wip/xf86_platform_bus_newabi) (push) Waiting to run
delete old workflow runs / delete_old_workflow_runs_branches (wip/xf86bigfont) (push) Waiting to run
delete old workflow runs / delete_old_workflow_runs_branches (wip/xi-properties) (push) Waiting to run
delete old workflow runs / delete_old_workflow_runs_branches (wip/xnest-render) (push) Waiting to run
delete old workflow runs / delete_old_workflow_runs_branches (wip/xnest-rootless) (push) Waiting to run
delete old workflow runs / delete_old_workflow_runs_branches (wip/xnest-shm) (push) Waiting to run
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
eb082584b6 os: utils: ‘VerifyDisplayName: fix array subscript signedness
Some checks are pending
delete old workflow runs / delete_old_workflow_runs_branches (wip/screenkey) (push) Waiting to run
delete old workflow runs / delete_old_workflow_runs_branches (wip/screenproc) (push) Waiting to run
delete old workflow runs / delete_old_workflow_runs_branches (wip/screenproc-old) (push) Waiting to run
delete old workflow runs / delete_old_workflow_runs_branches (wip/screenproc-wrap) (push) Waiting to run
delete old workflow runs / delete_old_workflow_runs_branches (wip/screenproc-wrap-debug) (push) Waiting to run
delete old workflow runs / delete_old_workflow_runs_branches (wip/sdk) (push) Waiting to run
delete old workflow runs / delete_old_workflow_runs_branches (wip/swap0) (push) Waiting to run
delete old workflow runs / delete_old_workflow_runs_branches (wip/swapping) (push) Waiting to run
delete old workflow runs / delete_old_workflow_runs_branches (wip/swapping_new) (push) Waiting to run
delete old workflow runs / delete_old_workflow_runs_branches (wip/troubleshoot-randr) (push) Waiting to run
delete old workflow runs / delete_old_workflow_runs_branches (wip/warn-conv) (push) Waiting to run
delete old workflow runs / delete_old_workflow_runs_branches (wip/werror) (push) Waiting to run
delete old workflow runs / delete_old_workflow_runs_branches (wip/win32_2) (push) Waiting to run
delete old workflow runs / delete_old_workflow_runs_branches (wip/xcb-marshal) (push) Waiting to run
delete old workflow runs / delete_old_workflow_runs_branches (wip/xcb-visuals) (push) Waiting to run
delete old workflow runs / delete_old_workflow_runs_branches (wip/xcb-xnest) (push) Waiting to run
delete old workflow runs / delete_old_workflow_runs_branches (wip/xf86_platform_bus_newabi) (push) Waiting to run
delete old workflow runs / delete_old_workflow_runs_branches (wip/xf86bigfont) (push) Waiting to run
delete old workflow runs / delete_old_workflow_runs_branches (wip/xi-properties) (push) Waiting to run
delete old workflow runs / delete_old_workflow_runs_branches (wip/xnest-multi) (push) Waiting to run
delete old workflow runs / delete_old_workflow_runs_branches (wip/xnest-render) (push) Waiting to run
delete old workflow runs / delete_old_workflow_runs_branches (wip/xnest-rootless) (push) Waiting to run
delete old workflow runs / delete_old_workflow_runs_branches (wip/xnest-rootless-old) (push) Waiting to run
delete old workflow runs / delete_old_workflow_runs_branches (wip/xnest-shm) (push) Waiting to run
delete old workflow runs / delete_old_workflow_runs_branches (wip/xrandr-bug) (push) Waiting to run
delete old workflow runs / delete_old_workflow_runs_branches (wip/xrandr-new-one) (push) Waiting to run
delete old workflow runs / delete_old_workflow_runs_branches (wip/xv-fix) (push) Waiting to run
delete old workflow runs / delete_old_workflow_runs_branches (wip/xv-generation) (push) Waiting to run
delete old workflow runs / delete_old_workflow_runs_branches (wip/xwin) (push) Waiting to run
delete old workflow runs / delete_old_workflow_runs_branches (wip/xwin-2) (push) Waiting to run
../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
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
19ee44b607 treewide: drop including <dix-config.h> from private includes
All .c sources must include <dix-config.h> at the very first.

Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
2025-12-04 19:50:44 +01:00
Enrico Weigelt, metux IT consult
f5a70d968c include: fix warning on XNFvasprintf() prototype
> ../os/xprintf.c: In function ‘XNFvasprintf’:
> ../os/xprintf.c:84:5: warning: function ‘XNFvasprintf’ might be a candidate for ‘gnu_printf’ format attribute [-Wsuggest-attribute=format]
>    84 |     int size = vasprintf(ret, format, va);
>       |     ^~~

Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
2025-12-04 17:28:58 +01:00
Enrico Weigelt, metux IT consult
71b25119f7 os: ResetHosts(): fix warning on potentially unitialized memory
> In function ‘ConvertAddr’,
>    inlined from ‘ResetHosts’ at ../os/access.c:1014:26:
> ../os/access.c:1540:25: warning: ‘saddr’ may be used uninitialized [-Wmaybe-uninitialized]
>  1540 |         if (16777343 == *(long *) &((struct sockaddr_in *) saddr)->sin_addr)
>       |                         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
> ../os/access.c: In function ‘ResetHosts’:
> ../os/access.c:908:7: note: ‘saddr’ declared here
>   908 |     } saddr;
>       |       ^~~~~

The union isn't needed at all, we're just using one of the fields anyways.

Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
2025-12-04 15:10:43 +01:00
Enrico Weigelt, metux IT consult
409e721e98 os: merge os/xstrans.c and os/transport.c
Since xtrans is now in-tree and already have been trimmed down
for only things needed by the Xserver, the split between xstrans.c
and transport.c isn't needed anymore.

Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
2025-12-03 13:15:58 +01:00
Enrico Weigelt, metux IT consult
e0ddc62bd0 os: add header for math related functions (possibly OS optimized)
Adding a new header for math related functions, beginning with new
MIN/MAX macros, which will be used by subsequent commits.

Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
2025-11-27 19:58:33 +01:00
Enrico Weigelt, metux IT consult
2fe5e2519a os: move OsCommRec/Ptr and related functions into own header
Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
2025-11-27 19:36:00 +01:00
Enrico Weigelt, metux IT consult
fda3695872 os: move MILLI_PER_MIN and MILLI_PER_SECOND to osdep.h
Not needed in public SDK, so move them into a private header.

Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
2025-11-27 11:58:45 +01:00
Enrico Weigelt, metux IT consult
07d6ca4254 os: move ComputeLocalClient() prototype to auth.h
Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
2025-11-27 10:45:36 +01:00
Enrico Weigelt, metux IT consult
ce75ddb0bb os: move OsVendorFatalError() and OsVendorInit() to ddx_priv.h
These are implemented by DDX, thus should be declared in ddx_priv.h

Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
2025-11-27 10:44:58 +01:00
Enrico Weigelt, metux IT consult
5532917d76 os: move AllowByteSwappedClients setting into DIX
Adding new source and header that's going to host all DIX
settings (set via cmdline or xf86 config file) in the future.

Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
2025-11-27 10:44:23 +01:00
Tautvis
e00b4b55c8 os: utils.c ignore '-reset' and '-noreset' command line arguments
Certain display managers (for example SDDM) starts X server with
-noreset flag and it is not user configurable. This patch add code to
ignore -noreset and -reset command line arguments to prevent X server
crash due to unknown arguments.

Signed-off-by: Tautvis <gtautvis@gmail.com>
2025-11-22 13:25:52 +01:00