auth.h File Reference
GSM/GPRS/3G Authentication
`#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:132
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:527
RSL_IE_CMD_INDICATOR
@ RSL_IE_CMD_INDICATOR
Definition: gsm_08_58.h:263
RSL_ERR_IE_CONTENT
#define RSL_ERR_IE_CONTENT
Definition: gsm_08_58.h:506
RSL_IE_UPLINK_MEAS
@ RSL_IE_UPLINK_MEAS
Definition: gsm_08_58.h:238
RSL_MT_CONN_FAIL
@ RSL_MT_CONN_FAIL
Definition: gsm_08_58.h:125
len
uint8_t len
Definition: gsm_04_11.h:2
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:275
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:403
data
uint8_t data[0]
message payload data
Definition: gsm_03_41.h:34
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:44
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:230
RSL_MT_IPAC_BIND_MUX_NACK
@ RSL_MT_IPAC_BIND_MUX_NACK
Definition: gsm_08_58.h:168
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:69
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:221
link_id
uint8_t link_id
Definition: gsm_08_08.h:3
RSL_MT_RTD_REP
@ RSL_MT_RTD_REP
Definition: gsm_08_58.h:145
RSL_IE_NCH_DRX_INFO
@ RSL_IE_NCH_DRX_INFO
Definition: gsm_08_58.h:262
RSL_MT_MODE_MODIFY_REQ
@ RSL_MT_MODE_MODIFY_REQ
Definition: gsm_08_58.h:130
tlv_p_entry::val
const uint8_t * val
pointer to value
Definition: tlv.h:396
rsl_msgt_names
static const struct value_string rsl_msgt_names[]
Definition: rsl.c:287
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:133
RLL_CAUSE_T200_EXPIRED
#define RLL_CAUSE_T200_EXPIRED
Definition: gsm_08_58.h:448
RSL_IPAC_EIE_TIMING_ERR
@ RSL_IPAC_EIE_TIMING_ERR
Definition: gsm_08_58.h:669
RSL_IE_CHAN_NR
@ RSL_IE_CHAN_NR
Definition: gsm_08_58.h:214
gsm48_system_information_type_4
Definition: gsm_04_08.h:974
RLL_CAUSE_UNSOL_DM_RESP
#define RLL_CAUSE_UNSOL_DM_RESP
Definition: gsm_08_58.h:451
RSL_IE_IPAC_RTP_COMPR
@ RSL_IE_IPAC_RTP_COMPR
Definition: gsm_08_58.h:299
RLL_CAUSE_SABM_INFO_NOTALL
#define RLL_CAUSE_SABM_INFO_NOTALL
Definition: gsm_08_58.h:461
RSL_MT_SACCH_FILL
@ RSL_MT_SACCH_FILL
Definition: gsm_08_58.h:114
RSL_MT_REL_CONF
@ RSL_MT_REL_CONF
Definition: gsm_08_58.h:94
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:244
RSL_IE_CHAN_MODE
@ RSL_IE_CHAN_MODE
Definition: gsm_08_58.h:219
RSL_SYSTEM_INFO_5ter
#define RSL_SYSTEM_INFO_5ter
Definition: gsm_08_58.h:525
abis_rsl_cchan_hdr::c
struct abis_rsl_common_hdr c
Definition: gsm_08_58.h:59
RSL_IE_CHAN_NEEDED
@ RSL_IE_CHAN_NEEDED
Definition: gsm_08_58.h:253
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:104
RSL_MT_SUSP_CONF
@ RSL_MT_SUSP_CONF
Definition: gsm_08_58.h:99
RSL_IE_PAGING_LOAD
@ RSL_IE_PAGING_LOAD
Definition: gsm_08_58.h:228
cause
uint8_t cause
Definition: gsm_04_08.h:710
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:668
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:490
RSL_SYSTEM_INFO_9
#define RSL_SYSTEM_INFO_9
Definition: gsm_08_58.h:532
RSL_SYSTEM_INFO_5bis
#define RSL_SYSTEM_INFO_5bis
Definition: gsm_08_58.h:524
RSL_MT_REL_REQ
@ RSL_MT_REL_REQ
Definition: gsm_08_58.h:93
RSL_CHAN_BCCH
#define RSL_CHAN_BCCH
Definition: gsm_08_58.h:371
RSL_MT_IPAC_PDCH_DEACT_NACK
@ RSL_MT_IPAC_PDCH_DEACT_NACK
Definition: gsm_08_58.h:162
RSL_MEAS_INFO
#define RSL_MEAS_INFO
Definition: gsm_08_58.h:528
RSL_ACT_INTER_ASYNC
#define RSL_ACT_INTER_ASYNC
Definition: gsm_08_58.h:381
RSL_MT_IPAC_PDCH_DEACT
@ RSL_MT_IPAC_PDCH_DEACT
Definition: gsm_08_58.h:160
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:340
rsl_err_name
const char * rsl_err_name(uint8_t err)
Get human-readable name for RSL Error.
Definition: rsl.c:281
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:237
RLL_CAUSE_IFRM_INC_LEN
#define RLL_CAUSE_IFRM_INC_LEN
Definition: gsm_08_58.h:458
RSL_MT_LISTENER_DET
@ RSL_MT_LISTENER_DET
Definition: gsm_08_58.h:143
RLL_CAUSE_IFRM_INC_MBITS
#define RLL_CAUSE_IFRM_INC_MBITS
Definition: gsm_08_58.h:457
RSL_IE_IPAC_SPEECH_MODE
@ RSL_IE_IPAC_SPEECH_MODE
Definition: gsm_08_58.h:292
RSL_IE_SMSCB_MSG
@ RSL_IE_SMSCB_MSG
Definition: gsm_08_58.h:255
tvlv_att_def
struct tlv_definition tvlv_att_def
Definition: tlv_parser.c:48
RSL_MT_HANDO_DET
@ RSL_MT_HANDO_DET
Definition: gsm_08_58.h:128
OAP_AUTN_IE
@ OAP_AUTN_IE
Definition: oap.h:43
RSL_BCCH_CCCH_CONF_4_NC
#define RSL_BCCH_CCCH_CONF_4_NC
Definition: gsm_08_58.h:577
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:98
RLL_CAUSE_REEST_REQ
#define RLL_CAUSE_REEST_REQ
Definition: gsm_08_58.h:449
RSL_IE_RESOURCE_INFO
@ RSL_IE_RESOURCE_INFO
Definition: gsm_08_58.h:234
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:181
RSL_ERR_PROCESSOR_OVERLOAD
#define RSL_ERR_PROCESSOR_OVERLOAD
Definition: gsm_08_58.h:486
RSL_ERR_RES_UNAVAIL
#define RSL_ERR_RES_UNAVAIL
Definition: gsm_08_58.h:487
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:463
RSL_IE_IPAC_RTP_PAYLOAD2
@ RSL_IE_IPAC_RTP_PAYLOAD2
Definition: gsm_08_58.h:300
RSL_MT_DATA_IND
@ RSL_MT_DATA_IND
Definition: gsm_08_58.h:88
gsm_mncc_number::type
int type
Definition: mncc.h:34
RSL_IE_EMLPP_PRIO
@ RSL_IE_EMLPP_PRIO
Definition: gsm_08_58.h:264
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:221
RSL_MT_BCCH_INFO
@ RSL_MT_BCCH_INFO
Definition: gsm_08_58.h:104
RSL_ACT_TYPE_INITIAL
#define RSL_ACT_TYPE_INITIAL
Definition: gsm_08_58.h:377
RSL_ERR_IE_NONEXIST
#define RSL_ERR_IE_NONEXIST
Definition: gsm_08_58.h:504
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:680
RSL_MT_PRE_HANDO_NOTIF
@ RSL_MT_PRE_HANDO_NOTIF
Definition: gsm_08_58.h:146
RSL_IE_SYSINFO_TYPE
@ RSL_IE_SYSINFO_TYPE
Definition: gsm_08_58.h:243
RSL_IE_STARTNG_TIME
@ RSL_IE_STARTNG_TIME
Definition: gsm_08_58.h:236
RSL_IE_REQ_REFERENCE
@ RSL_IE_REQ_REFERENCE
Definition: gsm_08_58.h:232
gsm_mncc_number
Definition: mncc.h:33
RSL_SYSTEM_INFO_6
#define RSL_SYSTEM_INFO_6
Definition: gsm_08_58.h:518
gsm_mncc_cause
Definition: mncc.h:41
gsm_mncc_bearer_cap
Definition: mncc.h:12
timeslot
uint8_t timeslot
E1 timeslot.
Definition: gsm_12_21.h:4
RSL_IE_IPAC_RTP_JIT_BUF
@ RSL_IE_IPAC_RTP_JIT_BUF
Definition: gsm_08_58.h:298
RSL_IPAC_EIE_NUM_OF_MS
@ RSL_IPAC_EIE_NUM_OF_MS
Definition: gsm_08_58.h:681
RSL_MT_IPAC_MDCX_NACK
@ RSL_MT_IPAC_MDCX_NACK
Definition: gsm_08_58.h:180
TLV_TYPE_FIXED
@ TLV_TYPE_FIXED
fixed-length value-only
Definition: tlv.h:402
RSL_IE_MAIN_CHAN_REF
@ RSL_IE_MAIN_CHAN_REF
Definition: gsm_08_58.h:266
RSL_MT_LOCATION_INFO
@ RSL_MT_LOCATION_INFO
Definition: gsm_08_58.h:153
tlv_p_entry::len
uint16_t len
length
Definition: tlv.h:395
msgb_v_put
static uint8_t * msgb_v_put(struct msgb *msg, uint8_t val)
put (append) a V field to a msgb
Definition: tlv.h:321
RSL_ERR_CCCH_OVERLOAD
#define RSL_ERR_CCCH_OVERLOAD
Definition: gsm_08_58.h:484
osmo_oap_message::auts
uint8_t auts[14]
Definition: oap.h:76
RSL_IPAC_EIE_RXQUAL
@ RSL_IPAC_EIE_RXQUAL
Definition: gsm_08_58.h:667
RLL_CAUSE_SFRM_INC_PARAM
#define RLL_CAUSE_SFRM_INC_PARAM
Definition: gsm_08_58.h:456
RSL_ERR_SERV_OPT_UNIMPL
#define RSL_ERR_SERV_OPT_UNIMPL
Definition: gsm_08_58.h:493
RSL_MT_MS_POWER_CONTROL
@ RSL_MT_MS_POWER_CONTROL
Definition: gsm_08_58.h:136
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:163
ccch_conf
uint8_t ccch_conf
Definition: gsm_04_08.h:721
RSL_SYSTEM_INFO_20
#define RSL_SYSTEM_INFO_20
Definition: gsm_08_58.h:535
TLV_TYPE_T
@ TLV_TYPE_T
tag-only
Definition: tlv.h:403
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:260
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:411
RSL_MT_REL_IND
@ RSL_MT_REL_IND
Definition: gsm_08_58.h:95
RSL_IPAC_EIE_BS_PWR_CTL
@ RSL_IPAC_EIE_BS_PWR_CTL
Definition: gsm_08_58.h:671
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:450
RSL_IE_FULL_IMM_ASS_INFO
@ RSL_IE_FULL_IMM_ASS_INFO
Definition: gsm_08_58.h:256
NUM_RXLEVS
#define NUM_RXLEVS
Definition: rxlev_stat.h:5
u8
uint8_t u8
Definition: common.h:18
gsm48_system_information_type_3
Definition: gsm_04_08.h:962
RSL_ACT_SECOND_ADD
#define RSL_ACT_SECOND_ADD
Definition: gsm_08_58.h:383
RSL_MT_MODE_MODIFY_NACK
@ RSL_MT_MODE_MODIFY_NACK
Definition: gsm_08_58.h:132
RSL_SYSTEM_INFO_8
#define RSL_SYSTEM_INFO_8
Definition: gsm_08_58.h:512
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:123
oap.h
RSL_IE_IPAC_REMOTE_IP
@ RSL_IE_IPAC_REMOTE_IP
Definition: gsm_08_58.h:288
RSL_IE_IPAC_REMOTE_PORT
@ RSL_IE_IPAC_REMOTE_PORT
Definition: gsm_08_58.h:289
RSL_IPAC_EIE_NCELL_DEF_EXT
@ RSL_IPAC_EIE_NCELL_DEF_EXT
Definition: gsm_08_58.h:683
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:179
RSL_ERR_OM_INTERVENTION
#define RSL_ERR_OM_INTERVENTION
Definition: gsm_08_58.h:477
RSL_MT_OVERLOAD
@ RSL_MT_OVERLOAD
Definition: gsm_08_58.h:115
RSL_CHAN_SDCCH8_ACCH
#define RSL_CHAN_SDCCH8_ACCH
Definition: gsm_08_58.h:370
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 msgb
Definition: tlv.h:355
rsl_msg_name
const char * rsl_msg_name(uint8_t err)
Get human-readable string for RSL Message Type.
Definition: rsl.c:358
RSL_IE_IPAC_LOCAL_PORT
@ RSL_IE_IPAC_LOCAL_PORT
Definition: gsm_08_58.h:291
rsl_act_type_names
const struct value_string rsl_act_type_names[]
String names of RSL Channel Activation Types.
Definition: rsl.c:581
RSL_MT_IPAC_BIND_MUX
@ RSL_MT_IPAC_BIND_MUX
Definition: gsm_08_58.h:166
RSL_ERR_INVALID_MESSAGE
#define RSL_ERR_INVALID_MESSAGE
Definition: gsm_08_58.h:496
RSL_SYSTEM_INFO_2
#define RSL_SYSTEM_INFO_2
Definition: gsm_08_58.h:514
gsm48_system_information_type_header
Definition: gsm_04_08.h:830
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:682
tlv_parsed::lv
struct tlv_p_entry lv[256]
Definition: tlv.h:425
RSL_IE_IPAC_LOCAL_IP
@ RSL_IE_IPAC_LOCAL_IP
Definition: gsm_08_58.h:293
RSL_IE_MS_IDENTITY
@ RSL_IE_MS_IDENTITY
Definition: gsm_08_58.h:225
RSL_ERR_MSG_DISCR
#define RSL_ERR_MSG_DISCR
Definition: gsm_08_58.h:498
RSL_MT_RF_RES_IND
@ RSL_MT_RF_RES_IND
Definition: gsm_08_58.h:113
RSL_IPAC_EIE_3G_NCELL_LIST
@ RSL_IPAC_EIE_3G_NCELL_LIST
Definition: gsm_08_58.h:690
rxlev_stat.h
RLL_CAUSE_FRM_UNIMPL
#define RLL_CAUSE_FRM_UNIMPL
Definition: gsm_08_58.h:459
TLV_TYPE_TLV
@ TLV_TYPE_TLV
tag-length-value
Definition: tlv.h:405
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:116
RSL_IE_SMSCB_CHAN_INDICATOR
@ RSL_IE_SMSCB_CHAN_INDICATOR
Definition: gsm_08_58.h:259
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:1042
RSL_IPAC_EIE_HO_THRESH_COMP
@ RSL_IPAC_EIE_HO_THRESH_COMP
Definition: gsm_08_58.h:677
TLV_TYPE_TvLV
@ TLV_TYPE_TvLV
tag, variable length, value
Definition: tlv.h:407
RSL_IE_SMSCB_INFO
@ RSL_IE_SMSCB_INFO
Definition: gsm_08_58.h:249
OAP_XRES_IE
@ OAP_XRES_IE
Definition: oap.h:44
RSL_MT_IPAC_MDCX
@ RSL_MT_IPAC_MDCX
Definition: gsm_08_58.h:178
tlv_definition
Definition of All 256 IE / TLV.
Definition: tlv.h:419
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:679
RSL_IE_MEAS_RES_NR
@ RSL_IE_MEAS_RES_NR
Definition: gsm_08_58.h:240
abis_rsl_rll_hdr
Definition: gsm_08_58.h:40
RSL_ERR_T_MSRFPCI_EXP
#define RSL_ERR_T_MSRFPCI_EXP
Definition: gsm_08_58.h:479
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:576
RSL_MT_CCCH_LOAD_IND
@ RSL_MT_CCCH_LOAD_IND
Definition: gsm_08_58.h:105
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:257
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:483
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:501
RSL_IE_IPAC_RTP_CSD_FMT
@ RSL_IE_IPAC_RTP_CSD_FMT
Definition: gsm_08_58.h:297
RSL_CHAN_PCH_AGCH
#define RSL_CHAN_PCH_AGCH
Definition: gsm_08_58.h:373
tlv_def::type
enum tlv_type type
TLV type.
Definition: tlv.h:414
RSL_MT_IPAC_DISC_MUX
@ RSL_MT_IPAC_DISC_MUX
Definition: gsm_08_58.h:169
_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:157
RSL_ERR_PROTO
#define RSL_ERR_PROTO
Definition: gsm_08_58.h:507
RSL_MT_RECON_REQ
@ RSL_MT_RECON_REQ
Definition: gsm_08_58.h:101
RSL_ERR_ACCH_OVERLOAD
#define RSL_ERR_ACCH_OVERLOAD
Definition: gsm_08_58.h:485
RSL_MT_SMS_BC_REQ
@ RSL_MT_SMS_BC_REQ
Definition: gsm_08_58.h:110
RSL_SYSTEM_INFO_18
#define RSL_SYSTEM_INFO_18
Definition: gsm_08_58.h:533
RSL_MT_PREPROC_CONFIG
@ RSL_MT_PREPROC_CONFIG
Definition: gsm_08_58.h:138
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:473
RSL_BCCH_CCCH_CONF_1_C
#define RSL_BCCH_CCCH_CONF_1_C
Definition: gsm_08_58.h:574
RSL_MT_CHAN_ACTIV_NACK
@ RSL_MT_CHAN_ACTIV_NACK
Definition: gsm_08_58.h:124
RSL_CHAN_Lm_ACCHs
#define RSL_CHAN_Lm_ACCHs
Definition: gsm_08_58.h:368
RSL_IE_MR_CONTROL
@ RSL_IE_MR_CONTROL
Definition: gsm_08_58.h:268
RSL_IE_CHAN_IDENT
@ RSL_IE_CHAN_IDENT
Definition: gsm_08_58.h:218
gsm_mncc_number::present
int present
Definition: mncc.h:36
RSL_MT_DEACTIVATE_SACCH
@ RSL_MT_DEACTIVATE_SACCH
Definition: gsm_08_58.h:126
RSL_MT_IPAC_PDCH_ACT_ACK
@ RSL_MT_IPAC_PDCH_ACT_ACK
Definition: gsm_08_58.h:158
RSL_MT_IPAC_CONNECT_MUX_ACK
@ RSL_MT_IPAC_CONNECT_MUX_ACK
Definition: gsm_08_58.h:164
RSL_MT_IPAC_DLCX_ACK
@ RSL_MT_IPAC_DLCX_ACK
Definition: gsm_08_58.h:183
TLV_TYPE_TL16V
@ TLV_TYPE_TL16V
tag, 16 bit length, value
Definition: tlv.h:406
RSL_ERR_IE_LENGTH
#define RSL_ERR_IE_LENGTH
Definition: gsm_08_58.h:505
RSL_ACT_SECOND_MULTI
#define RSL_ACT_SECOND_MULTI
Definition: gsm_08_58.h:384
RSL_IE_PYHS_CONTEXT
@ RSL_IE_PYHS_CONTEXT
Definition: gsm_08_58.h:229
SYSINFO_TYPE_6
@ SYSINFO_TYPE_6
Definition: sysinfo.h:21
RLL_CAUSE_SEQ_ERR
#define RLL_CAUSE_SEQ_ERR
Definition: gsm_08_58.h:454
RSL_MT_IPAC_DLCX
@ RSL_MT_IPAC_DLCX
Definition: gsm_08_58.h:182
RSL_IPAC_EIE_SDCCH_CTL_PARAM
@ RSL_IPAC_EIE_SDCCH_CTL_PARAM
Definition: gsm_08_58.h:691
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:217
tlv_definition::def
struct tlv_def def[256]
Definition: tlv.h:420
RSL_ERR_INTERWORKING
#define RSL_ERR_INTERWORKING
Definition: gsm_08_58.h:509
RSL_ERR_MSG_SEQ
#define RSL_ERR_MSG_SEQ
Definition: gsm_08_58.h:500
rxlev_stat_input
void rxlev_stat_input(struct rxlev_stats *st, uint16_t arfcn, uint8_t rxlev)
Definition: rxlev_stat.c:36
RSL_ERR_HANDOVER_ACC_FAIL
#define RSL_ERR_HANDOVER_ACC_FAIL
Definition: gsm_08_58.h:475
RSL_IE_MSG_ID
@ RSL_IE_MSG_ID
Definition: gsm_08_58.h:241
iei
uint8_t iei
Definition: gsm_08_58.h:4
RSL_IPAC_EIE_MASTER_KEY
@ RSL_IPAC_EIE_MASTER_KEY
Definition: gsm_08_58.h:685
RSL_IE_UIC
@ RSL_IE_UIC
Definition: gsm_08_58.h:265
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:455
gsm48_system_information_type_6
Definition: gsm_04_08.h:1025
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:397
type
uint8_t type
Definition: gsm_04_08.h:713
RSL_MT_SMS_BC_CMD
@ RSL_MT_SMS_BC_CMD
Definition: gsm_08_58.h:117
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 msgb
Definition: tlv.h:296
RSL_ERR_NORMAL_UNSPEC
#define RSL_ERR_NORMAL_UNSPEC
Definition: gsm_08_58.h:478
RSL_IPAC_EIE_PC_THRESH_COMP
@ RSL_IPAC_EIE_PC_THRESH_COMP
Definition: gsm_08_58.h:676
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:522
RSL_MT_DATA_REQ
@ RSL_MT_DATA_REQ
Definition: gsm_08_58.h:87
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:246
RSL_IE_RLM_CAUSE
@ RSL_IE_RLM_CAUSE
Definition: gsm_08_58.h:235
ABIS_RSL_MDISC_RLL
#define ABIS_RSL_MDISC_RLL
Definition: gsm_08_58.h:68
RSL_IPAC_EIE_HANDO_THRESH
@ RSL_IPAC_EIE_HANDO_THRESH
Definition: gsm_08_58.h:673
TLV_TYPE_SINGLE_TV
@ TLV_TYPE_SINGLE_TV
tag and value (both 4 bit) in 1 byte
Definition: tlv.h:408
RSL_IE_ERR_MSG
@ RSL_IE_ERR_MSG
Definition: gsm_08_58.h:251
RSL_IE_IMM_ASS_INFO
@ RSL_IE_IMM_ASS_INFO
Definition: gsm_08_58.h:248
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:522
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:152
RSL_ERR_TRANSC_UNAVAIL
#define RSL_ERR_TRANSC_UNAVAIL
Definition: gsm_08_58.h:489
gsm_04_08.h
osmo_oap_message::xres_present
int xres_present
Definition: oap.h:73
RSL_IE_TFO_STATUS
@ RSL_IE_TFO_STATUS
Definition: gsm_08_58.h:272
RSL_IE_RTD
@ RSL_IE_RTD
Definition: gsm_08_58.h:271
rsl_rlm_cause_name
const char * rsl_rlm_cause_name(uint8_t err)
Get human-readable string for RLM cause.
Definition: rsl.c:430
RSL_IE_SUP_CODEC_TYPES
@ RSL_IE_SUP_CODEC_TYPES
Definition: gsm_08_58.h:269
RSL_IE_IPAC_BSCMPL_TOUT
@ RSL_IE_IPAC_BSCMPL_TOUT
Definition: gsm_08_58.h:287
RSL_MT_IPAC_CRCX_ACK
@ RSL_MT_IPAC_CRCX_ACK
Definition: gsm_08_58.h:176
RSL_MT_REMOTE_CODEC_CONF_REP
@ RSL_MT_REMOTE_CODEC_CONF_REP
Definition: gsm_08_58.h:144
RSL_MT_IPAC_DISC_MUX_NACK
@ RSL_MT_IPAC_DISC_MUX_NACK
Definition: gsm_08_58.h:171
RSL_IE_IPAC_RTP_MPLEX_ID
@ RSL_IE_IPAC_RTP_MPLEX_ID
Definition: gsm_08_58.h:302
SYSINFO_TYPE_18
@ SYSINFO_TYPE_18
Definition: sysinfo.h:29
__attribute__
static __attribute__((constructor))
Definition: tlv_parser.c:352
RSL_SYSTEM_INFO_13
#define RSL_SYSTEM_INFO_13
Definition: gsm_08_58.h:529
RSL_IE_MR_CONFIG
@ RSL_IE_MR_CONFIG
Definition: gsm_08_58.h:267
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:436
RSL_MT_UNIT_DATA_REQ
@ RSL_MT_UNIT_DATA_REQ
Definition: gsm_08_58.h:96
RSL_MT_IPAC_PDCH_DEACT_ACK
@ RSL_MT_IPAC_PDCH_DEACT_ACK
Definition: gsm_08_58.h:161
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:122
tlv_def::fixed_len
uint8_t fixed_len
length in case of TLV_TYPE_FIXED
Definition: tlv.h:415
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:137
abis_rsl_rll_hdr::chan_nr
uint8_t chan_nr
RSL channel number (value)
Definition: gsm_08_58.h:43
RSL_MT_CBCH_LOAD_IND
@ RSL_MT_CBCH_LOAD_IND
Definition: gsm_08_58.h:118
RSL_ACT_INTER_SYNC
#define RSL_ACT_INTER_SYNC
Definition: gsm_08_58.h:382
rxlev_stat_reset
void rxlev_stat_reset(struct rxlev_stats *st)
Definition: rxlev_stat.c:67
RSL_SYSTEM_INFO_19
#define RSL_SYSTEM_INFO_19
Definition: gsm_08_58.h:534
gsm_mncc_useruser
Definition: mncc.h:51
RSL_MT_TALKER_DET
@ RSL_MT_TALKER_DET
Definition: gsm_08_58.h:142
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:301
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:933
RSL_IE_CHAN_DESC
@ RSL_IE_CHAN_DESC
Definition: gsm_08_58.h:261
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:258
RLL_CAUSE_SABM_MF
#define RLL_CAUSE_SABM_MF
Definition: gsm_08_58.h:460
RSL_MT_MODE_MODIFY_ACK
@ RSL_MT_MODE_MODIFY_ACK
Definition: gsm_08_58.h:131
SYSINFO_TYPE_3
@ SYSINFO_TYPE_3
Definition: sysinfo.h:18
RSL_SYSTEM_INFO_7
#define RSL_SYSTEM_INFO_7
Definition: gsm_08_58.h:519
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:684
RSL_MT_IPAC_DLCX_NACK
@ RSL_MT_IPAC_DLCX_NACK
Definition: gsm_08_58.h:184
RSL_ERR_RR_UNAVAIL
#define RSL_ERR_RR_UNAVAIL
Definition: gsm_08_58.h:482
rsl_ipac_eie_tlvdef
const struct tlv_definition rsl_ipac_eie_tlvdef
TLV parser definitions for IPA embedded IEs.
Definition: rsl.c:549
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:60
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:678
RSL_IE_IPAC_PROXY_UDP
@ RSL_IE_IPAC_PROXY_UDP
Definition: gsm_08_58.h:286
rsl_chan_nr_str
const char * rsl_chan_nr_str(uint8_t chan_nr)
Get human-readable string for RSL channel number.
Definition: rsl.c:219
RSL_ERR_OPT_IE_ERROR
#define RSL_ERR_OPT_IE_ERROR
Definition: gsm_08_58.h:503
RSL_IE_ENCR_INFO
@ RSL_IE_ENCR_INFO
Definition: gsm_08_58.h:220
RSL_IE_GROUP_CALL_REF
@ RSL_IE_GROUP_CALL_REF
Definition: gsm_08_58.h:260
ABIS_RSL_MDISC_TRANSP
#define ABIS_RSL_MDISC_TRANSP
Definition: gsm_08_58.h:79
RSL_MT_DELETE_IND
@ RSL_MT_DELETE_IND
Definition: gsm_08_58.h:107
RSL_MT_CHAN_RQD
@ RSL_MT_CHAN_RQD
Definition: gsm_08_58.h:106
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:395
RSL_MT_IPAC_CRCX
@ RSL_MT_IPAC_CRCX
Definition: gsm_08_58.h:175
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:35
RSL_ERR_RADIO_LINK_FAIL
#define RSL_ERR_RADIO_LINK_FAIL
Definition: gsm_08_58.h:474
RSL_MT_IPAC_PDCH_ACT_NACK
@ RSL_MT_IPAC_PDCH_ACT_NACK
Definition: gsm_08_58.h:159
GMM_CAUSE_PROTO_ERR_UNSPEC
@ GMM_CAUSE_PROTO_ERR_UNSPEC
Definition: gsm_04_08_gprs.h:227
RSL_ERR_IE_ERROR
#define RSL_ERR_IE_ERROR
Definition: gsm_08_58.h:501
RSL_IE_FULL_BCCH_INFO
@ RSL_IE_FULL_BCCH_INFO
Definition: gsm_08_58.h:252
RSL_MT_IPAC_CRCX_NACK
@ RSL_MT_IPAC_CRCX_NACK
Definition: gsm_08_58.h:177
RSL_MT_IPAC_BIND_MUX_ACK
@ RSL_MT_IPAC_BIND_MUX_ACK
Definition: gsm_08_58.h:167
RSL_MT_TFO_MOD_REQ
@ RSL_MT_TFO_MOD_REQ
Definition: gsm_08_58.h:152
ABIS_RSL_MDISC_COM_CHAN
#define ABIS_RSL_MDISC_COM_CHAN
Definition: gsm_08_58.h:72
RSL_ERR_RCH_ALR_ACTV_ALLOC
#define RSL_ERR_RCH_ALR_ACTV_ALLOC
Definition: gsm_08_58.h:495
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:224
gsm48_system_information_type_5
Definition: gsm_04_08.h:986
RSL_SYSTEM_INFO_5
#define RSL_SYSTEM_INFO_5
Definition: gsm_08_58.h:517
TLV_TYPE_NONE
@ TLV_TYPE_NONE
no type
Definition: tlv.h:401
RSL_MT_MR_CODEC_MOD_REQ
@ RSL_MT_MR_CODEC_MOD_REQ
Definition: gsm_08_58.h:147
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:41
RSL_MT_MR_CODEC_MOD_ACK
@ RSL_MT_MR_CODEC_MOD_ACK
Definition: gsm_08_58.h:148
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:369
RSL_IE_PREPROC_MEAS
@ RSL_IE_PREPROC_MEAS
Definition: gsm_08_58.h:247
RSL_ERR_MSG_TYPE
#define RSL_ERR_MSG_TYPE
Definition: gsm_08_58.h:499
version
char version[20]
Definition: ipaccess.h:12
RSL_ACT_INTRA_NORM_ASS
#define RSL_ACT_INTRA_NORM_ASS
Definition: gsm_08_58.h:380
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:675
RSL_MT_SACCH_INFO_MODIFY
@ RSL_MT_SACCH_INFO_MODIFY
Definition: gsm_08_58.h:141
RSL_ACT_OSMO_PDCH
#define RSL_ACT_OSMO_PDCH
Definition: gsm_08_58.h:385
RSL_MT_TFO_REP
@ RSL_MT_TFO_REP
Definition: gsm_08_58.h:151
RSL_CHAN_RACH
#define RSL_CHAN_RACH
Definition: gsm_08_58.h:372
RSL_IE_TIMING_ADVANCE
@ RSL_IE_TIMING_ADVANCE
Definition: gsm_08_58.h:237
osmo_earfcn_si2q
Definition: sysinfo.h:48
vtvlv_gan_att_def
struct tlv_definition vtvlv_gan_att_def
Definition: tlv_parser.c:49
RSL_SYSTEM_INFO_3
#define RSL_SYSTEM_INFO_3
Definition: gsm_08_58.h:515
abis_rsl_rll_hdr::link_id
uint8_t link_id
RSL link identifier (value)
Definition: gsm_08_58.h:45
osmo_oap_message
Parsed/decoded OAP protocol message.
Definition: oap.h:65
SYSINFO_TYPE_5
@ SYSINFO_TYPE_5
Definition: sysinfo.h:20
RSL_IE_LLP_APDU
@ RSL_IE_LLP_APDU
Definition: gsm_08_58.h:273
RSL_CHAN_Bm_ACCHs
#define RSL_CHAN_Bm_ACCHs
Definition: gsm_08_58.h:367
RSL_IE_HANDO_REF
@ RSL_IE_HANDO_REF
Definition: gsm_08_58.h:222
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
RSL_MT_MR_CODEC_MOD_NACK
@ RSL_MT_MR_CODEC_MOD_NACK
Definition: gsm_08_58.h:149
chan_nr
uint8_t chan_nr
RSL channel number (value)
Definition: gsm_04_08.h:2
RSL_IE_CODEC_CONFIG
@ RSL_IE_CODEC_CONFIG
Definition: gsm_08_58.h:270
RSL_MT_RF_CHAN_REL_ACK
@ RSL_MT_RF_CHAN_REL_ACK
Definition: gsm_08_58.h:140
RSL_MT_EST_CONF
@ RSL_MT_EST_CONF
Definition: gsm_08_58.h:91
RSL_MT_ENCR_CMD
@ RSL_MT_ENCR_CMD
Definition: gsm_08_58.h:127
RSL_IE_CAUSE
@ RSL_IE_CAUSE
Definition: gsm_08_58.h:239
RSL_SYSTEM_INFO_2ter
#define RSL_SYSTEM_INFO_2ter
Definition: gsm_08_58.h:523
RSL_MT_PREPROC_MEAS_RES
@ RSL_MT_PREPROC_MEAS_RES
Definition: gsm_08_58.h:139
RSL_IE_RACH_LOAD
@ RSL_IE_RACH_LOAD
Definition: gsm_08_58.h:231
RSL_SYSTEM_INFO_1
#define RSL_SYSTEM_INFO_1
Definition: gsm_08_58.h:513
abis_rsl_common_hdr::msg_discr
uint8_t msg_discr
message discriminator (ABIS_RSL_MDISC_*)
Definition: gsm_08_58.h:34
RSL_BCCH_CCCH_CONF_2_NC
#define RSL_BCCH_CCCH_CONF_2_NC
Definition: gsm_08_58.h:575
RSL_MT_RES_REQ
@ RSL_MT_RES_REQ
Definition: gsm_08_58.h:100
RSL_MT_RF_CHAN_REL
@ RSL_MT_RF_CHAN_REL
Definition: gsm_08_58.h:135
RSL_SYSTEM_INFO_10
#define RSL_SYSTEM_INFO_10
Definition: gsm_08_58.h:526
RSL_MT_IMMEDIATE_ASSIGN_CMD
@ RSL_MT_IMMEDIATE_ASSIGN_CMD
Definition: gsm_08_58.h:109
RSL_IE_IPAC_CONN_ID
@ RSL_IE_IPAC_CONN_ID
Definition: gsm_08_58.h:296
RSL_MT_MEAS_RES
@ RSL_MT_MEAS_RES
Definition: gsm_08_58.h:129
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:184
RSL_CHAN_OSMO_PDCH
#define RSL_CHAN_OSMO_PDCH
Definition: gsm_08_58.h:374
RLL_CAUSE_UNSOL_DM_RESP_MF
#define RLL_CAUSE_UNSOL_DM_RESP_MF
Definition: gsm_08_58.h:452
RSL_IE_IPAC_RTP_PAYLOAD
@ RSL_IE_IPAC_RTP_PAYLOAD
Definition: gsm_08_58.h:290
RSL_ERR_MAND_IE_ERROR
#define RSL_ERR_MAND_IE_ERROR
Definition: gsm_08_58.h:502
RSL_IE_CB_CMD_TYPE
@ RSL_IE_CB_CMD_TYPE
Definition: gsm_08_58.h:254
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:170
RSL_IPAC_EIE_MASTER_SALT
@ RSL_IPAC_EIE_MASTER_SALT
Definition: gsm_08_58.h:686
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:925
SYSINFO_TYPE_5ter
@ SYSINFO_TYPE_5ter
Definition: sysinfo.h:36
RSL_MT_NOT_CMD
@ RSL_MT_NOT_CMD
Definition: gsm_08_58.h:119
_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:479
RSL_IPAC_EIE_AMR_CONV_THRESH
@ RSL_IPAC_EIE_AMR_CONV_THRESH
Definition: gsm_08_58.h:692
RSL_ERR_EQUIPMENT_FAIL
#define RSL_ERR_EQUIPMENT_FAIL
Definition: gsm_08_58.h:481
SYSINFO_TYPE_5bis
@ SYSINFO_TYPE_5bis
Definition: sysinfo.h:35
RSL_MT_IPAC_CONNECT_MUX_NACK
@ RSL_MT_IPAC_CONNECT_MUX_NACK
Definition: gsm_08_58.h:165
tlv.h
RSL_SYSTEM_INFO_16
#define RSL_SYSTEM_INFO_16
Definition: gsm_08_58.h:520
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:435
RSL_MT_ERROR_IND
@ RSL_MT_ERROR_IND
Definition: gsm_08_58.h:89
msg_type
uint8_t msg_type
Definition: gsm_04_08.h:710
RSL_IPAC_EIE_NCELL_DEFAULTS
@ RSL_IPAC_EIE_NCELL_DEFAULTS
Definition: gsm_08_58.h:674
gsm_08_58.h
RSL_IE_PAGING_GROUP
@ RSL_IE_PAGING_GROUP
Definition: gsm_08_58.h:227
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
RSL_MT_PHY_CONTEXT_CONF
@ RSL_MT_PHY_CONTEXT_CONF
Definition: gsm_08_58.h:134
RSL_MT_MR_CODEC_MOD_PER
@ RSL_MT_MR_CODEC_MOD_PER
Definition: gsm_08_58.h:150
RSL_IE_MS_POWER
@ RSL_IE_MS_POWER
Definition: gsm_08_58.h:226
RSL_SYSTEM_INFO_2quater
#define RSL_SYSTEM_INFO_2quater
Definition: gsm_08_58.h:531
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:108
RSL_IE_ACT_TYPE
@ RSL_IE_ACT_TYPE
Definition: gsm_08_58.h:216
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:250
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:503
RSL_ERR_TALKER_ACC_FAIL
#define RSL_ERR_TALKER_ACC_FAIL
Definition: gsm_08_58.h:476
RSL_IE_BS_POWER_PARAM
@ RSL_IE_BS_POWER_PARAM
Definition: gsm_08_58.h:245
RLL_CAUSE_UFRM_INC_PARAM
#define RLL_CAUSE_UFRM_INC_PARAM
Definition: gsm_08_58.h:455
RSL_CHAN_SDCCH4_ACCH
#define RSL_CHAN_SDCCH4_ACCH
Definition: gsm_08_58.h:369
RSL_SYSTEM_INFO_17
#define RSL_SYSTEM_INFO_17
Definition: gsm_08_58.h:521
RSL_MT_EST_REQ
@ RSL_MT_EST_REQ
Definition: gsm_08_58.h:90
RSL_IPAC_EIE_3G_HO_PARAM
@ RSL_IPAC_EIE_3G_HO_PARAM
Definition: gsm_08_58.h:689
RSL_IPAC_EIE_MS_PWR_CTL
@ RSL_IPAC_EIE_MS_PWR_CTL
Definition: gsm_08_58.h:672
abis_rsl_cchan_hdr
Definition: gsm_08_58.h:58
RSL_IE_RELEASE_MODE
@ RSL_IE_RELEASE_MODE
Definition: gsm_08_58.h:233
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:573
gsm48_rach_control
Definition: gsm_04_08.h:581
RSL_MT_CHAN_CONF
@ RSL_MT_CHAN_CONF
Definition: gsm_08_58.h:111
gsm_mncc_number::screen
int screen
Definition: mncc.h:37
RSL_ACT_TYPE_REACT
#define RSL_ACT_TYPE_REACT
Definition: gsm_08_58.h:378
osmo_oap_message::auts_present
int auts_present
Definition: oap.h:75
osmo_earfcn_si2q::length
size_t length
Definition: sysinfo.h:55
rsl_err_vals
static const struct value_string rsl_err_vals[]
Definition: rsl.c:245
RSL_IPAC_EIE_RXLEV
@ RSL_IPAC_EIE_RXLEV
Definition: gsm_08_58.h:666
rsl_ipac_msgt_names
static const struct value_string rsl_ipac_msgt_names[]
ip.access specific
Definition: rsl.c:364
osmo_earfcn_init
void osmo_earfcn_init(struct osmo_earfcn_si2q *e)
Initialize earfcn struct.
Definition: sysinfo.c:211
tlv_parsed
result of the TLV parser
Definition: tlv.h:424
RSL_MT_IPAC_DIR_RETR_ENQ
@ RSL_MT_IPAC_DIR_RETR_ENQ
Definition: gsm_08_58.h:156
RSL_IPAC_EIE_MEAS_TRANS_RES
@ RSL_IPAC_EIE_MEAS_TRANS_RES
Definition: gsm_08_58.h:688
RSL_MT_UNIT_DATA_IND
@ RSL_MT_UNIT_DATA_IND
Definition: gsm_08_58.h:97
rsl.h
RLL_CAUSE_UNSOL_SPRV_RESP
#define RLL_CAUSE_UNSOL_SPRV_RESP
Definition: gsm_08_58.h:453
RSL_SYSTEM_INFO_4
#define RSL_SYSTEM_INFO_4
Definition: gsm_08_58.h:516
RSL_IPAC_EIE_MEAS_AVG_CFG
@ RSL_IPAC_EIE_MEAS_AVG_CFG
Definition: gsm_08_58.h:670
TLV_TYPE_vTvLV_GAN
@ TLV_TYPE_vTvLV_GAN
variable-length tag, variable-length length
Definition: tlv.h:409
tlv_dump
int tlv_dump(struct tlv_parsed *dec)
Dump parsed TLV structure to stdout.
Definition: tlv_parser.c:52
TLV_TYPE_TV
@ TLV_TYPE_TV
tag-value (8bit)
Definition: tlv.h:404
RSL_ACT_INTRA_IMM_ASS
#define RSL_ACT_INTRA_IMM_ASS
Definition: gsm_08_58.h:379
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:42
RSL_IE_LINK_IDENT
@ RSL_IE_LINK_IDENT
Definition: gsm_08_58.h:215
RSL_ERR_ENCR_UNIMPL
#define RSL_ERR_ENCR_UNIMPL
Definition: gsm_08_58.h:492
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:223
SYSINFO_TYPE_4
@ SYSINFO_TYPE_4
Definition: sysinfo.h:19
RSL_MT_EST_IND
@ RSL_MT_EST_IND
Definition: gsm_08_58.h:92