dexter has uploaded this change for review. ( https://gerrit.osmocom.org/c/pysim/+/34902?usp=email )
Change subject: filesystem: add flag to tell whether an ADF supports an FS or not ...................................................................... filesystem: add flag to tell whether an ADF supports an FS or not An ADF may or may not support a file system. For example ADF.ARA-M does not have any filesystem support, which means the SELECT we may use from this ADF is limited and an can only select a different application. To know about this in advance let's add a flag that we set when we instantiate an ADF. Change-Id: Ifd0f7c34164685ea18d8a746394e55416fa0aa66 Related: OS#5418 --- M pySim/filesystem.py M pySim/ts_31_102.py M pySim/ts_31_103.py M pySim/ts_31_104.py 4 files changed, 24 insertions(+), 7 deletions(-) git pull ssh://gerrit.osmocom.org:29418/pysim refs/changes/02/34902/1 diff --git a/pySim/filesystem.py b/pySim/filesystem.py index 5950ad1..bddb9a7 100644 --- a/pySim/filesystem.py +++ b/pySim/filesystem.py @@ -505,11 +505,12 @@ class CardADF(CardDF): """ADF (Application Dedicated File) in the smart card filesystem""" - def __init__(self, aid: str, **kwargs): + def __init__(self, aid: str, has_fs: bool=False, **kwargs): super().__init__(**kwargs) # reference to CardApplication may be set from CardApplication constructor self.application = None # type: Optional[CardApplication] self.aid = aid # Application Identifier + self.has_fs = has_fs # Flag to tell whether the ADF supports a filesystem or not mf = self.get_mf() if mf: mf.add_application_df(self) diff --git a/pySim/ts_31_102.py b/pySim/ts_31_102.py index cd0d99c..7c9a63c 100644 --- a/pySim/ts_31_102.py +++ b/pySim/ts_31_102.py @@ -1369,9 +1369,9 @@ class ADF_USIM(CardADF): - def __init__(self, aid='a0000000871002', name='ADF.USIM', fid=None, sfid=None, + def __init__(self, aid='a0000000871002', has_fs=True, name='ADF.USIM', fid=None, sfid=None, desc='USIM Application'): - super().__init__(aid=aid, fid=fid, sfid=sfid, name=name, desc=desc) + super().__init__(aid=aid, has_fs=has_fs, fid=fid, sfid=sfid, name=name, desc=desc) # add those commands to the general commands of a TransparentEF self.shell_commands += [self.AddlShellCommands()] diff --git a/pySim/ts_31_103.py b/pySim/ts_31_103.py index 4327a1a..5268c70 100644 --- a/pySim/ts_31_103.py +++ b/pySim/ts_31_103.py @@ -258,9 +258,9 @@ class ADF_ISIM(CardADF): - def __init__(self, aid='a0000000871004', name='ADF.ISIM', fid=None, sfid=None, + def __init__(self, aid='a0000000871004', has_fs=True, name='ADF.ISIM', fid=None, sfid=None, desc='ISIM Application'): - super().__init__(aid=aid, fid=fid, sfid=sfid, name=name, desc=desc) + super().__init__(aid=aid, has_fs=has_fs, fid=fid, sfid=sfid, name=name, desc=desc) files = [ EF_IMPI(), diff --git a/pySim/ts_31_104.py b/pySim/ts_31_104.py index 0adafba..239acbf 100644 --- a/pySim/ts_31_104.py +++ b/pySim/ts_31_104.py @@ -30,9 +30,9 @@ class ADF_HPSIM(CardADF): - def __init__(self, aid='a000000087100A', name='ADF.HPSIM', fid=None, sfid=None, + def __init__(self, aid='a000000087100A', has_fs=True, name='ADF.HPSIM', fid=None, sfid=None, desc='HPSIM Application'): - super().__init__(aid=aid, fid=fid, sfid=sfid, name=name, desc=desc) + super().__init__(aid=aid, has_fs=has_fs, fid=fid, sfid=sfid, name=name, desc=desc) files = [ EF_ARR(fid='6f06', sfid=0x06), -- To view, visit https://gerrit.osmocom.org/c/pysim/+/34902?usp=email To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings Gerrit-Project: pysim Gerrit-Branch: master Gerrit-Change-Id: Ifd0f7c34164685ea18d8a746394e55416fa0aa66 Gerrit-Change-Number: 34902 Gerrit-PatchSet: 1 Gerrit-Owner: dexter <pma...@sysmocom.de> Gerrit-MessageType: newchange