libosmogsm  1.5.1
Osmocom GSM library
auth.h File Reference
#include <stdint.h>
#include <osmocom/core/linuxlist.h>
#include <osmocom/core/utils.h>

Go to the source code of this file.

Data Structures

struct  osmo_sub_auth_data
 permanent (secret) subscriber auth data More...
 
struct  osmo_auth_vector
 
struct  osmo_auth_impl
 

Macros

#define OSMO_A5_MAX_KEY_LEN_BYTES   (128/8)
 
#define OSMO_MILENAGE_IND_BITLEN_MAX   28
 

Enumerations

enum  osmo_sub_auth_type {
  OSMO_AUTH_TYPE_NONE = 0x00,
  OSMO_AUTH_TYPE_GSM = 0x01,
  OSMO_AUTH_TYPE_UMTS = 0x02
}
 Authentication Type (GSM/UMTS) More...
 
enum  osmo_auth_algo {
  OSMO_AUTH_ALG_NONE,
  OSMO_AUTH_ALG_COMP128v1,
  OSMO_AUTH_ALG_COMP128v2,
  OSMO_AUTH_ALG_COMP128v3,
  OSMO_AUTH_ALG_XOR,
  OSMO_AUTH_ALG_MILENAGE,
  _OSMO_AUTH_ALG_NUM
}
 Authentication Algorithm. More...
 

Functions

static const char * osmo_sub_auth_type_name (enum osmo_sub_auth_type val)
 
int osmo_auth_gen_vec (struct osmo_auth_vector *vec, struct osmo_sub_auth_data *aud, const uint8_t *_rand)
 Generate authentication vector. More...
 
int osmo_auth_gen_vec_auts (struct osmo_auth_vector *vec, struct osmo_sub_auth_data *aud, const uint8_t *auts, const uint8_t *rand_auts, const uint8_t *_rand)
 Generate authentication vector and re-sync sequence. More...
 
int osmo_auth_register (struct osmo_auth_impl *impl)
 Register an authentication algorithm implementation with the core. More...
 
int osmo_auth_load (const char *path)
 Load all available authentication plugins from the given path. More...
 
int osmo_auth_supported (enum osmo_auth_algo algo)
 Determine if a given authentication algorithm is supported. More...
 
void osmo_c4 (uint8_t *ck, const uint8_t *kc)
 
const char * osmo_auth_alg_name (enum osmo_auth_algo alg)
 Get human-readable name of authentication algorithm. More...
 
enum osmo_auth_algo osmo_auth_alg_parse (const char *name)
 Parse human-readable name of authentication algorithm. More...
 
void osmo_auth_c3 (uint8_t kc[], const uint8_t ck[], const uint8_t ik[])
 

Variables

const struct value_string osmo_sub_auth_type_names []
 
