pespin has uploaded this change for review. (
https://gerrit.osmocom.org/c/libosmo-gprs/+/33001 )
Change subject: gmm: Implement rx GMM STATUS msg
......................................................................
gmm: Implement rx GMM STATUS msg
Change-Id: I46719a3bf6d5e93e25f41f01f5c2ab889ff62803
---
M src/gmm/gmm.c
1 file changed, 29 insertions(+), 0 deletions(-)
git pull ssh://gerrit.osmocom.org:29418/libosmo-gprs refs/changes/01/33001/1
diff --git a/src/gmm/gmm.c b/src/gmm/gmm.c
index be1ea8c..ac62bbb 100644
--- a/src/gmm/gmm.c
+++ b/src/gmm/gmm.c
@@ -1220,6 +1220,23 @@
return rc;
}
+/* Rx GMM Status, 9.4.18 */
+static int gprs_gmm_rx_status(struct gprs_gmm_entity *gmme, struct gsm48_hdr *gh,
unsigned int len)
+{
+ enum gsm48_gmm_cause cause;
+
+ if (len < sizeof(struct gsm48_hdr) + 1) {
+ LOGGMME(gmme, LOGL_ERROR, "Rx GMM IDENTITY REQUEST with wrong size %u\n",
len);
+ return -EINVAL;
+ }
+
+ cause = gh->data[0];
+ LOGGMME(gmme, LOGL_INFO, "Rx GMM STATUS cause=0x%02x '%s'\n",
+ cause, get_value_string(gsm48_gmm_cause_names, cause));
+
+ return 0;
+}
+
/* Rx GPRS Mobility Management. */
int gprs_gmm_rx(struct gprs_gmm_entity *gmme, struct gsm48_hdr *gh, unsigned int len)
{
@@ -1247,6 +1264,9 @@
case GSM48_MT_GMM_AUTH_CIPH_REQ:
rc = gprs_gmm_rx_auth_ciph_req(gmme, gh, len);
break;
+ case GSM48_MT_GMM_STATUS:
+ rc = gprs_gmm_rx_status(gmme, gh, len);
+ break;
default:
LOGGMME(gmme, LOGL_ERROR,
"Rx GMM message not implemented! type=%u len=%u\n",
--
To view, visit
https://gerrit.osmocom.org/c/libosmo-gprs/+/33001
To unsubscribe, or for help writing mail filters, visit
https://gerrit.osmocom.org/settings
Gerrit-Project: libosmo-gprs
Gerrit-Branch: master
Gerrit-Change-Id: I46719a3bf6d5e93e25f41f01f5c2ab889ff62803
Gerrit-Change-Number: 33001
Gerrit-PatchSet: 1
Gerrit-Owner: pespin <pespin(a)sysmocom.de>
Gerrit-MessageType: newchange