Daan De Meyer
8e7c157387
Merge pull request #32210 from YHNdnzj/execcommand-done
...
core: modernize ExecCommand parsing and fix one memory leak
2024-04-11 09:26:37 +02:00
Yu Watanabe
1ae891037e
Merge pull request #32202 from DaanDeMeyer/assert
...
tests: Improve assertion error messages
2024-04-11 09:51:49 +09:00
Luca Boccassi
798ea5c05a
Merge pull request #32181 from YHNdnzj/open-file
...
Some fixes/improvements for OpenFile=
2024-04-10 23:15:56 +01:00
Luca Boccassi
d0ea800943
Merge pull request #32195 from yuwata/network-ndisc-mtu
...
network: several cleanups for IPv6 MTU
2024-04-10 23:12:21 +01:00
Luca Boccassi
bf5e509840
Merge pull request #32166 from yuwata/network-rfc7217-dad
...
network: generate another address on conflict
2024-04-10 22:59:01 +01:00
Yu Watanabe
8e91738fe9
libsystemd-network: do not trigger assertion by sd_*_is_running() with NULL
...
If systemd is built with developer mode, previously they trigger
hard assertions. Even built with release mode, we should not log about
that. Let's silently accept NULL and return false.
Prompted by https://github.com/systemd/systemd/pull/32166#issuecomment-2044710151 .
2024-04-10 22:53:55 +01:00
Luca Boccassi
6dfaa0edaf
Merge pull request #32204 from DaanDeMeyer/post-rewrite
...
git: Add post-rewrite hook that invokes git submodule update
2024-04-10 22:52:45 +01:00
Luca Boccassi
af60f679a3
Merge pull request #32205 from YHNdnzj/bless-boot
...
Minor cleanup for bless-boot
2024-04-10 22:52:11 +01:00
Mike Yuan
ee9895e295
core/dbus-execute: fix potential memory leak
2024-04-11 04:44:57 +08:00
Mike Yuan
f09604b0a6
core/execute: introduce exec_command_free
2024-04-11 04:44:57 +08:00
Mike Yuan
ccbb85a58b
core/dbus-execute: modernize a bit
2024-04-11 04:44:36 +08:00
Mike Yuan
21b366121f
core/load-fragment: modernize config_parse_exec
2024-04-11 04:44:35 +08:00
Daan De Meyer
5c041971eb
docs: Add Tests section to coding style doc
2024-04-10 18:24:29 +02:00
Daan De Meyer
681e39c1dc
Introduce ASSERT_OK_ERRNO()
...
ASSERT_OK() is for functions that return negative errno. Let's
introduce ASSERT_OK_ERRNO() for syscalls that return -1 and store
the error in errno.
2024-04-10 18:24:26 +02:00
Daan De Meyer
29b27d59d5
tests: Improve assertion error messages
2024-04-10 18:20:23 +02:00
Mike Yuan
40611863e4
units/systemd-boot-check-no-failures.service: drop unneeded dep on shutdown.target
2024-04-10 23:40:53 +08:00
Mike Yuan
6f801feb4b
bless-boot-generator: use generator_add_symlink
2024-04-10 23:40:53 +08:00
Mike Yuan
8b317c3400
core: use FOREACH_ARRAY at 3 more places
2024-04-10 23:40:53 +08:00
Ivan Kruglov
5152b8459a
ASSERT_NULL/ASSERT_NOT_NULL
2024-04-10 16:57:30 +02:00
Frantisek Sumsal
0ab87ebd97
Merge pull request #32201 from aafeijoo-suse/test-minor-fixes
...
test: minor fixes
2024-04-10 16:54:37 +02:00
Mike Yuan
48c21790ba
test: merge TEST-77-OPENFILE into TEST-23-UNIT-FILE
...
And add coverage for #32179
2024-04-10 21:49:28 +08:00
Daan De Meyer
f1e9e8041c
git: Add post-rewrite hook that invokes git submodule update
...
git rebase does not support a --recurse-submodules switch to automatically
check out the submodules at their registered commits during or after a rebase.
Instead, let's use the post-rewrite git hook to do this ourselves.
2024-04-10 14:39:49 +02:00
Daan De Meyer
8bc9232636
Update submodules
2024-04-10 14:36:59 +02:00
Mike Yuan
c1f9509f79
shared/open-file: use xescape to escape ':'
...
Fixes #32179
2024-04-10 20:16:35 +08:00
Mike Yuan
4eb1feb110
shared/open-file: make open_file_free_many static inline
2024-04-10 20:16:35 +08:00
Mike Yuan
c642f43131
core/exec-invoke: modernize get_open_file_fd a bit
2024-04-10 20:16:35 +08:00
Mike Yuan
9b076e86c0
core/exec-invoke: modernize connect_unix_harder
2024-04-10 20:16:34 +08:00
Pablo Méndez Hernández
ffd0cca34a
man/journald: Add missing configuration files
...
The man page was missing:
- `/run/systemd/journald.conf`
- `/usr/lib/systemd/journald.conf`
as valid configuration files.
Fixes: https://github.com/systemd/systemd/issues/32199
2024-04-10 20:15:17 +08:00
Antonio Alvarez Feijoo
2ad44c22fe
tools/check-version-history: skip test if lxml is not installed
...
```
================================= 1070/1408 ==================================
test: systemd:dist / check-version-history
start time: 07:55:05
duration: 0.03s
result: exit status 1
...
----------------------------------- stderr -----------------------------------
Traceback (most recent call last):
File "/mnt/work/systemd/upstream-fork/main/tools/check-version-history.py", line 6, in <module>
import lxml.etree as tree
ModuleNotFoundError: No module named 'lxml'
==============================================================================
```
Follow-up for 3691e7fce7
2024-04-10 11:10:02 +02:00
Antonio Alvarez Feijoo
866a469e5a
test: add missing header to test.h
...
```
../src/shared/tests.h:361:28: error: implicit declaration of function ‘fork’ [-Werror=implicit-function-declaration]
361 | int _pid = fork(); \
| ^~~~
../src/test/test-macro.c:1114:9: note: in expansion of macro ‘ASSERT_SIGNAL’
1114 | ASSERT_SIGNAL(ASSERT_OK(-1), SIGABRT);
| ^~~~~~~~~~~~~
../src/shared/tests.h:369:25: error: implicit declaration of function ‘_exit’ [-Werror=implicit-function-declaration]
369 | _exit(EXIT_SUCCESS); \
| ^~~~~
../src/test/test-macro.c:1114:9: note: in expansion of macro ‘ASSERT_SIGNAL’
1114 | ASSERT_SIGNAL(ASSERT_OK(-1), SIGABRT);
| ^~~~~~~~~~~~~
../src/shared/tests.h:369:25: warning: incompatible implicit declaration of built-in function ‘_exit’ [-Wbuiltin-declaration-mismatch]
369 | _exit(EXIT_SUCCESS); \
| ^~~~~
../src/test/test-macro.c:1114:9: note: in expansion of macro ‘ASSERT_SIGNAL’
1114 | ASSERT_SIGNAL(ASSERT_OK(-1), SIGABRT);
| ^~~~~~~~~~~~~
../src/shared/tests.h:369:25: warning: incompatible implicit declaration of built-in function ‘_exit’ [-Wbuiltin-declaration-mismatch]
369 | _exit(EXIT_SUCCESS); \
| ^~~~~
../src/test/test-macro.c:1115:9: note: in expansion of macro ‘ASSERT_SIGNAL’
1115 | ASSERT_SIGNAL(ASSERT_OK(-ENOANO), SIGABRT);
| ^~~~~~~~~~~~~
../src/test/test-macro.c:1119:21: error: implicit declaration of function ‘getpid’; did you mean ‘getpt’? [-Werror=implicit-function-declaration]
1119 | ASSERT_TRUE(getpid());
| ^~~~~~
```
Follow-up for #32189
2024-04-10 11:09:52 +02:00
Lennart Poettering
5538b62f59
secure-boot: tighten enrollment logic a bit regarding file sizes
...
It's OK the dbx file is not loaded, but let's explicitly check for that
(i.e. if the buffer is actually non-NULL), rather than the size of the
bufer, since empty files actually do exist.
Or in other words, let's not magically suppress enrollment of empty
files, but let uefi firmware handle these on their own.
Follow-up for: 57ea8012d6
2024-04-10 16:59:37 +09:00
Lennart Poettering
6fea0f0ba0
boot: re-align table
...
We like our tables aligned.
(Also suppres the final two fields, which are all zeroes anyway, to
declutter a bit)
2024-04-10 16:59:37 +09:00
Lennart Poettering
3ee27b2580
resolved: dns_name_equal() can fail, handle that reasonably
...
Ignoring errors can be OK sometimes, but we should make this explicit.
2024-04-10 16:58:34 +09:00
Yu Watanabe
cd226becd8
Merge pull request #32189 from mrc0mmand/test-tweaks
...
Another batch of assorted test tweaks
2024-04-10 16:57:00 +09:00
Yu Watanabe
f8e15d6d98
Merge pull request #32191 from yuwata/network-persistent-storage-follow-ups
...
network: follow-ups for persistent storage
2024-04-10 16:54:39 +09:00
Lennart Poettering
475107f014
ndisc: use memzero() where appropriate
2024-04-10 16:54:20 +09:00
Lennart Poettering
e1771c8ee6
sd-journal: make sure sd_journal_add_match() also accepts SIZE_MAX as size
...
In many of our internal functions that take a pointer + a size we have
introduced the rule that SIZE_MAX as size means: take strlen().
sd_journal_add_match() has something similar, but the special value is
0, not SIZE_MAX. This is a bit ugly, since a zero size data block is
theoretically fine. The only reason sd_journal_add_match() gets away
with using this special value is because valid matches must consist of
at least 2 chars, hence cannot be zero.
But let's make this more robust and less surprising when compared to the
rest of our code, and *also* accept SIZE_MAX to mean strlen().
No actual code changes, just some clean-up.
2024-04-10 16:54:03 +09:00
Daan De Meyer
7072777163
core: Serialize both pid and pidfd
...
If we try to deserialize only a pidfd that points to a process that
has been reaped, creating the pidref object will fail, which means that
we'll try to create a pidref object from the serialized pid that comes
next. If the pid has already been reused, this will succeed and we'll
now have a pidref that points to a different process.
Let's avoid this issue by serializing both the pidfd and the pid and
creating the pidref object directly from both. This means we'll reuse
the deserialized pidfd instead of opening a new one. We'll then immediately
notice the pidfd is dead and do the appropriate follow up depending on
the unit type.
2024-04-10 09:32:04 +02:00
Yu Watanabe
a0430b0d95
test-network: add test case for ndisc MTU option
2024-04-10 12:24:33 +09:00
Yu Watanabe
8c9ef90b19
network/ndisc: set IPv6 MTU through sysctl
...
Closes #31496 .
2024-04-10 12:22:43 +09:00
Yu Watanabe
fb71748e4f
network/sysctl: round IPv6 MTU with the current device MTU rather than the maximum MTU
...
Otherwise, writing IPv6 MTU may fail.
This also makes link_set_ipv6_mtu() take log level about rounding IPv6 MTU,
and downgrade the log level from LOG_WARNING -> LOG_INFO, as we usually
use LOG_WARNING for per-interface critical failure.
2024-04-10 12:15:33 +09:00
Yu Watanabe
eb426caae7
network: always set IPv6 MTU when we detect the device MTU is changed
...
Then, we can keep the IPv6 MTU even if the device MTU is changed by an
external tool, e.g. 'ip link set' command.
2024-04-10 12:15:33 +09:00
Yu Watanabe
d4386dd1c8
network/setlink: adjust requested MTU when it is ready to set
...
This should not change any effective behavior.
Just for safety, and making the logic consistent with others, e.g.
setting master ifindex.
2024-04-10 12:15:33 +09:00
Yu Watanabe
11a150bc43
po: update Japanese translation
2024-04-10 07:07:34 +09:00
Yu Watanabe
4d97f7deeb
network/varlink: fix error cause
...
Follow-up for e1254d0616
.
Addresses https://github.com/systemd/systemd/pull/31811#discussion_r1557552244 .
2024-04-10 04:59:43 +09:00
Yu Watanabe
fb6f98ae63
network: open persistent directory without O_PATH
...
Addresses https://github.com/systemd/systemd/pull/31811#discussion_r1557549629 .
2024-04-10 04:59:43 +09:00
Frantisek Sumsal
515eb678a0
test: wait until the test container is fully booted up
...
TEST-69 still occasionally times out in CI and appears to be stuck on
boot, so let's see if this helps the situation a bit.
2024-04-09 21:39:46 +02:00
Frantisek Sumsal
8d4bfd38ed
test: disable background color for nspawn containers
...
As it makes the logs really messy in certain tests.
2024-04-09 21:39:46 +02:00
Frantisek Sumsal
04f0c6752c
test: set pexpect's logfile early
...
So we capture the container's boot as well.
2024-04-09 21:39:46 +02:00
Frantisek Sumsal
721e78ff73
test: give sd-resolved enough time to timeout
...
The timeout on sd-resolved's side is 5-10s (UDP or TCP), but dig's
default timeout is 5s. Let's give sd-resolved enough time to timeout
before either giving up or checking if it served stale data on dig's
side.
Resolves : #31639
2024-04-09 21:39:46 +02:00