[MERGED] osmo-ttcn3-hacks[master]: msc: cosmetic: f_perform_lu() / pars: move send_early_cm to ...

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.org
Fri Mar 2 08:54:04 UTC 2018


Harald Welte has submitted this change and it was merged.

Change subject: msc: cosmetic: f_perform_lu() / pars: move send_early_cm to BSC_ConnHdlrPars
......................................................................


msc: cosmetic: f_perform_lu() / pars: move send_early_cm to BSC_ConnHdlrPars

By moving to the BSC_ConnHdlrPars, also the tests that expect a LU failure able
to indicate a send_cm_update flag.

All current callers of f_perform_lu() pass send_early_cm as 'true', all are
covered by a default of 'true'.

Change-Id: Ic882293f199a33133a171bff14ff433f99cc8576
---
M msc/BSC_ConnectionHandler.ttcn
M msc/MSC_Tests.ttcn
2 files changed, 27 insertions(+), 25 deletions(-)

Approvals:
  Harald Welte: Looks good to me, approved
  Jenkins Builder: Verified



diff --git a/msc/BSC_ConnectionHandler.ttcn b/msc/BSC_ConnectionHandler.ttcn
index 6cacff7..1189112 100644
--- a/msc/BSC_ConnectionHandler.ttcn
+++ b/msc/BSC_ConnectionHandler.ttcn
@@ -53,7 +53,8 @@
 	BSSMAP_IE_ClassmarkInformationType2 cm2,
 	BSSMAP_IE_ClassmarkInformationType3 cm3 optional,
 	AuthVector vec optional,
-	BSC_ConnHdlrNetworkPars net
+	BSC_ConnHdlrNetworkPars net,
+	boolean send_early_cm
 };
 
 /* get a one-octet bitmaks of supported algorithms based on Classmark information */
@@ -278,7 +279,7 @@
 	}
 }
 
