This is merely a historical archive of years 2008-2021, before the migration to mailman3.
A maintained and still updated list archive can be found at https://lists.osmocom.org/hyperkitty/list/gerrit-log@lists.osmocom.org/.
Harald Welte gerrit-no-reply at lists.osmocom.orgHarald Welte has submitted this change and it was merged. Change subject: msc: Fix generation of IMSI/IMEI/MSISDN ...................................................................... msc: Fix generation of IMSI/IMEI/MSISDN Now each test case uses unique IMSI/IMEI/MSISDN numbers, which helps to identify test cases from traces or from VTY introspection Change-Id: I54d05e8ec7aeecc48666d3b369351212a6a0ea6f --- M msc_tests/MSC_Tests.ttcn 1 file changed, 33 insertions(+), 30 deletions(-) Approvals: Harald Welte: Looks good to me, approved Jenkins Builder: Verified diff --git a/msc_tests/MSC_Tests.ttcn b/msc_tests/MSC_Tests.ttcn index e0ee84c..5976b45 100644 --- a/msc_tests/MSC_Tests.ttcn +++ b/msc_tests/MSC_Tests.ttcn @@ -299,21 +299,24 @@ type function void_fn(charstring id, BSC_ConnHdlrPars pars) runs on BSC_ConnHdlr; -function f_gen_imei(hexstring prefix, integer suffix) return hexstring { - var integer suffix_len := 15 - lengthof(prefix); - suffix_len := suffix_len; - return prefix & int2hex(suffix, suffix_len); +private function f_concat_pad(integer tot_len, hexstring prefix, integer suffix) return hexstring { + var integer suffix_len := tot_len - lengthof(prefix); + var charstring suffix_ch := int2str(suffix); + var integer pad_len := suffix_len - lengthof(suffix_ch); + + return prefix & int2hex(0, pad_len) & str2hex(suffix_ch); } -function f_gen_imsi(hexstring prefix, integer suffix) return hexstring { - var integer suffix_len := 15 - lengthof(prefix); - suffix_len := suffix_len-1; /* FIXME: fix odd IMSI length */ - return prefix & int2hex(suffix, suffix_len); +function f_gen_imei(integer suffix) return hexstring { + return f_concat_pad(15, '49999'H, suffix); } -function f_gen_msisdn(hexstring prefix, integer suffix) return hexstring { - var integer suffix_len := 12 - lengthof(prefix); - return prefix & int2hex(suffix, suffix_len); +function f_gen_imsi(integer suffix) return hexstring { + return f_concat_pad(15, '26242'H, suffix); +} + +function f_gen_msisdn(integer suffix) return hexstring { + return f_concat_pad(12, '49123'H, suffix); } /* FIXME: move into BSC_ConnectionHandler? */ @@ -323,9 +326,9 @@ sccp_addr_own := g_sccp_addr_own, sccp_addr_peer := g_sccp_addr_peer, cell_id := valueof(ts_CellId_CGI('262'H, '042'H, 23, 42)), - imei := f_gen_imei('49999'H, imsi_suffix), - imsi := f_gen_imsi('26242'H, imsi_suffix), - msisdn := f_gen_msisdn('491239999'H, imsi_suffix), + imei := f_gen_imei(imsi_suffix), + imsi := f_gen_imsi(imsi_suffix), + msisdn := f_gen_msisdn(imsi_suffix), tmsi := omit, cm2 := valueof(ts_CM2_default), cm3 := omit @@ -503,7 +506,7 @@ var BSC_ConnHdlr vc_conn; f_init(); f_vty_config(MSCVTY, "network", "authentication optional"); - vc_conn := f_start_handler(refers(f_tc_cmserv_imsi_unknown), testcasename(), 5); + vc_conn := f_start_handler(refers(f_tc_cmserv_imsi_unknown), testcasename(), 6); vc_conn.done; } @@ -555,7 +558,7 @@ f_init(); f_vty_config(MSCVTY, "network", "authentication optional"); - vc_conn := f_start_handler(refers(f_tc_lu_and_mo_call), testcasename(), 6); + vc_conn := f_start_handler(refers(f_tc_lu_and_mo_call), testcasename(), 7); vc_conn.done; } @@ -589,7 +592,7 @@ f_init(); f_vty_config(MSCVTY, "network", "authentication required"); - vc_conn := f_start_handler(refers(f_tc_lu_auth_sai_timeout), testcasename(), 7); + vc_conn := f_start_handler(refers(f_tc_lu_auth_sai_timeout), testcasename(), 8); vc_conn.done; } @@ -623,7 +626,7 @@ f_init(); f_vty_config(MSCVTY, "network", "authentication required"); - vc_conn := f_start_handler(refers(f_tc_lu_auth_sai_err), testcasename(), 8); + vc_conn := f_start_handler(refers(f_tc_lu_auth_sai_err), testcasename(), 9); vc_conn.done; } @@ -655,7 +658,7 @@ var BSC_ConnHdlr vc_conn; f_init(); - vc_conn := f_start_handler(refers(f_tc_lu_clear_request), testcasename(), 8); + vc_conn := f_start_handler(refers(f_tc_lu_clear_request), testcasename(), 10); vc_conn.done; } @@ -684,7 +687,7 @@ var BSC_ConnHdlr vc_conn; f_init(); - vc_conn := f_start_handler(refers(f_tc_lu_disconnect), testcasename(), 9); + vc_conn := f_start_handler(refers(f_tc_lu_disconnect), testcasename(), 11); vc_conn.done; } @@ -720,7 +723,7 @@ f_init(); f_vty_config(MSCVTY, "network", "authentication optional"); - vc_conn := f_start_handler(refers(f_tc_lu_by_imei), testcasename(), 9); + vc_conn := f_start_handler(refers(f_tc_lu_by_imei), testcasename(), 12); vc_conn.done; } @@ -768,7 +771,7 @@ f_init(); f_vty_config(MSCVTY, "network", "authentication optional"); - vc_conn := f_start_handler(refers(f_tc_lu_tmsi_noauth_unknown), testcasename(), 1); + vc_conn := f_start_handler(refers(f_tc_lu_tmsi_noauth_unknown), testcasename(), 13); vc_conn.done; } @@ -795,7 +798,7 @@ var BSC_ConnHdlr vc_conn; f_init(); - vc_conn := f_start_handler(refers(f_tc_imsi_detach_by_imsi), testcasename(), 2); + vc_conn := f_start_handler(refers(f_tc_imsi_detach_by_imsi), testcasename(), 14); vc_conn.done; } @@ -821,7 +824,7 @@ var BSC_ConnHdlr vc_conn; f_init(); - vc_conn := f_start_handler(refers(f_tc_imsi_detach_by_tmsi), testcasename(), 3); + vc_conn := f_start_handler(refers(f_tc_imsi_detach_by_tmsi), testcasename(), 15); vc_conn.done; } @@ -847,7 +850,7 @@ var BSC_ConnHdlr vc_conn; f_init(); - vc_conn := f_start_handler(refers(f_tc_imsi_detach_by_imei), testcasename(), 4); + vc_conn := f_start_handler(refers(f_tc_imsi_detach_by_imei), testcasename(), 16); vc_conn.done; } @@ -911,7 +914,7 @@ var BSC_ConnHdlr vc_conn; f_init(); - vc_conn := f_start_handler(refers(f_tc_emerg_call_imei_reject), testcasename(), 5); + vc_conn := f_start_handler(refers(f_tc_emerg_call_imei_reject), testcasename(), 17); vc_conn.done; } @@ -928,7 +931,7 @@ f_init(); f_vty_config(MSCVTY, "network", "authentication optional"); - vc_conn := f_start_handler(refers(f_tc_emerg_call_imsi), testcasename(), 6); + vc_conn := f_start_handler(refers(f_tc_emerg_call_imsi), testcasename(), 18); vc_conn.done; } @@ -949,7 +952,7 @@ var BSC_ConnHdlr vc_conn; f_init(); - vc_conn := f_start_handler(refers(f_tc_cm_serv_req_vgcs_reject), testcasename(), 7); + vc_conn := f_start_handler(refers(f_tc_cm_serv_req_vgcs_reject), testcasename(), 19); vc_conn.done; } @@ -970,7 +973,7 @@ var BSC_ConnHdlr vc_conn; f_init(); - vc_conn := f_start_handler(refers(f_tc_cm_serv_req_vbs_reject), testcasename(), 8); + vc_conn := f_start_handler(refers(f_tc_cm_serv_req_vbs_reject), testcasename(), 20); vc_conn.done; } @@ -991,7 +994,7 @@ var BSC_ConnHdlr vc_conn; f_init(); - vc_conn := f_start_handler(refers(f_tc_cm_serv_req_lcs_reject), testcasename(), 9); + vc_conn := f_start_handler(refers(f_tc_cm_serv_req_lcs_reject), testcasename(), 21); vc_conn.done; } -- To view, visit https://gerrit.osmocom.org/6039 To unsubscribe, visit https://gerrit.osmocom.org/settings Gerrit-MessageType: merged Gerrit-Change-Id: I54d05e8ec7aeecc48666d3b369351212a6a0ea6f Gerrit-PatchSet: 1 Gerrit-Project: osmo-ttcn3-hacks Gerrit-Branch: master Gerrit-Owner: Harald Welte <laforge at gnumonks.org> Gerrit-Reviewer: Harald Welte <laforge at gnumonks.org> Gerrit-Reviewer: Jenkins Builder