From d2edd414a8c1fdc4c04735417b30cd2e6420b046 Mon Sep 17 00:00:00 2001 From: Harald Welte Date: Tue, 31 Jan 2023 16:49:03 +0100 Subject: [PATCH] ts_51_011: Fix decoding/encoding of EF_LOCIGPRS The P-TMSI signature is a 3-byte value, not a 1-byte value. Change-Id: I06e8d3efe0b3cf3970159c913acfd2f72280302d --- pySim/ts_51_011.py | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/pySim/ts_51_011.py b/pySim/ts_51_011.py index 4d819dd7..80182af2 100644 --- a/pySim/ts_51_011.py +++ b/pySim/ts_51_011.py @@ -824,7 +824,8 @@ class EF_Kc(TransparentEF): class EF_LOCIGPRS(TransparentEF): def __init__(self, fid='6f53', sfid=None, name='EF.LOCIGPRS', desc='GPRS Location Information', size=(14, 14)): super().__init__(fid, sfid=sfid, name=name, desc=desc, size=size) - self._construct = Struct('ptmsi'/HexAdapter(Bytes(4)), 'ptmsi_sig'/Int8ub, 'rai'/HexAdapter(Bytes(6)), + self._construct = Struct('ptmsi'/HexAdapter(Bytes(4)), 'ptmsi_sig'/HexAdapter(Bytes(3)), + 'rai'/HexAdapter(Bytes(6)), 'rau_status'/Enum(Byte, updated=0, not_updated=1, plmn_not_allowed=2, routing_area_not_allowed=3))