pespin has uploaded this change for review. ( 
https://gerrit.osmocom.org/c/osmo-ttcn3-hacks/+/40328?usp=email )


Change subject: stp: ipa: Specify ASP names to use per test
......................................................................

stp: ipa: Specify ASP names to use per test

Similar to what was done for M3UA ASPs in previous commit.

Change-Id: Ifce2a3964d4caf0850691515e516cee93dbe8d44
---
M stp/STP_Tests_IPA.cfg
M stp/STP_Tests_IPA.ttcn
M stp/STP_Tests_IPA_M3UA.cfg
M stp/STP_Tests_IPA_M3UA.ttcn
M stp/osmo-stp-ipa.confmerge
5 files changed, 242 insertions(+), 95 deletions(-)



  git pull ssh://gerrit.osmocom.org:29418/osmo-ttcn3-hacks 
refs/changes/28/40328/1

diff --git a/stp/STP_Tests_IPA.cfg b/stp/STP_Tests_IPA.cfg
index d1ab417..5399093 100644
--- a/stp/STP_Tests_IPA.cfg
+++ b/stp/STP_Tests_IPA.cfg
@@ -11,16 +11,57 @@
 [TESTPORT_PARAMETERS]
 
 [MODULE_PARAMETERS]
-STP_Tests_IPA.mp_ipa_as_names := {
-       "ipa-as-loadshare-sender",
-       "ipa-as-loadshare-sender",
-       "ipa-as-loadshare-receiver",
-       "ipa-as-loadshare-receiver",
-       "ipa-as-dynamic-asp",
-       "ipa-as-override-sender",
-       "ipa-as-override-receiver",
-       "ipa-as-override-receiver"
-};
+STP_Tests_IPA.mp_ipa_configs := {
+       {
+               asp_name := "ipa-asp-loadshare-sender0",
+               as_name := "ipa-as-loadshare-sender",
+               is_server := false,
+               remote_port := 5000,
+               local_port := 20000
+       },
+       {
+               asp_name := "ipa-asp-loadshare-sender1",
+               as_name := "ipa-as-loadshare-sender",
+               is_server := false,
+               remote_port := 5000,
+               local_port := 20001
+       },
+       {
+               asp_name := "ipa-asp-loadshare-receiver0",
+               as_name := "ipa-as-loadshare-receiver",
+               is_server := false,
+               remote_port := 5000,
+               local_port := 20002
+       },
+       {
+               asp_name := "ipa-asp-loadshare-receiver1",
+               as_name := "ipa-as-loadshare-receiver",
+               is_server := false,
+               remote_port := 5000,
+               local_port := 20003
+       },
+       {
+               asp_name := "ipa-asp-override-sender",
+               as_name := "ipa-as-override-sender",
+               is_server := false,
+               remote_port := 5000,
+               local_port := 20005
+       },
+       {
+               asp_name := "ipa-asp-override-receiver0",
+               as_name := "ipa-as-override-receiver",
+               is_server := false,
+               remote_port := 5000,
+               local_port := 20006
+       },
+       {
+               asp_name := "ipa-asp-override-receiver1",
+               as_name := "ipa-as-override-receiver",
+               is_server := false,
+               remote_port := 5000,
+               local_port := 20007
+       }
+}

 [MAIN_CONTROLLER]

diff --git a/stp/STP_Tests_IPA.ttcn b/stp/STP_Tests_IPA.ttcn
index 5fb8423..537cac4 100644
--- a/stp/STP_Tests_IPA.ttcn
+++ b/stp/STP_Tests_IPA.ttcn
@@ -42,10 +42,25 @@
        charstring mp_stp_ipa_ip := "127.0.0.1";
        charstring mp_local_ipa_ip := "127.0.0.1";
        integer mp_stp_ipa_port := 5000;
-       integer mp_local_ipa_port := 20000;
-       AspNameArray mp_ipa_as_names := {};
+       //integer mp_local_ipa_port := 20000;
+       /* local ASPs. Set in .cfg file: */
+       IpaConfigs mp_ipa_configs := {}
 }

