forked from public/pysim
Move reading of USIM service table to generic USIM class
Change-Id: I537547f3bd01a547310358f8a8fceddcb4c79f37
This commit is contained in:
@@ -256,14 +256,20 @@ if __name__ == '__main__':
|
|||||||
print("EHPLMN:\n%s" % (res))
|
print("EHPLMN:\n%s" % (res))
|
||||||
else:
|
else:
|
||||||
print("EHPLMN: Can't read, response code = %s" % (sw,))
|
print("EHPLMN: Can't read, response code = %s" % (sw,))
|
||||||
|
|
||||||
# EF.UST
|
# EF.UST
|
||||||
(res, sw) = card.read_binary(EF_USIM_ADF_map['UST'])
|
try:
|
||||||
if sw == '9000':
|
if card.file_exists(EF_USIM_ADF_map['UST']):
|
||||||
print("USIM Service Table: %s" % res)
|
# res[0] - EF content of UST
|
||||||
# Print those which are available
|
# res[1] - Human readable format of services marked available in UST
|
||||||
print("%s" % dec_st(res, table="usim"))
|
(res, sw) = card.read_ust()
|
||||||
else:
|
if sw == '9000':
|
||||||
print("USIM Service Table: Can't read, response code = %s" % (sw,))
|
print("USIM Service Table: %s" % res[0])
|
||||||
|
print("%s" % res[1])
|
||||||
|
else:
|
||||||
|
print("USIM Service Table: Can't read, response code = %s" % (sw,))
|
||||||
|
except Exception as e:
|
||||||
|
print("USIM Service Table: Can't read file -- " + str(e))
|
||||||
|
|
||||||
#EF.ePDGId - Home ePDG Identifier
|
#EF.ePDGId - Home ePDG Identifier
|
||||||
try:
|
try:
|
||||||
|
|||||||
@@ -277,6 +277,14 @@ class UsimCard(Card):
|
|||||||
EF_USIM_ADF_map['ePDGId'], epdgid_tlv)
|
EF_USIM_ADF_map['ePDGId'], epdgid_tlv)
|
||||||
return sw
|
return sw
|
||||||
|
|
||||||
|
def read_ust(self):
|
||||||
|
(res, sw) = self._scc.read_binary(EF_USIM_ADF_map['UST'])
|
||||||
|
if sw == '9000':
|
||||||
|
# Print those which are available
|
||||||
|
return ([res, dec_st(res, table="usim")], sw)
|
||||||
|
else:
|
||||||
|
return ([None, None], sw)
|
||||||
|
|
||||||
|
|
||||||
class _MagicSimBase(Card):
|
class _MagicSimBase(Card):
|
||||||
"""
|
"""
|
||||||
@@ -772,7 +780,7 @@ class SysmoUSIMSJS1(UsimCard):
|
|||||||
data, sw = self._scc.update_record('6F40', 1, data, force_len=True)
|
data, sw = self._scc.update_record('6F40', 1, data, force_len=True)
|
||||||
|
|
||||||
|
|
||||||
class FairwavesSIM(Card):
|
class FairwavesSIM(UsimCard):
|
||||||
"""
|
"""
|
||||||
FairwavesSIM
|
FairwavesSIM
|
||||||
|
|
||||||
@@ -961,7 +969,7 @@ class OpenCellsSim(Card):
|
|||||||
# write EF.IMSI
|
# write EF.IMSI
|
||||||
data, sw = self._scc.update_binary('6f07', enc_imsi(p['imsi']))
|
data, sw = self._scc.update_binary('6f07', enc_imsi(p['imsi']))
|
||||||
|
|
||||||
class WavemobileSim(Card):
|
class WavemobileSim(UsimCard):
|
||||||
"""
|
"""
|
||||||
WavemobileSim
|
WavemobileSim
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user