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/.
laforge gerrit-no-reply at lists.osmocom.orglaforge has submitted this change. ( https://gerrit.osmocom.org/c/osmo-ttcn3-hacks/+/16786 )
Change subject: MSC: f_ran_register_imsi(): allow passing omit as TMSI
......................................................................
MSC: f_ran_register_imsi(): allow passing omit as TMSI
Change-Id: I6dd2f77283a79e83f028115f4cc42f05db885838
---
M library/RAN_Emulation.ttcnpp
M msc/MSC_Tests.ttcn
2 files changed, 21 insertions(+), 61 deletions(-)
Approvals:
laforge: Looks good to me, approved
pespin: Looks good to me, but someone else must approve
Jenkins Builder: Verified
diff --git a/library/RAN_Emulation.ttcnpp b/library/RAN_Emulation.ttcnpp
index 891de09..b54d6e4 100644
--- a/library/RAN_Emulation.ttcnpp
+++ b/library/RAN_Emulation.ttcnpp
@@ -1444,8 +1444,17 @@
}
/* helper function for clients to register their IMSI/TMSI */
-function f_ran_register_imsi(hexstring imsi, OCT4 tmsi)
+function f_ran_register_imsi(hexstring imsi, template (omit) OCT4 tmsi_or_omit)
runs on RAN_ConnHdlr {
+ var OCT4 tmsi;
+
+ /* Resolve omit to a special reserved value */
+ if (istemplatekind(tmsi_or_omit, "omit")) {
+ tmsi := 'FFFFFFFF'O;
+ } else {
+ tmsi := valueof(tmsi_or_omit);
+ }
+
BSSAP_PROC.call(RAN_register_imsi:{imsi, tmsi, self}) {
[] BSSAP_PROC.getreply(RAN_register_imsi:{?,?,?}) {};
}
diff --git a/msc/MSC_Tests.ttcn b/msc/MSC_Tests.ttcn
index 529a396..f7df81a 100644
--- a/msc/MSC_Tests.ttcn
+++ b/msc/MSC_Tests.ttcn
@@ -1345,15 +1345,9 @@
private function f_mt_call_start(inout CallParameters cpars) runs on BSC_ConnHdlr {
var MNCC_PDU mncc;
var MgcpCommand mgcp_cmd;
- var OCT4 tmsi;
f_perform_lu();
- if (isvalue(g_pars.tmsi)) {
- tmsi := g_pars.tmsi;
- } else {
- tmsi := 'FFFFFFFF'O;
- }
- f_ran_register_imsi(g_pars.imsi, tmsi);
+ f_ran_register_imsi(g_pars.imsi, g_pars.tmsi);
/* Allocate call reference and send SETUP via MNCC to MSC */
cpars.mncc_callref := f_rnd_int(2147483648);
@@ -1914,7 +1908,6 @@
/* LU followed by MT SMS */
friend function f_tc_lu_and_mt_sms(charstring id, BSC_ConnHdlrPars pars) runs on BSC_ConnHdlr {
var SmsParameters spars := valueof(t_SmsPars);
- var OCT4 tmsi;
f_init_handler(pars);
@@ -1922,12 +1915,7 @@
f_perform_lu();
/* register an 'expect' for given IMSI (+TMSI) */
- if (isvalue(g_pars.tmsi)) {
- tmsi := g_pars.tmsi;
- } else {
- tmsi := 'FFFFFFFF'O;
- }
- f_ran_register_imsi(g_pars.imsi, tmsi);
+ f_ran_register_imsi(g_pars.imsi, g_pars.tmsi);
f_vty_sms_send(hex2str(pars.imsi), "2342", "Hello SMS");
@@ -1955,19 +1943,14 @@
/* Paging for MT SMS but no response */
friend function f_tc_lu_and_mt_sms_paging_and_nothing(charstring id, BSC_ConnHdlrPars pars) runs on BSC_ConnHdlr {
var SmsParameters spars := valueof(t_SmsPars);
- var OCT4 tmsi;
+
f_init_handler(pars, 150.0);
/* Perform location update */
f_perform_lu();
/* register an 'expect' for given IMSI (+TMSI) */
- if (isvalue(g_pars.tmsi)) {
- tmsi := g_pars.tmsi;
- } else {
- tmsi := 'FFFFFFFF'O;
- }
- f_ran_register_imsi(g_pars.imsi, tmsi);
+ f_ran_register_imsi(g_pars.imsi, g_pars.tmsi);
f_vty_sms_send(hex2str(pars.imsi), "2342", "Hello SMS");
@@ -2013,7 +1996,6 @@
/* LU followed by MT SMS with repeated paging */
friend function f_tc_lu_and_mt_sms_paging_repeated(charstring id, BSC_ConnHdlrPars pars) runs on BSC_ConnHdlr {
var SmsParameters spars := valueof(t_SmsPars);
- var OCT4 tmsi;
f_init_handler(pars);
@@ -2021,12 +2003,7 @@
f_perform_lu();
/* register an 'expect' for given IMSI (+TMSI) */
- if (isvalue(g_pars.tmsi)) {
- tmsi := g_pars.tmsi;
- } else {
- tmsi := 'FFFFFFFF'O;
- }
- f_ran_register_imsi(g_pars.imsi, tmsi);
+ f_ran_register_imsi(g_pars.imsi, g_pars.tmsi);
f_vty_sms_send(hex2str(pars.imsi), "2342", "Hello SMS");
@@ -2310,11 +2287,7 @@
f_perform_lu();
/* Register an 'expect' for given IMSI (+TMSI) */
- if (isvalue(g_pars.tmsi)) {
- f_ran_register_imsi(g_pars.imsi, g_pars.tmsi);
- } else {
- f_ran_register_imsi(g_pars.imsi, 'FFFFFFFF'O);
- }
+ f_ran_register_imsi(g_pars.imsi, g_pars.tmsi);
var template GSUP_PDU mt_forwardSM_res := tr_GSUP_MT_FORWARD_SM_RES(
imsi := g_pars.imsi,
@@ -2375,11 +2348,7 @@
f_perform_lu();
/* Register an 'expect' for given IMSI (+TMSI) */
- if (isvalue(g_pars.tmsi)) {
- f_ran_register_imsi(g_pars.imsi, g_pars.tmsi);
- } else {
- f_ran_register_imsi(g_pars.imsi, 'FFFFFFFF'O);
- }
+ f_ran_register_imsi(g_pars.imsi, g_pars.tmsi);
var template GSUP_PDU mt_forwardSM_err := tr_GSUP_MT_FORWARD_SM_ERR(
imsi := g_pars.imsi,
@@ -2442,11 +2411,7 @@
f_perform_lu();
/* Register an 'expect' for given IMSI (+TMSI) */
- if (isvalue(g_pars.tmsi)) {
- f_ran_register_imsi(g_pars.imsi, g_pars.tmsi);
- } else {
- f_ran_register_imsi(g_pars.imsi, 'FFFFFFFF'O);
- }
+ f_ran_register_imsi(g_pars.imsi, g_pars.tmsi);
/* Submit the 1st MT SMS on GSUP */
log("TX MT-forwardSM-Req for the 1st SMS");
@@ -2555,11 +2520,7 @@
f_perform_lu();
/* Register an 'expect' for given IMSI (+TMSI) */
- if (isvalue(g_pars.tmsi)) {
- f_ran_register_imsi(g_pars.imsi, g_pars.tmsi);
- } else {
- f_ran_register_imsi(g_pars.imsi, 'FFFFFFFF'O);
- }
+ f_ran_register_imsi(g_pars.imsi, g_pars.tmsi);
/* Send CM Service Request for MO SMMA */
f_establish_fully(EST_TYPE_MO_SMS);
@@ -2659,11 +2620,7 @@
f_perform_lu();
/* Register an 'expect' for given IMSI (+TMSI) */
- if (isvalue(g_pars.tmsi)) {
- f_ran_register_imsi(g_pars.imsi, g_pars.tmsi);
- } else {
- f_ran_register_imsi(g_pars.imsi, 'FFFFFFFF'O);
- }
+ f_ran_register_imsi(g_pars.imsi, g_pars.tmsi);
var template GSUP_PDU mt_forwardSM_res := tr_GSUP_MT_FORWARD_SM_RES(
imsi := g_pars.imsi,
@@ -2811,13 +2768,7 @@
SMPP.receive(tr_SMPP(c_SMPP_command_id_alert_notification, ESME_ROK));
/* register an 'expect' for given IMSI (+TMSI) */
- var OCT4 tmsi;
- if (isvalue(g_pars.tmsi)) {
- tmsi := g_pars.tmsi;
- } else {
- tmsi := 'FFFFFFFF'O;
- }
- f_ran_register_imsi(g_pars.imsi, tmsi);
+ f_ran_register_imsi(g_pars.imsi, g_pars.tmsi);
var SmsParameters spars := valueof(t_SmsPars);
/* TODO: test with more intelligent user data; test different coding schemes */
--
To view, visit https://gerrit.osmocom.org/c/osmo-ttcn3-hacks/+/16786
To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings
Gerrit-Project: osmo-ttcn3-hacks
Gerrit-Branch: master
Gerrit-Change-Id: I6dd2f77283a79e83f028115f4cc42f05db885838
Gerrit-Change-Number: 16786
Gerrit-PatchSet: 2
Gerrit-Owner: fixeria <axilirator at gmail.com>
Gerrit-Reviewer: Jenkins Builder
Gerrit-Reviewer: fixeria <axilirator at gmail.com>
Gerrit-Reviewer: laforge <laforge at osmocom.org>
Gerrit-Reviewer: pespin <pespin at sysmocom.de>
Gerrit-MessageType: merged
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.osmocom.org/pipermail/gerrit-log/attachments/20200110/34578ae3/attachment.htm>