]> git.ipfire.org Git - thirdparty/systemd.git/log
thirdparty/systemd.git
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 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 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

6 months agoupdate TODO 28891/head
Lennart Poettering [Mon, 23 Oct 2023 08:27:14 +0000 (10:27 +0200)] 
update TODO

6 months agotest: add pcrlock integration test
Lennart Poettering [Thu, 26 Oct 2023 11:52:06 +0000 (13:52 +0200)] 
test: add pcrlock integration test

(Contains various test additions added by @mrc0mmand)

6 months agoman: document pcrlock
Lennart Poettering [Wed, 25 Oct 2023 11:51:34 +0000 (13:51 +0200)] 
man: document pcrlock

6 months agounits: add units that put together and install a TPM2 PCR policy at boot
Lennart Poettering [Mon, 23 Oct 2023 10:02:53 +0000 (12:02 +0200)] 
units: add units that put together and install a TPM2 PCR policy at boot

(This is disabled by default, for now)

6 months agopcrlock: add pre-defined pcrlock files
Lennart Poettering [Wed, 16 Aug 2023 09:40:01 +0000 (11:40 +0200)] 
pcrlock: add pre-defined pcrlock files

These cover well-known measurements done by the UEFI firmware or
systemd.

6 months agotree-wide: hook everything up with pcrlock policy
Lennart Poettering [Tue, 24 Oct 2023 20:30:47 +0000 (22:30 +0200)] 
tree-wide: hook everything up with pcrlock policy

Make sure cryptenroll and repart can enroll TPM2 policies with pcrlock
logic.

Make sure cryptsetup can unlock TPM2 policies with pcrlock in effect.

6 months agopcrlock: add new pcrlock tool
Lennart Poettering [Wed, 16 Aug 2023 09:39:23 +0000 (11:39 +0200)] 
pcrlock: add new pcrlock tool

6 months agotpm2-util: add common array for TPM2 hash algorithms
Lennart Poettering [Mon, 23 Oct 2023 20:36:09 +0000 (22:36 +0200)] 
tpm2-util: add common array for TPM2 hash algorithms

This is useful to enumerate all hash algorithms we want to predict
measurements for.

6 months agotpm2-util: make various marshalling/unmarshalling calls static, as we only use them...
Lennart Poettering [Sat, 21 Oct 2023 14:34:28 +0000 (16:34 +0200)] 
tpm2-util: make various marshalling/unmarshalling calls static, as we only use them internally in tpm2-util.c

Note, some of these were just added in this same PR. We only exported
them initially to make sure gcc doesn't complained about unused local
symbols.

6 months agotpm2-util: add generic helpers for sealing/unsealing data
Lennart Poettering [Mon, 23 Oct 2023 08:30:25 +0000 (10:30 +0200)] 
tpm2-util: add generic helpers for sealing/unsealing data

These helpers tpm2_seal_data()/tpm2_unseal_data() are useful for
sealing/unsealing data without any further semantics around them. This
is different from the existing tpm2_seal()/tpm2_unseal() which seal with
a specific policy and serialize in a specific way, as we use it for disk
encryption.

These new helpers are more generic, they do not serialize in a specific
way or imply policy, they are just the core of the sealing/unsealing.

(We should look into porting tpm2_seal()/tpm2_unseal() onto these new
helpers, but this isn#t trivial, since the classic serialization we use
uses a merged marshalling of private/public key, which we'd have to
change in one way or another)

6 months agotpm2-util: add helper for creating/removing/updating NV index with stored policy
Lennart Poettering [Mon, 23 Oct 2023 08:28:59 +0000 (10:28 +0200)] 
tpm2-util: add helper for creating/removing/updating NV index with stored policy

This is the primary core of what pcrlock is supposed to do eventually:
maintain a TPM2 policy hash inside an NV index which we then can
reference via a PolicyAuthorizeNV expression to lock other objects
against it.

6 months agotpm2-util: add calls for calculating/submitting PolicyAuthorizeNV + PolicyOR TPM2...
Lennart Poettering [Thu, 19 Oct 2023 15:54:48 +0000 (17:54 +0200)] 
tpm2-util: add calls for calculating/submitting PolicyAuthorizeNV + PolicyOR TPM2 policies

