library/PCUIF_Types: clean up, drop remains of PCUIFv10
Change-Id: Ibfe8558cb9f335d8c29348063b0ff02b138dd4c7
Related: osmo-pcu.git I68a3f59d5c960ae3a4fbd74f9d4a894295cb9ed8
Related: docker-playground.git If0b2209af645f391817f65b4227736b52ca59e2e
Related: docker-playground.git I70f0c30d6c514614095dcbbcac5d025001861fbc
Related: OS#6191
diff --git a/pcu/PCUIF_Components.ttcn b/pcu/PCUIF_Components.ttcn
index d417995..6e956ba 100644
--- a/pcu/PCUIF_Components.ttcn
+++ b/pcu/PCUIF_Components.ttcn
@@ -502,7 +502,6 @@
/* Wait until the PCU is connected */
PCUIF.receive(tr_RAW_PCU_EV(PCU_EV_CONNECT));
- var template PCUIF_Sapi tr_ccch_sapi := (PCU_IF_SAPI_PCH, PCU_IF_SAPI_PCH_2, PCU_IF_SAPI_AGCH, PCU_IF_SAPI_AGCH_2);
alt {
/* Wait for TXT.ind (PCU_VERSION) and respond with INFO.ind (SI13) */
[] PCUIF.receive(tr_PCUIF_TXT_IND(bts_nr, PCU_VERSION, ?)) -> value pcu_msg {
@@ -538,40 +537,34 @@
"/TS" & int2str(pcu_msg.u.act_req.ts_nr));
repeat;
}
- [decode_data_req] PCUIF.receive(tr_PCUIF_DATA_REQ(bts_nr, ?, ?, sapi := tr_ccch_sapi)) -> value pcu_msg {
- var octetstring data;
- var PCUIF_pch pch;
- var PCUIF_agch agch;
+ [decode_data_req] PCUIF.receive(tr_PCUIF_DATA_REQ(bts_nr, ?, ?, sapi := PCU_IF_SAPI_PCH_2)) -> value pcu_msg {
var charstring imsi_filter_regexp := "(\d*)"; /* numbers only */
+ var PCUIF_pch pch;
- /* On PCH the payload is prefixed with paging group (3 octets): skip it.
- * TODO: add an additional template parameter, so we can match it. */
- if (pcu_msg.u.data_req.sapi == PCU_IF_SAPI_PCH) {
- data := substr(pcu_msg.u.data_req.data, 3, pcu_msg.u.data_req.len - 3);
- } else if (pcu_msg.u.data_req.sapi == PCU_IF_SAPI_AGCH) {
- data := pcu_msg.u.data_req.data;
- }
pcu_msg_rr.bts_nr := bts_nr;
pcu_msg_rr.raw := pcu_msg.u.data_req;
- if (pcu_msg_rr.raw.sapi == PCU_IF_SAPI_PCH_2) {
- pch := dec_PCUIF_pch(pcu_msg_rr.raw.data);
- pcu_msg_rr.msg_id := pch.msg_id;
- pcu_msg_rr.imsi := regexp(pch.imsi, imsi_filter_regexp, 0);
- pcu_msg_rr.rr_msg := dec_GsmRrMessage(pch.data);
- pcu_msg_rr.confirm := pch.confirm;
- } else if (pcu_msg_rr.raw.sapi == PCU_IF_SAPI_AGCH_2) {
- agch := dec_PCUIF_agch(pcu_msg_rr.raw.data);
- pcu_msg_rr.imsi := omit;
- pcu_msg_rr.msg_id := agch.msg_id;
- pcu_msg_rr.rr_msg := dec_GsmRrMessage(agch.data);
- pcu_msg_rr.confirm := agch.confirm;
- } else {
- pcu_msg_rr.msg_id := omit;
- pcu_msg_rr.imsi := omit;
- pcu_msg_rr.rr_msg := dec_GsmRrMessage(data);
- pcu_msg_rr.confirm := omit;
- }
+ pch := dec_PCUIF_pch(pcu_msg_rr.raw.data);
+ pcu_msg_rr.msg_id := pch.msg_id;
+ pcu_msg_rr.imsi := regexp(pch.imsi, imsi_filter_regexp, 0);
+ pcu_msg_rr.rr_msg := dec_GsmRrMessage(pch.data);
+ pcu_msg_rr.confirm := pch.confirm;
+
+ TC.send(pcu_msg_rr);
+ repeat;
+ }
+ [decode_data_req] PCUIF.receive(tr_PCUIF_DATA_REQ(bts_nr, ?, ?, sapi := PCU_IF_SAPI_AGCH_2)) -> value pcu_msg {
+ var PCUIF_agch agch;
+
+ pcu_msg_rr.bts_nr := bts_nr;
+ pcu_msg_rr.raw := pcu_msg.u.data_req;
+
+ agch := dec_PCUIF_agch(pcu_msg_rr.raw.data);
+ pcu_msg_rr.imsi := omit;
+ pcu_msg_rr.msg_id := agch.msg_id;
+ pcu_msg_rr.rr_msg := dec_GsmRrMessage(agch.data);
+ pcu_msg_rr.confirm := agch.confirm;
+
TC.send(pcu_msg_rr);
repeat;
}