pySim-read.py: Enable parsing of Home ePDG Identifier in USIM

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

Change-Id: I68114d328d1af5682a5bc1fa7642882e80b5de4d
diff --git a/pySim-read.py b/pySim-read.py
index b23e6ee..69cab4d 100755
--- a/pySim-read.py
+++ b/pySim-read.py
@@ -35,7 +35,7 @@
 from pySim.commands import SimCardCommands
 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
+from pySim.utils import format_xplmn_w_act, dec_spn, dec_st, init_reader, dec_epdgid
 
 def parse_options():
 
@@ -250,6 +250,17 @@
 		else:
 			print("USIM Service Table: Can't read, response code = %s" % (sw,))
 
+		#EF.ePDGId - Home ePDG Identifier
+		try:
+			(res, sw) = card.read_binary(EF_USIM_ADF_map['ePDGId'])
+			if sw == '9000':
+				content = dec_epdgid(res)
+				print("ePDGId:\n%s" % (len(content) and content or '\tNot available\n',))
+			else:
+				print("ePDGId: Can't read, response code = %s" % (sw,))
+		except Exception as e:
+			print("ePDGId: 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-testdata/Fairwaves-SIM.ok b/pysim-testdata/Fairwaves-SIM.ok
index 930dae0..dcdd43c 100644
--- a/pysim-testdata/Fairwaves-SIM.ok
+++ b/pysim-testdata/Fairwaves-SIM.ok
@@ -114,5 +114,6 @@
 	Service 64 - VGCS security
 	Service 65 - VBS security
 
+ePDGId: Can't read file -- SW match failed! Expected 9000 and got 6a82.
 Done !
 
diff --git a/pysim-testdata/Wavemobile-SIM.ok b/pysim-testdata/Wavemobile-SIM.ok
index dc23e2a..0e41ec0 100644
--- a/pysim-testdata/Wavemobile-SIM.ok
+++ b/pysim-testdata/Wavemobile-SIM.ok
@@ -130,5 +130,6 @@
 	Service 53 - Extension 8
 	Service 55 - MMS User Connectivity Parameters
 
+ePDGId: Can't read file -- SW match failed! Expected 9000 and got 6a82.
 Done !
 
diff --git a/pysim-testdata/sysmoISIM-SJA2.ok b/pysim-testdata/sysmoISIM-SJA2.ok
index 6fe4404..fd3f252 100644
--- a/pysim-testdata/sysmoISIM-SJA2.ok
+++ b/pysim-testdata/sysmoISIM-SJA2.ok
@@ -150,6 +150,9 @@
 	Service 94 - Extended Terminal Applications
 	Service 95 - Support of UICC access to IMS
 
+ePDGId:
+	Not available
+
 ISIM Service Table: 190200
 	Service 1 - P-CSCF address
 	Service 4 - GBA-based Local Key Establishment Mechanism
diff --git a/pysim-testdata/sysmoUSIM-SJS1.ok b/pysim-testdata/sysmoUSIM-SJS1.ok
index fb8e472..55c43ad 100644
--- a/pysim-testdata/sysmoUSIM-SJS1.ok
+++ b/pysim-testdata/sysmoUSIM-SJS1.ok
@@ -138,5 +138,6 @@
 	Service 53 - Extension 8
 	Service 55 - MMS User Connectivity Parameters
 
+ePDGId: Can't read file -- SW match failed! Expected 9000 and got 6a82.
 Done !