]> git.ipfire.org Git - thirdparty/systemd.git/log
thirdparty/systemd.git
6 months agoMerge pull request #29888 from mrc0mmand/network-generator
Luca Boccassi [Tue, 7 Nov 2023 00:10:43 +0000 (00:10 +0000)] 
Merge pull request #29888 from mrc0mmand/network-generator

test: add a couple of tests for systemd-network-generator

6 months agokernel-install: Add --root, --image and --image-policy
Daan De Meyer [Wed, 25 Oct 2023 07:57:44 +0000 (09:57 +0200)] 
kernel-install: Add --root, --image and --image-policy

Currently only supported for the "inspect" verb as "add" and "remove"
require figuring out what to do with plugins.

6 months agoresolve: use exact-match domain as routing domain for single-labels
Tad Fisher [Fri, 6 Oct 2023 20:52:07 +0000 (13:52 -0700)] 
resolve: use exact-match domain as routing domain for single-labels

With ResolveUnicastSingleLabel=yes, a scope's search domains are affixed to the
query even when a routing domain matches the single-label query name,
preventing the use of dotless single-label domains entirely.

This changes dns_scope_name_wants_search_domain() to return false when the
scope contains an exact match of the single-label name in the query, allowing
lookups for dotless domains with ResolveUnicastSingleLabel enabled.

6 months agoMerge pull request #29882 from keszybz/documentation-cleanup
Luca Boccassi [Mon, 6 Nov 2023 21:24:08 +0000 (21:24 +0000)] 
Merge pull request #29882 from keszybz/documentation-cleanup

Documentation cleanup

6 months agotest: wait for the "latest" systemd-bsod message
Frantisek Sumsal [Mon, 6 Nov 2023 19:00:09 +0000 (20:00 +0100)] 
test: wait for the "latest" systemd-bsod message

Let's wait for the "latest" message systemd-bsod prints to the console
to appear, otherwise we might be too fast and take a console snapshot
before it contains all the information:

[   44.237788] testsuite-04.sh[1744]: + setterm --term linux --dump --file /tmp/console.dump
[   44.246089] systemd-bsod[1858]: QR code could not be printed, ignoring: Operation not supported
[   44.305692] testsuite-04.sh[1744]: + grep -aq 'The current boot has failed' /tmp/console.dump
[   44.308047] testsuite-04.sh[1744]: + grep -aq 'Service emergency message' /tmp/console.dump
[   44.311200] testsuite-04.sh[1744]: + grep -aq 'Press any key to exit' /tmp/console.dump
[   44.314359] testsuite-04.sh[1744]: + at_exit
[   44.315087] testsuite-04.sh[1744]: + local EC=1
[   44.315945] testsuite-04.sh[1744]: + [[ 1 -ne 0 ]]
[   44.316647] testsuite-04.sh[1744]: + [[ -e /tmp/console.dump ]]
[   44.318305] testsuite-04.sh[1744]: + cat /tmp/console.dump
[   44.319320] testsuite-04.sh[1871]:    The current boot has failed!
[   44.319970] testsuite-04.sh[1871]:    Service emergency message

6 months agotest-network: test MultiPathRoute= via another interface
Yu Watanabe [Mon, 6 Nov 2023 18:20:38 +0000 (03:20 +0900)] 
test-network: test MultiPathRoute= via another interface

Prompted by https://github.com/systemd/systemd/pull/14194#issuecomment-1795489641.

6 months agotest: add a couple of tests for systemd-network-generator 29888/head
Frantisek Sumsal [Mon, 6 Nov 2023 16:49:17 +0000 (17:49 +0100)] 
test: add a couple of tests for systemd-network-generator

Only for ip= stuff, for now.

6 months agoMerge pull request #29894 from bluca/typo
Luca Boccassi [Mon, 6 Nov 2023 20:29:16 +0000 (20:29 +0000)] 
Merge pull request #29894 from bluca/typo

udev/man typos

6 months agoman/systemd-stub: split and simplify a wall'o'text paragraph 29882/head
Zbigniew Jędrzejewski-Szmek [Mon, 6 Nov 2023 14:02:51 +0000 (15:02 +0100)] 
man/systemd-stub: split and simplify a wall'o'text paragraph

