From 2538dd7621d4aac9956735b3187487520c4f7827 Mon Sep 17 00:00:00 2001 From: Harald Welte Date: Sat, 23 Dec 2023 21:01:39 +0100 Subject: [PATCH] global_platform: Correctly decode Key Information Data The list contains tuples of (key_type, key_length). Let's fix that. Change-Id: Icf367827d62ed67afa27ee3d0ba9d5cd5bc65c99 --- pySim/global_platform.py | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/pySim/global_platform.py b/pySim/global_platform.py index 136cccc2..b564770b 100644 --- a/pySim/global_platform.py +++ b/pySim/global_platform.py @@ -95,8 +95,9 @@ KeyType = Enum(Byte, des=0x80, # c0 04 02038010 # c0 04 03038010 class KeyInformationData(BER_TLV_IE, tag=0xc0): + KeyTypeLen = Struct('type'/KeyType, 'length'/Int8ub) _construct = Struct('key_identifier'/Byte, 'key_version_number'/Byte, - 'key_types'/GreedyRange(KeyType)) + 'key_types'/GreedyRange(KeyTypeLen)) class KeyInformation(BER_TLV_IE, tag=0xe0, nested=[KeyInformationData]): pass