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

Reply via email to