<p>Neels Hofmeyr <strong>merged</strong> this change.</p><p><a href="https://gerrit.osmocom.org/12451">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;">gsm_utils: add enum osmo_rat_type, from osmo-msc enum ran_type<br><br>In the MSC, we have RAN types GERAN_A and UTRAN_IU, now we need a similar enum<br>in osmo-hlr's GSUP client.<br><br>Naming: in the MAP specifications, the RAN type is mostly called RAT type,<br>(Radio Access Network vs. Radio Access Technology?). Since GSUP is more about<br>MAP messages, I'm calling the enum osmo_rat_type.<br><br>Rationale: osmo-msc and osmo-sgsn want to tell the osmo-hlr which RAT a<br>subscriber is calling on. A subsequent patch will extend the GSUP protocol and<br>add a RAT types IE.<br><br>Change-Id: I659687aef7a4d67ca372a39fef31dee07aed7631<br>---<br>M include/osmocom/gsm/gsm_utils.h<br>M src/gsm/gsm_utils.c<br>M src/gsm/libosmogsm.map<br>3 files changed, 23 insertions(+), 0 deletions(-)<br><br></pre><pre style="font-family: monospace,monospace; white-space: pre-wrap;"><span>diff --git a/include/osmocom/gsm/gsm_utils.h b/include/osmocom/gsm/gsm_utils.h</span><br><span>index fe5903d..095ac41 100644</span><br><span>--- a/include/osmocom/gsm/gsm_utils.h</span><br><span>+++ b/include/osmocom/gsm/gsm_utils.h</span><br><span>@@ -241,3 +241,16 @@</span><br><span> int gsm_7bit_encode(uint8_t *result, const char *data) OSMO_DEPRECATED("Use gsm_7bit_encode_n() instead");</span><br><span> int gsm_7bit_encode_ussd(uint8_t *result, const char *data, int *octets_written) OSMO_DEPRECATED("Use gsm_7bit_encode_n_ussd() instead");</span><br><span> int gsm_7bit_encode_oct(uint8_t *result, const char *data, int *octets_written) OSMO_DEPRECATED("Use gsm_7bit_encode_n() instead");</span><br><span style="color: hsl(120, 100%, 40%);">+</span><br><span style="color: hsl(120, 100%, 40%);">+enum osmo_rat_type {</span><br><span style="color: hsl(120, 100%, 40%);">+     OSMO_RAT_UNKNOWN = 0,</span><br><span style="color: hsl(120, 100%, 40%);">+ OSMO_RAT_GERAN_A,</span><br><span style="color: hsl(120, 100%, 40%);">+     OSMO_RAT_UTRAN_IU,</span><br><span style="color: hsl(120, 100%, 40%);">+</span><br><span style="color: hsl(120, 100%, 40%);">+  /* keep this last */</span><br><span style="color: hsl(120, 100%, 40%);">+  OSMO_RAT_COUNT</span><br><span style="color: hsl(120, 100%, 40%);">+};</span><br><span style="color: hsl(120, 100%, 40%);">+</span><br><span style="color: hsl(120, 100%, 40%);">+extern const struct value_string osmo_rat_type_names[];</span><br><span style="color: hsl(120, 100%, 40%);">+inline static const char *osmo_rat_type_name(enum osmo_rat_type val)</span><br><span style="color: hsl(120, 100%, 40%);">+{ return get_value_string(osmo_rat_type_names, val); }</span><br><span>diff --git a/src/gsm/gsm_utils.c b/src/gsm/gsm_utils.c</span><br><span>index 8b4b558..3862047 100644</span><br><span>--- a/src/gsm/gsm_utils.c</span><br><span>+++ b/src/gsm/gsm_utils.c</span><br><span>@@ -997,3 +997,11 @@</span><br><span>  return gsm_7bit_encode_n(result, GSM_7BIT_LEGACY_MAX_BUFFER_SIZE,</span><br><span>                             data, octets);</span><br><span> }</span><br><span style="color: hsl(120, 100%, 40%);">+</span><br><span style="color: hsl(120, 100%, 40%);">+/* This is also used by osmo-hlr's db schema */</span><br><span style="color: hsl(120, 100%, 40%);">+const struct value_string osmo_rat_type_names[] = {</span><br><span style="color: hsl(120, 100%, 40%);">+      { OSMO_RAT_UNKNOWN, "unknown" },</span><br><span style="color: hsl(120, 100%, 40%);">+    { OSMO_RAT_GERAN_A, "GERAN-A" },</span><br><span style="color: hsl(120, 100%, 40%);">+    { OSMO_RAT_UTRAN_IU, "UTRAN-Iu" },</span><br><span style="color: hsl(120, 100%, 40%);">+  {}</span><br><span style="color: hsl(120, 100%, 40%);">+};</span><br><span>diff --git a/src/gsm/libosmogsm.map b/src/gsm/libosmogsm.map</span><br><span>index 76b3fd0..bb97878 100644</span><br><span>--- a/src/gsm/libosmogsm.map</span><br><span>+++ b/src/gsm/libosmogsm.map</span><br><span>@@ -553,5 +553,7 @@</span><br><span> sgsap_ue_emm_mode_names;</span><br><span> sgsap_ie_tlvdef;</span><br><span> </span><br><span style="color: hsl(120, 100%, 40%);">+osmo_rat_type_names;</span><br><span style="color: hsl(120, 100%, 40%);">+</span><br><span> local: *;</span><br><span> };</span><br><span></span><br></pre><p>To view, visit <a href="https://gerrit.osmocom.org/12451">change 12451</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/12451"/><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-MessageType: merged </div>
<div style="display:none"> Gerrit-Change-Id: I659687aef7a4d67ca372a39fef31dee07aed7631 </div>
<div style="display:none"> Gerrit-Change-Number: 12451 </div>
<div style="display:none"> Gerrit-PatchSet: 1 </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>