libosmogsm  0.9.3
Osmocom GSM library
include/osmocom/gsm/sysinfo.h
00001 #pragma once
00002 
00003 #include <osmocom/core/utils.h>
00004 #include <osmocom/gsm/protocol/gsm_04_08.h>
00005 
00006 enum osmo_sysinfo_type {
00007         SYSINFO_TYPE_NONE,
00008         SYSINFO_TYPE_1,
00009         SYSINFO_TYPE_2,
00010         SYSINFO_TYPE_3,
00011         SYSINFO_TYPE_4,
00012         SYSINFO_TYPE_5,
00013         SYSINFO_TYPE_6,
00014         SYSINFO_TYPE_7,
00015         SYSINFO_TYPE_8,
00016         SYSINFO_TYPE_9,
00017         SYSINFO_TYPE_10,
00018         SYSINFO_TYPE_13,
00019         SYSINFO_TYPE_16,
00020         SYSINFO_TYPE_17,
00021         SYSINFO_TYPE_18,
00022         SYSINFO_TYPE_19,
00023         SYSINFO_TYPE_20,
00024         SYSINFO_TYPE_2bis,
00025         SYSINFO_TYPE_2ter,
00026         SYSINFO_TYPE_2quater,
00027         SYSINFO_TYPE_5bis,
00028         SYSINFO_TYPE_5ter,
00029         SYSINFO_TYPE_EMO,
00030         SYSINFO_TYPE_MEAS_INFO,
00031         /* FIXME all the various bis and ter */
00032         _MAX_SYSINFO_TYPE
00033 };
00034 
00035 typedef uint8_t sysinfo_buf_t[GSM_MACBLOCK_LEN];
00036 
00037 extern const struct value_string osmo_sitype_strs[_MAX_SYSINFO_TYPE];
00038 
00039 uint8_t osmo_sitype2rsl(enum osmo_sysinfo_type si_type);
00040 enum osmo_sysinfo_type osmo_rsl2sitype(uint8_t rsl_si);