Mike Yuan [Mon, 26 Aug 2024 20:29:15 +0000 (22:29 +0200)]
core/service: minor coding style tweak
Daan De Meyer [Wed, 4 Sep 2024 14:03:32 +0000 (16:03 +0200)]
Merge pull request #34251 from DaanDeMeyer/multiq
network: Add support for multiq qdisc
Daan De Meyer [Wed, 4 Sep 2024 11:32:32 +0000 (13:32 +0200)]
network: Add support for mq qdisc
Daan De Meyer [Wed, 4 Sep 2024 10:19:49 +0000 (12:19 +0200)]
network: Add support for multiq qdisc
Mike Yuan [Wed, 4 Sep 2024 12:34:21 +0000 (14:34 +0200)]
Merge pull request #34205 from yuwata/pretty-print-buffering
pretty-print: introduce WITH_BUFFERED_STDERR macro to enable buffering
Daan De Meyer [Wed, 4 Sep 2024 10:07:16 +0000 (12:07 +0200)]
Merge pull request #34224 from yuwata/network-make-qdisc-reconfigurable
network: make qdisc reconfigurable
Daan De Meyer [Wed, 4 Sep 2024 07:26:58 +0000 (09:26 +0200)]
Merge pull request #32487 from YHNdnzj/bind-journal-sockets
core: introduce BindJournalSockets=
dependabot[bot] [Sun, 1 Sep 2024 09:10:21 +0000 (09:10 +0000)]
build(deps): bump softprops/action-gh-release from 2.0.5 to 2.0.8
Bumps [softprops/action-gh-release](https://github.com/softprops/action-gh-release) from 2.0.5 to 2.0.8.
- [Release notes](https://github.com/softprops/action-gh-release/releases)
- [Changelog](https://github.com/softprops/action-gh-release/blob/master/CHANGELOG.md)
- [Commits](https://github.com/softprops/action-gh-release/compare/
69320dbe05506a9a39fc8ae11030b214ec2d1f87...
c062e08bd532815e2082a85e87e3ef29c3e6d191)
---
updated-dependencies:
- dependency-name: softprops/action-gh-release
dependency-type: direct:production
update-type: version-update:semver-patch
...
Signed-off-by: dependabot[bot] <support@github.com>
dependabot[bot] [Sun, 1 Sep 2024 09:10:23 +0000 (09:10 +0000)]
build(deps): bump super-linter/super-linter from 6.6.0 to 7.1.0
Bumps [super-linter/super-linter](https://github.com/super-linter/super-linter) from 6.6.0 to 7.1.0.
- [Release notes](https://github.com/super-linter/super-linter/releases)
- [Changelog](https://github.com/super-linter/super-linter/blob/main/CHANGELOG.md)
- [Commits](https://github.com/super-linter/super-linter/compare/
88ea3923a7e1f89dd485d079f6eb5f5e8f937589...
b92721f792f381cedc002ecdbb9847a15ece5bb8)
---
updated-dependencies:
- dependency-name: super-linter/super-linter
dependency-type: direct:production
update-type: version-update:semver-major
...
Signed-off-by: dependabot[bot] <support@github.com>
Mike Yuan [Fri, 26 Apr 2024 09:03:45 +0000 (17:03 +0800)]
TEST-50-DISSECT: add explicit coverage for BindJournalSockets=
Mike Yuan [Fri, 26 Apr 2024 08:54:25 +0000 (16:54 +0800)]
test: drop unneeded journal socket bind mounts
(where BindJournalSockets=yes is implied)
Mike Yuan [Fri, 26 Apr 2024 08:53:41 +0000 (16:53 +0800)]
portable/profile: use BindJournalSockets=
Mike Yuan [Thu, 25 Apr 2024 20:47:40 +0000 (04:47 +0800)]
core/namespace: create /dev/log only if journal socket is present
Mike Yuan [Thu, 25 Apr 2024 16:43:29 +0000 (00:43 +0800)]
core: introduce BindJournalSockets=
Closes #32478
dependabot[bot] [Sun, 1 Sep 2024 09:10:17 +0000 (09:10 +0000)]
build(deps): bump systemd/mkosi
Bumps [systemd/mkosi](https://github.com/systemd/mkosi) from
8c2f828701a1bdb3dc9b80d6f2ab979f0430a6b8 to
31b4e756c1484c302435653da5d3b9bdfae38518.
- [Release notes](https://github.com/systemd/mkosi/releases)
- [Changelog](https://github.com/systemd/mkosi/blob/main/NEWS.md)
- [Commits](https://github.com/systemd/mkosi/compare/
8c2f828701a1bdb3dc9b80d6f2ab979f0430a6b8...
31b4e756c1484c302435653da5d3b9bdfae38518)
---
updated-dependencies:
- dependency-name: systemd/mkosi
dependency-type: direct:production
...
Signed-off-by: dependabot[bot] <support@github.com>
Daan De Meyer [Tue, 3 Sep 2024 15:52:43 +0000 (17:52 +0200)]
Merge pull request #34240 from DaanDeMeyer/mkosi
mkosi: Rework debian/ubuntu prepare script to install dependencies
Daan De Meyer [Tue, 3 Sep 2024 13:18:49 +0000 (15:18 +0200)]
mkosi: Use apt patterns to install dependencies on Debian/Ubuntu
Instead of parsing the human readable output of apt-cache, let's
use apt patterns to figure out the dependencies.
We also filter out virtual packages as apt will fail and say we need
to install an implementation of the virtual package even if a package
that provides the virtual package is already installed.
Daan De Meyer [Tue, 3 Sep 2024 10:53:23 +0000 (12:53 +0200)]
mkosi: Make systemd package filtering more robust
Let's not just filter everything with systemd in the name, but instead
use the same list of volatile packages that we install to do the
filtering.
Daan De Meyer [Tue, 3 Sep 2024 11:47:53 +0000 (13:47 +0200)]
Merge pull request #34236 from DaanDeMeyer/manager-split
json-util: Add more builders
Daan De Meyer [Fri, 23 Aug 2024 12:57:12 +0000 (14:57 +0200)]
json-util: Add JSON_BUILD_PAIR_UNSIGNED_NOT_EQUAL()
Daan De Meyer [Tue, 13 Aug 2024 14:39:04 +0000 (16:39 +0200)]
json-util: Add JSON_BUILD_TRISTATE() and friends
Daan De Meyer [Tue, 13 Aug 2024 11:04:06 +0000 (13:04 +0200)]
json-util: Add JSON_BUILD_PAIR_BASE64_NON_EMPTY() and friends
Daan De Meyer [Sat, 10 Aug 2024 11:42:32 +0000 (13:42 +0200)]
json-util: Add JSON_BUILD_PAIR_BYTE_ARRAY_NON_EMPTY()
Daan De Meyer [Fri, 9 Aug 2024 14:25:32 +0000 (16:25 +0200)]
json-util: Add JSON_BUILD_PAIR_INTEGER_NON_NEGATIVE()
Daan De Meyer [Fri, 9 Aug 2024 13:12:22 +0000 (15:12 +0200)]
json-util: Add JSON_BUILD_PAIR_INTEGER_NON_ZERO()
Daan De Meyer [Fri, 9 Aug 2024 11:40:43 +0000 (13:40 +0200)]
json-util: Add JSON_BUILD_PAIR_CALLBACK_NON_NULL()
Like JSON_BUILD_PAIR_CALLBACK(), but doesn't add anything to the variant
if the callback doesn't put anything in the return argument.
Daan De Meyer [Thu, 8 Aug 2024 12:16:01 +0000 (14:16 +0200)]
json-util: Add JSON_BUILD_PAIR_DUAL_TIMESTAMP_NON_NULL()
Daan De Meyer [Thu, 8 Aug 2024 11:43:05 +0000 (13:43 +0200)]
json-util: Add JSON_BUILD_PAIR_DUAL_TIMESTAMP()
Daan De Meyer [Thu, 8 Aug 2024 11:51:30 +0000 (13:51 +0200)]
json-util: Add JSON_BUILD_RATELIMIT()
Daan De Meyer [Wed, 7 Aug 2024 07:45:44 +0000 (09:45 +0200)]
json-util: Add JSON_BUILD_STRING_ORDERED_SET()
Daan De Meyer [Tue, 3 Sep 2024 08:48:39 +0000 (10:48 +0200)]
Merge pull request #34190 from DaanDeMeyer/repart-compress
repart: Add compression support
Lennart Poettering [Tue, 3 Sep 2024 07:50:37 +0000 (09:50 +0200)]
Merge pull request #34228 from poettering/uki-with-many-prep1
Two preparatory EFI library additions
Daan De Meyer [Fri, 30 Aug 2024 12:09:06 +0000 (14:09 +0200)]
repart: Add compression support
Now that mkfs.btrfs is adding support for compressing the generated
filesystem (https://github.com/kdave/btrfs-progs/pull/882), let's
add general support for specifying the compression algorithm and
compression level to use.
We opt to not parse the specified compression algorithm and instead
pass it on as is to the mkfs tool. This has a few benefits:
- We support every compression algorithm supported by every tool
automatically.
- Users don't need to modify systemd-repart if a mkfs tool learns a
new compression algorithm in the future
- We don't need to maintain a bunch of tables for filesystem to map
from our generic compression algorithm enum to the filesystem specific
names.
We don't add support for btrfs just yet until the corresponding PR
in btrfs-progs is merged.
Daan De Meyer [Sun, 1 Sep 2024 07:33:00 +0000 (09:33 +0200)]
TEST-58-REPART: Only skip part of testcase_minimize() that requires root
Daan De Meyer [Sat, 31 Aug 2024 21:05:11 +0000 (23:05 +0200)]
TEST-58-REPART: Always run TEST-58-REPART in virtual machine
Required for various tests in TEST-58-REPART.
Daan De Meyer [Sun, 1 Sep 2024 07:31:12 +0000 (09:31 +0200)]
mkosi: Don't create sanitizer wrappers for every mkfs binary
mksquashfs for some reason ends up in nss_systemd and mkfs.btrfs
links against libudev. The others don't need a sanitizer wrapper
script.
Daan De Meyer [Tue, 3 Sep 2024 06:47:50 +0000 (08:47 +0200)]
Merge pull request #34149 from DaanDeMeyer/btrfs
repart: Switch to new mkfs.btrfs subvolume API
Yu Watanabe [Tue, 3 Sep 2024 05:00:15 +0000 (14:00 +0900)]
Lennart Poettering [Fri, 23 Aug 2024 08:43:40 +0000 (10:43 +0200)]
resolved: include Varlink error on inconsistent DNS-SD services in introspection data
Let's also rename the error slightly, since what happens here is that a
a valid service RR name is CNAME'd onto an invalid one. That's an
inconsistency on the server side, which we really should report as such.
Follow-up for:
b48ab08732a76b7337628e1e716f11c687000903
Yu Watanabe [Sat, 31 Aug 2024 06:42:17 +0000 (15:42 +0900)]
pretty-print: introduce WITH_BUFFERED_STDERR macro to enable buffering
Then, the buffer will be flushed and buffering will be disabled on
exiting from the scope.
Yu Watanabe [Sun, 1 Sep 2024 07:07:28 +0000 (16:07 +0900)]
pretty-print: rename {draw,clear}_progress_bar_unbuffered() -> {draw,clear}_progress_bar_impl()
Addresses https://github.com/systemd/systemd/pull/34205#discussion_r1739648525.
Follow-ups for
5f9dd9c64d20e7cdf8b509421e28cfebf31b7c32.
Yu Watanabe [Mon, 2 Sep 2024 23:20:07 +0000 (08:20 +0900)]
Merge pull request #34140 from yuwata/conf-parser-log-message
conf-parser: introduce log_syntax_parse_error() and use it
Adrian Vovk [Mon, 2 Sep 2024 20:35:02 +0000 (16:35 -0400)]
Merge pull request #34202 from AdrianVovk/sysupdated-fixups
sysupdated: Bugfixes & improvements
Frantisek Sumsal [Mon, 2 Sep 2024 14:24:35 +0000 (16:24 +0200)]
test: don't install Python scripts from systemd-test RPM
The original regex didn't cover the `run-unit-tests.py` script that
made the old framework pull in Python into the test image, which in turn
allowed the new TEST-69-SHUTDOWN Python script to get executed in the
old framework's image, causing unexpected fails with latest Python on
Rawhide.
Adrian Vovk [Sat, 31 Aug 2024 04:42:54 +0000 (00:42 -0400)]
sysupdated: Improve logging about jobs
If someone runs `updatectl update`, sysupdate will be running multiple
update jobs at the same time, which can make reasoning about the output
in the journal quite difficult. Especially if things go wrong: the error
messages didn't mention which job failed. Nor was there any link between
job ID and the PID of the worker process logging to the journal. This
is all fixed here!
Adrian Vovk [Sat, 31 Aug 2024 04:10:23 +0000 (00:10 -0400)]
sysupdated: Cleanup handling of notifications
Cuts out some `strdup`s, and also avoids a rather weird case of donating
memory to a function. Basically just duplicates the solution I just
implemented for sysupdate's callout handler.
Adrian Vovk [Sat, 31 Aug 2024 03:58:19 +0000 (23:58 -0400)]
sysupdate: Don't ignore callout binary failure
Previously, if the callout binary (i.e. sd-pull, sd-import) failed
gracefully, we'd return its exit status from the event loop and thus
from run_callout(). Of course, exit status is a positive number in the
event of failure. Which means that we completely ignore the callout
binary failing, and instead continue using whatever it managed to
download before failing.
This is bad for obvious reasons, not the least of which is installing
a half-downloaded OS. This also means that we would completely ignore
failed signature checks 😬️
Luca Boccassi [Fri, 30 Aug 2024 16:55:18 +0000 (17:55 +0100)]
portable: ensure PORTABLE_FORCE_ATTACH works even when there is a leftover unit
Force means force, we skip checks with PID1 for existing units, but
then bail out with EEXIST if the files are actually there. Overwrite
everything instead.
Lennart Poettering [Fri, 28 Jun 2024 17:40:27 +0000 (19:40 +0200)]
efi: add file_handle_read() helper that reads from a file handle
Lennart Poettering [Thu, 4 Jul 2024 15:13:02 +0000 (17:13 +0200)]
efi: return pointer to processed string in strtolower8()/strtolower16()
Daan De Meyer [Thu, 1 Aug 2024 12:38:05 +0000 (14:38 +0200)]
networkd: Replace existing objects instead of doing nothing if they exist
Currently, if for example a traffic control object already exist, networkd
will silently do nothing, even if the settings in the network file for the
traffic control object have changed. Let's instead replace the object if it
already exists so that new settings from the network file are applied as
expected.
Fixes #31226
Yu Watanabe [Mon, 2 Sep 2024 04:15:49 +0000 (13:15 +0900)]
network/tclass: do not save tclass to Link before it is configured
Otherwise, if the same kind of tclass is already assigned, parameters
configured in .network file will not be used. So, let's first copy the
tclass and put it on Request, then on success generate a new copy based
on the netlink notification and store it to Link.
This is the same as
0a0c2672dbd22dc85d660e5baa7e1bef701beb88,
65f5f581568448d6098358b704cae10a656d09f0, and friends, but for tclass.
Yu Watanabe [Mon, 2 Sep 2024 03:27:04 +0000 (12:27 +0900)]
network/qdisc: do not save qdisc to Link before it is configured
Otherwise, if the same kind of qdisc is already assigned, parameters
configured in .network file will not be used. So, let's first copy the
qdisc and put it on Request, then on success generate a new copy based
on the netlink notification and store it to Link.
This is the same as
0a0c2672dbd22dc85d660e5baa7e1bef701beb88,
65f5f581568448d6098358b704cae10a656d09f0, and friends, but for qdisc.
Preparation for fixing #31226.
Yu Watanabe [Mon, 2 Sep 2024 04:22:41 +0000 (13:22 +0900)]
network/tclass: make tclass_drop() static
This also drops unused constant return value.
Yu Watanabe [Mon, 2 Sep 2024 04:20:59 +0000 (13:20 +0900)]
network/qdisc: make qdisc_drop() static
This also drops unused constant return value.
Yu Watanabe [Mon, 2 Sep 2024 04:06:54 +0000 (13:06 +0900)]
network/tclass: skip requesting tclass if it is already requested
Yu Watanabe [Mon, 2 Sep 2024 03:55:59 +0000 (12:55 +0900)]
network/qdisc: skip requesting qdisc if it is already requested
Yu Watanabe [Mon, 2 Sep 2024 04:03:09 +0000 (13:03 +0900)]
network/neighbor: skip requesting neighbor if it is already requested
Yu Watanabe [Mon, 2 Sep 2024 02:59:51 +0000 (11:59 +0900)]
network/tclass: introduce tclass_ref() and tclass_unref()
No functional change, just refactoring and preparation for later change.
Yu Watanabe [Mon, 2 Sep 2024 02:41:57 +0000 (11:41 +0900)]
network/qdisc: introduce qdisc_ref() and qdisc_unref()
No functional change, just refactoring and preparation for later change.
Yu Watanabe [Tue, 27 Aug 2024 01:59:53 +0000 (10:59 +0900)]
conf-parser: use log_syntax_parse_error() and friends more
This also makes all conf parsers defined in conf-parser.c return 1
on success, 0 on non-critical error.
Also, use free_and_strdup_warn() where applicable.
Yu Watanabe [Sun, 1 Sep 2024 21:11:32 +0000 (06:11 +0900)]
conf-parser: several cleanups for DEFINE_CONFIG_PARSE_ENUMV() macro
- use GREEDY_REALLOC() and FOREACH_ARRAY(),
- do not set an array with only terminating 'invalid' value.
Note, this macro is only used by parsing NamePolicy= and AlternativeNamesPolicy=
in .link files. and udevd correctly handles both an empty array and an
array with only 'invalid'. Hence, this does not change any behavior.
Yu Watanabe [Tue, 27 Aug 2024 01:20:03 +0000 (10:20 +0900)]
tree-wide: drop msg argument for DEFINE_CONFIG_PARSE() macro and friends
This makes the macros use log_syntax_parse_error(), hopefully which provides
more informative log message in general, and reduces binary size.
Yu Watanabe [Sun, 1 Sep 2024 07:17:08 +0000 (16:17 +0900)]
log: protect errno from log_syntax_invalid_utf8_internal()
Potentially, utf8_escape_invalid() called by
log_syntax_invalid_utf8_internal() may update errno.
Yu Watanabe [Thu, 22 Aug 2024 05:14:03 +0000 (14:14 +0900)]
log: introduce log_syntax_parse_error()
This provides generic error message for failures in conf parsers.
Currently this is not used, but will be used later.
Yu Watanabe [Tue, 27 Aug 2024 02:47:35 +0000 (11:47 +0900)]
test: modernize test-networkd-conf
Yu Watanabe [Tue, 27 Aug 2024 02:58:25 +0000 (11:58 +0900)]
test: modernize test-conf-parser.c
Yu Watanabe [Sat, 31 Aug 2024 02:22:55 +0000 (11:22 +0900)]
conf-parser: make config_parse_strv() stricter and optionally drop duplicated entries
Yu Watanabe [Tue, 27 Aug 2024 02:17:56 +0000 (11:17 +0900)]
conf-parser: fix memleak in config_parse_calendar()
Fixes a bug introduced by
0e10c3d8724b0a5d07871c9de71565ac91dd55b7 (#25049).
Yu Watanabe [Sun, 1 Sep 2024 13:03:09 +0000 (22:03 +0900)]
Luca Boccassi [Sun, 1 Sep 2024 10:54:05 +0000 (11:54 +0100)]
Merge pull request #34213 from yuwata/network-route-fix-weight
network/route: fix adjustment of nexthop weight
Yu Watanabe [Sun, 1 Sep 2024 02:52:12 +0000 (11:52 +0900)]
network/route: fix adjustment of nexthop weight
Fixes #34167.
Yu Watanabe [Sun, 1 Sep 2024 01:39:51 +0000 (10:39 +0900)]
network/route: also update source, status, and so on EEXIST
Otherwise, an existing route may be labeled as foreign even after we
reconfigure it.
Yu Watanabe [Sun, 1 Sep 2024 02:09:45 +0000 (11:09 +0900)]
network/route: also show weight of gateway in debugging logs
Mike Yuan [Wed, 28 Aug 2024 17:15:10 +0000 (19:15 +0200)]
basic/raw-clone: refuse CLONE_PIDFD too
Zbigniew Jędrzejewski-Szmek [Sat, 31 Aug 2024 10:58:00 +0000 (13:58 +0300)]
docs/UIDS-GIDS: drop obsolete comment about Fedora
https://fedoraproject.org/wiki/Changes/RenameNobodyUser, 2018:
> Use "nobody:nobody" as the names for the kernel overflow UID:GID pair, and
> retire the old "nfsnobody" name and the old "nobody:nobody" pair with 99:99
> numbers.
Yu Watanabe [Sat, 31 Aug 2024 07:28:14 +0000 (16:28 +0900)]
test-network: use the same MTU bytes for veth interfaces
Hopefully fixes #34204.
Yu Watanabe [Sat, 31 Aug 2024 07:33:59 +0000 (16:33 +0900)]
labeler: set network label when tests for networkd or friends are updated
Yu Watanabe [Sat, 31 Aug 2024 06:20:15 +0000 (15:20 +0900)]
Merge pull request #34198 from AdrianVovk/updatectl-bugfixes
updatectl: Bugfixes
Christoph Anton Mitterer [Sat, 31 Aug 2024 03:40:52 +0000 (05:40 +0200)]
man: fix typos
Closes #34199.
Signed-off-by: Christoph Anton Mitterer <mail@christoph.anton.mitterer.name>
Adrian Vovk [Sat, 31 Aug 2024 02:39:17 +0000 (22:39 -0400)]
progress-bar: Add unbuffered variant
The progress_bar functions do their own buffering: they reconfigure
stderr, then print, then flush and disable buffering on their own. In
situations where multiple progress bars are being drawn at a time (for
example, in updatectl), it's even more efficient to hoist the buffering
and flushing to the call site, and avoid drawing each progress bar
individually.
To that end, new _unbuffered variants of the progress_bar functions. And
we use them in updatectl.
Adrian Vovk [Sat, 31 Aug 2024 01:57:07 +0000 (21:57 -0400)]
updatectl: Improve behavior of progress logging
This applies a couple of aesthetic changes to the way updatectl renders
progress information
1. We invert from "ICON TARGET MESSAGE" to "TARGET: ICON MESSAGE" to
better fit in with the systemd progress bars, which look like
"TARGET [==========---------] XX%". The original version of the
sysupdated PR implemented its own progress bars that were oriented
differently: "[==========---------] TARGET XX%". When we swapped
the progress bar we didn't swap the status messages
2. When a target finishes updating, instead of leaving a 100% progress
bar on screen for potentially extended periods of time (which implies
to the user that the update isn't actually done...), we show a status
message saying the target is done updating.
3. Fixed a minor bug where an extra newline would be printed after the
total progress bar. At the top of the rendering function, we scroll
the terminal's scroll-back just enough to fit a line for each target,
and one for the total. This means that we should not print an
additional line after the total, or else it'll scroll the terminal's
buffer by an additional character. This bug was introduced at some
point during review
4. Clears the Total progress bar before quitting. By the time we're
quitting, that progress bar will be showing no useful status for the
user. Also, the fix in point 3 will cause the shell's prompt to
appear on the same line as the Total progress bar, partially
overwriting it and leaving the shell in a glitchy state.
Yu Watanabe [Sat, 31 Aug 2024 02:19:13 +0000 (11:19 +0900)]
Adrian Vovk [Sat, 31 Aug 2024 01:53:14 +0000 (21:53 -0400)]
updatectl: Ensure we clear the progress bar
Otherwise we end up half-overwriting the progress bar, which looks buggy
Adrian Vovk [Sat, 31 Aug 2024 01:43:44 +0000 (21:43 -0400)]
sysupdated: Register known error types
This fixes a bug introduced during review of sysupdated. Originally,
we just returned EALREADY verbatim to signify that the target is
already up-to-date. Then we switched this to a proper error
(org.freedesktop.sysupdate1.NoCandidate) during review. But that now
maps to EIO, not EALREADY. Thus, whenever there's nothing to update,
updatectl would report I/O errors to the user, even though nothing
actually went wrong.
Adrian Vovk [Sat, 31 Aug 2024 01:25:37 +0000 (21:25 -0400)]
progress-bar: Put a space after the prefix
We always want a space there. So let's just put one in the drawing
routine, and adjust the call cites to avoid adding a second one.
Yu Watanabe [Fri, 30 Aug 2024 19:26:02 +0000 (04:26 +0900)]
Merge pull request #34189 from poettering/cryptenroll-slot-fix
cryptenroll: don't return slot 0 when we have no policy to search for
Daan De Meyer [Thu, 29 Aug 2024 20:59:48 +0000 (22:59 +0200)]
repart: Keep existing directory timestamps intact when copying
Otherwise, when merging multiple directory trees, the output becomes
unreproducible as the directory timestamps will be changed to the current
time when copying identical directories from the second tree.
We introduce a new copy flag to achieve this behavior.
PavlNekrasov [Fri, 30 Aug 2024 14:18:56 +0000 (17:18 +0300)]
Use correct error code in log message in pkcs11_token_find_x509_certificate (#34187)
Lennart Poettering [Thu, 29 Aug 2024 15:07:46 +0000 (17:07 +0200)]
test: when refusing to run slow tests, mention how to run them
Let's be helpful and provide an actionable hint.
Lennart Poettering [Wed, 28 Aug 2024 14:52:43 +0000 (16:52 +0200)]
crypenroll: make slot wiping on pin change a bit more explicit
Lennart Poettering [Thu, 29 Aug 2024 10:54:40 +0000 (12:54 +0200)]
cryptenroll: don't return slot 0 when we have no policy to search for
If the policy hash is empty we shouldn't return "0" from
search_policy_hash(), because that is understood as slot index 0, but
that's unlikely to match the policy.
Hence, return -ENOENT instead, indicating that we can't find a matching
slot.
Lennart Poettering [Tue, 27 Aug 2024 14:31:39 +0000 (16:31 +0200)]
cryptenroll: iovec'ify a few more things
Luca Boccassi [Fri, 30 Aug 2024 08:30:28 +0000 (09:30 +0100)]
mkosi: update debian commit reference
*
bb6db3edfe Install new sd-sysupdated files in systemd-container
Daan De Meyer [Tue, 27 Aug 2024 13:54:12 +0000 (15:54 +0200)]
repart: Switch to new mkfs.btrfs subvolume API
In https://github.com/kdave/btrfs-progs/pull/877 the API is changing
to "--subvol <path>:ro,default" so let's adapt our usage to match.
This also adds support for read-only subvolumes.
Fixes #34134
Daan De Meyer [Fri, 30 Aug 2024 10:15:15 +0000 (12:15 +0200)]
repart: Remove unused Context argument from make_subvolumes_set()
Daan De Meyer [Wed, 28 Aug 2024 12:29:50 +0000 (14:29 +0200)]
repart: Fix memory leak
Daan De Meyer [Tue, 27 Aug 2024 13:27:08 +0000 (15:27 +0200)]
image-policy: Fix size assertion
We're going to write a null pointer to l[m] so we need to make sure
m is smaller than the size of the array, not m + 1.
Daan De Meyer [Tue, 27 Aug 2024 13:26:20 +0000 (15:26 +0200)]
image-policy: Fix strv size calculation
We want the logarithm of the next power of two, which is the same
as the mask + 1, so add one to the mask to make sure the size is
sufficient to fit all flags.
Lennart Poettering [Thu, 29 Aug 2024 19:36:05 +0000 (21:36 +0200)]
treewide: use sd_json_variant_un{hex|base64}() pervasively
Use these helpers whenever appropriate. Drop separate string checks,
since these helpers already do them anyway.
No actual code change, just a rework to make use of a nice helper we
have already.