Commit Graph
39218 Commits
Author SHA1 Message Date
Yu Watanabe def4741bd7 network: use sd_event_now() 2022-07-14 20:55:24 +09:00
Luca Boccassi f1298cd6a8 Merge pull request #24002 from yuwata/network-hw-addr
network: fix hardware address handling
2022-07-14 11:22:55 +01:00
Lennart Poettering a39cc90d2b growfs: don't reopen fds unnecessarily
Instead, just open the mount fd once, and then operate on fds only.
2022-07-14 11:34:18 +02:00
Lennart Poettering 12810f3abb growfs: ensure that we operate on a block device before issuing a block ioctl
Similar to the previous commit: let's add extra safety so that we don't
issue ioctls on the wrong type of inode.
2022-07-14 11:31:50 +02:00
Lennart Poettering 2e7dd6682b growfs: insist we open a directory when opening fs mount point
This is a simple safety check, since we shouldn't invoke ioctls on fds
without being reasonably sure they are of the right type since ioctls
are overloaded, and we might be tricked hence to execute an operation on
an fd which means something different than what we expect.
2022-07-14 11:30:27 +02:00
Michal Sekletar 513cf7da85 Revert "logind: don't start user@UID.service instance for background sessions"
This reverts commit e73bf3425c.
2022-07-14 11:07:17 +02:00
Lennart Poettering 92631578ff tmpfiles: check the directory we were supposed to create, not its parent
This current code checks the wrong directory. This was broken in
4c39d899ff which converted the previous
code incorrectly.
2022-07-14 10:12:37 +02:00
Lennart Poettering a586dc791c stat-util: replace is_dir() + is_dir_fd() by single is_dir_full() call
This new call can execute both of the old operations, but also do
generic fstatat() like behaviour.
2022-07-14 10:11:50 +02:00
Yu Watanabe 3f0dbb0f0c sd-bus: do not pass NULL when received message with invalid type
Fixes #24003.
2022-07-14 10:08:27 +02:00
Yu Watanabe 68870a46b3 sd-dhcp6-client: fix off-by-one error in parsing dhcp6 options
This fixes error in parsing message when the rapid commit option is
located at the end of the message.

Fixes an issure reported in #24002.
2022-07-14 10:49:18 +09:00
Yu Watanabe d81b5a191e sd-dhcp6-client: allow NULL option value when length is zero 2022-07-14 10:49:14 +09:00
Yu Watanabe 50309ff785 sd-dhcp6-client: add more debugging logs on parsing message 2022-07-14 09:31:04 +09:00
Yu Watanabe a5a8714187 Merge pull request #23882 from dtardon/logind-set-display-test
Add tests for org.freedesktop.login1.Session SetType and SetDisplay
2022-07-14 07:35:23 +09:00
Andre Kalb 34b63c9e45 network: Add support to select an IPv4 link-local start address 2022-07-13 23:57:18 +02:00
Yu Watanabe 3be64aa462 network: do not set invalid MAC address for non-ethernet interface 2022-07-14 06:52:07 +09:00
Yu Watanabe 56bb67180a network: NDisc does not require MAC address
This effectively revert ba4c7184b3.

Fixes #23546.
2022-07-14 06:52:07 +09:00
Yu Watanabe 7e2f684e1f network: dhcp4: disable DHCPv4 client on interfaces with non-supported types
Replaces f42d41cc5f.
2022-07-14 06:52:07 +09:00
Yu Watanabe 8f4f630731 Revert "network: configure DHCP clients after MAC address is assigned"
This reverts commit f42d41cc5f.

DHCPv6 client does not require MAC address.
DHCPv4 client will be handled in a different way in a later commit.

Partially fixes #23546.
2022-07-14 06:51:59 +09:00
Michael Biebl b0e5bf0451 Do not fail EFI build with newer binutils
Newer binutils versions currently trigger the following warnings due to
a bug in gnu-efi

on arm64:
/usr/bin/ld.bfd: warning: src/boot/efi/systemd-bootaa64.elf has a LOAD segment with RWX permissions