tlv_parse_one
int tlv_parse_one(uint8_t *o_tag, uint16_t *o_len, const uint8_t **o_val, const struct tlv_definition *def, const uint8_t *buf, int buf_len)
Parse a single TLV encoded IE.
Definition: tlv_parser.c:230
SYSINFO_TYPE_MEAS_INFO
@ SYSINFO_TYPE_MEAS_INFO
Definition: sysinfo.h:38
RSL_EXT_MEAS_ORDER
#define RSL_EXT_MEAS_ORDER
Definition: gsm_08_58.h:611
RSL_IE_CMD_INDICATOR
@ RSL_IE_CMD_INDICATOR
Definition: gsm_08_58.h:337
RSL_ERR_IE_CONTENT
#define RSL_ERR_IE_CONTENT
Definition: gsm_08_58.h:590
RSL_IE_UPLINK_MEAS
@ RSL_IE_UPLINK_MEAS
Definition: gsm_08_58.h:312
RSL_CHAN_OSMO_CBCH4
#define RSL_CHAN_OSMO_CBCH4
Definition: gsm_08_58.h:454
RSL_MT_CONN_FAIL
@ RSL_MT_CONN_FAIL
Definition: gsm_08_58.h:197
len
uint8_t len
Definition: gsm_04_11.h:0
osmo_sitype_strs
const struct value_string osmo_sitype_strs[_MAX_SYSINFO_TYPE]
Definition: sysinfo.c:104
gsm_mncc_facility
Definition: mncc.h:62
RSL_IE_SIEMENS_MRPCI
@ RSL_IE_SIEMENS_MRPCI
Definition: gsm_08_58.h:349
rsl_or_ipac_msg_name
const char * rsl_or_ipac_msg_name(uint8_t msg_type)
Get human-readable name of standard or ip.access RSL msg type.
Definition: rsl.c:447
ABIS_RSL_CHAN_NR_CBITS_SDCCH4_ACCH
#define ABIS_RSL_CHAN_NR_CBITS_SDCCH4_ACCH(ss)
Definition: gsm_08_58.h:47
osmo_sitype2rsl
uint8_t osmo_sitype2rsl(enum osmo_sysinfo_type si_type)
Definition: sysinfo.c:220
abis_rsl_rll_hdr::ie_link_id
uint8_t ie_link_id
RSL_IE_LINK_IDENT (tag)
Definition: gsm_08_58.h:89
bitvec::data
uint8_t * data
rxlev_stats::rxlev_buckets
uint8_t rxlev_buckets[NUM_RXLEVS][NUM_ARFCNS/8]
Definition: rxlev_stat.h:11
gsm_mncc_number::plan
int plan
Definition: mncc.h:35
RSL_IE_ACCESS_DELAY
@ RSL_IE_ACCESS_DELAY
Definition: gsm_08_58.h:304
RSL_MT_IPAC_BIND_MUX_NACK
@ RSL_MT_IPAC_BIND_MUX_NACK
Definition: gsm_08_58.h:240
osmo_earfcn_bit_size_ext
size_t osmo_earfcn_bit_size_ext(const struct osmo_earfcn_si2q *e, size_t offset)
Return number of bits necessary to represent earfcn struct as Repeated E-UTRAN Neighbour Cells IE fro...
Definition: sysinfo.c:166
osmo_tlvp_copy
struct tlv_parsed * osmo_tlvp_copy(const struct tlv_parsed *tp_orig, void *ctx)
Copy tlv_parsed using given talloc context.
Definition: tlv_parser.c:70
SYSINFO_TYPE_13
@ SYSINFO_TYPE_13
Definition: sysinfo.h:26
GMM_CAUSE_INV_MAND_INFO
@ GMM_CAUSE_INV_MAND_INFO
Definition: gsm_04_08_gprs.h:231
link_id
uint8_t link_id
Definition: gsm_08_08.h:2
RSL_MT_RTD_REP
@ RSL_MT_RTD_REP
Definition: gsm_08_58.h:217
RSL_IE_NCH_DRX_INFO
@ RSL_IE_NCH_DRX_INFO
Definition: gsm_08_58.h:336
RSL_MT_MODE_MODIFY_REQ
@ RSL_MT_MODE_MODIFY_REQ
Definition: gsm_08_58.h:202
tlv_p_entry::val
const uint8_t * val
pointer to value
Definition: tlv.h:494
rsl_msgt_names
static const struct value_string rsl_msgt_names[]
Definition: rsl.c:330
osmo_earfcn_si2q::thresh_lo_valid
bool thresh_lo_valid
Definition: sysinfo.h:66
RSL_MT_PHY_CONTEXT_REQ
@ RSL_MT_PHY_CONTEXT_REQ
Definition: gsm_08_58.h:205
RLL_CAUSE_T200_EXPIRED
#define RLL_CAUSE_T200_EXPIRED
Definition: gsm_08_58.h:529
ABIS_RSL_CHAN_NR_CBITS_PCH_AGCH
#define ABIS_RSL_CHAN_NR_CBITS_PCH_AGCH
Definition: gsm_08_58.h:51
RSL_IPAC_EIE_TIMING_ERR
@ RSL_IPAC_EIE_TIMING_ERR
Definition: gsm_08_58.h:744
ienamebuf
static __thread char ienamebuf[32]
Definition: tlv_parser.c:632
RSL_IE_CHAN_NR
@ RSL_IE_CHAN_NR
Definition: gsm_08_58.h:288
gsm48_system_information_type_4
Definition: gsm_04_08.h:1048
RLL_CAUSE_UNSOL_DM_RESP
#define RLL_CAUSE_UNSOL_DM_RESP
Definition: gsm_08_58.h:532
RSL_IE_IPAC_RTP_COMPR
@ RSL_IE_IPAC_RTP_COMPR
Definition: gsm_08_58.h:376
RLL_CAUSE_SABM_INFO_NOTALL
#define RLL_CAUSE_SABM_INFO_NOTALL
Definition: gsm_08_58.h:542
RSL_MT_SACCH_FILL
@ RSL_MT_SACCH_FILL
Definition: gsm_08_58.h:186
RSL_MT_REL_CONF
@ RSL_MT_REL_CONF
Definition: gsm_08_58.h:166
bitvec_set_bit_pos
int bitvec_set_bit_pos(struct bitvec *bv, unsigned int bitnr, enum bit_value bit)
OAP_MSGT_CHALLENGE_REQUEST
@ OAP_MSGT_CHALLENGE_REQUEST
Definition: oap.h:55
SYSINFO_TYPE_2ter
@ SYSINFO_TYPE_2ter
Definition: sysinfo.h:33
RSL_IE_MS_POWER_PARAM
@ RSL_IE_MS_POWER_PARAM
Definition: gsm_08_58.h:318
RSL_IE_CHAN_MODE
@ RSL_IE_CHAN_MODE
Definition: gsm_08_58.h:293
RSL_SYSTEM_INFO_5ter
#define RSL_SYSTEM_INFO_5ter
Definition: gsm_08_58.h:609
get_value_string
const char * get_value_string(const struct value_string *vs, uint32_t val)
abis_rsl_cchan_hdr::c
struct abis_rsl_common_hdr c
Definition: gsm_08_58.h:110
RSL_IE_CHAN_NEEDED
@ RSL_IE_CHAN_NEEDED
Definition: gsm_08_58.h:327
osmo_oap_message::xres
uint8_t xres[8]
Definition: oap.h:74
osmo_tlvp_merge
int osmo_tlvp_merge(struct tlv_parsed *dst, const struct tlv_parsed *src)
Merge all tlv_parsed attributes of 'src' into 'dst'.
Definition: tlv_parser.c:105
RSL_MT_SUSP_CONF
@ RSL_MT_SUSP_CONF
Definition: gsm_08_58.h:171
RSL_IE_PAGING_LOAD
@ RSL_IE_PAGING_LOAD
Definition: gsm_08_58.h:302
cause
uint8_t cause
Definition: gsm_04_08.h:2
OAP_RAND_IE
@ OAP_RAND_IE
Definition: oap.h:42
RSL_IPAC_EIE_FREQ_ERR
@ RSL_IPAC_EIE_FREQ_ERR
Definition: gsm_08_58.h:743
OAP_CAUSE_IE
@ OAP_CAUSE_IE
Definition: oap.h:41
SYSINFO_TYPE_17
@ SYSINFO_TYPE_17
Definition: sysinfo.h:28
OAP_AUTS_IE
@ OAP_AUTS_IE
Definition: oap.h:45
RSL_ERR_SERV_OPT_UNAVAIL
#define RSL_ERR_SERV_OPT_UNAVAIL
Definition: gsm_08_58.h:574
RSL_SYSTEM_INFO_9
#define RSL_SYSTEM_INFO_9
Definition: gsm_08_58.h:616
RSL_SYSTEM_INFO_5bis
#define RSL_SYSTEM_INFO_5bis
Definition: gsm_08_58.h:608
RSL_MT_REL_REQ
@ RSL_MT_REL_REQ
Definition: gsm_08_58.h:165
OSMO_ASSERT
#define OSMO_ASSERT(exp)
RSL_CHAN_BCCH
#define RSL_CHAN_BCCH
Definition: gsm_08_58.h:450
RSL_MT_IPAC_PDCH_DEACT_NACK
@ RSL_MT_IPAC_PDCH_DEACT_NACK
Definition: gsm_08_58.h:234
RSL_MEAS_INFO
#define RSL_MEAS_INFO
Definition: gsm_08_58.h:612
RSL_ACT_INTER_ASYNC
#define RSL_ACT_INTER_ASYNC
Definition: gsm_08_58.h:462
RSL_MT_IPAC_PDCH_DEACT
@ RSL_MT_IPAC_PDCH_DEACT
Definition: gsm_08_58.h:232
msgb_put
static unsigned char * msgb_put(struct msgb *msgb, unsigned int len)
tlv_def_patch
void tlv_def_patch(struct tlv_definition *dst, const struct tlv_definition *src)
take a master (src) tlvdev and fill up all empty slots in 'dst'
Definition: tlv_parser.c:439
rsl_err_name
const char * rsl_err_name(uint8_t err)
Get human-readable name for RSL Error.
Definition: rsl.c:324
NUM_ARFCNS
#define NUM_ARFCNS
Definition: rxlev_stat.h:6
tlv_parse
int tlv_parse(struct tlv_parsed *dec, const struct tlv_definition *def, const uint8_t *buf, int buf_len, uint8_t lv_tag, uint8_t lv_tag2)
Parse an entire buffer of TLV encoded Information Elements.
Definition: tlv_parser.c:336
RLL_CAUSE_IFRM_INC_LEN
#define RLL_CAUSE_IFRM_INC_LEN
Definition: gsm_08_58.h:539
RSL_MT_LISTENER_DET
@ RSL_MT_LISTENER_DET
Definition: gsm_08_58.h:215
RLL_CAUSE_IFRM_INC_MBITS
#define RLL_CAUSE_IFRM_INC_MBITS
Definition: gsm_08_58.h:538
bitvec_find_bit_pos
int bitvec_find_bit_pos(const struct bitvec *bv, unsigned int n, enum bit_value val)
utils.h
osmo_oap_client_state::secret_k
uint8_t secret_k[16]
Definition: oap_client.h:56
msgb::data
unsigned char * data
RSL_IE_IPAC_SPEECH_MODE
@ RSL_IE_IPAC_SPEECH_MODE
Definition: gsm_08_58.h:369
RSL_IE_SMSCB_MSG
@ RSL_IE_SMSCB_MSG
Definition: gsm_08_58.h:329
tvlv_att_def
struct tlv_definition tvlv_att_def
Definition: tlv_parser.c:49
for
for(i=0;i< vector_active(cmdvec);i++) if((node
RSL_MT_HANDO_DET
@ RSL_MT_HANDO_DET
Definition: gsm_08_58.h:200
OAP_AUTN_IE
@ OAP_AUTN_IE
Definition: oap.h:43
RSL_ERR_REMOTE_TRANSC_FAIL
#define RSL_ERR_REMOTE_TRANSC_FAIL
Definition: gsm_08_58.h:569
RSL_BCCH_CCCH_CONF_4_NC
#define RSL_BCCH_CCCH_CONF_4_NC
Definition: gsm_08_58.h:659
rxlev_stat_get_next
int16_t rxlev_stat_get_next(const struct rxlev_stats *st, uint8_t rxlev, int16_t arfcn)
Definition: rxlev_stat.c:50
RSL_MT_SUSP_REQ
@ RSL_MT_SUSP_REQ
Definition: gsm_08_58.h:170
RLL_CAUSE_REEST_REQ
#define RLL_CAUSE_REEST_REQ
Definition: gsm_08_58.h:530
config
write Write running configuration to or terminal n Write configuration to the copy running config startup config
RSL_IE_RESOURCE_INFO
@ RSL_IE_RESOURCE_INFO
Definition: gsm_08_58.h:308
SYSINFO_TYPE_16
@ SYSINFO_TYPE_16
Definition: sysinfo.h:27
OSMO_EARFCN_INVALID
#define OSMO_EARFCN_INVALID
Definition: sysinfo.h:11
RSL_MT_IPAC_DLCX_IND
@ RSL_MT_IPAC_DLCX_IND
Definition: gsm_08_58.h:253
msgb_alloc_headroom
static struct msgb * msgb_alloc_headroom(int size, int headroom, const char *name)
RSL_ERR_PROCESSOR_OVERLOAD
#define RSL_ERR_PROCESSOR_OVERLOAD
Definition: gsm_08_58.h:567
RSL_ERR_RES_UNAVAIL
#define RSL_ERR_RES_UNAVAIL
Definition: gsm_08_58.h:571
osmo_shift_tlv
int osmo_shift_tlv(uint8_t **data, size_t *data_len, uint8_t *tag, uint8_t **value, size_t *value_len)
Extract TLV and advance data pointer + subtract length.
Definition: tlv_parser.c:562
RSL_IE_IPAC_RTP_PAYLOAD2
@ RSL_IE_IPAC_RTP_PAYLOAD2
Definition: gsm_08_58.h:377
RSL_MT_DATA_IND
@ RSL_MT_DATA_IND
Definition: gsm_08_58.h:160
gsm_mncc_number::type
int type
Definition: mncc.h:34
RSL_IE_EMLPP_PRIO
@ RSL_IE_EMLPP_PRIO
Definition: gsm_08_58.h:338
osmo_earfcn_si2q::meas_bw
uint8_t * meas_bw
Definition: sysinfo.h:53
RSL_IE_FRAME_NUMBER
@ RSL_IE_FRAME_NUMBER
Definition: gsm_08_58.h:295
RSL_MT_BCCH_INFO
@ RSL_MT_BCCH_INFO
Definition: gsm_08_58.h:176
RSL_ACT_TYPE_INITIAL
#define RSL_ACT_TYPE_INITIAL
Definition: gsm_08_58.h:458
RSL_ERR_IE_NONEXIST
#define RSL_ERR_IE_NONEXIST
Definition: gsm_08_58.h:588
osmo_static_assert
osmo_static_assert(sizeof(struct gsm48_system_information_type_header)==3, _si_header_size)
RSL_IPAC_EIE_NCELL_BA_CHG_LIST
@ RSL_IPAC_EIE_NCELL_BA_CHG_LIST
Definition: gsm_08_58.h:755
bitvec::data_len
unsigned int data_len
msgb.h
RSL_MT_PRE_HANDO_NOTIF
@ RSL_MT_PRE_HANDO_NOTIF
Definition: gsm_08_58.h:218
RSL_IE_SYSINFO_TYPE
@ RSL_IE_SYSINFO_TYPE
Definition: gsm_08_58.h:317
RSL_IE_STARTNG_TIME
@ RSL_IE_STARTNG_TIME
Definition: gsm_08_58.h:310
RSL_ERR_BTS_NOT_EQUIPPED
#define RSL_ERR_BTS_NOT_EQUIPPED
Definition: gsm_08_58.h:568
RSL_IE_REQ_REFERENCE
@ RSL_IE_REQ_REFERENCE
Definition: gsm_08_58.h:306
osmo_decode_big_endian
uint64_t osmo_decode_big_endian(const uint8_t *data, size_t data_len)
osmo_tlv_prot_def::msgt_names
const struct value_string * msgt_names
value_string array of message type names (legacy, if not populated in msg_def)
Definition: tlv.h:688
gsm_mncc_number
Definition: mncc.h:33
osmo_sub_auth_data::u
union osmo_sub_auth_data::@105 u
RSL_SYSTEM_INFO_6
#define RSL_SYSTEM_INFO_6
Definition: gsm_08_58.h:602
TLVP_LEN
#define TLVP_LEN(x, y)
Definition: tlv.h:547
msg
uint8_t msg[0]
Definition: gsm_08_08.h:8
gsm_mncc_cause
Definition: mncc.h:41
osmo_static_assert
osmo_static_assert(_LOG_CTX_COUNT<=ARRAY_SIZE(((struct log_context *) NULL) ->ctx), enum_logging_ctx_items_fit_in_struct_log_context)
ABIS_RSL_CHAN_NR_CBITS_RACH
#define ABIS_RSL_CHAN_NR_CBITS_RACH
Definition: gsm_08_58.h:50
gsm_mncc_bearer_cap
Definition: mncc.h:12
osmo_tlv_prot_def
Osmocom TLV protocol definition.
Definition: tlv.h:678
osmo_auth_vector::res_len
uint8_t res_len
length (in bytes) of res
Definition: auth.h:66
timeslot
uint8_t timeslot
E1 timeslot.
Definition: gsm_12_21.h:2
RSL_IE_IPAC_RTP_JIT_BUF
@ RSL_IE_IPAC_RTP_JIT_BUF
Definition: gsm_08_58.h:375
RSL_IPAC_EIE_NUM_OF_MS
@ RSL_IPAC_EIE_NUM_OF_MS
Definition: gsm_08_58.h:756
RSL_MT_IPAC_MDCX_NACK
@ RSL_MT_IPAC_MDCX_NACK
Definition: gsm_08_58.h:252
TLV_TYPE_FIXED
@ TLV_TYPE_FIXED
fixed-length value-only
Definition: tlv.h:500
RSL_IE_MAIN_CHAN_REF
@ RSL_IE_MAIN_CHAN_REF
Definition: gsm_08_58.h:340
RSL_MT_LOCATION_INFO
@ RSL_MT_LOCATION_INFO
Definition: gsm_08_58.h:225
tlv_p_entry::len
uint16_t len
length
Definition: tlv.h:493
msgb_v_put
static uint8_t * msgb_v_put(struct msgb *msg, uint8_t val)
put (append) a V field to a Message buffers
Definition: tlv.h:391
RSL_ERR_NOTIFICATION_OVERFL
#define RSL_ERR_NOTIFICATION_OVERFL
Definition: gsm_08_58.h:570
RSL_ERR_CCCH_OVERLOAD
#define RSL_ERR_CCCH_OVERLOAD
Definition: gsm_08_58.h:565
osmo_oap_message::auts
uint8_t auts[14]
Definition: oap.h:76
msgb_tailroom
static int msgb_tailroom(const struct msgb *msgb)
get_value_string_or_null
const char * get_value_string_or_null(const struct value_string *vs, uint32_t val)
RSL_IPAC_EIE_RXQUAL
@ RSL_IPAC_EIE_RXQUAL
Definition: gsm_08_58.h:742
RLL_CAUSE_SFRM_INC_PARAM
#define RLL_CAUSE_SFRM_INC_PARAM
Definition: gsm_08_58.h:537
DLOAP
#define DLOAP
RSL_ERR_SERV_OPT_UNIMPL
#define RSL_ERR_SERV_OPT_UNIMPL
Definition: gsm_08_58.h:577
RSL_MT_MS_POWER_CONTROL
@ RSL_MT_MS_POWER_CONTROL
Definition: gsm_08_58.h:208
mncc.h
rsl_att_tlvdef
const struct tlv_definition rsl_att_tlvdef
Definition: rsl.c:67
RSL_MT_IPAC_CONNECT_MUX
@ RSL_MT_IPAC_CONNECT_MUX
Definition: gsm_08_58.h:235
osmo_tlv_prot_msg_def
Definition: tlv.h:660
RSL_SYSTEM_INFO_20
#define RSL_SYSTEM_INFO_20
Definition: gsm_08_58.h:619
TLV_TYPE_T
@ TLV_TYPE_T
tag-only
Definition: tlv.h:501
ABIS_RSL_CHAN_NR_CBITS_Bm_ACCHs
#define ABIS_RSL_CHAN_NR_CBITS_Bm_ACCHs
Definition: gsm_08_58.h:45
osmo_tlv_prot_def::tlv_def
const struct tlv_definition * tlv_def
TLV parser definition (optional)
Definition: tlv.h:682
tlv_parse2
int tlv_parse2(struct tlv_parsed *dec, int dec_multiples, const struct tlv_definition *def, const uint8_t *buf, int buf_len, uint8_t lv_tag, uint8_t lv_tag2)
Like tlv_parse(), but capable of decoding multiple occurences of the same IE.
Definition: tlv_parser.c:359
osmo_oap_encode
void osmo_oap_encode(struct msgb *msg, const struct osmo_oap_message *oap_msg)
Compose OAP message data.
Definition: oap.c:160
rsl_rlm_cause_strs
static const struct value_string rsl_rlm_cause_strs[]
Definition: rsl.c:455
RSL_MT_REL_IND
@ RSL_MT_REL_IND
Definition: gsm_08_58.h:167
RSL_IPAC_EIE_BS_PWR_CTL
@ RSL_IPAC_EIE_BS_PWR_CTL
Definition: gsm_08_58.h:746
SYSINFO_TYPE_EMO
@ SYSINFO_TYPE_EMO
Definition: sysinfo.h:37
osmo_earfcn_add
int osmo_earfcn_add(struct osmo_earfcn_si2q *e, uint16_t arfcn, uint8_t meas_bw)
Add pair of arfcn and measurement bandwith value to earfcn struct.
Definition: sysinfo.c:137
RLL_CAUSE_UNSOL_UA_RESP
#define RLL_CAUSE_UNSOL_UA_RESP
Definition: gsm_08_58.h:531
RSL_IE_FULL_IMM_ASS_INFO
@ RSL_IE_FULL_IMM_ASS_INFO
Definition: gsm_08_58.h:330
NUM_RXLEVS
#define NUM_RXLEVS
Definition: rxlev_stat.h:5
osmo_tlv_prot_msg_name
const char * osmo_tlv_prot_msg_name(const struct osmo_tlv_prot_def *pdef, uint8_t msg_type)
get the message name for given msg_type in protocol pdef
Definition: tlv_parser.c:636
u8
uint8_t u8
Definition: common.h:18
gsm48_system_information_type_3
Definition: gsm_04_08.h:1036
osmo_tlv_prot_def::msg_def
struct osmo_tlv_prot_msg_def msg_def[256]
definition of each message (8-bit message type)
Definition: tlv.h:684
RSL_ACT_SECOND_ADD
#define RSL_ACT_SECOND_ADD
Definition: gsm_08_58.h:464
RSL_MT_MODE_MODIFY_NACK
@ RSL_MT_MODE_MODIFY_NACK
Definition: gsm_08_58.h:204
RSL_SYSTEM_INFO_8
#define RSL_SYSTEM_INFO_8
Definition: gsm_08_58.h:596
SYSINFO_TYPE_8
@ SYSINFO_TYPE_8
Definition: sysinfo.h:23
RSL_MT_CHAN_ACTIV_ACK
@ RSL_MT_CHAN_ACTIV_ACK
Definition: gsm_08_58.h:195
oap.h
RSL_IE_IPAC_REMOTE_IP
@ RSL_IE_IPAC_REMOTE_IP
Definition: gsm_08_58.h:365
RSL_IE_IPAC_REMOTE_PORT
@ RSL_IE_IPAC_REMOTE_PORT
Definition: gsm_08_58.h:366
RSL_IPAC_EIE_NCELL_DEF_EXT
@ RSL_IPAC_EIE_NCELL_DEF_EXT
Definition: gsm_08_58.h:758
gsm_mncc_number::number
char number[33]
Definition: mncc.h:38
RSL_MT_IPAC_MDCX_ACK
@ RSL_MT_IPAC_MDCX_ACK
Definition: gsm_08_58.h:251
RSL_ERR_OM_INTERVENTION
#define RSL_ERR_OM_INTERVENTION
Definition: gsm_08_58.h:558
OSMO_TLVP_ERR_OFS_LEN_BEYOND_BUFFER
@ OSMO_TLVP_ERR_OFS_LEN_BEYOND_BUFFER
Definition: tlv.h:47
RSL_MT_OVERLOAD
@ RSL_MT_OVERLOAD
Definition: gsm_08_58.h:187
OAP_MSGT_CHALLENGE_RESULT
@ OAP_MSGT_CHALLENGE_RESULT
Definition: oap.h:57
RSL_CHAN_SDCCH8_ACCH
#define RSL_CHAN_SDCCH8_ACCH
Definition: gsm_08_58.h:449
msgb_tv16_push
static uint8_t * msgb_tv16_push(struct msgb *msg, uint8_t tag, uint16_t val)
push (prepend) a TV16 field to a Message buffers
Definition: tlv.h:453
osmo_oap_client_config
Definition: oap_client.h:34
version
char version[20]
Definition: ipaccess.h:10
rsl_msg_name
const char * rsl_msg_name(uint8_t err)
Get human-readable string for RSL Message Type.
Definition: rsl.c:402
type
uint8_t type
Definition: gsm_08_08.h:0
OAP_MSGT_REGISTER_REQUEST
@ OAP_MSGT_REGISTER_REQUEST
Definition: oap.h:51
RSL_IE_IPAC_LOCAL_PORT
@ RSL_IE_IPAC_LOCAL_PORT
Definition: gsm_08_58.h:368
rsl_act_type_names
const struct value_string rsl_act_type_names[]
String names of RSL Channel Activation Types.
Definition: rsl.c:625
RSL_MT_IPAC_BIND_MUX
@ RSL_MT_IPAC_BIND_MUX
Definition: gsm_08_58.h:238
RSL_IE_OSMO_REP_ACCH_CAP
@ RSL_IE_OSMO_REP_ACCH_CAP
Definition: gsm_08_58.h:359
RSL_ERR_INVALID_MESSAGE
#define RSL_ERR_INVALID_MESSAGE
Definition: gsm_08_58.h:580
RSL_SYSTEM_INFO_2
#define RSL_SYSTEM_INFO_2
Definition: gsm_08_58.h:598
gsm48_system_information_type_header
Definition: gsm_04_08.h:898
osmo_sysinfo_type
osmo_sysinfo_type
Definition: sysinfo.h:14
RSL_IPAC_EIE_HO_CAND_EXT
@ RSL_IPAC_EIE_HO_CAND_EXT
Definition: gsm_08_58.h:757
tlv_parsed::lv
struct tlv_p_entry lv[256]
Definition: tlv.h:523
RSL_IE_IPAC_LOCAL_IP
@ RSL_IE_IPAC_LOCAL_IP
Definition: gsm_08_58.h:370
RSL_IE_MS_IDENTITY
@ RSL_IE_MS_IDENTITY
Definition: gsm_08_58.h:299
RSL_ERR_MSG_DISCR
#define RSL_ERR_MSG_DISCR
Definition: gsm_08_58.h:582
RSL_MT_RF_RES_IND
@ RSL_MT_RF_RES_IND
Definition: gsm_08_58.h:185
RSL_IPAC_EIE_3G_NCELL_LIST
@ RSL_IPAC_EIE_3G_NCELL_LIST
Definition: gsm_08_58.h:765
rxlev_stat.h
RLL_CAUSE_FRM_UNIMPL
#define RLL_CAUSE_FRM_UNIMPL
Definition: gsm_08_58.h:540
TLV_TYPE_TLV
@ TLV_TYPE_TLV
tag-length-value
Definition: tlv.h:503
osmo_oap_decode
int osmo_oap_decode(struct osmo_oap_message *oap_msg, const uint8_t *data, size_t data_len)
Decode OAP message data.
Definition: oap.c:43
RSL_MT_ERROR_REPORT
@ RSL_MT_ERROR_REPORT
Definition: gsm_08_58.h:188
tlv_encode
int tlv_encode(struct msgb *msg, const struct tlv_definition *def, const struct tlv_parsed *tp)
Encode a set of decoded TLVs according to a given definition into a message buffer.
Definition: tlv_parser.c:173
oap_msg_register
static struct msgb * oap_msg_register(uint16_t client_id)
Definition: oap_client.c:139
osmo_auth_vector::autn
uint8_t autn[16]
authentication nonce
Definition: auth.h:62
RSL_IE_SMSCB_CHAN_INDICATOR
@ RSL_IE_SMSCB_CHAN_INDICATOR
Definition: gsm_08_58.h:333
gsm_mncc_progress
Definition: mncc.h:56
osmo_oap_iei
osmo_oap_iei
Information Element Identifiers for OAP IEs.
Definition: oap.h:40
gsm48_system_information_type_13
Definition: gsm_04_08.h:1128
data
uint8_t data[0]
RSL_IPAC_EIE_HO_THRESH_COMP
@ RSL_IPAC_EIE_HO_THRESH_COMP
Definition: gsm_08_58.h:752
oap_msg_challenge_response
static struct msgb * oap_msg_challenge_response(uint8_t *xres)
Definition: oap_client.c:166
TLV_TYPE_TvLV
@ TLV_TYPE_TvLV
tag, variable length, value
Definition: tlv.h:505
RSL_IE_SMSCB_INFO
@ RSL_IE_SMSCB_INFO
Definition: gsm_08_58.h:323
OAP_XRES_IE
@ OAP_XRES_IE
Definition: oap.h:44
RSL_MT_IPAC_MDCX
@ RSL_MT_IPAC_MDCX
Definition: gsm_08_58.h:250
tlv_definition
Definition of All 256 IE / TLV.
Definition: tlv.h:517
osmo_oap_client_state::registration_failures
int registration_failures
Definition: oap_client.h:58
SYSINFO_TYPE_7
@ SYSINFO_TYPE_7
Definition: sysinfo.h:22
RSL_IPAC_EIE_HO_CANDIDATES
@ RSL_IPAC_EIE_HO_CANDIDATES
Definition: gsm_08_58.h:754
msgb
msgb_push
static unsigned char * msgb_push(struct msgb *msgb, unsigned int len)
gsm48_gmm_cause_names
const struct value_string * gsm48_gmm_cause_names
Definition: gsm_04_08_gprs.c:80
RSL_IE_MEAS_RES_NR
@ RSL_IE_MEAS_RES_NR
Definition: gsm_08_58.h:314
msgnamebuf
static __thread char msgnamebuf[32]
Definition: tlv_parser.c:633
LOGL_INFO
#define LOGL_INFO
abis_rsl_rll_hdr
Definition: gsm_08_58.h:82
RSL_ERR_T_MSRFPCI_EXP
#define RSL_ERR_T_MSRFPCI_EXP
Definition: gsm_08_58.h:560
osmo_mncc_names
const struct value_string osmo_mncc_names[]
RSL_BCCH_CCCH_CONF_3_NC
#define RSL_BCCH_CCCH_CONF_3_NC
Definition: gsm_08_58.h:658
RSL_MT_CCCH_LOAD_IND
@ RSL_MT_CCCH_LOAD_IND
Definition: gsm_08_58.h:177
osmo_oap_message::autn_present
int autn_present
Definition: oap.h:71
RSL_IE_SACCH_INFO
@ RSL_IE_SACCH_INFO
Definition: gsm_08_58.h:331
osmo_auth_vector::res
uint8_t res[16]
authentication result
Definition: auth.h:65
SYSINFO_TYPE_2bis
@ SYSINFO_TYPE_2bis
Definition: sysinfo.h:32
RSL_ERR_TERR_CH_FAIL
#define RSL_ERR_TERR_CH_FAIL
Definition: gsm_08_58.h:564
rsl_rll_push_l3
void rsl_rll_push_l3(struct msgb *msg, uint8_t msg_type, uint8_t chan_nr, uint8_t link_id, int transparent)
Wrap msgb in L3 Info IE and push a RSL RLL header.
Definition: rsl.c:545
RSL_IE_IPAC_RTP_CSD_FMT
@ RSL_IE_IPAC_RTP_CSD_FMT
Definition: gsm_08_58.h:374
RSL_CHAN_PCH_AGCH
#define RSL_CHAN_PCH_AGCH
Definition: gsm_08_58.h:452
tlv_def::type
enum tlv_type type
TLV type.
Definition: tlv.h:512
RSL_MT_IPAC_DISC_MUX
@ RSL_MT_IPAC_DISC_MUX
Definition: gsm_08_58.h:241
_osmo_mncc_log
void _osmo_mncc_log(int subsys, int level, const char *file, int line, const char *prefix, const uint8_t *msg, unsigned int len)
RSL_MT_IPAC_PDCH_ACT
@ RSL_MT_IPAC_PDCH_ACT
Definition: gsm_08_58.h:229
RSL_ERR_PROTO
#define RSL_ERR_PROTO
Definition: gsm_08_58.h:591
msgb_vtvlv_gan_put
static uint8_t * msgb_vtvlv_gan_put(struct msgb *msg, uint16_t tag, uint16_t len, const uint8_t *val)
put (append) a vTvLV field to Message buffers
Definition: tlv.h:297
RSL_MT_RECON_REQ
@ RSL_MT_RECON_REQ
Definition: gsm_08_58.h:173
RSL_ERR_ACCH_OVERLOAD
#define RSL_ERR_ACCH_OVERLOAD
Definition: gsm_08_58.h:566
RSL_MT_SMS_BC_REQ
@ RSL_MT_SMS_BC_REQ
Definition: gsm_08_58.h:182
RSL_SYSTEM_INFO_18
#define RSL_SYSTEM_INFO_18
Definition: gsm_08_58.h:617
RSL_MT_PREPROC_CONFIG
@ RSL_MT_PREPROC_CONFIG
Definition: gsm_08_58.h:210
sitype2rsl
static const uint8_t sitype2rsl[_MAX_SYSINFO_TYPE]
Definition: sysinfo.c:52
RSL_ERR_RADIO_IF_FAIL
#define RSL_ERR_RADIO_IF_FAIL
Definition: gsm_08_58.h:554
msgb_free
void msgb_free(struct msgb *m)
RSL_BCCH_CCCH_CONF_1_C
#define RSL_BCCH_CCCH_CONF_1_C
Definition: gsm_08_58.h:656
RSL_MT_CHAN_ACTIV_NACK
@ RSL_MT_CHAN_ACTIV_NACK
Definition: gsm_08_58.h:196
RSL_CHAN_Lm_ACCHs
#define RSL_CHAN_Lm_ACCHs
Definition: gsm_08_58.h:447
osmo_tlv_prot_validate_tp
int osmo_tlv_prot_validate_tp(const struct osmo_tlv_prot_def *pdef, uint8_t msg_type, const struct tlv_parsed *tp, int log_subsys, const char *log_pfx)
Validate an already TLV-decoded message against the protocol definition.
Definition: tlv_parser.c:667
RSL_IE_MR_CONTROL
@ RSL_IE_MR_CONTROL
Definition: gsm_08_58.h:342
RSL_IE_CHAN_IDENT
@ RSL_IE_CHAN_IDENT
Definition: gsm_08_58.h:292
gsm_mncc_number::present
int present
Definition: mncc.h:36
RSL_MT_DEACTIVATE_SACCH
@ RSL_MT_DEACTIVATE_SACCH
Definition: gsm_08_58.h:198
RSL_MT_IPAC_PDCH_ACT_ACK
@ RSL_MT_IPAC_PDCH_ACT_ACK
Definition: gsm_08_58.h:230
tlv_type
tlv_type
TLV type.
Definition: tlv.h:498
RSL_MT_IPAC_CONNECT_MUX_ACK
@ RSL_MT_IPAC_CONNECT_MUX_ACK
Definition: gsm_08_58.h:236
RSL_MT_IPAC_DLCX_ACK
@ RSL_MT_IPAC_DLCX_ACK
Definition: gsm_08_58.h:255
TLV_TYPE_TL16V
@ TLV_TYPE_TL16V
tag, 16 bit length, value
Definition: tlv.h:504
RSL_ERR_IE_LENGTH
#define RSL_ERR_IE_LENGTH
Definition: gsm_08_58.h:589
RSL_ACT_SECOND_MULTI
#define RSL_ACT_SECOND_MULTI
Definition: gsm_08_58.h:465
RSL_IE_PYHS_CONTEXT
@ RSL_IE_PYHS_CONTEXT
Definition: gsm_08_58.h:303
SYSINFO_TYPE_6
@ SYSINFO_TYPE_6
Definition: sysinfo.h:21
RLL_CAUSE_SEQ_ERR
#define RLL_CAUSE_SEQ_ERR
Definition: gsm_08_58.h:535
RSL_MT_IPAC_DLCX
@ RSL_MT_IPAC_DLCX
Definition: gsm_08_58.h:254
RSL_IPAC_EIE_SDCCH_CTL_PARAM
@ RSL_IPAC_EIE_SDCCH_CTL_PARAM
Definition: gsm_08_58.h:766
rsl_init_cchan_hdr
void rsl_init_cchan_hdr(struct abis_rsl_cchan_hdr *ch, uint8_t msg_type)
Initialize a RSL Common Channel header.
Definition: rsl.c:59
RSL_IE_BS_POWER
@ RSL_IE_BS_POWER
Definition: gsm_08_58.h:291
ABIS_RSL_CHAN_NR_CBITS_OSMO_PDCH
#define ABIS_RSL_CHAN_NR_CBITS_OSMO_PDCH
Definition: gsm_08_58.h:52
ABIS_RSL_CHAN_NR_CBITS_BCCH
#define ABIS_RSL_CHAN_NR_CBITS_BCCH
Definition: gsm_08_58.h:49
tlv_definition::def
struct tlv_def def[256]
Definition: tlv.h:518
value_string::str
const char * str
RSL_ERR_INTERWORKING
#define RSL_ERR_INTERWORKING
Definition: gsm_08_58.h:593
RSL_ERR_MSG_SEQ
#define RSL_ERR_MSG_SEQ
Definition: gsm_08_58.h:584
rxlev_stat_input
void rxlev_stat_input(struct rxlev_stats *st, uint16_t arfcn, uint8_t rxlev)
Definition: rxlev_stat.c:36
osmo_auth_vector
Definition: auth.h:60
RSL_ERR_HANDOVER_ACC_FAIL
#define RSL_ERR_HANDOVER_ACC_FAIL
Definition: gsm_08_58.h:556
RSL_IE_MSG_ID
@ RSL_IE_MSG_ID
Definition: gsm_08_58.h:315
iei
uint8_t iei
Definition: gsm_08_58.h:2
RSL_IPAC_EIE_MASTER_KEY
@ RSL_IPAC_EIE_MASTER_KEY
Definition: gsm_08_58.h:760
RSL_IE_UIC
@ RSL_IE_UIC
Definition: gsm_08_58.h:339
SYSINFO_TYPE_10
@ SYSINFO_TYPE_10
Definition: sysinfo.h:25
rsl_ccch_conf_to_bs_ccch_sdcch_comb
int rsl_ccch_conf_to_bs_ccch_sdcch_comb(int ccch_conf)
Definition: rsl.c:499
gsm48_system_information_type_6
Definition: gsm_04_08.h:1105
osmo_match_shift_tv_fixed
int osmo_match_shift_tv_fixed(uint8_t **data, size_t *data_len, uint8_t tag, size_t len, uint8_t **value)
Match tag, check length and assign value pointer.
Definition: tlv_parser.c:496
bitvec.h
RSL_MT_SMS_BC_CMD
@ RSL_MT_SMS_BC_CMD
Definition: gsm_08_58.h:189
OSMO_TLVP_ERR_UNKNOWN_TLV_TYPE
@ OSMO_TLVP_ERR_UNKNOWN_TLV_TYPE
Definition: tlv.h:48
msgb_tlv_put
static uint8_t * msgb_tlv_put(struct msgb *msg, uint8_t tag, uint8_t len, const uint8_t *val)
put (append) a TLV field to a Message buffers
Definition: tlv.h:366
RSL_ERR_NORMAL_UNSPEC
#define RSL_ERR_NORMAL_UNSPEC
Definition: gsm_08_58.h:559
RSL_IPAC_EIE_PC_THRESH_COMP
@ RSL_IPAC_EIE_PC_THRESH_COMP
Definition: gsm_08_58.h:751
rsl_rll_simple
struct msgb * rsl_rll_simple(uint8_t msg_type, uint8_t chan_nr, uint8_t link_id, int transparent)
Create msgb with RSL RLL header.
Definition: rsl.c:566
RSL_MT_DATA_REQ
@ RSL_MT_DATA_REQ
Definition: gsm_08_58.h:159
rxlev_stat_dump
void rxlev_stat_dump(const struct rxlev_stats *st)
Definition: rxlev_stat.c:72
RSL_IE_PREPROC_PARAM
@ RSL_IE_PREPROC_PARAM
Definition: gsm_08_58.h:320
RSL_IE_RLM_CAUSE
@ RSL_IE_RLM_CAUSE
Definition: gsm_08_58.h:309
osmo_auth_gen_vec
int osmo_auth_gen_vec(struct osmo_auth_vector *vec, struct osmo_sub_auth_data *aud, const uint8_t *_rand)
Generate authentication vector.
Definition: auth_core.c:156
ABIS_RSL_MDISC_RLL
#define ABIS_RSL_MDISC_RLL
Definition: gsm_08_58.h:140
RSL_IPAC_EIE_HANDO_THRESH
@ RSL_IPAC_EIE_HANDO_THRESH
Definition: gsm_08_58.h:748
TLV_TYPE_SINGLE_TV
@ TLV_TYPE_SINGLE_TV
tag and value (both 4 bit) in 1 byte
Definition: tlv.h:506
RSL_IE_ERR_MSG
@ RSL_IE_ERR_MSG
Definition: gsm_08_58.h:325
RSL_IE_IMM_ASS_INFO
@ RSL_IE_IMM_ASS_INFO
Definition: gsm_08_58.h:322
RSL_ALLOC_HEADROOM
#define RSL_ALLOC_HEADROOM
Headroom size for RSL msgb_alloc.
Definition: rsl.c:43
RSL_SYSTEM_INFO_2bis
#define RSL_SYSTEM_INFO_2bis
Definition: gsm_08_58.h:606
rsl_enc_chan_nr
uint8_t rsl_enc_chan_nr(uint8_t type, uint8_t subch, uint8_t timeslot)
Encode channel number as per Section 9.3.1.
Definition: rsl.c:153
RSL_ERR_TRANSC_UNAVAIL
#define RSL_ERR_TRANSC_UNAVAIL
Definition: gsm_08_58.h:573
ts
struct @6 ts
osmo_tlv_prot_msg_def::name
const char * name
human-readable name of message type (optional)
Definition: tlv.h:662
gsm_04_08.h
RSL_CHAN_OSMO_CBCH8
#define RSL_CHAN_OSMO_CBCH8
Definition: gsm_08_58.h:455
osmo_oap_message::xres_present
int xres_present
Definition: oap.h:73
rsl_chan_nr_str_buf
char * rsl_chan_nr_str_buf(char *buf, size_t buf_len, uint8_t chan_nr)
Get human-readable string for RSL channel number, in caller-provided buffer.
Definition: rsl.c:231
RSL_IE_TFO_STATUS
@ RSL_IE_TFO_STATUS
Definition: gsm_08_58.h:346
RSL_IE_RTD
@ RSL_IE_RTD
Definition: gsm_08_58.h:345
rsl_rlm_cause_name
const char * rsl_rlm_cause_name(uint8_t err)
Get human-readable string for RLM cause.
Definition: rsl.c:474
RSL_IE_SUP_CODEC_TYPES
@ RSL_IE_SUP_CODEC_TYPES
Definition: gsm_08_58.h:343
RSL_IE_IPAC_BSCMPL_TOUT
@ RSL_IE_IPAC_BSCMPL_TOUT
Definition: gsm_08_58.h:364
ABIS_RSL_CHAN_NR_CBITS_SDCCH8_ACCH
#define ABIS_RSL_CHAN_NR_CBITS_SDCCH8_ACCH(ss)
Definition: gsm_08_58.h:48
RSL_MT_IPAC_CRCX_ACK
@ RSL_MT_IPAC_CRCX_ACK
Definition: gsm_08_58.h:248
RSL_MT_REMOTE_CODEC_CONF_REP
@ RSL_MT_REMOTE_CODEC_CONF_REP
Definition: gsm_08_58.h:216
RSL_MT_IPAC_DISC_MUX_NACK
@ RSL_MT_IPAC_DISC_MUX_NACK
Definition: gsm_08_58.h:243
RSL_IE_IPAC_RTP_MPLEX_ID
@ RSL_IE_IPAC_RTP_MPLEX_ID
Definition: gsm_08_58.h:379
SYSINFO_TYPE_18
@ SYSINFO_TYPE_18
Definition: sysinfo.h:29
__attribute__
static __attribute__((constructor))
Definition: tlv_parser.c:451
RSL_SYSTEM_INFO_13
#define RSL_SYSTEM_INFO_13
Definition: gsm_08_58.h:613
RSL_IE_MR_CONFIG
@ RSL_IE_MR_CONFIG
Definition: gsm_08_58.h:341
TLVP_PRESENT
#define TLVP_PRESENT(x, y)
Definition: tlv.h:546
SYSINFO_TYPE_19
@ SYSINFO_TYPE_19
Definition: sysinfo.h:30
rsl_ccch_conf_to_bs_cc_chans
int rsl_ccch_conf_to_bs_cc_chans(int ccch_conf)
Definition: rsl.c:480
RSL_MT_UNIT_DATA_REQ
@ RSL_MT_UNIT_DATA_REQ
Definition: gsm_08_58.h:168
msgb_tl16v_put
static uint8_t * msgb_tl16v_put(struct msgb *msg, uint8_t tag, uint16_t len, const uint8_t *val)
put (append) a TL16V field to Message buffers
Definition: tlv.h:250
RSL_MT_IPAC_PDCH_DEACT_ACK
@ RSL_MT_IPAC_PDCH_DEACT_ACK
Definition: gsm_08_58.h:233
osmo_rsl2sitype
enum osmo_sysinfo_type osmo_rsl2sitype(uint8_t rsl_si)
Definition: sysinfo.c:225
RSL_MT_CHAN_ACTIV
@ RSL_MT_CHAN_ACTIV
Definition: gsm_08_58.h:194
tlv_def::fixed_len
uint8_t fixed_len
length in case of TLV_TYPE_FIXED
Definition: tlv.h:513
gsm_mncc_ssversion
Definition: mncc.h:67
SYSINFO_TYPE_1
@ SYSINFO_TYPE_1
Definition: sysinfo.h:16
RSL_MT_BS_POWER_CONTROL
@ RSL_MT_BS_POWER_CONTROL
Definition: gsm_08_58.h:209
abis_rsl_rll_hdr::chan_nr
uint8_t chan_nr
Definition: gsm_08_58.h:86
RSL_MT_CBCH_LOAD_IND
@ RSL_MT_CBCH_LOAD_IND
Definition: gsm_08_58.h:190
RSL_ACT_INTER_SYNC
#define RSL_ACT_INTER_SYNC
Definition: gsm_08_58.h:463
osmo_sub_auth_data::umts
struct osmo_sub_auth_data::@105::@106 umts
rxlev_stat_reset
void rxlev_stat_reset(struct rxlev_stats *st)
Definition: rxlev_stat.c:67
msgb_l2len
static unsigned int msgb_l2len(const struct msgb *msgb)
RSL_SYSTEM_INFO_19
#define RSL_SYSTEM_INFO_19
Definition: gsm_08_58.h:618
gsm_mncc_useruser
Definition: mncc.h:51
RSL_MT_TALKER_DET
@ RSL_MT_TALKER_DET
Definition: gsm_08_58.h:214
OSMO_TLVP_ERR_MAND_IE_MISSING
@ OSMO_TLVP_ERR_MAND_IE_MISSING
Definition: tlv.h:50
SYSINFO_TYPE_20
@ SYSINFO_TYPE_20
Definition: sysinfo.h:31
RSL_IE_IPAC_RTP_MPLEX
@ RSL_IE_IPAC_RTP_MPLEX
Definition: gsm_08_58.h:378
bitvec
RSL_ALLOC_SIZE
#define RSL_ALLOC_SIZE
Size for RSL msgb_alloc.
Definition: rsl.c:41
gsm48_system_information_type_2
Definition: gsm_04_08.h:1007
RSL_IE_CHAN_DESC
@ RSL_IE_CHAN_DESC
Definition: gsm_08_58.h:335
osmo_earfcn_si2q::arfcn
uint16_t * arfcn
Definition: sysinfo.h:50
RSL_IE_CBCH_LOAD_INFO
@ RSL_IE_CBCH_LOAD_INFO
Definition: gsm_08_58.h:332
RLL_CAUSE_SABM_MF
#define RLL_CAUSE_SABM_MF
Definition: gsm_08_58.h:541
RSL_MT_MODE_MODIFY_ACK
@ RSL_MT_MODE_MODIFY_ACK
Definition: gsm_08_58.h:203
SYSINFO_TYPE_3
@ SYSINFO_TYPE_3
Definition: sysinfo.h:18
RSL_SYSTEM_INFO_7
#define RSL_SYSTEM_INFO_7
Definition: gsm_08_58.h:603
OAP_CLIENT_ID_IE
@ OAP_CLIENT_ID_IE
Definition: oap.h:46
RSL_IPAC_EIE_NCELL_LIST_EXT
@ RSL_IPAC_EIE_NCELL_LIST_EXT
Definition: gsm_08_58.h:759
RSL_MT_IPAC_DLCX_NACK
@ RSL_MT_IPAC_DLCX_NACK
Definition: gsm_08_58.h:256
RSL_ERR_RR_UNAVAIL
#define RSL_ERR_RR_UNAVAIL
Definition: gsm_08_58.h:563
rsl_ipac_eie_tlvdef
const struct tlv_definition rsl_ipac_eie_tlvdef
TLV parser definitions for IPA embedded IEs.
Definition: rsl.c:593
rsl_init_rll_hdr
void rsl_init_rll_hdr(struct abis_rsl_rll_hdr *dh, uint8_t msg_type)
Initialize a RSL RLL header.
Definition: rsl.c:48
abis_rsl_cchan_hdr::ie_chan
uint8_t ie_chan
RSL_IE_CHAN_NR (tag)
Definition: gsm_08_58.h:111
osmo_mncc_stringify
struct msgb * osmo_mncc_stringify(const uint8_t *msg, unsigned int len)
RSL_IPAC_EIE_HO_CAUSE
@ RSL_IPAC_EIE_HO_CAUSE
Definition: gsm_08_58.h:753
osmo_encode_big_endian
uint8_t * osmo_encode_big_endian(uint64_t value, size_t data_len)
RSL_IE_IPAC_PROXY_UDP
@ RSL_IE_IPAC_PROXY_UDP
Definition: gsm_08_58.h:363
rsl_chan_nr_str
const char * rsl_chan_nr_str(uint8_t chan_nr)
Get human-readable string for RSL channel number, in static buffer.
Definition: rsl.c:266
RSL_ERR_OPT_IE_ERROR
#define RSL_ERR_OPT_IE_ERROR
Definition: gsm_08_58.h:587
RSL_IE_ENCR_INFO
@ RSL_IE_ENCR_INFO
Definition: gsm_08_58.h:294
RSL_IE_GROUP_CALL_REF
@ RSL_IE_GROUP_CALL_REF
Definition: gsm_08_58.h:334
ABIS_RSL_MDISC_TRANSP
#define ABIS_RSL_MDISC_TRANSP
Definition: gsm_08_58.h:151
RSL_MT_DELETE_IND
@ RSL_MT_DELETE_IND
Definition: gsm_08_58.h:179
LOGL_NOTICE
#define LOGL_NOTICE
osmo_oap_client_state::state
enum osmo_oap_client_state::@21 state
RSL_MT_CHAN_RQD
@ RSL_MT_CHAN_RQD
Definition: gsm_08_58.h:178
SYSINFO_TYPE_2quater
@ SYSINFO_TYPE_2quater
Definition: sysinfo.h:34
rsl_ipac_msg_name
const char * rsl_ipac_msg_name(uint8_t msg_type)
Get human-readable name of ip.access RSL msg type.
Definition: rsl.c:439
ONE
ONE
RSL_MT_IPAC_CRCX
@ RSL_MT_IPAC_CRCX
Definition: gsm_08_58.h:247
rsl2sitype
static const uint8_t rsl2sitype[256]
Definition: sysinfo.c:78
gsm_mncc_cccap
Definition: mncc.h:72
abis_rsl_common_hdr::msg_type
uint8_t msg_type
message type (abis_rsl_msgtype)
Definition: gsm_08_58.h:77
RSL_ERR_RADIO_LINK_FAIL
#define RSL_ERR_RADIO_LINK_FAIL
Definition: gsm_08_58.h:555
OAP_MSGT_REGISTER_ERROR
@ OAP_MSGT_REGISTER_ERROR
Definition: oap.h:52
RSL_MT_IPAC_PDCH_ACT_NACK
@ RSL_MT_IPAC_PDCH_ACT_NACK
Definition: gsm_08_58.h:231
GMM_CAUSE_PROTO_ERR_UNSPEC
@ GMM_CAUSE_PROTO_ERR_UNSPEC
Definition: gsm_04_08_gprs.h:237
OSMO_TLVP_ERR_OFS_BEYOND_BUFFER
@ OSMO_TLVP_ERR_OFS_BEYOND_BUFFER
Definition: tlv.h:46
value_string
RSL_ERR_IE_ERROR
#define RSL_ERR_IE_ERROR
Definition: gsm_08_58.h:585
RSL_IE_FULL_BCCH_INFO
@ RSL_IE_FULL_BCCH_INFO
Definition: gsm_08_58.h:326
RSL_MT_IPAC_CRCX_NACK
@ RSL_MT_IPAC_CRCX_NACK
Definition: gsm_08_58.h:249
RSL_MT_IPAC_BIND_MUX_ACK
@ RSL_MT_IPAC_BIND_MUX_ACK
Definition: gsm_08_58.h:239
RSL_MT_TFO_MOD_REQ
@ RSL_MT_TFO_MOD_REQ
Definition: gsm_08_58.h:224
ABIS_RSL_MDISC_COM_CHAN
#define ABIS_RSL_MDISC_COM_CHAN
Definition: gsm_08_58.h:144
RSL_ERR_RCH_ALR_ACTV_ALLOC
#define RSL_ERR_RCH_ALR_ACTV_ALLOC
Definition: gsm_08_58.h:579
osmo_oap_message::rand
uint8_t rand[16]
Definition: oap.h:70
RSL_IE_L3_INFO
@ RSL_IE_L3_INFO
Definition: gsm_08_58.h:298
gsm48_system_information_type_5
Definition: gsm_04_08.h:1060
RSL_SYSTEM_INFO_5
#define RSL_SYSTEM_INFO_5
Definition: gsm_08_58.h:601
TLV_TYPE_NONE
@ TLV_TYPE_NONE
no type
Definition: tlv.h:499
ABIS_RSL_CHAN_NR_CBITS_OSMO_CBCH8
#define ABIS_RSL_CHAN_NR_CBITS_OSMO_CBCH8
Definition: gsm_08_58.h:54
RSL_MT_MR_CODEC_MOD_REQ
@ RSL_MT_MR_CODEC_MOD_REQ
Definition: gsm_08_58.h:219
OSMO_EARFCN_MEAS_INVALID
#define OSMO_EARFCN_MEAS_INVALID
Definition: sysinfo.h:12
abis_rsl_rll_hdr::c
struct abis_rsl_common_hdr c
Definition: gsm_08_58.h:83
rsl_chan_nr_str_c
char * rsl_chan_nr_str_c(const void *ctx, uint8_t chan_nr)
Get human-readable string for RSL channel number, in dynamically-allocated buffer.
Definition: rsl.c:277
logp2
void logp2(int subsys, unsigned int level, const char *file, int line, int cont, const char *format,...)
RSL_MT_MR_CODEC_MOD_ACK
@ RSL_MT_MR_CODEC_MOD_ACK
Definition: gsm_08_58.h:220
osmo_shift_v_fixed
int osmo_shift_v_fixed(uint8_t **data, size_t *data_len, size_t len, uint8_t **value)
Advance the data pointer, subtract length and assign value pointer.
Definition: tlv_parser.c:468
RSL_IE_PREPROC_MEAS
@ RSL_IE_PREPROC_MEAS
Definition: gsm_08_58.h:321
osmo_tlv_prot_def::ie_def
struct osmo_tlv_prot_ie_def ie_def[256]
definition of IE for each 8-bit tag
Definition: tlv.h:686
RSL_ERR_MSG_TYPE
#define RSL_ERR_MSG_TYPE
Definition: gsm_08_58.h:583
osmo_sub_auth_data::type
enum osmo_sub_auth_type type
Definition: auth.h:40
ARRAY_SIZE
#define ARRAY_SIZE(x)
RSL_ACT_INTRA_NORM_ASS
#define RSL_ACT_INTRA_NORM_ASS
Definition: gsm_08_58.h:461
osmo_oap_message::autn
uint8_t autn[16]
Definition: oap.h:72
RSL_IPAC_EIE_NCELL_LIST
@ RSL_IPAC_EIE_NCELL_LIST
Definition: gsm_08_58.h:750
log_check_level
int log_check_level(int subsys, unsigned int level)
RSL_MT_SACCH_INFO_MODIFY
@ RSL_MT_SACCH_INFO_MODIFY
Definition: gsm_08_58.h:213
RSL_ACT_OSMO_PDCH
#define RSL_ACT_OSMO_PDCH
Definition: gsm_08_58.h:466
RSL_MT_TFO_REP
@ RSL_MT_TFO_REP
Definition: gsm_08_58.h:223
RSL_CHAN_RACH
#define RSL_CHAN_RACH
Definition: gsm_08_58.h:451
RSL_IE_TIMING_ADVANCE
@ RSL_IE_TIMING_ADVANCE
Definition: gsm_08_58.h:311
osmo_earfcn_si2q
Definition: sysinfo.h:48
vtvlv_gan_att_def
struct tlv_definition vtvlv_gan_att_def
Definition: tlv_parser.c:50
RSL_SYSTEM_INFO_3
#define RSL_SYSTEM_INFO_3
Definition: gsm_08_58.h:599
osmo_oap_client_state::secret_opc
uint8_t secret_opc[16]
Definition: oap_client.h:57
abis_rsl_rll_hdr::link_id
uint8_t link_id
Definition: gsm_08_58.h:91
osmo_oap_message
Parsed/decoded OAP protocol message.
Definition: oap.h:65
oap_evaluate_challenge
static int oap_evaluate_challenge(const struct osmo_oap_client_state *state, const uint8_t *rx_random, const uint8_t *rx_autn, uint8_t *tx_xres)
Definition: oap_client.c:76
SYSINFO_TYPE_5
@ SYSINFO_TYPE_5
Definition: sysinfo.h:20
RSL_IE_LLP_APDU
@ RSL_IE_LLP_APDU
Definition: gsm_08_58.h:347
RSL_CHAN_Bm_ACCHs
#define RSL_CHAN_Bm_ACCHs
Definition: gsm_08_58.h:446
RSL_IE_HANDO_REF
@ RSL_IE_HANDO_REF
Definition: gsm_08_58.h:296
auth.h
tlv_encode_ordered
int tlv_encode_ordered(struct msgb *msg, const struct tlv_definition *def, const struct tlv_parsed *tp, const uint8_t *tag_order, unsigned int tag_order_len)
Encode a set of decoded TLVs according to a given definition and IE order into a message buffer.
Definition: tlv_parser.c:199
osmo_earfcn_del
int osmo_earfcn_del(struct osmo_earfcn_si2q *e, uint16_t arfcn)
Delete arfcn (and corresponding measurement bandwith) from earfcn struct.
Definition: sysinfo.c:195
msgb_tvlv_put
static uint8_t * msgb_tvlv_put(struct msgb *msg, uint8_t tag, uint16_t len, const uint8_t *val)
put (append) a TvLV field to Message buffers
Definition: tlv.h:275
msgb_l3
#define msgb_l3(m)
RSL_MT_MR_CODEC_MOD_NACK
@ RSL_MT_MR_CODEC_MOD_NACK
Definition: gsm_08_58.h:221
chan_nr
uint8_t chan_nr
Definition: gsm_04_08.h:0
RSL_IE_CODEC_CONFIG
@ RSL_IE_CODEC_CONFIG
Definition: gsm_08_58.h:344
RSL_MT_RF_CHAN_REL_ACK
@ RSL_MT_RF_CHAN_REL_ACK
Definition: gsm_08_58.h:212
RSL_MT_EST_CONF
@ RSL_MT_EST_CONF
Definition: gsm_08_58.h:163
RSL_MT_ENCR_CMD
@ RSL_MT_ENCR_CMD
Definition: gsm_08_58.h:199
ABIS_RSL_CHAN_NR_CBITS_Lm_ACCHs
#define ABIS_RSL_CHAN_NR_CBITS_Lm_ACCHs(ss)
Definition: gsm_08_58.h:46
msgb::data_len
uint16_t data_len
RSL_IE_CAUSE
@ RSL_IE_CAUSE
Definition: gsm_08_58.h:313
RSL_SYSTEM_INFO_2ter
#define RSL_SYSTEM_INFO_2ter
Definition: gsm_08_58.h:607
osmo_tlv_prot_parse
int osmo_tlv_prot_parse(const struct osmo_tlv_prot_def *pdef, struct tlv_parsed *dec, unsigned int dec_multiples, uint8_t msg_type, const uint8_t *buf, unsigned int buf_len, uint8_t lv_tag, uint8_t lv_tag2, int log_subsys, const char *log_pfx)
Parse + Validate a TLV-encoded message against the protocol definition.
Definition: tlv_parser.c:719
RSL_MT_PREPROC_MEAS_RES
@ RSL_MT_PREPROC_MEAS_RES
Definition: gsm_08_58.h:211
RSL_IE_RACH_LOAD
@ RSL_IE_RACH_LOAD
Definition: gsm_08_58.h:305
file
write Write running configuration to or terminal n Write configuration to the file(same as write file)\n") ALIAS(config_write_file
RSL_SYSTEM_INFO_1
#define RSL_SYSTEM_INFO_1
Definition: gsm_08_58.h:597
abis_rsl_common_hdr::msg_discr
uint8_t msg_discr
message discriminator (ABIS_RSL_MDISC_*)
Definition: gsm_08_58.h:76
RSL_BCCH_CCCH_CONF_2_NC
#define RSL_BCCH_CCCH_CONF_2_NC
Definition: gsm_08_58.h:657
oap_client.h
OSMO_TLVP_ERR_IE_TOO_SHORT
@ OSMO_TLVP_ERR_IE_TOO_SHORT
Definition: tlv.h:51
RSL_MT_RES_REQ
@ RSL_MT_RES_REQ
Definition: gsm_08_58.h:172
RSL_MT_RF_CHAN_REL
@ RSL_MT_RF_CHAN_REL
Definition: gsm_08_58.h:207
RSL_SYSTEM_INFO_10
#define RSL_SYSTEM_INFO_10
Definition: gsm_08_58.h:610
RSL_MT_IMMEDIATE_ASSIGN_CMD
@ RSL_MT_IMMEDIATE_ASSIGN_CMD
Definition: gsm_08_58.h:181
RSL_IE_IPAC_CONN_ID
@ RSL_IE_IPAC_CONN_ID
Definition: gsm_08_58.h:373
RSL_MT_MEAS_RES
@ RSL_MT_MEAS_RES
Definition: gsm_08_58.h:201
rsl_dec_chan_nr
int rsl_dec_chan_nr(uint8_t chan_nr, uint8_t *type, uint8_t *subch, uint8_t *timeslot)
Decode RSL channel number.
Definition: rsl.c:185
RSL_CHAN_OSMO_PDCH
#define RSL_CHAN_OSMO_PDCH
Definition: gsm_08_58.h:453
osmo_oap_client_init
int osmo_oap_client_init(struct osmo_oap_client_config *config, struct osmo_oap_client_state *state)
Definition: oap_client.c:35
RLL_CAUSE_UNSOL_DM_RESP_MF
#define RLL_CAUSE_UNSOL_DM_RESP_MF
Definition: gsm_08_58.h:533
OSMO_AUTH_ALG_MILENAGE
@ OSMO_AUTH_ALG_MILENAGE
Definition: auth.h:34
msgb_l2
#define msgb_l2(m)
RSL_IE_IPAC_RTP_PAYLOAD
@ RSL_IE_IPAC_RTP_PAYLOAD
Definition: gsm_08_58.h:367
OAP_MSGT_REGISTER_RESULT
@ OAP_MSGT_REGISTER_RESULT
Definition: oap.h:53
RSL_ERR_MAND_IE_ERROR
#define RSL_ERR_MAND_IE_ERROR
Definition: gsm_08_58.h:586
RSL_IE_CB_CMD_TYPE
@ RSL_IE_CB_CMD_TYPE
Definition: gsm_08_58.h:328
LOGP
#define LOGP(ss, level, fmt, args...)
msgb_alloc
struct msgb * msgb_alloc(uint16_t size, const char *name)
osmo_oap_client_state::client_id
uint16_t client_id
Definition: oap_client.h:55
osmo_oap_message::message_type
enum osmo_oap_message_type message_type
Definition: oap.h:66
SYSINFO_TYPE_2
@ SYSINFO_TYPE_2
Definition: sysinfo.h:17
osmo_oap_message::client_id
uint16_t client_id
Definition: oap.h:68
RSL_MT_IPAC_DISC_MUX_ACK
@ RSL_MT_IPAC_DISC_MUX_ACK
Definition: gsm_08_58.h:242
RSL_IPAC_EIE_MASTER_SALT
@ RSL_IPAC_EIE_MASTER_SALT
Definition: gsm_08_58.h:761
tlv_encode_one
int tlv_encode_one(struct msgb *msg, enum tlv_type type, uint8_t tag, unsigned int len, const uint8_t *val)
Encode a single TLV into given message buffer.
Definition: tlv_parser.c:132
osmo_mncc_name
static const char * osmo_mncc_name(uint32_t msg_type)
Definition: mncc.h:96
gsm48_system_information_type_1
Definition: gsm_04_08.h:999
SYSINFO_TYPE_5ter
@ SYSINFO_TYPE_5ter
Definition: sysinfo.h:36
RSL_MT_NOT_CMD
@ RSL_MT_NOT_CMD
Definition: gsm_08_58.h:191
_MAX_SYSINFO_TYPE
@ _MAX_SYSINFO_TYPE
Definition: sysinfo.h:45
rsl_rll_push_hdr
void rsl_rll_push_hdr(struct msgb *msg, uint8_t msg_type, uint8_t chan_nr, uint8_t link_id, int transparent)
Push a RSL RLL header onto an existing msgb.
Definition: rsl.c:523
osmo_hexdump_nospc
char * osmo_hexdump_nospc(const unsigned char *buf, int len)
RSL_IPAC_EIE_AMR_CONV_THRESH
@ RSL_IPAC_EIE_AMR_CONV_THRESH
Definition: gsm_08_58.h:767
RSL_ERR_EQUIPMENT_FAIL
#define RSL_ERR_EQUIPMENT_FAIL
Definition: gsm_08_58.h:562
SYSINFO_TYPE_5bis
@ SYSINFO_TYPE_5bis
Definition: sysinfo.h:35
handle_challenge
static int handle_challenge(struct osmo_oap_client_state *state, struct osmo_oap_message *oap_rx, struct msgb **msg_tx)
Definition: oap_client.c:176
RSL_MT_IPAC_CONNECT_MUX_NACK
@ RSL_MT_IPAC_CONNECT_MUX_NACK
Definition: gsm_08_58.h:237
tlv.h
RSL_SYSTEM_INFO_16
#define RSL_SYSTEM_INFO_16
Definition: gsm_08_58.h:604
osmo_match_shift_tlv
int osmo_match_shift_tlv(uint8_t **data, size_t *data_len, uint8_t tag, uint8_t **value, size_t *value_len)
Verify TLV header and advance data / subtract length.
Definition: tlv_parser.c:534
RSL_MT_ERROR_IND
@ RSL_MT_ERROR_IND
Definition: gsm_08_58.h:161
osmo_tlv_prot_ie_def::min_len
uint16_t min_len
minimum length of IE value part, in octets
Definition: tlv.h:672
msg_type
uint8_t msg_type
Definition: gsm_04_08.h:2
RSL_IPAC_EIE_NCELL_DEFAULTS
@ RSL_IPAC_EIE_NCELL_DEFAULTS
Definition: gsm_08_58.h:749
gsm_08_58.h
logging.h
RSL_IE_PAGING_GROUP
@ RSL_IE_PAGING_GROUP
Definition: gsm_08_58.h:301
osmo_earfcn_bit_size
size_t osmo_earfcn_bit_size(const struct osmo_earfcn_si2q *e)
Return number of bits necessary to represent earfcn struct as Repeated E-UTRAN Neighbour Cells IE fro...
Definition: sysinfo.c:155
osmo_oap_client_handle
int osmo_oap_client_handle(struct osmo_oap_client_state *state, const struct msgb *msg_rx, struct msgb **msg_tx)
Definition: oap_client.c:213
osmo_tlv_prot_ie_name
const char * osmo_tlv_prot_ie_name(const struct osmo_tlv_prot_def *pdef, uint8_t iei)
get the IE name for given IEI in protocol pdef
Definition: tlv_parser.c:649
RSL_MT_PHY_CONTEXT_CONF
@ RSL_MT_PHY_CONTEXT_CONF
Definition: gsm_08_58.h:206
RSL_MT_MR_CODEC_MOD_PER
@ RSL_MT_MR_CODEC_MOD_PER
Definition: gsm_08_58.h:222
RSL_MT_OSMO_ETWS_CMD
@ RSL_MT_OSMO_ETWS_CMD
Definition: gsm_08_58.h:258
RSL_IE_MS_POWER
@ RSL_IE_MS_POWER
Definition: gsm_08_58.h:300
osmo_oap_client_encoded
struct msgb * osmo_oap_client_encoded(const struct osmo_oap_message *oap_msg)
Definition: oap_client.c:129
RSL_SYSTEM_INFO_2quater
#define RSL_SYSTEM_INFO_2quater
Definition: gsm_08_58.h:615
osmo_oap_message::rand_present
int rand_present
Definition: oap.h:69
RSL_MT_PAGING_CMD
@ RSL_MT_PAGING_CMD
Definition: gsm_08_58.h:180
RSL_IE_ACT_TYPE
@ RSL_IE_ACT_TYPE
Definition: gsm_08_58.h:290
arfcn
uint16_t arfcn
osmo_earfcn_si2q::qrxlm_valid
bool qrxlm_valid
Definition: sysinfo.h:70
RSL_IE_MS_TIMING_OFFSET
@ RSL_IE_MS_TIMING_OFFSET
Definition: gsm_08_58.h:324
osmo_shift_lv
int osmo_shift_lv(uint8_t **data, size_t *data_len, uint8_t **value, size_t *value_len)
Extract LV and advance data pointer + subtract length.
Definition: tlv_parser.c:602
RSL_ERR_TALKER_ACC_FAIL
#define RSL_ERR_TALKER_ACC_FAIL
Definition: gsm_08_58.h:557
RSL_IE_BS_POWER_PARAM
@ RSL_IE_BS_POWER_PARAM
Definition: gsm_08_58.h:319
RLL_CAUSE_UFRM_INC_PARAM
#define RLL_CAUSE_UFRM_INC_PARAM
Definition: gsm_08_58.h:536
RSL_CHAN_SDCCH4_ACCH
#define RSL_CHAN_SDCCH4_ACCH
Definition: gsm_08_58.h:448
RSL_SYSTEM_INFO_17
#define RSL_SYSTEM_INFO_17
Definition: gsm_08_58.h:605
RSL_MT_EST_REQ
@ RSL_MT_EST_REQ
Definition: gsm_08_58.h:162
RSL_IPAC_EIE_3G_HO_PARAM
@ RSL_IPAC_EIE_3G_HO_PARAM
Definition: gsm_08_58.h:764
RSL_IPAC_EIE_MS_PWR_CTL
@ RSL_IPAC_EIE_MS_PWR_CTL
Definition: gsm_08_58.h:747
abis_rsl_cchan_hdr
Definition: gsm_08_58.h:109
RSL_IE_RELEASE_MODE
@ RSL_IE_RELEASE_MODE
Definition: gsm_08_58.h:307
SYSINFO_TYPE_9
@ SYSINFO_TYPE_9
Definition: sysinfo.h:24
RSL_BCCH_CCCH_CONF_1_NC
#define RSL_BCCH_CCCH_CONF_1_NC
Definition: gsm_08_58.h:655
gsm48_rach_control
Definition: gsm_04_08.h:632
osmo_tlv_prot_def::name
const char * name
human-readable name of protocol
Definition: tlv.h:680
RSL_MT_CHAN_CONF
@ RSL_MT_CHAN_CONF
Definition: gsm_08_58.h:183
gsm_mncc_number::screen
int screen
Definition: mncc.h:37
msgb_tv_fixed_put
static uint8_t * msgb_tv_fixed_put(struct msgb *msg, uint8_t tag, unsigned int len, const uint8_t *val)
put (append) a TVfixed field to a Message buffers
Definition: tlv.h:382
RSL_ACT_TYPE_REACT
#define RSL_ACT_TYPE_REACT
Definition: gsm_08_58.h:459
osmo_oap_message::auts_present
int auts_present
Definition: oap.h:75
OSMO_AUTH_TYPE_UMTS
@ OSMO_AUTH_TYPE_UMTS
Definition: auth.h:19
osmo_earfcn_si2q::length
size_t length
Definition: sysinfo.h:55
osmo_tlv_prot_msg_def::mand_count
uint8_t mand_count
number of entries in 'mand_ies' above
Definition: tlv.h:666
rsl_err_vals
static const struct value_string rsl_err_vals[]
Definition: rsl.c:285
RSL_IPAC_EIE_RXLEV
@ RSL_IPAC_EIE_RXLEV
Definition: gsm_08_58.h:741
LOGL_ERROR
#define LOGL_ERROR
rsl_ipac_msgt_names
static const struct value_string rsl_ipac_msgt_names[]
ip.access specific
Definition: rsl.c:408
osmo_earfcn_init
void osmo_earfcn_init(struct osmo_earfcn_si2q *e)
Initialize earfcn struct.
Definition: sysinfo.c:211
msgb_printf
int msgb_printf(struct msgb *msgb, const char *format,...)
tlv_parsed
result of the TLV parser
Definition: tlv.h:522
RSL_MT_IPAC_DIR_RETR_ENQ
@ RSL_MT_IPAC_DIR_RETR_ENQ
Definition: gsm_08_58.h:228
RSL_IPAC_EIE_MEAS_TRANS_RES
@ RSL_IPAC_EIE_MEAS_TRANS_RES
Definition: gsm_08_58.h:763
osmo_oap_client_register
int osmo_oap_client_register(struct osmo_oap_client_state *state, struct msgb **msg_tx)
Definition: oap_client.c:153
osmo_constant_time_cmp
int osmo_constant_time_cmp(const uint8_t *exp, const uint8_t *rel, const int count)
RSL_MT_UNIT_DATA_IND
@ RSL_MT_UNIT_DATA_IND
Definition: gsm_08_58.h:169
rsl.h
RLL_CAUSE_UNSOL_SPRV_RESP
#define RLL_CAUSE_UNSOL_SPRV_RESP
Definition: gsm_08_58.h:534
osmo_oap_client_state
Definition: oap_client.h:46
osmo_sub_auth_data
permanent (secret) subscriber auth data
Definition: auth.h:39
RSL_SYSTEM_INFO_4
#define RSL_SYSTEM_INFO_4
Definition: gsm_08_58.h:600
osmo_tlv_prot_ie_def::name
const char * name
huamn-readable name (optional)
Definition: tlv.h:674
msgb_tv_put
static uint8_t * msgb_tv_put(struct msgb *msg, uint8_t tag, uint8_t val)
put (append) a TV field to a Message buffers
Definition: tlv.h:374
ABIS_RSL_CHAN_NR_CBITS_OSMO_CBCH4
#define ABIS_RSL_CHAN_NR_CBITS_OSMO_CBCH4
Definition: gsm_08_58.h:53
osmo_tlv_prot_msg_def::mand_ies
const uint8_t * mand_ies
array of mandatory IEs
Definition: tlv.h:664
RSL_IPAC_EIE_MEAS_AVG_CFG
@ RSL_IPAC_EIE_MEAS_AVG_CFG
Definition: gsm_08_58.h:745
TLV_TYPE_vTvLV_GAN
@ TLV_TYPE_vTvLV_GAN
variable-length tag, variable-length length
Definition: tlv.h:507
tlv_dump
int tlv_dump(struct tlv_parsed *dec)
Dump parsed TLV structure to stdout.
Definition: tlv_parser.c:53
TLV_TYPE_TV
@ TLV_TYPE_TV
tag-value (8bit)
Definition: tlv.h:502
TLVP_VAL
#define TLVP_VAL(x, y)
Definition: tlv.h:548
RSL_ACT_INTRA_IMM_ASS
#define RSL_ACT_INTRA_IMM_ASS
Definition: gsm_08_58.h:460
sysinfo.h
rxlev_stats
Definition: rxlev_stat.h:8
abis_rsl_rll_hdr::ie_chan
uint8_t ie_chan
RSL_IE_CHAN_NR (tag)
Definition: gsm_08_58.h:84
RSL_IE_LINK_IDENT
@ RSL_IE_LINK_IDENT
Definition: gsm_08_58.h:289
RSL_ERR_ENCR_UNIMPL
#define RSL_ERR_ENCR_UNIMPL
Definition: gsm_08_58.h:576
osmo_earfcn_si2q::prio_valid
bool prio_valid
Definition: sysinfo.h:68
osmo_oap_message::cause
enum gsm48_gmm_cause cause
Definition: oap.h:67
RSL_IE_L1_INFO
@ RSL_IE_L1_INFO
Definition: gsm_08_58.h:297
SYSINFO_TYPE_4
@ SYSINFO_TYPE_4
Definition: sysinfo.h:19
RSL_MT_EST_IND
@ RSL_MT_EST_IND
Definition: gsm_08_58.h:164