Commit Graph
86871 Commits
Author SHA1 Message Date
noxiouz 8d421c0870 network: fix LLDP field type in Interface Varlink IDL
sd_lldp_tx_describe() returns a single object (the LLDP TX configuration),
but the IDL declared LLDP as SD_VARLINK_ARRAY|SD_VARLINK_NULLABLE. This
caused server-side validation failures ("Field 'LLDP' should be an array,
but it is of type 'object'") whenever networkctl status was called on an
interface with LLDP TX active.

Also fix the field comment: the LLDP field represents the transmit
configuration, not received neighbors.

Follow-up for dd2934d44e.
2026-03-03 00:04:50 +01:00
Frantisek Sumsal 864c08f575 import,nspawn: fix a couple of typos in mountfsd 2026-03-03 00:03:19 +01:00
Frantisek Sumsal 83b8daa032 nspawn: actually mask certain files under /proc/
/run/systemd/inaccessible/ exists only on host - in the container we have
/run/host/inaccessible/, and since all the inaccessible mounts have
MOUNT_IN_USERNS we need to use the latter one, otherwise the masking
gets silently skipped:

~# SYSTEMD_LOG_LEVEL=debug systemd-nspawn -q --directory=foo ls -la /proc/kallsyms
...
Bind-mounting /run/systemd/inaccessible/reg on /proc/kallsyms (MS_BIND "")...
Failed to mount /run/systemd/inaccessible/reg (type n/a) on /proc/kallsyms (MS_BIND ""): No such file or directory
Changing mount flags /proc/kallsyms (MS_RDONLY|MS_NOSUID|MS_NODEV|MS_NOEXEC|MS_REMOUNT|MS_BIND "")...
Failed to mount n/a (type n/a) on /proc/kallsyms (MS_RDONLY|MS_NOSUID|MS_NODEV|MS_NOEXEC|MS_REMOUNT|MS_BIND ""): Invalid argument
Bind-mounting /run/systemd/inaccessible/reg on /proc/kcore (MS_BIND "")...
Failed to mount /run/systemd/inaccessible/reg (type n/a) on /proc/kcore (MS_BIND ""): No such file or directory
Changing mount flags /proc/kcore (MS_RDONLY|MS_NOSUID|MS_NODEV|MS_NOEXEC|MS_REMOUNT|MS_BIND "")...
Failed to mount n/a (type n/a) on /proc/kcore (MS_RDONLY|MS_NOSUID|MS_NODEV|MS_NOEXEC|MS_REMOUNT|MS_BIND ""): Invalid argument
...
Inner child finished, invoking payload.
-r--r--r--. 1 root root 0 Feb 25 13:19 /proc/kallsyms
2026-03-02 20:22:06 +01:00
Yu Watanabe 6e59d22380 udev/varlink: ignore polkit related field
Follow-up for da7374b2ae.
2026-03-02 19:24:40 +01:00
Lennart Poettering e144a25b13 update TODO 2026-03-02 17:57:17 +01:00
Skye Soss 13db63e920 network: add DHCPv6 message types to string table (#40912)
Adds the DHCPv6 message types ADDR-REG-INFORM and
ADDR-REG-REPLY to the DHCPv6 message types string table.

Follow-up for 1e55da38aa.
2026-03-03 01:50:12 +09:00
Yu Watanabe 4b4eba1666 tree-wide: use _contains() rather than _get()/_find() 2026-03-02 23:10:22 +09:00
Lennart Poettering 8b3d3d6d67 journal-remote: fix error number confusion
See: https://lists.freedesktop.org/archives/systemd-devel/2026-February/051924.html
2026-03-02 23:09:53 +09:00
Yu Watanabe 503442817a login: fix two io.systemd.Login Varlink IDL issues (#40857)
Add missing NoSessionPIDFD error to the interface definition; the error
is emitted by vl_method_create_session() when the session leader process
does not have a pidfd available, but was never declared in the IDL.

Drop SD_JSON_MANDATORY from the ReleaseSession.Id dispatch entry so that
omitting the field (which the IDL allows via SD_VARLINK_NULLABLE)
resolves to the caller's own session via session_is_self(NULL).
2026-03-02 23:09:19 +09:00
Zbigniew Jędrzejewski-Szmek d4f13b4618 systemd/sd-varlink-idl.h: fix ABI breakage (#40903) 2026-03-02 14:08:22 +01:00
noxiouz 3d54a40dae login: add missing NoSessionPIDFD error to io.systemd.Login IDL
The error is emitted by vl_method_create_session() when the session leader
process does not have a pidfd available, but was never declared in the IDL.

Fixes: 3180c4d461
2026-03-02 10:08:57 +00:00
noxiouz 3eacf0d321 login: fix ReleaseSession.Id dispatch flag in io.systemd.Login Varlink handler
The ReleaseSession method's Id field is declared as nullable (?string) in
the IDL, allowing callers to omit it so that the method releases the
caller's own session via session_is_self(NULL). The SD_JSON_MANDATORY flag
in the dispatch table contradicts this and makes omitting Id return -EINVAL
("Invalid argument", parameter "Id") instead.

Drop the flag so omitting Id is treated as passing NULL.

Fixes: 2baca6c22b
2026-03-02 10:06:39 +00:00
Mike Yuan 93d768e0f3 systemd/sd-varlink-idl.h: fix ABI breakage
Follow-up for 2e51ed7fcb
2026-03-02 10:49:52 +01:00
Mike Yuan 452c576927 core/varlink-unit: use VARLINK_ERROR_UNIT_NO_SUCH_UNIT macro
Follow-up for 1fc868ac6b
2026-03-02 10:49:51 +01:00
Thomas Weißschuh 93101e7ef0 nspawn: allow cachestat systemcall
cachestat(2) is essentially a better variant of mincore(2).
As mincore(2) is already allowed, also allow cachestat(2).
2026-03-02 09:29:27 +01:00
Mike Yuan a12a4bdc9a pidref: do not tamper with pidref_acquire_pidfd_id() retval
If a pidfd id is passed to us, it must have originated from
somewhere, i.e. pidfs should be supported on the system.
Hence let's be honest about -EOPNOTSUPP, which might indicate
some bigger problems under the hood, rather than allowing
it to be turned into mild -ESRCH.
2026-03-02 15:25:53 +09:00
Ronan Pigott 8d720dea86 zsh: add systemd-id128 completions 2026-03-02 15:25:33 +09:00
Anton Tiurin ce1361d7b3 resolved: use DNS_TYPE_DNSKEY for trust anchor support (#40850)
Fix typo: DNS_TYPE_DNSKEY should be used instead of DNS_TYPE_KEY.
- DNS_TYPE_KEY is deprecated
- Source code at resolved-dns-trust-anchor.c#L313 handles
DNS_TYPE_DNSKEY records, but not DNS_TYPE_KEY
So DNS_TYPE_KEY is not referenced anywhere
2026-03-02 13:44:26 +09:00
Anton Tiurin 2506a57bca resolve: add missing ServiceNotProvided error to Varlink IDL (#40858)
The error is emitted by `vl_method_resolve_service_complete()` when an
SRV record with a root domain hostname is found, indicating the service
is explicitly not offered on the queried domain (RFC 2782 Usage Rules),

but was not declared in the `io.systemd.Resolve` interface definition.

Follow-up for 3d8f2c1464.
2026-03-02 13:22:14 +09:00
noxiouz 1fc868ac6b core: fix typo in Unit.List sentinel error name 2026-03-02 13:19:33 +09:00
Yu Watanabe 5ae3bb09c6 mountpoint-util: add overlay check to fstype_is_blockdev_backed() and simplify fstype_is_api_vfs() (#40866) 2026-03-02 13:15:14 +09:00
Yu Watanabe 3448e05150 core/exec-invoke: correct size for dont_close array in close_remaining_fds() (#40867) 2026-03-02 13:05:42 +09:00
Yu Watanabe 7de42b787d cryptsetup: fix 'tpm2-primary-alg' information in 'cryptsetup luksDump' (#40872)
It was noticed that cryptsetup luksDump outputs

  tpm2-primary-alg: ecc

regardless of the actual primary key type. Namely, in the situation when
RSA SRK is passed to 'systemd-cryptenroll', the output is incorrect and
misleading. Turns out 'tpm2-primary-alg' is not currently used for
unsealing as 'tpm2_srk' object has it in its properties but the
misleading information problem stays.

Fix the issue with a two-fold fix:
- Put the SRK primary alg type to the JSON token so 'cryptsetup
luksDump' has a chance to actually print the right information without
the need to inspect SRK.
- Avoid printing 'tpm2-primary-alg' when it is unset in the JSON as the
default 'ECC' may not match the reality.

No real functional change for the sealing/unsealing expected.
2026-03-02 12:40:40 +09:00
Val Markovic 4724cf5526 man: improve documentation for RestartSteps (#40879)
I found the existing explanation of RestartSteps to be simply
impenetrable. Even providing the full docs context to several of our new
AI overlords resulted in wildly different (and completely incorrect)
explanations of the final restart intervals.

Digging through the code, I found the restart delay computation in
`service_restart_usec_next` in `src/core/service.c`.

I've updated the documentation for RestartSteps with an example,
suggested value range and a detailed enough explanation that accurately
describes the current behavior.
2026-03-02 12:38:35 +09:00
Mario Limonciello 9d3b73d9bf udev: tag kfd devices for xaccess-render (#40888)
The kfd device is used for running compute workloads on AMD
GPUs. Users that are logged in should be able to run compute
so tag them like other DRM and ACCEL devices are.
2026-03-02 12:32:50 +09:00
IntenseWiggling 63fbe36d27 hwdb: add one more USB ID for 3D Connexion SpaceMouse Wireless BT (#40890)
The 3D Connexion SpaceMouse Wireless BT (256f:c63a) has an entry in
`70-mouse.hwdb` already as a bluetooth device, but it can also be
connected as a USB device.

`5-3.3: hwdb modalias key: "usb:v256FpC63A:SpaceMouse Wireless BT"`

Ref:
https://github.com/FreeSpacenav/spacenavd/blob/39856625a6de1e8c4b57c5938e1bf29d13cf1a9f/src/dev.c#L83
2026-03-02 12:31:29 +09:00
dependabot[bot] 298dc78821 build(deps): bump github/codeql-action in the actions group
Bumps the actions group with 1 update: [github/codeql-action](https://github.com/github/codeql-action).


Updates `github/codeql-action` from 4.32.0 to 4.32.4
- [Release notes](https://github.com/github/codeql-action/releases)
- [Changelog](https://github.com/github/codeql-action/blob/main/CHANGELOG.md)
- [Commits](https://github.com/github/codeql-action/compare/b20883b0cd1f46c72ae0ba6d1090936928f9fa30...89a39a4e59826350b863aa6b6252a07ad50cf83e)

---
updated-dependencies:
- dependency-name: github/codeql-action
  dependency-version: 4.32.4
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: actions
...

Signed-off-by: dependabot[bot] <support@github.com>
2026-03-02 12:30:25 +09:00
Mike Yuan eb8df25a37 core/exec-invoke: make fd array sizing less error-prone
History has clearly shown that we're terrible at keeping
the size of the dont_close array up-to-date. Hence let's
step away from a hardcoded max size for that, instead
always collect all fds in the array initializer and
let compiler figure it out, taking advantage of the fact
that close_all_fds() gracefully handles invalid fds in
the 'except' array.
2026-03-01 13:55:39 +01:00
Mike Yuan f2e7ba1074 core/exec-invoke: drop duplicate addition of handoff_timestamp_fd to dont_close array
Follow-up for 12001b1bf0

It is part of the keep_fds array already, which is intended
for fds that need to survive until the very end of executor
runtime, i.e. across the second close_all_fds() call.
2026-03-01 13:55:39 +01:00
Mike Yuan 0aa70bef5e core/exec-invoke: correct size for dont_close array in close_remaining_fds()
Follow-up for 79dd24cf14
2026-03-01 13:55:39 +01:00
Mike Yuan ec93edc4ca core/exec-invoke: fix potential double close of socket/bpffs fds on failure
The owned fds should be closed before close_all_fds() along the lines
of exec_params/runtime_close(), otherwise they would be left dangling
afterwards.
2026-03-01 13:55:39 +01:00
Mike Yuan b702bbc31c core/execute: drop redundant close of root_directory_fd
exec_params_shallow_clear() will take care of it.
2026-03-01 13:55:30 +01:00
Mike Yuan abffc0ef43 process-util: leave actual log fd closing to close_all_fds() if the latter will be done anyways 2026-03-01 13:18:19 +01:00
Ronan Pigott ac4a7a66bd zsh: add userdbctl completion 2026-03-01 10:26:15 +00:00
Weixie Cui 4980bd05b1 fix: check error with -ENOMEDIUM not ENOMEDIUM
Signed-off-by: Weixie Cui <cuiweixie@gmail.com>
2026-03-01 10:24:45 +00:00
Lennart Poettering d423ec258c nss-systemd,strv: use a common definition of a non-NULL but empty strv
Follow-up for: 239903d44c
2026-03-01 08:51:14 +01:00
Mike Yuan 8df624bfdd sd-varlink: add missing space 2026-02-28 12:01:06 +01:00
Mike Yuan 7982acff82 shared/pager: do not wait for process again after FORK_WAIT
Follow-up for fbd276cb86

Fixes #40873
2026-02-28 12:00:52 +01:00
Mike Yuan 04b3c2d199 tmpfiles: minor logging fixes (#40875) 2026-02-28 11:48:43 +01:00
Lennart Poettering da6162ecff NEWS: add various more features added in v260, and introduce more sections 2026-02-27 23:57:17 +01:00
Luca Boccassi 92d302570e Translations update from Fedora Weblate (#40876)
Translations update from [Fedora
Weblate](https://translate.fedoraproject.org) for
[systemd/main](https://translate.fedoraproject.org/projects/systemd/main/).



Current translation status:

![Weblate translation
status](https://translate.fedoraproject.org/widget/systemd/main/horizontal-auto.svg)
2026-02-27 17:27:30 +00:00
lumingzh 037dac9236 po: Translated using Weblate (Chinese (Simplified) (zh_CN))
Currently translated at 100.0% (266 of 266 strings)

Co-authored-by: lumingzh <lumingzh@qq.com>
Translate-URL: https://translate.fedoraproject.org/projects/systemd/main/zh_CN/
Translation: systemd/main
2026-02-27 16:58:42 +00:00
김인수 dee7df17e9 po: Translated using Weblate (Korean)
Currently translated at 100.0% (266 of 266 strings)

Co-authored-by: 김인수 <simmon@nplob.com>
Translate-URL: https://translate.fedoraproject.org/projects/systemd/main/ko/
Translation: systemd/main
2026-02-27 16:58:42 +00:00
Léane GRASSER be935ed628 po: Translated using Weblate (French)
Currently translated at 100.0% (266 of 266 strings)

Co-authored-by: Léane GRASSER <leane.grasser@proton.me>
Translate-URL: https://translate.fedoraproject.org/projects/systemd/main/fr/
Translation: systemd/main
2026-02-27 16:58:42 +00:00
Efstathios Iosifidis c9954f682b po: Translated using Weblate (Greek)
Currently translated at 100.0% (266 of 266 strings)

Co-authored-by: Efstathios Iosifidis <eiosifidis@yandex.com>
Translate-URL: https://translate.fedoraproject.org/projects/systemd/main/el/
Translation: systemd/main
2026-02-27 16:58:41 +00:00
Mike Yuan 476d0d7643 tmpfiles: downgrade log level for non-existent symlink target
I'm seeing a *lot* of noise induced by missing varlink sockets
under /run/host/ after 3363693935.
2026-02-27 17:11:41 +01:00
Mike Yuan b1c6bcf949 tmpfiles: fix doubled "/" in root + path logging 2026-02-27 17:07:43 +01:00
Vitaly Kuznetsov 4883ef8aae cryptsetup-tokens: Print tpm2-primary-alg: only when it is known
When 'tpm2-primary-alg' is missing in LUKS JSON token, the output of
'cryptsetup luksDump' is always:

	tpm2-primary-alg: ecc

because tpm2_parse_luks2_json() returns the default (TPM2_ALG_ECC). This can be
misleading and wrong. Make tpm2_parse_luks2_json() return the reality and move
the default to tpm2_unseal().
2026-02-27 14:22:22 +01:00
Pontus Lundkvist 352bb934fe mountpoint-util: remove duplicate check in fstype_is_api_vfs()
devtmpfs is part of the @basic-api filesystem-set
2026-02-27 14:10:27 +01:00
Pontus Lundkvist d4acc09d9d mountpoint-util: add exempt for overlay in fstype_is_blockdev_backed()
This allows `systemd-mount` to be used with --type overlay
2026-02-27 14:06:09 +01:00