pespin has submitted this change. ( https://gerrit.osmocom.org/c/osmo-ttcn3-hacks/+/41995?usp=email )
Change subject: bsc: Don't start virtual SMLC in TC_lcs_loc_req_without_smlc ......................................................................
bsc: Don't start virtual SMLC in TC_lcs_loc_req_without_smlc
The SMLC is not needed at all in that test. In fact, we want it to not be available. Starting it now within that test, where the BSC Lb link is torn down (f_vty_enable_smlc(false)) may create race conditions where the SMLC ttcn3 code (BSSMAP_LE_Emulation) will try to get the RESET procedure ongoing, which the BSC SCCP stack may reject (SCCP UDTS) due to the SCCP User being unbound during the VTY command above to disable the Lb Link.
Change-Id: Idb98e4d907feaafdaf3f5bf044c0c50b6d943d01 --- M bsc/BSC_Tests.ttcn 1 file changed, 6 insertions(+), 5 deletions(-)
Approvals: Jenkins Builder: Verified fixeria: Looks good to me, approved
diff --git a/bsc/BSC_Tests.ttcn b/bsc/BSC_Tests.ttcn index 6890073..d95a8c5 100644 --- a/bsc/BSC_Tests.ttcn +++ b/bsc/BSC_Tests.ttcn @@ -1258,7 +1258,9 @@ * \param nr_msc Number of virtual MSCs to bring up to connect to osmo-bsc. */ function f_init(integer nr_bts := NUM_BTS, boolean handler_mode := false, - integer nr_msc := 1, integer nr_mgw := 1, float guard_timeout := 30.0) runs on test_CT { + integer nr_msc := 1, integer nr_mgw := 1, + boolean enable_smlc := mp_enable_lcs_tests, + float guard_timeout := 30.0) runs on test_CT { var integer bssap_idx;
if (g_initialized) { @@ -1286,7 +1288,7 @@ f_bssap_idx_init(bssap_idx); }
- if (mp_enable_lcs_tests) { + if (enable_smlc) { if (handler_mode) { f_bssap_le_adapter_init(g_bssap_le, mp_bssap_le_cfg, "VirtSMLC", SMLC_BssapLeOps); } else { @@ -4102,7 +4104,7 @@ connect(vc_conn:RSL2_PROC, bts[2][0].rsl.vc_RSL:RSL_PROC); } connect(vc_conn:RAN_CONN, g_bssap[bssap_idx].vc_RAN:CLIENT); - if (mp_enable_lcs_tests) { + if (isvalue(g_bssap_le)) { connect(vc_conn:BSSAP_LE, g_bssap_le.vc_BSSAP_LE:CLIENT); connect(vc_conn:BSSAP_LE_PROC, g_bssap_le.vc_BSSAP_LE:PROC); } @@ -11036,7 +11038,6 @@ f_sleep(1.0);
f_establish_fully(omit, omit); - f_bssap_le_register_imsi(g_pars.imsi, omit);
RAN_CONN.send(valueof(ts_BSSMAP_Perform_Location_Request(ts_BSSMAP_Imsi(g_pars.imsi), ts_CellId_CGI('262'H, '42'H, 23, 42)))); @@ -11054,7 +11055,7 @@ var MSC_ConnHdlr vc_conn; var TestHdlrParams pars := f_gen_test_hdlr_pars();
- f_init(1, true); + f_init(1, true, enable_smlc := false); f_vty_enable_smlc(false); f_sleep(1.0); vc_conn := f_start_handler(refers(f_tc_lcs_loc_req_without_smlc), pars);