From 8bd551af321af3ca3e73a48def87b303e91333fc Mon Sep 17 00:00:00 2001 From: Harald Welte Date: Sun, 9 Jun 2024 16:17:18 +0200 Subject: [PATCH] pySim.ota.OtaDialectSms: Move SMS header construct up to class level this way we can use it in other [future] methods. Change-Id: If296f823c18864fddcfb9cb1b82a087bac8875d4 --- pySim/ota.py | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pySim/ota.py b/pySim/ota.py index 54e8f75f..d77a64ee 100644 --- a/pySim/ota.py +++ b/pySim/ota.py @@ -322,6 +322,7 @@ class OtaDialectSms(OtaDialect): 'response_status'/ResponseStatus, 'cc_rc'/Bytes(this.rhl-10), 'secured_data'/GreedyBytes) + hdr_construct = Struct('chl'/Int8ub, 'spi'/SPI, 'kic'/KIC, 'kid'/KID_CC, 'tar'/Bytes(3)) def encode_cmd(self, otak: OtaKeyset, tar: bytes, spi: dict, apdu: bytes) -> bytes: # length of signature in octets @@ -343,8 +344,7 @@ class OtaDialectSms(OtaDialect): chl = 13 + len_sig # CHL + SPI (+ KIC + KID) - c = Struct('chl'/Int8ub, 'spi'/SPI, 'kic'/KIC, 'kid'/KID_CC, 'tar'/Bytes(3)) - part_head = c.build({'chl': chl, 'spi':spi, 'kic':kic, 'kid':kid, 'tar':tar}) + part_head = self.hdr_construct.build({'chl': chl, 'spi':spi, 'kic':kic, 'kid':kid, 'tar':tar}) #print("part_head: %s" % b2h(part_head)) # CNTR + PCNTR (CNTR not used)