Fix get_token_map in case of unknown claim
Change-Id: I79c531ccd51af0d144bb8eb28945c26e1b6e1903
Signed-off-by: Mate Toth-Pal <mate.toth-pal@arm.com>
diff --git a/iat-verifier/iatverifier/attest_token_verifier.py b/iat-verifier/iatverifier/attest_token_verifier.py
index bc49638..d442a0b 100644
--- a/iat-verifier/iatverifier/attest_token_verifier.py
+++ b/iat-verifier/iatverifier/attest_token_verifier.py
@@ -445,13 +445,23 @@
for token_item_dict in token_item.value:
token_dict = {}
for key, claim_token_item in token_item_dict.items():
- token_dict[key] = claim_token_item.get_token_map()
+ if isinstance(claim_token_item, TokenItem):
+ token_dict[key] = claim_token_item.get_token_map()
+ else:
+ # The claim was not recognised, so just adding it as it
+ # was in the map:
+ token_dict[key] = claim_token_item
ret.append(token_dict)
return ret
else:
token_dict = {}
for key, claim_token_item in token_item.value.items():
- token_dict[key] = claim_token_item.get_token_map()
+ if isinstance(claim_token_item, TokenItem):
+ token_dict[key] = claim_token_item.get_token_map()
+ else:
+ # The claim was not recognised, so just adding it as it
+ # was in the map:
+ token_dict[key] = claim_token_item
return token_dict
@dataclass
diff --git a/iat-verifier/tests/test_utils.py b/iat-verifier/tests/test_utils.py
index 8059139..e08d3a2 100644
--- a/iat-verifier/tests/test_utils.py
+++ b/iat-verifier/tests/test_utils.py
@@ -76,6 +76,7 @@
check_p_header=check_p_header,
lower_case_key=False)
token_item.verify()
+ token_item.get_token_map()
return token_item
def create_and_read_iat(data_dir, source_name, verifier):