Commit Graph

83054 Commits

Author SHA1 Message Date
Luca Boccassi
486fa5ece6 LICENSES/README: update file paths after moves
Follow-up for 1a60b97524
2025-07-24 20:44:19 +09:00
Luca Boccassi
28eec22f2f Fix typos found by Lintian 2025-07-24 11:38:47 +02:00
Zbigniew Jędrzejewski-Szmek
91085f308f NEWS: add description for DHCPv6 SIP feature
Also move the description of IPv4DuplicateAddressDetectionTimeoutSec=
to the section about systemd-networkd. The change of the timeout doesn't
have to be described as "incompatible". It's more of a bugfix, the previous
timeout was just strangely large and hopefully nobody relied on this detail
of implementation.

Also, reword to say that MPLSRouting= just controls enablement, nothing more.
2025-07-24 09:01:12 +02:00
Zbigniew Jędrzejewski-Szmek
806efaf223 NEWS: some typos and whitespace fixes 2025-07-24 09:00:57 +02:00
Yaping Li
741444797f test-unit-serialize.c: Migrate to new assertion macros
We recently added a new set of assertion macros such as ASSERT_GE, ASSERT_OK, ASSERT_EQ, ... which show not
only the expression that failed but also the values of the arguments of the expression. Let's use them.
2025-07-24 07:27:58 +09:00
Cosima Neidahl
f950919251 meson: Detect ELF ABI version for bpf build on ppc64 (#38307)
On 64-bit POWER, there are multiple versions of the ELF ABI in use.

- little-endian powerpc64 is ELFv2
- big-endian powerpc64 is
  - ELFv2 when using musl
  - either ELFv1 or ELFv2 when using glibc

Previously, the BPF build was hard-coding `-D_CALL_ELF=2`, which is
ELFv2. This makes the build fail on ELFv1, similarly to the original
issue that necessitated the addition of this flag on powerpc64le.

To fix this:

1. Use ELFv1 as the default (when `_CALL_ELF` is not defined, this is
the assumption that should be made about the ABI version).
2. Check if the C compiler has `_CALL_ELF` defined, and if it does,
override the default with that.
That's technically not the *correct* compiler in this situation, but I'm
unsure how to get a compiler object for the BPF one from Meson to do the
`*_define('_CALL_ELF')` checks with, and they *should* both be targeting
the same ABI version anyway.
3. Add the ABI version to the `_CALL_ELF` definition for the BPF
compiler flags.

This makes a BPF-enabled build succeed on powerpc64 w/ ELFv1 glibc.
2025-07-24 05:42:13 +09:00
Yu Watanabe
349d1240a0 po: update Japanese translations 2025-07-24 03:02:57 +09:00
Weblate
a4fdb84205 po: Update translation files
Updated by "Update PO files to match POT (msgmerge)" hook in Weblate.

Co-authored-by: Weblate <noreply@weblate.org>
Translate-URL: https://translate.fedoraproject.org/projects/systemd/main/
Translation: systemd/main
2025-07-24 03:00:42 +09:00
Yu Watanabe
2a860e8a8d Revert "po: update Japanese translations"
This reverts commit 59af98ab20.

The commit conflicts with Weblate's one. Tentatively revert the commit to
resolve the conflict.
2025-07-24 02:58:07 +09:00
Yu Watanabe
59af98ab20 po: update Japanese translations 2025-07-24 02:29:57 +09:00
Luca Boccassi
4c7ec40e4e Chores for RC1 (#38300) 2025-07-23 17:54:25 +01:00
luc-salles
53b1d3fd48 Fix Positivo K116J search key and www shortcut 2025-07-23 17:53:33 +01:00
Zbigniew Jędrzejewski-Szmek
5d9d774c8a network: several follow-ups for recent changes (#38298) 2025-07-23 17:16:17 +02:00
Luca Boccassi
dc5ea654fe meson: update version numbers for v258~rc1 2025-07-23 15:39:21 +01:00
Luca Boccassi
f98eafbd68 po: update systemd-pot
ninja -C build systemd-pot
2025-07-23 15:39:21 +01:00
Luca Boccassi
53a3d148d7 hwdb: update
ninja -C build update-hwdb
2025-07-23 14:32:21 +01:00
Luca Boccassi
59bd5e7436 NEWS: add time/place 2025-07-23 14:32:21 +01:00
Luca Boccassi
2c771f8033 NEWS: update contributors list 2025-07-23 14:25:25 +01:00
Yu Watanabe
5bd37b352c network/state-file: coding style fixlet
Follow-up for 168ad243cc.
2025-07-23 22:24:19 +09:00
Yu Watanabe
5489a9c409 network/state-file: ignore any errors in sd_dhcp6_lease_get_dnr()
Follow-up for 168ad243cc.

For consistency with other places.
2025-07-23 22:24:19 +09:00
Yu Watanabe
2924a6c927 network/json: ignore -ENODATA and any failures from sd_dhcp_lease_get_sip()
Addresses https://github.com/systemd/systemd/pull/38269#discussion_r2225375899.

Follow-up for 238c427aa9.
2025-07-23 22:24:19 +09:00
Luca Boccassi
7199811942 NEWS: fix wrong path for sd-stub global extensions directory 2025-07-23 14:22:08 +01:00
Zbigniew Jędrzejewski-Szmek
1fe7ebe8c2 stub: check if security override is available before using it (#38295)
Avoids fallback that requires it if it is not available. Can be dropped
once support for shim < 16 is no longer needed

Follow-up for 23d56ae890
2025-07-23 15:16:01 +02:00
Zbigniew Jędrzejewski-Szmek
f1d3241346 NEWS: add new entries
The section for systemd-vmspawn is grouped with systemd-nspawn
and systemd-machined, and systemd-analyze gets a new section of
its own.
2025-07-23 15:15:20 +02:00
Zbigniew Jędrzejewski-Szmek
e62ff1856c NEWS: adjust style
For meson options, say '-Dfoo=' to make them visually different.
Adjust grammar and punctuation in various places.
Break very long lines where feasible.
2025-07-23 15:15:20 +02:00
Yu Watanabe
fa32f4cd75 meson: crypt.h must always exist
We require at least crypt_r() exists, and it is provided since glibc-2.0
(and dropped in glibc-2.39) or by libxcrypt, and the function is
provided in crypt.h regardless it is provided by glibc or libxcrypt.
Hence, we cannot fallback to unistd.h.

This makes the condition about crypt.h more strict, and stop compilation
earlier when crypt.h does not exist.
2025-07-23 22:13:20 +09:00
Mike Yuan
a6da6c9050 networkctl-config-file: validate args are valid filenames
... as opposed to full paths

Fixes #38288
2025-07-23 22:11:42 +09:00
Luca Boccassi
5115710528 stub: check if security override is available before using it
Avoids fallback that requires it if it is not available. Can
be dropped once support for shim < 16 is no longer needed

Follow-up for 23d56ae890
2025-07-23 10:29:19 +01:00
Zbigniew Jędrzejewski-Szmek
dcccbe049c tree-wide: several fixlets for log message and comment (#38263) 2025-07-23 10:17:33 +02:00
Zbigniew Jędrzejewski-Szmek
15b0b6cd71 getty-generator: fine-grained execution control (#38258)
Closes #37928.
2025-07-23 09:58:27 +02:00
Luca Boccassi
23d56ae890 stub: restore compatibility for shim (< 16.0) -> UKI case
It is possible to boot directly a UKI from shim, and Fedora Cloud Base UKI
does exactly this.
This used to work fine until https://github.com/systemd/systemd/pull/37372
which broke compatibility when shim < 16.0 (no loader protocol override) is
used. Shim 15.8 is still in use in several distributions, and will be for
a long time.

Restore a part of the previous implementation, and if running with secure
boot enabled, and with shim but < 16.0, apply a security override.

Follow-up for cab9c7b5a4

Fixes https://github.com/systemd/systemd/issues/38104
2025-07-23 09:54:09 +02:00
Yaping Li
0ccc31d964 test-user-record.c: Migrate to new assertion MACROs
We recently added a new set of assertion macros such as ASSERT_GE, ASSERT_OK, ASSERT_EQ, ... which show not
only the expression that failed but also the values of the arguments of the expression. Let's use them.
2025-07-23 09:36:46 +09:00
Yaping Li
e89f865157 test-web-util.c: Use ASSERT_FALSE() instead of ASSERT_TRUE() where appropriate 2025-07-23 09:36:00 +09:00
James Hilliard
28575ac014 meson: prepend sys_root to bpf isystem
These sort of absolute include paths are generally unsafe when cross compiling.
2025-07-23 08:49:02 +09:00
Yu Watanabe
36c3862789 TEST-81-GENERATORS: add test cases for systemd.getty_auto=console and friends 2025-07-23 08:35:51 +09:00
Allison Karlitskaya
3a883e89bc getty-generator: add support for fine-grained control of execution modes
This makes the systemd.getty_auto= kernel command line option and the
$SYSTEMD_GETTY_AUTO environment variable takes the list of classes of
services: credential, container, console, builtin.

This also add getty.auto credential that can take the same value as the
kernel command line option.

Closes #37928.

Co-authored-by: Yu Watanabe <watanabe.yu+github@gmail.com>
2025-07-23 08:35:51 +09:00
Yu Watanabe
4e346e10d2 getty-generator: show original path in the log message
This fixes the following log message:
Before:
```
Invalid container tty device specified, ignoring: (null)
```
After:
```
Invalid container tty device specified, ignoring: /dev/tty0
```

If a non-pts device path is passed to add_container_getty(), we call
add_getty_impl() with NULL tty, so previously (null) was logged.
Let's log the original path when an invalid tty is specified.
2025-07-23 08:32:05 +09:00
Yu Watanabe
3eb5402b5c networkd/dhcp6: Add support for IPv6 SIP servers (#38269)
This pull-request adds support for IPv6 SIP servers, which can be
obtained from DHCPv6 options.

[RFC3319](https://www.rfc-editor.org/rfc/rfc3319.html) defines two
options for this: option 21 (SIP Servers Domain Name List) and option 22
(SIP Servers IPv6 Address List).

systemd-networkd currently only supports IPv4 SIP servers, but ISPs like
NTT EAST provide IPv6 SIP servers. Exposing this in the D-Bus API would
allow other programs, such as downstream DHCPv6 servers, to utilize it.

Usage:

```
[DHCPv6]
UseSIP=yes
```

Partial output of `run0 systemd-networkd-tests.py
NetworkdDHCPClientTests.test_dhcp_client_use_sip`:

```console
> networkctl status veth99
● 17: veth99
                 NetDev File: /run/systemd/network/25-veth.netdev
                   Link File: /usr/lib/systemd/network/99-default.link
                Network File: /run/systemd/network/25-dhcp-client.network
                              └─/run/systemd/network/25-dhcp-client.network.d/override.conf
                       State: routable (configured)
                Online state: online
                        Type: ether
                        Kind: veth
                      Driver: veth
            Hardware Address: 12:34:56:78:9a:bc
                         MTU: 1500 (min: 68, max: 65535)
                       QDisc: noqueue
IPv6 Address Generation Mode: eui64
    Number of Queues (Tx/Rx): 2/2
            Auto negotiation: no
                       Speed: 10Gbps
                      Duplex: full
                        Port: tp
                     Address: 192.168.5.181 (DHCPv4 via 192.168.5.1)
                              2600::15
                              fe80::1034:56ff:fe78:9abc
                     Gateway: 192.168.5.1
                              fe80::1034:56ff:fe78:9abd
                         SIP: 192.168.5.1
                              2600::1
                              foo.example.com
           Activation Policy: up
         Required For Online: yes
            DHCPv4 Client ID: IAID:0x7ec6b6c/DUID
          DHCPv6 Client IAID: 0x7ec6b6c
          DHCPv6 Client DUID: DUID-EN/Vendor:0000ab11617740de1342c3a2
```
2025-07-23 08:09:06 +09:00
Nick Owens
8acee7c35e docs: fix SurviveFinalKillSignal typo 2025-07-22 18:03:39 +01:00
Luca Boccassi
bfeaefebf2 docs: mention LoaderTpm2ActivePcrBanks in BLI
Follow-up for 6eab4cd44c
2025-07-22 17:05:21 +02:00
Mike Yuan
8c7dfa0ff4 units/ssh-access.target: enable StopWhenUnneeded=
This combines nicely with the X_SYSTEMD_UNIT_INACTIVE= notification
we send out, to ensure when all sshd units go down the actual
status is always reflected on the target.
2025-07-22 15:01:26 +01:00
Philip Freeman
72775b7c89 Update USER_RECORD.md (#38283)
trailing comma here is invalid json.
2025-07-22 18:27:37 +09:00
haxibami
3a83ea5bf2 test-network: add test cases for SIP servers 2025-07-22 17:06:11 +09:00
haxibami
238c427aa9 network/dhcp6: add SIP server support 2025-07-22 17:05:13 +09:00
haxibami
d2191515ba sd-dhcp6-client: add SIP server domain support 2025-07-22 16:54:08 +09:00
haxibami
551bfe7738 sd-dhcp6-client: add SIP server address support 2025-07-22 16:31:52 +09:00
Yu Watanabe
0c699debde varlink-idl: fix type of ProcessId.bootId
Fixes a bug in 0fc530d157 (v257).
Fixes #38276.
2025-07-22 01:11:12 +01:00
Yu Watanabe
94ad755008 ci/build-test: install libarchive-dev
Previously, the package was not installed, hence the feature was always
disabled in the build test.
2025-07-22 01:09:47 +01:00
Yu Watanabe
2cfa513356 test: missing -v option for command
Otherwise the specified command is invoked, not only checking the
existence of the command.
2025-07-22 01:08:43 +01:00
Yu Watanabe
911a52b769 test-sd-device: also exclude dm block devices
To avoid the following error:
```
test_sd_device_one(/sys/devices/virtual/block/dm-9)
src/libsystemd/sd-device/test-sd-device.c:104: Assertion failed: Expected "sd_device_new_from_syspath(&dev, syspath)" to succeed, but got error: -19/ENODEV
```

This also updates outdates comment about CentOS CI.
2025-07-22 01:04:42 +01:00