diff options
author | Edward O'Callaghan <quasisec@google.com> | 2023-03-14 18:00:00 +1100 |
---|---|---|
committer | Chromeos LUCI <chromeos-scoped@luci-project-accounts.iam.gserviceaccount.com> | 2023-05-15 06:42:08 +0000 |
commit | 66733b079842ab23bebe77001050d4c827124400 (patch) | |
tree | 75ef880914ca00729bd373bc718dd0fd559e4e22 | |
parent | 66f994927069aef338b4eaee81758620a4537aa2 (diff) | |
download | vboot-66733b079842ab23bebe77001050d4c827124400.tar.gz |
futility/file_type_bios.c: Improve branch readability
BUG=b:268397597
BRANCH=none
TEST=`emerge-nissa vboot_reference`.
TEST=`$ cros_run_unit_tests --host --packages="vboot_reference flashrom"`.
TEST=`$ cros_run_unit_tests --board=nissa --packages="vboot_reference flashrom"`.
Change-Id: I3eb8810a7c5efd7042f422bb772567daf87e803c
Signed-off-by: Edward O'Callaghan <quasisec@google.com>
Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/vboot_reference/+/4531325
Reviewed-by: Sam McNally <sammc@chromium.org>
Commit-Queue: Edward O'Callaghan <quasisec@chromium.org>
Auto-Submit: Edward O'Callaghan <quasisec@chromium.org>
Tested-by: Edward O'Callaghan <quasisec@chromium.org>
-rw-r--r-- | futility/file_type_bios.c | 22 |
1 files changed, 10 insertions, 12 deletions
diff --git a/futility/file_type_bios.c b/futility/file_type_bios.c index 9552ead5..379d0043 100644 --- a/futility/file_type_bios.c +++ b/futility/file_type_bios.c @@ -562,18 +562,16 @@ enum futil_file_type ft_recognize_bios_image(uint8_t *buf, uint32_t len) if (!fmap) return FILE_TYPE_UNKNOWN; - /* Correct BIOS image should contain at least GBB, FW_MAIN_A and - VBLOCK_A areas. FW_MAIN_B and VBLOCK_B are optional, but will be - signed or shown if present. */ - const int gbb_and_a_slot_ok = - fmap_find_by_name(buf, len, fmap, fmap_name[BIOS_FMAP_GBB], - 0) != NULL && - fmap_find_by_name(buf, len, fmap, - fmap_name[BIOS_FMAP_FW_MAIN_A], 0) != NULL && - fmap_find_by_name(buf, len, fmap, fmap_name[BIOS_FMAP_VBLOCK_A], - 0) != NULL; - - if (gbb_and_a_slot_ok) + /** + * Correct BIOS image should contain at least: + * GBB, FW_MAIN_A and VBLOCK_A areas. + * The FW_MAIN_B and VBLOCK_B are optional, however will be signed or shown if present. + */ + const int gbb_slot = !!fmap_find_by_name(buf, len, fmap, fmap_name[BIOS_FMAP_GBB], 0); + const int fw_slot_a = !!fmap_find_by_name(buf, len, fmap, fmap_name[BIOS_FMAP_FW_MAIN_A], 0); + const int vblock_slot_a = !!fmap_find_by_name(buf, len, fmap, fmap_name[BIOS_FMAP_VBLOCK_A], 0); + + if (gbb_slot && fw_slot_a && vblock_slot_a) return FILE_TYPE_BIOS_IMAGE; return FILE_TYPE_UNKNOWN; |