summaryrefslogtreecommitdiff
path: root/src/shared/dissect-image.c
diff options
context:
space:
mode:
authorLennart Poettering <lennart@poettering.net>2022-11-30 18:44:06 +0100
committerLuca Boccassi <luca.boccassi@gmail.com>2022-12-03 00:22:23 +0100
commitc2534821dc13510dbfa57673af6f54d6172c3712 (patch)
tree2ce0a99bba54dec10702ab1b1da996aacf101db8 /src/shared/dissect-image.c
parentd90b03f80d7d2a104783e0582a33a29e8a05cbca (diff)
downloadsystemd-c2534821dc13510dbfa57673af6f54d6172c3712.tar.gz
dissect: add new helper verity_settings_data_covers()
This function checks if the external verity data referenced in VeritySettings covers the specified partition (indicated via designator). Right now, we'll use that at one place, but in a later commit in more.
Diffstat (limited to 'src/shared/dissect-image.c')
-rw-r--r--src/shared/dissect-image.c7
1 files changed, 2 insertions, 5 deletions
diff --git a/src/shared/dissect-image.c b/src/shared/dissect-image.c
index 4dd2c2c3a9..b3d35e9fbf 100644
--- a/src/shared/dissect-image.c
+++ b/src/shared/dissect-image.c
@@ -513,13 +513,10 @@ static int dissect_image(
m->encrypted = streq_ptr(fstype, "crypto_LUKS");
m->has_verity = verity && verity->data_path;
- m->verity_ready = m->has_verity &&
- verity->root_hash &&
- (verity->designator < 0 || verity->designator == PARTITION_ROOT);
+ m->verity_ready = verity_settings_data_covers(verity, PARTITION_ROOT);
m->has_verity_sig = false; /* signature not embedded, must be specified */
- m->verity_sig_ready = m->verity_ready &&
- verity->root_hash_sig;
+ m->verity_sig_ready = m->verity_ready && verity->root_hash_sig;
m->image_uuid = uuid;