libosmo-sigtran
1.7.1
Osmocom SIGTRAN library
|
#include <stdint.h>
#include <errno.h>
#include <unistd.h>
#include <string.h>
#include <osmocom/core/utils.h>
#include <osmocom/core/linuxlist.h>
#include <osmocom/core/write_queue.h>
#include <osmocom/core/logging.h>
#include <osmocom/core/timer.h>
#include <osmocom/core/socket.h>
#include <osmocom/netif/stream.h>
#include <osmocom/sigtran/xua_msg.h>
#include <osmocom/sigtran/mtp_sap.h>
#include <osmocom/sigtran/sccp_sap.h>
#include <osmocom/sigtran/osmo_ss7.h>
#include <osmocom/sigtran/protocol/m3ua.h>
#include <osmocom/sigtran/protocol/sua.h>
#include "xua_as_fsm.h"
#include "xua_asp_fsm.h"
#include "xua_internal.h"
#include "ss7_internal.h"
|
void | mtp_xfer_param_to_m3ua_dh (struct m3ua_data_hdr *mdh, const struct osmo_mtp_transfer_param *param) |
|
void | m3ua_dh_to_xfer_param (struct osmo_mtp_transfer_param *param, const struct m3ua_data_hdr *mdh) |
|
struct msgb * | m3ua_msgb_alloc (const char *name) |
|
struct xua_msg * | m3ua_xfer_from_data (const struct m3ua_data_hdr *data_hdr, const uint8_t *data, unsigned int data_len) |
|
static struct xua_msg * | m3ua_gen_error (uint32_t err_code) |
|
static struct xua_msg * | m3ua_gen_error_msg (uint32_t err_code, struct msgb *msg) |
|
struct xua_msg * | m3ua_encode_notify (const struct osmo_xlm_prim_notify *npar) |
|
int | m3ua_decode_notify (struct osmo_xlm_prim_notify *npar, void *ctx, const struct xua_msg *xua) |
|
static struct msgb * | m3ua_to_msg (struct xua_msg *xua) |
|
static int | m3ua_tx_xua_asp (struct osmo_ss7_asp *asp, struct xua_msg *xua) |
|
int | m3ua_tx_xua_as (struct osmo_ss7_as *as, struct xua_msg *xua) |
| Send a given xUA message via a given M3UA Application Server. More...
|
|
struct m3ua_data_hdr * | data_hdr_from_m3ua (struct xua_msg *xua) |
|
static int | m3ua_rx_xfer (struct osmo_ss7_asp *asp, struct xua_msg *xua) |
|
static int | m3ua_rx_mgmt_err (struct osmo_ss7_asp *asp, struct xua_msg *xua) |
|
static int | m3ua_rx_mgmt_ntfy (struct osmo_ss7_asp *asp, struct xua_msg *xua) |
|
static int | m3ua_rx_mgmt (struct osmo_ss7_asp *asp, struct xua_msg *xua) |
|
static int | m3ua_rx_asp (struct osmo_ss7_asp *asp, struct xua_msg *xua) |
|
static int | m3ua_rx_snm (struct osmo_ss7_asp *asp, struct xua_msg *xua) |
|
int | m3ua_rx_msg (struct osmo_ss7_asp *asp, struct msgb *msg) |
| process M3UA message received from socket More...
|
|
static struct xua_msg * | m3ua_encode_duna (const uint32_t *rctx, unsigned int num_rctx, const uint32_t *aff_pc, unsigned int num_aff_pc, const char *info_string) |
|
static struct xua_msg * | m3ua_encode_dava (const uint32_t *rctx, unsigned int num_rctx, const uint32_t *aff_pc, unsigned int num_aff_pc, const char *info_string) |
|
static struct xua_msg * | m3ua_encode_dupu (const uint32_t *rctx, unsigned int num_rctx, uint32_t dpc, uint16_t user, uint16_t cause, const char *info_string) |
|
void | m3ua_tx_snm_available (struct osmo_ss7_asp *asp, const uint32_t *rctx, unsigned int num_rctx, const uint32_t *aff_pc, unsigned int num_aff_pc, const char *info_string, bool available) |
| Transmit SSNM DUNA/DAVA message indicating [un]availability of certain point code[s]. More...
|
|
void | m3ua_tx_snm_congestion (struct osmo_ss7_asp *asp, const uint32_t *rctx, unsigned int num_rctx, const uint32_t *aff_pc, unsigned int num_aff_pc, const uint32_t *concerned_dpc, const uint8_t *cong_level, const char *info_string) |
| Transmit SSNM SCON message indicating congestion. More...
|
|
void | m3ua_tx_dupu (struct osmo_ss7_asp *asp, const uint32_t *rctx, unsigned int num_rctx, uint32_t dpc, uint16_t user, uint16_t cause, const char *info_str) |
| Transmit SSNM DUPU message indicating user unavailability. More...
|
|
static int | m3ua_rx_snm_asp (struct osmo_ss7_asp *asp, struct xua_msg *xua) |
|
static int | m3ua_rx_snm_sg (struct osmo_ss7_asp *asp, struct xua_msg *xua) |
|
◆ M3UA_MSG_HEADROOM
#define M3UA_MSG_HEADROOM 512 |
◆ M3UA_MSG_SIZE
#define M3UA_MSG_SIZE 2048 |
◆ M3UA_MSGB_SIZE
#define M3UA_MSGB_SIZE 1500 |
◆ MAND_IES
#define MAND_IES |
( |
|
msgt, |
|
|
|
ies |
|
) |
| [msgt] = (ies) |
◆ data_hdr_from_m3ua()
◆ m3ua_decode_notify()
References osmo_xlm_prim_notify::asp_id, xua_msg_part::dat, osmo_xlm_prim_notify::info_string, xua_msg_part::len, M3UA_IEI_ASP_ID, M3UA_IEI_INFO_STRING, M3UA_IEI_ROUTE_CTX, M3UA_IEI_STATUS, NOTIFY_PAR_P_ASP_ID, NOTIFY_PAR_P_ROUTE_CTX, osmo_xlm_prim_notify::presence, osmo_xlm_prim_notify::route_ctx, osmo_xlm_prim_notify::status_info, osmo_xlm_prim_notify::status_type, xua_msg_find_tag(), and xua_msg_part_get_u32().
Referenced by m3ua_rx_mgmt_ntfy(), and sua_rx_mgmt_ntfy().
◆ m3ua_dh_to_xfer_param()
References osmo_mtp_transfer_param::dpc, m3ua_data_hdr::dpc, m3ua_data_hdr::mp, m3ua_data_hdr::ni, osmo_mtp_transfer_param::opc, m3ua_data_hdr::opc, m3ua_data_hdr::si, osmo_mtp_transfer_param::sio, osmo_mtp_transfer_param::sls, and m3ua_data_hdr::sls.
Referenced by ipa_rx_msg_sccp(), m3ua_rx_xfer(), and m3ua_to_xfer_ind().
◆ m3ua_encode_dava()
static struct xua_msg* m3ua_encode_dava |
( |
const uint32_t * |
rctx, |
|
|
unsigned int |
num_rctx, |
|
|
const uint32_t * |
aff_pc, |
|
|
unsigned int |
num_aff_pc, |
|
|
const char * |
info_string |
|
) |
| |
|
static |
◆ m3ua_encode_duna()
static struct xua_msg* m3ua_encode_duna |
( |
const uint32_t * |
rctx, |
|
|
unsigned int |
num_rctx, |
|
|
const uint32_t * |
aff_pc, |
|
|
unsigned int |
num_aff_pc, |
|
|
const char * |
info_string |
|
) |
| |
|
static |
References xua_msg::hdr, M3UA_IEI_AFFECTED_PC, M3UA_IEI_INFO_STRING, M3UA_IEI_ROUTE_CTX, M3UA_MSGC_SNM, M3UA_SNM_DUNA, M3UA_VERSION, xua_common_hdr::version, XUA_HDR, xua_msg_add_data(), and xua_msg_alloc().
Referenced by m3ua_encode_dava(), and m3ua_tx_snm_available().
◆ m3ua_encode_dupu()
static struct xua_msg* m3ua_encode_dupu |
( |
const uint32_t * |
rctx, |
|
|
unsigned int |
num_rctx, |
|
|
uint32_t |
dpc, |
|
|
uint16_t |
user, |
|
|
uint16_t |
cause, |
|
|
const char * |
info_string |
|
) |
| |
|
static |
References dpc, xua_msg::hdr, M3UA_IEI_AFFECTED_PC, M3UA_IEI_INFO_STRING, M3UA_IEI_ROUTE_CTX, M3UA_IEI_USER_CAUSE, M3UA_MSGC_SNM, M3UA_SNM_DUPU, M3UA_VERSION, xua_common_hdr::version, XUA_HDR, xua_msg_add_data(), xua_msg_add_u32(), and xua_msg_alloc().
Referenced by m3ua_tx_dupu().
◆ m3ua_encode_notify()
References osmo_xlm_prim_notify::asp_id, xua_msg::hdr, osmo_xlm_prim_notify::info_string, M3UA_IEI_ASP_ID, M3UA_IEI_INFO_STRING, M3UA_IEI_ROUTE_CTX, M3UA_IEI_STATUS, M3UA_MGMT_NTFY, M3UA_MSGC_MGMT, M3UA_NOTIFY, NOTIFY_PAR_P_ASP_ID, NOTIFY_PAR_P_ROUTE_CTX, osmo_xlm_prim_notify::presence, osmo_xlm_prim_notify::route_ctx, osmo_xlm_prim_notify::status_info, osmo_xlm_prim_notify::status_type, XUA_HDR, xua_msg_add_data(), xua_msg_add_u32(), and xua_msg_alloc().
Referenced by encode_notify().
◆ m3ua_gen_error()
static struct xua_msg* m3ua_gen_error |
( |
uint32_t |
err_code | ) |
|
|
static |
◆ m3ua_gen_error_msg()
static struct xua_msg* m3ua_gen_error_msg |
( |
uint32_t |
err_code, |
|
|
struct msgb * |
msg |
|
) |
| |
|
static |
◆ m3ua_msgb_alloc()
struct msgb* m3ua_msgb_alloc |
( |
const char * |
name | ) |
|
◆ m3ua_rx_asp()
◆ m3ua_rx_mgmt()
◆ m3ua_rx_mgmt_err()
References osmo_xlm_prim_error::code, osmo_xlm_prim::error, LOGPASP, m3ua_err_names, M3UA_IEI_ERR_CODE, OSMO_XLM_PRIM_M_ERROR, osmo_xlm_prim::u, xua_asp_send_xlm_prim(), xua_dialect_m3ua, xua_msg_dump(), xua_msg_get_u32(), and xua_xlm_prim_alloc().
Referenced by m3ua_rx_mgmt().
◆ m3ua_rx_mgmt_ntfy()
References osmo_xlm_prim_notify::info_string, LOGPASP, m3ua_decode_notify(), M3UA_NOTIFY_T_OTHER, M3UA_NOTIFY_T_STATCHG, m3ua_ntfy_other_names, m3ua_ntfy_stchg_names, m3ua_ntfy_type_names, osmo_xlm_prim::notify, OSMO_XLM_PRIM_M_NOTIFY, osmo_xlm_prim_notify::status_info, osmo_xlm_prim_notify::status_type, osmo_xlm_prim::u, xua_asp_send_xlm_prim(), and xua_xlm_prim_alloc().
Referenced by m3ua_rx_mgmt().
◆ m3ua_rx_msg()
int m3ua_rx_msg |
( |
struct osmo_ss7_asp * |
asp, |
|
|
struct msgb * |
msg |
|
) |
| |
process M3UA message received from socket
- Parameters
-
[in] | asp | Application Server Process receiving msg |
[in] | msg | received message buffer |
- Returns
- 0 on success; negative on error
References osmo_ss7_asp::cfg, xua_common_hdr::data, xua_msg::hdr, LOGPASP, M3UA_ERR_INVAL_STREAM_ID, M3UA_ERR_INVALID_VERSION, M3UA_ERR_MISSING_PARAM, M3UA_ERR_PARAM_FIELD_ERR, M3UA_ERR_UNSUPP_MSG_CLASS, m3ua_gen_error_msg(), M3UA_MSGC_ASPSM, M3UA_MSGC_ASPTM, M3UA_MSGC_MGMT, M3UA_MSGC_RKM, M3UA_MSGC_SNM, M3UA_MSGC_XFER, m3ua_rx_asp(), m3ua_rx_mgmt(), m3ua_rx_rkm(), m3ua_rx_snm(), m3ua_rx_xfer(), m3ua_tx_xua_asp(), M3UA_VERSION, xua_common_hdr::msg_class, OSMO_SS7_ASP_PROT_M3UA, osmo_ss7_asp::proto, xua_common_hdr::version, xua_dialect_check_all_mand_ies(), xua_dialect_m3ua, xua_from_msg(), xua_hdr_dump(), and xua_msg_free().
Referenced by xua_cli_read_cb(), and xua_srv_conn_cb().
◆ m3ua_rx_snm()
References osmo_ss7_asp::cfg, osmo_ss7_asp::fi, LOGPASP, M3UA_ERR_UNEXPECTED_MSG, M3UA_ERR_UNSUPP_MSG_CLASS, m3ua_rx_snm_asp(), m3ua_rx_snm_sg(), OSMO_SS7_ASP_QUIRK_SNM_INACTIVE, OSMO_SS7_ASP_ROLE_ASP, OSMO_SS7_ASP_ROLE_SG, osmo_ss7_asp::quirks, osmo_ss7_asp::role, XUA_ASP_S_ACTIVE, and XUA_ASP_S_INACTIVE.
Referenced by m3ua_rx_msg().
◆ m3ua_rx_snm_asp()
References osmo_ss7_asp::cfg, xua_msg::hdr, LOGPASP, M3UA_ERR_UNSUPP_MSG_TYPE, M3UA_IEI_ROUTE_CTX, M3UA_SNM_DAUD, M3UA_SNM_DAVA, M3UA_SNM_DRST, M3UA_SNM_DUNA, M3UA_SNM_DUPU, M3UA_SNM_SCON, xua_common_hdr::msg_type, OSMO_SS7_ASP_QUIRK_DAUD_IN_ASP, osmo_ss7_asp::quirks, xua_find_as_for_asp(), xua_msg_find_tag(), xua_snm_rx_daud(), xua_snm_rx_dava(), xua_snm_rx_duna(), xua_snm_rx_dupu(), and xua_snm_rx_scon().
Referenced by m3ua_rx_snm().
◆ m3ua_rx_snm_sg()
◆ m3ua_rx_xfer()
References osmo_ss7_as::ctrg, data_hdr_from_m3ua(), osmo_mtp_transfer_param::dpc, xua_msg::hdr, osmo_ss7_asp::inst, LOGPASP, m3ua_dh_to_xfer_param(), M3UA_ERR_UNSUPP_MSG_TYPE, m3ua_hmdc_rx_from_l2(), M3UA_IEI_ROUTE_CTX, M3UA_XFER_DATA, m3ua_xfer_msgt_names, xua_common_hdr::msg_type, xua_msg::mtp, osmo_mtp_transfer_param::opc, osmo_ss7_pointcode_print(), osmo_ss7_pointcode_print2(), SS7_AS_CTR_RX_MSU_TOTAL, xua_find_as_for_asp(), xua_msg_find_tag(), and xua_msg_free_tag().
Referenced by m3ua_rx_msg().
◆ m3ua_to_msg()
static struct msgb* m3ua_to_msg |
( |
struct xua_msg * |
xua | ) |
|
|
static |
◆ m3ua_tx_dupu()
void m3ua_tx_dupu |
( |
struct osmo_ss7_asp * |
asp, |
|
|
const uint32_t * |
rctx, |
|
|
unsigned int |
num_rctx, |
|
|
uint32_t |
dpc, |
|
|
uint16_t |
user, |
|
|
uint16_t |
cause, |
|
|
const char * |
info_str |
|
) |
| |
Transmit SSNM DUPU message indicating user unavailability.
- Parameters
-
[in] | asp | ASP through which to transmit message. Must be ACTIVE. |
[in] | rctx | array of Routing Contexts in network byte order. |
[in] | num_rctx | number of rctx |
[in] | dpc | affected point code |
[in] | user | the user (SI) that is unavailable |
[in] | cause | the cause of the user unavailability |
[in] | info_string | optional information string (can be NULL). |
References dpc, m3ua_encode_dupu(), m3ua_tx_xua_asp(), and xua_msg_free().
Referenced by xua_tx_upu().
◆ m3ua_tx_snm_available()
void m3ua_tx_snm_available |
( |
struct osmo_ss7_asp * |
asp, |
|
|
const uint32_t * |
rctx, |
|
|
unsigned int |
num_rctx, |
|
|
const uint32_t * |
aff_pc, |
|
|
unsigned int |
num_aff_pc, |
|
|
const char * |
info_string, |
|
|
bool |
available |
|
) |
| |
Transmit SSNM DUNA/DAVA message indicating [un]availability of certain point code[s].
- Parameters
-
[in] | asp | ASP through which to transmit message. Must be ACTIVE. |
[in] | rctx | array of Routing Contexts in network byte order. |
[in] | num_rctx | number of rctx |
[in] | aff_pc | array of 'Affected Point Code' in network byte order. |
[in] | num_aff_pc | number of aff_pc |
[in] | info_string | optional information string (can be NULL). |
[in] | available | are aff_pc now available (true) or unavailable (false) |
References m3ua_encode_dava(), m3ua_encode_duna(), m3ua_tx_xua_asp(), and xua_msg_free().
Referenced by xua_tx_snm_available().
◆ m3ua_tx_snm_congestion()
void m3ua_tx_snm_congestion |
( |
struct osmo_ss7_asp * |
asp, |
|
|
const uint32_t * |
rctx, |
|
|
unsigned int |
num_rctx, |
|
|
const uint32_t * |
aff_pc, |
|
|
unsigned int |
num_aff_pc, |
|
|
const uint32_t * |
concerned_dpc, |
|
|
const uint8_t * |
cong_level, |
|
|
const char * |
info_string |
|
) |
| |
Transmit SSNM SCON message indicating congestion.
- Parameters
-
[in] | asp | ASP through which to transmit message. Must be ACTIVE. |
[in] | rctx | array of Routing Contexts in network byte order. |
[in] | num_rctx | number of rctx |
[in] | aff_pc | array of 'Affected Point Code' in network byte order. |
[in] | num_aff_pc | number of aff_pc |
[in] | concerned_dpc | optional concerned DPC (can be NULL) |
[in] | cong_level | optional congestion level (can be NULL) |
[in] | info_string | optional information string (can be NULL). |
References xua_msg::hdr, M3UA_IEI_AFFECTED_PC, M3UA_IEI_CONC_DEST, M3UA_IEI_CONG_IND, M3UA_IEI_INFO_STRING, M3UA_IEI_ROUTE_CTX, M3UA_MSGC_SNM, M3UA_SNM_SCON, m3ua_tx_xua_asp(), M3UA_VERSION, xua_common_hdr::version, XUA_HDR, xua_msg_add_data(), xua_msg_add_u32(), xua_msg_alloc(), and xua_msg_free().
Referenced by xua_tx_scon().
◆ m3ua_tx_xua_as()
◆ m3ua_tx_xua_asp()
◆ m3ua_xfer_from_data()
struct xua_msg* m3ua_xfer_from_data |
( |
const struct m3ua_data_hdr * |
data_hdr, |
|
|
const uint8_t * |
data, |
|
|
unsigned int |
data_len |
|
) |
| |
References xua_msg_part::dat, data, xua_msg_part::entry, xua_msg::hdr, xua_msg::headers, xua_msg_part::len, M3UA_IEI_PROT_DATA, M3UA_MSGC_XFER, M3UA_XFER_DATA, xua_msg_part::tag, XUA_HDR, and xua_msg_alloc().
Referenced by ipa_rx_msg_sccp(), and mtp_prim_to_m3ua().
◆ mtp_xfer_param_to_m3ua_dh()
◆ data_mand_ies
const uint16_t data_mand_ies[] |
|
static |
◆ daud_mand_ies
const uint16_t daud_mand_ies[] |
|
static |
◆ dava_mand_ies
const uint16_t dava_mand_ies[] |
|
static |
◆ dereg_req_ies
const uint16_t dereg_req_ies[] |
|
static |
◆ dereg_rsp_ies
const uint16_t dereg_rsp_ies[] |
|
static |
◆ drst_mand_ies
const uint16_t drst_mand_ies[] |
|
static |
◆ duna_mand_ies
const uint16_t duna_mand_ies[] |
|
static |
◆ dupu_mand_ies
const uint16_t dupu_mand_ies[] |
|
static |
◆ err_req_ies
const uint16_t err_req_ies[] |
|
static |
◆ m3ua_aspsm_msgt_names
const struct value_string m3ua_aspsm_msgt_names[] |
|
static |
◆ m3ua_asptm_msgt_names
const struct value_string m3ua_asptm_msgt_names[] |
◆ m3ua_aspxm_map
◆ m3ua_err_names
const struct value_string m3ua_err_names[] |
◆ m3ua_iei_names
const struct value_string m3ua_iei_names[] |
|
static |
◆ m3ua_mgmt_msgt_names
const struct value_string m3ua_mgmt_msgt_names[] |
|
static |
◆ m3ua_msg_class_aspsm
◆ m3ua_msg_class_asptm
◆ m3ua_msg_class_mgmt
Initial value:= {
.name = "MGMT",
.mand_ies = {
},
}
◆ m3ua_msg_class_rkm
Initial value:= {
.name = "RKM",
.mand_ies = {
},
}
◆ m3ua_msg_class_snm
Initial value:= {
.name = "SNM",
.mand_ies = {
},
}
◆ m3ua_ntfy_other_names
const struct value_string m3ua_ntfy_other_names[] |
◆ m3ua_ntfy_stchg_names
const struct value_string m3ua_ntfy_stchg_names[] |
◆ m3ua_ntfy_type_names
const struct value_string m3ua_ntfy_type_names[] |
◆ m3ua_rkm_msgt_names
const struct value_string m3ua_rkm_msgt_names[] |
|
static |
◆ m3ua_snm_msgt_names
const struct value_string m3ua_snm_msgt_names[] |
|
static |
◆ m3ua_xfer_msgt_names
const struct value_string m3ua_xfer_msgt_names[] |
|
static |
◆ msg_class_xfer
Initial value:= {
.name = "XFER",
.mand_ies = {
},
}
◆ ntfy_req_ies
const uint16_t ntfy_req_ies[] |
|
static |
◆ reg_req_ies
const uint16_t reg_req_ies[] |
|
static |
◆ reg_rsp_ies
const uint16_t reg_rsp_ies[] |
|
static |
◆ scon_mand_ies
const uint16_t scon_mand_ies[] |
|
static |
◆ xua_dialect_m3ua
#define M3UA_MSGC_SNM
Definition: m3ua.h:31
#define MAND_IES(msgt, ies)
Definition: m3ua.c:130
static const struct value_string m3ua_snm_msgt_names[]
Definition: m3ua.c:167
#define M3UA_IEI_DEREG_STATUS
Definition: m3ua.h:92
#define M3UA_IEI_SVC_IND
Definition: m3ua.h:88
@ M3UA_ERR_INVAL_ROUT_CTX
Definition: m3ua.h:171
#define M3UA_NOTIFY_T_STATCHG
Definition: m3ua.h:107
static const uint16_t dava_mand_ies[]
Definition: m3ua.c:152
@ M3UA_ERR_UNSUPP_TRAF_MOD_TYP
Definition: m3ua.h:151
static const uint16_t dupu_mand_ies[]
Definition: m3ua.c:161
#define M3UA_NOTIFY_I_RESERVED
Definition: m3ua.h:110
#define M3UA_RKM_DEREG_REQ
Definition: m3ua.h:63
const struct xua_msg_class m3ua_msg_class_snm
Definition: m3ua.c:176
#define M3UA_IEI_ERR_CODE
Definition: m3ua.h:71
@ XUA_ASP_E_ASPSM_BEAT
Definition: xua_asp_fsm.h:28
#define M3UA_MSGC_ASPTM
Definition: m3ua.h:33
#define M3UA_ASPSM_BEAT_ACK
Definition: m3ua.h:54
#define M3UA_NOTIFY_I_AS_INACT
Definition: m3ua.h:111
static const struct value_string m3ua_aspsm_msgt_names[]
Definition: m3ua.c:190
#define M3UA_ASPSM_BEAT
Definition: m3ua.h:51
#define M3UA_ASPSM_DOWN
Definition: m3ua.h:50
const struct value_string m3ua_asptm_msgt_names[]
Definition: m3ua.c:205
#define M3UA_SNM_DUPU
Definition: m3ua.h:46
#define M3UA_SNM_DUNA
Definition: m3ua.h:42
@ M3UA_ERR_DEST_STATUS_UNKN
Definition: m3ua.h:166
@ M3UA_ERR_INVAL_NET_APPEAR
Definition: m3ua.h:167
static const struct value_string m3ua_iei_names[]
Definition: m3ua.c:101
static const uint16_t data_mand_ies[]
Definition: m3ua.c:133
#define M3UA_PORT
Definition: m3ua.h:26
@ XUA_ASP_E_ASPTM_ASPIA
Definition: xua_asp_fsm.h:25
#define M3UA_MSGC_RKM
Definition: m3ua.h:34
const struct xua_msg_class m3ua_msg_class_rkm
Definition: m3ua.c:260
@ M3UA_ERR_INVALID_VERSION
Definition: m3ua.h:147
#define M3UA_NOTIFY_I_OT_ALT_ASP_ACT
Definition: m3ua.h:116
#define M3UA_MGMT_ERR
Definition: m3ua.h:37
@ XUA_ASP_E_ASPSM_ASPDN_ACK
Definition: xua_asp_fsm.h:24
@ M3UA_ERR_INVAL_PARAM_VAL
Definition: m3ua.h:163
#define M3UA_NOTIFY_I_OT_ASP_FAILURE
Definition: m3ua.h:117
#define M3UA_IEI_NET_APPEAR
Definition: m3ua.h:79
#define M3UA_XFER_DATA
Definition: m3ua.h:40
@ M3UA_ERR_REFUSED_MGMT_BLOCKING
Definition: m3ua.h:159
@ XUA_ASP_E_ASPTM_ASPAC_ACK
Definition: xua_asp_fsm.h:22
#define M3UA_IEI_LOC_RKEY_ID
Definition: m3ua.h:86
const struct xua_msg_class m3ua_msg_class_aspsm
Definition: m3ua.c:199
#define M3UA_NOTIFY_I_AS_PEND
Definition: m3ua.h:113
#define M3UA_RKM_DEREG_RSP
Definition: m3ua.h:64
@ M3UA_ERR_PARAM_FIELD_ERR
Definition: m3ua.h:164
@ M3UA_ERR_INVAL_ASP_ID
Definition: m3ua.h:161
#define M3UA_IEI_HEARDBT_DATA
Definition: m3ua.h:69
@ XUA_ASP_E_ASPTM_ASPIA_ACK
Definition: xua_asp_fsm.h:26
#define M3UA_IEI_PROT_DATA
Definition: m3ua.h:90
#define M3UA_ASPSM_UP_ACK
Definition: m3ua.h:52
#define M3UA_IEI_TRAF_MODE_TYP
Definition: m3ua.h:70
@ XUA_ASP_E_ASPSM_ASPDN
Definition: xua_asp_fsm.h:23
#define M3UA_IEI_STATUS
Definition: m3ua.h:72
#define M3UA_IEI_ORIG_PC
Definition: m3ua.h:89
const struct xua_msg_class m3ua_msg_class_mgmt
Definition: m3ua.c:230
@ M3UA_ERR_ASP_ID_REQD
Definition: m3ua.h:160
@ XUA_ASP_E_ASPTM_ASPAC
Definition: xua_asp_fsm.h:21
static const struct xua_msg_class msg_class_xfer
Definition: m3ua.c:140
#define M3UA_IEI_CORR_ID
Definition: m3ua.h:75
#define M3UA_IEI_REG_STATUS
Definition: m3ua.h:91
#define M3UA_MSGC_XFER
Definition: m3ua.h:30
static const uint16_t reg_rsp_ies[]
Definition: m3ua.c:244
@ XUA_ASP_E_ASPSM_BEAT_ACK
Definition: xua_asp_fsm.h:29
#define M3UA_SNM_DAVA
Definition: m3ua.h:43
#define M3UA_ASPTM_ACTIVE_ACK
Definition: m3ua.h:58
#define M3UA_NOTIFY_T_OTHER
Definition: m3ua.h:108
#define M3UA_IEI_DEST_PC
Definition: m3ua.h:87
#define M3UA_ASPTM_INACTIVE
Definition: m3ua.h:57
#define M3UA_NOTIFY_I_AS_ACT
Definition: m3ua.h:112
#define M3UA_IEI_ASP_ID
Definition: m3ua.h:73
#define M3UA_IEI_USER_CAUSE
Definition: m3ua.h:80
#define M3UA_SNM_DAUD
Definition: m3ua.h:44
static const struct value_string m3ua_xfer_msgt_names[]
Definition: m3ua.c:136
#define M3UA_IEI_ROUT_KEY
Definition: m3ua.h:83
#define M3UA_IEI_INFO_STRING
Definition: m3ua.h:66
@ XUA_ASP_E_ASPSM_ASPUP_ACK
Definition: xua_asp_fsm.h:20
#define M3UA_MGMT_NTFY
Definition: m3ua.h:38
static const uint16_t dereg_req_ies[]
Definition: m3ua.c:247
#define M3UA_SNM_SCON
Definition: m3ua.h:45
@ M3UA_ERR_UNEXPECTED_MSG
Definition: m3ua.h:152
static const uint16_t scon_mand_ies[]
Definition: m3ua.c:158
static const uint16_t reg_req_ies[]
Definition: m3ua.c:241
@ M3UA_ERR_PROTOCOL_ERR
Definition: m3ua.h:153
#define M3UA_MSGC_MGMT
Definition: m3ua.h:29
static const struct value_string m3ua_mgmt_msgt_names[]
Definition: m3ua.c:225
@ M3UA_ERR_INVAL_STREAM_ID
Definition: m3ua.h:155
#define SUA_ERR_INVAL_LOADSH_LEVEL
Definition: sua.h:160
#define M3UA_IEI_AFFECTED_PC
Definition: m3ua.h:74
static const uint16_t ntfy_req_ies[]
Definition: m3ua.c:222
@ XUA_ASP_E_ASPSM_ASPUP
Definition: xua_asp_fsm.h:19
#define M3UA_NOTIFY_I_OT_INS_RES
Definition: m3ua.h:115
#define M3UA_RKM_REG_RSP
Definition: m3ua.h:62
#define M3UA_RKM_REG_REQ
Definition: m3ua.h:61
static const uint16_t err_req_ies[]
Definition: m3ua.c:219
const struct xua_msg_class m3ua_msg_class_asptm
Definition: m3ua.c:212
#define M3UA_SNM_DRST
Definition: m3ua.h:47
#define M3UA_IEI_DEREG_RESULT
Definition: m3ua.h:85
static const uint16_t dereg_rsp_ies[]
Definition: m3ua.c:250
#define SUA_ERR_SUBSYS_STATUS_UNKN
Definition: sua.h:159
static const uint16_t daud_mand_ies[]
Definition: m3ua.c:155
#define M3UA_MSGC_ASPSM
Definition: m3ua.h:32
#define M3UA_IEI_REG_RESULT
Definition: m3ua.h:84
#define M3UA_ASPTM_INACTIVE_ACK
Definition: m3ua.h:59
#define M3UA_IEI_CONG_IND
Definition: m3ua.h:81
@ M3UA_ERR_MISSING_PARAM
Definition: m3ua.h:168
static const uint16_t drst_mand_ies[]
Definition: m3ua.c:164
#define M3UA_ASPTM_ACTIVE
Definition: m3ua.h:56
@ M3UA_ERR_UNSUPP_MSG_CLASS
Definition: m3ua.h:149
@ M3UA_ERR_NO_CONFGD_AS_FOR_ASP
Definition: m3ua.h:172
@ M3UA_ERR_UNEXP_PARAM
Definition: m3ua.h:165
static const struct value_string m3ua_rkm_msgt_names[]
Definition: m3ua.c:253
#define M3UA_IEI_CONC_DEST
Definition: m3ua.h:82
@ M3UA_ERR_UNSUPP_MSG_TYPE
Definition: m3ua.h:150
#define M3UA_PPID
Definition: m3ua.h:25
static const uint16_t duna_mand_ies[]
Definition: m3ua.c:149
#define M3UA_ASPSM_DOWN_ACK
Definition: m3ua.h:53
#define M3UA_IEI_ROUTE_CTX
Definition: m3ua.h:67
#define M3UA_IEI_DIAG_INFO
Definition: m3ua.h:68
#define M3UA_ASPSM_UP
Definition: m3ua.h:49