Re-purpose helper method to be used for parsing Address TLV Object in general

The Address TLV object is used in EF.P-CSCF Address, EF.ePDGId and EF.ePDGIdEm.
See 3GPP TS 31.102 version 13.4.0 Release 13, section 4.2.8, 4.2.102 and 4.2.104.

Address TLV Object format
Tag (1 Byte) - '80'
Length (1 Byte)
Address Type (1 Byte) - '00' (FQDN), '01' (IPv4), '02' (IPv6)
Address (Address Length Bytes)

Change-Id: Ifd8a240f6b5c7736e58a8151295c30ec5b32ed5f
This commit is contained in:
Supreeth Herle
2020-03-24 16:15:02 +01:00
committed by herlesupreeth
parent acc222f9f0
commit 3b342c2f14
3 changed files with 14 additions and 13 deletions

View File

@@ -267,12 +267,12 @@ class UsimCard(Card):
def read_epdgid(self):
(res, sw) = self._scc.read_binary(EF_USIM_ADF_map['ePDGId'])
if sw == '9000':
return (dec_epdgid(res), sw)
return (dec_addr_tlv(res), sw)
else:
return (None, sw)
def update_epdgid(self, epdgid):
epdgid_tlv = enc_epdgid(epdgid)
epdgid_tlv = enc_addr_tlv(epdgid)
data, sw = self._scc.update_binary(
EF_USIM_ADF_map['ePDGId'], epdgid_tlv)
return sw