aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorHarald Welte <laforge@osmocom.org>2024-04-04 01:12:11 +0200
committerlaforge <laforge@osmocom.org>2024-04-13 16:26:05 +0000
commit0d4a843fd3b5fd2bba288117cf2ae2bceab7ff0d (patch)
treee602398eae4a964805f6e4f4b748cf994eb71386
parent32167d8052211bdc916c1c5a7453ff79f7c22111 (diff)
hnbgw: Make RAB release cause configurable
-rw-r--r--hnbgw/HNBGW_Tests.ttcn23
1 files changed, 13 insertions, 10 deletions
diff --git a/hnbgw/HNBGW_Tests.ttcn b/hnbgw/HNBGW_Tests.ttcn
index cc46021a..518dee95 100644
--- a/hnbgw/HNBGW_Tests.ttcn
+++ b/hnbgw/HNBGW_Tests.ttcn
@@ -290,7 +290,9 @@ type record TestHdlrParams {
octetstring nas_pdu optional,
/* local and remote SCCP addresses, used in TC_mscpool_paging_* */
SCCP_PAR_Address sccp_addr_msc optional,
- SCCP_PAR_Address sccp_addr_hnbgw optional
+ SCCP_PAR_Address sccp_addr_hnbgw optional,
+ /* RAB release cause */
+ RANAP_IEs.Cause rab_rel_cause
}
/* We extend:
@@ -1052,7 +1054,7 @@ private function f_cn_idx(boolean ps_domain, integer cn_nr := 0) return integer
private template (value) TestHdlrParams
t_pars(integer imsi_suffix, boolean ps_domain := false, integer hnb_idx := 0,
boolean expect_separate_sccp_cr := false, integer tx_sccp_cr_data_len := 0,
- integer cn_nr := 0) := {
+ integer cn_nr := 0, template (value) RANAP_IEs.Cause rab_rel_cause := ts_RanapCause_om_intervention) := {
hnb_idx := hnb_idx,
cn_idx := f_cn_idx(ps_domain, cn_nr),
imsi := f_gen_imsi(imsi_suffix),
@@ -1064,7 +1066,8 @@ t_pars(integer imsi_suffix, boolean ps_domain := false, integer hnb_idx := 0,
pfcp_local_addr := mp_pfcp_ip_local,
nas_pdu := omit,
sccp_addr_msc := omit,
- sccp_addr_hnbgw := omit
+ sccp_addr_hnbgw := omit,
+ rab_rel_cause := rab_rel_cause
}
/* Create an Iuh connection; send InitialUE; expect it to appear on new SCCP conenction */
@@ -1417,7 +1420,7 @@ friend function f_tc_rab_assignment(charstring id, TestHdlrParams pars) runs on
f_create_rab(pars.mgcp_pars);
/* Send Iu Release */
- tx := valueof(ts_RANAP_IuReleaseCommand(ts_RanapCause_om_intervention));
+ tx := valueof(ts_RANAP_IuReleaseCommand(pars.rab_rel_cause));
f_iu2iuh(tx);
T.start;
@@ -1457,7 +1460,7 @@ friend function f_tc_rab_assign_fail(charstring id, TestHdlrParams pars) runs on
f_rab_ass_req(pars.mgcp_pars);
/* Send RAB failed list in response */
- tx := valueof(ts_RANAP_RabAssResp(rab_fl := ts_RAB_FL(t_RAB_id(23), ts_RanapCause_om_intervention)));
+ tx := valueof(ts_RANAP_RabAssResp(rab_fl := ts_RAB_FL(t_RAB_id(23), pars.rab_rel_cause)));
f_iuh2iu(tx);
T.start;
@@ -1494,7 +1497,7 @@ friend function f_tc_rab_release(charstring id, TestHdlrParams pars) runs on Con
f_create_rab(pars.mgcp_pars);
/* Send RAB Release */
- tx := valueof(ts_RANAP_RabAssReq(rab_rl := ts_RAB_RL(t_RAB_id(23), ts_RanapCause_om_intervention)));
+ tx := valueof(ts_RANAP_RabAssReq(rab_rl := ts_RAB_RL(t_RAB_id(23), pars.rab_rel_cause)));
BSSAP.send(tx);
T.start;
@@ -1553,7 +1556,7 @@ friend function f_tc_rab_assign_mgcp_to(charstring id, TestHdlrParams pars) runs
}
/* Send Iu Release */
- tx := valueof(ts_RANAP_IuReleaseCommand(ts_RanapCause_om_intervention));
+ tx := valueof(ts_RANAP_IuReleaseCommand(pars.rab_rel_cause));
f_iu2iuh(tx);
tx := valueof(ts_RANAP_IuReleaseComplete());
@@ -1805,7 +1808,7 @@ friend function f_tc_ps_rab_assignment_with_pfcp(charstring id, TestHdlrParams p
f_bssap_expect(tr_RANAP_RabAssResp(rab_smdl));
f_sleep(2.0);
- tx := valueof(ts_RANAP_IuReleaseCommand(ts_RanapCause_om_intervention));
+ tx := valueof(ts_RANAP_IuReleaseCommand(pars.rab_rel_cause));
f_iu2iuh(tx);
tx := valueof(ts_RANAP_IuReleaseComplete());
@@ -1872,7 +1875,7 @@ friend function f_tc_ps_rab_assignment_without_pfcp(charstring id, TestHdlrParam
f_bssap_expect(tr_RANAP_RabAssResp(rab_smdl));
f_sleep(2.0);
- tx := valueof(ts_RANAP_IuReleaseCommand(ts_RanapCause_om_intervention));
+ tx := valueof(ts_RANAP_IuReleaseCommand(pars.rab_rel_cause));
f_iu2iuh(tx);
tx := valueof(ts_RANAP_IuReleaseComplete());
@@ -2749,7 +2752,7 @@ friend function f_tc_second_rab_assignment(charstring id, TestHdlrParams pars) r
f_bssap_expect(tx);
/* Send Iu Release */
- tx := valueof(ts_RANAP_IuReleaseCommand(ts_RanapCause_om_intervention));
+ tx := valueof(ts_RANAP_IuReleaseCommand(pars.rab_rel_cause));
f_iu2iuh(tx);
T.start;