libosmogsm  1.9.2
Osmocom GSM library
KeccakP-1600-3gpp.h
Go to the documentation of this file.
1 /* -----------------------------------------------------------------------
2  * code extracted from 3GPP TS 35.231, annex E for Keccak core functions
3  * https://portal.3gpp.org/desktopmodules/Specifications/SpecificationDetails.aspx?specificationId=2402
4  *-----------------------------------------------------------------------*/
5 
6 /* this is the trick to make the code cross-platform
7  * at least, Win32 / Linux */
8 
9 #if defined(_WIN32) || defined(__WIN32__)
10 # include <windows.h>
11 # define EXPORTIT __declspec(dllexport)
12 #else
13 # define EXPORTIT
14 #endif
15 
16 #include <stdint.h>
17 
18 /*------------------------------------------------------------------------
19  * KeccakP-1600-3gpp.h
20  *------------------------------------------------------------------------*/
21 
22 EXPORTIT void Keccak_f_8 (uint8_t s[200]);
23 EXPORTIT void Keccak_f_32(uint32_t s[50]);
24 EXPORTIT void Keccak_f_64(uint64_t s[25]);
25 
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:234
ABIS_RSL_CHAN_NR_CBITS_OSMO_VAMOS_Bm_ACCHs
#define ABIS_RSL_CHAN_NR_CBITS_OSMO_VAMOS_Bm_ACCHs
Definition: gsm_08_58.h:53
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:660
RSL_IE_CMD_INDICATOR
@ RSL_IE_CMD_INDICATOR
Definition: gsm_08_58.h:346
RSL_ERR_IE_CONTENT
#define RSL_ERR_IE_CONTENT
Definition: gsm_08_58.h:639
RSL_IE_UPLINK_MEAS
@ RSL_IE_UPLINK_MEAS
Definition: gsm_08_58.h:321
KeccakP-1600-3gpp.h
RSL_CHAN_OSMO_CBCH4
#define RSL_CHAN_OSMO_CBCH4
Definition: gsm_08_58.h:466
Rho
const uint8_t Rho[25]
Definition: KeccakP-1600-3gpp.c:12
RSL_MT_CONN_FAIL
@ RSL_MT_CONN_FAIL
Definition: gsm_08_58.h:206
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:358
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:450
ABIS_RSL_CHAN_NR_CBITS_SDCCH4_ACCH
#define ABIS_RSL_CHAN_NR_CBITS_SDCCH4_ACCH(ss)
Definition: gsm_08_58.h:43
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:313
RSL_MT_IPAC_BIND_MUX_NACK
@ RSL_MT_IPAC_BIND_MUX_NACK
Definition: gsm_08_58.h:249
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
msgb_alloc_headroom
static struct msgb * msgb_alloc_headroom(uint16_t size, uint16_t headroom, const char *name)
GMM_CAUSE_INV_MAND_INFO
@ GMM_CAUSE_INV_MAND_INFO
Definition: gsm_04_08_gprs.h:244
link_id
uint8_t link_id
Definition: gsm_08_08.h:4
RSL_MT_RTD_REP
@ RSL_MT_RTD_REP
Definition: gsm_08_58.h:226
RSL_IE_NCH_DRX_INFO
@ RSL_IE_NCH_DRX_INFO
Definition: gsm_08_58.h:345
Pi
const uint8_t Pi[25]
Definition: KeccakP-1600-3gpp.c:15
RSL_MT_MODE_MODIFY_REQ
@ RSL_MT_MODE_MODIFY_REQ
Definition: gsm_08_58.h:211
tlv_p_entry::val
const uint8_t * val
pointer to value
Definition: tlv.h:504
rsl_msgt_names
static const struct value_string rsl_msgt_names[]
Definition: rsl.c:333
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:214
RLL_CAUSE_T200_EXPIRED
#define RLL_CAUSE_T200_EXPIRED
Definition: gsm_08_58.h:578
ABIS_RSL_CHAN_NR_CBITS_PCH_AGCH
#define ABIS_RSL_CHAN_NR_CBITS_PCH_AGCH
Definition: gsm_08_58.h:47
RSL_IPAC_EIE_TIMING_ERR
@ RSL_IPAC_EIE_TIMING_ERR
Definition: gsm_08_58.h:810
ienamebuf
static __thread char ienamebuf[32]
Definition: tlv_parser.c:642
RSL_IE_CHAN_NR
@ RSL_IE_CHAN_NR
Definition: gsm_08_58.h:297
gsm48_system_information_type_4
Definition: gsm_04_08.h:1112
RLL_CAUSE_UNSOL_DM_RESP
#define RLL_CAUSE_UNSOL_DM_RESP
Definition: gsm_08_58.h:581
RSL_IE_IPAC_RTP_COMPR
@ RSL_IE_IPAC_RTP_COMPR
Definition: gsm_08_58.h:388
RLL_CAUSE_SABM_INFO_NOTALL
#define RLL_CAUSE_SABM_INFO_NOTALL
Definition: gsm_08_58.h:591
RSL_MT_SACCH_FILL
@ RSL_MT_SACCH_FILL
Definition: gsm_08_58.h:195
RSL_MT_REL_CONF
@ RSL_MT_REL_CONF
Definition: gsm_08_58.h:175
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:327
RSL_IE_CHAN_MODE
@ RSL_IE_CHAN_MODE
Definition: gsm_08_58.h:302
RSL_SYSTEM_INFO_5ter
#define RSL_SYSTEM_INFO_5ter
Definition: gsm_08_58.h:658
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:336
Keccak_f_8
void Keccak_f_8(uint8_t s[200])
Definition: KeccakP-1600-3gpp.c:76
ROTATE64
#define ROTATE64(value, n)
Definition: KeccakP-1600-3gpp.c:21
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:180
RSL_IE_PAGING_LOAD
@ RSL_IE_PAGING_LOAD
Definition: gsm_08_58.h:311
cause
uint8_t cause
Definition: gsm_04_08.h:808
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:809
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:623
RSL_SYSTEM_INFO_9
#define RSL_SYSTEM_INFO_9
Definition: gsm_08_58.h:665
RSL_SYSTEM_INFO_5bis
#define RSL_SYSTEM_INFO_5bis
Definition: gsm_08_58.h:657
RSL_MT_REL_REQ
@ RSL_MT_REL_REQ
Definition: gsm_08_58.h:174
OSMO_ASSERT
#define OSMO_ASSERT(exp)
RSL_CHAN_BCCH
#define RSL_CHAN_BCCH
Definition: gsm_08_58.h:462
RSL_MT_IPAC_PDCH_DEACT_NACK
@ RSL_MT_IPAC_PDCH_DEACT_NACK
Definition: gsm_08_58.h:243
RSL_MEAS_INFO
#define RSL_MEAS_INFO
Definition: gsm_08_58.h:661
RSL_ACT_INTER_ASYNC
#define RSL_ACT_INTER_ASYNC
Definition: gsm_08_58.h:479
RSL_MT_IPAC_PDCH_DEACT
@ RSL_MT_IPAC_PDCH_DEACT
Definition: gsm_08_58.h:241
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) tlv_definition and fill up all empty slots in 'dst'
Definition: tlv_parser.c:449
rsl_err_name
const char * rsl_err_name(uint8_t err)
Get human-readable name for RSL Error.
Definition: rsl.c:327
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:346
RLL_CAUSE_IFRM_INC_LEN
#define RLL_CAUSE_IFRM_INC_LEN
Definition: gsm_08_58.h:588
RSL_MT_LISTENER_DET
@ RSL_MT_LISTENER_DET
Definition: gsm_08_58.h:224
RLL_CAUSE_IFRM_INC_MBITS
#define RLL_CAUSE_IFRM_INC_MBITS
Definition: gsm_08_58.h:587
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:381
RSL_IE_SMSCB_MSG
@ RSL_IE_SMSCB_MSG
Definition: gsm_08_58.h:338
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:209
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:618
RSL_BCCH_CCCH_CONF_4_NC
#define RSL_BCCH_CCCH_CONF_4_NC
Definition: gsm_08_58.h:725
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:46
RSL_MT_SUSP_REQ
@ RSL_MT_SUSP_REQ
Definition: gsm_08_58.h:179
RLL_CAUSE_REEST_REQ
#define RLL_CAUSE_REEST_REQ
Definition: gsm_08_58.h:579
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:317
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:262
RSL_ERR_PROCESSOR_OVERLOAD
#define RSL_ERR_PROCESSOR_OVERLOAD
Definition: gsm_08_58.h:616
RSL_ERR_RES_UNAVAIL
#define RSL_ERR_RES_UNAVAIL
Definition: gsm_08_58.h:620
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:572
RSL_IE_IPAC_RTP_PAYLOAD2
@ RSL_IE_IPAC_RTP_PAYLOAD2
Definition: gsm_08_58.h:389
RSL_MT_DATA_IND
@ RSL_MT_DATA_IND
Definition: gsm_08_58.h:169
gsm_mncc_number::type
int type
Definition: mncc.h:34
RSL_IE_EMLPP_PRIO
@ RSL_IE_EMLPP_PRIO
Definition: gsm_08_58.h:347
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:304
RSL_MT_BCCH_INFO
@ RSL_MT_BCCH_INFO
Definition: gsm_08_58.h:185
RSL_ACT_TYPE_INITIAL
#define RSL_ACT_TYPE_INITIAL
Definition: gsm_08_58.h:475
RSL_ERR_IE_NONEXIST
#define RSL_ERR_IE_NONEXIST
Definition: gsm_08_58.h:637
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:821
bitvec::data_len
unsigned int data_len
msgb.h
RSL_MT_PRE_HANDO_NOTIF
@ RSL_MT_PRE_HANDO_NOTIF
Definition: gsm_08_58.h:227
RSL_IE_SYSINFO_TYPE
@ RSL_IE_SYSINFO_TYPE
Definition: gsm_08_58.h:326
RSL_IE_STARTNG_TIME
@ RSL_IE_STARTNG_TIME
Definition: gsm_08_58.h:319
RSL_ERR_BTS_NOT_EQUIPPED
#define RSL_ERR_BTS_NOT_EQUIPPED
Definition: gsm_08_58.h:617
RSL_IE_REQ_REFERENCE
@ RSL_IE_REQ_REFERENCE
Definition: gsm_08_58.h:315
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:698
gsm_mncc_number
Definition: mncc.h:33
RSL_SYSTEM_INFO_6
#define RSL_SYSTEM_INFO_6
Definition: gsm_08_58.h:651
TLVP_LEN
#define TLVP_LEN(x, y)
Definition: tlv.h:557
msg
uint8_t msg[0]
Definition: gsm_08_08.h:729
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:46
gsm_mncc_bearer_cap
Definition: mncc.h:12
osmo_sub_auth_data::u
union osmo_sub_auth_data::@111 u
osmo_tlv_prot_def
Osmocom TLV protocol definition.
Definition: tlv.h:688
osmo_auth_vector::res_len
uint8_t res_len
length (in bytes) of res: 4..16 bytes
Definition: auth.h:95
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:387
RSL_IPAC_EIE_NUM_OF_MS
@ RSL_IPAC_EIE_NUM_OF_MS
Definition: gsm_08_58.h:822
RSL_MT_IPAC_MDCX_NACK
@ RSL_MT_IPAC_MDCX_NACK
Definition: gsm_08_58.h:261
TLV_TYPE_FIXED
@ TLV_TYPE_FIXED
fixed-length value-only
Definition: tlv.h:510
RSL_IE_MAIN_CHAN_REF
@ RSL_IE_MAIN_CHAN_REF
Definition: gsm_08_58.h:349
RSL_MT_LOCATION_INFO
@ RSL_MT_LOCATION_INFO
Definition: gsm_08_58.h:234
tlv_p_entry::len
uint16_t len
length
Definition: tlv.h:503
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:619
RSL_ERR_CCCH_OVERLOAD
#define RSL_ERR_CCCH_OVERLOAD
Definition: gsm_08_58.h:614
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:808
RLL_CAUSE_SFRM_INC_PARAM
#define RLL_CAUSE_SFRM_INC_PARAM
Definition: gsm_08_58.h:586
DLOAP
#define DLOAP
RSL_ERR_SERV_OPT_UNIMPL
#define RSL_ERR_SERV_OPT_UNIMPL
Definition: gsm_08_58.h:626
RSL_MT_MS_POWER_CONTROL
@ RSL_MT_MS_POWER_CONTROL
Definition: gsm_08_58.h:217
mncc.h
rsl_att_tlvdef
const struct tlv_definition rsl_att_tlvdef
Definition: rsl.c:63
RSL_MT_IPAC_CONNECT_MUX
@ RSL_MT_IPAC_CONNECT_MUX
Definition: gsm_08_58.h:244
osmo_tlv_prot_msg_def
Definition: tlv.h:670
RSL_IE_IPAC_HO_C_PARMS
@ RSL_IE_IPAC_HO_C_PARMS
Definition: gsm_08_58.h:384
RSL_SYSTEM_INFO_20
#define RSL_SYSTEM_INFO_20
Definition: gsm_08_58.h:668
TLV_TYPE_T
@ TLV_TYPE_T
tag-only
Definition: tlv.h:511
ABIS_RSL_CHAN_NR_CBITS_Bm_ACCHs
#define ABIS_RSL_CHAN_NR_CBITS_Bm_ACCHs
Definition: gsm_08_58.h:41
osmo_tlv_prot_def::tlv_def
const struct tlv_definition * tlv_def
TLV parser definition (optional)
Definition: tlv.h:692
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:369
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:458
RSL_MT_REL_IND
@ RSL_MT_REL_IND
Definition: gsm_08_58.h:176
RSL_IPAC_EIE_BS_PWR_CTL
@ RSL_IPAC_EIE_BS_PWR_CTL
Definition: gsm_08_58.h:812
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:580
RSL_IE_FULL_IMM_ASS_INFO
@ RSL_IE_FULL_IMM_ASS_INFO
Definition: gsm_08_58.h:339
gsm48_system_information_type_10
Definition: gsm_04_08.h:1192
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:646
gsm48_system_information_type_3
Definition: gsm_04_08.h:1100
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:694
RSL_ACT_SECOND_ADD
#define RSL_ACT_SECOND_ADD
Definition: gsm_08_58.h:481
RSL_MT_MODE_MODIFY_NACK
@ RSL_MT_MODE_MODIFY_NACK
Definition: gsm_08_58.h:213
RSL_SYSTEM_INFO_8
#define RSL_SYSTEM_INFO_8
Definition: gsm_08_58.h:645
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:204
oap.h
RSL_IE_IPAC_REMOTE_IP
@ RSL_IE_IPAC_REMOTE_IP
Definition: gsm_08_58.h:377
RSL_IE_IPAC_REMOTE_PORT
@ RSL_IE_IPAC_REMOTE_PORT
Definition: gsm_08_58.h:378
RSL_IPAC_EIE_NCELL_DEF_EXT
@ RSL_IPAC_EIE_NCELL_DEF_EXT
Definition: gsm_08_58.h:824
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:260
RSL_ERR_OM_INTERVENTION
#define RSL_ERR_OM_INTERVENTION
Definition: gsm_08_58.h:607
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:196
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:461
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:12
rsl_msg_name
const char * rsl_msg_name(uint8_t err)
Get human-readable string for RSL Message Type.
Definition: rsl.c:405
type
uint8_t type
Definition: gsm_08_08.h:2
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:380
rsl_act_type_names
const struct value_string rsl_act_type_names[]
String names of RSL Channel Activation Types.
Definition: rsl.c:632
RSL_MT_IPAC_BIND_MUX
@ RSL_MT_IPAC_BIND_MUX
Definition: gsm_08_58.h:247
RSL_IE_OSMO_REP_ACCH_CAP
@ RSL_IE_OSMO_REP_ACCH_CAP
Definition: gsm_08_58.h:368
RSL_ERR_INVALID_MESSAGE
#define RSL_ERR_INVALID_MESSAGE
Definition: gsm_08_58.h:629
RSL_SYSTEM_INFO_2
#define RSL_SYSTEM_INFO_2
Definition: gsm_08_58.h:647
gsm48_system_information_type_header
Definition: gsm_04_08.h:962
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:823
tlv_parsed::lv
struct tlv_p_entry lv[256]
Definition: tlv.h:533
RSL_IE_IPAC_LOCAL_IP
@ RSL_IE_IPAC_LOCAL_IP
Definition: gsm_08_58.h:382
osmo_sub_auth_data::umts
struct osmo_sub_auth_data::@111::@112 umts
RSL_IE_MS_IDENTITY
@ RSL_IE_MS_IDENTITY
Definition: gsm_08_58.h:308
RSL_IE_OSMO_TRAINING_SEQUENCE
@ RSL_IE_OSMO_TRAINING_SEQUENCE
Definition: gsm_08_58.h:369
RSL_ERR_MSG_DISCR
#define RSL_ERR_MSG_DISCR
Definition: gsm_08_58.h:631
RSL_MT_RF_RES_IND
@ RSL_MT_RF_RES_IND
Definition: gsm_08_58.h:194
RSL_IPAC_EIE_3G_NCELL_LIST
@ RSL_IPAC_EIE_3G_NCELL_LIST
Definition: gsm_08_58.h:831
rxlev_stat.h
RLL_CAUSE_FRM_UNIMPL
#define RLL_CAUSE_FRM_UNIMPL
Definition: gsm_08_58.h:589
TLV_TYPE_TLV
@ TLV_TYPE_TLV
tag-length-value
Definition: tlv.h:513
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:197
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:91
RSL_IE_SMSCB_CHAN_INDICATOR
@ RSL_IE_SMSCB_CHAN_INDICATOR
Definition: gsm_08_58.h:342
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:1213
Keccak_f_64
EXPORTIT void Keccak_f_64(uint64_t s[25])
Definition: KeccakP-1600-3gpp.c:28
data
uint8_t data[0]
RSL_IPAC_EIE_HO_THRESH_COMP
@ RSL_IPAC_EIE_HO_THRESH_COMP
Definition: gsm_08_58.h:818
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:515
RSL_IE_SMSCB_INFO
@ RSL_IE_SMSCB_INFO
Definition: gsm_08_58.h:332
OAP_XRES_IE
@ OAP_XRES_IE
Definition: oap.h:44
RSL_MT_IPAC_MDCX
@ RSL_MT_IPAC_MDCX
Definition: gsm_08_58.h:259
tlv_definition
Definition of All 256 IE / TLV.
Definition: tlv.h:527
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:820
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:323
msgnamebuf
static __thread char msgnamebuf[32]
Definition: tlv_parser.c:643
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:609
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:724
RSL_MT_CCCH_LOAD_IND
@ RSL_MT_CCCH_LOAD_IND
Definition: gsm_08_58.h:186
osmo_oap_message::autn_present
int autn_present
Definition: oap.h:71
Keccak_f_64
void Keccak_f_64(uint64_t s[25])
Definition: KeccakP-1600-3gpp.c:28
RSL_IE_SACCH_INFO
@ RSL_IE_SACCH_INFO
Definition: gsm_08_58.h:340
osmo_auth_vector::res
uint8_t res[16]
authentication result
Definition: auth.h:94
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:613
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:548
RSL_IE_IPAC_RTP_CSD_FMT
@ RSL_IE_IPAC_RTP_CSD_FMT
Definition: gsm_08_58.h:386
RSL_CHAN_PCH_AGCH
#define RSL_CHAN_PCH_AGCH
Definition: gsm_08_58.h:464
tlv_def::type
enum tlv_type type
TLV type.
Definition: tlv.h:522
RSL_MT_IPAC_DISC_MUX
@ RSL_MT_IPAC_DISC_MUX
Definition: gsm_08_58.h:250
_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:238
RSL_ERR_PROTO
#define RSL_ERR_PROTO
Definition: gsm_08_58.h:640
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:182
RSL_ERR_ACCH_OVERLOAD
#define RSL_ERR_ACCH_OVERLOAD
Definition: gsm_08_58.h:615
RSL_MT_SMS_BC_REQ
@ RSL_MT_SMS_BC_REQ
Definition: gsm_08_58.h:191
RSL_SYSTEM_INFO_18
#define RSL_SYSTEM_INFO_18
Definition: gsm_08_58.h:666
RSL_MT_PREPROC_CONFIG
@ RSL_MT_PREPROC_CONFIG
Definition: gsm_08_58.h:219
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:603
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:722
RSL_MT_CHAN_ACTIV_NACK
@ RSL_MT_CHAN_ACTIV_NACK
Definition: gsm_08_58.h:205
RSL_CHAN_NR_MASK
#define RSL_CHAN_NR_MASK
Definition: gsm_08_58.h:456
Keccak_f_8
EXPORTIT void Keccak_f_8(uint8_t s[200])
Definition: KeccakP-1600-3gpp.c:76
RSL_CHAN_Lm_ACCHs
#define RSL_CHAN_Lm_ACCHs
Definition: gsm_08_58.h:459
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:677
RSL_IE_MR_CONTROL
@ RSL_IE_MR_CONTROL
Definition: gsm_08_58.h:351
RSL_IE_CHAN_IDENT
@ RSL_IE_CHAN_IDENT
Definition: gsm_08_58.h:301
gsm_mncc_number::present
int present
Definition: mncc.h:36
RSL_MT_DEACTIVATE_SACCH
@ RSL_MT_DEACTIVATE_SACCH
Definition: gsm_08_58.h:207
RSL_MT_IPAC_PDCH_ACT_ACK
@ RSL_MT_IPAC_PDCH_ACT_ACK
Definition: gsm_08_58.h:239
tlv_type
tlv_type
TLV type.
Definition: tlv.h:508
RSL_MT_IPAC_CONNECT_MUX_ACK
@ RSL_MT_IPAC_CONNECT_MUX_ACK
Definition: gsm_08_58.h:245
RSL_MT_IPAC_DLCX_ACK
@ RSL_MT_IPAC_DLCX_ACK
Definition: gsm_08_58.h:264
RSL_CHAN_OSMO_VAMOS_Lm_ACCHs
#define RSL_CHAN_OSMO_VAMOS_Lm_ACCHs
Definition: gsm_08_58.h:471
TLV_TYPE_TL16V
@ TLV_TYPE_TL16V
tag, 16 bit length, value
Definition: tlv.h:514
RSL_ERR_IE_LENGTH
#define RSL_ERR_IE_LENGTH
Definition: gsm_08_58.h:638
RSL_ACT_SECOND_MULTI
#define RSL_ACT_SECOND_MULTI
Definition: gsm_08_58.h:482
RSL_IE_PYHS_CONTEXT
@ RSL_IE_PYHS_CONTEXT
Definition: gsm_08_58.h:312
SYSINFO_TYPE_6
@ SYSINFO_TYPE_6
Definition: sysinfo.h:21
RLL_CAUSE_SEQ_ERR
#define RLL_CAUSE_SEQ_ERR
Definition: gsm_08_58.h:584
RSL_MT_IPAC_DLCX
@ RSL_MT_IPAC_DLCX
Definition: gsm_08_58.h:263
RSL_IPAC_EIE_SDCCH_CTL_PARAM
@ RSL_IPAC_EIE_SDCCH_CTL_PARAM
Definition: gsm_08_58.h:832
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:55
RSL_IE_BS_POWER
@ RSL_IE_BS_POWER
Definition: gsm_08_58.h:300
ABIS_RSL_CHAN_NR_CBITS_OSMO_PDCH
#define ABIS_RSL_CHAN_NR_CBITS_OSMO_PDCH
Definition: gsm_08_58.h:48
ABIS_RSL_CHAN_NR_CBITS_BCCH
#define ABIS_RSL_CHAN_NR_CBITS_BCCH
Definition: gsm_08_58.h:45
tlv_definition::def
struct tlv_def def[256]
Definition: tlv.h:528
value_string::str
const char * str
RSL_ERR_INTERWORKING
#define RSL_ERR_INTERWORKING
Definition: gsm_08_58.h:642
RSL_ERR_MSG_SEQ
#define RSL_ERR_MSG_SEQ
Definition: gsm_08_58.h:633
rxlev_stat_input
void rxlev_stat_input(struct rxlev_stats *st, uint16_t arfcn, uint8_t rxlev)
Definition: rxlev_stat.c:32
osmo_auth_vector
Definition: auth.h:89
EXPORTIT
#define EXPORTIT
Definition: KeccakP-1600-3gpp.h:13
RSL_ERR_HANDOVER_ACC_FAIL
#define RSL_ERR_HANDOVER_ACC_FAIL
Definition: gsm_08_58.h:605
RSL_IE_MSG_ID
@ RSL_IE_MSG_ID
Definition: gsm_08_58.h:324
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:826
RSL_IE_UIC
@ RSL_IE_UIC
Definition: gsm_08_58.h:348
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:502
gsm48_system_information_type_6
Definition: gsm_04_08.h:1169
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:506
bitvec.h
RSL_MT_SMS_BC_CMD
@ RSL_MT_SMS_BC_CMD
Definition: gsm_08_58.h:198
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:608
RSL_IPAC_EIE_PC_THRESH_COMP
@ RSL_IPAC_EIE_PC_THRESH_COMP
Definition: gsm_08_58.h:817
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:569
RSL_MT_DATA_REQ
@ RSL_MT_DATA_REQ
Definition: gsm_08_58.h:168
RSL_CHAN_OSMO_VAMOS_Bm_ACCHs
#define RSL_CHAN_OSMO_VAMOS_Bm_ACCHs
Definition: gsm_08_58.h:470
rxlev_stat_dump
void rxlev_stat_dump(const struct rxlev_stats *st)
Definition: rxlev_stat.c:68
RSL_IE_PREPROC_PARAM
@ RSL_IE_PREPROC_PARAM
Definition: gsm_08_58.h:329
RSL_IE_RLM_CAUSE
@ RSL_IE_RLM_CAUSE
Definition: gsm_08_58.h:318
osmo_auth_gen_vec
int osmo_auth_gen_vec(struct osmo_auth_vector *vec, struct osmo_sub_auth_data *aud, const uint8_t *_rand) OSMO_DEPRECATED_OUTSIDE("Use osmo_auth_gen_vec2 instead")
Generate authentication vector.
Definition: auth_core.c:217
ABIS_RSL_MDISC_RLL
#define ABIS_RSL_MDISC_RLL
Definition: gsm_08_58.h:149
RSL_IPAC_EIE_HANDO_THRESH
@ RSL_IPAC_EIE_HANDO_THRESH
Definition: gsm_08_58.h:814
TLV_TYPE_SINGLE_TV
@ TLV_TYPE_SINGLE_TV
tag and value (both 4 bit) in 1 byte
Definition: tlv.h:516
RSL_IE_ERR_MSG
@ RSL_IE_ERR_MSG
Definition: gsm_08_58.h:334
RSL_IE_IMM_ASS_INFO
@ RSL_IE_IMM_ASS_INFO
Definition: gsm_08_58.h:331
RSL_ALLOC_HEADROOM
#define RSL_ALLOC_HEADROOM
Headroom size for RSL msgb_alloc.
Definition: rsl.c:39
RSL_SYSTEM_INFO_2bis
#define RSL_SYSTEM_INFO_2bis
Definition: gsm_08_58.h:655
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:155
RSL_ERR_TRANSC_UNAVAIL
#define RSL_ERR_TRANSC_UNAVAIL
Definition: gsm_08_58.h:622
ts
struct @6 ts
osmo_tlv_prot_msg_def::name
const char * name
human-readable name of message type (optional)
Definition: tlv.h:672
gsm_04_08.h
RSL_CHAN_OSMO_CBCH8
#define RSL_CHAN_OSMO_CBCH8
Definition: gsm_08_58.h:467
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:230
RSL_IPAC_EIE_OSMO_MS_PWR_CTL
@ RSL_IPAC_EIE_OSMO_MS_PWR_CTL
Definition: gsm_08_58.h:837
RSL_IE_TFO_STATUS
@ RSL_IE_TFO_STATUS
Definition: gsm_08_58.h:355
RSL_IE_RTD
@ RSL_IE_RTD
Definition: gsm_08_58.h:354
rsl_rlm_cause_name
const char * rsl_rlm_cause_name(uint8_t err)
Get human-readable string for RLM cause.
Definition: rsl.c:477
RSL_IE_SUP_CODEC_TYPES
@ RSL_IE_SUP_CODEC_TYPES
Definition: gsm_08_58.h:352
RSL_IE_IPAC_BSCMPL_TOUT
@ RSL_IE_IPAC_BSCMPL_TOUT
Definition: gsm_08_58.h:376
ABIS_RSL_CHAN_NR_CBITS_SDCCH8_ACCH
#define ABIS_RSL_CHAN_NR_CBITS_SDCCH8_ACCH(ss)
Definition: gsm_08_58.h:44
RSL_MT_IPAC_CRCX_ACK
@ RSL_MT_IPAC_CRCX_ACK
Definition: gsm_08_58.h:257
RSL_MT_REMOTE_CODEC_CONF_REP
@ RSL_MT_REMOTE_CODEC_CONF_REP
Definition: gsm_08_58.h:225
RSL_MT_IPAC_DISC_MUX_NACK
@ RSL_MT_IPAC_DISC_MUX_NACK
Definition: gsm_08_58.h:252
RSL_IE_IPAC_RTP_MPLEX_ID
@ RSL_IE_IPAC_RTP_MPLEX_ID
Definition: gsm_08_58.h:391
u8
uint8_t u8
Definition: common.h:27
SYSINFO_TYPE_18
@ SYSINFO_TYPE_18
Definition: sysinfo.h:29
__attribute__
static __attribute__((constructor))
Definition: tlv_parser.c:461
RSL_SYSTEM_INFO_13
#define RSL_SYSTEM_INFO_13
Definition: gsm_08_58.h:662
RSL_IE_MR_CONFIG
@ RSL_IE_MR_CONFIG
Definition: gsm_08_58.h:350
TLVP_PRESENT
#define TLVP_PRESENT(x, y)
Definition: tlv.h:556
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:483
RSL_MT_UNIT_DATA_REQ
@ RSL_MT_UNIT_DATA_REQ
Definition: gsm_08_58.h:177
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:242
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:203
tlv_def::fixed_len
uint8_t fixed_len
length in case of TLV_TYPE_FIXED
Definition: tlv.h:523
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:218
Keccak_f_32
void Keccak_f_32(uint32_t s[50])
Definition: KeccakP-1600-3gpp.c:131
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:199
RSL_ACT_INTER_SYNC
#define RSL_ACT_INTER_SYNC
Definition: gsm_08_58.h:480
rxlev_stat_reset
void rxlev_stat_reset(struct rxlev_stats *st)
Definition: rxlev_stat.c:63
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:667
gsm_mncc_useruser
Definition: mncc.h:51
RSL_MT_TALKER_DET
@ RSL_MT_TALKER_DET
Definition: gsm_08_58.h:223
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:390
bitvec
RSL_ALLOC_SIZE
#define RSL_ALLOC_SIZE
Size for RSL msgb_alloc.
Definition: rsl.c:37
gsm48_system_information_type_2
Definition: gsm_04_08.h:1071
RSL_IE_CHAN_DESC
@ RSL_IE_CHAN_DESC
Definition: gsm_08_58.h:344
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:341
RLL_CAUSE_SABM_MF
#define RLL_CAUSE_SABM_MF
Definition: gsm_08_58.h:590
RSL_MT_MODE_MODIFY_ACK
@ RSL_MT_MODE_MODIFY_ACK
Definition: gsm_08_58.h:212
SYSINFO_TYPE_3
@ SYSINFO_TYPE_3
Definition: sysinfo.h:18
RSL_SYSTEM_INFO_7
#define RSL_SYSTEM_INFO_7
Definition: gsm_08_58.h:652
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:825
RSL_MT_IPAC_DLCX_NACK
@ RSL_MT_IPAC_DLCX_NACK
Definition: gsm_08_58.h:265
RSL_ERR_RR_UNAVAIL
#define RSL_ERR_RR_UNAVAIL
Definition: gsm_08_58.h:612
rsl_ipac_eie_tlvdef
const struct tlv_definition rsl_ipac_eie_tlvdef
TLV parser definitions for IPA embedded IEs.
Definition: rsl.c:596
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:44
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:819
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:375
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:269
RSL_IE_OSMO_OSMUX_CID
@ RSL_IE_OSMO_OSMUX_CID
Definition: gsm_08_58.h:371
RSL_ERR_OPT_IE_ERROR
#define RSL_ERR_OPT_IE_ERROR
Definition: gsm_08_58.h:636
RSL_IE_ENCR_INFO
@ RSL_IE_ENCR_INFO
Definition: gsm_08_58.h:303
RSL_IE_GROUP_CALL_REF
@ RSL_IE_GROUP_CALL_REF
Definition: gsm_08_58.h:343
ABIS_RSL_MDISC_TRANSP
#define ABIS_RSL_MDISC_TRANSP
Definition: gsm_08_58.h:160
RSL_MT_DELETE_IND
@ RSL_MT_DELETE_IND
Definition: gsm_08_58.h:188
LOGL_NOTICE
#define LOGL_NOTICE
RSL_MT_CHAN_RQD
@ RSL_MT_CHAN_RQD
Definition: gsm_08_58.h:187
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:442
ONE
ONE
RSL_MT_IPAC_CRCX
@ RSL_MT_IPAC_CRCX
Definition: gsm_08_58.h:256
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:604
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:240
GMM_CAUSE_PROTO_ERR_UNSPEC
@ GMM_CAUSE_PROTO_ERR_UNSPEC
Definition: gsm_04_08_gprs.h:250
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:634
RSL_IE_FULL_BCCH_INFO
@ RSL_IE_FULL_BCCH_INFO
Definition: gsm_08_58.h:335
RSL_MT_IPAC_CRCX_NACK
@ RSL_MT_IPAC_CRCX_NACK
Definition: gsm_08_58.h:258
RSL_MT_IPAC_BIND_MUX_ACK
@ RSL_MT_IPAC_BIND_MUX_ACK
Definition: gsm_08_58.h:248
RSL_MT_TFO_MOD_REQ
@ RSL_MT_TFO_MOD_REQ
Definition: gsm_08_58.h:233
ABIS_RSL_MDISC_COM_CHAN
#define ABIS_RSL_MDISC_COM_CHAN
Definition: gsm_08_58.h:153
RSL_ERR_RCH_ALR_ACTV_ALLOC
#define RSL_ERR_RCH_ALR_ACTV_ALLOC
Definition: gsm_08_58.h:628
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:307
RSL_IPAC_EIE_OSMO_PC_THRESH_COMP
@ RSL_IPAC_EIE_OSMO_PC_THRESH_COMP
Definition: gsm_08_58.h:838
gsm48_system_information_type_5
Definition: gsm_04_08.h:1124
RSL_SYSTEM_INFO_5
#define RSL_SYSTEM_INFO_5
Definition: gsm_08_58.h:650
TLV_TYPE_NONE
@ TLV_TYPE_NONE
no type
Definition: tlv.h:509
ABIS_RSL_CHAN_NR_CBITS_OSMO_CBCH8
#define ABIS_RSL_CHAN_NR_CBITS_OSMO_CBCH8
Definition: gsm_08_58.h:50
RSL_MT_MR_CODEC_MOD_REQ
@ RSL_MT_MR_CODEC_MOD_REQ
Definition: gsm_08_58.h:228
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:280
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:229
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:478
RSL_IE_PREPROC_MEAS
@ RSL_IE_PREPROC_MEAS
Definition: gsm_08_58.h:330
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:696
RSL_ERR_MSG_TYPE
#define RSL_ERR_MSG_TYPE
Definition: gsm_08_58.h:632
osmo_sub_auth_data::type
enum osmo_sub_auth_type type
Definition: auth.h:69
ARRAY_SIZE
#define ARRAY_SIZE(x)
RSL_ACT_INTRA_NORM_ASS
#define RSL_ACT_INTRA_NORM_ASS
Definition: gsm_08_58.h:478
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:816
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:222
RSL_ACT_OSMO_PDCH
#define RSL_ACT_OSMO_PDCH
Definition: gsm_08_58.h:483
RSL_MT_TFO_REP
@ RSL_MT_TFO_REP
Definition: gsm_08_58.h:232
RSL_CHAN_RACH
#define RSL_CHAN_RACH
Definition: gsm_08_58.h:463
RSL_IE_TIMING_ADVANCE
@ RSL_IE_TIMING_ADVANCE
Definition: gsm_08_58.h:320
osmo_earfcn_si2q
Definition: sysinfo.h:48
Iota
const uint8_t Iota[24]
Definition: KeccakP-1600-3gpp.c:18
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:648
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:356
RSL_CHAN_Bm_ACCHs
#define RSL_CHAN_Bm_ACCHs
Definition: gsm_08_58.h:458
RSL_IE_HANDO_REF
@ RSL_IE_HANDO_REF
Definition: gsm_08_58.h:305
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:230
chan_nr
uint8_t chan_nr
Definition: gsm_04_08.h:248
RSL_IE_CODEC_CONFIG
@ RSL_IE_CODEC_CONFIG
Definition: gsm_08_58.h:353
RSL_MT_RF_CHAN_REL_ACK
@ RSL_MT_RF_CHAN_REL_ACK
Definition: gsm_08_58.h:221
RSL_MT_EST_CONF
@ RSL_MT_EST_CONF
Definition: gsm_08_58.h:172
RSL_MT_ENCR_CMD
@ RSL_MT_ENCR_CMD
Definition: gsm_08_58.h:208
ABIS_RSL_CHAN_NR_CBITS_Lm_ACCHs
#define ABIS_RSL_CHAN_NR_CBITS_Lm_ACCHs(ss)
Definition: gsm_08_58.h:42
msgb::data_len
uint16_t data_len
RSL_IE_CAUSE
@ RSL_IE_CAUSE
Definition: gsm_08_58.h:322
RSL_SYSTEM_INFO_2ter
#define RSL_SYSTEM_INFO_2ter
Definition: gsm_08_58.h:656
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:729
RSL_MT_PREPROC_MEAS_RES
@ RSL_MT_PREPROC_MEAS_RES
Definition: gsm_08_58.h:220
RSL_IE_RACH_LOAD
@ RSL_IE_RACH_LOAD
Definition: gsm_08_58.h:314
RSL_IE_IPAC_SRTP_CONFIG
@ RSL_IE_IPAC_SRTP_CONFIG
Definition: gsm_08_58.h:374
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:646
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:723
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:181
RSL_MT_RF_CHAN_REL
@ RSL_MT_RF_CHAN_REL
Definition: gsm_08_58.h:216
RSL_SYSTEM_INFO_10
#define RSL_SYSTEM_INFO_10
Definition: gsm_08_58.h:659
RSL_MT_IMMEDIATE_ASSIGN_CMD
@ RSL_MT_IMMEDIATE_ASSIGN_CMD
Definition: gsm_08_58.h:190
RSL_IE_IPAC_CONN_ID
@ RSL_IE_IPAC_CONN_ID
Definition: gsm_08_58.h:385
RSL_MT_MEAS_RES
@ RSL_MT_MEAS_RES
Definition: gsm_08_58.h:210
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:188
RSL_CHAN_OSMO_PDCH
#define RSL_CHAN_OSMO_PDCH
Definition: gsm_08_58.h:465
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:582
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:379
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:635
RSL_IE_CB_CMD_TYPE
@ RSL_IE_CB_CMD_TYPE
Definition: gsm_08_58.h:337
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:251
RSL_IPAC_EIE_MASTER_SALT
@ RSL_IPAC_EIE_MASTER_SALT
Definition: gsm_08_58.h:827
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:1063
SYSINFO_TYPE_5ter
@ SYSINFO_TYPE_5ter
Definition: sysinfo.h:36
RSL_MT_NOT_CMD
@ RSL_MT_NOT_CMD
Definition: gsm_08_58.h:200
_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:526
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:833
RSL_ERR_EQUIPMENT_FAIL
#define RSL_ERR_EQUIPMENT_FAIL
Definition: gsm_08_58.h:611
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:246
tlv.h
RSL_SYSTEM_INFO_16
#define RSL_SYSTEM_INFO_16
Definition: gsm_08_58.h:653
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:544
RSL_MT_ERROR_IND
@ RSL_MT_ERROR_IND
Definition: gsm_08_58.h:170
osmo_tlv_prot_ie_def::min_len
uint16_t min_len
minimum length of IE value part, in octets
Definition: tlv.h:682
msg_type
uint8_t msg_type
Definition: gsm_04_08.h:808
RSL_IPAC_EIE_NCELL_DEFAULTS
@ RSL_IPAC_EIE_NCELL_DEFAULTS
Definition: gsm_08_58.h:815
gsm_08_58.h
logging.h
RSL_IE_PAGING_GROUP
@ RSL_IE_PAGING_GROUP
Definition: gsm_08_58.h:310
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:659
RSL_MT_PHY_CONTEXT_CONF
@ RSL_MT_PHY_CONTEXT_CONF
Definition: gsm_08_58.h:215
RSL_MT_MR_CODEC_MOD_PER
@ RSL_MT_MR_CODEC_MOD_PER
Definition: gsm_08_58.h:231
RSL_MT_OSMO_ETWS_CMD
@ RSL_MT_OSMO_ETWS_CMD
Definition: gsm_08_58.h:267
RSL_IE_MS_POWER
@ RSL_IE_MS_POWER
Definition: gsm_08_58.h:309
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:664
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:189
RSL_IE_IPAC_CONN_STAT
@ RSL_IE_IPAC_CONN_STAT
Definition: gsm_08_58.h:383
RSL_IE_ACT_TYPE
@ RSL_IE_ACT_TYPE
Definition: gsm_08_58.h:299
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:333
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:612
RSL_ERR_TALKER_ACC_FAIL
#define RSL_ERR_TALKER_ACC_FAIL
Definition: gsm_08_58.h:606
RSL_IE_BS_POWER_PARAM
@ RSL_IE_BS_POWER_PARAM
Definition: gsm_08_58.h:328
RLL_CAUSE_UFRM_INC_PARAM
#define RLL_CAUSE_UFRM_INC_PARAM
Definition: gsm_08_58.h:585
RSL_CHAN_SDCCH4_ACCH
#define RSL_CHAN_SDCCH4_ACCH
Definition: gsm_08_58.h:460
RSL_SYSTEM_INFO_17
#define RSL_SYSTEM_INFO_17
Definition: gsm_08_58.h:654
RSL_MT_EST_REQ
@ RSL_MT_EST_REQ
Definition: gsm_08_58.h:171
RSL_IPAC_EIE_3G_HO_PARAM
@ RSL_IPAC_EIE_3G_HO_PARAM
Definition: gsm_08_58.h:830
RSL_IPAC_EIE_MS_PWR_CTL
@ RSL_IPAC_EIE_MS_PWR_CTL
Definition: gsm_08_58.h:813
abis_rsl_cchan_hdr
Definition: gsm_08_58.h:109
RSL_IE_RELEASE_MODE
@ RSL_IE_RELEASE_MODE
Definition: gsm_08_58.h:316
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:721
gsm48_rach_control
Definition: gsm_04_08.h:638
osmo_tlv_prot_def::name
const char * name
human-readable name of protocol
Definition: tlv.h:690
RSL_MT_CHAN_CONF
@ RSL_MT_CHAN_CONF
Definition: gsm_08_58.h:192
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:476
ABIS_RSL_CHAN_NR_CBITS_OSMO_VAMOS_Lm_ACCHs
#define ABIS_RSL_CHAN_NR_CBITS_OSMO_VAMOS_Lm_ACCHs(ss)
Definition: gsm_08_58.h:54
osmo_oap_message::auts_present
int auts_present
Definition: oap.h:75
OSMO_AUTH_TYPE_UMTS
@ OSMO_AUTH_TYPE_UMTS
Definition: auth.h:19
RSL_IE_OSMO_TEMP_OVP_ACCH_CAP
@ RSL_IE_OSMO_TEMP_OVP_ACCH_CAP
Definition: gsm_08_58.h:370
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:676
rsl_err_vals
static const struct value_string rsl_err_vals[]
Definition: rsl.c:288
Keccak_f_32
EXPORTIT void Keccak_f_32(uint32_t s[50])
Definition: KeccakP-1600-3gpp.c:131
RSL_IPAC_EIE_RXLEV
@ RSL_IPAC_EIE_RXLEV
Definition: gsm_08_58.h:807
LOGL_ERROR
#define LOGL_ERROR
rsl_ipac_msgt_names
static const struct value_string rsl_ipac_msgt_names[]
ip.access specific
Definition: rsl.c:411
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:532
RSL_MT_IPAC_DIR_RETR_ENQ
@ RSL_MT_IPAC_DIR_RETR_ENQ
Definition: gsm_08_58.h:237
RSL_IPAC_EIE_MEAS_TRANS_RES
@ RSL_IPAC_EIE_MEAS_TRANS_RES
Definition: gsm_08_58.h:829
osmo_oap_client_register
int osmo_oap_client_register(struct osmo_oap_client_state *state, struct msgb **msg_tx)
Definition: oap_client.c:153
RSL_IPAC_EIE_OSMO_MEAS_AVG_CFG
@ RSL_IPAC_EIE_OSMO_MEAS_AVG_CFG
Definition: gsm_08_58.h:836
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:178
rsl.h
RLL_CAUSE_UNSOL_SPRV_RESP
#define RLL_CAUSE_UNSOL_SPRV_RESP
Definition: gsm_08_58.h:583
osmo_oap_client_state::state
enum osmo_oap_client_state::@23 state
osmo_oap_client_state
Definition: oap_client.h:46
osmo_sub_auth_data
Definition: auth.h:68
RSL_SYSTEM_INFO_4
#define RSL_SYSTEM_INFO_4
Definition: gsm_08_58.h:649
osmo_tlv_prot_ie_def::name
const char * name
huamn-readable name (optional)
Definition: tlv.h:684
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:49
osmo_tlv_prot_msg_def::mand_ies
const uint8_t * mand_ies
array of mandatory IEs
Definition: tlv.h:674
RSL_IPAC_EIE_MEAS_AVG_CFG
@ RSL_IPAC_EIE_MEAS_AVG_CFG
Definition: gsm_08_58.h:811
TLV_TYPE_vTvLV_GAN
@ TLV_TYPE_vTvLV_GAN
variable-length tag, variable-length length
Definition: tlv.h:517
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:512
TLVP_VAL
#define TLVP_VAL(x, y)
Definition: tlv.h:558
RSL_ACT_INTRA_IMM_ASS
#define RSL_ACT_INTRA_IMM_ASS
Definition: gsm_08_58.h:477
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:298
RSL_ERR_ENCR_UNIMPL
#define RSL_ERR_ENCR_UNIMPL
Definition: gsm_08_58.h:625
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:306
SYSINFO_TYPE_4
@ SYSINFO_TYPE_4
Definition: sysinfo.h:19
RSL_MT_EST_IND
@ RSL_MT_EST_IND
Definition: gsm_08_58.h:173