ts_31_102: Add DF.SAIP support

DF.SAIP (SIMalliance Interoperable Profile) is not part of 31.102,
but something from the eSIM/eUICC universe of TCA (formerly known as
SIMalliance).  However, as 3GPP does not specify how/where the card
stores the information required for SUCI calculation, the
TCA/SIMalliance standard is the only standard there is.  Some CardOS
start to use this standard even for non-eSIM/eUICC use cases.

Change-Id: Iffb65af335dfdbd7791fca9a0a6ad4b79814a57c
This commit is contained in:
Harald Welte 2023-05-25 09:14:28 +02:00
parent 24e77a7758
commit 2bee70cbac
1 changed files with 13 additions and 0 deletions

View File

@ -1451,6 +1451,18 @@ class DF_USIM_5GS(CardDF):
self.add_files(files)
class DF_SAIP(CardDF):
"""This is not really TS 31.102 but part of the eUICC Profile Package: Interoperable Format Technical
Specification as released by TCA (formerly SIMalliance)"""
def __init__(self, fid='5FD0', name='DF.SAIP', desc='SIMalliance Interoperable Profile', **kwargs):
super().__init__(fid=fid, name=name, desc=desc, **kwargs)
files = [
# uses the same file format as DF.5GS/EF_SUCI_Calc_Info, but different FID
EF_SUCI_Calc_Info(fid='4f01')
]
self.add_files(files)
class ADF_USIM(CardADF):
def __init__(self, aid='a0000000871002', name='ADF.USIM', fid=None, sfid=None,
desc='USIM Application'):
@ -1576,6 +1588,7 @@ class ADF_USIM(CardADF):
DF_USIM_5GS(service=[122, 123, 124, 125, 126, 127, 129, 130]),
DF_SNPN(service=[143,146]),
DF_5G_ProSe(service=139),
DF_SAIP(),
]
self.add_files(files)