]> git.ipfire.org Git - thirdparty/systemd.git/log
thirdparty/systemd.git
4 months agobus-util: coding style cleanups 37867/head
Yu Watanabe [Tue, 17 Jun 2025 14:52:11 +0000 (23:52 +0900)] 
bus-util: coding style cleanups

- replace `type *func()` -> `type* func()`,
- rename arguments for storing results.

4 months ago sd-bus: coding style cleanups
Yu Watanabe [Tue, 17 Jun 2025 13:39:09 +0000 (22:39 +0900)] 
 sd-bus: coding style cleanups

- replace `type *func()` -> `type* func()`,
- rename arguments for storing results,
- add several missing assertions.

4 months agosd-bus: BusMessageContainer.begin is always zero in sd_bus_message_open_container()
Yu Watanabe [Tue, 17 Jun 2025 15:21:11 +0000 (00:21 +0900)] 
sd-bus: BusMessageContainer.begin is always zero in sd_bus_message_open_container()

4 months agoboot: fix typo
Yu Watanabe [Tue, 17 Jun 2025 16:47:45 +0000 (01:47 +0900)] 
boot: fix typo

Follow-up for cab9c7b5a42effa8a45611fc6b8556138c869b5f.

4 months agocgroup-util: Always open cgroupv2 attribute files in O_NONBLOCK mode
Daan De Meyer [Tue, 22 Apr 2025 08:36:21 +0000 (10:36 +0200)] 
cgroup-util: Always open cgroupv2 attribute files in O_NONBLOCK mode

As explained in https://lore.kernel.org/all/20250419183545.1982187-1-shakeel.butt@linux.dev/,
writing to memory.max or memory.high triggers synchronous memory reclaim
if the limit is lowered. This can end up taking nonnegligible amounts
of time, completely blocking pid1 from doing any other work while the
reclaim is ongoing.

To address this problem, the kernel going to add O_NONBLOCK semantics
to memory.max and memory.high. If the file is opened with O_NONBLOCK,
the synchronous memory reclaim is skipped and only triggered later
without blocking the process writing the file. Let's make sure we make
use of this by opening cgroupv2 attribute files with O_NONBLOCK.

We opt to do this for all cgroupv2 attribute files, to make sure that
if the same problem happens elsewhere in the future and is fixed in the
same way, we immediately take advantage of that fix without having to
make changes in systemd as well. We probably never want to block when
writing cgroupv2 attributes and any cases where we do want to block should
indicate so explicitly instead of blocking by default.

