pespin has submitted this change. ( 
https://gerrit.osmocom.org/c/osmo-ttcn3-hacks/+/38588?usp=email )

 (

1 is the latest approved patch-set.
No files were changed between the latest approved patch-set and the submitted 
one.
 )Change subject: hnbgw: Use g_pars.mgcp_pars directly during RAB CS setup
......................................................................

hnbgw: Use g_pars.mgcp_pars directly during RAB CS setup

Change-Id: I1f699e197e29f912ad06378f10563063aa291af3
---
M hnbgw/ConnHdlr.ttcn
M hnbgw/HNBGW_Tests.ttcn
2 files changed, 28 insertions(+), 28 deletions(-)

Approvals:
  pespin: Looks good to me, approved
  osmith: Looks good to me, but someone else must approve
  Jenkins Builder: Verified




diff --git a/hnbgw/ConnHdlr.ttcn b/hnbgw/ConnHdlr.ttcn
index cc798e7..adbfcae 100644
--- a/hnbgw/ConnHdlr.ttcn
+++ b/hnbgw/ConnHdlr.ttcn
@@ -158,7 +158,7 @@
        integer cn_idx,
        hexstring imsi,
        boolean ps_domain,
-       MgcpParameters mgcp_pars optional,
+       MgcpParameters mgcp_pars,
        HnbConfig hnb optional,
        boolean expect_separate_sccp_cr,
        integer tx_sccp_cr_data_len,
@@ -567,14 +567,14 @@
        return mgcp_resp;
 }

