libosmogsm  1.4.0.160-7619
Osmocom GSM library
gsm_23_041.h
Go to the documentation of this file.
1 #pragma once
2 
3 #include <osmocom/core/endian.h>
4 
5 /* Section 9.4.1.2: GSM Message Format */
7  uint16_t serial_nr;
8  uint16_t message_id;
9  uint8_t dcs;
10  struct {
11 #if OSMO_IS_LITTLE_ENDIAN
12  uint8_t num_pages:4,
13  page_nr:4;
14 #elif OSMO_IS_BIG_ENDIAN
15 /* auto-generated from the little endian part above (libosmocore/contrib/struct_endianess.py) */
16  uint8_t page_nr:4, num_pages:4;
17 #endif
18  } page_param;
19  uint8_t content[0];
20 } __attribute__ ((packed));
21 
22 /* Section 9.4.1.2.2 Message Identifier */
23 enum {
24  /* 0 - 999: Allocated by GSM AD.26 */
29  /* 1004 - 4095: RFU */
30  /* 4096 - 4223: clear text SIM data download */
31  /* 4224 - 4351: secured SIM data download */
37  /* 4357 - 4359: ETWS RFU */
38  /* 4360 - 4369: RFU */
65  /* 4396 - 4399: RFU CMAS / EU-Alert */
66  /* 4400 - 6399: RFU PWS */
68  /* 6491 - 40959: RFU */
69  /* 40960 - 45055: PLMN operator specific range */
70  /* 45056 - 61439: PLMN operator specific range RFU */
71  /* 61440 - 65534: PLMN operator specific range */
73 };
74 
75 /* Section 9.4.1.3.2 ETWS Primary Notification Message Parameter */
77  uint16_t serial_nr;
78  uint16_t message_id;
79  uint16_t warning_type;
80  uint8_t warning_sec_info[50];
81 } __attribute__ ((packed));
82 
83 
84 /* Section 9.4.2.2 UMTS Message Parameter */
86  uint8_t msg_type; /* as per TS 25.324 */
87  uint16_t message_id;
88  uint16_t serial_nr;
89  uint8_t dcs;
90  uint8_t content[0];
91 } __attribute__ ((packed));
uint8_t msg_type
Definition: gsm_23_041.h:86
Definition: gsm_23_041.h:64
Definition: gsm_23_041.h:47
Definition: gsm_23_041.h:32
Definition: gsm_23_041.h:72
Definition: gsm_23_041.h:36
Definition: gsm_23_041.h:85
uint16_t message_id
Definition: gsm_23_041.h:8
struct gsm23041_msg_param_gsm::@75 page_param
Definition: gsm_23_041.h:52
uint8_t warning_sec_info[50]
Definition: gsm_23_041.h:821
Definition: gsm_23_041.h:42
Definition: gsm_23_041.h:76
Definition: gsm_23_041.h:45
Definition: gsm_23_041.h:44
Definition: gsm_23_041.h:35
Definition: gsm_23_041.h:34
Definition: gsm_23_041.h:62
Definition: gsm_23_041.h:63
uint16_t serial_nr
Definition: gsm_23_041.h:77
uint16_t message_id
Definition: gsm_23_041.h:78
Definition: gsm_23_041.h:39
Definition: gsm_23_041.h:27
uint8_t dcs
Definition: gsm_23_041.h:9
Definition: gsm_23_041.h:49
enum @74 __attribute__
uint16_t serial_nr
Definition: gsm_23_041.h:7
uint16_t message_id
Definition: gsm_23_041.h:87
Definition: gsm_23_041.h:26
Definition: gsm_23_041.h:51
Definition: gsm_23_041.h:33
Definition: gsm_23_041.h:41
uint16_t serial_nr
Definition: gsm_23_041.h:88
uint16_t warning_type
Definition: gsm_23_041.h:79
Definition: gsm_23_041.h:28
Definition: gsm_23_041.h:43
Definition: gsm_23_041.h:46
Definition: gsm_23_041.h:61
Definition: gsm_23_041.h:25
Definition: gsm_23_041.h:48
Definition: gsm_23_041.h:67
uint8_t content[0]
Definition: gsm_23_041.h:19
Definition: gsm_23_041.h:6
uint8_t dcs
Definition: gsm_23_041.h:89
Definition: gsm_23_041.h:50