Commit graph

52253 commits

Author SHA1 Message Date
Yu Watanabe 33989b967e udev-test: add a testcase for string_escape=replace 2021-06-27 00:02:24 +09:00
Yu Watanabe 7dc846f99a udev: reduce scope of variables
Then, hopefully, we can easily find the bug fixed by the previous
commit.
2021-06-26 23:52:38 +09:00
Yu Watanabe 7db6b67275 udev: fix use of invalid pointer
Fixes a bug introduced by ea0f4578a7.

Fixes CID#1457766.
2021-06-26 23:35:02 +09:00
Yu Watanabe 57ccd9f6c0 core/namespace: drop unnecessary initializations 2021-06-26 11:32:59 +01:00
Yu Watanabe 11c89a85eb udev: update log messages
Suggested at https://github.com/systemd/systemd/pull/19312#discussion_r658556983.
2021-06-26 10:12:13 +02:00
Yu Watanabe 70160c6eee sd-device: allow to read sysattr which contains embedded NUL
This effectively reverts the commit 2a394d0bf2.

But drop trailing '\r' of the read value, as sd_device_set_sysattr_value() drops it.

Fixes #20025.
2021-06-26 10:48:28 +09:00
Yu Watanabe 3b955af56f networkctl: drop unused member in struct VxLanInfo 2021-06-26 08:39:25 +09:00
Zbigniew Jędrzejewski-Szmek 2e9ee9cf15
Merge pull request #20028 from keszybz/hwdb-update-v249
Hwdb update for v249-rc2
2021-06-25 16:17:20 +02:00
Yu Watanabe c8de9b0ec5 man: document about NAMING_REPLACE_STRICTLY network interface naming policy
Follow-up for b4d885f0e8 and
068b0f7728.
2021-06-25 14:51:24 +01:00
Luca Boccassi 5b8fdb1873 NEWS: mention MS_NOSUID for namespaced services by default 2021-06-25 14:04:34 +01:00
Zbigniew Jędrzejewski-Szmek 6969135f6a NEWS: update contributor list for v249-rc2 2021-06-25 14:26:29 +02:00
Zbigniew Jędrzejewski-Szmek 14e97d24ae NEWS: update with net-naming scheme changes and ConditionOSRelease 2021-06-25 14:26:29 +02:00
Zbigniew Jędrzejewski-Szmek 6ccd05e3ad hwdb: update autosuspend 2021-06-25 14:23:15 +02:00
Zbigniew Jędrzejewski-Szmek a557c7c6d0 hwdb: update 2021-06-25 14:23:15 +02:00
Zbigniew Jędrzejewski-Szmek aeecab3804 dbus-socket: fix check of Listen* arguments
We checked the wrong field, which was always NULL here, so we would always
reject the assignment. We would also print the wrong string in the error
message:

$ sudo systemd-run --socket-property ListenFIFO=/tmp/fifo3 cat
Failed to start transient socket unit: Invalid socket path: FIFO
2021-06-25 14:21:23 +02:00
Zbigniew Jędrzejewski-Szmek a768492a33
Merge pull request #20023 from yuwata/re-enable-nosuid-mount-flag
core: reenable nosuid mount flag when NoNewPrivileges=yes
2021-06-25 14:21:05 +02:00
David Tardon 99df1cb6f5 remove a left-over break
By the "same logic as above...", we want to continue to fallback here,
but the break prohibits that.

This is a follow-up for ee1aa61c47 .
2021-06-25 14:20:52 +02:00
Luca Boccassi db4c8a2516 ExtensionImages: log explicit error when extension-release metadata does not match
When an ExtensionImages= extension-release metadata does not match, the
log messages (unless debug level is set) are pretty much incomprehensible:

systemd[463]: run-u11.service: Failed to set up mount namespacing: /run/systemd/unit-extensions/0: Stale file handle
systemd[463]: run-u11.service: Failed at step NAMESPACE spawning /usr/bin/echo: Stale file handle

Add an explicit log message if we get ESTALE from the dissect code, to
make it clear what's happening without needing to enable debugging:

