libosmogsm  0.12.0
Osmocom GSM library
gsm_44_318.h
Go to the documentation of this file.
1 
4 #pragma once
5 
6 #include <stdint.h>
7 
8 /* Table 11.1.1.2.1: Protocol Discriminator */
9 enum gan_pdisc {
13 };
14 
15 /* Table 11.1.1.4.1: Message types for URR */
16 
21 
30 
33 
40 
44 
51 
54 
64 
68 };
69 
70 /* All tables in 10.1.x and 10.2.x / Table 11.2.1 */
71 enum gan_iei {
72  GA_IE_MI = 1,
76  GA_IE_LAC = 5,
89  GA_IE_RAI = 18,
105  GA_IE_PFI = 35,
111  GA_IE_RAC = 41,
153 };
154 
155 /* 11.1.1 GA-RC and GA-CSR Message header IE */
157  uint16_t len;
158 #if OSMO_IS_LITTLE_ENDIAN == 1
159  uint8_t pdisc:4,
160  skip_ind:4;
161 #else
162  uint8_t skip_ind:4,
163  pdisc:4;
164 #endif
165  uint8_t msg_type;
166  uint8_t data[0];
167 } __attribute__((packed));
168 
169 /* 11.2.14.1: GAN Control Channel Description IE */
171 #if OSMO_IS_LITTLE_ENDIAN == 1
172  uint8_t spare:1,
173  ecmc:1,
174  nmo:2,
175  gprs:1,
176  dtm:1,
177  att:1,
178  mscr:1;
179 #else
180  uint8_t mscr:1,
181  att:1,
182  dtm:1,
183  gprs:1,
184  nmo:2,
185  ecmc:1,
186  spare:1;
187 #endif
188  uint8_t t3212;
189  uint8_t rac;
190 #if OSMO_IS_LITTLE_ENDIAN == 1
191  uint8_t sgsnr:1,
192  ecmp:1,
193  re:1,
194  pfcfm:1,
195  tgecs:2,
196  spare2:2;
197 #else
198  uint8_t spare2:2,
199  tgecs:2,
200  pfcfm:1,
201  re:1,
202  ecmp:1,
203  sgsnr:1;
204 #endif
205  uint8_t access_class[2];
206 } __attribute__((packed));
GA_RC_SYNC_INFO
@ GA_RC_SYNC_INFO
Definition: gsm_44_318.h:62
GA_IE_SAMPLE_SIZE
@ GA_IE_SAMPLE_SIZE
Definition: gsm_44_318.h:123
gan_rc_csr_hdr::data
uint8_t data[0]
Definition: gsm_44_318.h:166
gan_cch_desc_ie::re
uint8_t re
Definition: gsm_44_318.h:201
gan_cch_desc_ie::mscr
uint8_t mscr
Definition: gsm_44_318.h:180
GA_MT_CSR_ACT_CHAN
@ GA_MT_CSR_ACT_CHAN
Definition: gsm_44_318.h:34
GA_IE_L3_MSG
@ GA_IE_L3_MSG
Definition: gsm_44_318.h:96
gan_iei
gan_iei
Definition: gsm_44_318.h:71
GA_IE_BCAST_CONTAINER
@ GA_IE_BCAST_CONTAINER
Definition: gsm_44_318.h:141
GA_IE_RAC
@ GA_IE_RAC
Definition: gsm_44_318.h:111
GA_MT_RC_REGISTER_REQUEST
@ GA_MT_RC_REGISTER_REQUEST
Definition: gsm_44_318.h:22
GA_MT_PSR_GPRS_SUSPEND_REQ
@ GA_MT_PSR_GPRS_SUSPEND_REQ
Definition: gsm_44_318.h:61
GA_MT_RC_REGISTER_UPDATE_DL
@ GA_MT_RC_REGISTER_UPDATE_DL
Definition: gsm_44_318.h:28
GA_MT_CSR_PAGING_REQ
@ GA_MT_CSR_PAGING_REQ
Definition: gsm_44_318.h:52
GA_MT_CSR_HO_ACCESS
@ GA_MT_CSR_HO_ACCESS
Definition: gsm_44_318.h:45
GA_IE_RAI
@ GA_IE_RAI
Definition: gsm_44_318.h:89
GA_IE_TU4003_TIMER
@ GA_IE_TU4003_TIMER
Definition: gsm_44_318.h:130
GA_IE_GERAN_CELL_ID_LIST
@ GA_IE_GERAN_CELL_ID_LIST
Definition: gsm_44_318.h:86
GA_MT_RC_DISCOVERY_ACCEPT
@ GA_MT_RC_DISCOVERY_ACCEPT
Definition: gsm_44_318.h:19
GA_IE_MS_RADIO_ID
@ GA_IE_MS_RADIO_ID
Definition: gsm_44_318.h:143
gan_pdisc
gan_pdisc
Definition: gsm_44_318.h:9
GA_IE_CIPH_MAC
@ GA_IE_CIPH_MAC
Definition: gsm_44_318.h:117
GA_IE_RTP_RED_CONF
@ GA_IE_RTP_RED_CONF
Definition: gsm_44_318.h:133
gan_msg_type
gan_msg_type
Definition: gsm_44_318.h:17
GA_IE_GAN_RELEASE_IND
@ GA_IE_GAN_RELEASE_IND
Definition: gsm_44_318.h:73
GA_IE_PDU_IN_ERROR
@ GA_IE_PDU_IN_ERROR
Definition: gsm_44_318.h:122
GA_IE_AP_REG_IND
@ GA_IE_AP_REG_IND
Definition: gsm_44_318.h:138
GA_IE_DEF_GANC_IP
@ GA_IE_DEF_GANC_IP
Definition: gsm_44_318.h:144
GA_IE_CM_ENQ_MASK
@ GA_IE_CM_ENQ_MASK
Definition: gsm_44_318.h:135
GA_MT_CSR_PAGING_RESP
@ GA_MT_CSR_PAGING_RESP
Definition: gsm_44_318.h:53
GA_MT_RC_DEREGISTER
@ GA_MT_RC_DEREGISTER
Definition: gsm_44_318.h:26
GA_PDISC_PSR
@ GA_PDISC_PSR
Definition: gsm_44_318.h:12
gan_cch_desc_ie::ecmp
uint8_t ecmp
Definition: gsm_44_318.h:202
gan_rc_csr_hdr::len
uint16_t len
Definition: gsm_44_318.h:157
GA_IE_RR_STATE
@ GA_IE_RR_STATE
Definition: gsm_44_318.h:88
GA_MT_RC_REGISTER_ACCEPT
@ GA_MT_RC_REGISTER_ACCEPT
Definition: gsm_44_318.h:23
GA_IE_GANC_TCP_PORT
@ GA_IE_GANC_TCP_PORT
Definition: gsm_44_318.h:148
gan_cch_desc_ie::spare2
uint8_t spare2
Definition: gsm_44_318.h:198
GA_IE_SERV_ZONE_INFO
@ GA_IE_SERV_ZONE_INFO
Definition: gsm_44_318.h:132
GA_IE_RTCP_UDP_PORT
@ GA_IE_RTCP_UDP_PORT
Definition: gsm_44_318.h:150
GA_IE_TU3920_TIMER
@ GA_IE_TU3920_TIMER
Definition: gsm_44_318.h:107
GA_IE_MS_CLASSMARK3
@ GA_IE_MS_CLASSMARK3
Definition: gsm_44_318.h:126
GA_IE_LOC_STATUS
@ GA_IE_LOC_STATUS
Definition: gsm_44_318.h:114
GA_IE_CHAN_MODE
@ GA_IE_CHAN_MODE
Definition: gsm_44_318.h:97
GA_MT_CSR_CHAN_MODE_MOD
@ GA_MT_CSR_CHAN_MODE_MOD
Definition: gsm_44_318.h:38
GA_EI_CIPH_MODE_SET
@ GA_EI_CIPH_MODE_SET
Definition: gsm_44_318.h:100
GA_IE_GAN_BAND
@ GA_IE_GAN_BAND
Definition: gsm_44_318.h:90
GA_MT_CSR_UL_QUAL_IND
@ GA_MT_CSR_UL_QUAL_IND
Definition: gsm_44_318.h:47
GA_IE_AP_SERV_NAME
@ GA_IE_AP_SERV_NAME
Definition: gsm_44_318.h:131
gan_cch_desc_ie::gprs
uint8_t gprs
Definition: gsm_44_318.h:183
gan_rc_csr_hdr::skip_ind
uint8_t skip_ind
Definition: gsm_44_318.h:162
GA_IE_PAYLOAD_TYPE
@ GA_IE_PAYLOAD_TYPE
Definition: gsm_44_318.h:124
GA_MT_CSR_REQUEST_ACCEPT
@ GA_MT_CSR_REQUEST_ACCEPT
Definition: gsm_44_318.h:66
GA_MT_CSR_HO_CMD
@ GA_MT_CSR_HO_CMD
Definition: gsm_44_318.h:49
GA_IE_GERAN_CELL_ID
@ GA_IE_GERAN_CELL_ID
Definition: gsm_44_318.h:75
GA_MT_CSR_RELEASE_COMPL
@ GA_MT_CSR_RELEASE_COMPL
Definition: gsm_44_318.h:42
GA_IE_GPRS_IP_ADDR
@ GA_IE_GPRS_IP_ADDR
Definition: gsm_44_318.h:146
GA_MT_CSR_HO_FAIL
@ GA_MT_CSR_HO_FAIL
Definition: gsm_44_318.h:50
GA_PDISC_CSR
@ GA_PDISC_CSR
Definition: gsm_44_318.h:11
gan_cch_desc_ie::t3212
uint8_t t3212
Definition: gsm_44_318.h:188
GA_IE_EST_CAUSE
@ GA_IE_EST_CAUSE
Definition: gsm_44_318.h:120
GA_IE_GERAN_RCV_SIGL_LIST
@ GA_IE_GERAN_RCV_SIGL_LIST
Definition: gsm_44_318.h:151
GA_MT_CSR_CIPH_MODE_COMPL
@ GA_MT_CSR_CIPH_MODE_COMPL
Definition: gsm_44_318.h:32
GA_IE_DEF_GANC_FQDN
@ GA_IE_DEF_GANC_FQDN
Definition: gsm_44_318.h:145
GA_IE_UL_QUAL_IND
@ GA_IE_UL_QUAL_IND
Definition: gsm_44_318.h:103
GA_IE_P_DEACT_CAUSE
@ GA_IE_P_DEACT_CAUSE
Definition: gsm_44_318.h:109
GA_MT_CSR_CM_CHANGE
@ GA_MT_CSR_CM_CHANGE
Definition: gsm_44_318.h:60
gan_cch_desc_ie::ecmc
uint8_t ecmc
Definition: gsm_44_318.h:185
GA_IE_SAPI_ID
@ GA_IE_SAPI_ID
Definition: gsm_44_318.h:119
GA_MT_RC_REGISTER_UPDATE_UL
@ GA_MT_RC_REGISTER_UPDATE_UL
Definition: gsm_44_318.h:27
GA_IE_GPRS_UDP_PORT
@ GA_IE_GPRS_UDP_PORT
Definition: gsm_44_318.h:147
GA_IE_SUSP_CAUSE
@ GA_IE_SUSP_CAUSE
Definition: gsm_44_318.h:106
GA_IE_GARC_GACSR_STATE
@ GA_IE_GARC_GACSR_STATE
Definition: gsm_44_318.h:91
GA_MT_CSR_REQUEST
@ GA_MT_CSR_REQUEST
Definition: gsm_44_318.h:65
GA_IE_REDIR_CTR
@ GA_IE_REDIR_CTR
Definition: gsm_44_318.h:82
GA_IE_GPRS_RESUMPTION
@ GA_IE_GPRS_RESUMPTION
Definition: gsm_44_318.h:101
GA_IE_TLLI
@ GA_IE_TLLI
Definition: gsm_44_318.h:104
GA_MT_CSR_CIPH_MODE_CMD
@ GA_MT_CSR_CIPH_MODE_CMD
Definition: gsm_44_318.h:31
gan_rc_csr_hdr
Definition: gsm_44_318.h:156
GA_MT_CSR_STATUS
@ GA_MT_CSR_STATUS
Definition: gsm_44_318.h:57
gan_cch_desc_ie::access_class
uint8_t access_class[2]
Definition: gsm_44_318.h:205
GA_MT_CSR_DL_DIRECT_XFER
@ GA_MT_CSR_DL_DIRECT_XFER
Definition: gsm_44_318.h:56
GA_IE_DEF_SEGW_FQDN
@ GA_IE_DEF_SEGW_FQDN
Definition: gsm_44_318.h:81
GA_IE_LAC
@ GA_IE_LAC
Definition: gsm_44_318.h:76
GA_IE_GANC_CELL_DESC
@ GA_IE_GANC_CELL_DESC
Definition: gsm_44_318.h:84
GA_IE_GAN_PLMN_LIST
@ GA_IE_GAN_PLMN_LIST
Definition: gsm_44_318.h:139
GA_IE_RESET_IND
@ GA_IE_RESET_IND
Definition: gsm_44_318.h:129
GA_IE_CHAN_NEEDED
@ GA_IE_CHAN_NEEDED
Definition: gsm_44_318.h:121
GA_IE_GERAN_COV_IND
@ GA_IE_GERAN_COV_IND
Definition: gsm_44_318.h:77
gan_cch_desc_ie::att
uint8_t att
Definition: gsm_44_318.h:181
GA_IE_UTRAN_CLASSMARK
@ GA_IE_UTRAN_CLASSMARK
Definition: gsm_44_318.h:134
GA_IE_LLC_PDU
@ GA_IE_LLC_PDU
Definition: gsm_44_318.h:127
GA_MT_RC_REGISTER_REJECT
@ GA_MT_RC_REGISTER_REJECT
Definition: gsm_44_318.h:25
GA_IE_REG_REJ_CAUSE
@ GA_IE_REG_REJ_CAUSE
Definition: gsm_44_318.h:92
GA_MT_CSR_REQUEST_REJECT
@ GA_MT_CSR_REQUEST_REJECT
Definition: gsm_44_318.h:67
GA_IE_GEO_LOC
@ GA_IE_GEO_LOC
Definition: gsm_44_318.h:79
GA_MT_CSR_UL_DIRECT_XFER
@ GA_MT_CSR_UL_DIRECT_XFER
Definition: gsm_44_318.h:55
GA_IE_REQD_QOS
@ GA_IE_REQD_QOS
Definition: gsm_44_318.h:108
GA_IE_RADIO_IE
@ GA_IE_RADIO_IE
Definition: gsm_44_318.h:74
GA_IE_TU3906_TIMER
@ GA_IE_TU3906_TIMER
Definition: gsm_44_318.h:93
GA_MT_RC_KEEPALIVE
@ GA_MT_RC_KEEPALIVE
Definition: gsm_44_318.h:58
GA_MT_CSR_ACT_CHAN_FAIL
@ GA_MT_CSR_ACT_CHAN_FAIL
Definition: gsm_44_318.h:37
gan_cch_desc_ie::dtm
uint8_t dtm
Definition: gsm_44_318.h:182
GA_IE_MULTIRATE_CONF
@ GA_IE_MULTIRATE_CONF
Definition: gsm_44_318.h:125
GA_IE_LOC_BLACKL_IND
@ GA_IE_LOC_BLACKL_IND
Definition: gsm_44_318.h:128
GA_CSR_UTRAN_CM_CHG
@ GA_CSR_UTRAN_CM_CHG
Definition: gsm_44_318.h:63
GA_IE_TU3902_TIMER
@ GA_IE_TU3902_TIMER
Definition: gsm_44_318.h:95
GA_IE_HO_FROM_GAN_CMD
@ GA_IE_HO_FROM_GAN_CMD
Definition: gsm_44_318.h:102
GA_MT_RC_REGISTER_REDIRECT
@ GA_MT_RC_REGISTER_REDIRECT
Definition: gsm_44_318.h:24
GA_IE_AP_LOCATION
@ GA_IE_AP_LOCATION
Definition: gsm_44_318.h:112
GA_IE_MS_CLASSMARK2
@ GA_IE_MS_CLASSMARK2
Definition: gsm_44_318.h:98
GA_MT_RC_DISCOVERY_REQUEST
@ GA_MT_RC_DISCOVERY_REQUEST
Definition: gsm_44_318.h:18
GA_MT_CSR_CM_ENQ
@ GA_MT_CSR_CM_ENQ
Definition: gsm_44_318.h:59
GA_IE_TU3907_TIMER
@ GA_IE_TU3907_TIMER
Definition: gsm_44_318.h:87
gan_cch_desc_ie::tgecs
uint8_t tgecs
Definition: gsm_44_318.h:199
GA_IE_TU4001_TIMER
@ GA_IE_TU4001_TIMER
Definition: gsm_44_318.h:113
GA_IE_CIPH_RESP
@ GA_IE_CIPH_RESP
Definition: gsm_44_318.h:115
GA_IE_UTRAN_CELLID_LIST
@ GA_IE_UTRAN_CELLID_LIST
Definition: gsm_44_318.h:136
GA_IE_SERV_GANC_TBL_IND
@ GA_IE_SERV_GANC_TBL_IND
Definition: gsm_44_318.h:137
gan_rc_csr_hdr::pdisc
uint8_t pdisc
Definition: gsm_44_318.h:163
gan_cch_desc_ie::spare
uint8_t spare
Definition: gsm_44_318.h:186
GA_MT_RC_DISCOVERY_REJECT
@ GA_MT_RC_DISCOVERY_REJECT
Definition: gsm_44_318.h:20
GA_MT_CSR_HO_COMPL
@ GA_MT_CSR_HO_COMPL
Definition: gsm_44_318.h:46
gan_rc_csr_hdr::msg_type
uint8_t msg_type
Definition: gsm_44_318.h:165
gan_cch_desc_ie::pfcfm
uint8_t pfcfm
Definition: gsm_44_318.h:200
GA_IE_3G_CELL_ID
@ GA_IE_3G_CELL_ID
Definition: gsm_44_318.h:142
GA_IE_RTP_UDP_PORT
@ GA_IE_RTP_UDP_PORT
Definition: gsm_44_318.h:149
GA_IE_REQD_GAN_SERV
@ GA_IE_REQD_GAN_SERV
Definition: gsm_44_318.h:140
GA_IE_CIPH_RAND
@ GA_IE_CIPH_RAND
Definition: gsm_44_318.h:116
GA_IE_GANC_CTRL_CH_DESC
@ GA_IE_GANC_CTRL_CH_DESC
Definition: gsm_44_318.h:85
GA_MT_RC_CELL_BCAST_INFO
@ GA_MT_RC_CELL_BCAST_INFO
Definition: gsm_44_318.h:29
GA_MT_CSR_ACT_CHAN_ACK
@ GA_MT_CSR_ACT_CHAN_ACK
Definition: gsm_44_318.h:35
GA_IE_MI
@ GA_IE_MI
Definition: gsm_44_318.h:72
GA_IE_REQD_UL_RATE
@ GA_IE_REQD_UL_RATE
Definition: gsm_44_318.h:110
gan_cch_desc_ie
Definition: gsm_44_318.h:170
GA_MT_CSR_ACT_CHAN_COMPL
@ GA_MT_CSR_ACT_CHAN_COMPL
Definition: gsm_44_318.h:36
__attribute__
struct gan_rc_csr_hdr __attribute__((packed))
gan_cch_desc_ie::nmo
uint8_t nmo
Definition: gsm_44_318.h:184
GA_IE_RR_CAUSE
@ GA_IE_RR_CAUSE
Definition: gsm_44_318.h:99
GA_IE_GAN_CM
@ GA_IE_GAN_CM
Definition: gsm_44_318.h:78
gan_cch_desc_ie::sgsnr
uint8_t sgsnr
Definition: gsm_44_318.h:203
gan_cch_desc_ie::rac
uint8_t rac
Definition: gsm_44_318.h:189
GA_MT_CSR_HO_INFO
@ GA_MT_CSR_HO_INFO
Definition: gsm_44_318.h:48
GA_PDISC_RC
@ GA_PDISC_RC
Definition: gsm_44_318.h:10
GA_IE_DEF_SEGW_IP
@ GA_IE_DEF_SEGW_IP
Definition: gsm_44_318.h:80
GA_MT_CSR_CLEAR_REQ
@ GA_MT_CSR_CLEAR_REQ
Definition: gsm_44_318.h:43
GA_IE_UTRAN_RCV_SIGL_LIST
@ GA_IE_UTRAN_RCV_SIGL_LIST
Definition: gsm_44_318.h:152
GA_IE_PFI
@ GA_IE_PFI
Definition: gsm_44_318.h:105
GA_IE_TU3910_TIMER
@ GA_IE_TU3910_TIMER
Definition: gsm_44_318.h:94
GA_IE_DISCOV_REJ_CAUSE
@ GA_IE_DISCOV_REJ_CAUSE
Definition: gsm_44_318.h:83
GA_MT_CSR_CHAN_MODE_MOD_ACK
@ GA_MT_CSR_CHAN_MODE_MOD_ACK
Definition: gsm_44_318.h:39
GA_IE_CKSN
@ GA_IE_CKSN
Definition: gsm_44_318.h:118
GA_MT_CSR_RELEASE
@ GA_MT_CSR_RELEASE
Definition: gsm_44_318.h:41