aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorPhilipp Maier <pmaier@sysmocom.de>2023-09-21 15:05:36 +0200
committerdexter <pmaier@sysmocom.de>2023-09-22 07:30:02 +0000
commite0fa9b078600275e5ec4b4e41026f17161fe53af (patch)
tree73f98f050ffd1c337d123aafb51ed9e4e56853b1
parentcc9b804d69997a4447b3047e2d8bac07e80abcd5 (diff)
GPRS_Components: use imsi record member
The function f_pcuif_rx_pch_pag_req1 tries to read the IMSI suffix from the raw data that was exchanged on the PCUIF interface. This is no longer the appropriate way in PCUIF v.11. There is now a dedicated imsi member in type record BTS_CCCH_Block, which is used for that purpose. Related: OS#5927 Change-Id: I0c7c6a31cbf7ed533e665728c157de0ac9e0fe8d
-rw-r--r--pcu/GPRS_Components.ttcn5
1 files changed, 2 insertions, 3 deletions
diff --git a/pcu/GPRS_Components.ttcn b/pcu/GPRS_Components.ttcn
index 983ae8f5..aaec6d31 100644
--- a/pcu/GPRS_Components.ttcn
+++ b/pcu/GPRS_Components.ttcn
@@ -1175,9 +1175,8 @@ runs on MS_BTS_IFACE_CT return GsmRrMessage {
rr_pag_req1 := data_msg.rr_msg;
log("Rx Paging Request Type1: ", rr_pag_req1);
-
- /* First 3 bytes contain IMSI suffix to calculate paging group: */
- imsi_suff_octstr := substr(data_msg.raw.data, 0, 3);
+ /* The last 3 digits of the IMSI are used to calculate paging group: */
+ imsi_suff_octstr := substr(char2oct(data_msg.imsi), lengthof(data_msg.imsi) - 3, 3);
pag_group_rx := str2int(oct2char(imsi_suff_octstr[0])) * 100 +
str2int(oct2char(imsi_suff_octstr[1])) * 10 +
str2int(oct2char(imsi_suff_octstr[2]));