libosmogsm  1.7.0
Osmocom GSM library
gsm_29_118.h
Go to the documentation of this file.
1 #pragma once
2 
3 #include <osmocom/core/utils.h>
4 
5 /* TS 29.118 Section 9.2 */
7  /* unassigned */
10  /* unassigned */
30  /* unassigned */
33  /* unassigned */
35  /* unassigned */
37 };
38 extern const struct value_string sgsap_msg_type_names[];
39 static inline const char *sgsap_msg_type_name(enum sgsap_msg_type msgt) {
41 }
42 
43 /* TS 29.118 Section 9.3 */
44 enum sgsap_iei {
45  SGSAP_IE_IMSI = 0x01,
47  SGSAP_IE_TMSI = 0x03,
48  SGSAP_IE_LAI = 0x04,
64  SGSAP_IE_CLI = 0x1c,
71  SGSAP_IE_TAI = 0x23,
77 };
78 extern const struct value_string sgsap_iei_names[];
79 static inline const char *sgsap_iei_name(enum sgsap_iei iei) {
80  return get_value_string(sgsap_iei_names, iei);
81 }
82 
83 /* TS 29.118 Section 9.4.2 */
87 };
88 extern const struct value_string sgsap_eps_lu_type_names[];
89 static inline const char *sgsap_eps_lu_type_name(enum sgsap_eps_lu_type lut) {
91 }
92 
93 /* TS 29.118 Section 9.4.7 */
98 };
99 extern const struct value_string sgsap_ismi_det_eps_type_names[];
100 static inline const char *sgsap_imsi_det_eps_type_name(enum sgsap_imsi_det_eps_type idt) {
102 }
103 
104 /* TS 29.118 Section 9.4.8 */
109 };
110 extern const struct value_string sgsap_ismi_det_noneps_type_names[];
111 static inline const char *sgsap_imsi_det_noneps_type_name(enum sgsap_imsi_det_noneps_type idt) {
113 }
114 
115 /* TS 29.118 Section 9.4.17 */
119 };
120 extern const struct value_string sgsap_service_ind_names[];
121 static inline const char *sgsap_service_ind_name(enum sgsap_service_ind si) {
123 }
124 
125 /* TS 29.118 Section 9.4.18 */
141 };
142 extern const struct value_string sgsap_sgs_cause_names[];
143 static inline const char *sgsap_sgs_cause_name(enum sgsap_sgs_cause cause) {
145 }
146 
147 /* TS 29.118 Section 9.4.21c */
151 };
152 extern const struct value_string sgsap_ue_emm_mode_names[];
153 static inline const char *sgsap_ue_emm_mode_name(enum sgsap_ue_emm_mode mode) {
155 }
156 
157 /* TS 29.118 Section 10.1 Table 10.1.2 */
158 #define SGS_TS5_DEFAULT 10 /* Guards the Paging Procedure at the VLR */
159 #define SGS_TS6_2_DEFAULT 40 /* Guards the TMSI reallocation procedure */
160 #define SGS_TS7_DEFAULT 4 /* Guards the non-EPS alert procedure */
161 #define SGS_TS11_DEFAULT 4 /* Guards the VLR reset procedure */
162 #define SGS_TS14_DEFAULT 10 /* Guards the UE fallback to UTRAN/GERAN */
163 #define SGS_TS15_DEFAULT 10 /* Guards the MO UE fallback to UTRAN/GERAN */
164 
165 /* TS 29.118 Section 10.2 Table 10.2.1 */
166 #define SGS_NS7_DEFAULT 2
167 #define SGS_NS11_DEFAULT 2
168 /* TS 29.118 Section 10.2 Table 10.2.2 */
169 #define SGS_NS8_DEFAULT 2
170 #define SGS_NS9_DEFAULT 2
171 #define SGS_NS10_DEFAULT 2
172 #define SGS_NS12_DEFAULT 2
173 
174 /* TS 29.118 Section 6.3 */
175 #define SGS_PORT_DEFAULT 29118
176 
177 /* TS 29.118 Section 9.4.13 MME Name */
178 #define SGS_MME_NAME_LEN 55
179 
180 /* TS 29.118 Section 9.4.22 VLR name
181  * See also: RFC1123 Section 2.1 Host Names and Numbers */
182 #define SGS_VLR_NAME_MAXLEN 255
183 
184 extern const struct tlv_definition sgsap_ie_tlvdef;
Definition: gsm_29_118.h:67
Definition: gsm_29_118.h:106
sgsap_msg_type
Definition: gsm_29_118.h:6
Definition: gsm_29_118.h:46
Definition: gsm_29_118.h:8
Definition: gsm_29_118.h:97
Definition: gsm_29_118.h:138
Definition: gsm_29_118.h:22
const struct tlv_definition sgsap_ie_tlvdef
Definition: gsm29118.c:146
Definition: gsm_29_118.h:74
const char * get_value_string(const struct value_string *vs, uint32_t val)
Definition: gsm_29_118.h:50
Definition: gsm_29_118.h:49
Definition: gsm_29_118.h:86
Definition: gsm_29_118.h:133
Definition: gsm_29_118.h:150
Definition: gsm_29_118.h:53
Definition: gsm_29_118.h:17
static const char * sgsap_eps_lu_type_name(enum sgsap_eps_lu_type lut)
Definition: gsm_29_118.h:89
Definition: gsm_29_118.h:16
Definition: gsm_29_118.h:54
Definition: gsm_29_118.h:9
Definition: gsm_29_118.h:65
Definition: gsm_29_118.h:19
const struct value_string sgsap_msg_type_names[]
Definition: gsm29118.c:27
uint8_t cause
Definition: gsm_04_08.h:768
const struct value_string sgsap_ismi_det_noneps_type_names[]
Definition: gsm29118.c:105
Definition: gsm_29_118.h:135
Definition: gsm_29_118.h:21
Definition: gsm_29_118.h:15
Definition: gsm_29_118.h:58
Definition: gsm_29_118.h:107
Definition: gsm_29_118.h:52
Definition: gsm_29_118.h:76
Definition: gsm_29_118.h:69
Definition: gsm_29_118.h:73
Definition: gsm_29_118.h:134
Definition: gsm_29_118.h:140
const struct value_string sgsap_sgs_cause_names[]
Definition: gsm29118.c:121
const struct value_string sgsap_eps_lu_type_names[]
Definition: gsm29118.c:92
Definition: gsm_29_118.h:31
Definition: gsm_29_118.h:26
Definition: gsm_29_118.h:96
Definition: gsm_29_118.h:24
Definition: gsm_29_118.h:28
Definition: gsm_29_118.h:27
sgsap_imsi_det_noneps_type
Definition: gsm_29_118.h:105
Definition: gsm_29_118.h:131
Definition: gsm_29_118.h:57
Definition: gsm_29_118.h:47
Definition: gsm_29_118.h:136
uint8_t iei
Definition: gsm_08_58.h:532
const struct value_string sgsap_service_ind_names[]
Definition: gsm29118.c:115
Definition: gsm_29_118.h:20
Definition: gsm_29_118.h:11
static const char * sgsap_imsi_det_noneps_type_name(enum sgsap_imsi_det_noneps_type idt)
Definition: gsm_29_118.h:111
sgsap_service_ind
Definition: gsm_29_118.h:116
Definition: gsm_29_118.h:14
Definition: gsm_29_118.h:45
Definition: gsm_29_118.h:36
Definition: gsm_29_118.h:66
sgsap_iei
Definition: gsm_29_118.h:44
Definition: gsm_29_118.h:108
static const char * sgsap_iei_name(enum sgsap_iei iei)
Definition: gsm_29_118.h:79
Definition: gsm_29_118.h:70
Definition: gsm_29_118.h:132
Definition: gsm_29_118.h:68
uint8_t mode
Definition: gsm_04_08.h:690
Definition: gsm_29_118.h:59
Definition: gsm_29_118.h:149
const struct value_string sgsap_ismi_det_eps_type_names[]
Definition: gsm29118.c:98
Definition: gsm_29_118.h:62
sgsap_imsi_det_eps_type
Definition: gsm_29_118.h:94
Definition: gsm_29_118.h:63
static const char * sgsap_msg_type_name(enum sgsap_msg_type msgt)
Definition: gsm_29_118.h:39
sgsap_sgs_cause
Definition: gsm_29_118.h:126
Definition: gsm_29_118.h:130
Definition: gsm_29_118.h:71
Definition: gsm_29_118.h:55
Definition: gsm_29_118.h:12
sgsap_ue_emm_mode
Definition: gsm_29_118.h:148
Definition: gsm_29_118.h:95
Definition: gsm_29_118.h:128
static const char * sgsap_imsi_det_eps_type_name(enum sgsap_imsi_det_eps_type idt)
Definition: gsm_29_118.h:100
const struct value_string sgsap_ue_emm_mode_names[]
Definition: gsm29118.c:140
Definition: gsm_29_118.h:51
Definition of All 256 IE / TLV.
Definition: tlv.h:517
static const char * sgsap_service_ind_name(enum sgsap_service_ind si)
Definition: gsm_29_118.h:121
Definition: gsm_29_118.h:118
Definition: gsm_29_118.h:56
Definition: gsm_29_118.h:72
const struct value_string sgsap_iei_names[]
Definition: gsm29118.c:56
Definition: gsm_29_118.h:32
Definition: gsm_29_118.h:23
Definition: gsm_29_118.h:64
Definition: gsm_29_118.h:75
static const char * sgsap_ue_emm_mode_name(enum sgsap_ue_emm_mode mode)
Definition: gsm_29_118.h:153
Definition: gsm_29_118.h:34
Definition: gsm_29_118.h:48
Definition: gsm_29_118.h:25
Definition: gsm_29_118.h:85
Definition: gsm_29_118.h:117
Definition: gsm_29_118.h:61
Definition: gsm_29_118.h:60
Definition: gsm_29_118.h:127
Definition: gsm_29_118.h:18
Definition: gsm_29_118.h:137
sgsap_eps_lu_type
Definition: gsm_29_118.h:84
static const char * sgsap_sgs_cause_name(enum sgsap_sgs_cause cause)
Definition: gsm_29_118.h:143
Definition: gsm_29_118.h:29
Definition: gsm_29_118.h:129
Definition: gsm_29_118.h:139
Definition: gsm_29_118.h:13