6 months agotpm2-util: add helper that calculates name of NV index
Lennart Poettering [Thu, 19 Oct 2023 15:53:50 +0000 (17:53 +0200)] 
tpm2-util: add helper that calculates name of NV index

6 months agotpm2-util: add helper for setting TPM2B_AUTH in binary
Lennart Poettering [Thu, 19 Oct 2023 15:51:26 +0000 (17:51 +0200)] 
tpm2-util: add helper for setting TPM2B_AUTH in binary

6 months agotpm2-util: add helpers for marshalling NV index public areas
Lennart Poettering [Wed, 25 Oct 2023 08:55:51 +0000 (10:55 +0200)] 
tpm2-util: add helpers for marshalling NV index public areas

6 months agotpm2-util: add helpers for marshalling public/private keys
Lennart Poettering [Thu, 19 Oct 2023 15:50:39 +0000 (17:50 +0200)] 
tpm2-util: add helpers for marshalling public/private keys

Note: we export these new symbols for now. A later commit in this PR
will make them static again. The only reason they are exported here is
to make sure gcc doesn't complain about unused static symbols, and I
really wanted to commit them in a separate commit.

6 months agotpm2-util: export a couple of functions we'd like to use for pcrlock
Lennart Poettering [Thu, 19 Oct 2023 15:48:00 +0000 (17:48 +0200)] 
tpm2-util: export a couple of functions we'd like to use for pcrlock

6 months agotpm2-util: pick up a few new symbols from tpm2-tss
Lennart Poettering [Thu, 19 Oct 2023 15:44:48 +0000 (17:44 +0200)] 
tpm2-util: pick up a few new symbols from tpm2-tss

6 months agotpm2-util: add helper for returning path to EFI event log blob
Lennart Poettering [Thu, 31 Aug 2023 09:15:09 +0000 (11:15 +0200)] 
tpm2-util: add helper for returning path to EFI event log blob

6 months agotpm2-util: add various uefi event log definitions
Lennart Poettering [Thu, 13 Jul 2023 07:49:32 +0000 (09:49 +0200)] 
tpm2-util: add various uefi event log definitions

6 months agoefivars: add UEFI 'database' variable uuid
Lennart Poettering [Mon, 14 Aug 2023 11:18:18 +0000 (13:18 +0200)] 
efivars: add UEFI 'database' variable uuid

6 months agoman: mention DHCPv4 Router option is ignored when Classless Static Routes option...
Yu Watanabe [Fri, 3 Nov 2023 06:45:52 +0000 (15:45 +0900)] 
man: mention DHCPv4 Router option is ignored when Classless Static Routes option is received

For #29564.

6 months agocryptsetup: pass AskPasswordFlags down into pkcs11 module 29840/head
Lennart Poettering [Thu, 2 Nov 2023 21:32:36 +0000 (22:32 +0100)] 
cryptsetup: pass AskPasswordFlags down into pkcs11 module

The pkcs11 cryptsetup token module is a bit different from the tpm2 +
fido2 ones: it asks for the PIN itself, rather than bubbling up a
request to get a PIN. That's because it might need multiple, and because
we don't want to destroy a the pkcs11 session half-way and thus risk
increasing pin counters.

Hence, we sometimes ask for PINs from our code, rather than let the
libcryptsetup caller do that. So far we didn't pass the AskPasswordFlags
field down into the module though. Fix that.

Fixes: #28665
6 months agoupdate TODO 29836/head
Lennart Poettering [Thu, 2 Nov 2023 15:03:05 +0000 (16:03 +0100)] 
update TODO

6 months agofirewall: allow selecting firewall backend via env var
Lennart Poettering [Thu, 2 Nov 2023 14:58:50 +0000 (15:58 +0100)] 
firewall: allow selecting firewall backend via env var

6 months agofirewall: make sure firewall-util-private.h includes everythin it needs
Lennart Poettering [Thu, 2 Nov 2023 14:58:29 +0000 (15:58 +0100)] 
firewall: make sure firewall-util-private.h includes everythin it needs

