<p>lynxis lazus <strong>submitted</strong> this change.</p><p><a href="https://gerrit.osmocom.org/c/libosmocore/+/22427">View Change</a></p><div style="white-space:pre-wrap">Approvals:
  Jenkins Builder: Verified
  daniel: Looks good to me, but someone else must approve
  laforge: Looks good to me, but someone else must approve
  lynxis lazus: Looks good to me, approved

</div><pre style="font-family: monospace,monospace; white-space: pre-wrap;">gprs_ns2: drop prefix of all internal exposed function<br><br>All functions which are exposed by gprs_ns2_internal.h should not contain<br>the public prefix gprs_. Internal function should only contain ns2_ prefix.<br><br>Change-Id: Icecc5a918902cd10efac72bbac20780d39aab272<br>---<br>M src/gb/gprs_ns2.c<br>M src/gb/gprs_ns2_fr.c<br>M src/gb/gprs_ns2_frgre.c<br>M src/gb/gprs_ns2_internal.h<br>M src/gb/gprs_ns2_message.c<br>M src/gb/gprs_ns2_sns.c<br>M src/gb/gprs_ns2_udp.c<br>M src/gb/gprs_ns2_vc_fsm.c<br>M src/gb/gprs_ns2_vty.c<br>M src/gb/gprs_ns2_vty2.c<br>M tests/gb/gprs_ns2_test.c<br>11 files changed, 84 insertions(+), 86 deletions(-)<br><br></pre><pre style="font-family: monospace,monospace; white-space: pre-wrap;"><span>diff --git a/src/gb/gprs_ns2.c b/src/gb/gprs_ns2.c</span><br><span>index 2c417f2..811294b 100644</span><br><span>--- a/src/gb/gprs_ns2.c</span><br><span>+++ b/src/gb/gprs_ns2.c</span><br><span>@@ -318,7 +318,7 @@</span><br><span>   llist_for_each_entry(tmp, &nse->nsvc, list) {</span><br><span>                 if (tmp->sig_weight == 0)</span><br><span>                         continue;</span><br><span style="color: hsl(0, 100%, 40%);">-               if (!gprs_ns2_vc_is_unblocked(tmp))</span><br><span style="color: hsl(120, 100%, 40%);">+           if (!ns2_vc_is_unblocked(tmp))</span><br><span>                       continue;</span><br><span>            if (tmp->sig_counter == 0) {</span><br><span>                      last = tmp;</span><br><span>@@ -354,7 +354,7 @@</span><br><span>    uint32_t i = 0;</span><br><span> </span><br><span>  llist_for_each_entry(tmp, &nse->nsvc, list) {</span><br><span style="color: hsl(0, 100%, 40%);">-            if (!gprs_ns2_vc_is_unblocked(tmp))</span><br><span style="color: hsl(120, 100%, 40%);">+           if (!ns2_vc_is_unblocked(tmp))</span><br><span>                       continue;</span><br><span>            if (i == mod)</span><br><span>                        return tmp;</span><br><span>@@ -370,7 +370,7 @@</span><br><span>    struct gprs_ns2_vc *nsvc = NULL, *tmp;</span><br><span> </span><br><span>   llist_for_each_entry(tmp, &nse->nsvc, list) {</span><br><span style="color: hsl(0, 100%, 40%);">-            if (!gprs_ns2_vc_is_unblocked(tmp))</span><br><span style="color: hsl(120, 100%, 40%);">+           if (!ns2_vc_is_unblocked(tmp))</span><br><span>                       continue;</span><br><span>            if (tmp->data_weight == 0)</span><br><span>                        continue;</span><br><span>@@ -512,7 +512,7 @@</span><br><span>      nsvc->statg = osmo_stat_item_group_alloc(nsvc, &nsvc_statg_desc, bind->nsi->rate_ctr_idx);</span><br><span>      if (!nsvc->statg)</span><br><span>                 goto err_group;</span><br><span style="color: hsl(0, 100%, 40%);">- if (!gprs_ns2_vc_fsm_alloc(nsvc, id, initiater))</span><br><span style="color: hsl(120, 100%, 40%);">+      if (!ns2_vc_fsm_alloc(nsvc, id, initiater))</span><br><span>          goto err_statg;</span><br><span> </span><br><span>  bind->nsi->rate_ctr_idx++;</span><br><span>@@ -577,7 +577,7 @@</span><br><span> }</span><br><span> </span><br><span> /*! Allocate a message buffer for use with the NS2 stack. */</span><br><span style="color: hsl(0, 100%, 40%);">-struct msgb *gprs_ns2_msgb_alloc(void)</span><br><span style="color: hsl(120, 100%, 40%);">+struct msgb *ns2_msgb_alloc(void)</span><br><span> {</span><br><span>        struct msgb *msg = msgb_alloc_headroom(NS_ALLOC_SIZE, NS_ALLOC_HEADROOM,</span><br><span>                                            "GPRS/NS");</span><br><span>@@ -596,7 +596,7 @@</span><br><span>  *  \return 0 on success */</span><br><span> static int reject_status_msg(struct msgb *orig_msg, struct tlv_parsed *tp, struct msgb **reject, enum ns_cause cause)</span><br><span> {</span><br><span style="color: hsl(0, 100%, 40%);">- struct msgb *msg = gprs_ns2_msgb_alloc();</span><br><span style="color: hsl(120, 100%, 40%);">+     struct msgb *msg = ns2_msgb_alloc();</span><br><span>         struct gprs_ns_hdr *nsh;</span><br><span>     bool have_vci = false;</span><br><span>       uint8_t _cause = cause;</span><br><span>@@ -910,7 +910,7 @@</span><br><span>        }</span><br><span> </span><br><span>        nsvci = tlvp_val16be(&tp, NS_IE_VCI);</span><br><span style="color: hsl(0, 100%, 40%);">-       vc_mode = gprs_ns2_dialect_to_vc_mode(dialect);</span><br><span style="color: hsl(120, 100%, 40%);">+       vc_mode = ns2_dialect_to_vc_mode(dialect);</span><br><span>   snprintf(idbuf, sizeof(idbuf), "%s-NSE%05u-NSVC%05u", gprs_ns2_lltype_str(nse->ll),</span><br><span>              nse->nsei, nsvci);</span><br><span>       nsvc = ns2_vc_alloc(bind, nse, false, vc_mode, idbuf);</span><br><span>@@ -938,7 +938,7 @@</span><br><span> {</span><br><span>    struct gprs_ns2_vc *nsvc;</span><br><span> </span><br><span style="color: hsl(0, 100%, 40%);">-   nsvc = gprs_ns2_ip_bind_connect(bind, nse, remote);</span><br><span style="color: hsl(120, 100%, 40%);">+   nsvc = ns2_ip_bind_connect(bind, nse, remote);</span><br><span>       if (!nsvc)</span><br><span>           return NULL;</span><br><span> </span><br><span>@@ -966,7 +966,7 @@</span><br><span>       if (!nsvc)</span><br><span>           return NULL;</span><br><span> </span><br><span style="color: hsl(0, 100%, 40%);">-        gprs_ns2_vc_fsm_start(nsvc);</span><br><span style="color: hsl(120, 100%, 40%);">+  ns2_vc_fsm_start(nsvc);</span><br><span> </span><br><span>  return nsvc;</span><br><span> }</span><br><span>@@ -1066,7 +1066,7 @@</span><br><span>                    return rc;</span><br><span>           }</span><br><span>            /* All sub-network service related message types */</span><br><span style="color: hsl(0, 100%, 40%);">-             rc = gprs_ns2_sns_rx(nsvc, msg, &tp);</span><br><span style="color: hsl(120, 100%, 40%);">+             rc = ns2_sns_rx(nsvc, msg, &tp);</span><br><span>                 break;</span><br><span>       case SNS_PDUT_ACK:</span><br><span>   case SNS_PDUT_ADD:</span><br><span>@@ -1083,7 +1083,7 @@</span><br><span>           tp.lv[NS_IE_NSEI].len = 2;</span><br><span>           tp.lv[NS_IE_TRANS_ID].val = nsh->data+4;</span><br><span>          tp.lv[NS_IE_TRANS_ID].len = 1;</span><br><span style="color: hsl(0, 100%, 40%);">-          rc = gprs_ns2_sns_rx(nsvc, msg, &tp);</span><br><span style="color: hsl(120, 100%, 40%);">+             rc = ns2_sns_rx(nsvc, msg, &tp);</span><br><span>                 break;</span><br><span>       case SNS_PDUT_CONFIG_ACK:</span><br><span>    case SNS_PDUT_SIZE:</span><br><span>@@ -1095,11 +1095,11 @@</span><br><span>                        return rc;</span><br><span>           }</span><br><span>            /* All sub-network service related message types */</span><br><span style="color: hsl(0, 100%, 40%);">-             rc = gprs_ns2_sns_rx(nsvc, msg, &tp);</span><br><span style="color: hsl(120, 100%, 40%);">+             rc = ns2_sns_rx(nsvc, msg, &tp);</span><br><span>                 break;</span><br><span> </span><br><span>   case NS_PDUT_UNITDATA:</span><br><span style="color: hsl(0, 100%, 40%);">-          rc = gprs_ns2_vc_rx(nsvc, msg, &tp);</span><br><span style="color: hsl(120, 100%, 40%);">+              rc = ns2_vc_rx(nsvc, msg, &tp);</span><br><span>          break;</span><br><span>       default:</span><br><span>             rc = ns2_tlv_parse(&tp, nsh->data,</span><br><span>@@ -1110,7 +1110,7 @@</span><br><span>                            ns2_tx_status(nsvc, NS_CAUSE_PROTO_ERR_UNSPEC, 0, msg);</span><br><span>                      return rc;</span><br><span>           }</span><br><span style="color: hsl(0, 100%, 40%);">-               rc = gprs_ns2_vc_rx(nsvc, msg, &tp);</span><br><span style="color: hsl(120, 100%, 40%);">+              rc = ns2_vc_rx(nsvc, msg, &tp);</span><br><span>          break;</span><br><span>       }</span><br><span> </span><br><span>@@ -1127,7 +1127,7 @@</span><br><span>        nse->sum_sig_weight = 0;</span><br><span> </span><br><span>      llist_for_each_entry(nsvc, &nse->nsvc, list) {</span><br><span style="color: hsl(0, 100%, 40%);">-           if (!gprs_ns2_vc_is_unblocked(nsvc))</span><br><span style="color: hsl(120, 100%, 40%);">+          if (!ns2_vc_is_unblocked(nsvc))</span><br><span>                      continue;</span><br><span> </span><br><span>                nse->nsvc_count++;</span><br><span>@@ -1231,7 +1231,7 @@</span><br><span>                if (nsvc->sns_only)</span><br><span>                       continue;</span><br><span> </span><br><span style="color: hsl(0, 100%, 40%);">-           gprs_ns2_vc_fsm_start(nsvc);</span><br><span style="color: hsl(120, 100%, 40%);">+          ns2_vc_fsm_start(nsvc);</span><br><span>      }</span><br><span> }</span><br><span> </span><br><span>@@ -1269,8 +1269,7 @@</span><br><span>  *  \param[in] name The unique bind name to search for</span><br><span>  *  \return the bind or NULL if not found</span><br><span>  */</span><br><span style="color: hsl(0, 100%, 40%);">-struct gprs_ns2_vc_bind *gprs_ns2_bind_by_name(</span><br><span style="color: hsl(0, 100%, 40%);">-         struct gprs_ns2_inst *nsi, const char *name)</span><br><span style="color: hsl(120, 100%, 40%);">+struct gprs_ns2_vc_bind *gprs_ns2_bind_by_name(struct gprs_ns2_inst *nsi, const char *name)</span><br><span> {</span><br><span>       struct gprs_ns2_vc_bind *bind;</span><br><span> </span><br><span>@@ -1282,8 +1281,7 @@</span><br><span>   return NULL;</span><br><span> }</span><br><span> </span><br><span style="color: hsl(0, 100%, 40%);">-enum gprs_ns2_vc_mode gprs_ns2_dialect_to_vc_mode(</span><br><span style="color: hsl(0, 100%, 40%);">-         enum gprs_ns2_dialect dialect)</span><br><span style="color: hsl(120, 100%, 40%);">+enum gprs_ns2_vc_mode ns2_dialect_to_vc_mode(enum gprs_ns2_dialect dialect)</span><br><span> {</span><br><span>     switch (dialect) {</span><br><span>   case NS2_DIALECT_SNS:</span><br><span>@@ -1335,7 +1333,7 @@</span><br><span>                return 0;</span><br><span> </span><br><span>        llist_for_each_entry(nsvc, &nse->nsvc, list) {</span><br><span style="color: hsl(0, 100%, 40%);">-           if (gprs_ns2_vc_is_unblocked(nsvc))</span><br><span style="color: hsl(120, 100%, 40%);">+           if (ns2_vc_is_unblocked(nsvc))</span><br><span>                       active_nsvcs++;</span><br><span>      }</span><br><span>    /* an alive nse should always have active_nsvcs */</span><br><span>@@ -1346,7 +1344,7 @@</span><br><span>           return -ENOMEM;</span><br><span> </span><br><span>  llist_for_each_entry(nsvc, &nse->nsvc, list) {</span><br><span style="color: hsl(0, 100%, 40%);">-           if (!gprs_ns2_vc_is_unblocked(nsvc))</span><br><span style="color: hsl(120, 100%, 40%);">+          if (!ns2_vc_is_unblocked(nsvc))</span><br><span>                      continue;</span><br><span>            add_bind_array(active_binds, nsvc->bind, active_nsvcs);</span><br><span>   }</span><br><span>diff --git a/src/gb/gprs_ns2_fr.c b/src/gb/gprs_ns2_fr.c</span><br><span>index 274ed96..8ad44ac 100644</span><br><span>--- a/src/gb/gprs_ns2_fr.c</span><br><span>+++ b/src/gb/gprs_ns2_fr.c</span><br><span>@@ -762,7 +762,7 @@</span><br><span>         nsvc->nsvci = nsvci;</span><br><span>      nsvc->nsvci_is_valid = true;</span><br><span> </span><br><span style="color: hsl(0, 100%, 40%);">-     gprs_ns2_vc_fsm_start(nsvc);</span><br><span style="color: hsl(120, 100%, 40%);">+  ns2_vc_fsm_start(nsvc);</span><br><span> </span><br><span>  return nsvc;</span><br><span> </span><br><span>diff --git a/src/gb/gprs_ns2_frgre.c b/src/gb/gprs_ns2_frgre.c</span><br><span>index da7e53f..cc8500f 100644</span><br><span>--- a/src/gb/gprs_ns2_frgre.c</span><br><span>+++ b/src/gb/gprs_ns2_frgre.c</span><br><span>@@ -451,7 +451,7 @@</span><br><span>                      goto out;</span><br><span>            case NS2_CS_CREATED:</span><br><span>                         frgre_alloc_vc(bind, nsvc, &saddr, dlci);</span><br><span style="color: hsl(0, 100%, 40%);">-                   gprs_ns2_vc_fsm_start(nsvc);</span><br><span style="color: hsl(120, 100%, 40%);">+                  ns2_vc_fsm_start(nsvc);</span><br><span>                      break;</span><br><span>               }</span><br><span>    }</span><br><span>diff --git a/src/gb/gprs_ns2_internal.h b/src/gb/gprs_ns2_internal.h</span><br><span>index a36396f..027071d 100644</span><br><span>--- a/src/gb/gprs_ns2_internal.h</span><br><span>+++ b/src/gb/gprs_ns2_internal.h</span><br><span>@@ -260,10 +260,10 @@</span><br><span>                                enum gprs_ns2_vc_mode vc_mode,</span><br><span>                               const char *id);</span><br><span> </span><br><span style="color: hsl(0, 100%, 40%);">-struct msgb *gprs_ns2_msgb_alloc(void);</span><br><span style="color: hsl(120, 100%, 40%);">+struct msgb *ns2_msgb_alloc(void);</span><br><span> </span><br><span style="color: hsl(0, 100%, 40%);">-void gprs_ns2_sns_write_vty(struct vty *vty, const struct gprs_ns2_nse *nse);</span><br><span style="color: hsl(0, 100%, 40%);">-void gprs_ns2_sns_dump_vty(struct vty *vty, const char *prefix, const struct gprs_ns2_nse *nse, bool stats);</span><br><span style="color: hsl(120, 100%, 40%);">+void ns2_sns_write_vty(struct vty *vty, const struct gprs_ns2_nse *nse);</span><br><span style="color: hsl(120, 100%, 40%);">+void ns2_sns_dump_vty(struct vty *vty, const char *prefix, const struct gprs_ns2_nse *nse, bool stats);</span><br><span> void ns2_prim_status_ind(struct gprs_ns2_nse *nse,</span><br><span>                        struct gprs_ns2_vc *nsvc,</span><br><span>                    uint16_t bvci,</span><br><span>@@ -271,11 +271,11 @@</span><br><span> void ns2_nse_notify_alive(struct gprs_ns2_vc *nsvc, bool alive);</span><br><span> </span><br><span> /* message */</span><br><span style="color: hsl(0, 100%, 40%);">-int gprs_ns2_validate(struct gprs_ns2_vc *nsvc,</span><br><span style="color: hsl(0, 100%, 40%);">-               uint8_t pdu_type,</span><br><span style="color: hsl(0, 100%, 40%);">-               struct msgb *msg,</span><br><span style="color: hsl(0, 100%, 40%);">-               struct tlv_parsed *tp,</span><br><span style="color: hsl(0, 100%, 40%);">-                  uint8_t *cause);</span><br><span style="color: hsl(120, 100%, 40%);">+int ns2_validate(struct gprs_ns2_vc *nsvc,</span><br><span style="color: hsl(120, 100%, 40%);">+             uint8_t pdu_type,</span><br><span style="color: hsl(120, 100%, 40%);">+             struct msgb *msg,</span><br><span style="color: hsl(120, 100%, 40%);">+             struct tlv_parsed *tp,</span><br><span style="color: hsl(120, 100%, 40%);">+                uint8_t *cause);</span><br><span> </span><br><span> /* SNS messages */</span><br><span> int ns2_tx_sns_ack(struct gprs_ns2_vc *nsvc, uint8_t trans_id, uint8_t *cause,</span><br><span>@@ -314,33 +314,33 @@</span><br><span>                       uint16_t bvci, struct msgb *orig_msg);</span><br><span> </span><br><span> /* driver */</span><br><span style="color: hsl(0, 100%, 40%);">-struct gprs_ns2_vc *gprs_ns2_ip_bind_connect(struct gprs_ns2_vc_bind *bind,</span><br><span style="color: hsl(0, 100%, 40%);">-                                         struct gprs_ns2_nse *nse,</span><br><span style="color: hsl(0, 100%, 40%);">-                                       const struct osmo_sockaddr *remote);</span><br><span style="color: hsl(120, 100%, 40%);">+struct gprs_ns2_vc *ns2_ip_bind_connect(struct gprs_ns2_vc_bind *bind,</span><br><span style="color: hsl(120, 100%, 40%);">+                                     struct gprs_ns2_nse *nse,</span><br><span style="color: hsl(120, 100%, 40%);">+                                     const struct osmo_sockaddr *remote);</span><br><span> int ns2_ip_count_bind(struct gprs_ns2_inst *nsi, struct osmo_sockaddr *remote);</span><br><span> struct gprs_ns2_vc_bind *ns2_ip_get_bind_by_index(struct gprs_ns2_inst *nsi,</span><br><span>                                                struct osmo_sockaddr *remote,</span><br><span>                                                int index);</span><br><span> </span><br><span> /* sns */</span><br><span style="color: hsl(0, 100%, 40%);">-int gprs_ns2_sns_rx(struct gprs_ns2_vc *nsvc, struct msgb *msg, struct tlv_parsed *tp);</span><br><span style="color: hsl(120, 100%, 40%);">+int ns2_sns_rx(struct gprs_ns2_vc *nsvc, struct msgb *msg, struct tlv_parsed *tp);</span><br><span> struct osmo_fsm_inst *ns2_sns_bss_fsm_alloc(struct gprs_ns2_nse *nse,</span><br><span>                                        const char *id);</span><br><span> void ns2_sns_free_nsvc(struct gprs_ns2_vc *nsvc);</span><br><span> </span><br><span> /* vc */</span><br><span style="color: hsl(0, 100%, 40%);">-struct osmo_fsm_inst *gprs_ns2_vc_fsm_alloc(struct gprs_ns2_vc *nsvc,</span><br><span style="color: hsl(120, 100%, 40%);">+struct osmo_fsm_inst *ns2_vc_fsm_alloc(struct gprs_ns2_vc *nsvc,</span><br><span>                                        const char *id, bool initiate);</span><br><span style="color: hsl(0, 100%, 40%);">-int gprs_ns2_vc_fsm_start(struct gprs_ns2_vc *nsvc);</span><br><span style="color: hsl(0, 100%, 40%);">-int gprs_ns2_vc_force_unconfigured(struct gprs_ns2_vc *nsvc);</span><br><span style="color: hsl(0, 100%, 40%);">-int gprs_ns2_vc_rx(struct gprs_ns2_vc *nsvc, struct msgb *msg, struct tlv_parsed *tp);</span><br><span style="color: hsl(0, 100%, 40%);">-int gprs_ns2_vc_is_alive(struct gprs_ns2_vc *nsvc);</span><br><span style="color: hsl(0, 100%, 40%);">-int gprs_ns2_vc_is_unblocked(struct gprs_ns2_vc *nsvc);</span><br><span style="color: hsl(120, 100%, 40%);">+int ns2_vc_fsm_start(struct gprs_ns2_vc *nsvc);</span><br><span style="color: hsl(120, 100%, 40%);">+int ns2_vc_force_unconfigured(struct gprs_ns2_vc *nsvc);</span><br><span style="color: hsl(120, 100%, 40%);">+int ns2_vc_rx(struct gprs_ns2_vc *nsvc, struct msgb *msg, struct tlv_parsed *tp);</span><br><span style="color: hsl(120, 100%, 40%);">+int ns2_vc_is_alive(struct gprs_ns2_vc *nsvc);</span><br><span style="color: hsl(120, 100%, 40%);">+int ns2_vc_is_unblocked(struct gprs_ns2_vc *nsvc);</span><br><span> int ns2_vc_block(struct gprs_ns2_vc *nsvc);</span><br><span> int ns2_vc_unblock(struct gprs_ns2_vc *nsvc);</span><br><span> </span><br><span> /* nse */</span><br><span> void ns2_nse_notify_unblocked(struct gprs_ns2_vc *nsvc, bool unblocked);</span><br><span style="color: hsl(0, 100%, 40%);">-enum gprs_ns2_vc_mode gprs_ns2_dialect_to_vc_mode(enum gprs_ns2_dialect dialect);</span><br><span style="color: hsl(120, 100%, 40%);">+enum gprs_ns2_vc_mode ns2_dialect_to_vc_mode(enum gprs_ns2_dialect dialect);</span><br><span> int ns2_count_transfer_cap(struct gprs_ns2_nse *nse,</span><br><span>                      uint16_t bvci);</span><br><span>diff --git a/src/gb/gprs_ns2_message.c b/src/gb/gprs_ns2_message.c</span><br><span>index 9559229..a185f3b 100644</span><br><span>--- a/src/gb/gprs_ns2_message.c</span><br><span>+++ b/src/gb/gprs_ns2_message.c</span><br><span>@@ -149,11 +149,11 @@</span><br><span>  return 0;</span><br><span> }</span><br><span> </span><br><span style="color: hsl(0, 100%, 40%);">-int gprs_ns2_validate(struct gprs_ns2_vc *nsvc,</span><br><span style="color: hsl(0, 100%, 40%);">-                     uint8_t pdu_type,</span><br><span style="color: hsl(0, 100%, 40%);">-               struct msgb *msg,</span><br><span style="color: hsl(0, 100%, 40%);">-               struct tlv_parsed *tp,</span><br><span style="color: hsl(0, 100%, 40%);">-                  uint8_t *cause)</span><br><span style="color: hsl(120, 100%, 40%);">+int ns2_validate(struct gprs_ns2_vc *nsvc,</span><br><span style="color: hsl(120, 100%, 40%);">+              uint8_t pdu_type,</span><br><span style="color: hsl(120, 100%, 40%);">+             struct msgb *msg,</span><br><span style="color: hsl(120, 100%, 40%);">+             struct tlv_parsed *tp,</span><br><span style="color: hsl(120, 100%, 40%);">+                uint8_t *cause)</span><br><span> {</span><br><span>        switch (pdu_type) {</span><br><span>  case NS_PDUT_RESET:</span><br><span>@@ -186,7 +186,7 @@</span><br><span> /* transmit functions */</span><br><span> static int ns2_tx_simple(struct gprs_ns2_vc *nsvc, uint8_t pdu_type)</span><br><span> {</span><br><span style="color: hsl(0, 100%, 40%);">-      struct msgb *msg = gprs_ns2_msgb_alloc();</span><br><span style="color: hsl(120, 100%, 40%);">+     struct msgb *msg = ns2_msgb_alloc();</span><br><span>         struct gprs_ns_hdr *nsh;</span><br><span> </span><br><span>         log_set_context(LOG_CTX_GB_NSE, nsvc->nse);</span><br><span>@@ -218,7 +218,7 @@</span><br><span> </span><br><span>     ERR_IF_NSVC_USES_SNS(nsvc, "transmit NS BLOCK");</span><br><span> </span><br><span style="color: hsl(0, 100%, 40%);">-  msg = gprs_ns2_msgb_alloc();</span><br><span style="color: hsl(120, 100%, 40%);">+  msg = ns2_msgb_alloc();</span><br><span>      if (!msg)</span><br><span>            return -ENOMEM;</span><br><span> </span><br><span>@@ -250,7 +250,7 @@</span><br><span> </span><br><span>        ERR_IF_NSVC_USES_SNS(nsvc, "transmit NS BLOCK ACK");</span><br><span> </span><br><span style="color: hsl(0, 100%, 40%);">-      msg = gprs_ns2_msgb_alloc();</span><br><span style="color: hsl(120, 100%, 40%);">+  msg = ns2_msgb_alloc();</span><br><span>      if (!msg)</span><br><span>            return -ENOMEM;</span><br><span> </span><br><span>@@ -281,7 +281,7 @@</span><br><span> </span><br><span>        ERR_IF_NSVC_USES_SNS(nsvc, "transmit NS RESET");</span><br><span> </span><br><span style="color: hsl(0, 100%, 40%);">-  msg = gprs_ns2_msgb_alloc();</span><br><span style="color: hsl(120, 100%, 40%);">+  msg = ns2_msgb_alloc();</span><br><span>      if (!msg)</span><br><span>            return -ENOMEM;</span><br><span> </span><br><span>@@ -313,7 +313,7 @@</span><br><span> </span><br><span>        ERR_IF_NSVC_USES_SNS(nsvc, "transmit NS RESET ACK");</span><br><span> </span><br><span style="color: hsl(0, 100%, 40%);">-      msg = gprs_ns2_msgb_alloc();</span><br><span style="color: hsl(120, 100%, 40%);">+  msg = ns2_msgb_alloc();</span><br><span>      if (!msg)</span><br><span>            return -ENOMEM;</span><br><span> </span><br><span>@@ -428,7 +428,7 @@</span><br><span> int ns2_tx_status(struct gprs_ns2_vc *nsvc, uint8_t cause,</span><br><span>                     uint16_t bvci, struct msgb *orig_msg)</span><br><span> {</span><br><span style="color: hsl(0, 100%, 40%);">-       struct msgb *msg = gprs_ns2_msgb_alloc();</span><br><span style="color: hsl(120, 100%, 40%);">+     struct msgb *msg = ns2_msgb_alloc();</span><br><span>         struct gprs_ns_hdr *nsh;</span><br><span>     uint16_t nsvci = osmo_htons(nsvc->nsvci);</span><br><span> </span><br><span>@@ -495,7 +495,7 @@</span><br><span>       if (!nsvc)</span><br><span>           return -1;</span><br><span> </span><br><span style="color: hsl(0, 100%, 40%);">-  msg = gprs_ns2_msgb_alloc();</span><br><span style="color: hsl(120, 100%, 40%);">+  msg = ns2_msgb_alloc();</span><br><span> </span><br><span>  log_set_context(LOG_CTX_GB_NSE, nsvc->nse);</span><br><span>       log_set_context(LOG_CTX_GB_NSVC, nsvc);</span><br><span>@@ -553,7 +553,7 @@</span><br><span>        if (!nsvc)</span><br><span>           return -1;</span><br><span> </span><br><span style="color: hsl(0, 100%, 40%);">-  msg = gprs_ns2_msgb_alloc();</span><br><span style="color: hsl(120, 100%, 40%);">+  msg = ns2_msgb_alloc();</span><br><span> </span><br><span>  log_set_context(LOG_CTX_GB_NSE, nsvc->nse);</span><br><span>       log_set_context(LOG_CTX_GB_NSVC, nsvc);</span><br><span>@@ -602,7 +602,7 @@</span><br><span>        if (!nsvc)</span><br><span>           return -1;</span><br><span> </span><br><span style="color: hsl(0, 100%, 40%);">-  msg = gprs_ns2_msgb_alloc();</span><br><span style="color: hsl(120, 100%, 40%);">+  msg = ns2_msgb_alloc();</span><br><span>      log_set_context(LOG_CTX_GB_NSE, nsvc->nse);</span><br><span>       log_set_context(LOG_CTX_GB_NSVC, nsvc);</span><br><span>      if (!msg)</span><br><span>@@ -646,7 +646,7 @@</span><br><span>      if (!nsvc)</span><br><span>           return -1;</span><br><span> </span><br><span style="color: hsl(0, 100%, 40%);">-  msg = gprs_ns2_msgb_alloc();</span><br><span style="color: hsl(120, 100%, 40%);">+  msg = ns2_msgb_alloc();</span><br><span> </span><br><span>  log_set_context(LOG_CTX_GB_NSE, nsvc->nse);</span><br><span>       log_set_context(LOG_CTX_GB_NSVC, nsvc);</span><br><span>@@ -683,7 +683,7 @@</span><br><span>  *  \returns 0 on success; negative in case of error */</span><br><span> int ns2_tx_sns_size_ack(struct gprs_ns2_vc *nsvc, uint8_t *cause)</span><br><span> {</span><br><span style="color: hsl(0, 100%, 40%);">-      struct msgb *msg = gprs_ns2_msgb_alloc();</span><br><span style="color: hsl(120, 100%, 40%);">+     struct msgb *msg = ns2_msgb_alloc();</span><br><span>         struct gprs_ns_hdr *nsh;</span><br><span>     uint16_t nsei;</span><br><span> </span><br><span>diff --git a/src/gb/gprs_ns2_sns.c b/src/gb/gprs_ns2_sns.c</span><br><span>index 90d97b6..2dc6524 100644</span><br><span>--- a/src/gb/gprs_ns2_sns.c</span><br><span>+++ b/src/gb/gprs_ns2_sns.c</span><br><span>@@ -246,7 +246,7 @@</span><br><span>    if (nse->alive) {</span><br><span>                 /* choose a different sns nsvc */</span><br><span>            llist_for_each_entry(tmp, &nse->nsvc, list) {</span><br><span style="color: hsl(0, 100%, 40%);">-                    if (gprs_ns2_vc_is_unblocked(tmp))</span><br><span style="color: hsl(120, 100%, 40%);">+                    if (ns2_vc_is_unblocked(tmp))</span><br><span>                                gss->sns_nsvc = tmp;</span><br><span>              }</span><br><span>    } else {</span><br><span>@@ -743,7 +743,7 @@</span><br><span> </span><br><span>   /* setup the NSVC */</span><br><span>         if (!gss->sns_nsvc) {</span><br><span style="color: hsl(0, 100%, 40%);">-                gss->sns_nsvc = gprs_ns2_ip_bind_connect(bind, gss->nse, remote);</span><br><span style="color: hsl(120, 100%, 40%);">+               gss->sns_nsvc = ns2_ip_bind_connect(bind, gss->nse, remote);</span><br><span>           if (!gss->sns_nsvc)</span><br><span>                       return;</span><br><span>              gss->sns_nsvc->sns_only = true;</span><br><span>@@ -1439,7 +1439,7 @@</span><br><span>  *  \param[in] msg message buffer of the IP-SNS message</span><br><span>  *  \param[in] tp parsed TLV structure of message</span><br><span>  *  \retruns 0 on success; negative on error */</span><br><span style="color: hsl(0, 100%, 40%);">-int gprs_ns2_sns_rx(struct gprs_ns2_vc *nsvc, struct msgb *msg, struct tlv_parsed *tp)</span><br><span style="color: hsl(120, 100%, 40%);">+int ns2_sns_rx(struct gprs_ns2_vc *nsvc, struct msgb *msg, struct tlv_parsed *tp)</span><br><span> {</span><br><span>       struct gprs_ns2_nse *nse = nsvc->nse;</span><br><span>     struct gprs_ns_hdr *nsh = (struct gprs_ns_hdr *) msg->l2h;</span><br><span>@@ -1521,7 +1521,7 @@</span><br><span>  *  \param[in] prefix prefix to print at start of each line (typically indenting)</span><br><span>  *  \param[in] nse NS Entity whose IP-SNS state shall be printed</span><br><span>  *  \param[in] stats Whether or not statistics shall also be printed */</span><br><span style="color: hsl(0, 100%, 40%);">-void gprs_ns2_sns_dump_vty(struct vty *vty, const char *prefix, const struct gprs_ns2_nse *nse, bool stats)</span><br><span style="color: hsl(120, 100%, 40%);">+void ns2_sns_dump_vty(struct vty *vty, const char *prefix, const struct gprs_ns2_nse *nse, bool stats)</span><br><span> {</span><br><span>    struct ns2_sns_state *gss;</span><br><span>   unsigned int i;</span><br><span>@@ -1559,7 +1559,7 @@</span><br><span> /*! write IP-SNS to a vty</span><br><span>  *  \param[in] vty VTY to which the state shall be printed</span><br><span>  *  \param[in] nse NS Entity whose IP-SNS state shall be printed */</span><br><span style="color: hsl(0, 100%, 40%);">-void gprs_ns2_sns_write_vty(struct vty *vty, const struct gprs_ns2_nse *nse)</span><br><span style="color: hsl(120, 100%, 40%);">+void ns2_sns_write_vty(struct vty *vty, const struct gprs_ns2_nse *nse)</span><br><span> {</span><br><span>  struct ns2_sns_state *gss;</span><br><span>   struct osmo_sockaddr_str addr_str;</span><br><span>diff --git a/src/gb/gprs_ns2_udp.c b/src/gb/gprs_ns2_udp.c</span><br><span>index 6ee6eb2..e1ffad6 100644</span><br><span>--- a/src/gb/gprs_ns2_udp.c</span><br><span>+++ b/src/gb/gprs_ns2_udp.c</span><br><span>@@ -171,7 +171,7 @@</span><br><span> static struct msgb *read_nsip_msg(struct osmo_fd *bfd, int *error, struct osmo_sockaddr *saddr,</span><br><span>                                   const struct gprs_ns2_vc_bind *bind)</span><br><span> {</span><br><span style="color: hsl(0, 100%, 40%);">-     struct msgb *msg = gprs_ns2_msgb_alloc();</span><br><span style="color: hsl(120, 100%, 40%);">+     struct msgb *msg = ns2_msgb_alloc();</span><br><span>         int ret = 0;</span><br><span>         socklen_t saddr_len = sizeof(*saddr);</span><br><span> </span><br><span>@@ -243,7 +243,7 @@</span><br><span>                      goto out;</span><br><span>            case NS2_CS_CREATED:</span><br><span>                         ns2_driver_alloc_vc(bind, nsvc, &saddr);</span><br><span style="color: hsl(0, 100%, 40%);">-                    gprs_ns2_vc_fsm_start(nsvc);</span><br><span style="color: hsl(120, 100%, 40%);">+                  ns2_vc_fsm_start(nsvc);</span><br><span>                      break;</span><br><span>               }</span><br><span>    }</span><br><span>@@ -394,9 +394,9 @@</span><br><span>  *  \param[in] nse NS entity to be used for the new NS-VC</span><br><span>  *  \param[in] remote remote address to connect to</span><br><span>  *  \return pointer to newly-allocated and connected NS-VC; NULL on error */</span><br><span style="color: hsl(0, 100%, 40%);">-struct gprs_ns2_vc *gprs_ns2_ip_bind_connect(struct gprs_ns2_vc_bind *bind,</span><br><span style="color: hsl(0, 100%, 40%);">-                                        struct gprs_ns2_nse *nse,</span><br><span style="color: hsl(0, 100%, 40%);">-                                       const struct osmo_sockaddr *remote)</span><br><span style="color: hsl(120, 100%, 40%);">+struct gprs_ns2_vc *ns2_ip_bind_connect(struct gprs_ns2_vc_bind *bind,</span><br><span style="color: hsl(120, 100%, 40%);">+                                      struct gprs_ns2_nse *nse,</span><br><span style="color: hsl(120, 100%, 40%);">+                                     const struct osmo_sockaddr *remote)</span><br><span> {</span><br><span>     struct gprs_ns2_vc *nsvc;</span><br><span>    struct priv_vc *priv;</span><br><span>@@ -406,7 +406,7 @@</span><br><span> </span><br><span>      OSMO_ASSERT(gprs_ns2_is_ip_bind(bind));</span><br><span> </span><br><span style="color: hsl(0, 100%, 40%);">-     vc_mode = gprs_ns2_dialect_to_vc_mode(nse->dialect);</span><br><span style="color: hsl(120, 100%, 40%);">+       vc_mode = ns2_dialect_to_vc_mode(nse->dialect);</span><br><span>   if ((int) vc_mode == -1) {</span><br><span>           LOGNSE(nse, LOGL_ERROR, "Can not derive vc mode from dialect %d. Maybe libosmocore is too old.\n",</span><br><span>                         nse->dialect);</span><br><span>diff --git a/src/gb/gprs_ns2_vc_fsm.c b/src/gb/gprs_ns2_vc_fsm.c</span><br><span>index d4f4320..d18983a 100644</span><br><span>--- a/src/gb/gprs_ns2_vc_fsm.c</span><br><span>+++ b/src/gb/gprs_ns2_vc_fsm.c</span><br><span>@@ -684,7 +684,7 @@</span><br><span>  * \param initiator initiator is the site which starts the connection. Usually the BSS.</span><br><span>  * \return NULL on error, otherwise the fsm</span><br><span>  */</span><br><span style="color: hsl(0, 100%, 40%);">-struct osmo_fsm_inst *gprs_ns2_vc_fsm_alloc(struct gprs_ns2_vc *nsvc,</span><br><span style="color: hsl(120, 100%, 40%);">+struct osmo_fsm_inst *ns2_vc_fsm_alloc(struct gprs_ns2_vc *nsvc,</span><br><span>                                             const char *id, bool initiator)</span><br><span> {</span><br><span>     struct osmo_fsm_inst *fi;</span><br><span>@@ -707,7 +707,7 @@</span><br><span> /*! Start a NS-VC FSM.</span><br><span>  *  \param nsvc the virtual circuit</span><br><span>  *  \return 0 on success; negative on error */</span><br><span style="color: hsl(0, 100%, 40%);">-int gprs_ns2_vc_fsm_start(struct gprs_ns2_vc *nsvc)</span><br><span style="color: hsl(120, 100%, 40%);">+int ns2_vc_fsm_start(struct gprs_ns2_vc *nsvc)</span><br><span> {</span><br><span>   /* allows to call this function even for started nsvc by gprs_ns2_start_alive_all_nsvcs */</span><br><span>   if (nsvc->fi->state == GPRS_NS2_ST_UNCONFIGURED)</span><br><span>@@ -718,7 +718,7 @@</span><br><span> /*! Reset a NS-VC FSM.</span><br><span>  *  \param nsvc the virtual circuit</span><br><span>  *  \return 0 on success; negative on error */</span><br><span style="color: hsl(0, 100%, 40%);">-int gprs_ns2_vc_force_unconfigured(struct gprs_ns2_vc *nsvc)</span><br><span style="color: hsl(120, 100%, 40%);">+int ns2_vc_force_unconfigured(struct gprs_ns2_vc *nsvc)</span><br><span> {</span><br><span>    return osmo_fsm_inst_dispatch(nsvc->fi, GPRS_NS2_EV_REQ_FORCE_UNCONFIGURED, NULL);</span><br><span> }</span><br><span>@@ -744,7 +744,7 @@</span><br><span>  *  \param msg message that was received</span><br><span>  *  \param tp parsed TLVs of the received message</span><br><span>  *  \return 0 on success; negative on error */</span><br><span style="color: hsl(0, 100%, 40%);">-int gprs_ns2_vc_rx(struct gprs_ns2_vc *nsvc, struct msgb *msg, struct tlv_parsed *tp)</span><br><span style="color: hsl(120, 100%, 40%);">+int ns2_vc_rx(struct gprs_ns2_vc *nsvc, struct msgb *msg, struct tlv_parsed *tp)</span><br><span> {</span><br><span>      struct gprs_ns_hdr *nsh = (struct gprs_ns_hdr *) msg->l2h;</span><br><span>        struct osmo_fsm_inst *fi = nsvc->fi;</span><br><span>@@ -756,7 +756,7 @@</span><br><span>         *  if not answer STATUS with "NS-VC unknown" */</span><br><span>   /* TODO: handle BLOCK/UNBLOCK/ALIVE with different VCI */</span><br><span> </span><br><span style="color: hsl(0, 100%, 40%);">-   if (gprs_ns2_validate(nsvc, nsh->pdu_type, msg, tp, &cause)) {</span><br><span style="color: hsl(120, 100%, 40%);">+ if (ns2_validate(nsvc, nsh->pdu_type, msg, tp, &cause)) {</span><br><span>             if (nsh->pdu_type != NS_PDUT_STATUS) {</span><br><span>                    rc = ns2_tx_status(nsvc, cause, 0, msg);</span><br><span>                     goto out;</span><br><span>@@ -831,7 +831,7 @@</span><br><span> }</span><br><span> </span><br><span> /*! is the given NS-VC unblocked? */</span><br><span style="color: hsl(0, 100%, 40%);">-int gprs_ns2_vc_is_unblocked(struct gprs_ns2_vc *nsvc)</span><br><span style="color: hsl(120, 100%, 40%);">+int ns2_vc_is_unblocked(struct gprs_ns2_vc *nsvc)</span><br><span> {</span><br><span>       return (nsvc->fi->state == GPRS_NS2_ST_UNBLOCKED);</span><br><span> }</span><br><span>diff --git a/src/gb/gprs_ns2_vty.c b/src/gb/gprs_ns2_vty.c</span><br><span>index 36a7f78..d6674ff 100644</span><br><span>--- a/src/gb/gprs_ns2_vty.c</span><br><span>+++ b/src/gb/gprs_ns2_vty.c</span><br><span>@@ -298,7 +298,7 @@</span><br><span>         vty_out(vty, "NSEI %05u: %s, %s%s", nse->nsei, gprs_ns2_lltype_str(nse->ll),</span><br><span>                 nse->alive ? "ALIVE" : "DEAD", VTY_NEWLINE);</span><br><span> </span><br><span style="color: hsl(0, 100%, 40%);">- gprs_ns2_sns_dump_vty(vty, " ", nse, stats);</span><br><span style="color: hsl(120, 100%, 40%);">+        ns2_sns_dump_vty(vty, " ", nse, stats);</span><br><span>    llist_for_each_entry(nsvc, &nse->nsvc, list) {</span><br><span>                if (persistent_only) {</span><br><span>                       if (nsvc->persistent)</span><br><span>@@ -418,7 +418,7 @@</span><br><span> </span><br><span> static int nsvc_force_unconf_cb(struct gprs_ns2_vc *nsvc, void *ctx)</span><br><span> {</span><br><span style="color: hsl(0, 100%, 40%);">- gprs_ns2_vc_force_unconfigured(nsvc);</span><br><span style="color: hsl(120, 100%, 40%);">+ ns2_vc_force_unconfigured(nsvc);</span><br><span>     return 0;</span><br><span> }</span><br><span> </span><br><span>diff --git a/src/gb/gprs_ns2_vty2.c b/src/gb/gprs_ns2_vty2.c</span><br><span>index db59717..43dd263 100644</span><br><span>--- a/src/gb/gprs_ns2_vty2.c</span><br><span>+++ b/src/gb/gprs_ns2_vty2.c</span><br><span>@@ -391,7 +391,7 @@</span><br><span>        vty_out(vty, " nse %u%s", nse->nsei, VTY_NEWLINE);</span><br><span>      switch (nse->dialect) {</span><br><span>   case NS2_DIALECT_SNS:</span><br><span style="color: hsl(0, 100%, 40%);">-           gprs_ns2_sns_write_vty(vty, nse);</span><br><span style="color: hsl(120, 100%, 40%);">+             ns2_sns_write_vty(vty, nse);</span><br><span>                 break;</span><br><span>       default:</span><br><span>             llist_for_each_entry(nsvc, &nse->nsvc, list) {</span><br><span>@@ -1349,7 +1349,7 @@</span><br><span>        vty_out(vty, "NSEI %05u: %s, %s%s", nse->nsei, gprs_ns2_lltype_str(nse->ll),</span><br><span>                 nse->alive ? "ALIVE" : "DEAD", VTY_NEWLINE);</span><br><span> </span><br><span style="color: hsl(0, 100%, 40%);">- gprs_ns2_sns_dump_vty(vty, " ", nse, stats);</span><br><span style="color: hsl(120, 100%, 40%);">+        ns2_sns_dump_vty(vty, " ", nse, stats);</span><br><span>    llist_for_each_entry(nsvc, &nse->nsvc, list) {</span><br><span>                if (persistent_only) {</span><br><span>                       if (nsvc->persistent)</span><br><span>@@ -1469,7 +1469,7 @@</span><br><span> </span><br><span> static int nsvc_force_unconf_cb(struct gprs_ns2_vc *nsvc, void *ctx)</span><br><span> {</span><br><span style="color: hsl(0, 100%, 40%);">-       gprs_ns2_vc_force_unconfigured(nsvc);</span><br><span style="color: hsl(120, 100%, 40%);">+ ns2_vc_force_unconfigured(nsvc);</span><br><span>     return 0;</span><br><span> }</span><br><span> </span><br><span>diff --git a/tests/gb/gprs_ns2_test.c b/tests/gb/gprs_ns2_test.c</span><br><span>index 10f430d..335a079 100644</span><br><span>--- a/tests/gb/gprs_ns2_test.c</span><br><span>+++ b/tests/gb/gprs_ns2_test.c</span><br><span>@@ -254,7 +254,7 @@</span><br><span>                OSMO_ASSERT(nsvc[i]);</span><br><span>                nsvc[i]->fi->state = 3;   /* HACK: 3 = GPRS_NS2_ST_UNBLOCKED */</span><br><span>                /* ensure the fi->state works correct */</span><br><span style="color: hsl(0, 100%, 40%);">-             OSMO_ASSERT(gprs_ns2_vc_is_unblocked(nsvc[i]));</span><br><span style="color: hsl(120, 100%, 40%);">+               OSMO_ASSERT(ns2_vc_is_unblocked(nsvc[i]));</span><br><span>           ns2_nse_notify_unblocked(nsvc[i], true);</span><br><span>     }</span><br><span> </span><br><span>@@ -277,7 +277,7 @@</span><br><span>  nsh->pdu_type = NS_PDUT_UNBLOCK_ACK;</span><br><span>      ns2_recv_vc(nsvc[0], msg);</span><br><span> </span><br><span style="color: hsl(0, 100%, 40%);">-  OSMO_ASSERT(gprs_ns2_vc_is_unblocked(nsvc[0]));</span><br><span style="color: hsl(120, 100%, 40%);">+       OSMO_ASSERT(ns2_vc_is_unblocked(nsvc[0]));</span><br><span>   gprs_ns2_free(nsi);</span><br><span>  printf("--- Finish NSE block unblock nsvc\n");</span><br><span> }</span><br><span>@@ -330,11 +330,11 @@</span><br><span>                nsvc[i] = ns2_vc_alloc(bind[i], nse, false, NS2_VC_MODE_BLOCKRESET, idbuf);</span><br><span>          loop[i] = loopback_nsvc(loopbind, nsvc[i]);</span><br><span>          OSMO_ASSERT(nsvc[i]);</span><br><span style="color: hsl(0, 100%, 40%);">-           gprs_ns2_vc_fsm_start(nsvc[i]);</span><br><span style="color: hsl(0, 100%, 40%);">-         OSMO_ASSERT(!gprs_ns2_vc_is_unblocked(nsvc[i]));</span><br><span style="color: hsl(120, 100%, 40%);">+              ns2_vc_fsm_start(nsvc[i]);</span><br><span style="color: hsl(120, 100%, 40%);">+            OSMO_ASSERT(!ns2_vc_is_unblocked(nsvc[i]));</span><br><span>          ns2_tx_reset(loop[i], NS_CAUSE_OM_INTERVENTION);</span><br><span>             ns2_tx_unblock(loop[i]);</span><br><span style="color: hsl(0, 100%, 40%);">-                OSMO_ASSERT(gprs_ns2_vc_is_unblocked(nsvc[i]));</span><br><span style="color: hsl(120, 100%, 40%);">+               OSMO_ASSERT(ns2_vc_is_unblocked(nsvc[i]));</span><br><span>   }</span><br><span> </span><br><span>        /* both nsvcs are unblocked and alive */</span><br><span></span><br></pre><p>To view, visit <a href="https://gerrit.osmocom.org/c/libosmocore/+/22427">change 22427</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/libosmocore/+/22427"/><meta itemprop="name" content="View Change"/></div></div>

<div style="display:none"> Gerrit-Project: libosmocore </div>
<div style="display:none"> Gerrit-Branch: master </div>
<div style="display:none"> Gerrit-Change-Id: Icecc5a918902cd10efac72bbac20780d39aab272 </div>
<div style="display:none"> Gerrit-Change-Number: 22427 </div>
<div style="display:none"> Gerrit-PatchSet: 1 </div>
<div style="display:none"> Gerrit-Owner: lynxis lazus <lynxis@fe80.eu> </div>
<div style="display:none"> Gerrit-Reviewer: Jenkins Builder </div>
<div style="display:none"> Gerrit-Reviewer: daniel <dwillmann@sysmocom.de> </div>
<div style="display:none"> Gerrit-Reviewer: laforge <laforge@osmocom.org> </div>
<div style="display:none"> Gerrit-Reviewer: lynxis lazus <lynxis@fe80.eu> </div>
<div style="display:none"> Gerrit-MessageType: merged </div>