measure: also measure forgotten .efifw section

This commit is contained in:
Zbigniew Jędrzejewski-Szmek
2026-04-23 19:29:47 +02:00
parent ed469ffc07
commit 6fdc0f96f7
2 changed files with 10 additions and 2 deletions
+4 -2
View File
@@ -292,9 +292,11 @@ static int parse_argv(int argc, char *argv[], char ***ret_args) {
OPTION_LONG_DATA("profile", "PATH", UNIFIED_SECTION_PROFILE,
"Path to profile file (→ .profile)"): {}
OPTION_LONG_DATA("hwids", "PATH", UNIFIED_SECTION_HWIDS,
"Path to HWIDs file (→ .hwids)"):
"Path to HWIDs file (→ .hwids)"): {}
OPTION_LONG_DATA("efifw", "PATH", UNIFIED_SECTION_EFIFW,
"Path to EFI firmware file (→ .efifw)"): {}
/* Make sure that if new sections are added, the list here is updated. */
assert_cc(UNIFIED_SECTION_HWIDS + 1 + 1 /* FIXME */ == _UNIFIED_SECTION_MAX);
assert_cc(UNIFIED_SECTION_EFIFW + 1 == _UNIFIED_SECTION_MAX);
assert(opt->data < _UNIFIED_SECTION_MAX);
r = parse_path_argument(arg, /* suppress_root= */ false, arg_sections + opt->data);
+6
View File
@@ -45,6 +45,12 @@ cat >/tmp/result.json <<EOF
EOF
"$SD_MEASURE" calculate --linux=/tmp/tpmdata1 --initrd=/tmp/tpmdata2 --bank=sha1 --bank=sha256 --bank=sha384 --bank=sha512 --phase=foo -j | diff -u - /tmp/result.json
cat >/tmp/result <<EOF
11:sha1=8a625cbc3c497b9a86dcf4f6a32582895ce969bb
EOF
"$SD_MEASURE" calculate \
--{linux,osrel,cmdline,initrd,ucode,splash,dtb,dtbauto,uname,sbat,pcrpkey,profile,hwids,efifw}=/tmp/tpmdata1 \
--bank=sha1 --phase=foo | cmp - /tmp/result
rm /tmp/result /tmp/result.json
# Generate key pair