-function f_perform_lu(boolean send_early_cm)
+function f_perform_lu()
 runs on BSC_ConnHdlr {
 	var PDU_ML3_MS_NW l3_lu := f_build_lu_imsi(g_pars.imsi)
 	var PDU_DTAP_MT dtap_mt;
@@ -289,7 +290,7 @@
 	/* Send BSSAP_Conn_Req with COMPL L3 INFO to MSC */
 	f_bssap_compl_l3(l3_lu);
 
-	if (send_early_cm) {
+	if (g_pars.send_early_cm) {
 		BSSAP.send(ts_BSSMAP_ClassmarkUpd(g_pars.cm2, g_pars.cm3));
 	}
 
diff --git a/msc/MSC_Tests.ttcn b/msc/MSC_Tests.ttcn
index 4bf385a..7347caf 100644
--- a/msc/MSC_Tests.ttcn
+++ b/msc/MSC_Tests.ttcn
@@ -359,7 +359,8 @@
 		cm2 := valueof(ts_CM2_default),
 		cm3 := omit,
 		vec := omit,
-		net := net_pars
+		net := net_pars,
+		send_early_cm := true
 	};
 
 	vc_conn := BSC_ConnHdlr.create(id);
@@ -384,7 +385,7 @@
 
 private function f_tc_lu_imsi_noauth_tmsi(charstring id, BSC_ConnHdlrPars pars) runs on BSC_ConnHdlr {
 	f_init_handler(pars);
-	f_perform_lu(true);
+	f_perform_lu();
 }
 testcase TC_lu_imsi_noauth_tmsi() runs on MTC_CT {
 	var BSC_ConnHdlr vc_conn;
@@ -397,7 +398,7 @@
 private function f_tc_lu_imsi_noauth_notmsi(charstring id, BSC_ConnHdlrPars pars) runs on BSC_ConnHdlr {
 	pars.net.expect_tmsi := false;
 	f_init_handler(pars);
-	f_perform_lu(true);
+	f_perform_lu();
 }
 testcase TC_lu_imsi_noauth_notmsi() runs on MTC_CT {
 	var BSC_ConnHdlr vc_conn;
@@ -464,7 +465,7 @@
 private function f_tc_lu_imsi_auth_tmsi(charstring id, BSC_ConnHdlrPars pars) runs on BSC_ConnHdlr {
 	pars.net.expect_auth := true;
 	f_init_handler(pars);
-	f_perform_lu(true);
+	f_perform_lu();
 }
 testcase TC_lu_imsi_auth_tmsi() runs on MTC_CT {
 	var BSC_ConnHdlr vc_conn;
@@ -518,7 +519,7 @@
 	cpars.mgcp_connection_id_bss := '22222'H;
 	cpars.mgcp_connection_id_mss := '33333'H;
 
-	f_perform_lu(true);
+	f_perform_lu();
 	f_mo_call(cpars);
 }
 testcase TC_lu_and_mo_call() runs on MTC_CT {
@@ -835,7 +836,7 @@
 private function f_tc_emerg_call_imsi(charstring id, BSC_ConnHdlrPars pars) runs on BSC_ConnHdlr {
 	f_init_handler(pars);
 	/* First perform location update to ensure subscriber is known */
-	f_perform_lu(true);
+	f_perform_lu();
 	/* Then issue emergency call identified by IMSI */
 	f_emerg_call(valueof(ts_MI_IMSI_LV(g_pars.imsi)));
 }
@@ -852,7 +853,7 @@
 	f_init_handler(pars);
 
 	/* First perform location update to ensure subscriber is known */
-	f_perform_lu(true);
+	f_perform_lu();
 
 	var MobileIdentityLV mi := valueof(ts_MI_IMSI_LV(g_pars.imsi));
 	var PDU_ML3_MS_NW l3_info := valueof(ts_CM_SERV_REQ(CM_TYPE_VGCS, mi));
@@ -873,7 +874,7 @@
 	f_init_handler(pars);
 
 	/* First perform location update to ensure subscriber is known */
-	f_perform_lu(true);
+	f_perform_lu();
 
 	var MobileIdentityLV mi := valueof(ts_MI_IMSI_LV(g_pars.imsi));
 	var PDU_ML3_MS_NW l3_info := valueof(ts_CM_SERV_REQ(CM_TYPE_VBS, mi));
@@ -894,7 +895,7 @@
 	f_init_handler(pars);
 
 	/* First perform location update to ensure subscriber is known */
-	f_perform_lu(true);
+	f_perform_lu();
 
 	var MobileIdentityLV mi := valueof(ts_MI_IMSI_LV(g_pars.imsi));
 	var PDU_ML3_MS_NW l3_info := valueof(ts_CM_SERV_REQ(CM_TYPE_LCS, mi));
@@ -915,7 +916,7 @@
 	f_init_handler(pars);
 
 	/* First perform location update to ensure subscriber is known */
-	f_perform_lu(true);
+	f_perform_lu();
 
 	var MobileIdentityLV mi := valueof(ts_MI_IMSI_LV(g_pars.imsi));
 	var PDU_ML3_MS_NW l3_info := valueof(ts_CM_REEST_REQ(0, mi));
@@ -976,7 +977,7 @@
 	pars.net.expect_auth := true;
 	pars.net.expect_ciph := true;
 	f_init_handler(pars);
-	f_perform_lu(true);
+	f_perform_lu();
 }
 testcase TC_lu_imsi_auth_tmsi_encr_13_13() runs on MTC_CT {
 	var BSC_ConnHdlr vc_conn;
@@ -1061,7 +1062,7 @@
 private function f_tc_establish_and_nothing(charstring id, BSC_ConnHdlrPars pars) runs on BSC_ConnHdlr {
 	f_init_handler(pars);
 
-	f_perform_lu(true);
+	f_perform_lu();
 
 	f_establish_fully(valueof(ts_MI_IMSI_LV(g_pars.imsi)));
 	f_expect_clear();
@@ -1080,7 +1081,7 @@
 
 	var CallParameters cpars := valueof(t_CallParams('12345'H, 0));
 
-	f_perform_lu(true);
+	f_perform_lu();
 
 	f_establish_fully(valueof(ts_MI_IMSI_LV(g_pars.imsi)));
 	f_create_mncc_expect(hex2str(cpars.called_party));
@@ -1105,7 +1106,7 @@
 	var MNCC_PDU mncc;
 	var MgcpCommand mgcp_cmd;
 
-	f_perform_lu(true);
+	f_perform_lu();
 
 	f_establish_fully(valueof(ts_MI_IMSI_LV(g_pars.imsi)));
 	f_create_mncc_expect(hex2str(cpars.called_party));
@@ -1139,7 +1140,7 @@
 	var MNCC_PDU mncc;
 	var MgcpCommand mgcp_cmd;
 
-	f_perform_lu(true);
+	f_perform_lu();
 
 	f_establish_fully(valueof(ts_MI_IMSI_LV(g_pars.imsi)));
 	f_create_mncc_expect(hex2str(cpars.called_party));
@@ -1207,7 +1208,7 @@
 	var MgcpCommand mgcp_cmd;
 	var OCT4 tmsi;
 
-	f_perform_lu(true);
+	f_perform_lu();
 	if (isvalue(g_pars.tmsi)) {
 		tmsi := g_pars.tmsi;
 	} else {
@@ -1351,7 +1352,7 @@
 	cpars.mgcp_connection_id_mss := '33333'H;
 
 	/* Location Update to make subscriber known */
-	f_perform_lu(true);
+	f_perform_lu();
 
 	/* First MO call should succeed */
 	f_mo_call(cpars);
@@ -1393,7 +1394,7 @@
 	pars.net.expect_ciph := true;
 	pars.net.kc_support := '02'O;	/* A5/1 only */
 	f_init_handler(pars);
-	f_perform_lu(true);
+	f_perform_lu();
 }
 testcase TC_lu_imsi_auth_tmsi_encr_1_13() runs on MTC_CT {
 	var BSC_ConnHdlr vc_conn;
@@ -1411,7 +1412,7 @@
 	pars.net.expect_ciph := true;
 	pars.net.kc_support := '08'O;	/* A5/3 only */
 	f_init_handler(pars);
-	f_perform_lu(true);
+	f_perform_lu();
 }
 testcase TC_lu_imsi_auth_tmsi_encr_3_13() runs on MTC_CT {
 	var BSC_ConnHdlr vc_conn;
@@ -1510,7 +1511,7 @@
 	pars.cm2.classmarkInformationType2_oct5.a5_3 := '0'B;
 	pars.cm2.classmarkInformationType2_oct5.a5_2 := '1'B;
 	f_init_handler(pars, 15.0);
-	f_perform_lu(true);
+	f_perform_lu();
 }
 testcase TC_lu_imsi_auth_tmsi_encr_013_2() runs on MTC_CT {
 	var BSC_ConnHdlr vc_conn;
@@ -1531,7 +1532,7 @@
 	cpars.mgcp_connection_id_bss := '10004'H;
 	cpars.mgcp_connection_id_mss := '10005'H;
 
-	f_perform_lu(true);
+	f_perform_lu();
 	f_mt_call(cpars);
 }
 testcase TC_lu_and_mt_call() runs on MTC_CT {
@@ -1550,7 +1551,7 @@
 	cpars.mgcp_connection_id_bss := '22222'H;
 	cpars.mgcp_connection_id_mss := '33333'H;
 
-	f_perform_lu(true);
+	f_perform_lu();
 	f_mo_seq_dtmf_dup(cpars);
 }
 testcase TC_mo_setup_and_dtmf_dup() runs on MTC_CT {

-- 
To view, visit https://gerrit.osmocom.org/7047
To unsubscribe, visit https://gerrit.osmocom.org/settings

Gerrit-MessageType: merged
Gerrit-Change-Id: Ic882293f199a33133a171bff14ff433f99cc8576
Gerrit-PatchSet: 1
Gerrit-Project: osmo-ttcn3-hacks
Gerrit-Branch: master
Gerrit-Owner: Neels Hofmeyr <nhofmeyr at sysmocom.de>
Gerrit-Reviewer: Harald Welte <laforge at gnumonks.org>
Gerrit-Reviewer: Jenkins Builder



More information about the gerrit-log mailing list