on amd64:
/usr/bin/ld.bfd: warning: /usr/lib/crt0-efi-x86_64.o: missing .note.GNU-stack section implies executable stack

This results in a build failure due to --fatal-warnings.
Work around this issue by suppressing those warnings until gnu-efi has
been fixed.

See https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=1013341
2022-07-13 18:48:07 +02:00
David Tardon d1fa6c99bb test: add test for org.freedesktop.login1.Session SetDisplay 2022-07-13 13:53:13 +02:00
David Tardon 9ac0855b61 test: add test for org.freedesktop.login1.Session SetType 2022-07-13 13:53:13 +02:00
Zbigniew Jędrzejewski-Szmek 44571ce98e Merge pull request #23817 from yuwata/sd-device-send-udev-database-version
sd-device: send udev database version
2022-07-13 13:10:40 +02:00
Yu Watanabe 0925c79c9e Merge pull request #23881 from keszybz/kernel-install-strikes-yet-again
kernel-install: fix invocation as installkernel, add tests, tweak documentation
2022-07-13 02:44:50 +02:00
Franck Bui 278e815bfa logind: don't delay login for root even if systemd-user-sessions.service is not activated yet
If for any reason something goes wrong during the boot process (most likely due
to a network issue), system admins should be allowed to log in to the system to
debug the problem. However due to the login session barrier enforced by
systemd-user-sessions.service for all users, logins for root will be delayed
until a (dbus) timeout expires. Beside being confusing, it's not a nice user
experience to wait for an indefinite period of time (no message is shown) this
and also suggests that something went wrong in the background.

The reason of this delay is due to the fact that all units involved in the
creation of a user session are ordered after systemd-user-sessions.service,
which is subject to network issues. If root needs to log in at that time,
logind is requested to create a new session (via pam_systemd), which ultimately
ends up waiting for systemd-user-session.service to be activated. This has the
bad side effect to block login for root until the dbus call done by pam_systemd
times out and the PAM stack proceeds anyways.

To solve this problem, this patch orders the session scope units and the user
instances only after systemd-user-sessions.service for unprivileged users only.
2022-07-12 22:54:39 +01:00
Łukasz Stelmach aa5ae9711e smack: Add DefaultSmackProcessLabel to user.conf and system.conf
DefaultSmackProcessLabel tells systemd what label to assign to its child
process in case SmackProcessLabel is not set in the service file. By
default, when DefaultSmackProcessLabel is not set child processes inherit
label from systemd.

If DefaultSmackProcessLabel is set to "/" (which is an invalid character
for a SMACK label) the DEFAULT_SMACK_PROCESS_LABEL set during compilation
is ignored and systemd act as if the option was unset.
2022-07-12 22:47:32 +01:00
Luca Boccassi 8880c3be82 Merge pull request #23982 from medhefgo/boot-misc
boot: Misc cleanups
2022-07-12 22:43:14 +01:00
Luca Boccassi 768456e8e6 Merge pull request #23979 from DaanDeMeyer/nspawn-relative-paths
nspawn: Support relative paths for --bind and --overlay
2022-07-12 22:41:10 +01:00
Daan De Meyer 448f737730 nspawn: Support relative source paths for --bind and --overlay 2022-07-12 13:14:11 +02:00
Jan Janssen 0692f533f2 bcd: Clean up includes
Also, now that bcd.h does not depend on efi.h anymore we can now
properly include it in the test instead.
2022-07-12 11:29:59 +02:00
Jan Janssen 427ba45b13 bcd: Use std alignof 2022-07-12 11:29:18 +02:00
Jan Janssen 93521e55e5 boot: Remove _cleanup_freepool_ 2022-07-12 11:24:49 +02:00
Jan Janssen 1f6a5d9a65 boot: Use int instead of INTN 2022-07-12 11:24:49 +02:00
Jan Janssen 34938db5b3 boot: Use uintptr_t when converting EFI_PHYSICAL_ADDRESS
uintptr_t is the more appropriate type when casting to/from pointers.
2022-07-12 11:24:19 +02:00
Zbigniew Jędrzejewski-Szmek dd2ebd1b1d kernel-install: suppress bogus shellcheck hint
I don't quite understand this, but '{ ! true; }' is not the same as '( ! true )'.
In interactive mode, it seems to work as expected. But in a script, it doesn't.
2022-07-12 09:24:43 +02:00
Zbigniew Jędrzejewski-Szmek b9b55a884b kernel-install: use set -e
This means that we'll fail hard if something goes wrong, e.g. reading
of a config file. I think this is appropriate. If errors should be ignored,
the caller should do that on their end.
2022-07-12 09:24:43 +02:00
Zbigniew Jędrzejewski-Szmek 852f98d6aa kernel-install: return 0 for unknown verbs in plugins
In practice this makes little difference, because kernel-install will
only call the plugins for 'add' or 'remove', and if we were to add a
new verb to kernel-install, we'd just change the plugins at the same
time. But our plugins serve as documentation for external plugins too,
and there it's better to silently ignore unknown verbs so that we can
add new verbs in the future.

