Commit Graph
49468 Commits
Author SHA1 Message Date
Luca Boccassi 93df5217b9 tree-wide: 'allows to' -> 'allows one to'
As flagged by Lintian
2024-05-14 18:33:27 +02:00
Luca Boccassi efcbf3e670 Update syscalls table
ninja -C build update-syscall-tables update-syscall-header
2024-05-14 17:01:08 +01:00
Timo Rothenpieler 00f1714311 cgroup-util: allow cg_read_pid() to skip unmapped (zero) pids 2024-05-14 16:12:20 +02:00
Radoslav Kolev 19614a08d1 libsystemd-network: skip dhcp server test in case of EAFNOSUPPORT
We want to eanble running tests as part of the build, but
our builds run in VMs with networking disabled.
2024-05-14 15:00:29 +02:00
Mike Yuan 2c41722995 Merge pull request #32804 from YHNdnzj/bootspec-modernization
shared/bootspec: some fixes/modernizations
2024-05-14 20:55:52 +08:00
Daan De Meyer 3c0a1b1e70 core: Imply DefaultDependencies=no for credential mounts
Currently, on soft-reboot, /run/credentials/@system is unmounted
because it has DefaultDependencies=yes and as such will have
Conflicts=umount.target and Before=umount.target. Let's make sure
credential mounts survive soft-reboot by implying DefaultDependencies=no
for credential mounts.
2024-05-14 12:42:45 +02:00
Mike Yuan 97dfed142d shared/bootspec: use FOREACH_ARRAY more 2024-05-14 18:19:19 +08:00
Mike Yuan 4ea554e681 shared/bootspec: use isempty where appropriate 2024-05-14 18:19:19 +08:00
Mike Yuan 94e9ae6f53 shared/bootspec: use path_make_absolute where appropriate 2024-05-14 18:19:19 +08:00
Mike Yuan 73a8d8b0ca shared/bootspec: inline iterator var
Also, do not bump 'line' until the end of the loop.
Otherwise, log_syntax() below logs about the wrong
line number.
2024-05-14 18:18:48 +08:00
Mike Yuan 19cb99e74a shared/bootspec: add missing assertions 2024-05-14 18:18:47 +08:00
Radoslav Kolev 381c3b64d0 sd-event: increase test-event timeout to 120s
The test-event test seems to be taking quite a bit more time than
the other 'simple tests', which usually complete in < 1s. In case
of a slower or loaded machine the default 30s timeout is not enough.
2024-05-14 11:34:22 +02:00
Yu Watanabe 171f8d7ba7 dlfcn-util: fix typo
Follow-up for 2f6bd11c1a.
2024-05-14 18:10:46 +09:00
Luca Boccassi c98f2b8167 bootctl: fix crash when parsing addon without .cmdline section
Follow-up for 706ca67d30
2024-05-14 14:50:58 +08:00
Matt Muggeridge 68adffed02 network: IPv6 Compliance RFC4862: Address Lifetime Expiry (Hosts Only) [v6LC.3.2.2]
RFC 4862 Section 5.5.3, bullet e, sub-bullet 3 applies to existing
addresses, i.e. when address_get() returns success. If the address is
new (i.e. address_get() fails), then we should not be adding 2 hours to
the lifetime_valid_usec. Instead, use the valid_lifetime from the RA's
Prefix Information Option.

This change allows v6LC.3.2.2 to pass. Also verified all v6LC3.2.* tests
pass. This covers all the v6LC tests from Group2: Router Advertisement
Processing and Address Lifetime.

