<p>fixeria has uploaded this change for <strong>review</strong>.</p><p><a href="https://gerrit.osmocom.org/c/libosmocore/+/19820">View Change</a></p><pre style="font-family: monospace,monospace; white-space: pre-wrap;">gsm0808: add gsm0808_create_sapi_reject_cause()<br><br>This is basically a successor of gsm0808_create_sapi_reject(), but<br>instead of hard-coding GSM0808_CAUSE_BSS_NOT_EQUIPPED, it allows<br>the caller to specify a cause value to be used.  The old function<br>is now deprecated and should not be used.<br><br>Change-Id: Iefe5484d0fa02d5722b628b1dc237d51d3fb1a9b<br>Related: OS#4728<br>---<br>M TODO-RELEASE<br>M include/osmocom/gsm/gsm0808.h<br>M src/gsm/gsm0808.c<br>M src/gsm/libosmogsm.map<br>M tests/gsm0808/gsm0808_test.c<br>5 files changed, 18 insertions(+), 3 deletions(-)<br><br></pre><pre style="font-family: monospace,monospace; white-space: pre-wrap;">git pull ssh://gerrit.osmocom.org:29418/libosmocore refs/changes/20/19820/1</pre><pre style="font-family: monospace,monospace; white-space: pre-wrap;"><span>diff --git a/TODO-RELEASE b/TODO-RELEASE</span><br><span>index 8ccfa49..3c2a15b 100644</span><br><span>--- a/TODO-RELEASE</span><br><span>+++ b/TODO-RELEASE</span><br><span>@@ -7,3 +7,4 @@</span><br><span> # If any interfaces have been added since the last public release: c:r:a + 1.</span><br><span> # If any interfaces have been removed or changed since the last public release: c:r:0.</span><br><span> #library  what                    description / commit summary line</span><br><span style="color: hsl(120, 100%, 40%);">+libosmogsm   new API                 gsm0808_create_sapi_reject_cause() with cause argument</span><br><span>diff --git a/include/osmocom/gsm/gsm0808.h b/include/osmocom/gsm/gsm0808.h</span><br><span>index 2a26fb5..20137da 100644</span><br><span>--- a/include/osmocom/gsm/gsm0808.h</span><br><span>+++ b/include/osmocom/gsm/gsm0808.h</span><br><span>@@ -60,7 +60,9 @@</span><br><span> struct msgb *gsm0808_create_classmark_request();</span><br><span> struct msgb *gsm0808_create_classmark_update(const uint8_t *cm2, uint8_t cm2_len,</span><br><span>                                              const uint8_t *cm3, uint8_t cm3_len);</span><br><span style="color: hsl(0, 100%, 40%);">-struct msgb *gsm0808_create_sapi_reject(uint8_t link_id);</span><br><span style="color: hsl(120, 100%, 40%);">+struct msgb *gsm0808_create_sapi_reject_cause(uint8_t link_id, uint16_t cause);</span><br><span style="color: hsl(120, 100%, 40%);">+struct msgb *gsm0808_create_sapi_reject(uint8_t link_id)</span><br><span style="color: hsl(120, 100%, 40%);">+        OSMO_DEPRECATED("Use gsm0808_create_sapi_reject_cause() instead");</span><br><span> struct msgb *gsm0808_create_ass(const struct gsm0808_channel_type *ct,</span><br><span>                               const uint16_t *cic,</span><br><span>                                 const struct sockaddr_storage *ss,</span><br><span>diff --git a/src/gsm/gsm0808.c b/src/gsm/gsm0808.c</span><br><span>index a1d567d..a8c702b 100644</span><br><span>--- a/src/gsm/gsm0808.c</span><br><span>+++ b/src/gsm/gsm0808.c</span><br><span>@@ -444,8 +444,9 @@</span><br><span> </span><br><span> /*! Create BSSMAP SAPI N Reject message</span><br><span>  *  \param[in] link_id Link Identifier</span><br><span style="color: hsl(120, 100%, 40%);">+ *  \param[in] cause BSSAP Cause value (see 3GPP TS 48.008, section 3.2.2.5)</span><br><span>  *  \returns callee-allocated msgb with BSSMAP SAPI N Reject message */</span><br><span style="color: hsl(0, 100%, 40%);">-struct msgb *gsm0808_create_sapi_reject(uint8_t link_id)</span><br><span style="color: hsl(120, 100%, 40%);">+struct msgb *gsm0808_create_sapi_reject_cause(uint8_t link_id, uint16_t cause)</span><br><span> {</span><br><span>     struct msgb *msg = msgb_alloc_headroom(BSSMAP_MSG_SIZE, BSSMAP_MSG_HEADROOM,</span><br><span>                                                "bssmap: sapi 'n' reject");</span><br><span>@@ -461,6 +462,16 @@</span><br><span>  return msg;</span><br><span> }</span><br><span> </span><br><span style="color: hsl(120, 100%, 40%);">+/*! Create BSSMAP SAPI N Reject message (with hard-coded cause "BSS not equipped").</span><br><span style="color: hsl(120, 100%, 40%);">+ *  DEPRECATED: use gsm0808_create_sapi_reject_cause() instead.</span><br><span style="color: hsl(120, 100%, 40%);">+ *  \param[in] link_id Link Identifier</span><br><span style="color: hsl(120, 100%, 40%);">+ *  \param[in] cause BSSAP Cause value (see 3GPP TS 48.008, section 3.2.2.5)</span><br><span style="color: hsl(120, 100%, 40%);">+ *  \returns callee-allocated msgb with BSSMAP SAPI N Reject message */</span><br><span style="color: hsl(120, 100%, 40%);">+struct msgb *gsm0808_create_sapi_reject(uint8_t link_id)</span><br><span style="color: hsl(120, 100%, 40%);">+{</span><br><span style="color: hsl(120, 100%, 40%);">+      return gsm0808_create_sapi_reject_cause(link_id, GSM0808_CAUSE_BSS_NOT_EQUIPPED);</span><br><span style="color: hsl(120, 100%, 40%);">+}</span><br><span style="color: hsl(120, 100%, 40%);">+</span><br><span> /*! Create BSSMAP Assignment Request message, 3GPP TS 48.008 ยง3.2.1.1.</span><br><span>  *  This is identical to gsm0808_create_ass(), but adds KC and LCLS IEs.</span><br><span>  *  \param[in] ct Channel Type</span><br><span>diff --git a/src/gsm/libosmogsm.map b/src/gsm/libosmogsm.map</span><br><span>index 713ffe3..4ece107 100644</span><br><span>--- a/src/gsm/libosmogsm.map</span><br><span>+++ b/src/gsm/libosmogsm.map</span><br><span>@@ -190,6 +190,7 @@</span><br><span> gsm0808_create_lcls_notification;</span><br><span> gsm0808_create_reset;</span><br><span> gsm0808_create_reset_ack;</span><br><span style="color: hsl(120, 100%, 40%);">+gsm0808_create_sapi_reject_cause;</span><br><span> gsm0808_create_sapi_reject;</span><br><span> gsm0808_create_handover_required;</span><br><span> gsm0808_create_handover_required_reject;</span><br><span>diff --git a/tests/gsm0808/gsm0808_test.c b/tests/gsm0808/gsm0808_test.c</span><br><span>index 5c1a931..dd2ffbe 100644</span><br><span>--- a/tests/gsm0808/gsm0808_test.c</span><br><span>+++ b/tests/gsm0808/gsm0808_test.c</span><br><span>@@ -374,7 +374,7 @@</span><br><span>  struct msgb *msg;</span><br><span> </span><br><span>        printf("Testing creating SAPI Reject\n");</span><br><span style="color: hsl(0, 100%, 40%);">-     msg = gsm0808_create_sapi_reject(3);</span><br><span style="color: hsl(120, 100%, 40%);">+  msg = gsm0808_create_sapi_reject_cause(3, GSM0808_CAUSE_BSS_NOT_EQUIPPED);</span><br><span>   VERIFY(msg, res, ARRAY_SIZE(res));</span><br><span>   msgb_free(msg);</span><br><span> }</span><br><span></span><br></pre><p>To view, visit <a href="https://gerrit.osmocom.org/c/libosmocore/+/19820">change 19820</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/+/19820"/><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: Iefe5484d0fa02d5722b628b1dc237d51d3fb1a9b </div>
<div style="display:none"> Gerrit-Change-Number: 19820 </div>
<div style="display:none"> Gerrit-PatchSet: 1 </div>
<div style="display:none"> Gerrit-Owner: fixeria <vyanitskiy@sysmocom.de> </div>
<div style="display:none"> Gerrit-MessageType: newchange </div>