From 9577badbe9a05592a30a0661f1c58308e8550ebb Mon Sep 17 00:00:00 2001 From: Nikias Bassen Date: Tue, 23 Jun 2020 17:37:23 +0200 Subject: tss: Fix logical bug in tss_request_add_ap_tags() when selecting 'only firmware components' --- src/tss.c | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) (limited to 'src/tss.c') diff --git a/src/tss.c b/src/tss.c index 739e7b1..e990a6b 100644 --- a/src/tss.c +++ b/src/tss.c @@ -630,8 +630,12 @@ int tss_request_add_ap_tags(plist_t request, plist_t parameters, plist_t overrid if (_plist_dict_get_bool(parameters, "_OnlyFWComponents")) { plist_t info_dict = plist_dict_get_item(manifest_entry, "Info"); - if (!_plist_dict_get_bool(manifest_entry, "Trusted") && !_plist_dict_get_bool(info_dict, "IsFirmwarePayload") && !_plist_dict_get_bool(info_dict, "IsSecondaryFirmwarePayload") && !_plist_dict_get_bool(info_dict, "IsFUDFirmware")) { - debug("DEBUG: %s: Skipping '%s' as it is neither firmware nor secondary firmware payload\n", __func__, key); + if (!_plist_dict_get_bool(manifest_entry, "Trusted")) { + debug("DEBUG: %s: Skipping '%s' as it is not trusted", __func__, key); + continue; + } + if (!_plist_dict_get_bool(info_dict, "IsFirmwarePayload") && !_plist_dict_get_bool(info_dict, "IsSecondaryFirmwarePayload") && !_plist_dict_get_bool(info_dict, "IsFUDFirmware")) { + debug("DEBUG: %s: Skipping '%s' as it is neither firmware nor secondary nor FUD firmware payload\n", __func__, key); continue; } } -- cgit v1.1-32-gdbae