systemd[463]: Failed to mount image /tmp/app3.raw, extension-release metadata does not match the lower layer's: ID=debian VERSION_ID=11 SYSEXT_LEVEL=11
2021-06-25 13:34:16 +02:00
Yu Watanabe 4dce1b9f05 udev/scsi: use the scsi device type number directly
Previously, the value is once stringified, and later again parsed,
that is completely redundant.

Follow-up for 1001167ca5.

Replaces #20013.
2021-06-25 13:31:19 +02:00
Mike Crowe 7875170f01 resolvectl: Only strip ifname suffixes when being resolvconf
Only treat interface names containing dots specially when resolvectl is
pretending to be resolvconf to fix
https://github.com/systemd/systemd/issues/20014 .

Move the special suffix-stripping behaviour of ifname_mangle out to the
new ifname_resolvconf_mangle to be called from resolvconf only.
2021-06-25 12:52:39 +02:00
Zbigniew Jędrzejewski-Szmek 157306439e
Merge pull request #19312 from yuwata/udev-escape-slash-nvme
udev: make OPTIONS="string_escape=replace" take effect on ENV{key}= assiginment
2021-06-25 10:11:04 +02:00
Zbigniew Jędrzejewski-Szmek 07b1d28a16
Merge pull request #19883 from ddstreet/activation-policy-down-required-for-online-no
Activation policy down required for online no
2021-06-25 09:26:25 +02:00
Zbigniew Jędrzejewski-Szmek a2e2917162
Merge pull request #19941 from bluca/condition_os_release
core: add ConditionOSRelease= directive
2021-06-25 09:22:50 +02:00
Yu Watanabe 5181630f26 core: do not set nosuid mount option when SELinux is enabled
The mount option has special meaning when SELinux is enabled. To make
NoNewPrivileges=yes not break SELinux enabled systems, let's not set the
mount flag on such systems.
2021-06-25 15:37:35 +09:00
Yu Watanabe 6720e356c1 Revert "Revert "Mount all fs nosuid when NoNewPrivileges=yes""
This reverts commit 1753d30215.

Let's re-enable that feature now. As reported when the original commit
was merged, this causes some trouble on SELinux enabled systems. So,
in the subsequent commit, the feature will be disabled when SELinux is enabled.
But, anyway, this commit just re-enable that feature unconditionally.
2021-06-25 15:16:34 +09:00
Lennart Poettering de61a04b18 tree-wide: make specifier expansion --root= aware
This fixes repart's, systemctl's, sysusers' and tmpfiles' specifier
expansion to honour the root dir specified with --root=. This is
relevant for specifiers such as %m, %o, … which are directly sourced
from files on disk.

This doesn't try to be overly smart: specifiers referring to runtime
concepts (i.e. boot ID, architecture, hostname) rather than files on the
medium are left as is. There's certainly a point to be made that they
should fail in case --root= is specified, but I am not entirely convinced
about that, and it's certainly something we can look into later if
there's reason to.

I wondered for a while how to hook this up best, but given that quite a
large number of specifiers resolve to data from files on disks, and most
of our tools needs this, I ultimately decided to make the root dir a
first class parameter to specifier_printf().

Replaces: #16187
Fixes: #16183
2021-06-24 22:30:14 +02:00
Andrea Pappacoda 0c651d32d4 docs: update autofs Kconfig name 2021-06-24 20:11:03 +02:00
Juergen Hoetzel 274b0d3fc1 docs: EFI separator needs to be backslash-escaped in markdown 2021-06-24 20:09:52 +02:00
Frantisek Sumsal eb70d9450c test: correctly mask supporting services in tests, take #2
Due to a little misunderstanding the last patch doesn't work as
expected, since test_create_image() is called only for the first image
(usually TEST-01-BASIC), and all subsequent images are then (possibly)
modified with test_append_files().

