<p>Harald Welte has uploaded this change for <strong>review</strong>.</p><p><a href="https://gerrit.osmocom.org/9419">View Change</a></p><pre style="font-family: monospace,monospace; white-space: pre-wrap;">gsm0808: Add value_string for LCLS related IEs<br><br>Change-Id: I18d7a29496929c761aeaba9c0aee847befc13108<br>---<br>M include/osmocom/gsm/gsm0808.h<br>M src/gsm/gsm0808.c<br>M src/gsm/libosmogsm.map<br>3 files changed, 51 insertions(+), 0 deletions(-)<br><br></pre><pre style="font-family: monospace,monospace; white-space: pre-wrap;">git pull ssh://gerrit.osmocom.org:29418/libosmocore refs/changes/19/9419/1</pre><pre style="font-family: monospace,monospace; white-space: pre-wrap;"><span>diff --git a/include/osmocom/gsm/gsm0808.h b/include/osmocom/gsm/gsm0808.h</span><br><span>index 8402957..d704aa9 100644</span><br><span>--- a/include/osmocom/gsm/gsm0808.h</span><br><span>+++ b/include/osmocom/gsm/gsm0808.h</span><br><span>@@ -27,6 +27,7 @@</span><br><span> #include <osmocom/gsm/protocol/gsm_08_08.h></span><br><span> #include <osmocom/gsm/gsm0808_utils.h></span><br><span> #include <osmocom/gsm/gsm23003.h></span><br><span style="color: hsl(120, 100%, 40%);">+#include <osmocom/core/utils.h></span><br><span> </span><br><span> struct sockaddr_storage;</span><br><span> </span><br><span>@@ -135,4 +136,18 @@</span><br><span> const char *gsm0808_bssap_name(uint8_t msg_type);</span><br><span> const char *gsm0808_cause_name(uint8_t cause);</span><br><span> </span><br><span style="color: hsl(120, 100%, 40%);">+extern const struct value_string gsm0808_lcls_config_names[];</span><br><span style="color: hsl(120, 100%, 40%);">+extern const struct value_string gsm0808_lcls_control_names[];</span><br><span style="color: hsl(120, 100%, 40%);">+extern const struct value_string gsm0808_lcls_status_names[];</span><br><span style="color: hsl(120, 100%, 40%);">+</span><br><span style="color: hsl(120, 100%, 40%);">+static inline const char *gsm0808_lcls_config_name(uint8_t val) {</span><br><span style="color: hsl(120, 100%, 40%);">+       return get_value_string(gsm0808_lcls_config_names, val);</span><br><span style="color: hsl(120, 100%, 40%);">+}</span><br><span style="color: hsl(120, 100%, 40%);">+static inline const char *gsm0808_lcls_control_name(uint8_t val) {</span><br><span style="color: hsl(120, 100%, 40%);">+       return get_value_string(gsm0808_lcls_control_names, val);</span><br><span style="color: hsl(120, 100%, 40%);">+}</span><br><span style="color: hsl(120, 100%, 40%);">+static inline const char *gsm0808_lcls_status_name(uint8_t val) {</span><br><span style="color: hsl(120, 100%, 40%);">+       return get_value_string(gsm0808_lcls_status_names, val);</span><br><span style="color: hsl(120, 100%, 40%);">+}</span><br><span style="color: hsl(120, 100%, 40%);">+</span><br><span> /*! @} */</span><br><span>diff --git a/src/gsm/gsm0808.c b/src/gsm/gsm0808.c</span><br><span>index 347e985..3a63137 100644</span><br><span>--- a/src/gsm/gsm0808.c</span><br><span>+++ b/src/gsm/gsm0808.c</span><br><span>@@ -1144,4 +1144,37 @@</span><br><span>         return get_value_string(gsm0808_cause_names, cause);</span><br><span> }</span><br><span> </span><br><span style="color: hsl(120, 100%, 40%);">+const struct value_string gsm0808_lcls_config_names[] = {</span><br><span style="color: hsl(120, 100%, 40%);">+      { GSM0808_LCLS_CFG_BOTH_WAY, "Connect both-way" },</span><br><span style="color: hsl(120, 100%, 40%);">+  { GSM0808_LCLS_CFG_BOTH_WAY_AND_BICAST_UL,</span><br><span style="color: hsl(120, 100%, 40%);">+      "Connect both-way, bi-cast UL to CN" },</span><br><span style="color: hsl(120, 100%, 40%);">+   { GSM0808_LCLS_CFG_BOTH_WAY_AND_SEND_DL,</span><br><span style="color: hsl(120, 100%, 40%);">+        "Connect both-way, send access DL from CN" },</span><br><span style="color: hsl(120, 100%, 40%);">+     { GSM0808_LCLS_CFG_BOTH_WAY_AND_SEND_DL_BLOCK_LOCAL_DL,</span><br><span style="color: hsl(120, 100%, 40%);">+         "Connect both-way, send access DL from CN, block local DL" },</span><br><span style="color: hsl(120, 100%, 40%);">+     { GSM0808_LCLS_CFG_BOTH_WAY_AND_BICAST_UL_SEND_DL,</span><br><span style="color: hsl(120, 100%, 40%);">+      "Connect both-way, bi-cast UL to CN, send access DL from CN" },</span><br><span style="color: hsl(120, 100%, 40%);">+   { GSM0808_LCLS_CFG_BOTH_WAY_AND_BICAST_UL_SEND_DL_BLOCK_LOCAL_DL,</span><br><span style="color: hsl(120, 100%, 40%);">+       "Connect both-way, bi-cast UL to CN, send access DL from CN, block local DL" },</span><br><span style="color: hsl(120, 100%, 40%);">+   { 0, NULL }</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%);">+const struct value_string gsm0808_lcls_control_names[] = {</span><br><span style="color: hsl(120, 100%, 40%);">+ { GSM0808_LCLS_CSC_CONNECT,                             "Connect" },</span><br><span style="color: hsl(120, 100%, 40%);">+        { GSM0808_LCLS_CSC_DO_NOT_CONNECT,                      "Do not connect" },</span><br><span style="color: hsl(120, 100%, 40%);">+ { GSM0808_LCLS_CSC_RELEASE_LCLS,                        "Release LCLS" },</span><br><span style="color: hsl(120, 100%, 40%);">+   { GSM0808_LCLS_CSC_BICAST_UL_AT_HANDOVER,               "Bi-cast UL at Handover" },</span><br><span style="color: hsl(120, 100%, 40%);">+ { GSM0808_LCLS_CSC_BICAST_UL_AND_RECV_DL_AT_HANDOVER,   "Bi-cast UL and receive DL at Handover" },</span><br><span style="color: hsl(120, 100%, 40%);">+  { 0, NULL }</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%);">+const struct value_string gsm0808_lcls_status_names[] = {</span><br><span style="color: hsl(120, 100%, 40%);">+  { GSM0808_LCLS_STS_NOT_YET_LS,          "Call not yet locally switched" },</span><br><span style="color: hsl(120, 100%, 40%);">+  { GSM0808_LCLS_STS_NOT_POSSIBLE_LS,     "Call not possible to be locally switched" },</span><br><span style="color: hsl(120, 100%, 40%);">+       { GSM0808_LCLS_STS_NO_LONGER_LS,        "Call is no longer locally switched" },</span><br><span style="color: hsl(120, 100%, 40%);">+     { GSM0808_LCLS_STS_REQ_LCLS_NOT_SUPP,   "Requested LCLS configuration is not supported" },</span><br><span style="color: hsl(120, 100%, 40%);">+  { GSM0808_LCLS_STS_LOCALLY_SWITCHED,    "Call is locally switched with requested LCLS config" },</span><br><span style="color: hsl(120, 100%, 40%);">+    { 0, NULL }</span><br><span style="color: hsl(120, 100%, 40%);">+};</span><br><span style="color: hsl(120, 100%, 40%);">+</span><br><span> /*! @} */</span><br><span>diff --git a/src/gsm/libosmogsm.map b/src/gsm/libosmogsm.map</span><br><span>index c05b4ee..117cecf 100644</span><br><span>--- a/src/gsm/libosmogsm.map</span><br><span>+++ b/src/gsm/libosmogsm.map</span><br><span>@@ -195,6 +195,9 @@</span><br><span> gsm0808_speech_codec_from_chan_type;</span><br><span> gsm0808_speech_codec_type_names;</span><br><span> gsm0808_channel_type_name;</span><br><span style="color: hsl(120, 100%, 40%);">+gsm0808_lcls_config_names;</span><br><span style="color: hsl(120, 100%, 40%);">+gsm0808_lcls_control_names;</span><br><span style="color: hsl(120, 100%, 40%);">+gsm0808_lcls_status_names;</span><br><span> </span><br><span> gsm0858_rsl_ul_meas_enc;</span><br><span> </span><br><span></span><br></pre><p>To view, visit <a href="https://gerrit.osmocom.org/9419">change 9419</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/9419"/><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: newchange </div>
<div style="display:none"> Gerrit-Change-Id: I18d7a29496929c761aeaba9c0aee847befc13108 </div>
<div style="display:none"> Gerrit-Change-Number: 9419 </div>
<div style="display:none"> Gerrit-PatchSet: 1 </div>
<div style="display:none"> Gerrit-Owner: Harald Welte <laforge@gnumonks.org> </div>