6 months agofirewall: make libiptc dependency a dlopen() one
Lennart Poettering [Thu, 2 Nov 2023 14:57:10 +0000 (15:57 +0100)] 
firewall: make libiptc dependency a dlopen() one

6 months agodlfcn-util: add two new macros for making it easier to create "sym_xyz" indirect...
Lennart Poettering [Thu, 2 Nov 2023 14:53:40 +0000 (15:53 +0100)] 
dlfcn-util: add two new macros for making it easier to create "sym_xyz" indirect function call variables

Let's use "typeof" to make it easier to generate "sym_xyz" wrappers of
functions exposed by libraries.

6 months agoUpdate NEWS 29827/head
Yu Watanabe [Fri, 3 Nov 2023 02:53:50 +0000 (11:53 +0900)] 
Update NEWS

6 months agomeson: /etc/systemd/network is also used by udevd
Yu Watanabe [Thu, 2 Nov 2023 05:20:11 +0000 (14:20 +0900)] 
meson: /etc/systemd/network is also used by udevd

6 months agonetwork: add meson option to rename .example files on install
Yu Watanabe [Thu, 2 Nov 2023 05:12:42 +0000 (14:12 +0900)] 
network: add meson option to rename .example files on install

Also this renames 80-ethernet.network.example -> 89-ethernet.network.example,
to make it have lower precedence over other default .network files for
Ethernet interfaces.

Closes #29765.

6 months agoman: mention that network files should be prefixed with number smaller than 70
Yu Watanabe [Thu, 2 Nov 2023 05:18:16 +0000 (14:18 +0900)] 
man: mention that network files should be prefixed with number smaller than 70

6 months agonetwork: make generated configs have higher precedence over default configs
Yu Watanabe [Thu, 2 Nov 2023 04:41:30 +0000 (13:41 +0900)] 
network: make generated configs have higher precedence over default configs

We use 80- for default .network files. So, the generated files from the
kernel command line should have smaller prefix.

6 months agonetwork: disable IPv6AcceptRA= in several default config
Yu Watanabe [Thu, 2 Nov 2023 04:29:45 +0000 (13:29 +0900)] 
network: disable IPv6AcceptRA= in several default config

Also,
- drop DHCP=no, as it is the default setting,
- enable IPv6SendRA= for wifi access point,
- enable MulticastDNS= for wifi adhoc mode.

6 months agomeson: install newly added example .network file
Yu Watanabe [Thu, 2 Nov 2023 04:18:45 +0000 (13:18 +0900)] 
meson: install newly added example .network file

Follow-up for e6ba085398866ab05511fe748b8e9f7cbe85148e.

6 months agocryptsetup: disable activation via token plugin if we shall measure the volume key
Lennart Poettering [Thu, 2 Nov 2023 16:58:29 +0000 (17:58 +0100)] 
cryptsetup: disable activation via token plugin if we shall measure the volume key

if we allow cryptsetup to activate a volume via token plugin we never
get access to the volume key, which we'd like to measure. Hence disable
token plugins in that case.

(I tempted to say we probably should disable them entirely, and only use
them if classic cryptsetup is used, but that's a discussion for another
day.)

Fixes: #29790
6 months agocryptsetup: honour configured ask password flags also when activating via token
Lennart Poettering [Thu, 2 Nov 2023 16:56:47 +0000 (17:56 +0100)] 
cryptsetup: honour configured ask password flags also when activating via token

See: #28665 (this is not a fix for that PR though)

6 months agocryptsetup: rename usrptr to userdata
Lennart Poettering [Thu, 2 Nov 2023 16:56:16 +0000 (17:56 +0100)] 
cryptsetup: rename usrptr to userdata

Across our codebase we call the generic pointer "userdata", not
"userptr". Do so here too.

6 months agovarlink: limit the maximum nesting depth
Frantisek Sumsal [Thu, 2 Nov 2023 17:55:50 +0000 (18:55 +0100)] 
varlink: limit the maximum nesting depth

Let's limit the maximum nesting depth for structure definitions to 64 to
avoid stack overflows with very deep definitions.

Resolves: #29589