[UNTESTED] sysmocom_sja2: Support files related to OTA HTTPS features

Change-Id: I5710b82c2eea6b6bf5b38882b2a1ec7d60a725d8
This commit is contained in:
Harald Welte
2022-08-06 16:01:15 +02:00
parent 9e9db415b9
commit 89ff53922e

View File

@@ -162,6 +162,28 @@ class EF_SIM_AUTH_KEY(TransparentEF):
'key'/Bytes(16), 'key'/Bytes(16),
'op_opc' /Bytes(16)) 'op_opc' /Bytes(16))
class EF_HTTPS_CFG(TransparentEF):
def __init__(self, fid='6f2a', name='EF.HTTPS_CFG'):
super().__init__(fid, name=name, desc='HTTPS configuration')
class EF_HTTPS_KEYS(TransparentEF):
KeyRecord = Struct('security_domain'/Int8ub,
'key_type'/Enum(Int8ub, des=0x80, psk=0x85, aes=0x88),
'key_version'/Int8ub,
'key_id'/Int8ub,
'key_length'/Int8ub,
'key'/Bytes(this.key_length))
def __init__(self, fid='6f2b', name='EF.HTTPS_KEYS'):
super().__init__(fid, name=name, desc='HTTPS PSK and DEK keys')
self._construct = GreedyRange(self.KeyRecord)
class EF_HTTPS_POLL(TransparentEF):
TimeUnit = Enum(Int8ub, seconds=0, minutes=1, hours=2, days=3, ten_days=4)
def __init__(self, fid='6f2c', name='EF.HTTPS_POLL'):
super().__init__(fid, name=name, desc='HTTPS polling interval')
self._construct = Struct(Const(b'\x82'), 'time_unit'/self.TimeUnit, 'value'/Int8ub,
'adm_session_triggering_tlv'/GreedyBytes)
class DF_SYSTEM(CardDF): class DF_SYSTEM(CardDF):
def __init__(self): def __init__(self):
@@ -180,6 +202,9 @@ class DF_SYSTEM(CardDF):
EF_0348_COUNT(), EF_0348_COUNT(),
EF_GP_COUNT(), EF_GP_COUNT(),
EF_GP_DIV_DATA(), EF_GP_DIV_DATA(),
EF_HTTPS_CFG(),
EF_HTTPS_KEYS(),
EF_HTTPS_POLL(),
] ]
self.add_files(files) self.add_files(files)