libosmogsm 1.10.0.34-a0630.202411242026
Osmocom GSM library
gsm_04_08_gprs.h
Go to the documentation of this file.
3#pragma once
4
5#include <stdint.h>
6#include <stdbool.h>
10
11/* Table 10.4 / 10.4a, GPRS Mobility Management (GMM) */
12#define GSM48_MT_GMM_ATTACH_REQ 0x01
13#define GSM48_MT_GMM_ATTACH_ACK 0x02
14#define GSM48_MT_GMM_ATTACH_COMPL 0x03
15#define GSM48_MT_GMM_ATTACH_REJ 0x04
16#define GSM48_MT_GMM_DETACH_REQ 0x05
17#define GSM48_MT_GMM_DETACH_ACK 0x06
18
19#define GSM48_MT_GMM_RA_UPD_REQ 0x08
20#define GSM48_MT_GMM_RA_UPD_ACK 0x09
21#define GSM48_MT_GMM_RA_UPD_COMPL 0x0a
22#define GSM48_MT_GMM_RA_UPD_REJ 0x0b
23
24#define GSM48_MT_GMM_PTMSI_REALL_CMD 0x10
25#define GSM48_MT_GMM_PTMSI_REALL_COMPL 0x11
26#define GSM48_MT_GMM_AUTH_CIPH_REQ 0x12
27#define GSM48_MT_GMM_AUTH_CIPH_RESP 0x13
28#define GSM48_MT_GMM_AUTH_CIPH_REJ 0x14
29#define GSM48_MT_GMM_AUTH_CIPH_FAIL 0x1C
30#define GSM48_MT_GMM_ID_REQ 0x15
31#define GSM48_MT_GMM_ID_RESP 0x16
32#define GSM48_MT_GMM_STATUS 0x20
33#define GSM48_MT_GMM_INFO 0x21
34
35/* Table 10.4a, GPRS Session Management (GSM) */
36#define GSM48_MT_GSM_ACT_PDP_REQ 0x41
37#define GSM48_MT_GSM_ACT_PDP_ACK 0x42
38#define GSM48_MT_GSM_ACT_PDP_REJ 0x43
39#define GSM48_MT_GSM_REQ_PDP_ACT 0x44
40#define GSM48_MT_GSM_REQ_PDP_ACT_REJ 0x45
41#define GSM48_MT_GSM_DEACT_PDP_REQ 0x46
42#define GSM48_MT_GSM_DEACT_PDP_ACK 0x47
43#define GSM48_MT_GSM_ACT_AA_PDP_REQ 0x50
44#define GSM48_MT_GSM_ACT_AA_PDP_ACK 0x51
45#define GSM48_MT_GSM_ACT_AA_PDP_REJ 0x52
46#define GSM48_MT_GSM_DEACT_AA_PDP_REQ 0x53
47#define GSM48_MT_GSM_DEACT_AA_PDP_ACK 0x54
48#define GSM48_MT_GSM_STATUS 0x55
49
50/* Chapter 10.5.5.2 / Table 10.5.135 */
51#define GPRS_ATT_T_ATTACH 1
52#define GPRS_ATT_T_ATT_WHILE_IMSI 2
53#define GPRS_ATT_T_COMBINED 3
54
55extern const struct value_string *gprs_att_t_strs;
56extern const struct value_string gprs_msgt_gmm_names[];
57
58/* Chapter 10.5.5.5 / Table 10.5.138 */
59#define GPRS_DET_T_MO_GPRS 1
60#define GPRS_DET_T_MO_IMSI 2
61#define GPRS_DET_T_MO_COMBINED 3
62/* Network to MS direction */
63#define GPRS_DET_T_MT_REATT_REQ 1
64#define GPRS_DET_T_MT_REATT_NOTREQ 2
65#define GPRS_DET_T_MT_IMSI 3
66
67extern const struct value_string *gprs_det_t_mo_strs;
68extern const struct value_string *gprs_det_t_mt_strs;
69
70/* Chapter 10.5.5.18 / Table 105.150 */
71#define GPRS_UPD_T_RA 0
72#define GPRS_UPD_T_RA_LA 1
73#define GPRS_UPD_T_RA_LA_IMSI_ATT 2
74#define GPRS_UPD_T_PERIODIC 3
75
76extern const struct value_string *gprs_upd_t_strs;
77
78/* Table 10.4 in 3GPP TS 24.008 (successor to 04.08) */
79#define GSM48_MT_GMM_SERVICE_REQ 0x0c
80#define GSM48_MT_GMM_SERVICE_ACK 0x0d
81#define GSM48_MT_GMM_SERVICE_REJ 0x0e
82
84 GSM48_IE_GMM_CIPH_CKSN = 0x08, /* 10.5.1.2 */
85 GSM48_IE_GMM_PTMSI_TYPE = 0x0e, /* 10.5.5.29 */
86 GSM48_IE_GMM_TMSI_BASED_NRI_C = 0x10, /* 10.5.5.31 */
87 GSM48_IE_GMM_TIMER_READY = 0x17, /* 10.5.7.3 */
88 GSM48_IE_GMM_ALLOC_PTMSI = 0x18, /* 10.5.1.4 */
89 GSM48_IE_GMM_PTMSI_SIG = 0x19, /* 10.5.5.8 */
90 GSM48_IE_GMM_ADD_IDENTITY = 0x1a, /* 10.5.1.4 */
91 GSM48_IE_GMM_RAI2 = 0x1b, /* 10.5.5.15a */
92 GSM48_IE_GMM_AUTH_RAND = 0x21, /* 10.5.3.1 */
93 GSM48_IE_GMM_AUTH_SRES = 0x22, /* 10.5.3.2 */
94 GSM48_IE_GMM_IMEISV = 0x23, /* 10.5.1.4 */
95 GSM48_IE_GMM_CAUSE = 0x25, /* 10.5.5.14 */
96 GSM48_IE_GMM_RX_NPDU_NUM_LIST = 0x26, /* 10.5.5.11 */
97 GSM48_IE_GMM_DRX_PARAM = 0x27, /* 10.5.5.6 */
98 GSM48_IE_GMM_AUTN = 0x28, /* 10.5.3.1.1 */
99 GSM48_IE_GMM_AUTH_RES_EXT = 0x29, /* 10.5.3.2.1 */
100 GSM48_IE_GMM_TIMER_T3302 = 0x2A, /* 10.5.7.4 */
101 GSM48_IE_GMM_AUTH_FAIL_PAR = 0x30, /* 10.5.3.2.2 */
102 GSM48_IE_GMM_MS_NET_CAPA = 0x31, /* 10.5.5.12 */
103 GSM48_IE_GMM_PDP_CTX_STATUS = 0x32, /* 10.5.7.1 */
104 GSM48_IE_GMM_PS_LCS_CAPA = 0x33, /* 10.5.5.22 */
105 GSM48_IE_GMM_GMM_MBMS_CTX_ST = 0x35, /* 10.5.7.6 */
106 GSM48_IE_GMM_TIMER_T3346 = 0x3A, /* 10.5.7.4 */
107 GSM48_IE_GMM_UE_NET_CAP = 0x58, /* 10.5.5.26 */
108 GSM48_IE_GMM_VD_PREF_UE_USAGE = 0x5d, /* 10.5.5.28 */
109 GSM48_IE_GMM_NET_FEAT_SUPPORT = 0xB0, /* 10.5.5.23 */
110};
111
113 GSM48_IE_GSM_RADIO_PRIO = 0x08, /* 10.5.7.2 */
114 GSM48_IE_GSM_DEV_PROP = 0x0C, /* 10.5.7.8 */
115 GSM48_IE_GSM_APN = 0x28, /* 10.5.6.1 */
116 GSM48_IE_GSM_PROTO_CONF_OPT = 0x27, /* 10.5.6.3 */
117 GSM48_IE_GSM_PDP_ADDR = 0x2b, /* 10.5.6.4 */
118 GSM48_IE_GSM_AA_TMR = 0x29, /* 10.5.7.3 */
119 GSM48_IE_GSM_QOS = 0x30, /* 10.5.6.5 */
120 GSM48_IE_GSM_TFT = 0x31, /* 10.5.6.12 */
121 GSM48_IE_GSM_LLC_SAPI = 0x32, /* 10.5.6.9 */
122 GSM48_IE_GSM_MBIFOM_CONT = 0x33, /* 10.5.6.21 */
123 GSM48_IE_GSM_PFI = 0x34, /* 10.5.6.11 */
124 GSM48_IE_GSM_NAME_FULL = 0x43, /* 10.5.3.5a */
125 GSM48_IE_GSM_NAME_SHORT = 0x45, /* 10.5.3.5a */
126 GSM48_IE_GSM_TIMEZONE = 0x46, /* 10.5.3.8 */
127 GSM48_IE_GSM_UTC_AND_TZ = 0x47, /* 10.5.3.9 */
128 GSM48_IE_GSM_LSA_ID = 0x48, /* 10.5.3.11 */
129 GSM48_IE_GSM_EXT_QOS = 0x5C, /* 10.5.6.5B */
130 GSM48_IE_GSM_EXT_PROTO_CONF_OPT = 0x7B, /* 10.5.6.3a */
131
132 /* Fake IEs that are not present on the Layer3 air interface,
133 * but which we use to simplify internal APIs */
138};
139
140/* Chapter 9.4.15 / Table 9.4.15 */
142#if OSMO_IS_LITTLE_ENDIAN
143 uint8_t force_stby:4, /* 10.5.5.7 */
144 upd_result:4; /* 10.5.5.17 */
145 uint8_t ra_upd_timer; /* 10.5.7.3 */
146 struct gsm48_ra_id ra_id; /* 10.5.5.15 */
147 uint8_t data[0];
148#elif OSMO_IS_BIG_ENDIAN
149/* auto-generated from the little endian part above (libosmocore/contrib/struct_endianness.py) */
150 uint8_t upd_result:4, force_stby:4;
151 uint8_t ra_upd_timer;
152 struct gsm48_ra_id ra_id;
153 uint8_t data[0];
154#endif
155} __attribute__((packed));
156
157/* Chapter 10.5.7.3 */
164
165#define GPRS_TMR_UNIT_MASK (7 << 5)
166#define GPRS_TMR_FACT_MASK ((1 << 5)-1)
167
168/* Chapter 9.4.2 / Table 9.4.2 */
170#if OSMO_IS_LITTLE_ENDIAN
171 uint8_t att_result:4, /* 10.5.5.7 */
172 force_stby:4; /* 10.5.5.1 */
173 uint8_t ra_upd_timer; /* 10.5.7.3 */
174 uint8_t radio_prio; /* 10.5.7.2 */
175 struct gsm48_ra_id ra_id; /* 10.5.5.15 */
176 uint8_t data[0];
177#elif OSMO_IS_BIG_ENDIAN
178/* auto-generated from the little endian part above (libosmocore/contrib/struct_endianness.py) */
179 uint8_t force_stby:4, att_result:4;
180 uint8_t ra_upd_timer;
181 uint8_t radio_prio;
182 struct gsm48_ra_id ra_id;
183 uint8_t data[0];
184#endif
185} __attribute__((packed));
186
187/* Chapter 9.4.9 / Table 9.4.9 */
189#if OSMO_IS_LITTLE_ENDIAN
190 uint8_t ciph_alg:4, /* 10.5.5.3 */
191 imeisv_req:4; /* 10.5.5.10 */
192 uint8_t force_stby:4, /* 10.5.5.7 */
193 ac_ref_nr:4; /* 10.5.5.19 */
194 uint8_t data[0];
195#elif OSMO_IS_BIG_ENDIAN
196/* auto-generated from the little endian part above (libosmocore/contrib/struct_endianness.py) */
197 uint8_t imeisv_req:4, ciph_alg:4;
198 uint8_t ac_ref_nr:4, force_stby:4;
199 uint8_t data[0];
200#endif
201} __attribute__((packed));
202/* optional: TV RAND, TV CKSN */
203
205#if OSMO_IS_LITTLE_ENDIAN
206 uint8_t ac_ref_nr:4,
207 spare:4;
208 uint8_t data[0];
209#elif OSMO_IS_BIG_ENDIAN
210/* auto-generated from the little endian part above (libosmocore/contrib/struct_endianness.py) */
211 uint8_t spare:4, ac_ref_nr:4;
212 uint8_t data[0];
213#endif
214} __attribute__((packed));
215
216/* Chapter 9.5.1 / Table 9.5.1 */
218 uint8_t req_nsapi;
220 uint8_t data[0];
221} __attribute__((packed));
222
223/* Chapter 10.5.5.14 / Table 10.5.147 */
255};
256
257extern const struct value_string *gsm48_gmm_cause_names;
258
259/* 3GPP TS 24.008 10.5.6.6 / Table 10.5.157 */
288};
289
290extern const struct value_string *gsm48_gsm_cause_names;
291
292/* Section 6.1.2.2: Session management states on the network side */
299};
300
301/* TS 24.008 Table 10.5.155/3GPP */
306};
313};
314/* TS 24.008 10.5.6.4 "Packet data protocol address" value
315 * Note: This can be reused for 3GPP TS 29.060 7.7.27 "End User Address"
316 * with minor changes in the values, like spare being 1111 instead.
317*/
319#if OSMO_IS_LITTLE_ENDIAN
320uint8_t organization:4, /* enum gsm48_pdp_type_org */
321 spare:4; /* 0000 */
322#elif OSMO_IS_BIG_ENDIAN
323/* auto-generated from the little endian part above (libosmocore/contrib/struct_endianness.py) */
324uint8_t spare:4, organization:4;
325#endif
326uint8_t type; /* enum gsm48_pdp_type_nr */
327 union {
328 /* PDP_TYPE_ORG_ETSI */
329 union {
331 /* PDP_TYPE_ORG_IETF */
332 union {
333 /* PDP_TYPE_N_IETF_IPv4 */
334 uint32_t v4;
335
336 /* PDP_TYPE_N_IETF_IPv6 */
337 uint8_t v6[16];
338
339 /* PDP_TYPE_N_IETF_IPv4v6 */
340 struct {
341 uint32_t v4;
342 uint8_t v6[16];
343 } __attribute__ ((packed)) v4v6;
345 };
346} __attribute__ ((packed));
347
348/* Figure 10.5.138/24.008 / Chapter 10.5.6.5 */
354};
355
356/* Figure 10.5.138/24.008 / Chapter 10.5.6.5 */
361};
362
363/* Figure 10.5.138/24.008 / Chapter 10.5.6.5 */
374};
375
376/* Figure 10.5.138/24.008 / Chapter 10.5.6.5 */
397};
398
399/* Figure 10.5.138/24.008 / Chapter 10.5.6.5 */
404};
405
406/* Figure 10.5.138/24.008 / Chapter 10.5.6.5 */
410};
411
412/* Figure 10.5.138/24.008 / Chapter 10.5.6.5 */
418};
419
420/* Figure 10.5.138/24.008 / Chapter 10.5.6.5 */
422 /* values below in 10 octet granularity */
426};
427
428/* Figure 10.5.138/24.008 / Chapter 10.5.6.5 */
437};
438
439/* Figure 10.5.138/24.008 / Chapter 10.5.6.5 */
450};
451
452/* Figure 10.5.138/24.008 / Chapter 10.5.6.5 */
461};
462
463/* 3GPP 24.008 / Chapter 10.5.5.20 / Table 10.5.153a */
470};
471
472extern const struct value_string *gprs_service_t_strs;
473
474bool gprs_ms_net_cap_gea_supported(const uint8_t *ms_net_cap, uint8_t cap_len,
475 enum gprs_ciph_algo gea);
476
477/* Figure 10.5.138/24.008 / Chapter 10.5.6.5 */
478struct gsm48_qos {
479 /* octet 3 */
480 uint8_t reliab_class:3;
481 uint8_t delay_class:3;
482 uint8_t spare:2;
483 /* octet 4 */
484 uint8_t preced_class:3;
485 uint8_t spare2:1;
486 uint8_t peak_tput:4;
487 /* octet 5 */
488 uint8_t mean_tput:5;
489 uint8_t spare3:3;
490 /* octet 6 */
491 uint8_t deliv_err_sdu:3;
492 uint8_t deliv_order:2;
493 uint8_t traf_class:3;
494 /* octet 7 */
496 /* octet 8 */
498 /* octet 9 */
500 /* octet 10 */
501 uint8_t sdu_err_ratio:4;
502 uint8_t resid_ber:4;
503 /* octet 11 */
504 uint8_t handling_prio:2;
505 uint8_t xfer_delay:6;
506 /* octet 12 */
508 /* octet 13 */
510 /* octet 14 */
511 uint8_t src_stats_desc:4;
512 uint8_t sig_ind:1;
513 uint8_t spare5:3;
514 /* octet 15 */
516 /* octet 16 */
518};
519
520/* TS 24.008 Table 10.5.5.29 */
524};
525
gprs_ciph_algo
Definition: gprs_cipher.h:13
const struct value_string * gprs_att_t_strs
Definition: gsm_04_08_gprs.c:182
const struct value_string * gprs_det_t_mt_strs
Definition: gsm_04_08_gprs.c:213
const struct value_string * gsm48_gsm_cause_names
Definition: gsm_04_08_gprs.c:120
bool gprs_ms_net_cap_gea_supported(const uint8_t *ms_net_cap, uint8_t cap_len, enum gprs_ciph_algo gea)
Check if MS supports particular version of GEA by inspecting MS network capability IE specified in 3G...
Definition: gsm_04_08_gprs.c:130
const struct value_string * gprs_upd_t_strs
Definition: gsm_04_08_gprs.c:193
const struct value_string gprs_msgt_gmm_names[]
String names of GMM message types.
Definition: gsm_04_08_gprs.c:150
const struct value_string * gprs_det_t_mo_strs
Definition: gsm_04_08_gprs.c:203
const struct value_string * gsm48_gmm_cause_names
Definition: gsm_04_08_gprs.c:80
const struct value_string * gprs_service_t_strs
Definition: gsm_04_08_gprs.c:225
GSM TS 04.08 definitions.
uint8_t ra_id[6]
Definition: gsm_04_08.h:1
gsm48_qos_peak_tput
Definition: gsm_04_08_gprs.h:364
@ GSM48_QOS_PEAK_TPUT_128000bps
Definition: gsm_04_08_gprs.h:372
@ GSM48_QOS_PEAK_TPUT_256000bps
Definition: gsm_04_08_gprs.h:373
@ GSM48_QOS_PEAK_TPUT_64000bps
Definition: gsm_04_08_gprs.h:371
@ GSM48_QOS_PEAK_TPUT_4000bps
Definition: gsm_04_08_gprs.h:367
@ GSM48_QOS_PEAK_TPUT_2000bps
Definition: gsm_04_08_gprs.h:366
@ GSM48_QOS_PEAK_TPUT_8000bps
Definition: gsm_04_08_gprs.h:368
@ GSM48_QOS_PEAK_TPUT_32000bps
Definition: gsm_04_08_gprs.h:370
@ GSM48_QOS_PEAK_TPUT_16000bps
Definition: gsm_04_08_gprs.h:369
@ GSM48_QOS_PEAK_TPUT_1000bps
Definition: gsm_04_08_gprs.h:365
gsm48_qos_deliv_order
Definition: gsm_04_08_gprs.h:407
@ GSM48_QOS_DO_ORDERED
Definition: gsm_04_08_gprs.h:408
@ GSM48_QOS_DO_UNORDERED
Definition: gsm_04_08_gprs.h:409
gsm48_ptsmi_type
Definition: gsm_04_08_gprs.h:521
@ PTMSI_TYPE_MAPPED
Definition: gsm_04_08_gprs.h:523
@ PTMSI_TYPE_NATIVE
Definition: gsm_04_08_gprs.h:522
gsm48_qos_max_sdu_size
Definition: gsm_04_08_gprs.h:421
@ GSM48_QOS_MAXSDU_1520
Definition: gsm_04_08_gprs.h:425
@ GSM48_QOS_MAXSDU_1510
Definition: gsm_04_08_gprs.h:424
@ GSM48_QOS_MAXSDU_1502
Definition: gsm_04_08_gprs.h:423
gsm48_qos_err_sdu
Definition: gsm_04_08_gprs.h:400
@ GSM48_QOS_ERRSDU_YES
Definition: gsm_04_08_gprs.h:402
@ GSM48_QOS_ERRSDU_NO
Definition: gsm_04_08_gprs.h:403
@ GSM48_QOS_ERRSDU_NODETECT
Definition: gsm_04_08_gprs.h:401
gsm48_qos_resid_ber
Definition: gsm_04_08_gprs.h:440
@ GSM48_QOS_RBER_6e_8
Definition: gsm_04_08_gprs.h:449
@ GSM48_QOS_RBER_1e_5
Definition: gsm_04_08_gprs.h:447
@ GSM48_QOS_RBER_5e_3
Definition: gsm_04_08_gprs.h:443
@ GSM48_QOS_RBER_1e_3
Definition: gsm_04_08_gprs.h:445
@ GSM48_QOS_RBER_1e_4
Definition: gsm_04_08_gprs.h:446
@ GSM48_QOS_RBER_1e_2
Definition: gsm_04_08_gprs.h:442
@ GSM48_QOS_RBER_5e_2
Definition: gsm_04_08_gprs.h:441
@ GSM48_QOS_RBER_4e_3
Definition: gsm_04_08_gprs.h:444
@ GSM48_QOS_RBER_1e_6
Definition: gsm_04_08_gprs.h:448
gsm48_qos_preced_class
Definition: gsm_04_08_gprs.h:357
@ GSM48_QOS_PC_NORMAL
Definition: gsm_04_08_gprs.h:359
@ GSM48_QOS_PC_HIGH
Definition: gsm_04_08_gprs.h:358
@ GSM48_QOS_PC_LOW
Definition: gsm_04_08_gprs.h:360
gsm48_qos_traf_class
Definition: gsm_04_08_gprs.h:413
@ GSM48_QOS_TC_STREAMING
Definition: gsm_04_08_gprs.h:415
@ GSM48_QOS_TC_INTERACTIVE
Definition: gsm_04_08_gprs.h:416
@ GSM48_QOS_TC_BACKGROUND
Definition: gsm_04_08_gprs.h:417
@ GSM48_QOS_TC_CONVERSATIONAL
Definition: gsm_04_08_gprs.h:414
gsm48_gmm_cause
Definition: gsm_04_08_gprs.h:224
@ GMM_CAUSE_NO_PDP_ACTIVATED
Definition: gsm_04_08_gprs.h:246
@ GMM_CAUSE_MAC_FAIL
Definition: gsm_04_08_gprs.h:240
@ GMM_CAUSE_NOT_AUTH_FOR_CSG
Definition: gsm_04_08_gprs.h:244
@ GMM_CAUSE_GPRS_NOTALLOWED
Definition: gsm_04_08_gprs.h:229
@ GMM_CAUSE_MSGT_INCOMP_P_STATE
Definition: gsm_04_08_gprs.h:250
@ GMM_CAUSE_MSGT_NOTEXIST_NOTIMPL
Definition: gsm_04_08_gprs.h:249
@ GMM_CAUSE_MSG_INCOMP_P_STATE
Definition: gsm_04_08_gprs.h:253
@ GMM_CAUSE_INV_MAND_INFO
Definition: gsm_04_08_gprs.h:248
@ GMM_CAUSE_IMPL_DETACHED
Definition: gsm_04_08_gprs.h:232
@ GMM_CAUSE_GSM_AUTH_UNACCEPT
Definition: gsm_04_08_gprs.h:243
@ GMM_CAUSE_MSC_TEMP_NOTREACH
Definition: gsm_04_08_gprs.h:238
@ GMM_CAUSE_LA_NOTALLOWED
Definition: gsm_04_08_gprs.h:234
@ GMM_CAUSE_NO_SUIT_CELL_IN_LA
Definition: gsm_04_08_gprs.h:237
@ GMM_CAUSE_ROAMING_NOTALLOWED
Definition: gsm_04_08_gprs.h:235
@ GMM_CAUSE_ILLEGAL_ME
Definition: gsm_04_08_gprs.h:228
@ GMM_CAUSE_MS_ID_NOT_DERIVED
Definition: gsm_04_08_gprs.h:231
@ GMM_CAUSE_ILLEGAL_MS
Definition: gsm_04_08_gprs.h:226
@ GMM_CAUSE_GPRS_OTHER_NOTALLOWED
Definition: gsm_04_08_gprs.h:230
@ GMM_CAUSE_PLMN_NOTALLOWED
Definition: gsm_04_08_gprs.h:233
@ GMM_CAUSE_NO_GPRS_PLMN
Definition: gsm_04_08_gprs.h:236
@ GMM_CAUSE_PROTO_ERR_UNSPEC
Definition: gsm_04_08_gprs.h:254
@ GMM_CAUSE_SEM_INCORR_MSG
Definition: gsm_04_08_gprs.h:247
@ GMM_CAUSE_CONGESTION
Definition: gsm_04_08_gprs.h:242
@ GMM_CAUSE_IMEI_NOT_ACCEPTED
Definition: gsm_04_08_gprs.h:227
@ GMM_CAUSE_IMSI_UNKNOWN
Definition: gsm_04_08_gprs.h:225
@ GMM_CAUSE_SMS_VIA_GPRS_IN_RA
Definition: gsm_04_08_gprs.h:245
@ GMM_CAUSE_NET_FAIL
Definition: gsm_04_08_gprs.h:239
@ GMM_CAUSE_SYNC_FAIL
Definition: gsm_04_08_gprs.h:241
@ GMM_CAUSE_IE_NOTEXIST_NOTIMPL
Definition: gsm_04_08_gprs.h:251
@ GMM_CAUSE_COND_IE_ERR
Definition: gsm_04_08_gprs.h:252
gsm48_gsm_cause
Definition: gsm_04_08_gprs.h:260
@ GSM_CAUSE_INVALID_TRANS_ID
Definition: gsm_04_08_gprs.h:279
@ GSM_CAUSE_MSGT_NOTEXIST_NOTIMPL
Definition: gsm_04_08_gprs.h:282
@ GSM_CAUSE_SERV_OPT_NOTSUPP
Definition: gsm_04_08_gprs.h:270
@ GSM_CAUSE_REACT_RQD
Definition: gsm_04_08_gprs.h:277
@ GSM_CAUSE_MSGT_INCOMP_P_STATE
Definition: gsm_04_08_gprs.h:283
@ GSM_CAUSE_NSAPI_IN_USE
Definition: gsm_04_08_gprs.h:273
@ GSM_CAUSE_NET_FAIL
Definition: gsm_04_08_gprs.h:276
@ GSM_CAUSE_INSUFF_RSRC
Definition: gsm_04_08_gprs.h:264
@ GSM_CAUSE_ACT_REJ_UNSPEC
Definition: gsm_04_08_gprs.h:269
@ GSM_CAUSE_AUTH_FAILED
Definition: gsm_04_08_gprs.h:267
@ GSM_CAUSE_MISSING_APN
Definition: gsm_04_08_gprs.h:265
@ GSM_CAUSE_OPER_DET_BARR
Definition: gsm_04_08_gprs.h:261
@ GSM_CAUSE_UNKNOWN_PDP
Definition: gsm_04_08_gprs.h:266
@ GSM_CAUSE_QOS_NOT_ACCEPTED
Definition: gsm_04_08_gprs.h:275
@ GSM_CAUSE_FEATURE_NOTSUPP
Definition: gsm_04_08_gprs.h:278
@ GSM_CAUSE_PROTO_ERR_UNSPEC
Definition: gsm_04_08_gprs.h:287
@ GSM_CAUSE_LLC_SNDCP_FAIL
Definition: gsm_04_08_gprs.h:263
@ GSM_CAUSE_INV_MAND_INFO
Definition: gsm_04_08_gprs.h:281
@ GSM_CAUSE_SERV_OPT_TEMP_OOO
Definition: gsm_04_08_gprs.h:272
@ GSM_CAUSE_SEM_INCORR_MSG
Definition: gsm_04_08_gprs.h:280
@ GSM_CAUSE_IE_NOTEXIST_NOTIMPL
Definition: gsm_04_08_gprs.h:284
@ GSM_CAUSE_ACT_REJ_GGSN
Definition: gsm_04_08_gprs.h:268
@ GSM_CAUSE_COND_IE_ERR
Definition: gsm_04_08_gprs.h:285
@ GSM_CAUSE_REQ_SERV_OPT_NOTSUB
Definition: gsm_04_08_gprs.h:271
@ GSM_CAUSE_MBMS_CAP_INSUF
Definition: gsm_04_08_gprs.h:262
@ GSM_CAUSE_DEACT_REGULAR
Definition: gsm_04_08_gprs.h:274
@ GSM_CAUSE_MSG_INCOMP_P_STATE
Definition: gsm_04_08_gprs.h:286
gsm48_qos_max_bitrate
Definition: gsm_04_08_gprs.h:429
@ GSM48_QOS_MBRATE_576k
Definition: gsm_04_08_gprs.h:434
@ GSM48_QOS_MBRATE_568k
Definition: gsm_04_08_gprs.h:433
@ GSM48_QOS_MBRATE_64k
Definition: gsm_04_08_gprs.h:432
@ GSM48_QOS_MBRATE_63k
Definition: gsm_04_08_gprs.h:431
@ GSM48_QOS_MBRATE_0k
Definition: gsm_04_08_gprs.h:436
@ GSM48_QOS_MBRATE_1k
Definition: gsm_04_08_gprs.h:430
@ GSM48_QOS_MBRATE_8640k
Definition: gsm_04_08_gprs.h:435
gsm48_pdp_state
Definition: gsm_04_08_gprs.h:293
@ PDP_S_INACTIVE_PENDING
Definition: gsm_04_08_gprs.h:297
@ PDP_S_ACTIVE_PENDING
Definition: gsm_04_08_gprs.h:295
@ PDP_S_ACTIVE
Definition: gsm_04_08_gprs.h:296
@ PDP_S_INACTIVE
Definition: gsm_04_08_gprs.h:294
@ PDP_S_MODIFY_PENDING
Definition: gsm_04_08_gprs.h:298
gsm48_qos_sdu_err
Definition: gsm_04_08_gprs.h:453
@ GSM48_QOS_SERR_1e_3
Definition: gsm_04_08_gprs.h:456
@ GSM48_QOS_SERR_1e_5
Definition: gsm_04_08_gprs.h:458
@ GSM48_QOS_SERR_1e_4
Definition: gsm_04_08_gprs.h:457
@ GSM48_QOS_SERR_7e_2
Definition: gsm_04_08_gprs.h:455
@ GSM48_QOS_SERR_1e_1
Definition: gsm_04_08_gprs.h:460
@ GSM48_QOS_SERR_1e_2
Definition: gsm_04_08_gprs.h:454
@ GSM48_QOS_SERR_1e_6
Definition: gsm_04_08_gprs.h:459
gsm48_gprs_ie_sm
Definition: gsm_04_08_gprs.h:112
@ GSM48_IE_GSM_NAME_SHORT
Definition: gsm_04_08_gprs.h:125
@ GSM48_IE_GSM_NAME_FULL
Definition: gsm_04_08_gprs.h:124
@ GSM48_IE_GSM_PDP_ADDR
Definition: gsm_04_08_gprs.h:117
@ GSM48_IE_GSM_EXT_PROTO_CONF_OPT
Definition: gsm_04_08_gprs.h:130
@ GSM48_IE_GSM_AA_TMR
Definition: gsm_04_08_gprs.h:118
@ OSMO_IE_GSM_REQ_PDP_ADDR
Definition: gsm_04_08_gprs.h:136
@ OSMO_IE_GSM_REQ_QOS
Definition: gsm_04_08_gprs.h:135
@ GSM48_IE_GSM_RADIO_PRIO
Definition: gsm_04_08_gprs.h:113
@ OSMO_IE_GSM_SUB_QOS
Definition: gsm_04_08_gprs.h:137
@ GSM48_IE_GSM_APN
Definition: gsm_04_08_gprs.h:115
@ GSM48_IE_GSM_QOS
Definition: gsm_04_08_gprs.h:119
@ GSM48_IE_GSM_MBIFOM_CONT
Definition: gsm_04_08_gprs.h:122
@ GSM48_IE_GSM_TIMEZONE
Definition: gsm_04_08_gprs.h:126
@ OSMO_IE_GSM_CHARG_CHAR
Definition: gsm_04_08_gprs.h:134
@ GSM48_IE_GSM_EXT_QOS
Definition: gsm_04_08_gprs.h:129
@ GSM48_IE_GSM_PROTO_CONF_OPT
Definition: gsm_04_08_gprs.h:116
@ GSM48_IE_GSM_PFI
Definition: gsm_04_08_gprs.h:123
@ GSM48_IE_GSM_DEV_PROP
Definition: gsm_04_08_gprs.h:114
@ GSM48_IE_GSM_UTC_AND_TZ
Definition: gsm_04_08_gprs.h:127
@ GSM48_IE_GSM_LSA_ID
Definition: gsm_04_08_gprs.h:128
@ GSM48_IE_GSM_LLC_SAPI
Definition: gsm_04_08_gprs.h:121
@ GSM48_IE_GSM_TFT
Definition: gsm_04_08_gprs.h:120
gsm48_gprs_tmr_unit
Definition: gsm_04_08_gprs.h:158
@ GPRS_TMR_2SECONDS
Definition: gsm_04_08_gprs.h:159
@ GPRS_TMR_DEACTIVATED
Definition: gsm_04_08_gprs.h:162
@ GPRS_TMR_6MINUTE
Definition: gsm_04_08_gprs.h:161
@ GPRS_TMR_MINUTE
Definition: gsm_04_08_gprs.h:160
gsm48_pdp_type_nr
Definition: gsm_04_08_gprs.h:307
@ PDP_TYPE_N_IETF_IPv4v6
Definition: gsm_04_08_gprs.h:312
@ PDP_TYPE_N_IETF_IPv4
Definition: gsm_04_08_gprs.h:310
@ PDP_TYPE_N_ETSI_RESERVED
Definition: gsm_04_08_gprs.h:308
@ PDP_TYPE_N_ETSI_PPP
Definition: gsm_04_08_gprs.h:309
@ PDP_TYPE_N_IETF_IPv6
Definition: gsm_04_08_gprs.h:311
gsm48_pdp_type_org
Definition: gsm_04_08_gprs.h:302
@ PDP_TYPE_ORG_IETF
Definition: gsm_04_08_gprs.h:304
@ PDP_TYPE_ORG_EMPTY
Definition: gsm_04_08_gprs.h:305
@ PDP_TYPE_ORG_ETSI
Definition: gsm_04_08_gprs.h:303
gsm48_gprs_ie_mm
Definition: gsm_04_08_gprs.h:83
@ GSM48_IE_GMM_CAUSE
Definition: gsm_04_08_gprs.h:95
@ GSM48_IE_GMM_MS_NET_CAPA
Definition: gsm_04_08_gprs.h:102
@ GSM48_IE_GMM_PTMSI_TYPE
Definition: gsm_04_08_gprs.h:85
@ GSM48_IE_GMM_TIMER_T3302
Definition: gsm_04_08_gprs.h:100
@ GSM48_IE_GMM_CIPH_CKSN
Definition: gsm_04_08_gprs.h:84
@ GSM48_IE_GMM_TIMER_READY
Definition: gsm_04_08_gprs.h:87
@ GSM48_IE_GMM_RAI2
Definition: gsm_04_08_gprs.h:91
@ GSM48_IE_GMM_AUTH_FAIL_PAR
Definition: gsm_04_08_gprs.h:101
@ GSM48_IE_GMM_AUTH_RES_EXT
Definition: gsm_04_08_gprs.h:99
@ GSM48_IE_GMM_TMSI_BASED_NRI_C
Definition: gsm_04_08_gprs.h:86
@ GSM48_IE_GMM_GMM_MBMS_CTX_ST
Definition: gsm_04_08_gprs.h:105
@ GSM48_IE_GMM_PS_LCS_CAPA
Definition: gsm_04_08_gprs.h:104
@ GSM48_IE_GMM_UE_NET_CAP
Definition: gsm_04_08_gprs.h:107
@ GSM48_IE_GMM_PDP_CTX_STATUS
Definition: gsm_04_08_gprs.h:103
@ GSM48_IE_GMM_AUTN
Definition: gsm_04_08_gprs.h:98
@ GSM48_IE_GMM_IMEISV
Definition: gsm_04_08_gprs.h:94
@ GSM48_IE_GMM_AUTH_RAND
Definition: gsm_04_08_gprs.h:92
@ GSM48_IE_GMM_TIMER_T3346
Definition: gsm_04_08_gprs.h:106
@ GSM48_IE_GMM_DRX_PARAM
Definition: gsm_04_08_gprs.h:97
@ GSM48_IE_GMM_VD_PREF_UE_USAGE
Definition: gsm_04_08_gprs.h:108
@ GSM48_IE_GMM_PTMSI_SIG
Definition: gsm_04_08_gprs.h:89
@ GSM48_IE_GMM_ADD_IDENTITY
Definition: gsm_04_08_gprs.h:90
@ GSM48_IE_GMM_NET_FEAT_SUPPORT
Definition: gsm_04_08_gprs.h:109
@ GSM48_IE_GMM_AUTH_SRES
Definition: gsm_04_08_gprs.h:93
@ GSM48_IE_GMM_RX_NPDU_NUM_LIST
Definition: gsm_04_08_gprs.h:96
@ GSM48_IE_GMM_ALLOC_PTMSI
Definition: gsm_04_08_gprs.h:88
gsm48_gmm_service_type
Definition: gsm_04_08_gprs.h:464
@ GPRS_SERVICE_T_MBMS_MC_SERV
Definition: gsm_04_08_gprs.h:468
@ GPRS_SERVICE_T_SIGNALLING
Definition: gsm_04_08_gprs.h:465
@ GPRS_SERVICE_T_MBMS_BC_SERV
Definition: gsm_04_08_gprs.h:469
@ GPRS_SERVICE_T_PAGING_RESP
Definition: gsm_04_08_gprs.h:467
@ GPRS_SERVICE_T_DATA
Definition: gsm_04_08_gprs.h:466
uint8_t data[0]
Definition: gsm_04_08_gprs.h:2
gsm48_qos_mean_tput
Definition: gsm_04_08_gprs.h:377
@ GSM48_QOS_MEAN_TPUT_20000bph
Definition: gsm_04_08_gprs.h:385
@ GSM48_QOS_MEAN_TPUT_100kbph
Definition: gsm_04_08_gprs.h:387
@ GSM48_QOS_MEAN_TPUT_2Mbph
Definition: gsm_04_08_gprs.h:391
@ GSM48_QOS_MEAN_TPUT_100bph
Definition: gsm_04_08_gprs.h:378
@ GSM48_QOS_MEAN_TPUT_5Mbph
Definition: gsm_04_08_gprs.h:392
@ GSM48_QOS_MEAN_TPUT_500bph
Definition: gsm_04_08_gprs.h:380
@ GSM48_QOS_MEAN_TPUT_10000bph
Definition: gsm_04_08_gprs.h:384
@ GSM48_QOS_MEAN_TPUT_20Mbph
Definition: gsm_04_08_gprs.h:394
@ GSM48_QOS_MEAN_TPUT_1Mbph
Definition: gsm_04_08_gprs.h:390
@ GSM48_QOS_MEAN_TPUT_50000bph
Definition: gsm_04_08_gprs.h:386
@ GSM48_QOS_MEAN_TPUT_5000bph
Definition: gsm_04_08_gprs.h:383
@ GSM48_QOS_MEAN_TPUT_2000bph
Definition: gsm_04_08_gprs.h:382
@ GSM48_QOS_MEAN_TPUT_BEST_EFFORT
Definition: gsm_04_08_gprs.h:396
@ GSM48_QOS_MEAN_TPUT_50Mbph
Definition: gsm_04_08_gprs.h:395
@ GSM48_QOS_MEAN_TPUT_200kbph
Definition: gsm_04_08_gprs.h:388
@ GSM48_QOS_MEAN_TPUT_1000bph
Definition: gsm_04_08_gprs.h:381
@ GSM48_QOS_MEAN_TPUT_10Mbph
Definition: gsm_04_08_gprs.h:393
@ GSM48_QOS_MEAN_TPUT_200bph
Definition: gsm_04_08_gprs.h:379
@ GSM48_QOS_MEAN_TPUT_500kbph
Definition: gsm_04_08_gprs.h:389
gsm48_qos_reliab_class
Definition: gsm_04_08_gprs.h:349
@ GSM48_QOS_RC_LLC_UN_RLC_UN_DATA_UN
Definition: gsm_04_08_gprs.h:353
@ GSM48_QOS_RC_LLC_UN_RLC_UN_PROT_DATA
Definition: gsm_04_08_gprs.h:352
@ GSM48_QOS_RC_LLC_UN_RLC_ACK_DATA_PROT
Definition: gsm_04_08_gprs.h:351
@ GSM48_QOS_RC_LLC_ACK_RLC_ACK_DATA_PROT
Definition: gsm_04_08_gprs.h:350
enum gsm48_gprs_tmr_unit __attribute__
Definition: gsm_04_08_gprs.h:217
uint8_t req_nsapi
Definition: gsm_04_08_gprs.h:218
uint8_t data[0]
Definition: gsm_04_08_gprs.h:220
uint8_t req_llc_sapi
Definition: gsm_04_08_gprs.h:219
Definition: gsm_04_08_gprs.h:169
Definition: gsm_04_08_gprs.h:188
Definition: gsm_04_08_gprs.h:204
Definition: gsm_04_08_gprs.h:318
union gsm48_pdp_address::@71::@73 etsi
uint8_t type
Definition: gsm_04_08_gprs.h:326
uint32_t v4
Definition: gsm_04_08_gprs.h:334
uint8_t v6[16]
Definition: gsm_04_08_gprs.h:337
union gsm48_pdp_address::@71::@74 ietf
Definition: gsm_04_08_gprs.h:478
uint8_t max_bitrate_up
Definition: gsm_04_08_gprs.h:497
uint8_t deliv_order
Definition: gsm_04_08_gprs.h:492
uint8_t resid_ber
Definition: gsm_04_08_gprs.h:502
uint8_t traf_class
Definition: gsm_04_08_gprs.h:493
uint8_t mean_tput
Definition: gsm_04_08_gprs.h:488
uint8_t deliv_err_sdu
Definition: gsm_04_08_gprs.h:491
uint8_t guar_bitrate_down
Definition: gsm_04_08_gprs.h:509
uint8_t max_bitrate_down_ext
Definition: gsm_04_08_gprs.h:515
uint8_t reliab_class
Definition: gsm_04_08_gprs.h:480
uint8_t max_sdu_size
Definition: gsm_04_08_gprs.h:495
uint8_t spare
Definition: gsm_04_08_gprs.h:482
uint8_t handling_prio
Definition: gsm_04_08_gprs.h:504
uint8_t spare3
Definition: gsm_04_08_gprs.h:489
uint8_t guar_bitrate_down_ext
Definition: gsm_04_08_gprs.h:517
uint8_t xfer_delay
Definition: gsm_04_08_gprs.h:505
uint8_t preced_class
Definition: gsm_04_08_gprs.h:484
uint8_t spare5
Definition: gsm_04_08_gprs.h:513
uint8_t sig_ind
Definition: gsm_04_08_gprs.h:512
uint8_t peak_tput
Definition: gsm_04_08_gprs.h:486
uint8_t src_stats_desc
Definition: gsm_04_08_gprs.h:511
uint8_t sdu_err_ratio
Definition: gsm_04_08_gprs.h:501
uint8_t guar_bitrate_up
Definition: gsm_04_08_gprs.h:507
uint8_t delay_class
Definition: gsm_04_08_gprs.h:481
uint8_t max_bitrate_down
Definition: gsm_04_08_gprs.h:499
uint8_t spare2
Definition: gsm_04_08_gprs.h:485
Definition: gsm_04_08.h:2261
Definition: gsm_04_08_gprs.h:141