laforge has submitted this change. ( 
https://gerrit.osmocom.org/c/libosmocore/+/18230 )

Change subject: gsm0808_utils: Fix gsm0808_cause_class() function
......................................................................

gsm0808_utils: Fix gsm0808_cause_class() function

Cause class is in bits 5-7 of the cause value.
For the cause value 0x52 old version returned 0xa instead of
a correct 0x5.

See section 3.2.2.5 Cause of TS 08.08 for the details.

Change-Id: I46646740c5daaafe20123e709f26dd1d2c1b6f8d
---
M include/osmocom/gsm/gsm0808_utils.h
1 file changed, 1 insertion(+), 1 deletion(-)

Approvals:
  Jenkins Builder: Verified
  laforge: Looks good to me, approved



diff --git a/include/osmocom/gsm/gsm0808_utils.h 
b/include/osmocom/gsm/gsm0808_utils.h
index 1cdca8c..a8852e4 100644
--- a/include/osmocom/gsm/gsm0808_utils.h
+++ b/include/osmocom/gsm/gsm0808_utils.h
@@ -145,7 +145,7 @@
 /*! \returns 3GPP TS 08.08 §3.2.2.5 Class of a given Cause */
 static inline enum gsm0808_cause_class gsm0808_cause_class(enum gsm0808_cause 
cause)
 {
-       return (cause << 1) >> 4;
+       return (cause >> 4) & 0x7;
 }

 /*! \returns true if 3GPP TS 08.08 §3.2.2.5 Class has extended bit set */

--
To view, visit https://gerrit.osmocom.org/c/libosmocore/+/18230
To unsubscribe, or for help writing mail filters, visit 
https://gerrit.osmocom.org/settings

Gerrit-Project: libosmocore
Gerrit-Branch: master
Gerrit-Change-Id: I46646740c5daaafe20123e709f26dd1d2c1b6f8d
Gerrit-Change-Number: 18230
Gerrit-PatchSet: 1
Gerrit-Owner: ipse <alexander.cheme...@gmail.com>
Gerrit-Reviewer: Jenkins Builder
Gerrit-Reviewer: laforge <lafo...@osmocom.org>
Gerrit-MessageType: merged

Reply via email to