<p>pespin has uploaded this change for <strong>review</strong>.</p><p><a href="https://gerrit.osmocom.org/c/osmo-ttcn3-hacks/+/15956">View Change</a></p><pre style="font-family: monospace,monospace; white-space: pre-wrap;">WIP<br><br>Change-Id: I5e3cbcf3c915f62913bec3423e14ba9152c7ba2f<br>---<br>M bsc/BSC_Tests.ttcn<br>M bsc/MSC_ConnectionHandler.ttcn<br>M library/L3_Templates.ttcn<br>3 files changed, 34 insertions(+), 4 deletions(-)<br><br></pre><pre style="font-family: monospace,monospace; white-space: pre-wrap;">git pull ssh://gerrit.osmocom.org:29418/osmo-ttcn3-hacks refs/changes/56/15956/1</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 e7a4c13..0a472cb 100644</span><br><span>--- a/bsc/BSC_Tests.ttcn</span><br><span>+++ b/bsc/BSC_Tests.ttcn</span><br><span>@@ -4372,6 +4372,31 @@</span><br><span>     }</span><br><span> }</span><br><span> </span><br><span style="color: hsl(120, 100%, 40%);">+/* Establish signalling channel (non-assignment case) followed by cipher mode */</span><br><span style="color: hsl(120, 100%, 40%);">+private function f_tc_lu_classmark_pwr_lvl(charstring id) runs on MSC_ConnHdlr {</span><br><span style="color: hsl(120, 100%, 40%);">+        var template PDU_BSSAP exp_compl := f_gen_exp_compl();</span><br><span style="color: hsl(120, 100%, 40%);">+        var PDU_BSSAP ass_cmd := f_gen_ass_req();</span><br><span style="color: hsl(120, 100%, 40%);">+     ass_cmd.pdu.bssmap.assignmentRequest.channelType := valueof(ts_BSSMAP_IE_ChannelTypeSIGNAL);</span><br><span style="color: hsl(120, 100%, 40%);">+  ass_cmd.pdu.bssmap.assignmentRequest.circuitIdentityCode := omit;</span><br><span style="color: hsl(120, 100%, 40%);">+     ass_cmd.pdu.bssmap.assignmentRequest.aoIPTransportLayer := omit;</span><br><span style="color: hsl(120, 100%, 40%);">+      exp_compl.pdu.bssmap.assignmentComplete.circuitIdentityCode := omit;</span><br><span style="color: hsl(120, 100%, 40%);">+  exp_compl.pdu.bssmap.assignmentComplete.aoIPTransportLayer := omit;</span><br><span style="color: hsl(120, 100%, 40%);">+</span><br><span style="color: hsl(120, 100%, 40%);">+ f_establish_fully(ass_cmd, exp_compl);</span><br><span style="color: hsl(120, 100%, 40%);">+        log("Done with first assignment, starting second assignment");</span><br><span style="color: hsl(120, 100%, 40%);">+      f_create_chan_and_exp();</span><br><span style="color: hsl(120, 100%, 40%);">+}</span><br><span style="color: hsl(120, 100%, 40%);">+testcase TC_lu_classmark_pwr_lvl() runs on test_CT {</span><br><span style="color: hsl(120, 100%, 40%);">+     var MSC_ConnHdlr vc_conn;</span><br><span style="color: hsl(120, 100%, 40%);">+     var TestHdlrParams pars := f_gen_test_hdlr_pars();</span><br><span style="color: hsl(120, 100%, 40%);">+    pars.cm2.rf_PowerCapability := '001'B; /* DCS 1800 power class 2, max power lvl = 3 (24dBm) */</span><br><span style="color: hsl(120, 100%, 40%);">+</span><br><span style="color: hsl(120, 100%, 40%);">+      f_init(1, true);</span><br><span style="color: hsl(120, 100%, 40%);">+      f_sleep(1.0);</span><br><span style="color: hsl(120, 100%, 40%);">+ vc_conn := f_start_handler(refers(f_tc_ciph_mode_a5), pars);</span><br><span style="color: hsl(120, 100%, 40%);">+  vc_conn.done;</span><br><span style="color: hsl(120, 100%, 40%);">+}</span><br><span style="color: hsl(120, 100%, 40%);">+</span><br><span> </span><br><span> /* Dyn PDCH todo:</span><br><span>    * activate OSMO as TCH/F</span><br><span>@@ -4541,6 +4566,9 @@</span><br><span>   execute( TC_chopped_ipa_ping() );</span><br><span>    execute( TC_chopped_ipa_payload() );</span><br><span> </span><br><span style="color: hsl(120, 100%, 40%);">+      /* Power control related */</span><br><span style="color: hsl(120, 100%, 40%);">+   execute( TC_lu_classmark_pwr_lvl() );</span><br><span style="color: hsl(120, 100%, 40%);">+</span><br><span>      /* at bottom as they might crash OsmoBSC before OS#3182 is fixed */</span><br><span>  execute( TC_early_conn_fail() );</span><br><span>     execute( TC_late_conn_fail() );</span><br><span>diff --git a/bsc/MSC_ConnectionHandler.ttcn b/bsc/MSC_ConnectionHandler.ttcn</span><br><span>index 8091d8d..12e11fa 100644</span><br><span>--- a/bsc/MSC_ConnectionHandler.ttcn</span><br><span>+++ b/bsc/MSC_ConnectionHandler.ttcn</span><br><span>@@ -526,6 +526,7 @@</span><br><span>   TestHdlrEncrParams encr optional,</span><br><span>    TestHdlrParamsLcls lcls,</span><br><span>     TestHdlrParamsHandover handover optional,</span><br><span style="color: hsl(120, 100%, 40%);">+     MobileStationClassmark2_LV cm2,</span><br><span>      uint5_t         exp_ms_power_level,</span><br><span>  boolean         aoip,</span><br><span>        boolean         use_osmux</span><br><span>@@ -552,6 +553,7 @@</span><br><span>              adjust_cx_exp := true</span><br><span>        },</span><br><span>   handover := omit,</span><br><span style="color: hsl(120, 100%, 40%);">+     cm2 := ts_CM2,</span><br><span>       exp_ms_power_level := 7, /* calculated from osmo-bsc.cfg "ms max power" */</span><br><span>         aoip := true,</span><br><span>        use_osmux := false</span><br><span>@@ -559,7 +561,7 @@</span><br><span> </span><br><span> function f_create_chan_and_exp() runs on MSC_ConnHdlr {</span><br><span>      var MobileIdentityLV mi := valueof(ts_MI_IMSI_LV(g_pars.imsi));</span><br><span style="color: hsl(0, 100%, 40%);">- var PDU_ML3_MS_NW l3_info := valueof(ts_CM_SERV_REQ(CM_TYPE_MO_CALL, mi));</span><br><span style="color: hsl(120, 100%, 40%);">+    var PDU_ML3_MS_NW l3_info := valueof(ts_CM_SERV_REQ(CM_TYPE_MO_CALL, mi, g_pars.cm2));</span><br><span>       var octetstring l3_enc := enc_PDU_ML3_MS_NW(l3_info);</span><br><span> </span><br><span>    /* call helper function for CHAN_RQD -> IMM ASS ->EST_IND */</span><br><span>@@ -770,7 +772,7 @@</span><br><span>             Misc_Helpers.f_shutdown(__BFILE__, __LINE__, fail, "IE MS Power not found in CHAN ACT");</span><br><span>   } else {</span><br><span>             if (not match(ms_power.ms_power, tr_RSL_IE_MS_Power(g_pars.exp_ms_power_level, false))) {</span><br><span style="color: hsl(0, 100%, 40%);">-                       Misc_Helpers.f_shutdown(__BFILE__, __LINE__, fail, "Wrong MS Power IE in CHAN ACT");</span><br><span style="color: hsl(120, 100%, 40%);">+                        Misc_Helpers.f_shutdown(__BFILE__, __LINE__, fail, log2str("Wrong MS Power IE in CHAN ACT, ", ms_power.ms_power.power_level, " vs exp ", g_pars.exp_ms_power_level));</span><br><span>            }</span><br><span>    }</span><br><span> </span><br><span>diff --git a/library/L3_Templates.ttcn b/library/L3_Templates.ttcn</span><br><span>index 0556c97..d183097 100644</span><br><span>--- a/library/L3_Templates.ttcn</span><br><span>+++ b/library/L3_Templates.ttcn</span><br><span>@@ -202,7 +202,7 @@</span><br><span> };</span><br><span> </span><br><span> /* Send template for CM SERVICE REQUEST */</span><br><span style="color: hsl(0, 100%, 40%);">-template (value) PDU_ML3_MS_NW ts_CM_SERV_REQ(CmServiceType serv_type, MobileIdentityLV mi_lv) := {</span><br><span style="color: hsl(120, 100%, 40%);">+template (value) PDU_ML3_MS_NW ts_CM_SERV_REQ(CmServiceType serv_type, MobileIdentityLV mi_lv, MobileStationClassmark2_LV cm2) := {</span><br><span>         discriminator := '0000'B, /* overwritten */</span><br><span>  tiOrSkip := {</span><br><span>                skipIndicator := '0000'B</span><br><span>@@ -214,7 +214,7 @@</span><br><span>                               nsd := '00'B,</span><br><span>                                cm_ServiceType := int2bit(enum2int(serv_type), 4),</span><br><span>                           cipheringKeySequenceNumber := { '000'B, '0'B },</span><br><span style="color: hsl(0, 100%, 40%);">-                         mobileStationClassmark2 := ts_CM2,</span><br><span style="color: hsl(120, 100%, 40%);">+                            mobileStationClassmark2 := cm2,</span><br><span>                              mobileIdentity := mi_lv,</span><br><span>                             priorityLevel := omit,</span><br><span>                               additionalUpdateParameterTV := omit,</span><br><span></span><br></pre><p>To view, visit <a href="https://gerrit.osmocom.org/c/osmo-ttcn3-hacks/+/15956">change 15956</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/c/osmo-ttcn3-hacks/+/15956"/><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-Change-Id: I5e3cbcf3c915f62913bec3423e14ba9152c7ba2f </div>
<div style="display:none"> Gerrit-Change-Number: 15956 </div>
<div style="display:none"> Gerrit-PatchSet: 1 </div>
<div style="display:none"> Gerrit-Owner: pespin <pespin@sysmocom.de> </div>
<div style="display:none"> Gerrit-MessageType: newchange </div>