Change in pysim[master]: pySim-read.py: Enable parsing of EF.ePDGSelection in USIM

This is merely a historical archive of years 2008-2021, before the migration to mailman3.

A maintained and still updated list archive can be found at https://lists.osmocom.org/hyperkitty/list/gerrit-log@lists.osmocom.org/.

laforge gerrit-no-reply at lists.osmocom.org
Fri Oct 23 15:08:01 UTC 2020


laforge has submitted this change. ( https://gerrit.osmocom.org/c/pysim/+/20817 )

Change subject: pySim-read.py: Enable parsing of EF.ePDGSelection in USIM
......................................................................

pySim-read.py: Enable parsing of EF.ePDGSelection in USIM

As per TS 31.102, this EF can found under ADF.USIM at File Id 6ff4.
Also, if service n°106 and service n°107 are available, this file shall be present.

Change-Id: I98916e6f5c9791aff63c18a3b16bdfb8ae9b2d36
---
M pySim-read.py
M pySim/cards.py
M pysim-testdata/sysmoISIM-SJA2.ok
3 files changed, 25 insertions(+), 0 deletions(-)

Approvals:
  Jenkins Builder: Verified
  dexter: Looks good to me, but someone else must approve
  laforge: Looks good to me, approved



diff --git a/pySim-read.py b/pySim-read.py
index 6608556..2be34bd 100755
--- a/pySim-read.py
+++ b/pySim-read.py
@@ -36,6 +36,7 @@
 from pySim.cards import card_detect, Card
 from pySim.utils import h2b, swap_nibbles, rpad, dec_imsi, dec_iccid, dec_msisdn
 from pySim.utils import format_xplmn_w_act, dec_spn, dec_st, init_reader, dec_epdgid
+from pySim.utils import h2s, format_ePDGSelection
 
 def parse_options():
 
@@ -282,6 +283,17 @@
 		except Exception as e:
 			print("ePDGId: Can't read file -- " + str(e))
 
+		#EF.ePDGSelection - ePDG Selection Information
+		try:
+			if card.file_exists(EF_USIM_ADF_map['ePDGSelection']):
+				(res, sw) = card.read_ePDGSelection()
+				if sw == '9000':
+					print("ePDGSelection:\n%s" % (res,))
+				else:
+					print("ePDGSelection: Can't read, response code = %s" % (sw,))
+		except Exception as e:
+			print("ePDGSelection: Can't read file -- " + str(e))
+
 	# Check whether we have th AID of ISIM, if so select it by its AID
 	# EF.IST - File Id in ADF ISIM : 6f07
 	if '9000' == card.select_adf_by_aid(adf="isim"):
diff --git a/pySim/cards.py b/pySim/cards.py
index 1d5f5c6..6243d4a 100644
--- a/pySim/cards.py
+++ b/pySim/cards.py
@@ -277,6 +277,13 @@
 						EF_USIM_ADF_map['ePDGId'], epdgid_tlv)
 		return sw
 
+	def read_ePDGSelection(self):
+		(res, sw) = self._scc.read_binary(EF_USIM_ADF_map['ePDGSelection'])
+		if sw == '9000':
+			return (format_ePDGSelection(res), sw)
+		else:
+			return (None, sw)
+
 	def read_ust(self):
 		(res, sw) = self._scc.read_binary(EF_USIM_ADF_map['UST'])
 		if sw == '9000':
diff --git a/pysim-testdata/sysmoISIM-SJA2.ok b/pysim-testdata/sysmoISIM-SJA2.ok
index 947cff6..b6836e7 100644
--- a/pysim-testdata/sysmoISIM-SJA2.ok
+++ b/pysim-testdata/sysmoISIM-SJA2.ok
@@ -165,6 +165,12 @@
 ePDGId:
 	Not available
 
+ePDGSelection:
+	ffffffffffff # unused
+	ffffffffffff # unused
+	ffffffffffff # unused
+	ffffffffffff # unused
+
 ISIM Service Table: 190200
 	Service 1 - P-CSCF address
 	Service 4 - GBA-based Local Key Establishment Mechanism

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

Gerrit-Project: pysim
Gerrit-Branch: master
Gerrit-Change-Id: I98916e6f5c9791aff63c18a3b16bdfb8ae9b2d36
Gerrit-Change-Number: 20817
Gerrit-PatchSet: 3
Gerrit-Owner: herlesupreeth <herlesupreeth at gmail.com>
Gerrit-Reviewer: Jenkins Builder
Gerrit-Reviewer: dexter <pmaier at sysmocom.de>
Gerrit-Reviewer: laforge <laforge at osmocom.org>
Gerrit-MessageType: merged
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.osmocom.org/pipermail/gerrit-log/attachments/20201023/fa009b7a/attachment.htm>


More information about the gerrit-log mailing list