4 months agocore/timer: Introduce RandomOffsetSec= knob (#36437)
Lennart Poettering [Tue, 17 Jun 2025 14:05:12 +0000 (16:05 +0200)] 
core/timer: Introduce RandomOffsetSec= knob (#36437)

This is like RandomDelaySec, but it doesn't reset whenever the manager
restarts.

Fixes https://github.com/systemd/systemd/issues/21166

4 months agovarious: turn off SO_PASSRIGHTS where fds are not expected (#37759)
Lennart Poettering [Tue, 17 Jun 2025 13:37:35 +0000 (15:37 +0200)] 
various: turn off SO_PASSRIGHTS where fds are not expected (#37759)

4 months agostub: call inner kernel directly (#37372)
Lennart Poettering [Tue, 17 Jun 2025 12:34:53 +0000 (14:34 +0200)] 
stub: call inner kernel directly (#37372)

Since shim 16, it is not possible anymore to override the security arch
protocol to avoid signature check and measurements.

Also on Dell servers, EFI_SECURITY2_ARCH_PROTOCOL is not implemented, so
unexpected measurements on PCR 4 were still happening.

This just loads and run the kernel pe. We verify that there is no
relocation needed. Also for simplification, we assume and verify that
the base address is expected to be 0.

4 months agonetwork/dhcp-server: improvements for saving/loading leases (#37835)
Lennart Poettering [Tue, 17 Jun 2025 12:31:22 +0000 (14:31 +0200)] 
network/dhcp-server: improvements for saving/loading leases (#37835)

4 months agoman: fix varname copypasta
Luca Boccassi [Sat, 14 Jun 2025 00:44:11 +0000 (01:44 +0100)] 
man: fix varname copypasta

4 months agovarious: turn off SO_PASSRIGHTS where fds are not expected 37759/head
Mike Yuan [Fri, 6 Jun 2025 20:00:52 +0000 (22:00 +0200)] 
various: turn off SO_PASSRIGHTS where fds are not expected

4 months agosd-varlink: hook up fd passing control with SO_PASSRIGHTS
Mike Yuan [Fri, 6 Jun 2025 19:47:39 +0000 (21:47 +0200)] 
sd-varlink: hook up fd passing control with SO_PASSRIGHTS

This is a tricky one, because we effectively turn fd passing input
toggle into a tristate: unset, disabled, and enabled; whereas unset
and disabled were identical previously. *Unset* state silently
ignores SCM_RIGHTS passed by invoking recv() instead of recvmsg(),
and for disabled we now disable SO_PASSRIGHTS completely.

The plot thickens when it comes to the server, since we want to
turn off the SO_PASSRIGHTS already on the listening socket so that
there's no race between accept() and recvmsg() wrt SO_PASSRIGHTS state.
However, if we do this unconditionally, the existing use case of
creating a custom connection callback and enabling fd passing there
would be broken.

Hence, let's introduce a new flag,
SD_VARLINK_SERVER_FD_PASSING_INPUT_STRICT, which when set
ties the enablement of fd passing to SO_PASSRIGHTS in server,
and set it for all our varlink servers.

Refer to the previous commit for the rationale behind return value
change in sd_varlink_set_allow_fd_passing_input().

4 months agosd-varlink: unify AF_UNIX check in sd_varlink_set_allow_fd_passing_output()
Mike Yuan [Mon, 9 Jun 2025 22:01:53 +0000 (00:01 +0200)] 
sd-varlink: unify AF_UNIX check in sd_varlink_set_allow_fd_passing_output()

Currently, the socket type is only checked if the fd passing is
being enabled. The special handling seems unnecessary though,
as in the disable case, either fd passing is already false and
would be caught by the (... == !!b) shortcut at the beginning,
or the AF_UNIX check wouldn't have succeeded in the first place,
for the initial toggle to true. Hence, just uniformly check
AF_UNIX.

While at it, sd_varlink_set_allow_fd_passing_*() oddly return 1
iff changed and !b, which doesn't fit into our coding style and
I can't come up with any use case for such behavior. Let's
return 1 on changed and 0 otherwise.

sd_varlink_set_allow_fd_passing_input() will be fixed in the later
commits with other enhancements.

4 months agosd-varlink: remove unneeded strdup()
Mike Yuan [Mon, 9 Jun 2025 18:06:59 +0000 (20:06 +0200)] 
sd-varlink: remove unneeded strdup()

4 months agologind: port one remaining varlink server allocation to varlink_server_new()
Mike Yuan [Fri, 6 Jun 2025 21:07:02 +0000 (23:07 +0200)] 
logind: port one remaining varlink server allocation to varlink_server_new()

4 months agonotify-recv: disable SO_PASSRIGHTS by default in notify_socket_prepare()
Mike Yuan [Thu, 5 Jun 2025 21:01:09 +0000 (23:01 +0200)] 
notify-recv: disable SO_PASSRIGHTS by default in notify_socket_prepare()

4 months agocore/socket: introduce AcceptFileDescriptors=
Mike Yuan [Fri, 6 Jun 2025 19:01:33 +0000 (21:01 +0200)] 
core/socket: introduce AcceptFileDescriptors=

This controls the new SO_PASSRIGHTS socket option in kernel v6.16.
Note that I intentionally choose a different naming scheme than
Pass*=, since all other Pass*= options controls whether some extra
bits are attached to the message, while this one's about denying
file descriptor transfer and it feels more explicit this way.
And diverging from underlying socket option name is precedented
by Timestamping=. But happy to change it to just say PassRights=
if people disagree.

4 months agomissing_socket: add SO_PASSRIGHTS
Mike Yuan [Thu, 5 Jun 2025 21:00:40 +0000 (23:00 +0200)] 
missing_socket: add SO_PASSRIGHTS

4 months agocore/socket: add PassPIDFD=
Mike Yuan [Tue, 10 Jun 2025 09:27:44 +0000 (11:27 +0200)] 
core/socket: add PassPIDFD=

4 months agocore/socket: use universal format string for socket option warnings
Mike Yuan [Tue, 10 Jun 2025 09:26:04 +0000 (11:26 +0200)] 
core/socket: use universal format string for socket option warnings

4 months agocore/socket: don't suggest PassFileDescriptorsToExec= is a socket option
Mike Yuan [Fri, 6 Jun 2025 18:31:19 +0000 (20:31 +0200)] 
core/socket: don't suggest PassFileDescriptorsToExec= is a socket option

by not interleaving it among socket options.

4 months agoudev-ctrl: enable SO_PASSCREDS on listening socket already rather than on accept()
Mike Yuan [Fri, 6 Jun 2025 18:06:45 +0000 (20:06 +0200)] 
udev-ctrl: enable SO_PASSCREDS on listening socket already rather than on accept()

This matches what systemd-udevd-control.socket does.

4 months agounits/systemd-journald@.socket: enable SO_TIMESTAMP
Mike Yuan [Fri, 16 May 2025 17:08:34 +0000 (19:08 +0200)] 
units/systemd-journald@.socket: enable SO_TIMESTAMP

Follow-up for 02229dff2b371f3a6235fe18ea72e972ddbc90a9

This applies the change to journal namespace instances too.

4 months agoREADME: add more kernel APIs we now utilize
Mike Yuan [Thu, 5 Jun 2025 21:04:16 +0000 (23:04 +0200)] 
README: add more kernel APIs we now utilize

4 months agolog: drop redundant forward decl
Mike Yuan [Thu, 5 Jun 2025 20:37:29 +0000 (22:37 +0200)] 
log: drop redundant forward decl

These are defined in forward.h already.

4 months agosd-bus: Preserve interfaces addition order
Arkadiusz Bokowy [Thu, 12 Jun 2025 14:20:29 +0000 (16:20 +0200)] 
sd-bus: Preserve interfaces addition order

When adding a new interface to the object add it at the end of the list.
This way, when iterating over the list, e.g., during handling introspect
call, the order of returned interfaces will mach the order in which they
were added.

4 months agohostname-util: introduce machine_spec_valid() and check --machine= value everywhere...
Lennart Poettering [Tue, 17 Jun 2025 07:34:22 +0000 (09:34 +0200)] 
hostname-util: introduce machine_spec_valid() and check --machine= value everywhere (#37851)

Replaces #32999

Addresses
https://github.com/systemd/systemd/pull/37741#discussion_r2128482378

4 months agofstab-generator: log about the fstype in effect
Mike Yuan [Mon, 16 Jun 2025 23:28:39 +0000 (01:28 +0200)] 
fstab-generator: log about the fstype in effect

4 months agofstab-generator: set mode=0755 with root=tmpfs
Luca Boccassi [Mon, 16 Jun 2025 22:28:57 +0000 (23:28 +0100)] 
fstab-generator: set mode=0755 with root=tmpfs

If mode= is not set in rootflags= add mode=0755 when a tmpfs
is used on the rootfs, otherwise it will be group/world writable
as that's the default mode for tmpfs filesystems.

Follow-up for 725ad3b06288b2beeaaf178120010612a30646e4

4 months agomkosi: update debian commit reference to 01b5b96a2f85594c2c8caf5d10048a4ec41f9d89
Luca Boccassi [Mon, 16 Jun 2025 23:40:56 +0000 (00:40 +0100)] 
mkosi: update debian commit reference to 01b5b96a2f85594c2c8caf5d10048a4ec41f9d89

01b5b96a2f Install new files for upstream build
a4bdf87f03 Revert "systemd-boot: always pull in systemd-boot-efi on amd64/arm64"
e29629dcaf systemd-boot: always pull in systemd-boot-efi on amd64/arm64
f0202aa0aa Update changelog for 257.6-1 release
7a5572e94d Drop patches, merged upstream
ece0caddcf Set upstream metadata fields: Security-Contact
a71d94c611 systemd-boot: fix BOOT.CSV usage

4 months agotree-wide: check --machine= specification 37851/head
Mike Yuan [Mon, 16 Jun 2025 23:48:08 +0000 (01:48 +0200)] 
tree-wide: check --machine= specification

Addresses https://github.com/systemd/systemd/pull/37741#discussion_r2128482378

4 months agosd-bus: port to machine_spec_valid()
Mike Yuan [Sun, 15 Jun 2025 17:51:26 +0000 (19:51 +0200)] 
sd-bus: port to machine_spec_valid()

4 months agohostname-util: introduce machine_spec_valid()
Mike Yuan [Sun, 15 Jun 2025 17:18:37 +0000 (19:18 +0200)] 
hostname-util: introduce machine_spec_valid()

4 months agohostname-util: do not allow empty machine spec
Mike Yuan [Sun, 15 Jun 2025 17:13:22 +0000 (19:13 +0200)] 
hostname-util: do not allow empty machine spec

Follow-up for 2ae32e9d8fc95010ee4b52b3118ea9fbf05d96d6

Let's not open this up even further and rather disallow
--machine="".

4 months agoUpdate distro packaging commits (#37765)
Yu Watanabe [Mon, 16 Jun 2025 19:46:44 +0000 (04:46 +0900)] 
Update distro packaging commits (#37765)

4 months agomkosi: update fedora commit reference to 7de88c66bdc26920db570e67ef74e579f8461d9c 37765/head
Daan De Meyer [Fri, 6 Jun 2025 13:16:08 +0000 (15:16 +0200)] 
mkosi: update fedora commit reference to 7de88c66bdc26920db570e67ef74e579f8461d9c

7de88c66bd Do not mark symlinks as %ghost
92c16c1dab Let systemd-{sysusers,shared} conflict with older systemd
ed6b885327 Version 257.6
5a53eac13c Package pcrlock files together with systemd-pcrlock
2192e86112 Move mount.ddi symlinks to -container subpackage
451184cbea Revert "Disable freezing of user sessions"
f6af46db12 Backport adb/fastboot udev rules (BZ#2356537)
f6b814cc0f Backport CI fix
d304477023 Version 257.5

4 months agomkosi: update opensuse commit reference to 2dc224ae5d446e928519315f4d46f76d1e34b8a8
Daan De Meyer [Fri, 6 Jun 2025 13:16:05 +0000 (15:16 +0200)] 
mkosi: update opensuse commit reference to 2dc224ae5d446e928519315f4d46f76d1e34b8a8

2dc224ae5d Update systemd to version 257.6 / rev 448 via SR 1281804
15818e66dd Update systemd to version 257.5 / rev 447 via SR 1278063
2480ac89f0 Update 000product to rev 4383
c381cdada8 update 2025-04-11 16:42
bb036b2b8e Update systemd to version 257.4 / rev 444 via SR 1252776
55ae12d80b Update systemd to version 257.3 / rev 443 via SR 1249841
a7fcf45b77 Update systemd to version 257.3 / rev 442 via SR 1247443

4 months agomkosi: update arch commit reference to 15cb472aeb4d93d7fae9c7b7bc2cd6723bc8ec85
Daan De Meyer [Fri, 6 Jun 2025 13:15:34 +0000 (15:15 +0200)] 
mkosi: update arch commit reference to 15cb472aeb4d93d7fae9c7b7bc2cd6723bc8ec85

15cb472aeb upgpkg: 257.6-1: new upstream release
1c11767e01 upgpkg: 257.5-3: backlight: Drop support for actual_brightness
489e88099e upgpkg: 257.5-2: fast-forward to current v257-stable

4 months agoresolve: several further fixes for reloading config (#37856)
Yu Watanabe [Mon, 16 Jun 2025 15:23:56 +0000 (00:23 +0900)] 
resolve: several further fixes for reloading config (#37856)

Fixes #37843.

4 months agoterminal-util: fix doubled 'to' in log messages
Yu Watanabe [Mon, 16 Jun 2025 13:25:24 +0000 (22:25 +0900)] 
terminal-util: fix doubled 'to' in log messages

Follow-up for 3390be38d19c9d339bbc0e003743ce4278aa58b6.

4 months agoTEST-75-RESOLVED: add test case for reloading DNSStubListenerExtra= 37856/head
Yu Watanabe [Mon, 16 Jun 2025 10:13:51 +0000 (19:13 +0900)] 
TEST-75-RESOLVED: add test case for reloading DNSStubListenerExtra=

4 months agomanager: also restart stub listner on reload
Yu Watanabe [Mon, 16 Jun 2025 08:55:11 +0000 (17:55 +0900)] 
manager: also restart stub listner on reload

Previously, the extra stub listners were stopped but new ones were not
started. Also, the main stub listners were not restarted, hence the
new settings were not applied. This fixes the above two issues.

Note, to fix the issue, we need to keep CAP_NET_BIND_SERVICE capability
to make it allow to bind stub listner later.

Fixes #37843.

4 months agoresolve: several cleanups for manager_dispatch_reload_signal()
Yu Watanabe [Mon, 16 Jun 2025 08:51:49 +0000 (17:51 +0900)] 
resolve: several cleanups for manager_dispatch_reload_signal()

- set defaults after all existing configs and setups cleared,
- mention failures are ignored in log messages,
- drop one redundant log message,
- do not return negative errno but exit event loop on critical failure.

4 months agoresolve: several cleanups for manager_new()
Yu Watanabe [Mon, 16 Jun 2025 08:45:11 +0000 (17:45 +0900)] 
resolve: several cleanups for manager_new()

- mention the error is ignored in the log message,
- drop redundant log message, as dnssd_load() logs on failure,
- voidify manager_load_delegates().

4 months agoresolve: coding style fix
Yu Watanabe [Mon, 16 Jun 2025 08:13:42 +0000 (17:13 +0900)] 
resolve: coding style fix

4 months agoresolve: fix indentation
Yu Watanabe [Mon, 16 Jun 2025 08:11:29 +0000 (17:11 +0900)] 
resolve: fix indentation

4 months agoterminal-util: modernize ptsname_malloc a bit
Mike Yuan [Sun, 15 Jun 2025 19:25:34 +0000 (21:25 +0200)] 
terminal-util: modernize ptsname_malloc a bit

4 months agonetwork/tunnel: several cleanups for Mode= setting and make sit and ipip tunnel suppo...
Yu Watanabe [Mon, 16 Jun 2025 11:07:38 +0000 (20:07 +0900)] 
network/tunnel: several cleanups for Mode= setting and make sit and ipip tunnel support it (#37853)

Closing #37377.

4 months agomeson: enable -Werror=missing-parameter-name
Mike Yuan [Sun, 15 Jun 2025 23:44:12 +0000 (01:44 +0200)] 
meson: enable -Werror=missing-parameter-name

4 months agosocket-util: drop duplicate SCM_MAX_FD definition
Mike Yuan [Sun, 15 Jun 2025 19:27:56 +0000 (21:27 +0200)] 
socket-util: drop duplicate SCM_MAX_FD definition

We already carry it in missing_socket.h

4 months agotest-network: add tests for tunnel mode 37853/head
Yu Watanabe [Sun, 15 Jun 2025 05:48:20 +0000 (14:48 +0900)] 
test-network: add tests for tunnel mode

4 months agonetwork/tunnel: make sit and ipip tunnel support Mode= setting
Yu Watanabe [Mon, 16 Jun 2025 07:47:49 +0000 (16:47 +0900)] 
network/tunnel: make sit and ipip tunnel support Mode= setting

Closing #37377.

4 months agonetwork/tunnel: rename Ip6TnlMode to TunnelMode
Yu Watanabe [Mon, 16 Jun 2025 07:42:38 +0000 (16:42 +0900)] 
network/tunnel: rename Ip6TnlMode to TunnelMode

This also makes ip6tnl can be created without specifying Mode= setting,
as the kernel accepts new-link netlink message without the
IFLA_IPTUN_PROTO attribute.

No effective functional change, just refactoring and preparation for
later change.

4 months agosocket-activate: add a --now option to instantly start service (#37620)
Mike Yuan [Mon, 16 Jun 2025 00:08:57 +0000 (02:08 +0200)] 
socket-activate: add a --now option to instantly start service (#37620)

4 months agotest: add simple tests for systemd-socket-activate tool 37620/head
Daniel Foster [Tue, 27 May 2025 03:43:39 +0000 (13:43 +1000)] 
test: add simple tests for systemd-socket-activate tool

4 months agotest-network: add test case for issue #37714
Yu Watanabe [Sat, 14 Jun 2025 18:41:31 +0000 (03:41 +0900)] 
test-network: add test case for issue #37714

I cannot reproduce the issue with the current git HEAD.
Let's add a test case that is used by the reporter of the issue.

4 months agonetworkd: actually install 80-namespace-ns-tun.*
Lennart Poettering [Fri, 13 Jun 2025 15:04:47 +0000 (17:04 +0200)] 
networkd: actually install 80-namespace-ns-tun.*

Follow-up for: 19ac01efef6fa17f77b4510c1f14af316a13f40c

4 months agounits: make sure the network tap driver is actually loaded
Lennart Poettering [Fri, 13 Jun 2025 13:14:06 +0000 (15:14 +0200)] 
units: make sure the network tap driver is actually loaded

We have the After= line, but not the Wants= line. Fix that.

4 months agonsresourced: make sure "tun" driver is properly loaded and accessible
Lennart Poettering [Fri, 13 Jun 2025 13:12:25 +0000 (15:12 +0200)] 
nsresourced: make sure "tun" driver is properly loaded and accessible

We need access to /dev/net/tun, hence make sure we can actually see
/dev/. Also make sure the module is properly loaded before we operate,
given that we run with limit caps. But then again give the CAP_NET_ADMIN
cap, since we need to configure the network tap/tun devices.

Follow-up for: 1365034727b3322e0adf371700cc540a1bcd95c1

4 months agoNEWS: mention PersistLeases=runtime in [DHCPServer] 37835/head
Yu Watanabe [Fri, 13 Jun 2025 18:53:03 +0000 (03:53 +0900)] 
NEWS: mention PersistLeases=runtime in [DHCPServer]

4 months agonetwork: use PersistLeases=runtime on container/VM/namespace network interfaces
Yu Watanabe [Fri, 13 Jun 2025 18:46:17 +0000 (03:46 +0900)] 
network: use PersistLeases=runtime on container/VM/namespace network interfaces

Follow-up for 9ccc369ff30138b9c2cf3ed8faf28d8fe42f8377.

Then, we can safely restart networkd or reconfigure the interface.

4 months agotest-network: add test case for PersistLeases=runtime
Yu Watanabe [Fri, 13 Jun 2025 18:42:24 +0000 (03:42 +0900)] 
test-network: add test case for PersistLeases=runtime

4 months agonetwork/dhcp-server: save and load leases in runtime directory when PersistLeases...
Yu Watanabe [Fri, 13 Jun 2025 18:41:20 +0000 (03:41 +0900)] 
network/dhcp-server: save and load leases in runtime directory when PersistLeases=runtime

With 9ccc369ff30138b9c2cf3ed8faf28d8fe42f8377, PersistLeases= is
disabled on the host side virtual interfaces for containers.

However, even it is not necessary to save the leases for containers
on a persistent storage, still we should save them on somewhere.
Otherwise, leases will be lost when networkd on the host is restarted
or the host side interface is reconfigured.

This introduce PersistLeases=runtime to save and load leases on runtime
storage.

4 months agosd-dhcp-server: reopen fd only when it is valid
Yu Watanabe [Fri, 13 Jun 2025 15:27:06 +0000 (00:27 +0900)] 
sd-dhcp-server: reopen fd only when it is valid

Fixes a bug in 11b88419ae0004547a0724aa459ddcb5d243f25c.

4 months agonetwork: hash_ops related fixlets (#37832)
Yu Watanabe [Fri, 13 Jun 2025 17:51:08 +0000 (02:51 +0900)] 
network: hash_ops related fixlets (#37832)

Fixes #37830.

4 months agoupdate TODO
Lennart Poettering [Fri, 13 Jun 2025 16:47:36 +0000 (18:47 +0200)] 
update TODO

4 months agonetwork: use dns_name_hash_ops_free to manage domains 37832/head
Yu Watanabe [Fri, 13 Jun 2025 15:08:41 +0000 (00:08 +0900)] 
network: use dns_name_hash_ops_free to manage domains

4 months agoordered-set: introduce ordered_set_put_strdup_full() and friends which take hash ops
Yu Watanabe [Fri, 13 Jun 2025 15:05:59 +0000 (00:05 +0900)] 
ordered-set: introduce ordered_set_put_strdup_full() and friends which take hash ops

4 months agonetwork: use the same hash ops used when allocated
Yu Watanabe [Fri, 13 Jun 2025 14:46:26 +0000 (23:46 +0900)] 
network: use the same hash ops used when allocated

Fixes #37830.

4 months agonetwork/can: properly handle CAN.RestartSec=0
Ryan Blue [Fri, 13 Jun 2025 05:36:47 +0000 (01:36 -0400)] 
network/can: properly handle CAN.RestartSec=0

Previously, 0 was ignored and restart-ms wouldn't get added to the
netlink message. Instead, set the attribute unconditionally.

4 months agostub: call LoadImage/StartImage from boot services when provided by shim 37372/head
Valentin David [Wed, 11 Jun 2025 08:38:14 +0000 (10:38 +0200)] 
stub: call LoadImage/StartImage from boot services when provided by shim

4 months agozsh: complete positional devpath in udevadm info/trigger
Ronan Pigott [Fri, 13 Jun 2025 09:09:55 +0000 (02:09 -0700)] 
zsh: complete positional devpath in udevadm info/trigger

4 months agoudev/rules.d: import hwdb before calling net_id builtin
Yu Watanabe [Thu, 12 Jun 2025 09:25:54 +0000 (18:25 +0900)] 
udev/rules.d: import hwdb before calling net_id builtin

The commit cdcb1eeeb883b2ecb3992865f458f874900ddb87 adds
ID_NET_NAME_INCLUDE_DOMAIN property support in net_id builtin.
The property is basically set through hwdb. However, previously hwdb was
imported after calling net_id builtin, hence when net_id is called, the
property was never set.

This makes hwdb is imported before calling net_id builtin, so that the
property is set when net_id is called if hwdb has an entry about that
for the interface.

Follow-up for cdcb1eeeb883b2ecb3992865f458f874900ddb87.
Fixes #37758.

4 months agonetwork/dhcpv4: add ability to use BOOTP (#34888)
Yu Watanabe [Fri, 13 Jun 2025 08:12:19 +0000 (17:12 +0900)] 
network/dhcpv4: add ability to use BOOTP (#34888)

BOOTP can be used to sign a static IP to clients. Instead of using the
four message exchange, and Option 53 (DHCP Message Type) there is only a
two message exchange.

Add the following network option to enable BOOTP:

[DHCPv4]
BOOTP=yes

This will allow a two message request / reply sequence that doesn't
require DHCP message types.

Fixes: #34885
4 months agotest-network: add test case for bootp 34888/head
Avram Dorfman [Wed, 18 Dec 2024 18:56:44 +0000 (13:56 -0500)] 
test-network: add test case for bootp

Co-authored-by: Yu Watanabe <watanabe.yu+github@gmail.com>
4 months agonetwork/dhcp4: release previously acquired DHCP lease when BOOTP will be enabled
Yu Watanabe [Thu, 12 Jun 2025 22:24:04 +0000 (07:24 +0900)] 
network/dhcp4: release previously acquired DHCP lease when BOOTP will be enabled

4 months agonetwork/dhcp4: add ability to use BOOTP
Colin Foster [Tue, 22 Oct 2024 18:26:36 +0000 (13:26 -0500)] 
network/dhcp4: add ability to use BOOTP

Add the following network option to enable BOOTP:

[DHCPv4]
Bootp=yes

This will allow a two message request / reply sequence that doesn't
require DHCP message types.

Co-authored-by: Avram Dorfman <dorfman@est.org>
4 months agotest-dhcp-client: add test for bootp clients
Colin Foster [Tue, 29 Oct 2024 00:50:06 +0000 (19:50 -0500)] 
test-dhcp-client: add test for bootp clients

Verify that BOOTP replies are successfully handled by the sd-dhcp-client
when configured for BOOTP.

Co-authored-by: Avram Dorfman <dorfman@est.org>
4 months agosd-dhcp-client: add ability to support bootp
Colin Foster [Wed, 30 Oct 2024 01:50:58 +0000 (20:50 -0500)] 
sd-dhcp-client: add ability to support bootp

BOOTP can be used to sign a static IP to clients. Instead of using the
four message exchange, and Option 53 (DHCP Message Type) there is only a
two message exchange. This adds the support for this exchange.

Co-authored-by: Avram Dorfman <dorfman@est.org>
Co-authored-by: Yu Watanabe <watanabe.yu+github@gmail.com>
4 months agosd-dhcp-client: move comment to relevant place
Yu Watanabe [Thu, 12 Jun 2025 20:59:56 +0000 (05:59 +0900)] 
sd-dhcp-client: move comment to relevant place

4 months agodhcp: several coding style cleanups
Yu Watanabe [Thu, 12 Jun 2025 20:44:23 +0000 (05:44 +0900)] 
dhcp: several coding style cleanups

- rename arguments for storing results,
- reorder arguments to move ret_xyz at the end,
- add several missing assertions.

4 months agodhcp: relocate type field
Colin Foster [Wed, 11 Jun 2025 10:50:20 +0000 (05:50 -0500)] 
dhcp: relocate type field

The type field is a DHCP-specific parameter. Relocate the parameter so
there is a clearer separation between DHCP and BOOTP parameters.

4 months agodiscover-image: several cleanups around image_discover() (#37813)
Yu Watanabe [Thu, 12 Jun 2025 22:57:28 +0000 (07:57 +0900)] 
discover-image: several cleanups around image_discover() (#37813)

4 months agopo: Translated using Weblate (Greek)
Jim Spentzos [Thu, 12 Jun 2025 22:49:46 +0000 (22:49 +0000)] 
po: Translated using Weblate (Greek)

Currently translated at 34.6% (89 of 257 strings)

Co-authored-by: Jim Spentzos <jimspentzos2000@gmail.com>
Translate-URL: https://translate.fedoraproject.org/projects/systemd/main/el/
Translation: systemd/main

4 months agosysext: drop unnecessary struct MethodListParameters 37813/head
Yu Watanabe [Wed, 11 Jun 2025 13:26:04 +0000 (22:26 +0900)] 
sysext: drop unnecessary struct MethodListParameters

4 months agoinclude/linux: update kernel headers from v6.16-rc1
Yu Watanabe [Thu, 12 Jun 2025 09:46:58 +0000 (18:46 +0900)] 
include/linux: update kernel headers from v6.16-rc1

4 months agovmspawn: add extra drives *after* the primary drive, not before
Lennart Poettering [Thu, 12 Jun 2025 11:11:59 +0000 (13:11 +0200)] 
vmspawn: add extra drives *after* the primary drive, not before

Otherwise, if you mix --image= with --extra-drive= you end up with
/dev/sda pointing to the latter, nor the former. Which is really weird
of course...

4 months agonetwork: also check ID_NET_MANAGED_BY property on reconfigure
Yu Watanabe [Wed, 11 Jun 2025 09:05:46 +0000 (18:05 +0900)] 
network: also check ID_NET_MANAGED_BY property on reconfigure

Previously, the property was checked only when an uevent is received,
so even if an interface has ID_NET_MANAGED_BY property, the interface
will be configured by networkd when reconfiguration is triggered e.g.
when interface state is changed.

Follow-up for ba87a61d05d637be9f0b21707f7fe3b0a74c5a05.
Fixes #36997.

4 months agotest-network: improve bonding tests (#37808)
Yu Watanabe [Thu, 12 Jun 2025 05:24:03 +0000 (14:24 +0900)] 
test-network: improve bonding tests (#37808)

4 months agomachinectl: several trivial cleanups and man page fix (#37812)
Mike Yuan [Wed, 11 Jun 2025 20:03:28 +0000 (22:03 +0200)] 
machinectl: several trivial cleanups and man page fix (#37812)

Fixes #27481.

4 months agonetwork: use up_or_down() at several more places
Yu Watanabe [Wed, 11 Jun 2025 05:14:26 +0000 (14:14 +0900)] 
network: use up_or_down() at several more places

4 months agodiscover-image: make image_discover() allocate hashmap when necessary
Yu Watanabe [Wed, 11 Jun 2025 13:22:55 +0000 (22:22 +0900)] 
discover-image: make image_discover() allocate hashmap when necessary

4 months agodiscover-image: coding style fixlets
Yu Watanabe [Wed, 11 Jun 2025 12:54:35 +0000 (21:54 +0900)] 
discover-image: coding style fixlets

4 months agomachinectl: use _RUNNER_MAX rather than ELEMENTSOF() 37812/head
Yu Watanabe [Wed, 11 Jun 2025 13:40:30 +0000 (22:40 +0900)] 
machinectl: use _RUNNER_MAX rather than ELEMENTSOF()

4 months agomachinectl: align table
Yu Watanabe [Wed, 11 Jun 2025 13:37:58 +0000 (22:37 +0900)] 
machinectl: align table

4 months agoman/machinectl: underscore is not allowed in machine name
Yu Watanabe [Wed, 11 Jun 2025 12:40:21 +0000 (21:40 +0900)] 
man/machinectl: underscore is not allowed in machine name

Fixes #27481.

4 months agostub: call inner kernel directly
Valentin David [Tue, 6 May 2025 12:34:14 +0000 (14:34 +0200)] 
stub: call inner kernel directly

Since shim 16, it is not possible anymore to override the security arch
protocol to avoid signature check and measurements.

Also on Dell servers, EFI_SECURITY2_ARCH_PROTOCOL is not implemented, so
unexpected measurements on PCR 4 were still happening.

This just loads and run the kernel pe. We verify that there is no relocation
needed. Also for simplification, we assume and verify that the base address is
expected to be 0.

4 months agotest-network: add test case for issue #32186 37808/head
Yu Watanabe [Wed, 11 Jun 2025 08:28:28 +0000 (17:28 +0900)] 
test-network: add test case for issue #32186

The reporter said that the issue is caused by BindCarrier=, but
I cannot reproduce it. Anyway, let's test it.

4 months agotest-network: read the current link flags of bond interface
Yu Watanabe [Wed, 11 Jun 2025 08:17:49 +0000 (17:17 +0900)] 
test-network: read the current link flags of bond interface

Follow-up for 2700d2c7dc024b71396d564a53f32638efed77af.

4 months agologin: drop unnecessary dependency to libacl
Yu Watanabe [Wed, 11 Jun 2025 04:02:27 +0000 (13:02 +0900)] 
login: drop unnecessary dependency to libacl

With c960ca2be1cfd183675df581f049a0c022c1c802, logind does not handle
ACL anymore, but triggers events for udevd and udevd updates ACL.
Hence, libacl is not necessary for logind.