aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--bts/BTS_Tests.ttcn1
-rw-r--r--library/PCUIF_CodecPort.ttcn1
-rw-r--r--library/PCUIF_Types.ttcn3
-rw-r--r--pcu/PCUIF_Components.ttcn10
4 files changed, 11 insertions, 4 deletions
diff --git a/bts/BTS_Tests.ttcn b/bts/BTS_Tests.ttcn
index d39bb77e..6109159e 100644
--- a/bts/BTS_Tests.ttcn
+++ b/bts/BTS_Tests.ttcn
@@ -5823,6 +5823,7 @@ testcase TC_pcu_data_req_pch() runs on test_CT {
pch.msg_id := '01020304'O;
pch.imsi := "00101000000000123";
pch.data := c_PCU_DATA;
+ pch.confirm := false;
f_pcu_data_req(0, 0, 0, 0, 0, PCU_IF_SAPI_PCH_2, enc_PCUIF_pch(pch));
}
diff --git a/library/PCUIF_CodecPort.ttcn b/library/PCUIF_CodecPort.ttcn
index e56303e8..d180f17b 100644
--- a/library/PCUIF_CodecPort.ttcn
+++ b/library/PCUIF_CodecPort.ttcn
@@ -159,6 +159,7 @@ function f_PCUIF_tx_imm_ass_pch(PCUIF_CODEC_PT pt, integer conn_id, octetstring
pch.msg_id := msg_id;
pch.imsi := hex2str(imsi);
pch.data := imm_ass;
+ pch.confirm := true;
pt.send(t_SD_PCUIF(conn_id, ts_PCUIF_DATA_REQ(bts_nr, 0, 0, 0, 0, PCU_IF_SAPI_PCH_2, enc_PCUIF_pch(pch))));
}
diff --git a/library/PCUIF_Types.ttcn b/library/PCUIF_Types.ttcn
index 8583504c..509c93cf 100644
--- a/library/PCUIF_Types.ttcn
+++ b/library/PCUIF_Types.ttcn
@@ -308,7 +308,8 @@ type record PCUIF_container {
type record PCUIF_pch {
OCT4 msg_id,
charstring imsi length(17),
- octetstring data length(23)
+ octetstring data length(23),
+ boolean confirm
} with {
variant (msg_id) "BYTEORDER(last)"
variant (imsi) "FIELDLENGTH(17)"
diff --git a/pcu/PCUIF_Components.ttcn b/pcu/PCUIF_Components.ttcn
index d7e2ed59..58686259 100644
--- a/pcu/PCUIF_Components.ttcn
+++ b/pcu/PCUIF_Components.ttcn
@@ -142,7 +142,8 @@ type record BTS_CCCH_Block {
PCUIF_data raw,
OCT4 msg_id optional,
charstring imsi optional,
- GsmRrMessage rr_msg
+ GsmRrMessage rr_msg,
+ boolean confirm
};
template BTS_PDTCH_Block tr_PCUIF_DATA_PDTCH(template uint8_t bts_nr,
template PCUIF_data raw,
@@ -162,12 +163,14 @@ template BTS_CCCH_Block tr_PCUIF_DATA_RR(template uint8_t bts_nr,
template PCUIF_data raw,
template GsmRrMessage rr_msg := ?,
template OCT4 msg_id := *,
- template charstring imsi := *) := {
+ template charstring imsi := *,
+ template boolean confirm := *) := {
bts_nr := bts_nr,
raw := raw,
msg_id := msg_id,
imsi := imsi,
- rr_msg := rr_msg
+ rr_msg := rr_msg,
+ confirm := confirm
};
/* Generic port for messages and events */
@@ -553,6 +556,7 @@ runs on RAW_PCU_BTS_CT {
pcu_msg_rr.msg_id := pch.msg_id;
pcu_msg_rr.imsi := pch.imsi;
pcu_msg_rr.rr_msg := dec_GsmRrMessage(pch.data);
+ pcu_msg_rr.confirm := pch.confirm;
} else {
pcu_msg_rr.msg_id := omit;
pcu_msg_rr.imsi := omit;