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