6 months agoman/networkctl,systemd-soft-reboot: capitalize and add periods
Zbigniew Jędrzejewski-Szmek [Mon, 6 Nov 2023 14:02:20 +0000 (15:02 +0100)] 
man/networkctl,systemd-soft-reboot: capitalize and add periods

We added version information, so now each bullet point contains multiple
paragraphs, so we need proper sentences.

6 months agoman: "Documentation" is not part of the title
Zbigniew Jędrzejewski-Szmek [Mon, 6 Nov 2023 14:00:46 +0000 (15:00 +0100)] 
man: "Documentation" is not part of the title

<ulinks> contents are used to generate a SEE ALSO section at the
bottom of a man page, so we need to include the title, without additional
words, in the content.

6 months agoman: more hyperlinks and other fixes
Zbigniew Jędrzejewski-Szmek [Mon, 6 Nov 2023 13:59:00 +0000 (14:59 +0100)] 
man: more hyperlinks and other fixes

Closes https://github.com/systemd/systemd/issues/29814.

6 months agotree-wide: s/life-cycle/lifecycle/g
Zbigniew Jędrzejewski-Szmek [Mon, 6 Nov 2023 13:52:01 +0000 (14:52 +0100)] 
tree-wide: s/life-cycle/lifecycle/g

6 months agodocs: fix title levels, remove unneded words
Zbigniew Jędrzejewski-Szmek [Mon, 6 Nov 2023 13:50:03 +0000 (14:50 +0100)] 
docs: fix title levels, remove unneded words

The title applies to the whole page, not just the first section.
And there should be just one title ('# foo') in a given document.

6 months agoman: use meaningful titles for <ulink>s
Zbigniew Jędrzejewski-Szmek [Mon, 6 Nov 2023 11:43:40 +0000 (12:43 +0100)] 
man: use meaningful titles for <ulink>s

As pointed out in https://github.com/systemd/systemd/issues/29814, we need to
use phrases are are meaningful on their own, because the man page formatter
creates a list at the bottom. With <ulink>see docs</ulink>, we end up with:
  NOTES:
    1. see docs
       https://some.url/page
    2. see docs
       https://some.url/page2
