laforge submitted this change.
pySim-shell: do not fail when EF.ICCID does not exist
An eUICC that has no active eSIM profile does not have an ICCID. (The
reason for this is that EF.ICCID is part of the eSIM profile).
Unfortunately pySim-shell insists on reading the ICCID from EF.ICCID on
startup in order to use it as a lookup key for verify_adm later.
To solve the problem, let's add a try/except block around the section
where EF.ICCID is read. In case of failure we set the ICCID to None,
Related: OS#5636
Change-Id: I8d18c5073946c5a6bb1f93be0ce692a599f46f8c
---
M pySim-shell.py
1 file changed, 23 insertions(+), 2 deletions(-)
diff --git a/pySim-shell.py b/pySim-shell.py
index afc7653..a79949c 100755
--- a/pySim-shell.py
+++ b/pySim-shell.py
@@ -244,8 +244,11 @@
self.register_command_set(Ts102222Commands())
self.register_command_set(PySimCommands())
- self.lchan.select('MF/EF.ICCID', self)
- self.iccid = dec_iccid(self.lchan.read_binary()[0])
+ try:
+ self.lchan.select('MF/EF.ICCID', self)
+ self.iccid = dec_iccid(self.lchan.read_binary()[0])
+ except:
+ self.iccid = None
self.lchan.select('MF', self)
rc = True
To view, visit change 34768. To unsubscribe, or for help writing mail filters, visit settings.