PCUIF: use confirm flag in struct gsm_pcu_if_pch

In the recent PCUIF change of osmo-pcu (see Depends) a confirm flag
is added to struct gsm_pcu_if_pch. This flag tells the receiving end
(OsmoBSC or OsmoBTS) that the sending of the received MAC block has
to be confirmed towards the PCU. OsmoBTS and OsmoPCU now rely on the
conformation flag.

Let's update the BTS_and PCU testsuites accordingly.

Related: OS#5927
Depends: osmo-pcu.git Ia202862aafc1f0cb6601574ef61eb9155de11f04
Change-Id: I7017ca20ca7e0b77d0f363121e4f17280e39e8ac
This commit is contained in:
Philipp Maier 2023-08-24 13:13:10 +02:00
parent d501ee8c7a
commit 0221248078
4 changed files with 11 additions and 4 deletions

View File

@ -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));
}

View File

@ -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))));
}

View File

@ -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)"

View File

@ -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;