aboutsummaryrefslogtreecommitdiffstats
path: root/include
diff options
context:
space:
mode:
authorNeels Hofmeyr <nhofmeyr@sysmocom.de>2016-08-29 13:18:56 +0200
committerNeels Hofmeyr <nhofmeyr@sysmocom.de>2016-08-29 13:56:17 +0200
commit0318f6b6cae7a3f2d786a1caee519241d81d6745 (patch)
tree2a9209f7c43ad2c543a19ef2c0cb70647523dbfe /include
parentb7f191febb639d917b5f4290c73cb1620d9cb2f4 (diff)
IuPS: add GMM Service Request related constants and value_str
Diffstat (limited to 'include')
-rw-r--r--include/osmocom/gsm/protocol/gsm_04_08_gprs.h16
1 files changed, 16 insertions, 0 deletions
diff --git a/include/osmocom/gsm/protocol/gsm_04_08_gprs.h b/include/osmocom/gsm/protocol/gsm_04_08_gprs.h
index af828fb7..cda1e48b 100644
--- a/include/osmocom/gsm/protocol/gsm_04_08_gprs.h
+++ b/include/osmocom/gsm/protocol/gsm_04_08_gprs.h
@@ -73,6 +73,11 @@ extern const struct value_string *gprs_det_t_mt_strs;
extern const struct value_string *gprs_upd_t_strs;
+/* Table 10.4 in 3GPP TS 24.008 (successor to 04.08) */
+#define GSM48_MT_GMM_SERVICE_REQ 0x0c
+#define GSM48_MT_GMM_SERVICE_ACK 0x0d
+#define GSM48_MT_GMM_SERVICE_REJ 0x0e
+
enum gsm48_gprs_ie_mm {
GSM48_IE_GMM_CIPH_CKSN = 0x08, /* 10.5.1.2 */
GSM48_IE_GMM_TIMER_READY = 0x17, /* 10.5.7.3 */
@@ -365,6 +370,17 @@ enum gsm48_qos_sdu_err {
GSM48_QOS_SERR_1e_1 = 0x07,
};
+/* 3GPP 24.008 / Chapter 10.5.5.20 / Table 10.5.153a */
+enum gsm48_gmm_service_type {
+ GPRS_SERVICE_T_SIGNALLING = 0x00,
+ GPRS_SERVICE_T_DATA = 0x01,
+ GPRS_SERVICE_T_PAGING_RESP = 0x02,
+ GPRS_SERVICE_T_MBMS_MC_SERV = 0x03,
+ GPRS_SERVICE_T_MBMS_BC_SERV = 0x04,
+};
+
+extern const struct value_string *gprs_service_t_strs;
+
bool gprs_ms_net_cap_gea_supported(const uint8_t *ms_net_cap, uint8_t cap_len,
enum gprs_ciph_algo gea);