diff options
author | Vadim Yanitskiy <axilirator@gmail.com> | 2020-04-29 12:19:50 +0700 |
---|---|---|
committer | Vadim Yanitskiy <axilirator@gmail.com> | 2020-04-29 12:23:11 +0700 |
commit | f24a6d382dbd53a1ec779501684382a3995852bb (patch) | |
tree | ab88cfd1ccb5a8946432d375d181d10e6a9cdbf5 /pcu | |
parent | c90c0497c83e8495b665adb9953b2e200125f9a7 (diff) |
PCU: fix f_pcuif_tx_data_cnf(): do not include paging group
As it turns out, DATA.cnf shall not contain paging group.
Change-Id: I7e0d1bb03fd42fc742f1f3d13a48e9781975dc17
Diffstat (limited to 'pcu')
-rw-r--r-- | pcu/PCU_Tests_RAW.ttcn | 13 |
1 files changed, 11 insertions, 2 deletions
diff --git a/pcu/PCU_Tests_RAW.ttcn b/pcu/PCU_Tests_RAW.ttcn index 09ff4e36..b79b365d 100644 --- a/pcu/PCU_Tests_RAW.ttcn +++ b/pcu/PCU_Tests_RAW.ttcn @@ -249,12 +249,21 @@ private function f_acknackdesc_ack_block(inout AckNackDescription desc, uint7_t * NOTE: it's the responsibility of caller to make sure that pcu_msg contains u.data_req. */ private function f_pcuif_tx_data_cnf(in PCUIF_Message pcu_msg) runs on RAW_PCU_Test_CT { - BTS.send(PCUIF_Message:{ + var PCUIF_Message pcu_msg_cnf := { msg_type := PCU_IF_MSG_DATA_CNF, bts_nr := pcu_msg.bts_nr, spare := pcu_msg.spare, u := { data_cnf := pcu_msg.u.data_req } - }); + }; + + /* PCU wants DATA.cnf containing basically everything that was in DATA.req, + * but PCU_IF_SAPI_PCH is a special case - paging group shall be excluded. */ + if (pcu_msg.u.data_req.sapi == PCU_IF_SAPI_PCH) { + pcu_msg_cnf.u.data_cnf.data := substr(pcu_msg.u.data_req.data, 3, + pcu_msg.u.data_req.len - 3); + } + + BTS.send(pcu_msg_cnf); } private function f_pcuif_rx_imm_ass(out GsmRrMessage rr_imm_ass, |