laforge has uploaded this change for review. ( 
https://gerrit.osmocom.org/c/pysim/+/28766 )


Change subject: apdu/ts_102_221: Implement SELECT case "df_ef_or_mf_by_file_id"
......................................................................

apdu/ts_102_221: Implement SELECT case "df_ef_or_mf_by_file_id"

This was [sadly] simply missing from the implementation so far.

Change-Id: I7bbd13ce29f5adc1ca3ca01bffabbe02dd17db20
---
M pySim/apdu/ts_102_221.py
1 file changed, 11 insertions(+), 0 deletions(-)



  git pull ssh://gerrit.osmocom.org:29418/pysim refs/changes/66/28766/1

diff --git a/pySim/apdu/ts_102_221.py b/pySim/apdu/ts_102_221.py
index e5455d0..0ca6702 100644
--- a/pySim/apdu/ts_102_221.py
+++ b/pySim/apdu/ts_102_221.py
@@ -78,6 +78,17 @@
         elif mode == 'df_ef_or_mf_by_file_id':
             if len(self.cmd_data) != 2:
                 raise ValueError('Expecting a 2-byte FID')
+            sels = lchan.selected_file.get_selectables(['FIDS'])
+            file_hex = b2h(self.cmd_data)
+            if file_hex in sels:
+                if self.successful:
+                    #print("\tSELECT %s" % sels[file_hex])
+                    lchan.selected_file = sels[file_hex]
+                else:
+                    #print("\tSELECT %s FAILED" % sels[file_hex])
+                    pass
+            else:
+                logger.warning('SELECT UNKNOWN FID %s' % (file_hex))
         elif mode == 'df_name':
             # Select by AID (can be sub-string!)
             aid = self.cmd_dict['body']

--
To view, visit https://gerrit.osmocom.org/c/pysim/+/28766
To unsubscribe, or for help writing mail filters, visit 
https://gerrit.osmocom.org/settings

Gerrit-Project: pysim
Gerrit-Branch: master
Gerrit-Change-Id: I7bbd13ce29f5adc1ca3ca01bffabbe02dd17db20
Gerrit-Change-Number: 28766
Gerrit-PatchSet: 1
Gerrit-Owner: laforge <[email protected]>
Gerrit-MessageType: newchange

Reply via email to