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

</div><pre style="font-family: monospace,monospace; white-space: pre-wrap;">bsc: handle RR Release messages<br><br>Receive RR Release messages if they happen during lchan release. Add RR Release<br>to the alt{}s in both f_expect_chan_rel() to cover a whole bunch of test cases,<br>and in f_tc_ho_out_fail_no_ho_detect() which has its own release expectations.<br><br>Before this, RR Release messages would typically be lost in the RSL.clear<br>recently removed by Ie1be30c3f109dda8c58c523df508211f8e20aad3.<br><br>However, I still expect tests to pass after this, since the current osmo-bsc<br>master has a bug that omits RR Release messages (since [1]).<br><br>By applying this patch, both the buggy osmo-bsc (omitting RR Release) and the<br>fix of that [2] should pass the BSC tests. So far by accepting whatever comes<br>along, and not complaining if it doesn't come along.<br><br>A subsequent patch will more precisely ensure that exactly the expected<br>messages will be sent by osmo-bsc (Ibc64058f1e214bea585f4e8dcb66f3df8ead3845).<br><br>[1] osmo-bsc I4fd582b41ba4599af704d670af83651d2450b1db<br>    commit 8b818a01b00ea3daad4ad58c162ac52b4f08a5cb<br>    "subscr conn: properly forget lchan before release"<br><br>[2] osmo-bsc I666b3b4f45706d898d664d380bd0fd2b018be358<br>    "fix: send RR Release (e.g. after BSSMAP Clear Cmd"<br><br>Related: OS#3413<br>Change-Id: I4e6d266d091b140f56b28312cb3c5d67ffcc3a59<br>---<br>M bsc/BSC_Tests.ttcn<br>1 file changed, 8 insertions(+), 0 deletions(-)<br><br></pre><pre style="font-family: monospace,monospace; white-space: pre-wrap;"><span>diff --git a/bsc/BSC_Tests.ttcn b/bsc/BSC_Tests.ttcn</span><br><span>index a2a3378..fcccad0 100644</span><br><span>--- a/bsc/BSC_Tests.ttcn</span><br><span>+++ b/bsc/BSC_Tests.ttcn</span><br><span>@@ -820,12 +820,16 @@</span><br><span>                          boolean handle_rll_rel := true) runs on test_CT {</span><br><span> </span><br><span>     var RslLinkId main_dcch := valueof(ts_RslLinkID_DCCH(0));</span><br><span style="color: hsl(120, 100%, 40%);">+     var octetstring l3_rr_chan_rel := '060D00'O;</span><br><span>         alt {</span><br><span>        /* ignore DEACTIVATE SACCH (if any) */</span><br><span>       [] IPA_RSL[bts_nr].receive(tr_ASP_RSL_UD(IPAC_PROTO_RSL_TRX0,</span><br><span>                                        tr_RSL_DEACT_SACCH(rsl_chan_nr))) {</span><br><span>          repeat;</span><br><span>      }</span><br><span style="color: hsl(120, 100%, 40%);">+     [] IPA_RSL[bts_nr].receive(tr_ASP_RSL_UD(IPAC_PROTO_RSL_TRX0, tr_RSL_DATA_REQ(rsl_chan_nr, ?, l3_rr_chan_rel))) {</span><br><span style="color: hsl(120, 100%, 40%);">+             repeat;</span><br><span style="color: hsl(120, 100%, 40%);">+       }</span><br><span>    /* acknowledge RLL release (if any)*/</span><br><span>        [handle_rll_rel] IPA_RSL[bts_nr].receive(tr_ASP_RSL_UD(IPAC_PROTO_RSL_TRX0,</span><br><span>                                  tr_RSL_REL_REQ(rsl_chan_nr, ?))) {</span><br><span>@@ -2441,7 +2445,11 @@</span><br><span>   * RR should be released and Clear Request should go to the MSC. */</span><br><span> </span><br><span>      var MgcpCommand mgcp;</span><br><span style="color: hsl(120, 100%, 40%);">+ var octetstring l3_rr_chan_rel := '060D00'O;</span><br><span>         interleave {</span><br><span style="color: hsl(120, 100%, 40%);">+  [] RSL.receive(tr_RSL_DATA_REQ(g_chan_nr, ?, l3_rr_chan_rel)) {</span><br><span style="color: hsl(120, 100%, 40%);">+                       log("Got RR Release");</span><br><span style="color: hsl(120, 100%, 40%);">+              }</span><br><span>    [] RSL.receive(tr_RSL_MsgTypeD(RSL_MT_RF_CHAN_REL)) {</span><br><span>                        log("Got RF Chan Rel");</span><br><span>                    RSL.send(ts_RSL_RF_CHAN_REL_ACK(g_chan_nr));</span><br><span></span><br></pre><p>To view, visit <a href="https://gerrit.osmocom.org/11660">change 11660</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/11660"/><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: I4e6d266d091b140f56b28312cb3c5d67ffcc3a59 </div>
<div style="display:none"> Gerrit-Change-Number: 11660 </div>
<div style="display:none"> Gerrit-PatchSet: 2 </div>
<div style="display:none"> Gerrit-Owner: Neels Hofmeyr <nhofmeyr@sysmocom.de> </div>
<div style="display:none"> Gerrit-Reviewer: Harald Welte <laforge@gnumonks.org> </div>
<div style="display:none"> Gerrit-Reviewer: Jenkins Builder (1000002) </div>
<div style="display:none"> Gerrit-Reviewer: Neels Hofmeyr <nhofmeyr@sysmocom.de> </div>