Follow-up to 179ca4d2b1.
2021-06-24 16:26:19 +01:00
Lennart Poettering 86e24d608a
Merge pull request #20001 from keszybz/test-path-simplify-less
Do not call path_simplify() when not needed
2021-06-24 15:33:09 +02:00
Lennart Poettering 6abd991c71 sd-journal: add missing bracket in journal verify log message 2021-06-24 15:25:29 +02:00
Luca Boccassi 5bf7d8f04d
Merge pull request #20000 from dtardon/replace-strtoul
replace strtoul by safe_ato*
2021-06-24 14:18:58 +01:00
David Tardon 04d54d5011 udev-builtin-keyboard: drop unnecessary {} 2021-06-24 15:12:34 +02:00
David Tardon 1001167ca5 udev: replace strtoul by safe_ato* 2021-06-24 15:12:29 +02:00
Zbigniew Jędrzejewski-Szmek 280e4b368e
Merge pull request #20004 from yuwata/readdir-ensure-type
dirent-util: introduce readdir_ensure_type()
2021-06-24 15:11:06 +02:00
Lennart Poettering 4ef65db34b openssl-util: include the headers the file actually uses definitions from 2021-06-24 15:09:14 +02:00
Zbigniew Jędrzejewski-Szmek c1e4c62235
Merge pull request #19997 from keszybz/selinux-opt
Drop libselinux dependency from libsystemd
2021-06-24 15:07:29 +02:00
Luca Boccassi 1e26f8a60b core: add ConditionOSRelease= directive 2021-06-24 13:57:48 +01:00
Luca Boccassi 70b6ee6110 basic/extract-word: add EXTRACT_RETAIN_SEPARATORS flag
Makes the helpers avoid skipping over the separator(s) in the
input string
2021-06-24 13:41:17 +01:00
Dan Streetman 61764fe4e2 test: add test to verify RequiredForOnline= setting with ActivationPolicy=
Add test to verify that the RequiredForOnline= value is correct based on
the configuration of ActivationPolicy=
2021-06-24 08:33:29 -04:00
Dan Streetman 003015af5a networkctl: add field 'Required For Online' 2021-06-24 08:32:21 -04:00
Dan Streetman 7c644a6966 network: default RequiredForOnline=false if ActivactionPolicy= not set to up
If ActivationPolicy= is set to down, always-down, or manual, then any
matching link will delay boot (due to delaying network-online.target).

If RequiredForOnline= wasn't explicitly set, then default it to false
if ActivationPolicy= is down or manual. If ActivationPolicy=always-down,
then force RequiredForOnline=no.
2021-06-24 08:32:21 -04:00
Lennart Poettering b80ef40caf ask-password: add "-n" switch for disabling trailing newline
This is similar to the "-n" switch of the "echo" command.
2021-06-24 13:25:39 +02:00
Luca Boccassi 6222acc2b5
Merge pull request #20002 from yuwata/sd-dhcp-client-ignore-forcerenew
sd-dhcp-client: ignore FORCERENEW
2021-06-24 10:01:10 +01:00
Zbigniew Jędrzejewski-Szmek ac19bdd04b core: avoid calling path_simplify() unnecessarilly for u.requires_mounts_for keys
We would always call path_simplify() before doing a lookup, which requires the
path key to be duplicated first. But the hashmap lookup doesn't require this…
So let's opportunistically skip the allocation if the key is already present.

Inspired by https://github.com/systemd/systemd/pull/19973.
2021-06-24 10:59:45 +02:00
Zbigniew Jędrzejewski-Szmek 0fb789af20 test-hash-funcs: add new file to test that path set ignores dot components 2021-06-24 10:59:45 +02:00
Zbigniew Jędrzejewski-Szmek da90c261af gitignore: add jekyll cache directory
Follow-up for 2d4efd1dba.
2021-06-24 10:20:29 +02:00
Zbigniew Jędrzejewski-Szmek c3b8bacd7b shared/selinux-util: rework switching of the getenforce() function
The approach with function pointer was neat, but it gets in the way
when we want to resolve the symbol dynamically: static initialization
is not possible. It also makes the code more complicated than necessary.
In this case, a simple boolean is sufficient.
2021-06-24 10:20:29 +02:00
Zbigniew Jędrzejewski-Szmek cd503dbb6b shared/dlfcn-util: add sentinel helper or for dlsym_many_or_warn()
I didn't do this before to avoid churn in all the users.
2021-06-24 10:20:29 +02:00
Zbigniew Jędrzejewski-Szmek d32f7a8e9b shared/tpm2-util: simplify and convert to the new helper
The function would return 0 or 3. I don't think the return code was
used for anything, so let's avoid the explicit calculation and return
0 or 1.
2021-06-24 10:20:27 +02:00