which is not very useful :(

Also, the text inside the tag should not include punctuation.

Python helper:
  from xml_helper import xml_parse
  for p in glob.glob('../man/*.xml'):
       t = xml_parse(p)
       ulinks = t.iterfind('.//ulink')
       for ulink in ulinks:
           if ulink.text is None: continue
           text = ' '.join(ulink.text.split())
           print(f'{p}: {text}')

6 months agoRevert "mkosi: Use cache and build subdirectories"
Daan De Meyer [Mon, 6 Nov 2023 18:24:00 +0000 (19:24 +0100)] 
Revert "mkosi: Use cache and build subdirectories"

We're not going ahead with the corresponding change in mkosi
after all so revert the preparatory change in systemd as well.

This reverts commit f756bcdf17915ffb3b8e3e21b4aa2b53ccaaac1a.

6 months agotest: fix build without SBAT_DISTRO
Luca Boccassi [Mon, 6 Nov 2023 16:31:50 +0000 (16:31 +0000)] 
test: fix build without SBAT_DISTRO

Follow-up for c9bebec872

6 months agoman: fix typo 29894/head
Luca Boccassi [Mon, 6 Nov 2023 18:50:30 +0000 (18:50 +0000)] 
man: fix typo

allows to -> allows one to

6 months agoudev: ressize -> result_size
Luca Boccassi [Mon, 6 Nov 2023 18:48:25 +0000 (18:48 +0000)] 
udev: ressize -> result_size

Lintian flags it as a typo of 'resize', so rename it and make it clearer too

6 months agonetwork-generator: allow specifying MAC address without MTU
Frantisek Sumsal [Mon, 6 Nov 2023 16:46:59 +0000 (17:46 +0100)] 
network-generator: allow specifying MAC address without MTU

Also, don't panic when both optional arguments are empty. This should
make the syntax compatible-ish with the dracut one from dracut.cmdline(7).

Resolves: #29855

6 months agonetwork-generator: correctly handle IPv6 DNS servers in ip=
Frantisek Sumsal [Mon, 6 Nov 2023 16:05:11 +0000 (17:05 +0100)] 
network-generator: correctly handle IPv6 DNS servers in ip=

IPv6 addresses in the ip= assignment need to be enclosed in [], which
was handled for all IP-related fields except for the two optional DNS
fields.

6 months agologin: switch an if condition to a switch statement
Peter Hutterer [Wed, 1 Nov 2023 01:57:21 +0000 (11:57 +1000)] 
login: switch an if condition to a switch statement

No functional changes but makes the code more readable once we expand
the list of device types.

6 months agoupdate TODO
Lennart Poettering [Mon, 6 Nov 2023 16:37:21 +0000 (17:37 +0100)] 
update TODO

6 months agotcrypt: try all entered passphrases instead of just the first one (#29837)
jjimbo137 [Mon, 6 Nov 2023 16:39:01 +0000 (11:39 -0500)] 
tcrypt: try all entered passphrases instead of just the first one (#29837)

Previously only the first entered passphrase would be used.  Add the ability to check all the passwords entered by the user.  The total number of passwords entered is still limited by passphrase entry limit.

6 months agobootctl: fix -q option
Antonio Alvarez Feijoo [Mon, 6 Nov 2023 13:54:42 +0000 (14:54 +0100)] 
bootctl: fix -q option

Follow up to 14e6e444dd9eaa0db229548c31baecd75de4478e

6 months agoman/bootctl: fix --dry-run entry
Antonio Alvarez Feijoo [Mon, 6 Nov 2023 15:32:49 +0000 (16:32 +0100)] 
man/bootctl: fix --dry-run entry

Fixes 8702496bfb0205764569782a9a2ebd11fd80e5e8

6 months agoman/measure: document --uname
Antonio Alvarez Feijoo [Mon, 6 Nov 2023 14:29:23 +0000 (15:29 +0100)] 
man/measure: document --uname

Follow up to b6f2e6860220aa89550f690b12246c4e8eb6e908

6 months agoMerge pull request #29675 from DaanDeMeyer/kernel-install-json
Yu Watanabe [Mon, 6 Nov 2023 16:07:03 +0000 (01:07 +0900)] 
Merge pull request #29675 from DaanDeMeyer/kernel-install-json

kernel-install: Add --json option for inspect verb

6 months agoMerge pull request #29872 from yuwata/udevadm-trigger-receive-buffer-size
Luca Boccassi [Mon, 6 Nov 2023 14:43:23 +0000 (14:43 +0000)] 
Merge pull request #29872 from yuwata/udevadm-trigger-receive-buffer-size

udevadm-trigger: extend receive buffer size

6 months agopcrlock: show emojis for each PCR line
Lennart Poettering [Mon, 6 Nov 2023 12:32:02 +0000 (13:32 +0100)] 
pcrlock: show emojis for each PCR line

I am sorry, I totally forgot adding emojis reflecting the state of each
PCR. I hope I can do better in future, and hereby I'd like to rectify
the situation a bit.

6 months agoNEWS: drop left-over .md suffix
Lennart Poettering [Mon, 6 Nov 2023 14:18:40 +0000 (15:18 +0100)] 
NEWS: drop left-over .md suffix

6 months agokernel-install: Add --json option for inspect verb 29675/head
Daan De Meyer [Mon, 23 Oct 2023 09:18:35 +0000 (11:18 +0200)] 
kernel-install: Add --json option for inspect verb

In mkosi, we can't use kernel-install directly but we do want to
mimick its behavior as much as possible. Let's make that easier by
making it easy to fetch data from kernel-install as JSON.

To get all the necessary data, we extend the inspect verb to also
allow passing in a kernel version and initrds, to mimick the "add"
verb. The kernel version is used to determine the "Entry Directory",
and in absence of auto-detection of kernel version in kernel-install
we have to allow users to pass it.

We also add --no-pager while we're at it.

6 months agoboot-entry: Add boot_entry_token_type_to_string()
Daan De Meyer [Mon, 23 Oct 2023 09:18:19 +0000 (11:18 +0200)] 
boot-entry: Add boot_entry_token_type_to_string()

6 months agokernel-install: Fix doc whitespace
Daan De Meyer [Mon, 23 Oct 2023 09:18:01 +0000 (11:18 +0200)] 
kernel-install: Fix doc whitespace

6 months agoNEWS: fix typo
Luca Boccassi [Mon, 6 Nov 2023 12:25:58 +0000 (12:25 +0000)] 
NEWS: fix typo

6 months agovmspawn: extend kernel cmdline with extra args v255-rc1
Sam Leonard [Mon, 6 Nov 2023 10:25:12 +0000 (10:25 +0000)] 
vmspawn: extend kernel cmdline with extra args

This changes how the "extra" command line arguments passed to vmspawn
are handled.

Previously they were appended to the QEMU command line directly.
Now they are appended to the kernel command line using SMBIOS instead.

6 months agoMerge pull request #29875 from bluca/news
Luca Boccassi [Mon, 6 Nov 2023 11:43:21 +0000 (11:43 +0000)] 
Merge pull request #29875 from bluca/news

Update NEWS and hwdb

6 months agosd-device-monitor: unconditionally increase buffer size by sd_device_monitor_new() 29872/head
Yu Watanabe [Mon, 6 Nov 2023 11:39:46 +0000 (20:39 +0900)] 
sd-device-monitor: unconditionally increase buffer size by sd_device_monitor_new()

As suggested at https://github.com/systemd/systemd/pull/29872#discussion_r1382932633:
> socket memory is these days accounted to the process that owns a socket,
> hence we shouldn't be too concerned that this might waste memory.

6 months agotest: add test case for issue #29863
Frantisek Sumsal [Mon, 6 Nov 2023 11:26:53 +0000 (20:26 +0900)] 
test: add test case for issue #29863

6 months agoNEWS: finalize 29875/head
Luca Boccassi [Mon, 6 Nov 2023 10:38:17 +0000 (10:38 +0000)] 
NEWS: finalize

6 months agoUpdate hwdb
Luca Boccassi [Mon, 6 Nov 2023 10:37:29 +0000 (10:37 +0000)] 
Update hwdb

6 months agoNEWS: update contributors list
Luca Boccassi [Mon, 6 Nov 2023 10:35:45 +0000 (10:35 +0000)] 
NEWS: update contributors list

6 months agoMerge pull request #29873 from yuwata/network-revert-hop-limit
Luca Boccassi [Mon, 6 Nov 2023 10:00:46 +0000 (10:00 +0000)] 
Merge pull request #29873 from yuwata/network-revert-hop-limit

network: several follow-ups for IPv6 hop limit

6 months agonetwork: do not try to set invalid value for IPv6 hop limit 29873/head
Yu Watanabe [Mon, 6 Nov 2023 06:46:39 +0000 (15:46 +0900)] 
network: do not try to set invalid value for IPv6 hop limit

6 months agonetwork: fix indentation
Yu Watanabe [Mon, 6 Nov 2023 06:42:53 +0000 (15:42 +0900)] 
network: fix indentation

Follow-up for f141b2c053527cdf2500dae5cd4f470ed964b436.

6 months agoRevert "ndisc: Also set link hoplimit"
Yu Watanabe [Mon, 6 Nov 2023 06:28:12 +0000 (15:28 +0900)] 
Revert "ndisc: Also set link hoplimit"

This reverts commit 0ba8374bb8a7032ca13ba98d10e8d7c3378ca9c6.

- link->network->ipv6_hop_limit must not be updated, as it may be used
  by multiple interfaces,
- We may receive multiple RA from multiple routers with different hop
  limit, and we should not make the default hop limit flicking,
- First of all, there is no reason that we need to update the default hop
  limit,
- The original issue should be caused by the hash and compare functions
  for Route object.

6 months agoudevadm-trigger: extend receive buffer size
Yu Watanabe [Mon, 6 Nov 2023 05:50:43 +0000 (14:50 +0900)] 
udevadm-trigger: extend receive buffer size

We may trigger huge number of devices and will receive many events.
Let's extend the buffer size, otherwise the buffer may be filled.

Fixes #29863.

6 months agoNEWS: mention new rpm macros
Zbigniew Jędrzejewski-Szmek [Sun, 5 Nov 2023 17:44:35 +0000 (18:44 +0100)] 
NEWS: mention new rpm macros

6 months agoNEWS: reword things, change ordering, remove one duplicate
Zbigniew Jędrzejewski-Szmek [Fri, 3 Nov 2023 14:41:55 +0000 (15:41 +0100)] 
NEWS: reword things, change ordering, remove one duplicate

6 months agokernel-install: Log location that uki is installed in
Daan De Meyer [Sun, 5 Nov 2023 12:50:25 +0000 (13:50 +0100)] 
kernel-install: Log location that uki is installed in

Let's log where we install a UKI when running in verbose mode.

6 months agotest: make the test happy with coverage builds
Frantisek Sumsal [Sat, 4 Nov 2023 20:16:27 +0000 (21:16 +0100)] 
test: make the test happy with coverage builds

Bump the LimitFSIZE=, since the process needs to write quite a lot of
.gcda files, and suppress coverage errors with DynamicUser=true.

6 months agoUpdate NEWS
Luca Boccassi [Sat, 4 Nov 2023 16:51:28 +0000 (16:51 +0000)] 
Update NEWS

Note that vmspawn and pcrlock are new and the interface might change

6 months agoMerge pull request #29862 from mrc0mmand/udevadm-followups
Luca Boccassi [Sat, 4 Nov 2023 16:48:48 +0000 (16:48 +0000)] 
Merge pull request #29862 from mrc0mmand/udevadm-followups

A couple of follow-ups for `udevadm control`

6 months agoudevadm: actually set the log level 29862/head
Frantisek Sumsal [Sat, 4 Nov 2023 13:05:04 +0000 (14:05 +0100)] 
udevadm: actually set the log level

Follow-up to e4080a6d97.

6 months agoudevadm: make sure we don't reset max children on each invocation
Frantisek Sumsal [Sat, 4 Nov 2023 11:28:49 +0000 (12:28 +0100)] 
udevadm: make sure we don't reset max children on each invocation

Follow-up to e4080a6d97.

6 months agoMerge pull request #29858 from bluca/news
Luca Boccassi [Sat, 4 Nov 2023 10:43:35 +0000 (10:43 +0000)] 
Merge pull request #29858 from bluca/news

man/NEWS update for sleep.conf

6 months agoman: drop obsolete reference to SuspendMode= 29858/head
Luca Boccassi [Fri, 3 Nov 2023 21:33:52 +0000 (21:33 +0000)] 
man: drop obsolete reference to SuspendMode=

Follow-up for 1f82c21dce

6 months agoNEWS: update for deprecated sleep configs
Luca Boccassi [Fri, 3 Nov 2023 21:32:36 +0000 (21:32 +0000)] 
NEWS: update for deprecated sleep configs

6 months agoMerge pull request #29402 from yuwata/sd-journal-cleanups-for-generic-array-bisect
Luca Boccassi [Sat, 4 Nov 2023 10:38:03 +0000 (10:38 +0000)] 
Merge pull request #29402 from yuwata/sd-journal-cleanups-for-generic-array-bisect

sd-journal: cleanups for generic_array_bisect()

6 months agoMerge pull request #29469 from yuwata/sd-journal-pin-object
Luca Boccassi [Sat, 4 Nov 2023 10:37:43 +0000 (10:37 +0000)] 
Merge pull request #29469 from yuwata/sd-journal-pin-object

sd-journal: add a way to 'pin' object to protect from reading another object with the same type

6 months agotree-wide: fix typo
Yu Watanabe [Sat, 4 Nov 2023 02:58:12 +0000 (11:58 +0900)] 
tree-wide: fix typo

6 months agosd-journal: make generic_array_bisect_plus_one() take data object 29469/head
Yu Watanabe [Sat, 30 Sep 2023 04:30:15 +0000 (13:30 +0900)] 
sd-journal: make generic_array_bisect_plus_one() take data object

Then, rename it to generic_array_bisect_for_data().
No functional change, just refactoring.

6 months agosd-journal: introduce journal_file_pin_object()
Yu Watanabe [Sat, 30 Sep 2023 03:03:13 +0000 (12:03 +0900)] 
sd-journal: introduce journal_file_pin_object()

Previously, OBJECT_UNUSED was used for 'pinning' the mmap cache for an
object. But, OBJECT_UNUSED is also used for reading object when type
cannot be determined before read, e.g. when reading the tail object.

Let's introduce another category for pinning mmap cache, and use it when
we want to temporary pin an object.

6 months agommap-cache: introduce window_matches_by_addr()
Yu Watanabe [Sat, 30 Sep 2023 02:46:42 +0000 (11:46 +0900)] 
mmap-cache: introduce window_matches_by_addr()

It is similar to window_matches(), but checks the mapped address.
Mostly preparation for later commits.

6 months agommap-cache: introduce enum MMapCacheCategory
Yu Watanabe [Sat, 30 Sep 2023 03:44:22 +0000 (12:44 +0900)] 
mmap-cache: introduce enum MMapCacheCategory

Then rename context -> category.

No functional change, just refactoring and modernization.

6 months agommap-cache: drop Context and boolean flags in Window
Yu Watanabe [Fri, 29 Sep 2023 19:49:53 +0000 (04:49 +0900)] 
mmap-cache: drop Context and boolean flags in Window

No functional change, just refactoring.

6 months agosd-journal: rework generic_array_bisect() 29402/head
Yu Watanabe [Wed, 27 Sep 2023 17:14:31 +0000 (02:14 +0900)] 
sd-journal: rework generic_array_bisect()

- Rename generic_array_bisect_one() -> generic_array_bisect_step(), as there
  is also generic_array_bisect_plus_one(), so the original name is confusing.
- Make generic_array_bisect_step() return TEST_GOTO_NEXT or TEST_GOTO_PREVIOUS
  when the current array does not contain any matching entries.
- Make generic_array_bisect_step() symmetric with respect to the direction
  we are going to, except for the journal corruption handling.
- Make generic_array_bisect_step() gracefully handle journal corruptions,
  so the corruption handling in the caller side can be mostly dropped.
- Especially, when the last entry in an array is corrupted, previously
  we tried to find a valid entry sequentially from the end of the array,
  but now we anyway bisect the array. That should improve performance of
  reading corrupted journal files.
- Return earlier when no entry linked to the chained array (n == 0).
- Add many comments.

No behavior change unless journal is corrupted.

6 months agosd-journal: drop redundant re-reading of entry array object
Yu Watanabe [Mon, 25 Sep 2023 21:05:21 +0000 (06:05 +0900)] 
sd-journal: drop redundant re-reading of entry array object

This effectively reverts e562f131585fe6ae32b1f035ba48c1548d695259.

In the loop of the generic_array_bisect(), the offset of the entry array
object is unchanged, the object is read at the beginning of the loop, and
we do not read any other entry array object. Hence, it is not necessary to
re-read the object every time we use the object.

6 months agotest: wait for the nvme device to appear
Frantisek Sumsal [Fri, 3 Nov 2023 14:31:52 +0000 (15:31 +0100)] 
test: wait for the nvme device to appear

Also, use a /dev/disk/by-id/ symlink to the device, which should be
predictable, unlike the /dev/nvmeX stuff.

6 months agoMerge pull request #29848 from poettering/base64url-too
Luca Boccassi [Fri, 3 Nov 2023 23:26:33 +0000 (23:26 +0000)] 
Merge pull request #29848 from poettering/base64url-too

hexdecoct: implicitly parse URL-safe base64 format, too

6 months agofuzz: limit the interface definition input size to 64K
Frantisek Sumsal [Fri, 3 Nov 2023 19:37:59 +0000 (20:37 +0100)] 
fuzz: limit the interface definition input size to 64K

To avoid timeouts with larger inputs.

Resolves: #29856

6 months agoUpdate NEWS
Luca Boccassi [Fri, 3 Nov 2023 20:50:48 +0000 (20:50 +0000)] 
Update NEWS

6 months agotest: add a couple of tests for systemd-bsod
Frantisek Sumsal [Fri, 6 Oct 2023 15:14:34 +0000 (17:14 +0200)] 
test: add a couple of tests for systemd-bsod

Add some basic tests for systemd-bsod, mainly to have something to build on
for #29056.

6 months agoRevert "test: don't panic on soft lockups"
Frantisek Sumsal [Fri, 3 Nov 2023 14:15:33 +0000 (15:15 +0100)] 
Revert "test: don't panic on soft lockups"

Let's put this back in, as it could help with occasional machine lock ups
on overloaded systems (and it didn't help with the original issue
anyway).

This reverts commit 3a89904e45cbbd96fb1c5d0768de5e5fcdaaa508.

6 months agoMerge pull request #29839 from goenkam/maanya/portabled_support_for_confext
Luca Boccassi [Fri, 3 Nov 2023 20:37:46 +0000 (20:37 +0000)] 
Merge pull request #29839 from goenkam/maanya/portabled_support_for_confext

portable: add support for confext

6 months agotest: add test for the combined base64/base64url decoder 29848/head
Lennart Poettering [Fri, 3 Nov 2023 20:34:45 +0000 (21:34 +0100)] 
test: add test for the combined base64/base64url decoder

6 months agohexdecoct: implicitly parse URL-safe base64 format, too
Lennart Poettering [Fri, 3 Nov 2023 13:07:39 +0000 (14:07 +0100)] 
hexdecoct: implicitly parse URL-safe base64 format, too

JSON-I (RFC 7493) suggests to use the URL safe base64 alphabet, rather
than the regular one when encoding binary data in JSON strings. We
generally uses the regular alphabet though.

Let's be tolerant in what we parse however: simply accept both formats
when we parse base64.

This does nothing about base64 generation though, only about parsing.

6 months agoMerge pull request #29847 from dtardon/udevadm-control-arg-processing
Luca Boccassi [Fri, 3 Nov 2023 20:34:53 +0000 (20:34 +0000)] 
Merge pull request #29847 from dtardon/udevadm-control-arg-processing

Streamline `udevadm control` arg. handling

6 months agocryptsetup: do not print (null) if pkcs11 uri not set
Antonio Alvarez Feijoo [Fri, 3 Nov 2023 15:28:14 +0000 (16:28 +0100)] 
cryptsetup: do not print (null) if pkcs11 uri not set

The pkcs11 uri is no set if the smart card is not inserted while using
`pkcs11-uri=auto` with libcryptsetup plugins.

```
> systemd-cryptsetup attach cr_data /dev/sda1 - pkcs11-uri=auto
Set cipher aes, mode xts-plain64, key size 512 bits for device /dev/sda1.
Security token (null) not present for unlocking volume Linux filesystem (cr_data), please plug it in.
```

6 months agoudev-ctrl: drop the unused maybe_disconnected stuff 29847/head
David Tardon [Fri, 3 Nov 2023 13:08:37 +0000 (14:08 +0100)] 
udev-ctrl: drop the unused maybe_disconnected stuff

6 months agoudevadm-control: return early if --exit is used
David Tardon [Fri, 3 Nov 2023 13:01:54 +0000 (14:01 +0100)] 
udevadm-control: return early if --exit is used

All the following commands would just fail with -ENOANO anyway, hence
there's no point in sending them. And it allows us to shave off some
error handling code.

6 months agoudevadm-control: parse all args in advance
David Tardon [Fri, 3 Nov 2023 12:12:42 +0000 (13:12 +0100)] 
udevadm-control: parse all args in advance

This is mostly just refactoring to make the code more manageable and
extendable. It doesn't introduce any semantic changes, but it
"optimizes" the communication with udevd a bit:
* If an option is used multiple times, only one command will be sent. If
  the option takes a value, the value of the final appearance of the
  option is used. The only exception is --property, which is additive by
  nature.
* Options --start-exec-queue and --stop-exec-queue are handled together.
  Only one of START_QUEUE/STOP_QUEUE commands will be sent to udevd even
  if both options appear on the command line.

6 months agoportable: add support for confext 29839/head
Maanya Goenka [Wed, 16 Aug 2023 18:43:06 +0000 (18:43 +0000)] 
portable: add support for confext

Support confexts for portable services

6 months agocore: check that extensions have the hierarchies before overlaying
Luca Boccassi [Wed, 1 Nov 2023 19:39:37 +0000 (19:39 +0000)] 
core: check that extensions have the hierarchies before overlaying

Before confext was added, hierarchies always existed in extensions. Now
they are optional - i.e., a sysext will not contain /etc/. So mixing a
confext and a sysext fails, as we'll try to create an overlay with /etc/
from the base, the confext and the sysext, but the latter doesn't have
the directory.

After the source images are mounted, check that each hierarchy exists in
each source image before creating the overlay, and drop them if they
don't.

Follow-up for 55ea4ef096543

6 months agostrv: add strv_free_many() to be used with CLEANUP_ARRAY()
Luca Boccassi [Fri, 3 Nov 2023 16:59:32 +0000 (16:59 +0000)] 
strv: add strv_free_many() to be used with CLEANUP_ARRAY()

6 months agoNEWS: add entry for vmspawn
Luca Boccassi [Fri, 3 Nov 2023 16:43:01 +0000 (16:43 +0000)] 
NEWS: add entry for vmspawn

6 months agoNEWS: fix typo and reword meson option entry
Luca Boccassi [Fri, 3 Nov 2023 16:13:20 +0000 (16:13 +0000)] 
NEWS: fix typo and reword meson option entry

6 months agoupdate NEWS
Lennart Poettering [Fri, 3 Nov 2023 16:40:33 +0000 (17:40 +0100)] 
update NEWS

6 months agonamespace: fix whitespace mixup
Lennart Poettering [Fri, 3 Nov 2023 16:27:41 +0000 (17:27 +0100)] 
namespace: fix whitespace mixup

6 months agomore additions to NEWS
Lennart Poettering [Fri, 3 Nov 2023 16:27:33 +0000 (17:27 +0100)] 
more additions to NEWS

6 months agoMerge pull request #28891 from poettering/pcrlock
Luca Boccassi [Fri, 3 Nov 2023 16:07:43 +0000 (16:07 +0000)] 
Merge pull request #28891 from poettering/pcrlock

new pcrlock tool for generating signed PCR policies for PCR 0, 1, 4, …

6 months agobsod: restore vt on SIGTERM/SIGINT
Frantisek Sumsal [Fri, 3 Nov 2023 10:05:30 +0000 (11:05 +0100)] 
bsod: restore vt on SIGTERM/SIGINT

Let's install a simple no-op signal handler without SA_RESTART for
SIGINT/SIGTERM, which allows us to interrupt read_one_char() and follow
it up with a proper cleanup, including restoring the vt to the original
state.

Resolves: #29478

6 months agovirt: also check if PID1 is in chroot
Yu Watanabe [Fri, 3 Nov 2023 05:29:59 +0000 (14:29 +0900)] 
virt: also check if PID1 is in chroot

In PID1, running_in_chroot() is called by safety_checks(), but without
this change, the check did nothing.

6 months agonspawn: allow disabling os-release check
Frantisek Sumsal [Fri, 3 Nov 2023 08:17:48 +0000 (09:17 +0100)] 
nspawn: allow disabling os-release check

Introduce a new env variable $SYSTEMD_NSPAWN_CHECK_OS_RELEASE, that can
be used to disable the os-release check for bootable OS trees. Useful
when trying to boot a container with empty /etc/ and bind-mounted /usr/.

Resolves: #29185

6 months agoMerge pull request #29508 from CodethinkLabs/systemd-vmspawn-pr
Luca Boccassi [Fri, 3 Nov 2023 16:04:38 +0000 (16:04 +0000)] 
Merge pull request #29508 from CodethinkLabs/systemd-vmspawn-pr

systemd-vmspawn implementation that only supports disk images

6 months agoMerge pull request #29840 from poettering/cryptsetup-tweaks-nore
Lennart Poettering [Fri, 3 Nov 2023 13:40:15 +0000 (14:40 +0100)] 
Merge pull request #29840 from poettering/cryptsetup-tweaks-nore

two cryptsetup bugfixes and some clean-ups

6 months agonspawn: fix two failure paths
Lennart Poettering [Fri, 3 Nov 2023 08:42:53 +0000 (09:42 +0100)] 
nspawn: fix two failure paths

We need to go to "finish" rather than just return.

All our exit paths got this right, except two.

6 months agoMerge pull request #29836 from poettering/libiptc-dlopen
Yu Watanabe [Fri, 3 Nov 2023 12:15:29 +0000 (21:15 +0900)] 
Merge pull request #29836 from poettering/libiptc-dlopen

make libiptc dep a dlopen() one

6 months agoupdate TODO
Lennart Poettering [Fri, 3 Nov 2023 11:14:38 +0000 (12:14 +0100)] 
update TODO

6 months agoMerge pull request #29827 from yuwata/network-install-default-configs
Lennart Poettering [Fri, 3 Nov 2023 10:37:04 +0000 (11:37 +0100)] 
Merge pull request #29827 from yuwata/network-install-default-configs

network: add meson option to install default configs