Yu Watanabe
fda18ce2b6
boot-entry: use chase_and_fopen_unlocked() to open /etc/kernel/entry-token
...
Otherwise, when 'root' is specified, the file may be a symlink to a host
file, and we may read wrong entry.
2023-04-12 16:23:03 +09:00
Yu Watanabe
70e4510805
sd-device: absolute devlink must start with /dev/
...
This also makes device node path is handled with the same logic.
Addresses https://github.com/systemd/systemd/pull/27169#discussion_r1162739511 .
Follow-up for 2c5f119c3c .
2023-04-12 09:20:11 +09:00
Yu Watanabe
3b5fc5fb1b
boot-entry: prioritize machine ID only when it is not randomly generated
...
Preparation for later commits. The parameter will be used in
kernel-install later.
2023-04-12 08:31:50 +09:00
Daan De Meyer
965b481d9b
Merge pull request #27214 from DaanDeMeyer/firstboot
...
firstboot: Use root directory file descriptor for everything
2023-04-11 22:30:09 +02:00
Tanishka
fd7623193d
Modified to use STRV_MAKE() in strv_env_name_is_valid() function listed in env-util.c
2023-04-11 21:05:22 +02:00
Mike Yuan
8a826a979a
systemctl: suppress error for try-* if unit is masked
...
Closes #16521
2023-04-11 17:54:02 +01:00
Jan Janssen
b87d6da447
boot: Fix alignment of long long inside structs on x86
...
On x86 EFI follows the windows ABI, which expects 8-byte aligned long
long. The x86 sysv ELF ABI expects them to be 8-byte aligned when used
alone, but 4-byte aligned when they appear inside of structs:
struct S {
int i;
long long ll;
};
// _Static_assert(sizeof(struct S) == 12, "x86 sysv ABI");
_Static_assert(sizeof(struct S) == 16, "EFI/MS ABI");
To get the behavior we need when building with sysv ELF ABI we need to
pass '-malign-double' to the compiler as done by EDK2.
This in turn will make ubsan unhappy as the stack may not be properly
aligned on entry, so we have to tell the compiler explicitly to re-align
the stack on entry to efi_main.
This fixes loading EFI drivers on x86 that were previously always
rejected as the EFI_LOADED_IMAGE_PROTOCOL had a wrong memory layout.
See also: https://github.com/rhboot/shim/pull/516
2023-04-11 17:09:18 +01:00
David Tardon
f86a41291b
portabled-image-bus: use CLEANUP_ARRAY
2023-04-11 16:32:48 +02:00
David Tardon
a5290effe8
portabled-image-bus: use CLEANUP_ARRAY
2023-04-11 16:32:47 +02:00
David Tardon
2b4b01b00a
portabled-image-bus: use CLEANUP_ARRAY
2023-04-11 16:32:46 +02:00
David Tardon
0dab8d5dc7
portabled-bus: use CLEANUP_ARRAY
2023-04-11 16:32:45 +02:00
David Tardon
bd92527752
sd-bus: use _cleanup_
2023-04-11 16:31:52 +02:00
David Tardon
04375b6213
sd-bus: use CLEANUP_ARRAY
2023-04-11 16:30:07 +02:00
David Tardon
29933daf9e
execute: use CLEANUP_ARRAY
2023-04-11 16:25:07 +02:00
David Tardon
93404d340e
execute: use more automatic cleanup
2023-04-11 16:16:33 +02:00
David Tardon
ed8267c727
execute: use CLEANUP_ARRAY
2023-04-11 16:11:14 +02:00
David Tardon
608022a935
systemctl-set-default: use CLEANUP_ARRAY
2023-04-11 16:11:13 +02:00
David Tardon
cc8fc3d3db
systemctl-preset-all: shorten code a tiny bit
2023-04-11 16:11:11 +02:00
David Tardon
ae9ff778cd
systemctl-preset-all: use CLEANUP_ARRAY
2023-04-11 16:11:09 +02:00
David Tardon
9a57f69844
systemctl-enable: use CLEANUP_ARRAY
2023-04-11 16:11:06 +02:00
David Tardon
aa1c1ba1d6
systemctl-add-dependency: shorten code a tiny bit
2023-04-11 16:11:02 +02:00
David Tardon
a372f9f16b
systemctl-add-dependency: use CLEANUP_ARRAY
2023-04-11 16:11:01 +02:00
David Tardon
1b544e323e
portablectl: use CLEANUP_ARRAY
2023-04-11 16:08:00 +02:00
David Tardon
48a50accfe
machinectl: do not repeat the same comparison
2023-04-11 15:34:13 +02:00
David Tardon
8df3e0eec5
machinectl: drop unneeded else
2023-04-11 15:33:33 +02:00
David Tardon
ffddb3c945
machinectl: use CLEANUP_ARRAY
2023-04-11 15:31:50 +02:00
David Tardon
2a711edd87
dbus-manager: use CLEANUP_ARRAY
2023-04-11 15:28:36 +02:00
Daan De Meyer
a0657479f5
firstboot: Use root directory file descriptor for everything
...
There were a few remaining cases where we used arg_root instead of
the root directory file descriptor. Let's port those over to use the
root directory file descriptor as well.
2023-04-11 15:22:08 +02:00
Daan De Meyer
bd595c10e7
user-util: Add default_root_shell_at()
2023-04-11 15:21:51 +02:00
David Tardon
f8888b9a3c
dbus-manager: use CLEANUP_ARRAY
2023-04-11 15:08:03 +02:00
Daan De Meyer
73c43e96e7
Merge pull request #27186 from yuwata/os-release
...
os-util: several cleanups and introduce _at() variants of os-release parsers
2023-04-11 14:54:56 +02:00
Zbigniew Jędrzejewski-Szmek
ba5a469648
Merge pull request #27169 from yuwata/udev-rule-refuse-unsafe-path
...
sd-device,udev: refuse unsafe path in SYMLINK= and TAG=
2023-04-11 14:43:50 +02:00
Yu Watanabe
538d878dbd
os-util: introduce several _at() variants of os-release parsers
2023-04-11 18:49:45 +09:00
Yu Watanabe
5cf69e709e
os-util: make $SYSTEMD_OS_RELEASE prefixed with the root directory
...
To make it consistent with other env vars, e.g. $SYSTEMD_ESP_PATH or
$SYSTEMD_XBOOTLDR_PATH.
This is useful when the root is specified by a file descriptor, instead
of a path.
2023-04-11 18:49:23 +09:00
Yu Watanabe
f4a1d32c82
os-util: merge parse_{extension,os}_release()
2023-04-11 18:49:23 +09:00
Yu Watanabe
7ef43c78df
os-util: invert order of arguments in extension release parser
...
For consistency with other functions.
Unfortunately, va_start() requires that the previous argument is a
pointer, hence the order of the arguments in the internal function
cannot be changed.
2023-04-11 18:49:23 +09:00
Yu Watanabe
61acfd8311
os-util: shorten temporal variable names
...
No functional change, just refactoring.
2023-04-11 18:49:20 +09:00
Yu Watanabe
59c4707594
os-util: log one more error cause
2023-04-11 18:48:58 +09:00
Yu Watanabe
c9d64f8a2c
os-util: do not use 'r' for storing loop status
...
The variable 'r' is usually used for storing return value of functional
call. Let's introduce another boolean to store the current loop status.
No functional change, just refactoring.
2023-04-11 18:48:58 +09:00
Yu Watanabe
7421f20c7e
os-util: return earlier when unsupported image class is specified
2023-04-11 18:47:15 +09:00
Yu Watanabe
7213c75045
os-util: return earlier when extension release file is found
...
No functional change, just refactoring.
2023-04-11 18:44:50 +09:00
Yu Watanabe
a84677e0f4
os-util: split-out open_os_release() from open_extension_release()
...
The logics of opening os-release and extension-release are completely
different.
No functional change, just refactoring.
2023-04-11 18:44:50 +09:00
Yu Watanabe
6f0f4d1488
os-util: fix fd leak on failure
2023-04-11 18:44:50 +09:00
Yu Watanabe
396ec9587c
os-util: make open_extension_release() return O_PATH fd
2023-04-11 18:44:50 +09:00
Yu Watanabe
53cbf5f9a6
os-util: drop fopen_extension_release()
2023-04-11 18:44:50 +09:00
Yu Watanabe
bfeaa62dbc
compress: replace compress_blob() with compress_blob_explicit()
...
And make compress_xyz() return 0 on success, as we know which compression
algorithm is used when calling compress_blob().
Follow-up for 2360352ef0 .
2023-04-11 09:14:34 +02:00
Daan De Meyer
7cb9ed5d38
Merge pull request #27206 from yuwata/udev-rename
...
udev: rename arguments and options, update comments
2023-04-11 09:12:21 +02:00
Yu Watanabe
0d68cd72b6
chase: drop redundant call of delete_trailing_chars()
...
In that branch, 'root' is a non-root and absolute path.
Hence, delete_trailing_chars() does not make the path empty.
And, if the path contains redundant slashes at the end, that will be
dropped by path_simplify().
2023-04-11 09:06:05 +02:00
Yu Watanabe
0f9aca9a98
Merge pull request #27207 from masatake/busctl--help-msg
...
busctl: add --xml-interface to the help message
2023-04-11 14:42:27 +09:00
Yu Watanabe
c689c541a1
Merge pull request #27201 from yuwata/o-path-support
...
Support O_PATH more
2023-04-11 12:37:37 +09:00