+type record IpaConfig {
+       /* Name of the ASP in the STP, (eg. to access it over VTY) */
+       charstring asp_name,
+       /* Name of the AS in the STP, (eg. to access it over VTY) */
+       charstring as_name,
+       /* Whether local side is a TCP/SCTP server */
+       boolean is_server,
+       /* STP-side SCTP (or TCP) port for M3UA */
+       integer remote_port,
+       /* local M3UA base port on TTCN3 side */
+       integer local_port
+};
+type record of IpaConfig IpaConfigs;
+
 type component IPA_CT extends Test_CT {
        /* for IPA we use the IPA_Emulation and not directly IPA_CodecPort to 
avoid
         * having to re-invent IPA CCM handling here */
@@ -53,6 +68,43 @@
        port IPA_SP_PT IPA_CTRL[MAX_NR_IPA];
        var IPA_Emulation_CT vc_IPA[MAX_NR_IPA];
        var IPA_CCM_Parameters g_ccm_pars[MAX_NR_IPA];
+       var IpaConfigs g_ipa_configs;
+}
+
+friend function ipa_build_configs(template (omit) Misc_Helpers.ro_charstring 
asps := omit)
+return IpaConfigs
+{
+       if (not isvalue(asps)) {
+               return mp_ipa_configs;
+       }
+
+       var IpaConfigs ipa_configs := {};
+       for (var integer i := 0; i < lengthof(asps); i := i + 1) {
+               var boolean found := false;
+               for (var integer j := 0; j < lengthof(mp_ipa_configs); j := j + 
1) {
+                       if (mp_ipa_configs[j].asp_name == valueof(asps[i])) {
+                               found := true;
+                               ipa_configs := ipa_configs & 
{mp_ipa_configs[j]};
+                               break;
+                       }
+               }
+               if (not found) {
+                       Misc_Helpers.f_shutdown(__BFILE__, __LINE__, fail,
+                                               log2str("Could not find ASP ", 
asps[i], ", check your configuration"));
+               }
+       }
+       return ipa_configs;
+}
+
+private function f_vty_cs7_listen_ipa_cmd(charstring cmd, integer ipa_port := 
5000) runs on IPA_CT
+{
+       f_vty_config2(VTY, {"cs7 instance 0", "listen ipa " & 
int2str(ipa_port)}, cmd);
+}
+
+friend function f_vty_cs7_ipa_as_cmd(charstring as_name, charstring cmd) runs 
on IPA_CT
+{
+       f_vty_config2(VTY, {"cs7 instance 0", "as " & as_name & " ipa"}, cmd);
+
 }

 friend function f_IPA_send(integer idx, octetstring data) runs on IPA_CT {
@@ -89,30 +141,33 @@
        f_IPA_exp(idx_rx, data);
 }