-function f_rab_ass_req_cs(inout MgcpParameters pars) runs on ConnHdlr {
+function f_rab_ass_req_cs() runs on ConnHdlr {
        var MgcpCommand mgcp_cmd;
        var RANAP_PDU tx;
        var template RAB_SetupOrModifyList rab_sml;
        timer T := 5.0;

        /* Send RAB Assignment Request */
-       rab_sml := ts_RAB_SML(t_RAB_id(23), f_ts_RAB_TLA(pars.cn_rtp_ip), 
t_RAB_binding_port(pars.cn_rtp_port));
+       rab_sml := ts_RAB_SML(t_RAB_id(23), 
f_ts_RAB_TLA(g_pars.mgcp_pars.cn_rtp_ip), 
t_RAB_binding_port(g_pars.mgcp_pars.cn_rtp_port));
        tx := valueof(ts_RANAP_RabAssReq(rab_sml));
        BSSAP.send(tx);
        T.start;
@@ -583,7 +583,7 @@
        alt {
        [] MGCP.receive(tr_CRCX) -> value mgcp_cmd {
                log("CRCX1", mgcp_cmd);
-               var template MgcpResponse mgcp_rsp := f_handle_crcx(pars, 
mgcp_cmd);
+               var template MgcpResponse mgcp_rsp := 
f_handle_crcx(g_pars.mgcp_pars, mgcp_cmd);
                MGCP.send(valueof(mgcp_rsp));
                }
        [] T.timeout {
@@ -593,77 +593,77 @@
        T.stop;

        /* Expect RAB Assignment Request with IP/port from CRCX ACK via Iuh */
-       rab_sml := ts_RAB_SML(t_RAB_id(23), 
f_ts_RAB_TLA(pars.mgw_conn_ran.mgw_rtp_ip), 
t_RAB_binding_port(pars.mgw_conn_ran.mgw_rtp_port));
+       rab_sml := ts_RAB_SML(t_RAB_id(23), 
f_ts_RAB_TLA(g_pars.mgcp_pars.mgw_conn_ran.mgw_rtp_ip), 
t_RAB_binding_port(g_pars.mgcp_pars.mgw_conn_ran.mgw_rtp_port));
        tx := valueof(ts_RANAP_RabAssReq(rab_sml));

        f_rua_expect(tx);
 }

-friend function f_rab_ass_resp_cs(inout MgcpParameters pars) runs on ConnHdlr {
+friend function f_rab_ass_resp_cs() runs on ConnHdlr {
        var MgcpCommand mgcp_cmd;
        var RANAP_PDU tx;
        var template RAB_SetupOrModifiedList rab_smdl;

        /* Send back RAB Assignment Response via Iuh */
-       rab_smdl := ts_RAB_SMdL(t_RAB_id(23), f_ts_RAB_TLA(pars.hnb_rtp_ip), 
t_RAB_binding_port(pars.hnb_rtp_port));
+       rab_smdl := ts_RAB_SMdL(t_RAB_id(23), 
f_ts_RAB_TLA(g_pars.mgcp_pars.hnb_rtp_ip), 
t_RAB_binding_port(g_pars.mgcp_pars.hnb_rtp_port));
        tx := valueof(ts_RANAP_RabAssResp(rab_smdl));
        RUA.send(tx);

        interleave {
        /* Expect MDCX with IP/port from RAB Assignment Response */
-       [] MGCP.receive(tr_MDCX(tr_SDP(pars.hnb_rtp_ip, pars.hnb_rtp_port))) -> 
value mgcp_cmd {
+       [] MGCP.receive(tr_MDCX(tr_SDP(g_pars.mgcp_pars.hnb_rtp_ip, 
g_pars.mgcp_pars.hnb_rtp_port))) -> value mgcp_cmd {
                var HostName mgw_rtp_ip;
                var boolean exp_rua_rab_reass := false;
                log("MDCX1", mgcp_cmd);
-               if (ispresent(pars.mgw_conn_ran.mgw_rtp_ip_mdcx)) {
-                       mgw_rtp_ip := pars.mgw_conn_ran.mgw_rtp_ip_mdcx;
-                       if (pars.mgw_conn_ran.mgw_rtp_ip != 
pars.mgw_conn_ran.mgw_rtp_ip_mdcx) {
+               if (ispresent(g_pars.mgcp_pars.mgw_conn_ran.mgw_rtp_ip_mdcx)) {
+                       mgw_rtp_ip := 
g_pars.mgcp_pars.mgw_conn_ran.mgw_rtp_ip_mdcx;
+                       if (g_pars.mgcp_pars.mgw_conn_ran.mgw_rtp_ip != 
g_pars.mgcp_pars.mgw_conn_ran.mgw_rtp_ip_mdcx) {
                                exp_rua_rab_reass := true;
                        }
                } else {
-                       mgw_rtp_ip := pars.mgw_conn_ran.mgw_rtp_ip;
+                       mgw_rtp_ip := g_pars.mgcp_pars.mgw_conn_ran.mgw_rtp_ip;
                }

                /* Verify SDP of MDCX */
-               var SDP_Message sdp := valueof(ts_SDP(mgw_rtp_ip, mgw_rtp_ip, 
hex2str(pars.mgcp_call_id), "42", pars.mgw_conn_ran.mgw_rtp_port,
-                       { int2str(pars.rtp_payload_type) }, { 
valueof(ts_SDP_rtpmap(pars.rtp_payload_type, pars.rtp_sdp_format)), 
valueof(ts_SDP_ptime(20)) } ));
-               var template MgcpResponse mgcp_rsp := 
ts_MDCX_ACK(mgcp_cmd.line.trans_id, pars.mgw_conn_ran.mgcp_connection_id, sdp);
+               var SDP_Message sdp := valueof(ts_SDP(mgw_rtp_ip, mgw_rtp_ip, 
hex2str(g_pars.mgcp_pars.mgcp_call_id), "42", 
g_pars.mgcp_pars.mgw_conn_ran.mgw_rtp_port,
+                       { int2str(g_pars.mgcp_pars.rtp_payload_type) }, { 
valueof(ts_SDP_rtpmap(g_pars.mgcp_pars.rtp_payload_type, 
g_pars.mgcp_pars.rtp_sdp_format)), valueof(ts_SDP_ptime(20)) } ));
+               var template MgcpResponse mgcp_rsp := 
ts_MDCX_ACK(mgcp_cmd.line.trans_id, 
g_pars.mgcp_pars.mgw_conn_ran.mgcp_connection_id, sdp);
                MGCP.send(valueof(mgcp_rsp));

                /* If IP address changed, we expect HNBGW to Modify the RAB 
through RAB-Ass-Req: */
                if (exp_rua_rab_reass) {
                        var template RAB_SetupOrModifyList rab_sml;
                        /* Expect RAB Assignment Request with IP/port from MDCX 
ACK via Iuh */
-                       rab_sml := ts_RAB_SML(t_RAB_id(23), 
f_ts_RAB_TLA(pars.mgw_conn_ran.mgw_rtp_ip_mdcx), 
t_RAB_binding_port(pars.mgw_conn_ran.mgw_rtp_port));
+                       rab_sml := ts_RAB_SML(t_RAB_id(23), 
f_ts_RAB_TLA(g_pars.mgcp_pars.mgw_conn_ran.mgw_rtp_ip_mdcx), 
t_RAB_binding_port(g_pars.mgcp_pars.mgw_conn_ran.mgw_rtp_port));
                        tx := valueof(ts_RANAP_RabAssReq(rab_sml));

                        f_rua_expect(tx);
                        /* Send back RAB Assignment Response via Iuh */
-                       rab_smdl := ts_RAB_SMdL(t_RAB_id(23), 
f_ts_RAB_TLA(pars.hnb_rtp_ip), t_RAB_binding_port(pars.hnb_rtp_port));
+                       rab_smdl := ts_RAB_SMdL(t_RAB_id(23), 
f_ts_RAB_TLA(g_pars.mgcp_pars.hnb_rtp_ip), 
t_RAB_binding_port(g_pars.mgcp_pars.hnb_rtp_port));
                        tx := valueof(ts_RANAP_RabAssResp(rab_smdl));
                        RUA.send(tx);
                        /* This shouldn't trigger any MGCP, since nothing 
changed on the HNB IP side. Continue below. */
                }
                }
        /* Handle CRCX for second leg of endpoint, answer with IP/port */
-       [] MGCP.receive(tr_CRCX(pars.mgcp_ep, tr_SDP(pars.cn_rtp_ip, 
pars.cn_rtp_port))) -> value mgcp_cmd {
+       [] MGCP.receive(tr_CRCX(g_pars.mgcp_pars.mgcp_ep, 
tr_SDP(g_pars.mgcp_pars.cn_rtp_ip, g_pars.mgcp_pars.cn_rtp_port))) -> value 
mgcp_cmd {
                log("CRCX2", mgcp_cmd);
                /* Verify SDP of CRCX */
-               var template MgcpResponse mgcp_rsp := f_handle_crcx(pars, 
mgcp_cmd);
+               var template MgcpResponse mgcp_rsp := 
f_handle_crcx(g_pars.mgcp_pars, mgcp_cmd);
                MGCP.send(valueof(mgcp_rsp));
        }
        }

        /* Expect RAB Assignment Response with IP/port from second CRCX ACK */
-       rab_smdl := ts_RAB_SMdL(t_RAB_id(23), 
f_ts_RAB_TLA(pars.mgw_conn_cn.mgw_rtp_ip), 
t_RAB_binding_port(pars.mgw_conn_cn.mgw_rtp_port));
+       rab_smdl := ts_RAB_SMdL(t_RAB_id(23), 
f_ts_RAB_TLA(g_pars.mgcp_pars.mgw_conn_cn.mgw_rtp_ip), 
t_RAB_binding_port(g_pars.mgcp_pars.mgw_conn_cn.mgw_rtp_port));
        tx := valueof(ts_RANAP_RabAssResp(rab_smdl));

        f_bssap_expect(tx);
 }

-function f_create_rab_cs(inout MgcpParameters pars) runs on ConnHdlr {
-       f_rab_ass_req_cs(pars);
-       f_rab_ass_resp_cs(pars);
+function f_create_rab_cs() runs on ConnHdlr {
+       f_rab_ass_req_cs();
+       f_rab_ass_resp_cs();
 }

 altstep as_mgcp_dlcx() runs on ConnHdlr {
diff --git a/hnbgw/HNBGW_Tests.ttcn b/hnbgw/HNBGW_Tests.ttcn
index 6c16cec..3d0907a 100644
--- a/hnbgw/HNBGW_Tests.ttcn
+++ b/hnbgw/HNBGW_Tests.ttcn
@@ -994,7 +994,7 @@
        };
        f_statsd_expect(expect);

-       f_create_rab_cs(g_pars.mgcp_pars);
+       f_create_rab_cs();

        expect := {
                {name := hnb0_ctr_prefix & "ranap.cs.rab_act.req", mtype := 
"c", min := 1, max := 1},
@@ -1052,7 +1052,7 @@
        };
        f_statsd_expect(expect);

-       f_rab_ass_req_cs(g_pars.mgcp_pars);
+       f_rab_ass_req_cs();

        /* Send RAB failed list in response */
        tx := valueof(ts_RANAP_RabAssResp(rab_fl := ts_RAB_FL(t_RAB_id(23), 
g_pars.rab_rel_cause)));
@@ -1100,7 +1100,7 @@
        tx := f_build_initial_ue(g_pars);
        f_iuh2iu_connect(tx);

-       f_create_rab_cs(g_pars.mgcp_pars);
+       f_create_rab_cs();

        var charstring ctr_name;
        if (g_pars.rab_rel_cause == valueof(ts_RanapCause_nas_normal)) {
@@ -1340,7 +1340,7 @@
        tx := f_build_initial_ue(g_pars);
        f_iuh2iu_connect(tx);

-       f_create_rab_cs(g_pars.mgcp_pars);
+       f_create_rab_cs();

        RUA.send(ts_RANAP_IuReleaseRequest(ts_RanapCause_radio_rab_preempted));
        
BSSAP.receive(tr_RANAP_IuReleaseRequest(ts_RanapCause_radio_rab_preempted));
@@ -2391,7 +2391,7 @@
        tx := f_build_initial_ue(g_pars);
        f_iuh2iu_connect(tx);

-       f_create_rab_cs(g_pars.mgcp_pars);
+       f_create_rab_cs();

        /* Now send a second RAB Assignment with different subflows and 
omitting transportLayerInformation. (Assuming
         * the first RAB Assignment's transportLayerInformation remains in use 
unchanged.) */

--
To view, visit https://gerrit.osmocom.org/c/osmo-ttcn3-hacks/+/38588?usp=email
To unsubscribe, or for help writing mail filters, visit 
https://gerrit.osmocom.org/settings?usp=email

Gerrit-MessageType: merged
Gerrit-Project: osmo-ttcn3-hacks
Gerrit-Branch: master
Gerrit-Change-Id: I1f699e197e29f912ad06378f10563063aa291af3
Gerrit-Change-Number: 38588
Gerrit-PatchSet: 2
Gerrit-Owner: pespin <[email protected]>
Gerrit-Reviewer: Jenkins Builder
Gerrit-Reviewer: osmith <[email protected]>
Gerrit-Reviewer: pespin <[email protected]>

Reply via email to