<p>Harald Welte <strong>merged</strong> this change.</p><p><a href="https://gerrit.osmocom.org/10966">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;">MSC_ConnectionHandler: Make sure COMPLETE LAYER 3 INFORMATION contains a codecList<br><br>Since our BSC implementation supports AoIP, the COMPLETE LAYER 3<br>INFORMATION message must contan a Codec List (BSS Supported) information<br>element. The test currently just receive a L3 compl Template and then<br>continue. This is implemented without an altstep. So lets have an altstep<br>with timeout here and make sure that the codecList information element is<br>always included.<br><br>However, since AoIP was specified after sccp-lite, we need to make sure<br>that for sccp-lite configurations, the Codec List is not included.<br><br>- Check L3 compl message using an alt-step<br>- Make sure codecList is always included (for AoIP)<br><br>Change-Id: Ia16a454e78421430ec32cc37939d429970cb06ec<br>Related: OS#3548<br>---<br>M bsc/MSC_ConnectionHandler.ttcn<br>1 file changed, 24 insertions(+), 2 deletions(-)<br><br></pre><pre style="font-family: monospace,monospace; white-space: pre-wrap;"><span>diff --git a/bsc/MSC_ConnectionHandler.ttcn b/bsc/MSC_ConnectionHandler.ttcn</span><br><span>index 0b11786..079cc74 100644</span><br><span>--- a/bsc/MSC_ConnectionHandler.ttcn</span><br><span>+++ b/bsc/MSC_ConnectionHandler.ttcn</span><br><span>@@ -829,6 +829,7 @@</span><br><span> </span><br><span>         var BSSMAP_FIELD_CodecType codecType;</span><br><span>        var boolean sccplite := false;</span><br><span style="color: hsl(120, 100%, 40%);">+        timer T := 10.0;</span><br><span> </span><br><span>         /* Check if we run on SCCPLITE instead of SCCP by looking if a CIC is</span><br><span>         * present or not. */</span><br><span>@@ -851,7 +852,28 @@</span><br><span> </span><br><span>     f_create_chan_and_exp();</span><br><span>     /* we should now have a COMPL_L3 at the MSC */</span><br><span style="color: hsl(0, 100%, 40%);">-  BSSAP.receive(tr_BSSMAP_ComplL3);</span><br><span style="color: hsl(120, 100%, 40%);">+</span><br><span style="color: hsl(120, 100%, 40%);">+   var template PDU_BSSAP exp_l3_compl;</span><br><span style="color: hsl(120, 100%, 40%);">+  exp_l3_compl := tr_BSSMAP_ComplL3()</span><br><span style="color: hsl(120, 100%, 40%);">+   if (sccplite) {</span><br><span style="color: hsl(120, 100%, 40%);">+               exp_l3_compl.pdu.bssmap.completeLayer3Information.codecList := omit;</span><br><span style="color: hsl(120, 100%, 40%);">+  } else {</span><br><span style="color: hsl(120, 100%, 40%);">+              exp_l3_compl.pdu.bssmap.completeLayer3Information.codecList := ?;</span><br><span style="color: hsl(120, 100%, 40%);">+     }</span><br><span style="color: hsl(120, 100%, 40%);">+     T.start;</span><br><span style="color: hsl(120, 100%, 40%);">+      alt {</span><br><span style="color: hsl(120, 100%, 40%);">+ [] BSSAP.receive(exp_l3_compl);</span><br><span style="color: hsl(120, 100%, 40%);">+       [] BSSAP.receive(tr_BSSMAP_ComplL3) {</span><br><span style="color: hsl(120, 100%, 40%);">+         setverdict(fail, "Received non-matching COMPLETE LAYER 3 INFORMATION");</span><br><span style="color: hsl(120, 100%, 40%);">+             all component.stop;</span><br><span style="color: hsl(120, 100%, 40%);">+           mtc.stop;</span><br><span style="color: hsl(120, 100%, 40%);">+             }</span><br><span style="color: hsl(120, 100%, 40%);">+     [] T.timeout {</span><br><span style="color: hsl(120, 100%, 40%);">+                setverdict(fail, "Timeout waiting for COMPLETE LAYER 3 INFORMATION");</span><br><span style="color: hsl(120, 100%, 40%);">+               all component.stop;</span><br><span style="color: hsl(120, 100%, 40%);">+           mtc.stop;</span><br><span style="color: hsl(120, 100%, 40%);">+             }</span><br><span style="color: hsl(120, 100%, 40%);">+     }</span><br><span> </span><br><span>        /* start ciphering, if requested */</span><br><span>  if (ispresent(g_pars.encr)) {</span><br><span>@@ -865,10 +887,10 @@</span><br><span> </span><br><span>    var PDU_BSSAP ass_cmd := valueof(ass_tpl);</span><br><span>   var PDU_BSSAP bssap;</span><br><span style="color: hsl(0, 100%, 40%);">-    timer T := 10.0;</span><br><span>     var boolean exp_compl := ischosen(exp_ass_cpl.pdu.bssmap.assignmentComplete);</span><br><span>        var boolean exp_fail := ischosen(exp_ass_cpl.pdu.bssmap.assignmentFailure);</span><br><span>  var boolean exp_modify;</span><br><span style="color: hsl(120, 100%, 40%);">+</span><br><span>    var ExpectCriteria mgcpcrit := {</span><br><span>             connid := omit,</span><br><span>              endpoint := omit,</span><br><span></span><br></pre><p>To view, visit <a href="https://gerrit.osmocom.org/10966">change 10966</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/10966"/><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: Ia16a454e78421430ec32cc37939d429970cb06ec </div>
<div style="display:none"> Gerrit-Change-Number: 10966 </div>
<div style="display:none"> Gerrit-PatchSet: 7 </div>
<div style="display:none"> Gerrit-Owner: dexter <pmaier@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: dexter <pmaier@sysmocom.de> </div>