Skip to content

Commit

Permalink
pySim-read.py: decode contents of EF.AD (Administrative data)
Browse files Browse the repository at this point in the history
Change-Id: I938667bdf99d238eefac205d6dd70db1d714d842
  • Loading branch information
axilirator committed Sep 20, 2020
1 parent a562ea0 commit dfe3dbb
Show file tree
Hide file tree
Showing 8 changed files with 39 additions and 9 deletions.
12 changes: 10 additions & 2 deletions pySim-read.py
Original file line number Diff line number Diff line change
Expand Up @@ -28,7 +28,7 @@
import random
import re
import sys
from pySim.ts_51_011 import EF, DF, EF_SST_map
from pySim.ts_51_011 import EF, DF, EF_SST_map, EF_AD_mode_map
from pySim.ts_31_102 import EF_UST_map, EF_USIM_ADF_map
from pySim.ts_31_103 import EF_IST_map

Expand Down Expand Up @@ -225,7 +225,15 @@ def parse_options():
# EF.AD
(res, sw) = card.read_binary('AD')
if sw == '9000':
print("AD: %s" % (res,))
print("Administrative data: %s" % (res,))
if res[:2] in EF_AD_mode_map:
print("\tMS operation mode: %s" % (EF_AD_mode_map[res[:2]],))
else:
print("\tMS operation mode: (unknown 0x%s)" % (res[:2],))
if int(res[4:6], 16) & 0x01:
print("\tCiphering Indicator: enabled")
else:
print("\tCiphering Indicator: disabled")
else:
print("AD: Can't read, response code = %s" % (sw,))

Expand Down
12 changes: 11 additions & 1 deletion pySim/ts_51_011.py
Original file line number Diff line number Diff line change
Expand Up @@ -313,4 +313,14 @@
57: 'Multimedia Messaging Service (MMS)',
58: 'Extension 8',
59: 'MMS User Connectivity Parameters',
}
}

# 10.3.18 "EF.AD (Administrative data) "
EF_AD_mode_map = {
'00' : 'normal operation',
'80' : 'type approval operations',
'01' : 'normal operation + specific facilities',
'81' : 'type approval operations + specific facilities',
'02' : 'maintenance (off line)',
'04' : 'cell test operation',
}
4 changes: 3 additions & 1 deletion pysim-testdata/Fairwaves-SIM.ok
Original file line number Diff line number Diff line change
Expand Up @@ -42,7 +42,9 @@ HPLMNAcT:

ACC: 0008
MSISDN: Not available
AD: 00000002
Administrative data: 00000002
MS operation mode: normal operation
Ciphering Indicator: disabled
SIM Service Table: ff3cc3ff030fff0f000fff03f0c0
Service 1 - CHV1 disable function
Service 2 - Abbreviated Dialling Numbers (ADN)
Expand Down
4 changes: 3 additions & 1 deletion pysim-testdata/Wavemobile-SIM.ok
Original file line number Diff line number Diff line change
Expand Up @@ -49,7 +49,9 @@ OPLMNwAcT:
HPLMNAcT: Can't read file -- SW match failed! Expected 9000 and got 6a82.
ACC: abce
MSISDN: Not available
AD: 00ffff02
Administrative data: 00ffff02
MS operation mode: normal operation
Ciphering Indicator: enabled
SIM Service Table: ff33ff0f3c00ff0f000cf0c0f0030000
Service 1 - CHV1 disable function
Service 2 - Abbreviated Dialling Numbers (ADN)
Expand Down
4 changes: 3 additions & 1 deletion pysim-testdata/fakemagicsim.ok
Original file line number Diff line number Diff line change
Expand Up @@ -16,7 +16,9 @@ OPLMNwAcT: Can't read file -- SW match failed! Expected 9000 and got 9404.
HPLMNAcT: Can't read file -- SW match failed! Expected 9000 and got 9404.
ACC: ffff
MSISDN: Not available
AD: 000000
Administrative data: 000000
MS operation mode: normal operation
Ciphering Indicator: disabled
SIM Service Table: ff3fff0f0300f003000c
Service 1 - CHV1 disable function
Service 2 - Abbreviated Dialling Numbers (ADN)
Expand Down
4 changes: 3 additions & 1 deletion pysim-testdata/sysmoISIM-SJA2.ok
Original file line number Diff line number Diff line change
Expand Up @@ -54,7 +54,9 @@ HPLMNAcT:

ACC: 0200
MSISDN: Not available
AD: 00000002
Administrative data: 00000002
MS operation mode: normal operation
Ciphering Indicator: disabled
SIM Service Table: ff33ffff3f003f0f300cf0c3f00000
Service 1 - CHV1 disable function
Service 2 - Abbreviated Dialling Numbers (ADN)
Expand Down
4 changes: 3 additions & 1 deletion pysim-testdata/sysmoUSIM-SJS1.ok
Original file line number Diff line number Diff line change
Expand Up @@ -54,7 +54,9 @@ HPLMNAcT:

ACC: 0008
MSISDN (NPI=1 ToN=1): +77776336143
AD: 00000002
Administrative data: 00000002
MS operation mode: normal operation
Ciphering Indicator: disabled
SIM Service Table: ff3fffff3f003f1ff00c00c0f00000
Service 1 - CHV1 disable function
Service 2 - Abbreviated Dialling Numbers (ADN)
Expand Down
4 changes: 3 additions & 1 deletion pysim-testdata/sysmosim-gr1.ok
Original file line number Diff line number Diff line change
Expand Up @@ -16,7 +16,9 @@ OPLMNwAcT: Can't read file -- SW match failed! Expected 9000 and got 9404.
HPLMNAcT: Can't read file -- SW match failed! Expected 9000 and got 9404.
ACC: 0008
MSISDN: Not available
AD: 000000
Administrative data: 000000
MS operation mode: normal operation
Ciphering Indicator: disabled
SIM Service Table: ff3fff0f0f0000030000
Service 1 - CHV1 disable function
Service 2 - Abbreviated Dialling Numbers (ADN)
Expand Down

0 comments on commit dfe3dbb

Please sign in to comment.