David Seifert
d0523bb0d1
gpt-auto: allow using without cryptsetup
...
Fixes #24978
2022-10-13 06:39:38 +09:00
Frantisek Sumsal
b8dd27664c
test: disable LSan in the ASan env wrapper
...
This wrapper is used in situations where we don't care about *San reports,
we just want to make things work. However, with enabled LSan we might
trigger some bogus reports we're definitely not interested in, causing
unexpected test fails.
Spotted on C8S in TEST-34-DYNAMICUSERMIGRATE:
```
[10654.804162] testsuite-34.sh[56]: + systemctl start testservice-34-check-writable.service
Starting testservice-34-check-writable.service...
[10655.055969] bash[546]: + set -o pipefail
[10655.056127] bash[546]: + declare -a writable_dirs
[10655.056234] bash[546]: + readarray -t writable_dirs
[10655.060838] bash[548]: ++ find / '(' -path /var/tmp -o -path /tmp -o -path /proc -o -path /dev/mqueue -o -path /dev/shm -o -path /sys/fs/bpf -o -path /dev/.lxc -o -path /sys/devices/system/cpu ')' -prune -o -type d -writable -print
[10655.061534] bash[549]: ++ sort -u
[10655.688740] bash[547]: =================================================================
[10655.689075] bash[547]: ==547==ERROR: LeakSanitizer: detected memory leaks
[10655.689246] bash[547]: Direct leak of 112 byte(s) in 1 object(s) allocated from:
[10655.743851] bash[547]: #0 0x7ffff752d364 (/usr/lib64/clang/14.0.0/lib/libclang_rt.asan-powerpc64le.so+0x13d364) (BuildId: 321f4ed1caea6a1a4c37f9272e07275cf16f034d)
[10655.744060] bash[547]: #1 0x1000b5d20 in xmalloc (/usr/bin/bash+0xb5d20) (BuildId: da38eb38f6870bdc2a6ef51c52aa6ce20921fe40)
[10655.744224] bash[547]: #2 0x100083338 (/usr/bin/bash+0x83338) (BuildId: da38eb38f6870bdc2a6ef51c52aa6ce20921fe40)
[10655.744393] bash[547]: #3 0x10008847c (/usr/bin/bash+0x8847c) (BuildId: da38eb38f6870bdc2a6ef51c52aa6ce20921fe40)
[10655.744552] bash[547]: #4 0x1000af6ec in redirection_expand (/usr/bin/bash+0xaf6ec) (BuildId: da38eb38f6870bdc2a6ef51c52aa6ce20921fe40)
[10655.744728] bash[547]: #5 0x1000b005c (/usr/bin/bash+0xb005c) (BuildId: da38eb38f6870bdc2a6ef51c52aa6ce20921fe40)
[10655.744886] bash[547]: #6 0x1000b1388 in do_redirections (/usr/bin/bash+0xb1388) (BuildId: da38eb38f6870bdc2a6ef51c52aa6ce20921fe40)
[10655.745051] bash[547]: #7 0x100050484 (/usr/bin/bash+0x50484) (BuildId: da38eb38f6870bdc2a6ef51c52aa6ce20921fe40)
[10655.745208] bash[547]: #8 0x100052160 in execute_command_internal (/usr/bin/bash+0x52160) (BuildId: da38eb38f6870bdc2a6ef51c52aa6ce20921fe40)
[10655.745376] bash[547]: #9 0x100052a10 in execute_command_internal (/usr/bin/bash+0x52a10) (BuildId: da38eb38f6870bdc2a6ef51c52aa6ce20921fe40)
[10655.745536] bash[547]: #10 0x100053e38 in execute_command (/usr/bin/bash+0x53e38) (BuildId: da38eb38f6870bdc2a6ef51c52aa6ce20921fe40)
[10655.745711] bash[547]: #11 0x1000529d8 in execute_command_internal (/usr/bin/bash+0x529d8) (BuildId: da38eb38f6870bdc2a6ef51c52aa6ce20921fe40)
[10655.745870] bash[547]: #12 0x100053e38 in execute_command (/usr/bin/bash+0x53e38) (BuildId: da38eb38f6870bdc2a6ef51c52aa6ce20921fe40)
[10655.746038] bash[547]: #13 0x1000529d8 in execute_command_internal (/usr/bin/bash+0x529d8) (BuildId: da38eb38f6870bdc2a6ef51c52aa6ce20921fe40)
[10655.746198] bash[547]: #14 0x100053e38 in execute_command (/usr/bin/bash+0x53e38) (BuildId: da38eb38f6870bdc2a6ef51c52aa6ce20921fe40)
[10655.746367] bash[547]: #15 0x1000529d8 in execute_command_internal (/usr/bin/bash+0x529d8) (BuildId: da38eb38f6870bdc2a6ef51c52aa6ce20921fe40)
[10655.746548] bash[547]: #16 0x100053e38 in execute_command (/usr/bin/bash+0x53e38) (BuildId: da38eb38f6870bdc2a6ef51c52aa6ce20921fe40)
[10655.746741] bash[547]: #17 0x1000529d8 in execute_command_internal (/usr/bin/bash+0x529d8) (BuildId: da38eb38f6870bdc2a6ef51c52aa6ce20921fe40)
[10655.746897] bash[547]: #18 0x100053e38 in execute_command (/usr/bin/bash+0x53e38) (BuildId: da38eb38f6870bdc2a6ef51c52aa6ce20921fe40)
[10655.747067] bash[547]: #19 0x1000529d8 in execute_command_internal (/usr/bin/bash+0x529d8) (BuildId: da38eb38f6870bdc2a6ef51c52aa6ce20921fe40)
[10655.747227] bash[547]: #20 0x100053e38 in execute_command (/usr/bin/bash+0x53e38) (BuildId: da38eb38f6870bdc2a6ef51c52aa6ce20921fe40)
[10655.747414] bash[547]: #21 0x1000529d8 in execute_command_internal (/usr/bin/bash+0x529d8) (BuildId: da38eb38f6870bdc2a6ef51c52aa6ce20921fe40)
[10655.747573] bash[547]: #22 0x100053e38 in execute_command (/usr/bin/bash+0x53e38) (BuildId: da38eb38f6870bdc2a6ef51c52aa6ce20921fe40)
[10655.747741] bash[547]: #23 0x1000529d8 in execute_command_internal (/usr/bin/bash+0x529d8) (BuildId: da38eb38f6870bdc2a6ef51c52aa6ce20921fe40)
[10655.747896] bash[547]: #24 0x100053e38 in execute_command (/usr/bin/bash+0x53e38) (BuildId: da38eb38f6870bdc2a6ef51c52aa6ce20921fe40)
[10655.748064] bash[547]: #25 0x1000529d8 in execute_command_internal (/usr/bin/bash+0x529d8) (BuildId: da38eb38f6870bdc2a6ef51c52aa6ce20921fe40)
[10655.748225] bash[547]: #26 0x100053e38 in execute_command (/usr/bin/bash+0x53e38) (BuildId: da38eb38f6870bdc2a6ef51c52aa6ce20921fe40)
[10655.748390] bash[547]: #27 0x1000529d8 in execute_command_internal (/usr/bin/bash+0x529d8) (BuildId: da38eb38f6870bdc2a6ef51c52aa6ce20921fe40)
[10655.748553] bash[547]: #28 0x1000bf91c in parse_and_execute (/usr/bin/bash+0xbf91c) (BuildId: da38eb38f6870bdc2a6ef51c52aa6ce20921fe40)
[10655.748717] bash[547]: #29 0x1000311ec (/usr/bin/bash+0x311ec) (BuildId: da38eb38f6870bdc2a6ef51c52aa6ce20921fe40)
[10655.748883] bash[547]: Direct leak of 17 byte(s) in 1 object(s) allocated from:
...
```
2022-10-12 21:12:17 +02:00
Luca Boccassi
5762dbfad6
Merge pull request #24883 from bluca/extrel_force
...
portable: allow caller to override extension-release name check
2022-10-12 20:20:46 +02:00
Zbigniew Jędrzejewski-Szmek
31b5f92016
Merge pull request #24974 from yuwata/sd-journal
...
sd-journal: several cleanups and follow-ups for compact mode PR
2022-10-12 17:47:05 +02:00
Michael Biebl
63238ef937
Merge pull request #24976 from mbiebl/logind-fix-dbus-on_ac_power
...
logind: fix getting property OnExternalPower via D-Bus
2022-10-12 16:55:21 +02:00
Luca Boccassi
a063184097
Merge pull request #24934 from keszybz/remove-nss-lookup
...
Remove nss lookups from pid1
2022-10-12 15:21:40 +02:00
Jan Janssen
1a9874905a
boot: Always reconnect all drivers
...
Fixes : #23442
2022-10-12 13:36:22 +02:00
Gerd Hoffmann
5b3e33c26f
boot: export reconnect()
...
Also give it a more descriptive name.
2022-10-12 13:36:22 +02:00
Jan Janssen
2985110b6f
stub: Correctly handle multi node file paths
...
Fixes : #24955
2022-10-12 13:19:34 +02:00
Jan Janssen
616a80fe1a
boot: Use device_path_to_str
2022-10-12 13:19:34 +02:00
Jan Janssen
3b3eb196a2
boot: Add device_path_to_str
2022-10-12 13:19:34 +02:00
Yu Watanabe
6c65a9e1d6
Merge pull request #24973 from keszybz/simplify-variable-declarations
...
Simplify variable declarations
2022-10-12 19:36:47 +09:00
Yu Watanabe
df04b9ed86
sd-journal: add comments that journal_file_move_to() may break previous read data
...
We have already made similar mistakes several times, e.g.
b8478c14c7
, and
b596d06c385e104fc330288b791a56661f0c2d17. Let's document the function
invalidates previously read objects.
2022-10-12 19:32:59 +09:00
Yu Watanabe
a1640191b4
sd-journal: re-read object on next try
...
Otherwise, the object may be already altered by another cached entry.
2022-10-12 19:32:59 +09:00
Yu Watanabe
231741d355
sd-journal: re-read object from cache
...
Fixes a bug introduced by 0e35afff1d
.
Replaces 3388a4b582
.
2022-10-12 19:32:59 +09:00
Yu Watanabe
8f71023764
sd-journal: drop unused argument
...
Follow-up for a9089a6604
.
2022-10-12 19:32:59 +09:00
Yu Watanabe
cc938e4a0a
sd-journal: several coding style updates
...
- rename `ret` -> `ret_object`,
- add missing assertions,
- add FIXME comments,
- wrap function arguments, etc., etc..
2022-10-12 19:32:59 +09:00
Michael Biebl
63168cb517
logind: fix getting property OnExternalPower via D-Bus
...
The BUS_DEFINE_PROPERTY_GET_GLOBAL macro requires a value as third
argument, so we need to call manager_is_on_external_power(). Otherwise
the function pointer is interpreted as a boolean and always returns
true:
```
$ busctl get-property org.freedesktop.login1 /org/freedesktop/login1 org.freedesktop.login1.Manager OnExternalPower
b true
$ /lib/systemd/systemd-ac-power --verbose
no
```
Thanks: Helmut Grohne <helmut@subdivi.de>
Bug-Debian: https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=1021644
2022-10-12 11:15:27 +02:00
Luca Boccassi
06768b90a3
portable: allow caller to override extension-release name check
...
When the --force flag is used, do not insist that the extension-release
file has to match the extension image name
2022-10-12 09:57:24 +01:00
Luca Boccassi
aad813bf17
portable: rename flag PORTABLE_FORCE -> PORTABLE_FORCE_ATTACH
...
The name is used only internally, also it was just added.
Allows adding different types of force flags.
2022-10-12 09:57:24 +01:00
Luca Boccassi
192a9b70c2
os-util: split out extension-release xattr helper
2022-10-12 09:57:24 +01:00
Luca Boccassi
ac6086fdf6
mount-util: do not pass 'x-*' options to mount syscall
...
They will not be recognized. libmount filters them manually.
2022-10-12 09:47:39 +01:00
Lennart Poettering
25d615eb70
NEWS: expand on systemd-measure a bit
2022-10-12 10:33:47 +02:00
Lennart Poettering
4d727f8686
update TODO with discussions from Image-based Linux summit
2022-10-12 10:04:07 +02:00
Zbigniew Jędrzejewski-Szmek
9d4cfc7579
Merge pull request #24784 from yuwata/core-exec-directory
...
core: do not create symlink to private directory if parent already exists
2022-10-12 09:37:16 +02:00
Lennart Poettering
9a72e98f02
Merge pull request #24970 from DaanDeMeyer/crypsetup-fix
...
Cryptsetup compilation fixes
2022-10-12 09:32:56 +02:00
Zbigniew Jędrzejewski-Szmek
67f047a6f2
basic/user-util: simplify variable declarations in fget{pw,gr}ent_sane()
2022-10-12 09:18:41 +02:00
Zbigniew Jędrzejewski-Szmek
59818f4381
libsystemd-network: trivial simplification
2022-10-12 09:18:24 +02:00
Zbigniew Jędrzejewski-Szmek
1d3fae91f7
Merge pull request #24867 from yuwata/sd-dhcp6-client-large-packet
...
sd-dhcp6-client: allow to build large packet
2022-10-12 09:18:07 +02:00
Yu Watanabe
8a77f21d29
sd-journal: rename next_hash_offset() -> get_next_hash_offset()
...
As the function name conflicts with one of its argument.
2022-10-12 15:37:04 +09:00
Zbigniew Jędrzejewski-Szmek
734f96b849
shared/condition: avoid nss lookup in PID1
...
PID 1 is not allowed to do nss lookups because this may take a long time or
even deadlock.
While at it, the comparisons are reordered to do the "easy" comparisons which
only require a string comparison first. Delay parsing of the UID until it is
really necessary. The result is the same, because we know that "root" and
"nobody" parse as valid.
2022-10-12 08:01:01 +02:00
Zbigniew Jędrzejewski-Szmek
9154bd57db
basic/chase-symlinks: add note that CHASE_WARN is not for PID 1
...
This should be enough to make us remember that constraint. A more heavy-weight
approach like renaming the option to CHASE_WARN_NSS_LOOKUP would be possible,
but it'd make the callers quite verbose and doesn't seem worth it.
2022-10-12 08:01:01 +02:00
Yu Watanabe
c21e114004
Revert "test-journal-flush: Don't fail on EADDRNOTAVAIL"
...
This reverts commit 3388a4b582
.
The error EADDRNOTAVAIL in the test only comes from journal_file_move_to(),
and it does not mean the corrupted journal, but pure programming error.
2022-10-12 14:47:37 +09:00
Luca Boccassi
dd4212105e
Merge pull request #24957 from yuwata/network-ignore-failure-in-sending-solicitation
...
network: ignore failure in sending solicitation
2022-10-11 21:58:26 +02:00
Luca Boccassi
da60182759
Merge pull request #24933 from keszybz/erradicate-strerror
...
Erradicate strerror
2022-10-11 21:47:38 +02:00
Luca Boccassi
2c03055e99
Merge pull request #24968 from poettering/logs-show-timestamp-fix
...
logs-show timestamp fix
2022-10-11 21:45:46 +02:00
Zbigniew Jędrzejewski-Szmek
ef3458cd5d
logind: do not emit beep in wall messages
...
Those may go via the PC speaker, which is annoying and unexpected.
Most people have it off, so this doesn't work reliably anyway, so we can
disable it without much loss.
Fixes #23520 .
2022-10-11 21:43:31 +02:00
Daan De Meyer
86bebe385f
repart: Always define VerityMode from/to string functions
2022-10-11 20:36:03 +02:00
Daan De Meyer
bbf73b0069
cryptsetup-util: Always define dlopen_cryptsetup()
2022-10-11 20:35:34 +02:00
Zbigniew Jędrzejewski-Szmek
0b6a47957b
tree-wide: drop () around the first argument of a ternary op
...
https://github.com/systemd/systemd/pull/24933#discussion_r991242789
2022-10-11 16:59:00 +02:00
Zbigniew Jędrzejewski-Szmek
b413d4fd3e
man: use man7.org for strerror_r
2022-10-11 16:59:00 +02:00
Zbigniew Jędrzejewski-Szmek
2fd922afed
man: recommend strerror_r() over strerror()
...
Let's nudge people towards the use of an anonymous buffer like we
do internally.
"errno" → "errnum", to match the man page for strerror, and also to avoid
confusion with the global variable. In general, I think that errno is a
terrible interface and we shouldn't encourage people to use it. Those functions
use errno-style error numbers, which are a different thing.
2022-10-11 16:59:00 +02:00
Zbigniew Jędrzejewski-Szmek
b4096cecff
man: recommend %m over strerror()
...
The need to set errno is very very ugly, but at least it is thread-safe and
works correctly. Using strerror() is likely to be wrong, so let's not recommend
that. People who do a lot of logging would provide use some wrapper that sets
errno like we do, so nudge people towards %m.
I tested that all the separate .c files compile cleanly.
2022-10-11 16:59:00 +02:00
Zbigniew Jędrzejewski-Szmek
29c45dc434
man: use external .c files for three examples
...
This way it's much easier to test that the code compiles without issues.
It's also easier to edit the code.
Indentation in one of the examples is reduced to two spaces. This is what we
use in man pages to make them fit on screen better.
2022-10-11 16:59:00 +02:00
Zbigniew Jędrzejewski-Szmek
0cf1a4b3a7
Get rid of strerror_safe()
2022-10-11 16:59:00 +02:00
Zbigniew Jędrzejewski-Szmek
eaaf7465ee
sd-bus: make bus_error_message() a thread-safe macro
...
strerror_r() is used instead of strerror(). The usual trick is employed: we
allocate a buffer that lives until the end of the surrounding block to provide
the scratch space. This change is particularly important forn sd-bus and the
pam modules, which may be called from threaded code.
I checked the codebase, and we only use bus_error_message() in log statements,
so the returned pointer is not used beyond its valid lifetime.
2022-10-11 16:59:00 +02:00
Zbigniew Jędrzejewski-Szmek
a390b03089
core: adjust log message
...
"umount startup job" is rather confusing. Let's say "unmount job", which should
be more meaningful for a user.
2022-10-11 16:59:00 +02:00
Zbigniew Jędrzejewski-Szmek
5475e963c5
analyze: add forgotten return statement
...
We would fail with an assert in sd_bus_message_enter_container() afterwards.
2022-10-11 16:59:00 +02:00
Zbigniew Jędrzejewski-Szmek
f37508d506
tree-wide: get rid of lgtm annotations
...
We now use CodeQL, and LGTM itself is gone. Those old annotations are not
useful for anythign now.
2022-10-11 16:59:00 +02:00
Zbigniew Jędrzejewski-Szmek
f69ae8585f
tree-wide: define and use STRERROR_OR_EOF()
2022-10-11 16:58:21 +02:00