Fixes #32652.
2024-05-14 07:08:43 +09:00
Matt MuggeridgeandMatt Muggeridge 2d393b1b6d network: IPv6 Compliance: Router Advertisement Processing, Reachable Time [v6LC.2.2.15] (#32792)
Previously, RA option fields were being ignored when the Router Lifetime
value was zero. Remove this logic to be compliant with RFC4861.

Extract from: https://www.ietf.org/rfc/rfc4861.html#section-4.2, p.21,
first paragraph:

    The Router Lifetime applies only to
    the router's usefulness as a default router; it
    does not apply to information contained in other
    message fields or options.

This affected IPv6 Conformance test:
    v6LC.2.2.15: Router Advertisement Processing, Reachable Time.

Fixes #31842.

Co-authored-by: Matt Muggeridge <Matt.Muggeridge@hpe.com>
2024-05-14 06:50:51 +09:00
Lennart Poettering c5ecf09494 curl-glue: catch libcurl attempting to change timeout handler when we destroy a curl context on exit
If we destroy both an event loop and a curl contect object at the same
time, then we get into this weird situation where curl wants us to
reconfigure a timout event source right before destruction, which
sd-event will refuse however, since it is already being shutdown.

Hence, catch that and simply don't bother adjusting the timeout, since
we cannot get back from there anyway.
2024-05-14 05:29:15 +09:00
Lennart Poettering ddbfc4d17e machined: return recognizable error when we try to register the same machine name twice 2024-05-13 12:25:22 -06:00
Mike Yuan d9b8d86bcd core/service: remove unnecessary reset of notify_access_override
This already gets reset in service_enter_dead()
and service_start().
2024-05-14 00:49:59 +08:00
Lennart Poettering 13d6c5de41 varlink: rename vsockCid → vSockCid field 2024-05-14 00:49:45 +08:00
Yu Watanabe 0e2e3fa35a journal-rate-limit: replace in-house management of JournalRateLimitGroup with OrderedHashmap
No functional change, just refactoring.
2024-05-13 19:21:23 +09:00
Yu Watanabe 8df477675d journal-rate-limit: split out journal_ratelimit_group_acquire()
No functional change, just refactoring.
2024-05-12 10:32:14 +09:00
Yu Watanabe bab044b94b journal-rate-limit: introduce cleanup function for JournalRateLimitGroup
This also makes journal_ratelimit_group_new() use structured initializer.
2024-05-12 10:32:14 +09:00
Yu Watanabe 88c434f75c journal-rate-limit: rename variables
'r' is usually used for storing return value.
2024-05-12 10:32:14 +09:00
Yu Watanabe 1bdaad997d journal-rate-limit: use FOREACH_ELEMENT() and usec_add() 2024-05-12 10:32:14 +09:00
Yu Watanabe bba23ba47f journal-rate-limit: make journal_ratelimit_group_free() return NULL
To make it follow our recent coding style.
2024-05-12 10:32:14 +09:00
Yu Watanabe 1cb1538f78 journal-rate-limit: add trailing comma in table 2024-05-12 10:32:14 +09:00
Yu Watanabe 78da0721c8 test: introduce test cases for journal_ratelimit_test() 2024-05-12 10:31:41 +09:00
Yu Watanabe c1db424db5 tree-wide: use LOG_PRI() and LOG_FAC() 2024-05-12 09:49:45 +09:00
Daan De Meyer 82c2214539 debug-generator: Allow specifying name of unit-dropin credential
A fixed name is too rigid, let's give users the ability to define
custom drop-in names which at the same time also allows defining
multiple dropins per unit.

We use ~ as the separator because:
- ':' is not allowed in credential names
- '=' is used to separate credential from value in mkosi's --credential
  argument.
- '-' is commonly used in filenames
- '@' already has meaning as the unit template specifier which might be
  confusing when adding dropins for template units
2024-05-11 19:46:15 +02:00
Yu Watanabe a937fa96ac libcrypt-util: fix wrong errno value assignment
Follow-up for 9de324c3c9.
2024-05-10 15:56:52 +02:00
Luca Boccassi cc65d63d6d Merge pull request #32747 from YHNdnzj/tmpfiles-ret-gather
tmpfiles: some cleanups/follow-up
2024-05-10 15:04:30 +02:00
Mike Yuan 9bbe26bbf2 Merge pull request #32738 from yuwata/trivial-cleanups
Trivial follow-ups for recent changes
2024-05-10 19:07:42 +08:00
Luca Boccassi cf2b044c5e Merge pull request #32491 from yuwata/journalctl-fix-boot
journalctl: several fixes and cleanups for --boot= option handling
2024-05-10 13:00:22 +02:00
Mike Yuan c2c162a636 tmpfiles: use RET_GATHER more, add missing assertions
Note that item_do() now aborts on OOM, since it's
pretty pointless to iterate further if memory allocation
doesn't work.
2024-05-10 18:50:05 +08:00
Mike Yuan d8f5a31022 tmpfiles: don't compare errno with negative value
Follow-up for 677430b3c7
2024-05-10 18:50:05 +08:00
Mike Yuan 570c940d42 tmpfiles: clean up hardlinks_vulnerable a bit
dangerous_hardlinks() -> hardlinks_protected(),
and the meaning of the function is now in line
with fs.protected_hardlinks value.

Plus, We ship 50-default.conf where the sysctl
is enabled. Mention it in the comment.
2024-05-10 18:50:05 +08:00
Luca Boccassi 1df2c9a597 Merge pull request #32741 from yuwata/network-dhcp4-route-to-dns
network/dhcp4: fix assignment of routes to DNS or NTP servers
2024-05-10 12:40:30 +02:00
Yu Watanabe 2b699c2362 core/unit: use FOREACH_ELEMENT() to add dependencies for journal namespace instances
Follow-up for 06c0f569e9.
2024-05-10 18:11:25 +09:00
Yu Watanabe 0f3116f039 network/dhcp4: do not set gateway if DNS server or friends is in the acquired prefix
Previously, even if a DNS server is in the acquired prefix, the route to the
server might have gateway address.
This makes the prefix route, which is always configured, is also handled
as same as static routes, and do not use any gateway if the prefix route
is the most suitable route to access the destination.
The same change is also applied to route to NTP servers and semi-static
routes.

Fixes a regression introduced by 0ce86f5eeb.

Fixes #32715.
2024-05-10 13:46:39 +09:00
Yu Watanabe 4591efffc0 test: add basic tests for in_addr_prefix_covers_full() 2024-05-10 13:46:39 +09:00
Yu Watanabe d0936a7266 journalctl: make --list-boots support -n/--lines= option
Also mention that -r/--reverse is supported by the command.
2024-05-10 11:43:57 +09:00
Yu Watanabe 5da5d848f9 journalctl: fail and show error message when no boot ID found
No boot ID in journal should be definitly spurious.
Let's warn about that and exit with failure.
2024-05-10 11:43:57 +09:00
Yu Watanabe 8f2bcb1fb2 logs-show: use GREEDY_REALLOC_APPEND() 2024-05-10 11:43:57 +09:00
Yu Watanabe afcd9c60fe logs-show: fix stored timestamp when advance_older is true
Currently, the parsed timestamp is only used when advance_older is
false. Hence, this does not change any behavior. But, let's fix it anyway.
2024-05-10 11:43:57 +09:00
Yu Watanabe a467515519 journalctl: fix support of --boot=ID±offset format
Fixes a regression introduced by e44f06065b.

After the offending commit, if a boot ID suffixed with an offset is
specified to --boot=, the boot ID was ignored.
This fixes the issue.

To fix the issue, this merges journal_find_boot_by_id() and
journal_find_boot_by_offset().
2024-05-10 11:43:57 +09:00
Yu Watanabe 87dfaba7e9 logs-show: flush matches before and after finding boots
Otherwise, if several matches already set, then the first seek to head
or tail may move the cursor to an invalid place, hence they provide
wrong ID(s). Also, reading journal after calling these function may
provide unexpected data.

Currently, the caller does not install any matches before calling the
functions, and does not read any journal entry after journal_get_boots()
succeeds or journal_find_boot_by_offset() succeeds with 0. Hence, this
should not change any behavior. Just for safety.
2024-05-10 11:43:57 +09:00
Yu Watanabe ae0e6de918 journalctl: fix --boot=0 with --file=- (from stdin)
Follow-up for 592855c318.
2024-05-10 11:43:57 +09:00
Yu Watanabe 781ddf1477 journalctl: split out journal_acquire_boot() from add_boot()
No functional change, just refactoring and prepration for later changes.
2024-05-10 11:43:53 +09:00
Yu Watanabe e8357737c6 vmspawn: fix finding systemd-journal-remote binary
Follow-up for 258d26940f.

Fixes https://github.com/systemd/systemd/pull/31218#discussion_r1596168449.
2024-05-10 11:37:24 +09:00