-friend function f_init_ipa() runs on IPA_CT {
+friend function f_init_ipa(template (omit) IpaConfigs ipa_configs := omit) 
runs on IPA_CT {
        var integer i;

        f_init_common();

-       for (i := 0; i < lengthof(mp_ipa_as_names); i:=i+1) {
+       if (not istemplatekind(ipa_configs, "omit")) {
+               g_ipa_configs := valueof(ipa_configs);
+       } else {
+               g_ipa_configs := mp_ipa_configs;
+       }
+
+       for (i := 0; i < lengthof(g_ipa_configs); i:=i+1) {
                vc_IPA[i] := IPA_Emulation_CT.create("IPA" & int2str(i));
                map(vc_IPA[i]:IPA_PORT, system:IPA_CODEC_PT);
                connect(self:IPA[i], vc_IPA[i]:MTP3_SP_PORT);
                connect(self:IPA_CTRL[i], vc_IPA[i]:IPA_SP_PORT);
                g_ccm_pars[i] := c_IPA_default_ccm_pars;
-               g_ccm_pars[i].name := mp_ipa_as_names[i];
+               g_ccm_pars[i].name := g_ipa_configs[i].as_name;
        }
 }

-friend function f_connect_ipa(integer idx, boolean use_unknown_asp_port := 
false, boolean exp_act := true) runs on IPA_CT {
-       var integer port_offset := 0;
-       if (use_unknown_asp_port) {
-               /* Add 100 to the port since we know that port is not 
configured in any
-                 ASP only up to MAX_NR_IPA are configured. */
-               port_offset := 100;
-       }
-       vc_IPA[idx].start(IPA_Emulation.main_client(mp_stp_ipa_ip, 
mp_stp_ipa_port, mp_local_ipa_ip,
-                       mp_local_ipa_port + idx + port_offset, 
g_ccm_pars[idx]));
+friend function f_connect_ipa(integer idx, boolean exp_act := true) runs on 
IPA_CT {
+       vc_IPA[idx].start(IPA_Emulation.main_client(mp_stp_ipa_ip,
+                                                   
g_ipa_configs[idx].remote_port,
+                                                   mp_local_ipa_ip,
+                                                   
g_ipa_configs[idx].local_port,
+                                                   g_ccm_pars[idx]));
        IPA_CTRL[idx].receive(tr_ASP_IPA_EV(ASP_IPA_EVENT_UP));
        alt {
        [exp_act] IPA_CTRL[idx].receive(tr_ASP_IPA_EV(ASP_IPA_EVENT_ID_ACK));
@@ -124,58 +179,87 @@

 /* "accept-asp-connections pre-configured" and client from unknown source */
 testcase TC_unknown_client_nodynamic() runs on IPA_CT {
+       var Misc_Helpers.ro_charstring asps := { "ipa-asp-loadshare-sender0" };
+       var IpaConfigs ipa_configs := ipa_build_configs(asps);
+       /* Build an ASP unknown (port) from osmo-stp: */
+       ipa_configs := {
+               { asp_name := "ipa-asp-unknown",
+                 as_name := ipa_configs[0].as_name,
+                 is_server := false,
+                 remote_port := ipa_configs[0].remote_port,
+                 local_port := 3000 }
+       };
        f_init_common();
-       f_vty_config2(VTY, {"cs7 instance 0", "listen ipa 5000"},
-                     "accept-asp-connections pre-configured");
-       f_init_ipa();
-       f_connect_ipa(0, true, false);
+       f_vty_cs7_listen_ipa_cmd("accept-asp-connections pre-configured", 
ipa_configs[0].remote_port);
+       f_init_ipa(ipa_configs := ipa_configs);
+       f_connect_ipa(0, false);

        /* switch back to default */
-       f_vty_config2(VTY, {"cs7 instance 0", "listen ipa 5000"},
-                     "accept-asp-connections dynamic-permitted");
+       f_vty_cs7_listen_ipa_cmd("accept-asp-connections dynamic-permitted", 
ipa_configs[0].remote_port);
        setverdict(pass);
 }

 /* "accept-asp-connections pre-configured" and client from known source */
 testcase TC_known_client_nodynamic() runs on IPA_CT {
+       var Misc_Helpers.ro_charstring asps := { "ipa-asp-loadshare-sender0" };
+       var IpaConfigs ipa_configs := ipa_build_configs(asps);
+
        f_init_common();
-       f_vty_config2(VTY, {"cs7 instance 0", "listen ipa 5000"},
-                     "accept-asp-connections pre-configured");
-       f_init_ipa();
-       f_connect_ipa(0, false);
+       f_vty_cs7_listen_ipa_cmd("accept-asp-connections pre-configured", 
ipa_configs[0].remote_port);
+       f_init_ipa(ipa_configs := ipa_configs);
+       f_connect_ipa(0);

        /* switch back to default */
-       f_vty_config2(VTY, {"cs7 instance 0", "listen ipa 5000"},
-                     "accept-asp-connections dynamic-permitted");
+       f_vty_cs7_listen_ipa_cmd("accept-asp-connections dynamic-permitted", 
ipa_configs[0].remote_port);
        setverdict(pass);
 }


 /* "accept-asp-connections dynamic-permitted" and client from unknown source */
 testcase TC_unknown_client_dynamic() runs on IPA_CT {
+       var Misc_Helpers.ro_charstring asps := { "ipa-asp-loadshare-sender0" };
+       var IpaConfigs ipa_configs := ipa_build_configs(asps);
+       /* Build an ASP unknown (port) from osmo-stp: */
+       ipa_configs := {
+               { asp_name := "ipa-asp-unknown2",
+                 as_name := ipa_configs[0].as_name,
+                 is_server := false,
+                 remote_port := ipa_configs[0].remote_port,
+                 local_port := 3001 }
+       };
+
        f_init_common();
-       f_init_ipa();
-       f_connect_ipa(0, true);
+       f_init_ipa(ipa_configs := ipa_configs);
+       f_connect_ipa(0);
        setverdict(pass);
 }

 private function f_tc_tmt_override(boolean unknwon_dynamic_asp)
 runs on IPA_CT {
-       f_init_ipa();
+       var Misc_Helpers.ro_charstring asps := { "ipa-asp-override-sender",
+                                                "ipa-asp-override-receiver0",
+                                                "ipa-asp-override-receiver1" };
+       var IpaConfigs ipa_configs := ipa_build_configs(asps);
+       if (unknwon_dynamic_asp) {
+               ipa_configs[0].local_port := 3002;
+               ipa_configs[1].local_port := 3003;
+               ipa_configs[2].local_port := 3004;
+       }
+       f_init_ipa(ipa_configs := ipa_configs);

        /* bring up the 'sender' side (single ASP in AS) */
-       f_connect_ipa(5, unknwon_dynamic_asp);
+       f_connect_ipa(0);
        /* activate the first 'receiver' side ASP */
-       f_connect_ipa(6, unknwon_dynamic_asp);
+       f_connect_ipa(1);

        /* verify traffic is routed from sender to [sole] receiver */
-       f_test_traffic(5, 6);
+       f_test_traffic(0, 1);

        /* activate the second 'receiver' side ASP */
-       f_connect_ipa(7, unknwon_dynamic_asp);
+       f_connect_ipa(2);

        /* verify traffic is routed from sender to new receiver */
-       f_test_traffic(5, 7);
+       f_test_traffic(0, 2);
        setverdict(pass);
 }

@@ -199,23 +283,32 @@
 private function f_tc_tmt_loadshare_roundrobin(boolean unknwon_dynamic_asp)
 runs on IPA_CT {
        var integer i;
+       var Misc_Helpers.ro_charstring asps := { "ipa-asp-loadshare-sender0",
+                                                "ipa-asp-loadshare-receiver0",
+                                                "ipa-asp-loadshare-receiver1" 
};
+       var IpaConfigs ipa_configs := ipa_build_configs(asps);
+       if (unknwon_dynamic_asp) {
+               ipa_configs[0].local_port := 3005;
+               ipa_configs[1].local_port := 3006;
+               ipa_configs[2].local_port := 3007;
+       }

-       f_init_ipa();
+       f_init_ipa(ipa_configs := ipa_configs);

-       f_vty_config2(VTY, {"cs7 instance 0", "as " & mp_ipa_as_names[2] & " 
ipa"}, "traffic-mode roundrobin");
+       f_vty_cs7_ipa_as_cmd(ipa_configs[1].as_name, "traffic-mode roundrobin");

        /* bring up the 'sender' side (single ASP in AS) */
-       f_connect_ipa(0, unknwon_dynamic_asp);
+       f_connect_ipa(0);
        /* activate the first 'receiver' side ASP */
-       f_connect_ipa(2, unknwon_dynamic_asp);
+       f_connect_ipa(1);

        /* verify traffic is routed from sender to [sole] receiver */
        for (i := 0; i < 10; i := i+1) {
-               f_test_traffic(0, 2);
+               f_test_traffic(0, 1);
        }

        /* activate the second 'receiver' side ASP */
-       f_connect_ipa(3, unknwon_dynamic_asp);
+       f_connect_ipa(2);

        /* verify traffic is routed from sender to new receiver */
        const integer iter_per_asp := 5;
@@ -224,8 +317,8 @@
                var octetstring data := f_rnd_octstring(f_rnd_ipa_len());
                f_IPA_send(0, data);
                alt {
-               [] as_count_rx(2, data, num_rx[0]);
-               [] as_count_rx(3, data, num_rx[1]);
+               [] as_count_rx(1, data, num_rx[0]);
+               [] as_count_rx(2, data, num_rx[1]);
                }
        }
        /* FIXME: check for extraneous messages? */
@@ -237,7 +330,7 @@
        }
        setverdict(pass);

-       f_vty_config2(VTY, {"cs7 instance 0", "as " & mp_ipa_as_names[2] & " 
ipa"}, "no traffic-mode");
+       f_vty_cs7_ipa_as_cmd(ipa_configs[1].as_name, "no traffic-mode");
 }

 /* test "traffic-mode load-share" behavior */
@@ -259,15 +352,25 @@
 runs on IPA_CT {
        var integer i;

-       f_init_ipa();
+       var Misc_Helpers.ro_charstring asps := { "ipa-asp-loadshare-sender0",
+                                                "ipa-asp-loadshare-sender1",
+                                                "ipa-asp-loadshare-receiver0",
+                                                "ipa-asp-loadshare-receiver1" 
};
+       var IpaConfigs ipa_configs := ipa_build_configs(asps);
+       if (unknwon_dynamic_asp) {
+               ipa_configs[0].local_port := 3010;
+               ipa_configs[1].local_port := 3011;
+       }

-       f_vty_config3(VTY, {"cs7 instance 0", "as " & mp_ipa_as_names[2] & " 
ipa"},
+       f_init_ipa(ipa_configs := ipa_configs);
+
+       f_vty_config3(VTY, {"cs7 instance 0", "as " & ipa_configs[2].as_name & 
" ipa"},
                           { "traffic-mode loadshare", "binding-table reset" });

        /* bring up the 'sender' side (single ASP in AS) */
-       f_connect_ipa(0, unknwon_dynamic_asp);
+       f_connect_ipa(0);
        /* activate the first 'receiver' side ASP */
-       f_connect_ipa(2, unknwon_dynamic_asp);
+       f_connect_ipa(2);

        /* verify traffic is routed from sender to [sole] receiver */
        for (i := 0; i < 10; i := i+1) {
@@ -275,11 +378,11 @@
        }

        /* activate the second 'receiver' side ASP */
-       f_connect_ipa(3, unknwon_dynamic_asp);
+       f_connect_ipa(3);

        /* Since we are using dynamic ASPs, they were unknown by STP until they 
got connected.
         * Hence, reset the binding-table so that load is now properly spread 
among them: */
-       f_vty_config2(VTY, {"cs7 instance 0", "as " & mp_ipa_as_names[2] & " 
ipa"}, "binding-table reset" );
+       f_vty_cs7_ipa_as_cmd(ipa_configs[2].as_name, "binding-table reset");

        /* verify traffic is routed from sender to new receiver */
        const integer iter_per_asp := 20;
@@ -313,7 +416,7 @@


        /* activate the second 'sender' side ASP */
-       f_connect_ipa(1, unknwon_dynamic_asp);
+       f_connect_ipa(1);


        num_rx_1 := 0;
@@ -345,7 +448,7 @@
        }
        setverdict(pass);

-       f_vty_config2(VTY, {"cs7 instance 0", "as " & mp_ipa_as_names[2] & " 
ipa"}, "no traffic-mode");
+       f_vty_cs7_ipa_as_cmd(ipa_configs[2].as_name, "no traffic-mode");
 }

 /* test "traffic-mode load-share" behavior */
diff --git a/stp/STP_Tests_IPA_M3UA.cfg b/stp/STP_Tests_IPA_M3UA.cfg
index 4ca349d..7849d3a 100644
--- a/stp/STP_Tests_IPA_M3UA.cfg
+++ b/stp/STP_Tests_IPA_M3UA.cfg
@@ -11,21 +11,27 @@
 [TESTPORT_PARAMETERS]

 [MODULE_PARAMETERS]
-STP_Tests_IPA.mp_ipa_as_names := {
-       "ipa-as-dynamic-asp"
+STP_Tests_IPA.mp_ipa_configs := {
+       {
+               asp_name := "ipa-asp-dynamic-unknown",
+               as_name := "ipa-as-dynamic-asp",
+               is_server := false,
+               remote_port := 5000,
+               local_port := 40000
+       }
 };

 STP_Tests_M3UA.mp_m3ua_configs := {
-               {
-                       asp_name := "asp-sender",
-                       is_server := false,
-                       use_tcp := false,
-                       remote_port := 2905,
-                       local_port := 9999,
-                       point_code := 23,
-                       routing_ctx := 1023
-               }
-       };
+       {
+               asp_name := "asp-sender",
+               is_server := false,
+               use_tcp := false,
+               remote_port := 2905,
+               local_port := 9999,
+               point_code := 23,
+               routing_ctx := 1023
+       }
+};

 [MAIN_CONTROLLER]
 
diff --git a/stp/STP_Tests_IPA_M3UA.ttcn b/stp/STP_Tests_IPA_M3UA.ttcn
index f62fc7c..5600f6e 100644
--- a/stp/STP_Tests_IPA_M3UA.ttcn
+++ b/stp/STP_Tests_IPA_M3UA.ttcn
@@ -63,8 +63,8 @@

 /* Test routing of SCCP between an M3UA and an IPA ASP */
 testcase TC_m3ua_to_ipa() runs on IPA_M3UA_CT {
-       var Misc_Helpers.ro_charstring asps := { "asp-sender" };
-       var M3uaConfigs m3ua_configs := m3ua_build_configs(asps);
+       var Misc_Helpers.ro_charstring m3ua_asps := { "asp-sender" };
+       var M3uaConfigs m3ua_configs := m3ua_build_configs(m3ua_asps);
        var OCT4 rctx_sender := int2oct(m3ua_configs[0].routing_ctx, 4);
        var OCT4 pc_sender := int2oct(m3ua_configs[0].point_code, 4);
        var OCT4 pc_receiver := int2oct(5, 4);
@@ -93,18 +93,19 @@

 /* test routing an SCCP message from IPA ASP to M3UA ASP */
 testcase TC_ipa_to_m3ua() runs on IPA_M3UA_CT {
-       var Misc_Helpers.ro_charstring asps := { "asp-sender" };
-       var M3uaConfigs m3ua_configs := m3ua_build_configs(asps);
+       var Misc_Helpers.ro_charstring ipa_asps := { "ipa-asp-dynamic-unknown" 
};
+       var IpaConfigs ipa_configs := ipa_build_configs(ipa_asps);
+       var Misc_Helpers.ro_charstring m3ua_asps := { "asp-sender" };
+       var M3uaConfigs m3ua_configs := m3ua_build_configs(m3ua_asps);
        var OCT4 pc_sender := int2oct(5, 4);
        var OCT4 rctx_receiver := int2oct(m3ua_configs[0].routing_ctx, 4);
        var OCT4 pc_receiver := int2oct(m3ua_configs[0].point_code, 4);

        f_init_common();
-       f_vty_config2(VTY, {"cs7 instance 0", "as ipa-as-dynamic-asp ipa"},
-                     "point-code override patch-sccp disabled");
+       f_vty_cs7_ipa_as_cmd(ipa_configs[0].as_name, "point-code override 
patch-sccp disabled");

        f_init_m3ua(m3ua_configs := m3ua_configs);
-       f_init_ipa();
+       f_init_ipa(ipa_configs := ipa_configs);

        f_connect_ipa(0);
        f_M3UA_asp_up_act(0, omit, rctx_receiver);
@@ -127,18 +128,19 @@

 /* test routing an SCCP message from IPA ASP to M3UA ASP using national 
network indicator */
 testcase TC_ipa_to_m3ua_ni() runs on IPA_M3UA_CT {
-       var Misc_Helpers.ro_charstring asps := { "asp-sender" };
-       var M3uaConfigs m3ua_configs := m3ua_build_configs(asps);
+       var Misc_Helpers.ro_charstring ipa_asps := { "ipa-asp-dynamic-unknown" 
};
+       var IpaConfigs ipa_configs := ipa_build_configs(ipa_asps);
+       var Misc_Helpers.ro_charstring m3ua_asps := { "asp-sender" };
+       var M3uaConfigs m3ua_configs := m3ua_build_configs(m3ua_asps);
        var OCT4 pc_sender := int2oct(5, 4);
        var OCT4 rctx_receiver := int2oct(m3ua_configs[0].routing_ctx, 4);
        var OCT4 pc_receiver := int2oct(m3ua_configs[0].point_code, 4);

        f_init_common();
-       f_vty_config2(VTY, {"cs7 instance 0", "as ipa-as-dynamic-asp ipa"},
-                     "point-code override patch-sccp disabled");
+       f_vty_cs7_ipa_as_cmd(ipa_configs[0].as_name, "point-code override 
patch-sccp disabled");

        f_init_m3ua(m3ua_configs := m3ua_configs);
-       f_init_ipa();
+       f_init_ipa(ipa_configs := ipa_configs);

        f_connect_ipa(0);
        f_M3UA_asp_up_act(0, omit, rctx_receiver);
@@ -164,15 +166,16 @@

 /* test routing an SCCP message from IPA ASP to M3UA ASP while patching PC 
into SCCP addresses */
 testcase TC_ipa_to_m3ua_patch_sccp() runs on IPA_M3UA_CT {
-       var Misc_Helpers.ro_charstring asps := { "asp-sender" };
-       var M3uaConfigs m3ua_configs := m3ua_build_configs(asps);
+       var Misc_Helpers.ro_charstring ipa_asps := { "ipa-asp-dynamic-unknown" 
};
+       var IpaConfigs ipa_configs := ipa_build_configs(ipa_asps);
+       var Misc_Helpers.ro_charstring m3ua_asps := { "asp-sender" };
+       var M3uaConfigs m3ua_configs := m3ua_build_configs(m3ua_asps);
        var OCT4 pc_sender := int2oct(5, 4);
        var OCT4 rctx_receiver := int2oct(m3ua_configs[0].routing_ctx, 4);
        var OCT4 pc_receiver := int2oct(m3ua_configs[0].point_code, 4);

        f_init_common();
-       f_vty_config2(VTY, {"cs7 instance 0", "as ipa-as-dynamic-asp ipa"},
-                       "point-code override patch-sccp both");
+       f_vty_cs7_ipa_as_cmd(ipa_configs[0].as_name, "point-code override 
patch-sccp both");

        f_init_m3ua(m3ua_configs := m3ua_configs);
        f_init_ipa();
diff --git a/stp/osmo-stp-ipa.confmerge b/stp/osmo-stp-ipa.confmerge
index 712e2a9..500f5ac 100644
--- a/stp/osmo-stp-ipa.confmerge
+++ b/stp/osmo-stp-ipa.confmerge
@@ -29,7 +29,6 @@
   point-code override dpc 32
   asp ipa-asp-loadshare-receiver0
   asp ipa-asp-loadshare-receiver1
- ! Port 2004 is reserved for use with ipa-as-dynamic-asp in TTCN-3.
  ! OVERRIDE:
  asp ipa-asp-override-sender 20005 5000 ipa
   local-ip 127.0.0.1
@@ -54,17 +53,12 @@
   point-code override dpc 34
   asp ipa-asp-override-receiver0
   asp ipa-asp-override-receiver1
- ! DYNAMIC AS:
- as ipa-as-dynamic-asp ipa
-  routing-key 0 5
-  point-code override dpc 23
  !
  ! ROUTING TABLE:
  !
  route-table system
   update route 31 16777215 linkset ipa-as-loadshare-receiver
   update route 33 16777215 linkset ipa-as-override-receiver
-  update route 5  16777215 linkset ipa-as-dynamic-asp
  !
  !SERVERS:
  !

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

Gerrit-MessageType: newchange
Gerrit-Project: osmo-ttcn3-hacks
Gerrit-Branch: master
Gerrit-Change-Id: Ifce2a3964d4caf0850691515e516cee93dbe8d44
Gerrit-Change-Number: 40328
Gerrit-PatchSet: 1
Gerrit-Owner: pespin <[email protected]>

Reply via email to