<p>Harald Welte <strong>merged</strong> this change.</p><p><a href="https://gerrit.osmocom.org/9403">View Change</a></p><div style="white-space:pre-wrap">Approvals:
  Jenkins Builder: Verified
  Harald Welte: Looks good to me, approved

</div><pre style="font-family: monospace,monospace; white-space: pre-wrap;">*_Emulation.ttcn: Specify destination when replying on procedure ports<br><br>procedure ports (like message ports) require us to specify the<br>destination of a message ("reply") in case it is connected 1:N and not<br>just 1:1.  This didn't show up as a problem so far, as we typically only<br>had one component talking to those procedure ports at any given point<br>in time.<br><br>Change-Id: I696ec67080815348bb95e43ecbbf262e533e39a3<br>---<br>M library/BSSGP_Emulation.ttcn<br>M library/BSSMAP_Emulation.ttcn<br>M library/GSUP_Emulation.ttcn<br>M library/GTP_Emulation.ttcn<br>M library/MGCP_Emulation.ttcn<br>M library/MNCC_Emulation.ttcn<br>M library/RSL_Emulation.ttcn<br>M library/SMPP_Emulation.ttcn<br>8 files changed, 20 insertions(+), 20 deletions(-)<br><br></pre><pre style="font-family: monospace,monospace; white-space: pre-wrap;"><span>diff --git a/library/BSSGP_Emulation.ttcn b/library/BSSGP_Emulation.ttcn</span><br><span>index 321c344..38666b8 100644</span><br><span>--- a/library/BSSGP_Emulation.ttcn</span><br><span>+++ b/library/BSSGP_Emulation.ttcn</span><br><span>@@ -441,15 +441,15 @@</span><br><span> </span><br><span>        [] BSSGP_PROC.getcall(BSSGP_register_client:{?,?,?}) -> param(imsi, tlli, cell_id) sender vc_conn {</span><br><span>               f_tbl_client_add(imsi, tlli, cell_id, vc_conn);</span><br><span style="color: hsl(0, 100%, 40%);">-         BSSGP_PROC.reply(BSSGP_register_client:{imsi, tlli, cell_id});</span><br><span style="color: hsl(120, 100%, 40%);">+                BSSGP_PROC.reply(BSSGP_register_client:{imsi, tlli, cell_id}) to vc_conn;</span><br><span>            }</span><br><span>    [] BSSGP_PROC.getcall(BSSGP_unregister_client:{?}) -> param(imsi) sender vc_conn {</span><br><span>                f_tbl_client_del(imsi, vc_conn);</span><br><span style="color: hsl(0, 100%, 40%);">-                BSSGP_PROC.reply(BSSGP_unregister_client:{imsi});</span><br><span style="color: hsl(120, 100%, 40%);">+             BSSGP_PROC.reply(BSSGP_unregister_client:{imsi}) to vc_conn;</span><br><span>                 }</span><br><span>    [] BSSGP_PROC.getcall(BSSGP_llgmm_assign:{?,?}) -> param(tlli_old, tlli) sender vc_conn {</span><br><span>                 f_tbl_client_llgmm_assign(tlli_old, tlli, vc_conn);</span><br><span style="color: hsl(0, 100%, 40%);">-             BSSGP_PROC.reply(BSSGP_llgmm_assign:{tlli_old, tlli});</span><br><span style="color: hsl(120, 100%, 40%);">+                BSSGP_PROC.reply(BSSGP_llgmm_assign:{tlli_old, tlli}) to vc_conn;</span><br><span>            }</span><br><span> </span><br><span> }</span><br><span>diff --git a/library/BSSMAP_Emulation.ttcn b/library/BSSMAP_Emulation.ttcn</span><br><span>index 95b39f3..e65c550 100644</span><br><span>--- a/library/BSSMAP_Emulation.ttcn</span><br><span>+++ b/library/BSSMAP_Emulation.ttcn</span><br><span>@@ -713,12 +713,12 @@</span><br><span> </span><br><span>              [] PROC.getcall(BSSMAPEM_register:{?,?}) -> param(l3_info, vc_hdlr) {</span><br><span>                     f_create_expect(l3_info, vc_hdlr);</span><br><span style="color: hsl(0, 100%, 40%);">-                      PROC.reply(BSSMAPEM_register:{l3_info, vc_hdlr});</span><br><span style="color: hsl(120, 100%, 40%);">+                     PROC.reply(BSSMAPEM_register:{l3_info, vc_hdlr}) to vc_hdlr;</span><br><span>                         }</span><br><span> </span><br><span>                [] PROC.getcall(BSSMAPEM_register_imsi:{?,?,?}) -> param(imsi, tmsi, vc_hdlr) {</span><br><span>                   f_create_imsi(imsi, tmsi, vc_hdlr);</span><br><span style="color: hsl(0, 100%, 40%);">-                     PROC.reply(BSSMAPEM_register_imsi:{imsi, tmsi, vc_hdlr});</span><br><span style="color: hsl(120, 100%, 40%);">+                     PROC.reply(BSSMAPEM_register_imsi:{imsi, tmsi, vc_hdlr}) to vc_hdlr;</span><br><span>                         }</span><br><span> </span><br><span> </span><br><span>diff --git a/library/GSUP_Emulation.ttcn b/library/GSUP_Emulation.ttcn</span><br><span>index 3990b73..7cf1656 100644</span><br><span>--- a/library/GSUP_Emulation.ttcn</span><br><span>+++ b/library/GSUP_Emulation.ttcn</span><br><span>@@ -222,7 +222,7 @@</span><br><span>             /* Client -> us: procedure call to register expect */</span><br><span>             [] GSUP_PROC.getcall(GSUPEM_register:{?,?}) -> param(imsi, vc_hdlr) {</span><br><span>                     f_create_expect(imsi, vc_hdlr);</span><br><span style="color: hsl(0, 100%, 40%);">-                 GSUP_PROC.reply(GSUPEM_register:{imsi, vc_hdlr});</span><br><span style="color: hsl(120, 100%, 40%);">+                     GSUP_PROC.reply(GSUPEM_register:{imsi, vc_hdlr}) to vc_hdlr;</span><br><span>                         }</span><br><span> </span><br><span>                }</span><br><span>diff --git a/library/GTP_Emulation.ttcn b/library/GTP_Emulation.ttcn</span><br><span>index e5e5e36..534fdef 100644</span><br><span>--- a/library/GTP_Emulation.ttcn</span><br><span>+++ b/library/GTP_Emulation.ttcn</span><br><span>@@ -206,12 +206,12 @@</span><br><span> </span><br><span>   [] CLIENT_PROC.getcall(GTPEM_register_imsi:{?}) -> param(imsi) sender vc_conn {</span><br><span>           f_imsi_tbl_add(imsi, vc_conn);</span><br><span style="color: hsl(0, 100%, 40%);">-          CLIENT_PROC.reply(GTPEM_register_imsi:{imsi});</span><br><span style="color: hsl(120, 100%, 40%);">+                CLIENT_PROC.reply(GTPEM_register_imsi:{imsi}) to vc_conn;</span><br><span>            }</span><br><span> </span><br><span>        [] CLIENT_PROC.getcall(GTPEM_register_teid:{?}) -> param(teid) sender vc_conn {</span><br><span>           f_tid_tbl_add(teid, vc_conn);</span><br><span style="color: hsl(0, 100%, 40%);">-           CLIENT_PROC.reply(GTPEM_register_teid:{teid});</span><br><span style="color: hsl(120, 100%, 40%);">+                CLIENT_PROC.reply(GTPEM_register_teid:{teid}) to vc_conn;</span><br><span>            }</span><br><span> </span><br><span>        }</span><br><span>diff --git a/library/MGCP_Emulation.ttcn b/library/MGCP_Emulation.ttcn</span><br><span>index e2f79b3..b02dc06 100644</span><br><span>--- a/library/MGCP_Emulation.ttcn</span><br><span>+++ b/library/MGCP_Emulation.ttcn</span><br><span>@@ -307,11 +307,11 @@</span><br><span>                   }</span><br><span>            [] MGCP_PROC.getcall(MGCPEM_register:{?,?}) -> param(crit, vc_conn) {</span><br><span>                     f_create_expect(crit, vc_conn);</span><br><span style="color: hsl(0, 100%, 40%);">-                 MGCP_PROC.reply(MGCPEM_register:{crit, vc_conn});</span><br><span style="color: hsl(120, 100%, 40%);">+                     MGCP_PROC.reply(MGCPEM_register:{crit, vc_conn}) to vc_conn;</span><br><span>                         }</span><br><span>            [] MGCP_PROC.getcall(MGCPEM_delete_ep:{?,?}) -> param(ep, vc_conn) {</span><br><span>                      f_ep_table_del(vc_conn, ep);</span><br><span style="color: hsl(0, 100%, 40%);">-                    MGCP_PROC.reply(MGCPEM_delete_ep:{ep, vc_conn});</span><br><span style="color: hsl(120, 100%, 40%);">+                      MGCP_PROC.reply(MGCPEM_delete_ep:{ep, vc_conn}) to vc_conn;</span><br><span>                  }</span><br><span>            }</span><br><span> </span><br><span>diff --git a/library/MNCC_Emulation.ttcn b/library/MNCC_Emulation.ttcn</span><br><span>index 59e3e77..d9b7c79 100644</span><br><span>--- a/library/MNCC_Emulation.ttcn</span><br><span>+++ b/library/MNCC_Emulation.ttcn</span><br><span>@@ -351,7 +351,7 @@</span><br><span>                 /* Client -> us: procedure call to register expect */</span><br><span>             [] MNCC_PROC.getcall(MNCCEM_register:{?,?}) -> param(dest_nr, vc_hdlr) {</span><br><span>                  f_create_expect(dest_nr, vc_hdlr);</span><br><span style="color: hsl(0, 100%, 40%);">-                      MNCC_PROC.reply(MNCCEM_register:{dest_nr, vc_hdlr});</span><br><span style="color: hsl(120, 100%, 40%);">+                  MNCC_PROC.reply(MNCCEM_register:{dest_nr, vc_hdlr}) to vc_hdlr;</span><br><span>                      }</span><br><span> </span><br><span>                }</span><br><span>diff --git a/library/RSL_Emulation.ttcn b/library/RSL_Emulation.ttcn</span><br><span>index 3634373..119a9be 100644</span><br><span>--- a/library/RSL_Emulation.ttcn</span><br><span>+++ b/library/RSL_Emulation.ttcn</span><br><span>@@ -451,30 +451,30 @@</span><br><span>               /* explicit registration, e.g. in (non-immediate) assignment case */</span><br><span>                 [] RSL_PROC.getcall(RSLEM_register:{?,?,?}) -> param(trx_nr, chan_nr, vc_conn) {</span><br><span>                  f_cid_create_cnr(trx_nr, chan_nr, vc_conn);</span><br><span style="color: hsl(0, 100%, 40%);">-                     RSL_PROC.reply(RSLEM_register:{trx_nr, chan_nr, vc_conn});</span><br><span style="color: hsl(120, 100%, 40%);">+                    RSL_PROC.reply(RSLEM_register:{trx_nr, chan_nr, vc_conn}) to vc_conn;</span><br><span>                        }</span><br><span> </span><br><span>                [] RSL_PROC.getcall(RSLEM_unregister:{?,?,?}) -> param(trx_nr, chan_nr, vc_conn) {</span><br><span>                        cid := f_cid_by_chan_nr(trx_nr, chan_nr);</span><br><span>                    f_cid_clear(cid);</span><br><span style="color: hsl(0, 100%, 40%);">-                       RSL_PROC.reply(RSLEM_unregister:{trx_nr, chan_nr, vc_conn});</span><br><span style="color: hsl(120, 100%, 40%);">+                  RSL_PROC.reply(RSLEM_unregister:{trx_nr, chan_nr, vc_conn}) to vc_conn;</span><br><span>                      }</span><br><span> </span><br><span style="color: hsl(0, 100%, 40%);">-           [] RSL_PROC.getcall(RSLEM_suspend:{true}) {</span><br><span style="color: hsl(120, 100%, 40%);">+           [] RSL_PROC.getcall(RSLEM_suspend:{true}) -> sender vc_conn {</span><br><span>                     log("Suspending DChan");</span><br><span>                   dchan_suspended := true;</span><br><span style="color: hsl(0, 100%, 40%);">-                        RSL_PROC.reply(RSLEM_suspend:{true});</span><br><span style="color: hsl(120, 100%, 40%);">+                 RSL_PROC.reply(RSLEM_suspend:{true}) to vc_conn;</span><br><span>                     }</span><br><span> </span><br><span style="color: hsl(0, 100%, 40%);">-           [] RSL_PROC.getcall(RSLEM_suspend:{false}) {</span><br><span style="color: hsl(120, 100%, 40%);">+          [] RSL_PROC.getcall(RSLEM_suspend:{false}) -> sender vc_conn {</span><br><span>                    log("Resuming DChan");</span><br><span>                     dchan_suspended := false;</span><br><span style="color: hsl(0, 100%, 40%);">-                       RSL_PROC.reply(RSLEM_suspend:{false});</span><br><span style="color: hsl(120, 100%, 40%);">+                        RSL_PROC.reply(RSLEM_suspend:{false}) to vc_conn;</span><br><span>                    }</span><br><span> </span><br><span style="color: hsl(0, 100%, 40%);">-           [] RSL_PROC.getcall(RSLEM_get_last_act:{?,?,?}) -> param(trx_nr, chan_nr) {</span><br><span style="color: hsl(120, 100%, 40%);">+                [] RSL_PROC.getcall(RSLEM_get_last_act:{?,?,?}) -> param(trx_nr, chan_nr) sender vc_conn {</span><br><span>                        var RSL_Message last_chan_act := f_lookup_last_act(trx_nr, chan_nr);</span><br><span style="color: hsl(0, 100%, 40%);">-                    RSL_PROC.reply(RSLEM_get_last_act:{trx_nr, chan_nr, last_chan_act});</span><br><span style="color: hsl(120, 100%, 40%);">+                  RSL_PROC.reply(RSLEM_get_last_act:{trx_nr, chan_nr, last_chan_act}) to vc_conn;</span><br><span>                      }</span><br><span>            }</span><br><span>    }</span><br><span>diff --git a/library/SMPP_Emulation.ttcn b/library/SMPP_Emulation.ttcn</span><br><span>index c14340c..27876dc 100644</span><br><span>--- a/library/SMPP_Emulation.ttcn</span><br><span>+++ b/library/SMPP_Emulation.ttcn</span><br><span>@@ -314,7 +314,7 @@</span><br><span> </span><br><span>                 [] SMPP_PROC.getcall(SMPPEM_register:{?,?}) -> param(dest_addr, vc_conn) {</span><br><span>                        f_create_expect(dest_addr, vc_conn);</span><br><span style="color: hsl(0, 100%, 40%);">-                    SMPP_PROC.reply(SMPPEM_register:{dest_addr, vc_conn});</span><br><span style="color: hsl(120, 100%, 40%);">+                        SMPP_PROC.reply(SMPPEM_register:{dest_addr, vc_conn}) to vc_conn;</span><br><span>                    }</span><br><span>            }</span><br><span>    }</span><br><span></span><br></pre><p>To view, visit <a href="https://gerrit.osmocom.org/9403">change 9403</a>. To unsubscribe, or for help writing mail filters, visit <a href="https://gerrit.osmocom.org/settings">settings</a>.</p><div itemscope itemtype="http://schema.org/EmailMessage"><div itemscope itemprop="action" itemtype="http://schema.org/ViewAction"><link itemprop="url" href="https://gerrit.osmocom.org/9403"/><meta itemprop="name" content="View Change"/></div></div>

<div style="display:none"> Gerrit-Project: osmo-ttcn3-hacks </div>
<div style="display:none"> Gerrit-Branch: master </div>
<div style="display:none"> Gerrit-MessageType: merged </div>
<div style="display:none"> Gerrit-Change-Id: I696ec67080815348bb95e43ecbbf262e533e39a3 </div>
<div style="display:none"> Gerrit-Change-Number: 9403 </div>
<div style="display:none"> Gerrit-PatchSet: 1 </div>
<div style="display:none"> Gerrit-Owner: Harald Welte <laforge@gnumonks.org> </div>
<div style="display:none"> Gerrit-Reviewer: Harald Welte <laforge@gnumonks.org> </div>
<div style="display:none"> Gerrit-Reviewer: Jenkins Builder </div>