From 125449126db115a4a7d68536377a8b3a362444b4 Mon Sep 17 00:00:00 2001 From: Alexander Couzens Date: Thu, 4 Dec 2025 15:31:03 +0100 Subject: [PATCH] ts_31_102: EF SUCI_Calc_Info: fix decoding empty files When trying to use `edit_binary_decoded` with an empty file, pysim runs into a len(None) exception, because hpkl.to_dict()['hnet_pubkey_list'] returns None. Can reproduced with a CCC Camp 2023 usim and editing the file. Change-Id: Ib8e322e65dd768bfd49e7a5620a2163f12a74ec7 --- pySim/ts_31_102.py | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/pySim/ts_31_102.py b/pySim/ts_31_102.py index 4ee6621a..1f46241b 100644 --- a/pySim/ts_31_102.py +++ b/pySim/ts_31_102.py @@ -389,7 +389,10 @@ class EF_SUCI_Calc_Info(TransparentEF): # remaining data holds Home Network Public Key Data Object hpkl = EF_SUCI_Calc_Info.HnetPubkeyList() hpkl.from_tlv(in_bytes[pos:]) - hnet_pubkey_list = self._compact_pubkey_list(hpkl.to_dict()['hnet_pubkey_list']) + + hnet_pubkey_list = [] + if hpkl.to_dict()['hnet_pubkey_list']: + hnet_pubkey_list = self._compact_pubkey_list(hpkl.to_dict()['hnet_pubkey_list']) return { 'prot_scheme_id_list': prot_scheme_id_list,