(50-depomod.install was already like that.)
2022-07-12 09:24:43 +02:00
Zbigniew Jędrzejewski-Szmek 00e6278cac kernel-install: raise fuss if plugins are called without the expected parameters 2022-07-12 09:24:43 +02:00
Zbigniew Jędrzejewski-Szmek f875e6bc39 test-kernel-install: add a simple test that kernel-install copies the files
I opted to tweaking kernel-install to allow overriding config
(with $KERNEL_INSTALL_CONF_ROOT, $KERNEL_INSTALL_PLUGINS). An alternative
would be to build a test environment in test/. We can still do that,
but I think it's nice to have a simple test that is very quick and easy
to debug.

Invocation as installkernel is for #23681.
2022-07-12 09:24:43 +02:00
Zbigniew Jędrzejewski-Szmek c90cb977a1 kernel-install: mark the plugins as executable in git
We mark them as executable during installation, but it's also nice to mark
them as such in sources, so they can be executed directly.
2022-07-12 09:24:43 +02:00
Zbigniew Jędrzejewski-Szmek 6755285ccb kernel-install: allow overriding the plugin list too
The use of IFS=<newline> is dropped. Let's just iterate over the list, using
any whitespace as separator.
2022-07-12 09:22:09 +02:00
Yu Watanabe 12799947e2 Merge pull request #23972 from yuwata/sd-device
sd-device: do not return -ENOENT by sd_device_get_is_initialized()
2022-07-11 22:44:56 +02:00
Yu Watanabe 64d847b886 Merge pull request #23974 from yuwata/align-tables
basic: align tables
2022-07-11 22:43:45 +02:00
Daan De Meyer a50947c56b nspawn: Drop unnecessary intermediate variable 2022-07-11 21:38:26 +02:00
Topi Miettinen 3295d0d896 sd-netlink: add sizes for some IP and Ethernet addresses
Add sizes for some uses of NETLINK_TYPE_IN_ADDR and NETLINK_TYPE_ETHER_ADDR
types.
2022-07-11 18:37:38 +00:00
Yu Watanabe 4eb5f1db44 sd-device: shorten code a bit 2022-07-11 15:27:21 +02:00
Lennart Poettering 39e419a2b5 tree-wide: trivial tweaks 2022-07-11 15:11:58 +02:00
Yu Watanabe ef674d0ea3 unit-def: align string tables 2022-07-11 14:19:59 +02:00
Yu Watanabe 5c86cec1f3 virt: align tables 2022-07-11 14:13:33 +02:00
Yu Watanabe 591c186f2f sd-device: make sd_device_get_is_initialized() not return -ENOENT 2022-07-11 14:08:52 +02:00
Luca Boccassi 8924cbf34a Merge pull request #23962 from keszybz/taint-flag-support-ended
Taint flag "support-ended"
2022-07-10 22:42:56 +01:00