sigtran/html/ 0000755 0001750 0001750 00000000000 14733776777 012505 5 ustar build build sigtran/html/globals_r.html 0000644 0001750 0001750 00000016112 14733776777 015340 0 ustar build build
libosmo-sigtran 2.0.0.52-6412
Osmocom SIGTRAN library
|
libosmo-sigtran 2.0.0.52-6412
Osmocom SIGTRAN library
|
#include <ss7_user.h>
Data Fields | |
struct osmo_ss7_instance * | inst |
const char * | name |
osmo_prim_cb | prim_cb |
void * | priv |
struct osmo_ss7_instance* osmo_ss7_user::inst |
const char* osmo_ss7_user::name |
Referenced by DEFUN(), osmo_ss7_user_create(), osmo_ss7_user_register(), and ss7_mtp_to_user().
osmo_prim_cb osmo_ss7_user::prim_cb |
Referenced by deliver_to_mtp_user(), osmo_ss7_user_set_prim_cb(), and ss7_mtp_to_user().
void* osmo_ss7_user::priv |
libosmo-sigtran 2.0.0.52-6412
Osmocom SIGTRAN library
|
#include <errno.h>
#include <osmocom/core/linuxlist.h>
#include <osmocom/core/logging.h>
#include <osmocom/sigtran/osmo_ss7.h>
#include "ss7_link.h"
#include "ss7_linkset.h"
#include "ss7_internal.h"
Functions | |
void | ss7_link_destroy (struct osmo_ss7_link *link) |
Destroy SS7 Link. More... | |
struct osmo_ss7_link * | ss7_link_find_or_create (struct osmo_ss7_linkset *lset, uint32_t id) |
Find or create SS7 Link with given ID in given Linkset. More... | |
void ss7_link_destroy | ( | struct osmo_ss7_link * | link | ) |
Destroy SS7 Link.
[in] | link | SS7 Link to be destroyed |
References osmo_ss7_link::cfg, osmo_ss7_linkset::cfg, osmo_ss7_link::id, osmo_ss7_linkset::inst, osmo_ss7_linkset::links, osmo_ss7_link::linkset, LOGSS7, osmo_ss7_linkset::name, and ss7_initialized.
Referenced by ss7_linkset_destroy().
struct osmo_ss7_link * ss7_link_find_or_create | ( | struct osmo_ss7_linkset * | lset, |
uint32_t | id | ||
) |
Find or create SS7 Link with given ID in given Linkset.
[in] | lset | SS7 Linkset on which we operate |
[in] | id | Link number within Linkset |
References osmo_ss7_link::cfg, osmo_ss7_linkset::cfg, osmo_ss7_link::id, osmo_ss7_linkset::inst, osmo_ss7_linkset::links, osmo_ss7_link::linkset, LOGSS7, osmo_ss7_linkset::name, and ss7_initialized.
libosmo-sigtran 2.0.0.52-6412
Osmocom SIGTRAN library
|
libosmo-sigtran 2.0.0.52-6412
Osmocom SIGTRAN library
|
libosmo-sigtran 2.0.0.52-6412
Osmocom SIGTRAN library
|
libosmo-sigtran 2.0.0.52-6412
Osmocom SIGTRAN library
|
libosmo-sigtran 2.0.0.52-6412
Osmocom SIGTRAN library
|
libosmo-sigtran 2.0.0.52-6412
Osmocom SIGTRAN library
|
#include <errno.h>
#include <osmocom/core/fsm.h>
#include <osmocom/core/utils.h>
#include <osmocom/core/timer.h>
#include <osmocom/core/prim.h>
#include <osmocom/core/logging.h>
#include <osmocom/core/select.h>
#include <osmocom/gsm/ipa.h>
#include <osmocom/netif/stream.h>
#include <osmocom/netif/ipa.h>
#include <osmocom/sigtran/osmo_ss7.h>
#include <osmocom/sigtran/sigtran_sap.h>
#include "xua_msg.h"
#include <osmocom/sigtran/protocol/sua.h>
#include "ss7_as.h"
#include "ss7_asp.h"
#include "ss7_internal.h"
#include "ss7_xua_srv.h"
#include "xua_asp_fsm.h"
#include "xua_as_fsm.h"
#include "xua_internal.h"
Data Structures | |
struct | xua_asp_fsm_priv |
struct | ipa_asp_fsm_priv |
Macros | |
#define | S(x) (1 << (x)) |
#define | XUA_T_ACK_SEC 2 |
#define | ENSURE_ASP_OR_IPSP(fi, event) |
#define | ENSURE_SG_OR_IPSP(fi, event) |
Enumerations | |
enum | ipa_asp_state { IPA_ASP_S_DOWN = XUA_ASP_S_DOWN , IPA_ASP_S_INACTIVE = XUA_ASP_S_INACTIVE , IPA_ASP_S_ACTIVE = XUA_ASP_S_ACTIVE , IPA_ASP_S_WAIT_ID_RESP , IPA_ASP_S_WAIT_ID_GET , IPA_ASP_S_WAIT_ID_ACK , IPA_ASP_S_WAIT_ID_ACK2 } |
enum | ipa_asp_fsm_t { T_WAIT_ID_RESP = 1 , T_WAIT_ID_ACK , T_WAIT_ID_GET } |
Functions | |
struct osmo_xlm_prim * | xua_xlm_prim_alloc (enum osmo_xlm_prim_type prim_type, enum osmo_prim_operation op) |
void | xua_asp_send_xlm_prim (struct osmo_ss7_asp *asp, struct osmo_xlm_prim *prim) |
void | xua_asp_send_xlm_prim_simple (struct osmo_ss7_asp *asp, enum osmo_xlm_prim_type prim_type, enum osmo_prim_operation op) |
static void | send_xlm_prim_simple (struct osmo_fsm_inst *fi, enum osmo_xlm_prim_type prim_type, enum osmo_prim_operation op) |
static int | determine_traf_mode (struct osmo_ss7_asp *asp) |
static int | xua_msg_add_asp_rctx (struct xua_msg *xua, struct osmo_ss7_asp *asp) |
static int | peer_send (struct osmo_fsm_inst *fi, int out_event, struct xua_msg *in) |
static int | peer_send_error (struct osmo_fsm_inst *fi, uint32_t err_code) |
static void | xua_t_ack_cb (void *data) |
static int | peer_send_and_start_t_ack (struct osmo_fsm_inst *fi, int out_event) |
static void | dispatch_to_all_as (struct osmo_fsm_inst *fi, uint32_t event) |
static void | check_stop_t_ack (struct osmo_fsm_inst *fi, uint32_t event) |
static void | xua_asp_fsm_down_onenter (struct osmo_fsm_inst *fi, uint32_t prev_state) |
static void | xua_asp_fsm_down (struct osmo_fsm_inst *fi, uint32_t event, void *data) |
static void | xua_asp_fsm_inactive_onenter (struct osmo_fsm_inst *fi, uint32_t prev_state) |
static void | xua_asp_fsm_inactive (struct osmo_fsm_inst *fi, uint32_t event, void *data) |
static void | xua_asp_fsm_active_onenter (struct osmo_fsm_inst *fi, uint32_t prev_state) |
static void | xua_asp_fsm_active (struct osmo_fsm_inst *fi, uint32_t event, void *data) |
static void | xua_asp_allstate (struct osmo_fsm_inst *fi, uint32_t event, void *data) |
static int | xua_asp_fsm_timer_cb (struct osmo_fsm_inst *fi) |
static void | xua_asp_fsm_cleanup (struct osmo_fsm_inst *fi, enum osmo_fsm_term_cause cause) |
static struct osmo_fsm_inst * | ipa_asp_fsm_start (struct osmo_ss7_asp *asp, enum osmo_ss7_asp_role role, int log_level) |
Start a new ASP finite state machine for given ASP. More... | |
struct osmo_fsm_inst * | xua_asp_fsm_start (struct osmo_ss7_asp *asp, enum osmo_ss7_asp_role role, int log_level) |
Start a new ASP finite stae machine for given ASP. More... | |
static int | get_fd_from_iafp (struct ipa_asp_fsm_priv *iafp) |
static void | ipa_asp_fsm_down (struct osmo_fsm_inst *fi, uint32_t event, void *data) |
static void | ipa_asp_fsm_wait_id_resp (struct osmo_fsm_inst *fi, uint32_t event, void *data) |
static void | ipa_asp_fsm_wait_id_ack2 (struct osmo_fsm_inst *fi, uint32_t event, void *data) |
static void | ipa_asp_fsm_wait_id_get (struct osmo_fsm_inst *fi, uint32_t event, void *data) |
static void | ipa_asp_fsm_wait_id_ack (struct osmo_fsm_inst *fi, uint32_t event, void *data) |
static void | ipa_asp_fsm_active_onenter (struct osmo_fsm_inst *fi, uint32_t prev_state) |
static void | ipa_asp_fsm_active (struct osmo_fsm_inst *fi, uint32_t event, void *data) |
static void | ipa_asp_fsm_inactive_onenter (struct osmo_fsm_inst *fi, uint32_t prev_state) |
static void | ipa_asp_fsm_inactive (struct osmo_fsm_inst *fi, uint32_t event, void *data) |
static void | ipa_asp_allstate (struct osmo_fsm_inst *fi, uint32_t event, void *data) |
static void | ipa_pong_timer_cb (void *_fi) |
static int | ipa_asp_fsm_timer_cb (struct osmo_fsm_inst *fi) |
Variables | |
static const struct value_string | xua_asp_event_names [] |
static const uint32_t | evt_ack_map [_NUM_XUA_ASP_E] |
static const struct osmo_fsm_state | xua_asp_states [] |
struct osmo_fsm | xua_asp_fsm |
static const struct osmo_fsm_state | ipa_asp_states [] |
struct osmo_fsm | ipa_asp_fsm |
#define ENSURE_ASP_OR_IPSP | ( | fi, | |
event | |||
) |
#define ENSURE_SG_OR_IPSP | ( | fi, | |
event | |||
) |
#define S | ( | x | ) | (1 << (x)) |
#define XUA_T_ACK_SEC 2 |
enum ipa_asp_fsm_t |
enum ipa_asp_state |
|
static |
References evt_ack_map, xua_asp_fsm_priv::out_event, xua_asp_fsm_priv::t_ack, and xua_asp_fsm_priv::timer.
Referenced by xua_asp_fsm_active(), xua_asp_fsm_down(), and xua_asp_fsm_inactive().
|
static |
References osmo_ss7_instance::as_list, osmo_ss7_as::cfg, osmo_ss7_asp::inst, osmo_ss7_as::list, osmo_ss7_as::mode, osmo_ss7_as::mode_set_by_vty, and osmo_ss7_as_has_asp().
Referenced by peer_send().
|
static |
References osmo_ss7_instance::as_list, xua_asp_fsm_priv::asp, osmo_ss7_as::fi, osmo_ss7_as::inst, osmo_ss7_asp::inst, osmo_ss7_as::list, and osmo_ss7_as_has_asp().
Referenced by ipa_asp_fsm_active_onenter(), ipa_asp_fsm_inactive_onenter(), xua_asp_fsm_active_onenter(), xua_asp_fsm_down_onenter(), and xua_asp_fsm_inactive_onenter().
|
static |
References ipa_asp_fsm_priv::asp, osmo_ss7_asp::client, and osmo_ss7_asp::server.
Referenced by ipa_asp_allstate(), ipa_asp_fsm_down(), ipa_asp_fsm_wait_id_ack(), ipa_asp_fsm_wait_id_get(), and ipa_asp_fsm_wait_id_resp().
|
static |
References osmo_ss7_as::cfg, data, osmo_ss7_as::fi, get_fd_from_iafp(), IPA_ASP_S_DOWN, ipa_asp_fsm_priv::ipa_unit, osmo_ss7_as::name, OSMO_SS7_ASP_ROLE_ASP, OSMO_XLM_PRIM_M_ASP_DOWN, ipa_asp_fsm_priv::pong_timer, ipa_asp_fsm_priv::role, send_xlm_prim_simple(), XUA_ASP_E_AS_ASSIGNED, XUA_ASP_E_ASPSM_BEAT, XUA_ASP_E_ASPSM_BEAT_ACK, XUA_ASP_E_M_ASP_UP_REQ, XUA_ASP_E_SCTP_COMM_DOWN_IND, and XUA_ASP_E_SCTP_RESTART_IND.
|
static |
References IPA_ASP_S_DOWN, XUA_ASP_E_M_ASP_DOWN_REQ, and XUA_ASP_E_M_ASP_INACTIVE_REQ.
|
static |
References dispatch_to_all_as(), XUA_ASPAS_ASP_ACTIVE_IND, and XUA_ASPAS_ASP_INACTIVE_IND.
|
static |
|
static |
References IPA_ASP_S_DOWN, and XUA_ASP_E_M_ASP_DOWN_REQ.
|
static |
References dispatch_to_all_as(), and XUA_ASPAS_ASP_INACTIVE_IND.
|
static |
Start a new ASP finite state machine for given ASP.
[in] | asp | Application Server Process for which to start FSM |
[in] | role | Role (ASP, SG, IPSP) of this FSM |
[in] | log_level | Logging Level for ASP FSM logging |
References ipa_asp_fsm_priv::asp, osmo_ss7_as::cfg, osmo_ss7_asp::cfg, osmo_ss7_asp::dyn_allocated, osmo_ss7_as::fi, ipa_asp_fsm, ipa_find_as_for_asp(), ipa_pong_timer_cb(), ipa_asp_fsm_priv::ipa_unit, osmo_ss7_as::name, osmo_ss7_asp::name, OSMO_SS7_ASP_ROLE_ASP, ipa_asp_fsm_priv::pong_timer, ipa_asp_fsm_priv::role, and XUA_ASP_E_M_ASP_UP_REQ.
Referenced by xua_asp_fsm_start().
|
static |
References ipa_asp_fsm_priv::asp, and osmo_ss7_asp_disconnect().
|
static |
References get_fd_from_iafp(), IPA_ASP_E_ID_ACK, and IPA_ASP_S_ACTIVE.
|
static |
References IPA_ASP_E_ID_ACK, and IPA_ASP_S_ACTIVE.
|
static |
|
static |
References ipa_asp_fsm_priv::asp, osmo_ss7_asp::cfg, data, get_fd_from_iafp(), osmo_ss7_asp::inst, IPA_ASP_E_ID_ACK, IPA_ASP_E_ID_RESP, IPA_ASP_S_WAIT_ID_ACK2, ipa_asp_fsm_priv::ipa_id_ack_rcvd, ipa_asp_fsm_priv::ipa_unit, osmo_ss7_asp::name, osmo_ss7_as_add_asp(), osmo_ss7_as_find_by_name(), osmo_ss7_asp_disconnect(), and T_WAIT_ID_ACK.
|
static |
References ipa_asp_fsm_priv::asp, and osmo_ss7_asp_disconnect().
Referenced by ipa_asp_fsm_start().
|
static |
References xua_asp_fsm_priv::asp, osmo_ss7_asp::asp_id, osmo_ss7_asp::asp_id_present, determine_traf_mode(), xua_msg::hdr, M3UA_IEI_HEARDBT_DATA, M3UA_IEI_ROUTE_CTX, M3UA_IEI_TRAF_MODE_TYP, osmo_ss7_asp_send(), osmo_ss7_tmode_to_xua(), SUA_ASPSM_BEAT, SUA_ASPSM_BEAT_ACK, SUA_ASPSM_DOWN, SUA_ASPSM_DOWN_ACK, SUA_ASPSM_UP, SUA_ASPSM_UP_ACK, SUA_ASPTM_ACTIVE, SUA_ASPTM_ACTIVE_ACK, SUA_ASPTM_INACTIVE, SUA_ASPTM_INACTIVE_ACK, SUA_IEI_ASP_ID, SUA_MSGC_ASPSM, SUA_MSGC_ASPTM, SUA_VERSION, XUA_ASP_E_ASPSM_ASPDN, XUA_ASP_E_ASPSM_ASPDN_ACK, XUA_ASP_E_ASPSM_ASPUP, XUA_ASP_E_ASPSM_ASPUP_ACK, XUA_ASP_E_ASPSM_BEAT, XUA_ASP_E_ASPSM_BEAT_ACK, XUA_ASP_E_ASPTM_ASPAC, XUA_ASP_E_ASPTM_ASPAC_ACK, XUA_ASP_E_ASPTM_ASPIA, XUA_ASP_E_ASPTM_ASPIA_ACK, XUA_HDR, xua_msg_add_asp_rctx(), xua_msg_add_u32(), xua_msg_alloc(), xua_msg_copy_part(), xua_msg_free(), and xua_to_msg().
Referenced by peer_send_and_start_t_ack(), xua_asp_allstate(), xua_asp_fsm_active(), xua_asp_fsm_down(), xua_asp_fsm_inactive(), and xua_t_ack_cb().
|
static |
References xua_asp_fsm_priv::out_event, peer_send(), xua_asp_fsm_priv::t_ack, xua_asp_fsm_priv::timer, xua_t_ack_cb(), and XUA_T_ACK_SEC.
Referenced by xua_asp_fsm_active(), xua_asp_fsm_down(), and xua_asp_fsm_inactive().
|
static |
References xua_asp_fsm_priv::asp, xua_msg::hdr, m3ua_err_names, osmo_ss7_asp_send(), SUA_IEI_ERR_CODE, SUA_MGMT_ERR, SUA_MSGC_MGMT, SUA_VERSION, xua_common_hdr::version, XUA_HDR, xua_msg_add_u32(), xua_msg_alloc(), xua_msg_free(), and xua_to_msg().
Referenced by xua_asp_fsm_active(), and xua_asp_fsm_inactive().
|
static |
References xua_asp_fsm_priv::asp, and xua_asp_send_xlm_prim_simple().
Referenced by ipa_asp_allstate(), xua_asp_allstate(), xua_asp_fsm_active(), xua_asp_fsm_down(), and xua_asp_fsm_inactive().
|
static |
|
static |
References check_stop_t_ack(), data, ENSURE_ASP_OR_IPSP, ENSURE_SG_OR_IPSP, M3UA_ERR_UNEXPECTED_MSG, OSMO_XLM_PRIM_M_ASP_DOWN, OSMO_XLM_PRIM_M_ASP_INACTIVE, peer_send(), peer_send_and_start_t_ack(), peer_send_error(), send_xlm_prim_simple(), XUA_ASP_E_ASPSM_ASPDN, XUA_ASP_E_ASPSM_ASPDN_ACK, XUA_ASP_E_ASPSM_ASPUP, XUA_ASP_E_ASPSM_ASPUP_ACK, XUA_ASP_E_ASPTM_ASPAC, XUA_ASP_E_ASPTM_ASPAC_ACK, XUA_ASP_E_ASPTM_ASPIA, XUA_ASP_E_ASPTM_ASPIA_ACK, XUA_ASP_E_M_ASP_DOWN_REQ, XUA_ASP_E_M_ASP_INACTIVE_REQ, XUA_ASP_S_DOWN, and XUA_ASP_S_INACTIVE.
|
static |
References dispatch_to_all_as(), and XUA_ASPAS_ASP_ACTIVE_IND.
|
static |
References xua_asp_fsm_priv::t_ack, and xua_asp_fsm_priv::timer.
|
static |
References xua_asp_fsm_priv::asp, osmo_ss7_asp::asp_id, osmo_ss7_asp::asp_id_present, check_stop_t_ack(), data, ENSURE_ASP_OR_IPSP, ENSURE_SG_OR_IPSP, osmo_ss7_asp::lm, OSMO_XLM_PRIM_M_ASP_UP, peer_send(), peer_send_and_start_t_ack(), send_xlm_prim_simple(), SUA_IEI_ASP_ID, XUA_ASP_E_ASPSM_ASPDN, XUA_ASP_E_ASPSM_ASPDN_ACK, XUA_ASP_E_ASPSM_ASPUP, XUA_ASP_E_ASPSM_ASPUP_ACK, XUA_ASP_E_M_ASP_ACTIVE_REQ, XUA_ASP_E_M_ASP_UP_REQ, XUA_ASP_E_SCTP_EST_IND, XUA_ASP_S_INACTIVE, xua_msg_find_tag(), and xua_msg_part_get_u32().
|
static |
References dispatch_to_all_as(), and XUA_ASPAS_ASP_DOWN_IND.
|
static |
References osmo_ss7_instance::as_list, xua_asp_fsm_priv::asp, osmo_ss7_as::cfg, check_stop_t_ack(), xua_msg_part::dat, data, ENSURE_ASP_OR_IPSP, ENSURE_SG_OR_IPSP, osmo_ss7_asp::inst, xua_msg_part::len, LOGPAS, M3UA_ERR_INVAL_ROUT_CTX, M3UA_ERR_UNSUPP_TRAF_MOD_TYP, M3UA_IEI_ROUTE_CTX, M3UA_IEI_TRAF_MODE_TYP, M3UA_TMOD_BCAST, M3UA_TMOD_LOADSHARE, M3UA_TMOD_OVERRIDE, osmo_ss7_as::mode, osmo_ss7_as::mode_set_by_peer, osmo_ss7_as::mode_set_by_vty, osmo_ss7_as_find_by_rctx(), osmo_ss7_as_has_asp(), osmo_ss7_as_tmode_compatible_xua(), osmo_ss7_as_traffic_mode_name(), osmo_ss7_tmode_from_xua(), OSMO_XLM_PRIM_M_ASP_ACTIVE, OSMO_XLM_PRIM_M_ASP_DOWN, peer_send(), peer_send_and_start_t_ack(), peer_send_error(), send_xlm_prim_simple(), XUA_ASP_E_ASPSM_ASPDN, XUA_ASP_E_ASPSM_ASPDN_ACK, XUA_ASP_E_ASPSM_ASPUP, XUA_ASP_E_ASPSM_ASPUP_ACK, XUA_ASP_E_ASPTM_ASPAC, XUA_ASP_E_ASPTM_ASPAC_ACK, XUA_ASP_E_ASPTM_ASPIA, XUA_ASP_E_ASPTM_ASPIA_ACK, XUA_ASP_E_M_ASP_ACTIVE_REQ, XUA_ASP_E_M_ASP_DOWN_REQ, XUA_ASP_S_ACTIVE, XUA_ASP_S_DOWN, xua_msg_find_tag(), and xua_msg_get_u32().
|
static |
References dispatch_to_all_as(), and XUA_ASPAS_ASP_INACTIVE_IND.
struct osmo_fsm_inst * xua_asp_fsm_start | ( | struct osmo_ss7_asp * | asp, |
enum osmo_ss7_asp_role | role, | ||
int | log_level | ||
) |
Start a new ASP finite stae machine for given ASP.
[in] | asp | Application Server Process for which to start FSM |
[in] | role | Role (ASP, SG, IPSP) of this FSM |
[in] | log_level | Logging Level for ASP FSM logging |
References xua_asp_fsm_priv::asp, osmo_ss7_asp::cfg, ipa_asp_fsm_start(), osmo_ss7_asp::name, OSMO_SS7_ASP_PROT_IPA, osmo_ss7_asp::proto, xua_asp_fsm_priv::role, and xua_asp_fsm.
Referenced by osmo_ss7_asp_restart().
|
static |
void xua_asp_send_xlm_prim | ( | struct osmo_ss7_asp * | asp, |
struct osmo_xlm_prim * | prim | ||
) |
void xua_asp_send_xlm_prim_simple | ( | struct osmo_ss7_asp * | asp, |
enum osmo_xlm_prim_type | prim_type, | ||
enum osmo_prim_operation | op | ||
) |
References xua_asp_send_xlm_prim(), and xua_xlm_prim_alloc().
Referenced by send_xlm_prim_simple(), ss7_asp_xua_srv_conn_closed_cb(), ss7_asp_xua_srv_conn_rx_cb(), xua_accept_cb(), xua_cli_close(), xua_cli_connect_cb(), and xua_cli_read_cb().
|
static |
|
static |
References data, xua_asp_fsm_priv::out_event, peer_send(), xua_asp_fsm_priv::t_ack, xua_asp_fsm_priv::timer, and XUA_T_ACK_SEC.
Referenced by peer_send_and_start_t_ack().
struct osmo_xlm_prim * xua_xlm_prim_alloc | ( | enum osmo_xlm_prim_type | prim_type, |
enum osmo_prim_operation | op | ||
) |
References osmo_xlm_prim::oph, and XUA_SAP_LM.
Referenced by handle_rkey_dereg_resp(), handle_rkey_reg_resp(), lm_timer_cb(), m3ua_rx_mgmt_err(), m3ua_rx_mgmt_ntfy(), and xua_asp_send_xlm_prim_simple().
|
static |
Referenced by check_stop_t_ack().
struct osmo_fsm ipa_asp_fsm |
Referenced by ipa_asp_fsm_start(), and osmo_ss7_init().
|
static |
|
static |
struct osmo_fsm xua_asp_fsm |
Referenced by osmo_ss7_init(), and xua_asp_fsm_start().
|
static |
libosmo-sigtran 2.0.0.52-6412
Osmocom SIGTRAN library
|
#include <stdlib.h>
#include <unistd.h>
#include <errno.h>
#include <stdint.h>
#include <string.h>
#include <netdb.h>
#include <arpa/inet.h>
#include <sys/ioctl.h>
#include <osmocom/core/sockaddr_str.h>
#include <osmocom/vty/vty.h>
#include <osmocom/vty/command.h>
#include <osmocom/vty/logging.h>
#include <osmocom/vty/telnet_interface.h>
#include <osmocom/vty/misc.h>
#include <osmocom/netif/stream.h>
#include <osmocom/sigtran/osmo_ss7.h>
#include <osmocom/sigtran/protocol/mtp.h>
#include "xua_internal.h"
#include <osmocom/sigtran/sccp_sap.h>
#include "sccp_internal.h"
#include "ss7_as.h"
#include "ss7_asp.h"
#include "ss7_route.h"
#include "ss7_route_table.h"
#include "ss7_internal.h"
#include "ss7_xua_srv.h"
#include <netinet/tcp.h>
Data Structures | |
struct | osmo_sccp_addr_entry |
Enumerations | |
enum | cs7_role_t { CS7_ROLE_SG , CS7_ROLE_ASP } |
Functions | |
DEFUN_ATTR (cs7_instance, cs7_instance_cmd, "cs7 instance <0-15>", CS7_STR "Configure a SS7 Instance\n" INST_STR "Number of the instance\n", CMD_ATTR_IMMEDIATE) | |
DEFUN_ATTR (cs7_net_ind, cs7_net_ind_cmd, "network-indicator (international | national | reserved | spare)", "Configure the Network Indicator\n" "International Network\n" "National Network\n" "Reserved Network\n" "Spare Network\n", CMD_ATTR_IMMEDIATE) | |
DEFUN_ATTR (cs7_pc_format, cs7_pc_format_cmd, "point-code format <1-24> [<1-23>] [<1-22>]", PC_STR "Configure Point Code Format\n" "Length of first PC component\n" "Length of second PC component\n" "Length of third PC component\n", CMD_ATTR_IMMEDIATE) | |
DEFUN_ATTR (cs7_pc_format_def, cs7_pc_format_def_cmd, "point-code format default", PC_STR "Configure Point Code Format\n" "Default Point Code Format (3.8.3)\n", CMD_ATTR_IMMEDIATE) | |
DEFUN_ATTR (cs7_pc_delimiter, cs7_pc_delimiter_cmd, "point-code delimiter (default|dash)", PC_STR "Configure Point Code Delimiter\n" "Use dot as delimiter\n" "User dash as delimiter\n", CMD_ATTR_IMMEDIATE) | |
DEFUN_ATTR (cs7_point_code, cs7_point_code_cmd, "point-code POINT_CODE", "Configure the local Point Code\n" "Point Code\n", CMD_ATTR_IMMEDIATE) | |
DEFUN_ATTR (cs7_secondary_pc, cs7_secondary_pc_cmd, "secondary-pc POINT_CODE", "Configure the local Secondary Point Code\n" "Point Code\n", CMD_ATTR_IMMEDIATE) | |
DEFUN_ATTR (cs7_permit_dyn_rkm, cs7_permit_dyn_rkm_cmd, "xua rkm routing-key-allocation (static-only|dynamic-permitted)", "SIGTRAN xxxUA related\n" "Routing Key Management\n" "Routing Key Management Allocation Policy\n" "Only static (pre-configured) Routing Keys permitted\n" "Dynamically allocate Routing Keys for what ASPs request\n", CMD_ATTR_IMMEDIATE) | |
static void | write_one_cs7 (struct vty *vty, struct osmo_ss7_instance *inst, bool show_dyn_config) |
static int | write_all_cs7 (struct vty *vty, bool show_dyn_config) |
static int | config_write_cs7 (struct vty *vty) |
DEFUN (show_cs7_user, show_cs7_user_cmd, "show cs7 instance <0-15> users", SHOW_STR CS7_STR INST_STR INST_STR "User Table\n") | |
DEFUN_ATTR (cs7_route_table, cs7_route_table_cmd, "route-table system", "Specify the name of the route table\n" "Name of the route table\n", CMD_ATTR_IMMEDIATE) | |
DEFUN_ATTR (cs7_rt_upd, cs7_rt_upd_cmd, "update route POINT_CODE MASK linkset LS_NAME [priority] [" ROUTE_PRIO_VAR_STR "] [qos-class] [" QOS_CLASS_VAR_STR "]", "Update the Route\n" "Update the Route\n" "Destination Point Code\n" "Point Code Mask\n" "Specify Destination Linkset\n" "Linkset Name\n" "Specify Priority\n" ROUTE_PRIO_VAR_HELP_STR "Specify QoS Class\n" QOS_CLASS_VAR_HELP_STR, CMD_ATTR_IMMEDIATE) | |
DEFUN_ATTR (cs7_rt_rem, cs7_rt_rem_cmd, "remove route POINT_CODE MASK", "Remove a Route\n" "Remove a Route\n" "Destination Point Code\n" "Point Code Mask\n" "Point Code Length\n", CMD_ATTR_IMMEDIATE) | |
static void | write_one_rtable (struct vty *vty, struct osmo_ss7_route_table *rtable) |
static void | vty_dump_rtable (struct vty *vty, struct osmo_ss7_route_table *rtbl) |
DEFUN (show_cs7_route, show_cs7_route_cmd, "show cs7 instance <0-15> route", SHOW_STR CS7_STR INST_STR INST_STR "Routing Table\n") | |
static int | parse_trans_proto (const char *protocol) |
static enum osmo_ss7_asp_protocol | parse_asp_proto (const char *protocol) |
DEFUN_ATTR (cs7_xua, cs7_xua_cmd, "listen " XUA_VAR_STR " <0-65534> [" IPPROTO_VAR_STR "]", "Configure/Enable xUA Listener\n" XUA_VAR_HELP_STR "Port number\n" IPPROTO_VAR_HELP_STR, CMD_ATTR_IMMEDIATE) | |
DEFUN_ATTR (no_cs7_xua, no_cs7_xua_cmd, "no listen " XUA_VAR_STR " <0-65534> [" IPPROTO_VAR_STR "]", NO_STR "Disable xUA Listener on given port\n" XUA_VAR_HELP_STR "Port number\n" IPPROTO_VAR_HELP_STR, CMD_ATTR_IMMEDIATE) | |
DEFUN_ATTR (xua_local_ip, xua_local_ip_cmd, "local-ip " VTY_IPV46_CMD, "Configure the Local IP Address for xUA\n" "IPv4 Address to use for XUA\n" "IPv6 Address to use for XUA\n", CMD_ATTR_IMMEDIATE) | |
DEFUN_ATTR (xua_no_local_ip, xua_no_local_ip_cmd, "no local-ip " VTY_IPV46_CMD, NO_STR "Configure the Local IP Address for xUA\n" "IPv4 Address to use for XUA\n" "IPv6 Address to use for XUA\n", CMD_ATTR_NODE_EXIT) | |
DEFUN_ATTR (xua_accept_dyn_asp, xua_accept_dyn_asp_cmd, "accept-asp-connections (pre-configured|dynamic-permitted)", "Define what kind of ASP connections to accept\n" "Accept only pre-configured ASPs (source IP/port)\n" "Accept any connection and dynamically create an ASP definition\n", CMD_ATTR_IMMEDIATE) | |
DEFUN_ATTR (xua_sctp_param_init, xua_sctp_param_init_cmd, "sctp-param init " XUA_SRV_SCTP_PARAM_INIT_FIELDS " <0-65535>", XUA_SRV_SCTP_PARAM_INIT_DESC "Value of the parameter\n", CMD_ATTR_NODE_EXIT) | |
DEFUN_ATTR (xua_no_sctp_param_init, xua_no_sctp_param_init_cmd, "no sctp-param init " XUA_SRV_SCTP_PARAM_INIT_FIELDS, NO_STR XUA_SRV_SCTP_PARAM_INIT_DESC, CMD_ATTR_NODE_EXIT) | |
static void | write_one_xua (struct vty *vty, struct osmo_xua_server *xs) |
static void | vty_dump_xua_server (struct vty *vty, struct osmo_xua_server *xs) |
static int | _show_cs7_xua (struct vty *vty, enum osmo_ss7_asp_protocol proto, int trans_proto, int local_port) |
DEFUN (show_cs7_xua, show_cs7_xua_cmd, SHOW_CS7_XUA_CMD " [<0-65534>]", SHOW_CS7_XUA_CMD_HELP "Local Port Number\n") | |
DEFUN (show_cs7_xua_trans_proto, show_cs7_xua_trans_proto_cmd, SHOW_CS7_XUA_CMD " " IPPROTO_VAR_STR " [<0-65534>]", SHOW_CS7_XUA_CMD_HELP IPPROTO_VAR_HELP_STR "Local Port Number\n") | |
DEFUN (show_cs7_config, show_cs7_config_cmd, "show cs7 config", SHOW_STR CS7_STR "Currently running cs7 configuration") | |
DEFUN (cs7_asp_disconnect, cs7_asp_disconnect_cmd, "cs7 instance <0-15> asp NAME disconnect", CS7_STR "Instance related commands\n" "SS7 Instance Number\n" "ASP related commands\n" "Name of ASP\n" "Disconnect the ASP (client will reconnect)\n") | |
DEFUN_ATTR (cs7_asp, cs7_asp_cmd, "asp NAME <0-65535> <0-65535> " XUA_VAR_STR, "Configure Application Server Process\n" "Name of ASP\n" "Remote port number\n" "Local port number\n" XUA_VAR_HELP_STR, CMD_ATTR_NODE_EXIT) | |
ALIAS_ATTR (cs7_asp, cs7_asp_trans_proto_cmd, "asp NAME <0-65535> <0-65535> " XUA_VAR_STR " " IPPROTO_VAR_STR, "Configure Application Server Process\n" "Name of ASP\n" "Remote port number\n" "Local port number\n" XUA_VAR_HELP_STR IPPROTO_VAR_HELP_STR, CMD_ATTR_NODE_EXIT) | |
DEFUN_ATTR (no_cs7_asp, no_cs7_asp_cmd, "no asp NAME", NO_STR "Disable Application Server Process\n" "Name of ASP\n", CMD_ATTR_IMMEDIATE) | |
DEFUN_ATTR (asp_local_ip, asp_local_ip_cmd, "local-ip " VTY_IPV46_CMD " [primary]", "Specify Local IP Address from which to contact ASP\n" "Local IPv4 Address from which to contact of ASP\n" "Local IPv6 Address from which to contact of ASP\n" "Signal the SCTP peer to use this address as Primary Address\n", CMD_ATTR_NODE_EXIT) | |
DEFUN_ATTR (asp_no_local_ip, asp_no_local_ip_cmd, "no local-ip " VTY_IPV46_CMD, NO_STR "Specify Local IP Address from which to contact ASP\n" "Local IPv4 Address from which to contact of ASP\n" "Local IPv6 Address from which to contact of ASP\n", CMD_ATTR_NODE_EXIT) | |
DEFUN_ATTR (asp_remote_ip, asp_remote_ip_cmd, "remote-ip " VTY_IPV46_CMD " [primary]", "Specify Remote IP Address of ASP\n" "Remote IPv4 Address of ASP\n" "Remote IPv6 Address of ASP\n" "Set remote address as SCTP Primary Address\n", CMD_ATTR_NODE_EXIT) | |
DEFUN_ATTR (asp_no_remote_ip, asp_no_remote_ip_cmd, "no remote-ip " VTY_IPV46_CMD, NO_STR "Specify Remote IP Address of ASP\n" "Remote IPv4 Address of ASP\n" "Remote IPv6 Address of ASP\n", CMD_ATTR_NODE_EXIT) | |
DEFUN_ATTR (asp_qos_clas, asp_qos_class_cmd, "qos-class " QOS_CLASS_RANGE_STR, "Specify QoS Class of ASP\n" QOS_CLASS_RANGE_HELP_STR, CMD_ATTR_NODE_EXIT) | |
DEFUN_ATTR (asp_role, asp_role_cmd, "role (sg|asp|ipsp)", "Specify the xUA role for this ASP\n" "SG (Signaling Gateway)\n" "ASP (Application Server Process)\n" "IPSP (IP Signalling Point)\n", CMD_ATTR_NODE_EXIT) | |
DEFUN_ATTR (asp_transport_role, asp_transport_role_cmd, "transport-role (client|server)", "Specify the transport layer role for this ASP\n" "Operate as a client; connect to a server\n" "Operate as a server; wait for client connections\n", CMD_ATTR_NODE_EXIT) | |
ALIAS_ATTR (asp_transport_role, asp_sctp_role_cmd, "sctp-role (client|server)", "Specify the SCTP role for this ASP\n" "Operate as SCTP client; connect to a server\n" "Operate as SCTP server; wait for client connections\n", CMD_ATTR_HIDDEN|CMD_ATTR_NODE_EXIT) | |
DEFUN_ATTR (asp_sctp_param_init, asp_sctp_param_init_cmd, "sctp-param init " ASP_SCTP_PARAM_INIT_FIELDS " <0-65535>", ASP_SCTP_PARAM_INIT_DESC "Value of the parameter\n", CMD_ATTR_NODE_EXIT) | |
DEFUN_ATTR (asp_no_sctp_param_init, asp_no_sctp_param_init_cmd, "no sctp-param init " ASP_SCTP_PARAM_INIT_FIELDS, NO_STR ASP_SCTP_PARAM_INIT_DESC, CMD_ATTR_NODE_EXIT) | |
DEFUN_ATTR (asp_block, asp_block_cmd, "block", "Allows a SCTP Association with ASP, but doesn't let it become active\n", CMD_ATTR_NODE_EXIT) | |
DEFUN_ATTR (asp_shutdown, asp_shutdown_cmd, "shutdown", "Terminates SCTP association; New associations will be rejected\n", CMD_ATTR_NODE_EXIT) | |
DEFUN_ATTR (asp_quirk, asp_quirk_cmd, "OVERWRITTEN", "OVERWRITTEN\n", CMD_ATTR_IMMEDIATE) | |
DEFUN_ATTR (asp_no_quirk, asp_no_quirk_cmd, "OVERWRITTEN", "OVERWRITTEN\n", CMD_ATTR_IMMEDIATE) | |
DEFUN_ATTR (asp_timer, asp_timer_cmd, NULL, NULL, CMD_ATTR_IMMEDIATE) | |
static void | gen_asp_timer_cmd_strs (struct cmd_element *cmd) |
static void | write_asp_timers (struct vty *vty, const char *indent, struct osmo_ss7_asp *asp) |
static char * | as_list_for_asp (const struct osmo_ss7_asp *asp, char *buf, size_t buf_len) |
static char * | get_sockname_buf (char *buf, size_t buf_len, int fd, int proto, bool local) |
static void | show_one_asp (struct vty *vty, struct osmo_ss7_asp *asp) |
static int | show_asp (struct vty *vty, int id, const char *asp_name) |
DEFUN (show_cs7_asp, show_cs7_asp_cmd, "show cs7 instance <0-15> asp", SHOW_STR CS7_STR INST_STR INST_STR "Application Server Process (ASP)\n") | |
DEFUN (show_cs7_asp_name, show_cs7_asp_name_cmd, "show cs7 instance <0-15> asp name ASP_NAME", SHOW_STR CS7_STR INST_STR INST_STR "Application Server Process (ASP)\n" "Lookup ASP with a given name\n" "Name of the Application Server Process (ASP)\n") | |
static void | show_one_asp_remaddr_tcp (struct vty *vty, struct osmo_ss7_asp *asp) |
static void | show_one_asp_remaddr (struct vty *vty, struct osmo_ss7_asp *asp) |
static int | show_asp_remaddr (struct vty *vty, int id, const char *asp_name) |
DEFUN (show_cs7_asp_remaddr, show_cs7_asp_remaddr_cmd, "show cs7 instance <0-15> asp-remaddr", SHOW_STR CS7_STR INST_STR INST_STR "Application Server Process (ASP) remote addresses information\n") | |
DEFUN (show_cs7_asp_remaddr_name, show_cs7_asp_remaddr_name_cmd, "show cs7 instance <0-15> asp-remaddr name ASP_NAME", SHOW_STR CS7_STR INST_STR INST_STR "Application Server Process (ASP) remote addresses information\n" "Lookup ASP with a given name\n" "Name of the Application Server Process (ASP)\n") | |
static void | show_one_asp_assoc_status_tcp (struct vty *vty, struct osmo_ss7_asp *asp) |
static void | show_one_asp_assoc_status (struct vty *vty, struct osmo_ss7_asp *asp) |
static int | show_asp_assoc_status (struct vty *vty, int id, const char *asp_name) |
DEFUN (show_cs7_asp_assoc_status, show_cs7_asp_assoc_status_cmd, "show cs7 instance <0-15> asp-assoc-status", SHOW_STR CS7_STR INST_STR INST_STR "Application Server Process (ASP) SCTP association status\n") | |
DEFUN (show_cs7_asp_assoc_status_name, show_cs7_asp_assoc_status_name_cmd, "show cs7 instance <0-15> asp-assoc-status name ASP_NAME", SHOW_STR CS7_STR INST_STR INST_STR "Application Server Process (ASP) SCTP association information\n" "Lookup ASP with a given name\n" "Name of the Application Server Process (ASP)\n") | |
static void | write_one_asp (struct vty *vty, struct osmo_ss7_asp *asp, bool show_dyn_config) |
DEFUN_ATTR (cs7_as, cs7_as_cmd, "as NAME " XUA_VAR_STR, "Configure an Application Server\n" "Name of the Application Server\n" XUA_VAR_HELP_STR, CMD_ATTR_IMMEDIATE) | |
DEFUN_ATTR (no_cs7_as, no_cs7_as_cmd, "no as NAME", NO_STR "Disable Application Server\n" "Name of AS\n", CMD_ATTR_IMMEDIATE) | |
DEFUN_ATTR (as_asp, as_asp_cmd, "asp NAME", "Specify that a given ASP is part of this AS\n" "Name of ASP to be added to AS\n", CMD_ATTR_IMMEDIATE) | |
DEFUN_ATTR (as_no_asp, as_no_asp_cmd, "no asp NAME", NO_STR "Specify ASP to be removed from this AS\n" "Name of ASP to be removed\n", CMD_ATTR_IMMEDIATE) | |
DEFUN_USRATTR (as_traf_mode, as_traf_mode_cmd, OSMO_SCCP_LIB_ATTR_RSTRT_ASP, "traffic-mode (broadcast | loadshare | roundrobin | override)", "Specifies traffic mode of operation of the ASP within the AS\n" "Broadcast to all ASP within AS\n" "Share Load among all ASP within AS\n" "Round-Robin between all ASP within AS\n" "Override\n") | |
DEFUN_USRATTR (as_no_traf_mode, as_no_traf_mode_cmd, OSMO_SCCP_LIB_ATTR_RSTRT_ASP, "no traffic-mode", NO_STR "Remove explicit traffic mode of operation of this AS\n") | |
DEFUN_ATTR (as_recov_tout, as_recov_tout_cmd, "recovery-timeout <1-2000>", "Specifies the recovery timeout value in milliseconds\n" "Recovery Timeout in Milliseconds\n", CMD_ATTR_IMMEDIATE) | |
DEFUN_ATTR (as_qos_clas, as_qos_class_cmd, "qos-class " QOS_CLASS_RANGE_STR, "Specity QoS Class of AS\n" QOS_CLASS_RANGE_HELP_STR, CMD_ATTR_IMMEDIATE) | |
static int | _rout_key (struct vty *vty, const char *rcontext, const char *dpc, const char *si, const char *ssn) |
DEFUN_ATTR (as_rout_key, as_rout_key_cmd, ROUTING_KEY_CMD, ROUTING_KEY_CMD_STRS, CMD_ATTR_IMMEDIATE) | |
DEFUN_ATTR (as_rout_key_si, as_rout_key_si_cmd, ROUTING_KEY_CMD ROUTING_KEY_SI_ARG, ROUTING_KEY_CMD_STRS ROUTING_KEY_SI_ARG_STRS, CMD_ATTR_IMMEDIATE) | |
DEFUN_ATTR (as_rout_key_ssn, as_rout_key_ssn_cmd, ROUTING_KEY_CMD ROUTING_KEY_SSN_ARG, ROUTING_KEY_CMD_STRS ROUTING_KEY_SSN_ARG_STRS, CMD_ATTR_IMMEDIATE) | |
DEFUN_ATTR (as_rout_key_si_ssn, as_rout_key_si_ssn_cmd, ROUTING_KEY_CMD ROUTING_KEY_SI_ARG ROUTING_KEY_SSN_ARG, ROUTING_KEY_CMD_STRS ROUTING_KEY_SI_ARG_STRS ROUTING_KEY_SSN_ARG_STRS, CMD_ATTR_IMMEDIATE) | |
DEFUN_ATTR (as_pc_override, as_pc_override_cmd, "point-code override dpc PC", "Point Code Specific Features\n" "Override (force) a point-code to hard-coded value\n" "Override Source Point Code\n" "Override Destination Point Code\n" "New Point Code\n", CMD_ATTR_IMMEDIATE) | |
DEFUN_ATTR (as_pc_patch_sccp, as_pc_patch_sccp_cmd, "point-code override patch-sccp (disabled|both)", "Point Code Specific Features\n" "Override (force) a point-code to hard-coded value\n" "Patch point code values into SCCP called/calling address\n" "Don't patch any point codes into SCCP called/calling address\n" "Patch both origin and destination point codes into SCCP called/calling address\n", CMD_ATTR_IMMEDIATE) | |
static void | write_one_as (struct vty *vty, struct osmo_ss7_as *as, bool show_dyn_config) |
DEFUN (show_cs7_as, show_cs7_as_cmd, "show cs7 instance <0-15> as (active|all|m3ua|sua)", SHOW_STR CS7_STR INST_STR INST_STR "Application Server (AS)\n" "Display all active ASs\n" "Display all ASs (default)\n" "Display all m3ua ASs\n" "Display all SUA ASs\n") | |
LLIST_HEAD (sccp_address_book_global) | |
static struct osmo_sccp_addr_entry * | addr_entry_by_name_local (const char *name, const struct osmo_ss7_instance *inst) |
static struct osmo_sccp_addr_entry * | addr_entry_by_name_global (const char *name) |
struct osmo_ss7_instance * | osmo_sccp_addr_by_name (struct osmo_sccp_addr *dest_addr, const char *name) |
Lookup an SCCP address from the addressbook by its name. More... | |
int | osmo_sccp_addr_by_name_local (struct osmo_sccp_addr *dest_addr, const char *name, const struct osmo_ss7_instance *inst) |
Lookup an SCCP address from the addressbook of a specific instance by its name. More... | |
const char * | osmo_sccp_name_by_addr (const struct osmo_sccp_addr *addr) |
Reverse lookup the lookup-name of a specified SCCP address. More... | |
static void | write_sccp_addressbook (struct vty *vty, const struct osmo_ss7_instance *inst) |
DEFUN (cs7_show_sccpaddr, cs7_show_sccpaddr_cmd, "show cs7 instance <0-15> sccp addressbook", SHOW_STR CS7_STR INST_STR INST_STR SCCP_STR "List all SCCP addressbook entries\n") | |
DEFUN_ATTR (cs7_sccpaddr, cs7_sccpaddr_cmd, "sccp-address NAME", "Create/Modify an SCCP addressbook entry\n" "Name of the SCCP Address\n", CMD_ATTR_IMMEDIATE) | |
DEFUN_ATTR (cs7_sccpaddr_del, cs7_sccpaddr_del_cmd, "no sccp-address NAME", NO_STR "Delete an SCCP addressbook entry\n" "Name of the SCCP Address\n", CMD_ATTR_IMMEDIATE) | |
DEFUN_ATTR (cs7_sccpaddr_ri, cs7_sccpaddr_ri_cmd, "routing-indicator (GT|PC|IP)", "Add Routing Indicator\n" "by global-title\n" "by point-code\n" "by ip-address\n", CMD_ATTR_IMMEDIATE) | |
DEFUN_ATTR (cs7_sccpaddr_pc, cs7_sccpaddr_pc_cmd, "point-code POINT_CODE", "Add point-code Number\n" "PC\n", CMD_ATTR_IMMEDIATE) | |
DEFUN_ATTR (cs7_sccpaddr_pc_del, cs7_sccpaddr_pc_del_cmd, "no point-code", NO_STR "Remove point-code Number\n", CMD_ATTR_IMMEDIATE) | |
DEFUN_ATTR (cs7_sccpaddr_ssn, cs7_sccpaddr_ssn_cmd, "subsystem-number <0-4294967295>", "Add Subsystem Number\n" "SSN\n", CMD_ATTR_IMMEDIATE) | |
DEFUN_ATTR (cs7_sccpaddr_ssn_del, cs7_sccpaddr_ssn_del_cmd, "no subsystem-number", NO_STR "Remove Subsystem Number\n", CMD_ATTR_IMMEDIATE) | |
DEFUN_ATTR (cs7_sccpaddr_gt, cs7_sccpaddr_gt_cmd, "global-title", "Add/Modify Global Title\n", CMD_ATTR_IMMEDIATE) | |
DEFUN_ATTR (cs7_sccpaddr_gt_del, cs7_sccpaddr_gt_del_cmd, "no global-title", NO_STR "Remove Global Title\n", CMD_ATTR_IMMEDIATE) | |
DEFUN_ATTR (cs7_sccpaddr_gt_gti, cs7_sccpaddr_gt_gti_cmd, "global-title-indicator <0-15>", "Set Global Title Indicator\n" "GTI\n", CMD_ATTR_IMMEDIATE) | |
DEFUN_ATTR (cs7_sccpaddr_gt_tt, cs7_sccpaddr_gt_tt_cmd, "translation-type <0-255>", "Set Global Title Translation Type\n" "TT\n", CMD_ATTR_IMMEDIATE) | |
DEFUN_ATTR (cs7_sccpaddr_gt_npi, cs7_sccpaddr_gt_npi_cmd, "numbering-plan-indicator <0-15>", "Set Global Title Numbering Plan Indicator\n" "NPI\n", CMD_ATTR_IMMEDIATE) | |
DEFUN_ATTR (cs7_sccpaddr_gt_nai, cs7_sccpaddr_gt_nai_cmd, "nature-of-address-indicator <0-127>", "Set Global Title Nature of Address Indicator\n" "NAI\n", CMD_ATTR_IMMEDIATE) | |
DEFUN_ATTR (cs7_sccpaddr_gt_digits, cs7_sccpaddr_gt_digits_cmd, "digits DIGITS", "Set Global Title Digits\n" "Number digits\n", CMD_ATTR_IMMEDIATE) | |
int | osmo_ss7_vty_go_parent (struct vty *vty) |
int | osmo_ss7_is_config_node (struct vty *vty, int node) |
static void | vty_init_addr (void) |
static void | vty_init_shared (void *ctx) |
void | osmo_ss7_vty_init_asp (void *ctx) |
void | osmo_ss7_vty_init_sg (void *ctx) |
Variables | |
static const struct value_string | tcp_info_state_values [] |
static const struct value_string | asp_quirk_names [] |
static const struct value_string | asp_quirk_descs [] |
static enum cs7_role_t | cs7_role |
static void * | g_ctx |
static struct cmd_node | cs7_node |
static const struct value_string | ss7_network_indicator_vals [] |
static struct cmd_node | rtable_node |
static const struct value_string | ipproto_vals [] |
static struct cmd_node | xua_node |
static struct cmd_node | asp_node |
static struct cmd_node | as_node |
const struct value_string | mtp_si_vals [] |
static struct cmd_node | sccpaddr_node |
static struct cmd_node | sccpaddr_gt_node |
#define ASP_SCTP_PARAM_INIT_DESC |
#define ASP_SCTP_PARAM_INIT_FIELDS "(num-ostreams|max-instreams|max-attempts|timeout)" |
#define IPPROTO_VAR_HELP_STR |
#define IPPROTO_VAR_STR "(sctp|tcp)" |
#define QOS_CLASS_RANGE_HELP_STR "QoS Class\n" |
#define QOS_CLASS_RANGE_STR "<0-7>" |
#define QOS_CLASS_VAR_HELP_STR |
#define QOS_CLASS_VAR_STR "(" QOS_CLASS_RANGE_STR "|default)" |
#define ROUTE_PRIO_RANGE_HELP_STR "Priority\n" |
#define ROUTE_PRIO_RANGE_STR "<1-9>" |
#define ROUTE_PRIO_VAR_HELP_STR |
#define ROUTE_PRIO_VAR_STR "(" ROUTE_PRIO_RANGE_STR "|default)" |
#define ROUTING_KEY_CMD "routing-key RCONTEXT DPC" |
#define ROUTING_KEY_CMD_STRS |
#define ROUTING_KEY_SI_ARG " si (aal2|bicc|b-isup|h248|isup|sat-isup|sccp|tup)" |
#define ROUTING_KEY_SI_ARG_STRS |
#define ROUTING_KEY_SSN_ARG " ssn SSN" |
#define ROUTING_KEY_SSN_ARG_STRS |
#define SHOW_CS7_XUA_CMD "show cs7 " XUA_VAR_STR |
#define SHOW_CS7_XUA_CMD_HELP SHOW_STR CS7_STR XUA_VAR_HELP_STR |
#define XUA_SRV_SCTP_PARAM_INIT_DESC |
#define XUA_SRV_SCTP_PARAM_INIT_FIELDS "(num-ostreams|max-instreams)" |
#define XUA_VAR_HELP_STR |
#define XUA_VAR_STR "(sua|m3ua|ipa)" |
enum cs7_role_t |
|
static |
References osmo_ss7_route::as, osmo_ss7_as::cfg, osmo_ss7_routing_key::context, cs7_role, CS7_ROLE_ASP, dpc, osmo_ss7_as::inst, mtp_si_vals, osmo_ss7_as::name, OSMO_SS7_ASP_PROT_IPA, osmo_ss7_pointcode_parse(), osmo_ss7_routing_key::pc, osmo_ss7_route::pc, osmo_ss7_as::proto, osmo_ss7_as::routing_key, osmo_ss7_instance::rtable_system, osmo_ss7_routing_key::si, si, ss7_route_create(), ss7_route_destroy(), ss7_route_table_find_route_by_dpc_mask(), and osmo_ss7_routing_key::ssn.
Referenced by DEFUN_ATTR().
|
static |
References osmo_xua_server::cfg, osmo_xua_server::inst, osmo_ss7_instance::list, osmo_xua_server::list, osmo_xua_server::local, osmo_ss7_instances, osmo_ss7_asp_peer::port, osmo_xua_server::proto, osmo_xua_server::trans_proto, vty_dump_xua_server(), and osmo_ss7_instance::xua_servers.
Referenced by DEFUN().
|
static |
References osmo_sccp_addr_entry::list_global, and osmo_sccp_addr_entry::name.
Referenced by DEFUN_ATTR(), and osmo_sccp_addr_by_name().
|
static |
References osmo_ss7_instance::cfg, osmo_sccp_addr_entry::inst, osmo_sccp_addr_entry::list, osmo_sccp_addr_entry::name, and osmo_ss7_instance::sccp_address_book.
Referenced by DEFUN_ATTR(), and osmo_sccp_addr_by_name_local().
ALIAS_ATTR | ( | asp_transport_role | , |
asp_sctp_role_cmd | , | ||
"sctp-role (client|server)" | , | ||
"Specify the SCTP role for this ASP\n" "Operate as SCTP client; connect to a server\n" "Operate as SCTP server; wait for client connections\n" | , | ||
CMD_ATTR_HIDDEN| | CMD_ATTR_NODE_EXIT | ||
) |
ALIAS_ATTR | ( | cs7_asp | , |
cs7_asp_trans_proto_cmd | , | ||
"asp NAME <0-65535> <0-65535> " XUA_VAR_STR " " | IPPROTO_VAR_STR, | ||
"Configure Application Server Process\n" "Name of ASP\n" "Remote port number\n" "Local port number\n" XUA_VAR_HELP_STR | IPPROTO_VAR_HELP_STR, | ||
CMD_ATTR_NODE_EXIT | |||
) |
|
static |
References osmo_ss7_instance::as_list, osmo_ss7_as::cfg, osmo_ss7_asp::inst, osmo_ss7_as::list, osmo_ss7_as::name, and osmo_ss7_as_has_asp().
Referenced by show_one_asp().
|
static |
References write_all_cs7().
Referenced by vty_init_shared().
DEFUN | ( | cs7_asp_disconnect | , |
cs7_asp_disconnect_cmd | , | ||
"cs7 instance <0-15> asp NAME disconnect" | , | ||
CS7_STR "Instance related commands\n" "SS7 Instance Number\n" "ASP related commands\n" "Name of ASP\n" "Disconnect the ASP (client will reconnect)\n" | |||
) |
DEFUN | ( | cs7_show_sccpaddr | , |
cs7_show_sccpaddr_cmd | , | ||
"show cs7 instance <0-15> sccp addressbook" | , | ||
SHOW_STR CS7_STR INST_STR INST_STR SCCP_STR "List all SCCP addressbook entries\n" | |||
) |
References osmo_sccp_addr_entry::addr, osmo_ss7_instance::cfg, osmo_ss7_instance::description, osmo_sccp_gt::digits, osmo_sccp_addr::gt, osmo_sccp_gt::gti, osmo_sccp_addr_entry::inst, osmo_sccp_addr::ip, osmo_sccp_addr_entry::list, osmo_sccp_gt::nai, osmo_sccp_addr_entry::name, osmo_sccp_gt::npi, OSMO_SCCP_ADDR_T_GT, OSMO_SCCP_ADDR_T_IPv4, OSMO_SCCP_ADDR_T_IPv6, OSMO_SCCP_ADDR_T_PC, OSMO_SCCP_ADDR_T_SSN, OSMO_SCCP_RI_GT, OSMO_SCCP_RI_SSN_IP, OSMO_SCCP_RI_SSN_PC, osmo_ss7_instance_find(), osmo_ss7_pointcode_print(), osmo_sccp_addr::pc, osmo_sccp_addr::presence, osmo_sccp_addr::ri, osmo_ss7_instance::sccp_address_book, osmo_sccp_addr::ssn, osmo_sccp_gt::tt, osmo_sccp_addr::v4, and osmo_sccp_addr::v6.
DEFUN | ( | show_cs7_as | , |
show_cs7_as_cmd | , | ||
"show cs7 instance <0-15> as (active|all|m3ua|sua)" | , | ||
SHOW_STR CS7_STR INST_STR INST_STR "Application Server (AS)\n" "Display all active ASs\n" "Display all ASs (default)\n" "Display all m3ua ASs\n" "Display all SUA ASs\n" | |||
) |
References osmo_ss7_instance::as_list, osmo_ss7_as::cfg, osmo_ss7_routing_key::context, osmo_ss7_as::fi, osmo_ss7_as::inst, osmo_ss7_as::list, osmo_ss7_as::mode, osmo_ss7_as::name, osmo_ss7_as_active(), osmo_ss7_as_traffic_mode_name(), OSMO_SS7_ASP_PROT_M3UA, OSMO_SS7_ASP_PROT_SUA, osmo_ss7_instance_find(), osmo_ss7_pointcode_print(), osmo_ss7_routing_key::pc, osmo_ss7_as::proto, and osmo_ss7_as::routing_key.
DEFUN | ( | show_cs7_asp | , |
show_cs7_asp_cmd | , | ||
"show cs7 instance <0-15> asp" | , | ||
SHOW_STR CS7_STR INST_STR INST_STR "Application Server Process (ASP)\n" | |||
) |
References show_asp().
DEFUN | ( | show_cs7_asp_assoc_status | , |
show_cs7_asp_assoc_status_cmd | , | ||
"show cs7 instance <0-15> asp-assoc-status" | , | ||
SHOW_STR CS7_STR INST_STR INST_STR "Application Server Process (ASP) SCTP association status\n" | |||
) |
References show_asp_assoc_status().
DEFUN | ( | show_cs7_asp_assoc_status_name | , |
show_cs7_asp_assoc_status_name_cmd | , | ||
"show cs7 instance <0-15> asp-assoc-status name ASP_NAME" | , | ||
SHOW_STR CS7_STR INST_STR INST_STR "Application Server Process (ASP) SCTP association information\n" "Lookup ASP with a given name\n" "Name of the Application Server Process (ASP)\n" | |||
) |
References show_asp_assoc_status().
DEFUN | ( | show_cs7_asp_name | , |
show_cs7_asp_name_cmd | , | ||
"show cs7 instance <0-15> asp name ASP_NAME" | , | ||
SHOW_STR CS7_STR INST_STR INST_STR "Application Server Process (ASP)\n" "Lookup ASP with a given name\n" "Name of the Application Server Process (ASP)\n" | |||
) |
References show_asp().
DEFUN | ( | show_cs7_asp_remaddr | , |
show_cs7_asp_remaddr_cmd | , | ||
"show cs7 instance <0-15> asp-remaddr" | , | ||
SHOW_STR CS7_STR INST_STR INST_STR "Application Server Process (ASP) remote addresses information\n" | |||
) |
References show_asp_remaddr().
DEFUN | ( | show_cs7_asp_remaddr_name | , |
show_cs7_asp_remaddr_name_cmd | , | ||
"show cs7 instance <0-15> asp-remaddr name ASP_NAME" | , | ||
SHOW_STR CS7_STR INST_STR INST_STR "Application Server Process (ASP) remote addresses information\n" "Lookup ASP with a given name\n" "Name of the Application Server Process (ASP)\n" | |||
) |
References show_asp_remaddr().
DEFUN | ( | show_cs7_config | , |
show_cs7_config_cmd | , | ||
"show cs7 config" | , | ||
SHOW_STR CS7_STR "Currently running cs7 configuration" | |||
) |
References write_all_cs7().
DEFUN | ( | show_cs7_route | , |
show_cs7_route_cmd | , | ||
"show cs7 instance <0-15> route" | , | ||
SHOW_STR CS7_STR INST_STR INST_STR "Routing Table\n" | |||
) |
References osmo_ss7_instance_find(), osmo_ss7_instance::rtable_system, and vty_dump_rtable().
DEFUN | ( | show_cs7_user | , |
show_cs7_user_cmd | , | ||
"show cs7 instance <0-15> users" | , | ||
SHOW_STR CS7_STR INST_STR INST_STR "User Table\n" | |||
) |
References osmo_ss7_user::inst, osmo_ss7_user::name, osmo_ss7_instance_find(), and osmo_ss7_instance::user.
DEFUN | ( | show_cs7_xua | , |
show_cs7_xua_cmd | , | ||
SHOW_CS7_XUA_CMD " " | [< 0-65534 >], | ||
SHOW_CS7_XUA_CMD_HELP "Local Port Number\n" | |||
) |
References _show_cs7_xua(), parse_asp_proto(), and osmo_xua_server::proto.
DEFUN | ( | show_cs7_xua_trans_proto | , |
show_cs7_xua_trans_proto_cmd | , | ||
SHOW_CS7_XUA_CMD " " IPPROTO_VAR_STR " " | [< 0-65534 >], | ||
SHOW_CS7_XUA_CMD_HELP IPPROTO_VAR_HELP_STR "Local Port Number\n" | |||
) |
DEFUN_ATTR | ( | as_asp | , |
as_asp_cmd | , | ||
"asp NAME" | , | ||
"Specify that a given ASP is part of this AS\n" "Name of ASP to be added to AS\n" | , | ||
CMD_ATTR_IMMEDIATE | |||
) |
References osmo_ss7_as_add_asp().
DEFUN_ATTR | ( | as_no_asp | , |
as_no_asp_cmd | , | ||
"no asp NAME" | , | ||
NO_STR "Specify ASP to be removed from this AS\n" "Name of ASP to be removed\n" | , | ||
CMD_ATTR_IMMEDIATE | |||
) |
References osmo_ss7_as_del_asp().
DEFUN_ATTR | ( | as_pc_override | , |
as_pc_override_cmd | , | ||
"point-code override dpc PC" | , | ||
"Point Code Specific Features\n" "Override (force) a point-code to hard-coded value\n" "Override Source Point Code\n" "Override Destination Point Code\n" "New Point Code\n" | , | ||
CMD_ATTR_IMMEDIATE | |||
) |
DEFUN_ATTR | ( | as_pc_patch_sccp | , |
as_pc_patch_sccp_cmd | , | ||
"point-code override patch-sccp (disabled|both)" | , | ||
"Point Code Specific Features\n" "Override (force) a point-code to hard-coded value\n" "Patch point code values into SCCP called/calling address\n" "Don't patch any point codes into SCCP called/calling address\n" "Patch both origin and destination point codes into SCCP called/calling address\n" | , | ||
CMD_ATTR_IMMEDIATE | |||
) |
DEFUN_ATTR | ( | as_qos_clas | , |
as_qos_class_cmd | , | ||
"qos-class " | QOS_CLASS_RANGE_STR, | ||
"Specity QoS Class of AS\n" | QOS_CLASS_RANGE_HELP_STR, | ||
CMD_ATTR_IMMEDIATE | |||
) |
References osmo_ss7_as::cfg, and osmo_ss7_as::qos_class.
DEFUN_ATTR | ( | as_recov_tout | , |
as_recov_tout_cmd | , | ||
"recovery-timeout <1-2000>" | , | ||
"Specifies the recovery timeout value in milliseconds\n" "Recovery Timeout in Milliseconds\n" | , | ||
CMD_ATTR_IMMEDIATE | |||
) |
References osmo_ss7_as::cfg, and osmo_ss7_as::recovery_timeout_msec.
DEFUN_ATTR | ( | as_rout_key | , |
as_rout_key_cmd | , | ||
ROUTING_KEY_CMD | , | ||
ROUTING_KEY_CMD_STRS | , | ||
CMD_ATTR_IMMEDIATE | |||
) |
References _rout_key().
DEFUN_ATTR | ( | as_rout_key_si | , |
as_rout_key_si_cmd | , | ||
ROUTING_KEY_CMD | ROUTING_KEY_SI_ARG, | ||
ROUTING_KEY_CMD_STRS | ROUTING_KEY_SI_ARG_STRS, | ||
CMD_ATTR_IMMEDIATE | |||
) |
References _rout_key().
DEFUN_ATTR | ( | as_rout_key_si_ssn | , |
as_rout_key_si_ssn_cmd | , | ||
ROUTING_KEY_CMD ROUTING_KEY_SI_ARG | ROUTING_KEY_SSN_ARG, | ||
ROUTING_KEY_CMD_STRS ROUTING_KEY_SI_ARG_STRS | ROUTING_KEY_SSN_ARG_STRS, | ||
CMD_ATTR_IMMEDIATE | |||
) |
References _rout_key().
DEFUN_ATTR | ( | as_rout_key_ssn | , |
as_rout_key_ssn_cmd | , | ||
ROUTING_KEY_CMD | ROUTING_KEY_SSN_ARG, | ||
ROUTING_KEY_CMD_STRS | ROUTING_KEY_SSN_ARG_STRS, | ||
CMD_ATTR_IMMEDIATE | |||
) |
References _rout_key().
DEFUN_ATTR | ( | asp_block | , |
asp_block_cmd | , | ||
"block" | , | ||
"Allows a SCTP Association with | ASP, | ||
but doesn 't let it become active\n" | , | ||
CMD_ATTR_NODE_EXIT | |||
) |
DEFUN_ATTR | ( | asp_local_ip | , |
asp_local_ip_cmd | , | ||
"local-ip " VTY_IPV46_CMD " " | [primary], | ||
"Specify Local IP Address from which to contact ASP\n" "Local IPv4 Address from which to contact of ASP\n" "Local IPv6 Address from which to contact of ASP\n" "Signal the SCTP peer to use this address as Primary Address\n" | , | ||
CMD_ATTR_NODE_EXIT | |||
) |
References osmo_ss7_asp::cfg, osmo_ss7_asp_peer::host, osmo_ss7_asp_peer::host_cnt, osmo_ss7_asp_peer::idx_primary, osmo_ss7_asp::local, OSMO_SS7_ASP_PROT_IPA, osmo_ss7_asp::proto, ss7_asp_apply_new_local_address(), ss7_asp_apply_peer_primary_address(), ss7_asp_is_started(), and ss7_asp_peer_add_host2().
DEFUN_ATTR | ( | asp_no_local_ip | , |
asp_no_local_ip_cmd | , | ||
"no local-ip " | VTY_IPV46_CMD, | ||
NO_STR "Specify Local IP Address from which to contact ASP\n" "Local IPv4 Address from which to contact of ASP\n" "Local IPv6 Address from which to contact of ASP\n" | , | ||
CMD_ATTR_NODE_EXIT | |||
) |
DEFUN_ATTR | ( | asp_no_quirk | , |
asp_no_quirk_cmd | , | ||
"OVERWRITTEN" | , | ||
"OVERWRITTEN\n" | , | ||
CMD_ATTR_IMMEDIATE | |||
) |
References asp_quirk_names, osmo_ss7_asp::cfg, and osmo_ss7_asp::quirks.
DEFUN_ATTR | ( | asp_no_remote_ip | , |
asp_no_remote_ip_cmd | , | ||
"no remote-ip " | VTY_IPV46_CMD, | ||
NO_STR "Specify Remote IP Address of ASP\n" "Remote IPv4 Address of ASP\n" "Remote IPv6 Address of ASP\n" | , | ||
CMD_ATTR_NODE_EXIT | |||
) |
References osmo_ss7_asp::cfg, osmo_ss7_asp::remote, ss7_asp_peer_del_host(), and ss7_asp_peer_find_host().
DEFUN_ATTR | ( | asp_no_sctp_param_init | , |
asp_no_sctp_param_init_cmd | , | ||
"no sctp-param init " | ASP_SCTP_PARAM_INIT_FIELDS, | ||
NO_STR | ASP_SCTP_PARAM_INIT_DESC, | ||
CMD_ATTR_NODE_EXIT | |||
) |
DEFUN_ATTR | ( | asp_qos_clas | , |
asp_qos_class_cmd | , | ||
"qos-class " | QOS_CLASS_RANGE_STR, | ||
"Specify QoS Class of ASP\n" | QOS_CLASS_RANGE_HELP_STR, | ||
CMD_ATTR_NODE_EXIT | |||
) |
References osmo_ss7_asp::cfg, and osmo_ss7_asp::qos_class.
DEFUN_ATTR | ( | asp_quirk | , |
asp_quirk_cmd | , | ||
"OVERWRITTEN" | , | ||
"OVERWRITTEN\n" | , | ||
CMD_ATTR_IMMEDIATE | |||
) |
References asp_quirk_names, osmo_ss7_asp::cfg, and osmo_ss7_asp::quirks.
DEFUN_ATTR | ( | asp_remote_ip | , |
asp_remote_ip_cmd | , | ||
"remote-ip " VTY_IPV46_CMD " " | [primary], | ||
"Specify Remote IP Address of ASP\n" "Remote IPv4 Address of ASP\n" "Remote IPv6 Address of ASP\n" "Set remote address as SCTP Primary Address\n" | , | ||
CMD_ATTR_NODE_EXIT | |||
) |
DEFUN_ATTR | ( | asp_role | , |
asp_role_cmd | , | ||
"role (sg|asp|ipsp)" | , | ||
"Specify the xUA role for this ASP\n" "SG (Signaling Gateway)\n" "ASP (Application Server Process)\n" "IPSP (IP Signalling Point)\n" | , | ||
CMD_ATTR_NODE_EXIT | |||
) |
DEFUN_ATTR | ( | asp_sctp_param_init | , |
asp_sctp_param_init_cmd | , | ||
"sctp-param init " ASP_SCTP_PARAM_INIT_FIELDS " <0-65535>" | , | ||
ASP_SCTP_PARAM_INIT_DESC "Value of the parameter\n" | , | ||
CMD_ATTR_NODE_EXIT | |||
) |
References osmo_ss7_asp::cfg, osmo_ss7_asp::max_attempts_present, osmo_ss7_asp::max_attempts_value, osmo_ss7_asp::max_init_timeo_present, osmo_ss7_asp::max_init_timeo_value, osmo_ss7_asp::max_instreams_present, osmo_ss7_asp::max_instreams_value, osmo_ss7_asp::num_ostreams_present, osmo_ss7_asp::num_ostreams_value, and osmo_ss7_asp::sctp_init.
DEFUN_ATTR | ( | asp_shutdown | , |
asp_shutdown_cmd | , | ||
"shutdown" | , | ||
"Terminates SCTP association; New associations will be rejected\n" | , | ||
CMD_ATTR_NODE_EXIT | |||
) |
DEFUN_ATTR | ( | asp_timer | , |
asp_timer_cmd | , | ||
NULL | , | ||
NULL | , | ||
CMD_ATTR_IMMEDIATE | |||
) |
References osmo_ss7_asp::cfg, ss7_asp_lm_timer_names, SS7_ASP_LM_TIMERS_LEN, and osmo_ss7_asp::T_defs_lm.
DEFUN_ATTR | ( | asp_transport_role | , |
asp_transport_role_cmd | , | ||
"transport-role (client|server)" | , | ||
"Specify the transport layer role for this ASP\n" "Operate as a client; connect to a server\n" "Operate as a server; wait for client connections\n" | , | ||
CMD_ATTR_NODE_EXIT | |||
) |
References osmo_ss7_asp::cfg, osmo_ss7_asp::is_server, and osmo_ss7_asp::trans_role_set_by_vty.
DEFUN_ATTR | ( | cs7_as | , |
cs7_as_cmd | , | ||
"as NAME " | XUA_VAR_STR, | ||
"Configure an Application Server\n" "Name of the Application Server\n" | XUA_VAR_HELP_STR, | ||
CMD_ATTR_IMMEDIATE | |||
) |
DEFUN_ATTR | ( | cs7_asp | , |
cs7_asp_cmd | , | ||
"asp NAME <0-65535> <0-65535> " | XUA_VAR_STR, | ||
"Configure Application Server Process\n" "Name of ASP\n" "Remote port number\n" "Local port number\n" | XUA_VAR_HELP_STR, | ||
CMD_ATTR_NODE_EXIT | |||
) |
References osmo_ss7_asp::cfg, osmo_ss7_asp::description, osmo_ss7_asp::inst, osmo_ss7_asp::is_server, osmo_ss7_asp::name, osmo_ss7_instance::name, osmo_ss7_asp_find2(), osmo_ss7_asp_find_or_create2(), OSMO_SS7_ASP_PROT_NONE, OSMO_SS7_ASP_ROLE_SG, parse_asp_proto(), parse_trans_proto(), osmo_ss7_asp::proto, osmo_ss7_asp::role, ss7_default_trans_proto_for_asp_proto(), and osmo_ss7_asp::trans_proto.
DEFUN_ATTR | ( | cs7_instance | , |
cs7_instance_cmd | , | ||
"cs7 instance <0-15>" | , | ||
CS7_STR "Configure a SS7 Instance\n" INST_STR "Number of the instance\n" | , | ||
CMD_ATTR_IMMEDIATE | |||
) |
DEFUN_ATTR | ( | cs7_net_ind | , |
cs7_net_ind_cmd | , | ||
"network-indicator (international | national | reserved | spare)" | , | ||
"Configure the Network Indicator\n" "International Network\n" "National Network\n" "Reserved Network\n" "Spare Network\n" | , | ||
CMD_ATTR_IMMEDIATE | |||
) |
References osmo_ss7_instance::cfg, osmo_ss7_instance::network_indicator, ni, and ss7_network_indicator_vals.
DEFUN_ATTR | ( | cs7_pc_delimiter | , |
cs7_pc_delimiter_cmd | , | ||
"point-code delimiter (default|dash)" | , | ||
PC_STR "Configure Point Code Delimiter\n" "Use dot as delimiter\n" "User dash as delimiter\n" | , | ||
CMD_ATTR_IMMEDIATE | |||
) |
References osmo_ss7_instance::cfg, osmo_ss7_pc_fmt::delimiter, and osmo_ss7_instance::pc_fmt.
DEFUN_ATTR | ( | cs7_pc_format | , |
cs7_pc_format_cmd | , | ||
"point-code format <1-24> " | [< 1-23 >][< 1-22 >], | ||
PC_STR "Configure Point Code Format\n" "Length of first PC component\n" "Length of second PC component\n" "Length of third PC component\n" | , | ||
CMD_ATTR_IMMEDIATE | |||
) |
References osmo_ss7_instance::cfg, osmo_ss7_pc_fmt::component_len, and osmo_ss7_instance::pc_fmt.
DEFUN_ATTR | ( | cs7_pc_format_def | , |
cs7_pc_format_def_cmd | , | ||
"point-code format default" | , | ||
PC_STR "Configure Point Code Format\n" "Default Point Code Format (3.8.3)\n" | , | ||
CMD_ATTR_IMMEDIATE | |||
) |
References osmo_ss7_instance::cfg, osmo_ss7_pc_fmt::component_len, and osmo_ss7_instance::pc_fmt.
DEFUN_ATTR | ( | cs7_permit_dyn_rkm | , |
cs7_permit_dyn_rkm_cmd | , | ||
"xua rkm routing-key-allocation (static-only|dynamic-permitted)" | , | ||
"SIGTRAN xxxUA related\n" "Routing Key Management\n" "Routing Key Management Allocation Policy\n" "Only static (pre-configured) Routing Keys permitted\n" "Dynamically allocate Routing Keys for what ASPs request\n" | , | ||
CMD_ATTR_IMMEDIATE | |||
) |
References osmo_ss7_instance::cfg, and osmo_ss7_instance::permit_dyn_rkm_alloc.
DEFUN_ATTR | ( | cs7_point_code | , |
cs7_point_code_cmd | , | ||
"point-code POINT_CODE" | , | ||
"Configure the local Point Code\n" "Point Code\n" | , | ||
CMD_ATTR_IMMEDIATE | |||
) |
DEFUN_ATTR | ( | cs7_route_table | , |
cs7_route_table_cmd | , | ||
"route-table system" | , | ||
"Specify the name of the route table\n" "Name of the route table\n" | , | ||
CMD_ATTR_IMMEDIATE | |||
) |
DEFUN_ATTR | ( | cs7_rt_rem | , |
cs7_rt_rem_cmd | , | ||
"remove route POINT_CODE MASK" | , | ||
"Remove a Route\n" "Remove a Route\n" "Destination Point Code\n" "Point Code Mask\n" "Point Code Length\n" | , | ||
CMD_ATTR_IMMEDIATE | |||
) |
DEFUN_ATTR | ( | cs7_rt_upd | , |
cs7_rt_upd_cmd | , | ||
"update route POINT_CODE MASK linkset LS_NAME " | [priority][" ROUTE_PRIO_VAR_STR "][qos-class][" QOS_CLASS_VAR_STR "], | ||
"Update the Route\n" "Update the Route\n" "Destination Point Code\n" "Point Code Mask\n" "Specify Destination Linkset\n" "Linkset Name\n" "Specify Priority\n" ROUTE_PRIO_VAR_HELP_STR "Specify QoS Class\n" | QOS_CLASS_VAR_HELP_STR, | ||
CMD_ATTR_IMMEDIATE | |||
) |
References osmo_ss7_route::cfg, dpc, osmo_ss7_route_table::inst, osmo_ss7_route::mask, osmo_ss7_pointcode_parse(), osmo_ss7_pointcode_parse_mask_or_len(), osmo_ss7_route::priority, osmo_ss7_route::qos_class, osmo_ss7_route::rtable, ss7_route_alloc(), ss7_route_destroy(), ss7_route_insert(), and ss7_route_set_linkset().
DEFUN_ATTR | ( | cs7_sccpaddr | , |
cs7_sccpaddr_cmd | , | ||
"sccp-address NAME" | , | ||
"Create/Modify an SCCP addressbook entry\n" "Name of the SCCP Address\n" | , | ||
CMD_ATTR_IMMEDIATE | |||
) |
DEFUN_ATTR | ( | cs7_sccpaddr_del | , |
cs7_sccpaddr_del_cmd | , | ||
"no sccp-address NAME" | , | ||
NO_STR "Delete an SCCP addressbook entry\n" "Name of the SCCP Address\n" | , | ||
CMD_ATTR_IMMEDIATE | |||
) |
References addr_entry_by_name_local(), and osmo_ss7_instance::name.
DEFUN_ATTR | ( | cs7_sccpaddr_gt | , |
cs7_sccpaddr_gt_cmd | , | ||
"global-title" | , | ||
"Add/Modify Global Title\n" | , | ||
CMD_ATTR_IMMEDIATE | |||
) |
References osmo_sccp_addr_entry::addr, OSMO_SCCP_ADDR_T_GT, and osmo_sccp_addr::presence.
DEFUN_ATTR | ( | cs7_sccpaddr_gt_del | , |
cs7_sccpaddr_gt_del_cmd | , | ||
"no global-title" | , | ||
NO_STR "Remove Global Title\n" | , | ||
CMD_ATTR_IMMEDIATE | |||
) |
References osmo_sccp_addr_entry::addr, osmo_sccp_addr::gt, and osmo_sccp_addr::presence.
DEFUN_ATTR | ( | cs7_sccpaddr_gt_digits | , |
cs7_sccpaddr_gt_digits_cmd | , | ||
"digits DIGITS" | , | ||
"Set Global Title Digits\n" "Number digits\n" | , | ||
CMD_ATTR_IMMEDIATE | |||
) |
References osmo_sccp_addr_entry::addr, osmo_sccp_gt::digits, and osmo_sccp_addr::gt.
DEFUN_ATTR | ( | cs7_sccpaddr_gt_gti | , |
cs7_sccpaddr_gt_gti_cmd | , | ||
"global-title-indicator <0-15>" | , | ||
"Set Global Title Indicator\n" "GTI\n" | , | ||
CMD_ATTR_IMMEDIATE | |||
) |
References osmo_sccp_addr_entry::addr, osmo_sccp_addr::gt, and osmo_sccp_gt::gti.
DEFUN_ATTR | ( | cs7_sccpaddr_gt_nai | , |
cs7_sccpaddr_gt_nai_cmd | , | ||
"nature-of-address-indicator <0-127>" | , | ||
"Set Global Title Nature of Address Indicator\n" "NAI\n" | , | ||
CMD_ATTR_IMMEDIATE | |||
) |
References osmo_sccp_addr_entry::addr, osmo_sccp_addr::gt, and osmo_sccp_gt::nai.
DEFUN_ATTR | ( | cs7_sccpaddr_gt_npi | , |
cs7_sccpaddr_gt_npi_cmd | , | ||
"numbering-plan-indicator <0-15>" | , | ||
"Set Global Title Numbering Plan Indicator\n" "NPI\n" | , | ||
CMD_ATTR_IMMEDIATE | |||
) |
References osmo_sccp_addr_entry::addr, osmo_sccp_addr::gt, and osmo_sccp_gt::npi.
DEFUN_ATTR | ( | cs7_sccpaddr_gt_tt | , |
cs7_sccpaddr_gt_tt_cmd | , | ||
"translation-type <0-255>" | , | ||
"Set Global Title Translation Type\n" "TT\n" | , | ||
CMD_ATTR_IMMEDIATE | |||
) |
References osmo_sccp_addr_entry::addr, osmo_sccp_addr::gt, and osmo_sccp_gt::tt.
DEFUN_ATTR | ( | cs7_sccpaddr_pc | , |
cs7_sccpaddr_pc_cmd | , | ||
"point-code POINT_CODE" | , | ||
"Add point-code Number\n" "PC\n" | , | ||
CMD_ATTR_IMMEDIATE | |||
) |
DEFUN_ATTR | ( | cs7_sccpaddr_pc_del | , |
cs7_sccpaddr_pc_del_cmd | , | ||
"no point-code" | , | ||
NO_STR "Remove point-code Number\n" | , | ||
CMD_ATTR_IMMEDIATE | |||
) |
References osmo_sccp_addr_entry::addr, osmo_sccp_addr::pc, and osmo_sccp_addr::presence.
DEFUN_ATTR | ( | cs7_sccpaddr_ri | , |
cs7_sccpaddr_ri_cmd | , | ||
"routing-indicator (GT|PC|IP)" | , | ||
"Add Routing Indicator\n" "by global-title\n" "by point-code\n" "by ip-address\n" | , | ||
CMD_ATTR_IMMEDIATE | |||
) |
DEFUN_ATTR | ( | cs7_sccpaddr_ssn | , |
cs7_sccpaddr_ssn_cmd | , | ||
"subsystem-number <0-4294967295>" | , | ||
"Add Subsystem Number\n" "SSN\n" | , | ||
CMD_ATTR_IMMEDIATE | |||
) |
DEFUN_ATTR | ( | cs7_sccpaddr_ssn_del | , |
cs7_sccpaddr_ssn_del_cmd | , | ||
"no subsystem-number" | , | ||
NO_STR "Remove Subsystem Number\n" | , | ||
CMD_ATTR_IMMEDIATE | |||
) |
References osmo_sccp_addr_entry::addr, osmo_sccp_addr::presence, and osmo_sccp_addr::ssn.
DEFUN_ATTR | ( | cs7_secondary_pc | , |
cs7_secondary_pc_cmd | , | ||
"secondary-pc POINT_CODE" | , | ||
"Configure the local Secondary Point Code\n" "Point Code\n" | , | ||
CMD_ATTR_IMMEDIATE | |||
) |
DEFUN_ATTR | ( | cs7_xua | , |
cs7_xua_cmd | , | ||
"listen " XUA_VAR_STR " <0-65534> " | [" IPPROTO_VAR_STR "], | ||
"Configure/Enable xUA Listener\n" XUA_VAR_HELP_STR "Port number\n" | IPPROTO_VAR_HELP_STR, | ||
CMD_ATTR_IMMEDIATE | |||
) |
DEFUN_ATTR | ( | no_cs7_as | , |
no_cs7_as_cmd | , | ||
"no as NAME" | , | ||
NO_STR "Disable Application Server\n" "Name of AS\n" | , | ||
CMD_ATTR_IMMEDIATE | |||
) |
DEFUN_ATTR | ( | no_cs7_asp | , |
no_cs7_asp_cmd | , | ||
"no asp NAME" | , | ||
NO_STR "Disable Application Server Process\n" "Name of ASP\n" | , | ||
CMD_ATTR_IMMEDIATE | |||
) |
DEFUN_ATTR | ( | no_cs7_xua | , |
no_cs7_xua_cmd | , | ||
"no listen " XUA_VAR_STR " <0-65534> " | [" IPPROTO_VAR_STR "], | ||
NO_STR "Disable xUA Listener on given port\n" XUA_VAR_HELP_STR "Port number\n" | IPPROTO_VAR_HELP_STR, | ||
CMD_ATTR_IMMEDIATE | |||
) |
DEFUN_ATTR | ( | xua_accept_dyn_asp | , |
xua_accept_dyn_asp_cmd | , | ||
"accept-asp-connections (pre-configured|dynamic-permitted)" | , | ||
"Define what kind of ASP connections to accept\n" "Accept only pre-configured ASPs (source IP/port)\n" "Accept any connection and dynamically create an ASP definition\n" | , | ||
CMD_ATTR_IMMEDIATE | |||
) |
References osmo_xua_server::accept_dyn_reg, and osmo_xua_server::cfg.
DEFUN_ATTR | ( | xua_local_ip | , |
xua_local_ip_cmd | , | ||
"local-ip " | VTY_IPV46_CMD, | ||
"Configure the Local IP Address for xUA\n" "IPv4 Address to use for XUA\n" "IPv6 Address to use for XUA\n" | , | ||
CMD_ATTR_IMMEDIATE | |||
) |
References ss7_xua_server_add_local_host().
DEFUN_ATTR | ( | xua_no_local_ip | , |
xua_no_local_ip_cmd | , | ||
"no local-ip " | VTY_IPV46_CMD, | ||
NO_STR "Configure the Local IP Address for xUA\n" "IPv4 Address to use for XUA\n" "IPv6 Address to use for XUA\n" | , | ||
CMD_ATTR_NODE_EXIT | |||
) |
References ss7_xua_server_del_local_host().
DEFUN_ATTR | ( | xua_no_sctp_param_init | , |
xua_no_sctp_param_init_cmd | , | ||
"no sctp-param init " | XUA_SRV_SCTP_PARAM_INIT_FIELDS, | ||
NO_STR | XUA_SRV_SCTP_PARAM_INIT_DESC, | ||
CMD_ATTR_NODE_EXIT | |||
) |
DEFUN_ATTR | ( | xua_sctp_param_init | , |
xua_sctp_param_init_cmd | , | ||
"sctp-param init " XUA_SRV_SCTP_PARAM_INIT_FIELDS " <0-65535>" | , | ||
XUA_SRV_SCTP_PARAM_INIT_DESC "Value of the parameter\n" | , | ||
CMD_ATTR_NODE_EXIT | |||
) |
DEFUN_USRATTR | ( | as_no_traf_mode | , |
as_no_traf_mode_cmd | , | ||
OSMO_SCCP_LIB_ATTR_RSTRT_ASP | , | ||
"no traffic-mode" | , | ||
NO_STR "Remove explicit traffic mode of operation of this AS\n" | |||
) |
References osmo_ss7_as::cfg, osmo_ss7_as::mode, and osmo_ss7_as::mode_set_by_vty.
DEFUN_USRATTR | ( | as_traf_mode | , |
as_traf_mode_cmd | , | ||
OSMO_SCCP_LIB_ATTR_RSTRT_ASP | , | ||
"traffic-mode (broadcast | loadshare | roundrobin | override)" | , | ||
"Specifies traffic mode of operation of the ASP within the AS\n" "Broadcast to all ASP within AS\n" "Share Load among all ASP within AS\n" "Round-Robin between all ASP within AS\n" "Override\n" | |||
) |
|
static |
References ss7_asp_lm_timer_defaults, and ss7_asp_lm_timer_names.
Referenced by vty_init_shared().
|
static |
Referenced by show_one_asp().
LLIST_HEAD | ( | sccp_address_book_global | ) |
struct osmo_ss7_instance * osmo_sccp_addr_by_name | ( | struct osmo_sccp_addr * | dest_addr, |
const char * | name | ||
) |
Lookup an SCCP address from the addressbook by its name.
[out] | dest_addr | pointer to output the resulting sccp-address; (set to NULL if not interested) |
[in] | name | of the address to lookup |
References osmo_sccp_addr_entry::addr, addr_entry_by_name_global(), osmo_sccp_addr_entry::inst, and osmo_sccp_addr_entry::name.
int osmo_sccp_addr_by_name_local | ( | struct osmo_sccp_addr * | dest_addr, |
const char * | name, | ||
const struct osmo_ss7_instance * | inst | ||
) |
Lookup an SCCP address from the addressbook of a specific instance by its name.
[out] | dest_addr | pointer to output the resulting sccp-address; (set to NULL if not interested) |
[in] | name | of the address to lookup |
[in] | inst | ss7 instance of which the address book will be searched |
References osmo_sccp_addr_entry::addr, addr_entry_by_name_local(), osmo_sccp_addr_entry::inst, and osmo_sccp_addr_entry::name.
const char * osmo_sccp_name_by_addr | ( | const struct osmo_sccp_addr * | addr | ) |
Reverse lookup the lookup-name of a specified SCCP address.
[in] | name | of the address to lookup |
References osmo_sccp_addr_entry::addr, osmo_sccp_addr_entry::list_global, and osmo_sccp_addr_entry::name.
int osmo_ss7_is_config_node | ( | struct vty * | vty, |
int | node | ||
) |
int osmo_ss7_vty_go_parent | ( | struct vty * | vty | ) |
void osmo_ss7_vty_init_asp | ( | void * | ctx | ) |
References cs7_role, CS7_ROLE_ASP, and vty_init_shared().
void osmo_ss7_vty_init_sg | ( | void * | ctx | ) |
References cs7_role, CS7_ROLE_SG, rtable_node, vty_init_shared(), and xua_node.
|
static |
References osmo_ss7_asp_protocol_vals.
Referenced by DEFUN(), and DEFUN_ATTR().
|
static |
References ipproto_vals.
Referenced by DEFUN(), and DEFUN_ATTR().
|
static |
References osmo_ss7_instance::asp_list, osmo_ss7_asp::inst, osmo_ss7_asp::list, osmo_ss7_asp_find_by_name(), osmo_ss7_instance_find(), and show_one_asp().
Referenced by DEFUN().
|
static |
References osmo_ss7_instance::asp_list, osmo_ss7_asp::inst, osmo_ss7_asp::list, osmo_ss7_asp_find_by_name(), osmo_ss7_instance_find(), and show_one_asp_assoc_status().
Referenced by DEFUN().
|
static |
References osmo_ss7_instance::asp_list, osmo_ss7_asp::inst, osmo_ss7_asp::list, osmo_ss7_asp_find_by_name(), osmo_ss7_instance_find(), and show_one_asp_remaddr().
Referenced by DEFUN().
|
static |
References as_list_for_asp(), osmo_ss7_asp::cfg, osmo_ss7_asp::fi, get_sockname_buf(), osmo_ss7_asp::is_server, osmo_ss7_asp::local, osmo_ss7_asp::name, osmo_ss7_asp_protocol_vals, osmo_ss7_asp_role_names, osmo_ss7_asp::proto, osmo_ss7_asp::remote, osmo_ss7_asp::role, ss7_asp_get_fd(), ss7_asp_peer_snprintf(), and osmo_ss7_asp::trans_proto.
Referenced by show_asp().
|
static |
References osmo_ss7_asp::cfg, osmo_ss7_asp::name, show_one_asp_assoc_status_tcp(), and osmo_ss7_asp::trans_proto.
Referenced by show_asp_assoc_status().
|
static |
References osmo_ss7_asp::cfg, len, osmo_ss7_asp::name, ss7_asp_get_fd(), and tcp_info_state_values.
Referenced by show_one_asp_assoc_status().
|
static |
References osmo_ss7_asp::cfg, osmo_ss7_asp::name, show_one_asp_remaddr_tcp(), and osmo_ss7_asp::trans_proto.
Referenced by show_asp_remaddr().
|
static |
References osmo_ss7_asp::cfg, len, osmo_ss7_asp::name, ss7_asp_get_fd(), and tcp_info_state_values.
Referenced by show_one_asp_remaddr().
|
static |
|
static |
|
static |
References sccpaddr_gt_node, and sccpaddr_node.
Referenced by vty_init_shared().
|
static |
References as_node, asp_node, asp_quirk_descs, asp_quirk_names, config_write_cs7(), cs7_node, g_ctx, gen_asp_timer_cmd_strs(), and vty_init_addr().
Referenced by osmo_ss7_vty_init_asp(), and osmo_ss7_vty_init_sg().
|
static |
References osmo_ss7_instance::list, osmo_ss7_instances, and write_one_cs7().
Referenced by config_write_cs7(), and DEFUN().
|
static |
References osmo_ss7_asp::cfg, ss7_asp_lm_timer_names, and osmo_ss7_asp::T_defs_lm.
Referenced by write_one_asp().
|
static |
References osmo_ss7_as::asps, osmo_ss7_as::cfg, osmo_ss7_asp::cfg, osmo_ss7_routing_key::context, osmo_ss7_as::description, osmo_ss7_as::dpc, osmo_ss7_asp::dyn_allocated, osmo_ss7_as::inst, osmo_ss7_as::mode, osmo_ss7_as::mode_set_by_vty, mtp_si_vals, osmo_ss7_as::name, osmo_ss7_asp::name, osmo_ss7_as_traffic_mode_name(), osmo_ss7_asp_protocol_name(), osmo_ss7_pointcode_print(), osmo_ss7_routing_key::pc, osmo_ss7_as::pc_override, osmo_ss7_as::proto, osmo_ss7_as::qos_class, osmo_ss7_as::recovery_timeout_msec, osmo_ss7_as::rkm_dyn_allocated, osmo_ss7_as::routing_key, osmo_ss7_as::sccp_mode, osmo_ss7_routing_key::si, osmo_ss7_as::simple_client_allocated, osmo_ss7_asp::simple_client_allocated, and osmo_ss7_routing_key::ssn.
Referenced by write_one_cs7().
|
static |
References asp_quirk_names, osmo_ss7_asp::cfg, osmo_ss7_asp::description, osmo_ss7_asp::dyn_allocated, osmo_ss7_asp_peer::host, osmo_ss7_asp_peer::host_cnt, osmo_ss7_asp_peer::idx_primary, ipproto_vals, osmo_ss7_asp::is_server, osmo_ss7_asp::local, osmo_ss7_asp::max_attempts_present, osmo_ss7_asp::max_attempts_value, osmo_ss7_asp::max_init_timeo_present, osmo_ss7_asp::max_init_timeo_value, osmo_ss7_asp::max_instreams_present, osmo_ss7_asp::max_instreams_value, osmo_ss7_asp::name, osmo_ss7_asp::num_ostreams_present, osmo_ss7_asp::num_ostreams_value, osmo_ss7_asp_protocol_name(), osmo_ss7_asp_role_names, osmo_ss7_asp_peer::port, osmo_ss7_asp::proto, osmo_ss7_asp::qos_class, osmo_ss7_asp::quirks, osmo_ss7_asp::remote, osmo_ss7_asp::role, osmo_ss7_asp::sctp_init, osmo_ss7_asp::simple_client_allocated, ss7_default_trans_proto_for_asp_proto(), osmo_ss7_asp::trans_proto, and write_asp_timers().
Referenced by write_one_cs7().
|
static |
References osmo_ss7_instance::as_list, osmo_ss7_instance::asp_list, osmo_ss7_instance::cfg, osmo_ss7_pc_fmt::component_len, cs7_role, CS7_ROLE_SG, osmo_ss7_pc_fmt::delimiter, osmo_ss7_instance::description, osmo_ss7_instance::id, osmo_xua_server::inst, osmo_xua_server::list, osmo_ss7_instance::network_indicator, osmo_sccp_vty_write_cs7_node(), osmo_ss7_pc_is_valid(), osmo_ss7_pointcode_print(), osmo_ss7_instance::pc_fmt, osmo_ss7_instance::permit_dyn_rkm_alloc, osmo_ss7_instance::primary_pc, osmo_ss7_instance::rtable_list, osmo_ss7_instance::sccp, osmo_ss7_instance::secondary_pc, ss7_network_indicator_vals, write_one_as(), write_one_asp(), write_one_rtable(), write_one_xua(), write_sccp_addressbook(), and osmo_ss7_instance::xua_servers.
Referenced by write_all_cs7().
|
static |
References osmo_ss7_route::cfg, osmo_ss7_route_table::cfg, osmo_ss7_route_table::description, osmo_ss7_route_table::inst, osmo_ss7_route::linkset_name, osmo_ss7_route::list, osmo_ss7_route::mask, osmo_ss7_route_table::name, osmo_ss7_pointcode_print(), osmo_ss7_pointcode_print2(), OSMO_SS7_ROUTE_PRIO_DEFAULT, osmo_ss7_route::pc, osmo_ss7_route::priority, osmo_ss7_route::qos_class, osmo_ss7_route_table::routes, and osmo_ss7_route::rtable.
Referenced by write_one_cs7().
|
static |
References osmo_xua_server::accept_dyn_reg, osmo_xua_server::cfg, osmo_ss7_asp_peer::host, osmo_ss7_asp_peer::host_cnt, ipproto_vals, osmo_xua_server::local, osmo_xua_server::max_instreams_present, osmo_xua_server::max_instreams_value, osmo_xua_server::num_ostreams_present, osmo_xua_server::num_ostreams_value, osmo_ss7_asp_protocol_vals, osmo_ss7_asp_peer::port, osmo_xua_server::proto, osmo_xua_server::sctp_init, ss7_default_trans_proto_for_asp_proto(), and osmo_xua_server::trans_proto.
Referenced by write_one_cs7().
|
static |
References osmo_sccp_addr_entry::addr, osmo_ss7_instance::cfg, osmo_sccp_gt::digits, osmo_sccp_addr::gt, osmo_sccp_gt::gti, osmo_sccp_addr_entry::inst, osmo_sccp_addr_entry::list, osmo_sccp_gt::nai, osmo_sccp_addr_entry::name, osmo_sccp_gt::npi, OSMO_SCCP_ADDR_T_GT, OSMO_SCCP_ADDR_T_PC, OSMO_SCCP_ADDR_T_SSN, OSMO_SCCP_RI_GT, OSMO_SCCP_RI_NONE, OSMO_SCCP_RI_SSN_IP, OSMO_SCCP_RI_SSN_PC, osmo_ss7_pointcode_print(), osmo_sccp_addr::pc, osmo_sccp_addr::presence, osmo_sccp_addr::ri, osmo_ss7_instance::sccp_address_book, osmo_sccp_addr::ssn, and osmo_sccp_gt::tt.
Referenced by write_one_cs7().
|
static |
Referenced by vty_init_shared().
|
static |
Referenced by vty_init_shared().
|
static |
Referenced by vty_init_shared().
|
static |
Referenced by DEFUN_ATTR(), vty_init_shared(), and write_one_asp().
|
static |
Referenced by vty_init_shared().
|
static |
Referenced by _rout_key(), osmo_ss7_vty_init_asp(), osmo_ss7_vty_init_sg(), and write_one_cs7().
|
static |
Referenced by DEFUN_ATTR(), and vty_init_shared().
|
static |
Referenced by parse_trans_proto(), vty_dump_xua_server(), write_one_asp(), and write_one_xua().
const struct value_string mtp_si_vals[] |
Referenced by _rout_key(), write_one_as(), and xua_snm_rx_dupu().
|
static |
Referenced by osmo_ss7_vty_init_sg().
|
static |
Referenced by vty_init_addr().
|
static |
Referenced by vty_init_addr().
|
static |
Referenced by DEFUN_ATTR(), and write_one_cs7().
|
static |
Referenced by show_one_asp_assoc_status_tcp(), and show_one_asp_remaddr_tcp().
|
static |
Referenced by osmo_ss7_vty_init_sg().
libosmo-sigtran 2.0.0.52-6412
Osmocom SIGTRAN library
|
Data Fields | |
struct osmo_ss7_asp * | asp |
struct osmo_ss7_asp* lm_fsm_priv::asp |
Referenced by handle_reg_conf(), lm_active(), lm_idle(), lm_rkm_reg(), lm_timer_cb(), lm_wait_notify(), osmo_ss7_asp_use_default_lm(), and restart_asp().
libosmo-sigtran 2.0.0.52-6412
Osmocom SIGTRAN library
|
libosmo-sigtran 2.0.0.52-6412
Osmocom SIGTRAN library
|
#include <string.h>
#include <errno.h>
#include <unistd.h>
#include <inttypes.h>
#include <osmocom/core/linuxlist.h>
#include <osmocom/core/utils.h>
#include <osmocom/core/talloc.h>
#include <osmocom/core/logging.h>
#include <osmocom/sigtran/osmo_ss7.h>
#include <osmocom/sigtran/protocol/m3ua.h>
#include "ss7_as.h"
#include "ss7_asp.h"
#include "ss7_route.h"
#include "ss7_route_table.h"
#include "ss7_internal.h"
#include "xua_as_fsm.h"
#include "xua_asp_fsm.h"
Functions | |
struct osmo_ss7_as * | ss7_as_alloc (struct osmo_ss7_instance *inst, const char *name, enum osmo_ss7_asp_protocol proto) |
Allocate an Application Server. More... | |
enum osmo_ss7_asp_protocol | osmo_ss7_as_get_asp_protocol (const struct osmo_ss7_as *as) |
Get asp_protocol configuration of a given AS. More... | |
int | osmo_ss7_as_add_asp (struct osmo_ss7_as *as, const char *asp_name) |
Add given ASP to given AS. More... | |
int | osmo_ss7_as_del_asp (struct osmo_ss7_as *as, const char *asp_name) |
Delete given ASP from given AS. More... | |
void | osmo_ss7_as_destroy (struct osmo_ss7_as *as) |
Destroy given Application Server. More... | |
bool | osmo_ss7_as_has_asp (const struct osmo_ss7_as *as, const struct osmo_ss7_asp *asp) |
Determine if given AS contains ASP. More... | |
bool | osmo_ss7_as_active (const struct osmo_ss7_as *as) |
Determine if given AS is in the active state. More... | |
bool | osmo_ss7_as_down (const struct osmo_ss7_as *as) |
Determine if given AS is in the down state. More... | |
static struct osmo_ss7_asp * | ss7_as_select_asp_override (struct osmo_ss7_as *as) |
static struct osmo_ss7_asp * | ss7_as_select_asp_roundrobin (struct osmo_ss7_as *as) |
static struct osmo_ss7_asp * | ss7_as_select_asp_broadcast (struct osmo_ss7_as *as) |
struct osmo_ss7_asp * | osmo_ss7_as_select_asp (struct osmo_ss7_as *as) |
Select an AS to transmit a message, according to AS configuration and ASP availability. More... | |
bool | osmo_ss7_as_tmode_compatible_xua (struct osmo_ss7_as *as, uint32_t m3ua_tmt) |
Variables | |
struct value_string | osmo_ss7_as_traffic_mode_vals [] |
static const struct rate_ctr_desc | ss7_as_rcd [] |
static const struct rate_ctr_group_desc | ss7_as_rcgd |
static unsigned int | g_ss7_as_rcg_idx |
bool osmo_ss7_as_active | ( | const struct osmo_ss7_as * | as | ) |
Determine if given AS is in the active state.
[in] | as | Application Server. |
References osmo_ss7_as::fi, and XUA_AS_S_ACTIVE.
Referenced by DEFUN().
int osmo_ss7_as_add_asp | ( | struct osmo_ss7_as * | as, |
const char * | asp_name | ||
) |
Add given ASP to given AS.
[in] | as | Application Server to which asp is added |
[in] | asp | Application Server Process to be added to as |
References osmo_ss7_as::asps, osmo_ss7_as::cfg, osmo_ss7_asp::cfg, osmo_ss7_asp::fi, osmo_ss7_as::inst, LOGPAS, osmo_ss7_asp::name, osmo_ss7_as_has_asp(), osmo_ss7_asp_find_by_name(), ss7_initialized, and XUA_ASP_E_AS_ASSIGNED.
Referenced by DEFUN_ATTR(), handle_rkey_reg(), ipa_asp_fsm_wait_id_resp(), osmo_sccp_simple_client_on_ss7_id(), and osmo_sccp_simple_server_add_clnt().
int osmo_ss7_as_del_asp | ( | struct osmo_ss7_as * | as, |
const char * | asp_name | ||
) |
Delete given ASP from given AS.
[in] | as | Application Server from which asp is deleted |
[in] | asp | Application Server Process to delete from as |
References osmo_ss7_as::asps, osmo_ss7_as::cfg, osmo_ss7_asp::cfg, osmo_ss7_as::inst, LOGPAS, osmo_ss7_asp::name, osmo_ss7_asp_find_by_name(), and ss7_initialized.
Referenced by DEFUN_ATTR(), and handle_rkey_dereg().
void osmo_ss7_as_destroy | ( | struct osmo_ss7_as * | as | ) |
Destroy given Application Server.
[in] | as | Application Server to destroy |
References osmo_ss7_as::ctrg, osmo_ss7_as::fi, osmo_ss7_as::inst, osmo_ss7_as::list, LOGPAS, osmo_ss7_instance::rtable_system, ss7_initialized, and ss7_route_table_del_routes_by_as().
Referenced by DEFUN_ATTR(), handle_rkey_dereg(), handle_rkey_reg(), osmo_sccp_simple_client_on_ss7_id(), osmo_sccp_simple_server_add_clnt(), osmo_ss7_instance_destroy(), and xua_rkm_cleanup_dyn_as_for_asp().
bool osmo_ss7_as_down | ( | const struct osmo_ss7_as * | as | ) |
Determine if given AS is in the down state.
[in] | as | Application Server. |
References osmo_ss7_as::fi, and XUA_AS_S_DOWN.
Referenced by hmrt_message_for_routing().
enum osmo_ss7_asp_protocol osmo_ss7_as_get_asp_protocol | ( | const struct osmo_ss7_as * | as | ) |
Get asp_protocol configuration of a given AS.
[in] | as | Application Server in which to look for asp_protocol |
References osmo_ss7_as::cfg, and osmo_ss7_as::proto.
bool osmo_ss7_as_has_asp | ( | const struct osmo_ss7_as * | as, |
const struct osmo_ss7_asp * | asp | ||
) |
Determine if given AS contains ASP.
[in] | as | Application Server in which to look for asp |
[in] | asp | Application Server Process to look for in as |
References osmo_ss7_as::asps, osmo_ss7_as::cfg, and ss7_initialized.
Referenced by as_list_for_asp(), determine_traf_mode(), dispatch_to_all_as(), find_single_as_for_asp(), get_all_rctx_for_asp(), handle_rkey_dereg(), ipa_find_as_for_asp(), osmo_sccp_simple_client_on_ss7_id(), osmo_ss7_as_add_asp(), xua_asp_fsm_inactive(), xua_find_as_for_asp(), xua_msg_add_asp_rctx(), and xua_rkm_cleanup_dyn_as_for_asp().
struct osmo_ss7_asp * osmo_ss7_as_select_asp | ( | struct osmo_ss7_as * | as | ) |
Select an AS to transmit a message, according to AS configuration and ASP availability.
[in] | as | Application Server. |
This function returns NULL too if multiple ASPs would be selected, ie. AS is configured in broadcast mode and more than one ASP is configured.
References _NUM_OSMO_SS7_ASP_TMOD, osmo_ss7_as::cfg, osmo_ss7_as::fi, osmo_ss7_as::mode, OSMO_SS7_AS_TMOD_BCAST, OSMO_SS7_AS_TMOD_LOADSHARE, OSMO_SS7_AS_TMOD_OVERRIDE, OSMO_SS7_AS_TMOD_ROUNDROBIN, ss7_as_select_asp_broadcast(), ss7_as_select_asp_override(), and ss7_as_select_asp_roundrobin().
Referenced by xua_as_transmit_msg().
bool osmo_ss7_as_tmode_compatible_xua | ( | struct osmo_ss7_as * | as, |
uint32_t | m3ua_tmt | ||
) |
References osmo_ss7_as::cfg, M3UA_TMOD_BCAST, M3UA_TMOD_LOADSHARE, M3UA_TMOD_OVERRIDE, osmo_ss7_as::mode, osmo_ss7_as::mode_set_by_peer, osmo_ss7_as::mode_set_by_vty, OSMO_SS7_AS_TMOD_BCAST, OSMO_SS7_AS_TMOD_LOADSHARE, OSMO_SS7_AS_TMOD_OVERRIDE, and OSMO_SS7_AS_TMOD_ROUNDROBIN.
Referenced by handle_rkey_reg(), and xua_asp_fsm_inactive().
struct osmo_ss7_as * ss7_as_alloc | ( | struct osmo_ss7_instance * | inst, |
const char * | name, | ||
enum osmo_ss7_asp_protocol | proto | ||
) |
Allocate an Application Server.
[in] | inst | SS7 Instance on which we operate |
[in] | name | Name of Application Server |
[in] | proto | Protocol of Application Server |
References osmo_ss7_instance::as_list, osmo_ss7_as::cfg, osmo_ss7_as::ctrg, osmo_ss7_as::fi, g_ss7_as_rcg_idx, osmo_ss7_as::inst, osmo_ss7_routing_key::l_rk_id, osmo_ss7_as::list, osmo_ss7_as::mode, osmo_ss7_as::name, OSMO_SS7_AS_TMOD_OVERRIDE, osmo_ss7_as::proto, osmo_ss7_as::recovery_timeout_msec, osmo_ss7_as::routing_key, ss7_as_rcgd, ss7_find_free_l_rk_id(), and xua_as_fsm_start().
Referenced by osmo_ss7_as_find_or_create().
|
static |
References osmo_ss7_as::asps, osmo_ss7_as::cfg, and osmo_ss7_asp_active().
Referenced by osmo_ss7_as_select_asp().
|
static |
References osmo_ss7_as::asps, osmo_ss7_as::cfg, and osmo_ss7_asp_active().
Referenced by osmo_ss7_as_select_asp().
|
static |
References osmo_ss7_as::asps, osmo_ss7_as::cfg, osmo_ss7_as::last_asp_idx_sent, and osmo_ss7_asp_active().
Referenced by osmo_ss7_as_select_asp().
|
static |
Referenced by ss7_as_alloc().
struct value_string osmo_ss7_as_traffic_mode_vals[] |
Referenced by DEFUN_USRATTR(), and osmo_ss7_as_traffic_mode_name().
|
static |
|
static |
Referenced by ss7_as_alloc().
libosmo-sigtran 2.0.0.52-6412
Osmocom SIGTRAN library
|
libosmo-sigtran 2.0.0.52-6412
Osmocom SIGTRAN library
|
libosmo-sigtran 2.0.0.52-6412
Osmocom SIGTRAN library
|
libosmo-sigtran 2.0.0.52-6412
Osmocom SIGTRAN library
|
libosmo-sigtran 2.0.0.52-6412
Osmocom SIGTRAN library
|
#include <xua_types.h>
Data Fields | |
uint8_t | version |
uint8_t | spare |
uint8_t | msg_class |
uint8_t | msg_type |
uint32_t | msg_length |
uint8_t | data [0] |
uint8_t xua_common_hdr::data[0] |
Referenced by m3ua_rx_msg(), m3ua_tcp_cli_read_cb(), ss7_asp_m3ua_tcp_srv_conn_rx_cb(), sua_rx_msg(), and xua_tcp_segmentation_cb().
uint8_t xua_common_hdr::msg_class |
Referenced by data_hdr_from_m3ua(), hmdt_message_for_distribution(), m3ua_rx_msg(), m3ua_tcp_cli_read_cb(), m3ua_to_msg(), msgb_push_m3ua_hdr(), osmo_sua_to_sccp(), sccp_sclc_rx_from_scrc(), scoc_fsm_conn_pend_out(), ss7_asp_m3ua_tcp_srv_conn_rx_cb(), sua_is_connectionless(), sua_is_cr(), sua_rx_cl(), sua_rx_co(), sua_rx_msg(), sua_to_msg(), xua_dialect_check_all_mand_ies(), xua_hdr_dump(), xua_msg_dump(), and xua_msg_event_map().
uint32_t xua_common_hdr::msg_length |
Referenced by msgb_push_m3ua_hdr(), xua_from_msg(), xua_msg_dump(), xua_tcp_segmentation_cb(), and xua_to_msg().
uint8_t xua_common_hdr::msg_type |
Referenced by data_hdr_from_m3ua(), hmdt_message_for_distribution(), m3ua_encode_dava(), m3ua_rx_mgmt(), m3ua_rx_rkm(), m3ua_rx_snm(), m3ua_rx_snm_asp(), m3ua_rx_snm_sg(), m3ua_rx_xfer(), msgb_push_m3ua_hdr(), osmo_sua_to_sccp(), sccp_sclc_rx_from_scrc(), sccp_sclc_rx_scrc_rout_fail(), sccp_scoc_rx_from_scrc(), sccp_scoc_rx_inval_opc(), sccp_scoc_rx_inval_src_ref(), sccp_scoc_rx_unass_local_ref(), sccp_scrc_rx_sclc_msg(), sccp_scrc_rx_scoc_conn_msg(), sua_encode_dava(), sua_is_cr(), sua_rx_cl(), sua_rx_co(), sua_rx_mgmt(), sua_rx_snm_asp(), sua_rx_snm_sg(), xua_dialect_check_all_mand_ies(), xua_hdr_dump(), and xua_msg_event_map().
uint8_t xua_common_hdr::spare |
Referenced by msgb_push_m3ua_hdr(), and xua_to_msg().
uint8_t xua_common_hdr::version |
libosmo-sigtran 2.0.0.52-6412
Osmocom SIGTRAN library
|
libosmo-sigtran 2.0.0.52-6412
Osmocom SIGTRAN library
|
libosmo-sigtran 2.0.0.52-6412
Osmocom SIGTRAN library
|
Go to the source code of this file.
Data Structures | |
struct | osmo_ss7_user |
Functions | |
int | ss7_mtp_to_user (struct osmo_ss7_instance *inst, struct osmo_mtp_prim *omp) |
int ss7_mtp_to_user | ( | struct osmo_ss7_instance * | inst, |
struct osmo_mtp_prim * | omp | ||
) |
libosmo-sigtran 2.0.0.52-6412
Osmocom SIGTRAN library
|
libosmo-sigtran 2.0.0.52-6412
Osmocom SIGTRAN library
|
#include <ss7_xua_srv.h>
Data Fields | |
osmo_prim_cb | prim_cb |
osmo_prim_cb osmo_xua_layer_manager::prim_cb |
Referenced by xua_asp_send_xlm_prim(), and xua_cli_connect_cb().
libosmo-sigtran 2.0.0.52-6412
Osmocom SIGTRAN library
|
libosmo-sigtran 2.0.0.52-6412
Osmocom SIGTRAN library
|
libosmo-sigtran 2.0.0.52-6412
Osmocom SIGTRAN library
|
#include <ss7_route.h>
Data Fields | |
struct llist_head | list |
member in osmo_ss7_route_table::routes More... | |
struct osmo_ss7_route_table * | rtable |
osmo_ss7_route_table to which we belong More... | |
struct { | |
struct osmo_ss7_linkset * linkset | |
pointer to linkset (destination) of route More... | |
struct osmo_ss7_as * as | |
pointer to Application Server More... | |
} | dest |
struct { | |
uint32_t pc | |
uint32_t mask | |
char * linkset_name | |
human-specified linkset name More... | |
uint32_t priority | |
lower priority is higher More... | |
uint8_t qos_class | |
} | cfg |
struct osmo_ss7_as* osmo_ss7_route::as |
pointer to Application Server
Referenced by _rout_key(), gen_mtp_transfer_req_xua(), handle_rkey_dereg(), handle_rkey_reg(), hmrt_message_for_routing(), osmo_ss7_route_get_dest_as(), osmo_ss7_route_name(), ss7_route_set_linkset(), and ss7_route_table_del_routes_by_as().
struct { ... } osmo_ss7_route::cfg |
Referenced by DEFUN_ATTR(), osmo_ss7_route_name(), osmo_ss7_route_print(), route_insert_sorted(), ss7_route_alloc(), ss7_route_destroy(), ss7_route_insert(), ss7_route_set_linkset(), ss7_route_table_find_route_by_dpc(), ss7_route_table_find_route_by_dpc_mask(), vty_dump_rtable(), and write_one_rtable().
struct { ... } osmo_ss7_route::dest |
struct osmo_ss7_linkset* osmo_ss7_route::linkset |
pointer to linkset (destination) of route
Referenced by gen_mtp_transfer_req_xua(), hmrt_message_for_routing(), osmo_ss7_route_name(), ss7_route_set_linkset(), and ss7_route_table_del_routes_by_linkset().
char* osmo_ss7_route::linkset_name |
human-specified linkset name
Referenced by ss7_route_create(), ss7_route_destroy(), ss7_route_insert(), ss7_route_set_linkset(), vty_dump_rtable(), and write_one_rtable().
struct llist_head osmo_ss7_route::list |
member in osmo_ss7_route_table::routes
Referenced by route_insert_sorted(), ss7_route_alloc(), ss7_route_destroy(), ss7_route_inserted(), ss7_route_table_del_routes_by_as(), ss7_route_table_del_routes_by_linkset(), ss7_route_table_find_route_by_dpc(), ss7_route_table_find_route_by_dpc_mask(), vty_dump_rtable(), and write_one_rtable().
uint32_t osmo_ss7_route::mask |
Referenced by DEFUN_ATTR(), osmo_ss7_route_name(), osmo_ss7_route_print(), route_insert_sorted(), ss7_route_alloc(), ss7_route_create(), ss7_route_destroy(), ss7_route_insert(), ss7_route_set_linkset(), ss7_route_table_find_route_by_dpc(), ss7_route_table_find_route_by_dpc_mask(), and write_one_rtable().
uint32_t osmo_ss7_route::pc |
uint32_t osmo_ss7_route::priority |
lower priority is higher
Referenced by DEFUN_ATTR(), route_insert_sorted(), ss7_route_alloc(), vty_dump_rtable(), and write_one_rtable().
uint8_t osmo_ss7_route::qos_class |
Referenced by DEFUN_ATTR(), and write_one_rtable().
struct osmo_ss7_route_table* osmo_ss7_route::rtable |
osmo_ss7_route_table to which we belong
Referenced by DEFUN_ATTR(), osmo_ss7_route_name(), osmo_ss7_route_print(), ss7_route_alloc(), ss7_route_destroy(), ss7_route_insert(), ss7_route_set_linkset(), and write_one_rtable().
libosmo-sigtran 2.0.0.52-6412
Osmocom SIGTRAN library
|
#include <errno.h>
#include <string.h>
#include <stdbool.h>
#include <sys/socket.h>
#include <arpa/inet.h>
#include <netinet/in.h>
#include <osmocom/sccp/sccp_types.h>
#include <osmocom/sigtran/sccp_sap.h>
#include <osmocom/sigtran/sccp_helpers.h>
#include "sccp_internal.h"
Macros | |
#define | SCU_MSG_SIZE 2048 |
#define | SCU_MSG_HEADROOM 512 |
Functions | |
static struct msgb * | scu_msgb_alloc (const char *name) |
void | osmo_sccp_make_addr_pc_ssn (struct osmo_sccp_addr *addr, uint32_t pc, uint32_t ssn) |
void | osmo_sccp_addr_set_ssn (struct osmo_sccp_addr *addr, uint32_t ssn) |
int | osmo_sccp_tx_unitdata (struct osmo_sccp_user *scu, const struct osmo_sccp_addr *calling_addr, const struct osmo_sccp_addr *called_addr, const uint8_t *data, unsigned int len) |
int | osmo_sccp_tx_unitdata_ranap (struct osmo_sccp_user *scu, uint32_t src_point_code, uint32_t dst_point_code, const uint8_t *data, unsigned int len) |
int | osmo_sccp_tx_unitdata_msg (struct osmo_sccp_user *scu, const struct osmo_sccp_addr *calling_addr, const struct osmo_sccp_addr *called_addr, struct msgb *msg) |
int | osmo_sccp_tx_conn_req (struct osmo_sccp_user *scu, uint32_t conn_id, const struct osmo_sccp_addr *calling_addr, const struct osmo_sccp_addr *called_addr, const uint8_t *data, unsigned int len) |
int | osmo_sccp_tx_conn_req_msg (struct osmo_sccp_user *scu, uint32_t conn_id, const struct osmo_sccp_addr *calling_addr, const struct osmo_sccp_addr *called_addr, struct msgb *msg) |
int | osmo_sccp_tx_data (struct osmo_sccp_user *scu, uint32_t conn_id, const uint8_t *data, unsigned int len) |
int | osmo_sccp_tx_data_msg (struct osmo_sccp_user *scu, uint32_t conn_id, struct msgb *msg) |
int | osmo_sccp_tx_disconn_data (struct osmo_sccp_user *scu, uint32_t conn_id, const struct osmo_sccp_addr *resp_addr, uint32_t cause, const uint8_t *data, size_t len) |
int | osmo_sccp_tx_disconn (struct osmo_sccp_user *scu, uint32_t conn_id, const struct osmo_sccp_addr *resp_addr, uint32_t cause) |
int | osmo_sccp_tx_conn_resp_msg (struct osmo_sccp_user *scu, uint32_t conn_id, const struct osmo_sccp_addr *resp_addr, struct msgb *msg) |
int | osmo_sccp_tx_conn_resp (struct osmo_sccp_user *scu, uint32_t conn_id, const struct osmo_sccp_addr *resp_addr, const uint8_t *data, unsigned int len) |
static void | append_to_buf (char *buf, size_t size, bool *comma, const char *fmt,...) |
char * | osmo_sccp_gt_dump (const struct osmo_sccp_gt *gt) |
char * | osmo_sccp_addr_dump (const struct osmo_sccp_addr *addr) |
static int | sccp_addr_to_str_buf (char *buf, size_t buf_len, const struct osmo_ss7_instance *ss7, const struct osmo_sccp_addr *addr, char sep_char) |
int | osmo_sccp_addr_to_str_buf (char *buf, size_t buf_len, const struct osmo_ss7_instance *ss7, const struct osmo_sccp_addr *addr) |
char * | osmo_sccp_addr_to_str_c (void *ctx, const struct osmo_ss7_instance *ss7, const struct osmo_sccp_addr *addr) |
int | osmo_sccp_addr_to_id_buf (char *buf, size_t buf_len, const struct osmo_ss7_instance *ss7, const struct osmo_sccp_addr *addr) |
like osmo_sccp_addr_to_str_buf, but using only characters passing osmo_identifier_valid(). More... | |
char * | osmo_sccp_addr_to_id_c (void *ctx, const struct osmo_ss7_instance *ss7, const struct osmo_sccp_addr *addr) |
char * | osmo_sccp_addr_name (const struct osmo_ss7_instance *ss7, const struct osmo_sccp_addr *addr) |
int | osmo_sccp_inst_addr_to_str_buf (char *buf, size_t buf_len, const struct osmo_sccp_instance *sccp, const struct osmo_sccp_addr *addr) |
char * | osmo_sccp_inst_addr_to_str_c (void *ctx, const struct osmo_sccp_instance *sccp, const struct osmo_sccp_addr *addr) |
char * | osmo_sccp_inst_addr_name (const struct osmo_sccp_instance *sccp, const struct osmo_sccp_addr *addr) |
#define SCU_MSG_HEADROOM 512 |
#define SCU_MSG_SIZE 2048 |
|
static |
Referenced by osmo_sccp_addr_dump(), and osmo_sccp_gt_dump().
char * osmo_sccp_addr_dump | ( | const struct osmo_sccp_addr * | addr | ) |
References append_to_buf(), osmo_sccp_addr::gt, osmo_sccp_gt::gti, osmo_sccp_addr::ip, OSMO_SCCP_ADDR_T_GT, OSMO_SCCP_ADDR_T_IPv4, OSMO_SCCP_ADDR_T_IPv6, OSMO_SCCP_ADDR_T_PC, OSMO_SCCP_ADDR_T_SSN, osmo_sccp_gt_dump(), OSMO_SCCP_GTI_NO_GT, osmo_sccp_addr::pc, osmo_sccp_addr::presence, osmo_sccp_addr::ri, osmo_sccp_addr::ssn, osmo_sccp_addr::v4, and osmo_sccp_addr::v6.
Referenced by gen_mtp_transfer_req_xua(), and sccp_addr_to_sua().
char * osmo_sccp_addr_name | ( | const struct osmo_ss7_instance * | ss7, |
const struct osmo_sccp_addr * | addr | ||
) |
References osmo_sccp_addr_to_str_buf().
Referenced by osmo_sccp_inst_addr_name(), and osmo_sccp_user_name().
void osmo_sccp_addr_set_ssn | ( | struct osmo_sccp_addr * | addr, |
uint32_t | ssn | ||
) |
References OSMO_SCCP_ADDR_T_SSN, osmo_sccp_addr::presence, and osmo_sccp_addr::ssn.
int osmo_sccp_addr_to_id_buf | ( | char * | buf, |
size_t | buf_len, | ||
const struct osmo_ss7_instance * | ss7, | ||
const struct osmo_sccp_addr * | addr | ||
) |
like osmo_sccp_addr_to_str_buf, but using only characters passing osmo_identifier_valid().
Useful for FSM and CTRL IDs.
The advantage over using osmo_sccp_addr_to_str_buf() followed by osmo_identifier_sanitize_buf() is that here, the address elements are separated by ':', while osmo_identifier_sanitize_buf() would replace all characters with the same, e.g. '-'.
References sccp_addr_to_str_buf().
Referenced by osmo_sccp_addr_to_id_c().
char * osmo_sccp_addr_to_id_c | ( | void * | ctx, |
const struct osmo_ss7_instance * | ss7, | ||
const struct osmo_sccp_addr * | addr | ||
) |
References osmo_sccp_addr_to_id_buf().
int osmo_sccp_addr_to_str_buf | ( | char * | buf, |
size_t | buf_len, | ||
const struct osmo_ss7_instance * | ss7, | ||
const struct osmo_sccp_addr * | addr | ||
) |
References sccp_addr_to_str_buf().
Referenced by osmo_sccp_addr_name(), osmo_sccp_addr_to_str_c(), and osmo_sccp_inst_addr_to_str_buf().
char * osmo_sccp_addr_to_str_c | ( | void * | ctx, |
const struct osmo_ss7_instance * | ss7, | ||
const struct osmo_sccp_addr * | addr | ||
) |
References osmo_sccp_addr_to_str_buf().
char * osmo_sccp_gt_dump | ( | const struct osmo_sccp_gt * | gt | ) |
References append_to_buf(), osmo_sccp_gt::digits, osmo_sccp_gt::gti, osmo_sccp_gt::nai, osmo_sccp_gt::npi, OSMO_SCCP_GTI_NAI_ONLY, OSMO_SCCP_GTI_NO_GT, OSMO_SCCP_GTI_TT_NPL_ENC, OSMO_SCCP_GTI_TT_NPL_ENC_NAI, OSMO_SCCP_GTI_TT_ONLY, and osmo_sccp_gt::tt.
Referenced by osmo_sccp_addr_dump(), and sccp_addr_to_str_buf().
char * osmo_sccp_inst_addr_name | ( | const struct osmo_sccp_instance * | sccp, |
const struct osmo_sccp_addr * | addr | ||
) |
References osmo_sccp_addr_name(), and osmo_sccp_instance::ss7.
int osmo_sccp_inst_addr_to_str_buf | ( | char * | buf, |
size_t | buf_len, | ||
const struct osmo_sccp_instance * | sccp, | ||
const struct osmo_sccp_addr * | addr | ||
) |
References osmo_sccp_addr_to_str_buf(), and osmo_sccp_instance::ss7.
Referenced by osmo_sccp_inst_addr_to_str_c().
char * osmo_sccp_inst_addr_to_str_c | ( | void * | ctx, |
const struct osmo_sccp_instance * | sccp, | ||
const struct osmo_sccp_addr * | addr | ||
) |
References osmo_sccp_inst_addr_to_str_buf().
void osmo_sccp_make_addr_pc_ssn | ( | struct osmo_sccp_addr * | addr, |
uint32_t | pc, | ||
uint32_t | ssn | ||
) |
int osmo_sccp_tx_conn_req | ( | struct osmo_sccp_user * | scu, |
uint32_t | conn_id, | ||
const struct osmo_sccp_addr * | calling_addr, | ||
const struct osmo_sccp_addr * | called_addr, | ||
const uint8_t * | data, | ||
unsigned int | len | ||
) |
References osmo_scu_connect_param::called_addr, osmo_scu_connect_param::calling_addr, osmo_scu_connect_param::conn_id, osmo_scu_prim::connect, data, len, osmo_scu_prim::oph, osmo_sccp_user_sap_down(), OSMO_SCU_PRIM_N_CONNECT, osmo_scu_connect_param::sccp_class, SCCP_SAP_USER, scu_msgb_alloc(), and osmo_scu_prim::u.
Referenced by osmo_sccp_tx_conn_req_msg().
int osmo_sccp_tx_conn_req_msg | ( | struct osmo_sccp_user * | scu, |
uint32_t | conn_id, | ||
const struct osmo_sccp_addr * | calling_addr, | ||
const struct osmo_sccp_addr * | called_addr, | ||
struct msgb * | msg | ||
) |
References osmo_sccp_tx_conn_req().
int osmo_sccp_tx_conn_resp | ( | struct osmo_sccp_user * | scu, |
uint32_t | conn_id, | ||
const struct osmo_sccp_addr * | resp_addr, | ||
const uint8_t * | data, | ||
unsigned int | len | ||
) |
References data, len, osmo_sccp_tx_conn_resp_msg(), and scu_msgb_alloc().
int osmo_sccp_tx_conn_resp_msg | ( | struct osmo_sccp_user * | scu, |
uint32_t | conn_id, | ||
const struct osmo_sccp_addr * | resp_addr, | ||
struct msgb * | msg | ||
) |
References osmo_scu_connect_param::conn_id, osmo_scu_prim::connect, osmo_sccp_user::inst, osmo_scu_prim::oph, osmo_sccp_conn_id_exists(), osmo_sccp_user_sap_down(), OSMO_SCU_PRIM_N_CONNECT, osmo_scu_connect_param::responding_addr, osmo_scu_connect_param::sccp_class, SCCP_SAP_USER, and osmo_scu_prim::u.
Referenced by osmo_sccp_tx_conn_resp().
int osmo_sccp_tx_data | ( | struct osmo_sccp_user * | scu, |
uint32_t | conn_id, | ||
const uint8_t * | data, | ||
unsigned int | len | ||
) |
References osmo_scu_data_param::conn_id, osmo_scu_prim::data, data, osmo_sccp_user::inst, len, osmo_scu_prim::oph, osmo_sccp_conn_id_exists(), osmo_sccp_user_sap_down(), OSMO_SCU_PRIM_N_DATA, SCCP_SAP_USER, scu_msgb_alloc(), and osmo_scu_prim::u.
Referenced by osmo_sccp_tx_data_msg(), xua_opt_data_length_lim(), and xua_opt_data_send_cache().
int osmo_sccp_tx_data_msg | ( | struct osmo_sccp_user * | scu, |
uint32_t | conn_id, | ||
struct msgb * | msg | ||
) |
References osmo_sccp_tx_data().
int osmo_sccp_tx_disconn | ( | struct osmo_sccp_user * | scu, |
uint32_t | conn_id, | ||
const struct osmo_sccp_addr * | resp_addr, | ||
uint32_t | cause | ||
) |
References osmo_sccp_tx_disconn_data().
int osmo_sccp_tx_disconn_data | ( | struct osmo_sccp_user * | scu, |
uint32_t | conn_id, | ||
const struct osmo_sccp_addr * | resp_addr, | ||
uint32_t | cause, | ||
const uint8_t * | data, | ||
size_t | len | ||
) |
References osmo_scu_disconn_param::cause, osmo_scu_disconn_param::conn_id, data, osmo_scu_prim::disconnect, osmo_sccp_user::inst, len, osmo_scu_prim::oph, osmo_scu_disconn_param::originator, osmo_sccp_conn_id_exists(), OSMO_SCCP_ORIG_NS_USER, osmo_sccp_user_sap_down(), OSMO_SCU_PRIM_N_DISCONNECT, osmo_scu_disconn_param::responding_addr, SCCP_SAP_USER, scu_msgb_alloc(), and osmo_scu_prim::u.
Referenced by osmo_sccp_tx_disconn().
int osmo_sccp_tx_unitdata | ( | struct osmo_sccp_user * | scu, |
const struct osmo_sccp_addr * | calling_addr, | ||
const struct osmo_sccp_addr * | called_addr, | ||
const uint8_t * | data, | ||
unsigned int | len | ||
) |
References osmo_scu_unitdata_param::called_addr, osmo_scu_unitdata_param::calling_addr, data, len, osmo_scu_prim::oph, osmo_sccp_user_sap_down(), OSMO_SCU_PRIM_N_UNITDATA, SCCP_SAP_USER, scu_msgb_alloc(), osmo_scu_prim::u, and osmo_scu_prim::unitdata.
Referenced by osmo_sccp_tx_unitdata_msg(), and osmo_sccp_tx_unitdata_ranap().
int osmo_sccp_tx_unitdata_msg | ( | struct osmo_sccp_user * | scu, |
const struct osmo_sccp_addr * | calling_addr, | ||
const struct osmo_sccp_addr * | called_addr, | ||
struct msgb * | msg | ||
) |
References osmo_sccp_tx_unitdata().
int osmo_sccp_tx_unitdata_ranap | ( | struct osmo_sccp_user * | scu, |
uint32_t | src_point_code, | ||
uint32_t | dst_point_code, | ||
const uint8_t * | data, | ||
unsigned int | len | ||
) |
References data, len, osmo_sccp_make_addr_pc_ssn(), OSMO_SCCP_SSN_RANAP, and osmo_sccp_tx_unitdata().
|
static |
References osmo_sccp_addr::gt, osmo_sccp_gt::gti, osmo_sccp_addr::ip, OSMO_SCCP_ADDR_T_GT, OSMO_SCCP_ADDR_T_IPv4, OSMO_SCCP_ADDR_T_IPv6, OSMO_SCCP_ADDR_T_PC, OSMO_SCCP_ADDR_T_SSN, osmo_sccp_gt_dump(), osmo_sccp_gti_name(), OSMO_SCCP_GTI_NO_GT, osmo_sccp_routing_ind_name(), osmo_sccp_ssn_name(), osmo_ss7_pointcode_print(), osmo_sccp_addr::pc, osmo_sccp_addr::presence, osmo_sccp_addr::ri, osmo_sccp_addr::ssn, osmo_sccp_addr::v4, and osmo_sccp_addr::v6.
Referenced by osmo_sccp_addr_to_id_buf(), and osmo_sccp_addr_to_str_buf().
|
static |
References SCU_MSG_HEADROOM, and SCU_MSG_SIZE.
Referenced by osmo_sccp_tx_conn_req(), osmo_sccp_tx_conn_resp(), osmo_sccp_tx_data(), osmo_sccp_tx_disconn_data(), and osmo_sccp_tx_unitdata().
libosmo-sigtran 2.0.0.52-6412
Osmocom SIGTRAN library
|
libosmo-sigtran 2.0.0.52-6412
Osmocom SIGTRAN library
|
libosmo-sigtran 2.0.0.52-6412
Osmocom SIGTRAN library
|
#include <osmocom/core/utils.h>
Go to the source code of this file.
Enumerations | |
enum | mtp_si_ni00 { MTP_SI_SNM = 0 , MTP_SI_STM = 1 , MTP_SI_SCCP = 3 , MTP_SI_TUP = 4 , MTP_SI_ISUP = 5 , MTP_SI_DUP = 6 , MTP_SI_DUP_FAC = 7 , MTP_SI_TESTING = 8 , MTP_SI_B_ISUP = 9 , MTP_SI_SAT_ISUP = 10 , MTP_SI_SPEECH = 11 , MTP_SI_AAL2_SIG = 12 , MTP_SI_BICC = 13 , MTP_SI_GCP = 14 } |
enum | mtp_unavail_cause { MTP_UNAVAIL_C_UNKNOWN = 0x0 , MTP_UNAVAIL_C_UNEQUIP_REM_USER = 0x1 , MTP_UNAVAIL_C_INACC_REM_USER = 0x2 } |
Functions | |
static const char * | mtp_unavail_cause_str (enum mtp_unavail_cause cs) |
Variables | |
const struct value_string | mtp_si_vals [] |
const struct value_string | mtp_unavail_cause_vals [] |
enum mtp_si_ni00 |
enum mtp_unavail_cause |
|
inlinestatic |
References mtp_unavail_cause_vals.
|
extern |
Referenced by _rout_key(), write_one_as(), and xua_snm_rx_dupu().
|
extern |
Referenced by mtp_unavail_cause_str().
libosmo-sigtran 2.0.0.52-6412
Osmocom SIGTRAN library
|
libosmo-sigtran 2.0.0.52-6412
Osmocom SIGTRAN library
|
#include <sccp_sap.h>
Data Fields | |
struct osmo_sccp_addr | called_addr |
struct osmo_sccp_addr | calling_addr |
uint32_t | in_sequence_control |
uint32_t | return_option |
uint32_t | importance |
struct osmo_sccp_addr osmo_scu_unitdata_param::called_addr |
Referenced by osmo_sccp_tx_unitdata(), sccp_scmg_tx(), sclc_rx_cldt(), scmg_prim_cb(), and xua_gen_msg_cl().
struct osmo_sccp_addr osmo_scu_unitdata_param::calling_addr |
Referenced by osmo_sccp_tx_unitdata(), sccp_scmg_tx(), sclc_rx_cldt(), scmg_prim_cb(), and xua_gen_msg_cl().
uint32_t osmo_scu_unitdata_param::importance |
Referenced by sclc_rx_cldt().
uint32_t osmo_scu_unitdata_param::in_sequence_control |
Referenced by sclc_rx_cldt(), and xua_gen_msg_cl().
uint32_t osmo_scu_unitdata_param::return_option |
Referenced by sclc_rx_cldt().
libosmo-sigtran 2.0.0.52-6412
Osmocom SIGTRAN library
|
Data Fields | |
struct osmo_ss7_asp * | asp |
enum osmo_ss7_asp_role | role |
struct { | |
struct osmo_timer_list timer | |
int out_event | |
} | t_ack |
struct osmo_ss7_asp* xua_asp_fsm_priv::asp |
int xua_asp_fsm_priv::out_event |
Referenced by check_stop_t_ack(), peer_send_and_start_t_ack(), and xua_t_ack_cb().
enum osmo_ss7_asp_role xua_asp_fsm_priv::role |
Referenced by xua_asp_fsm_start().
struct { ... } xua_asp_fsm_priv::t_ack |
Referenced by check_stop_t_ack(), peer_send_and_start_t_ack(), xua_asp_allstate(), xua_asp_fsm_cleanup(), and xua_t_ack_cb().
struct osmo_timer_list xua_asp_fsm_priv::timer |
Referenced by check_stop_t_ack(), peer_send_and_start_t_ack(), xua_asp_allstate(), xua_asp_fsm_cleanup(), and xua_t_ack_cb().
libosmo-sigtran 2.0.0.52-6412
Osmocom SIGTRAN library
|
Go to the source code of this file.
Macros | |
#define | M3UA_MSG_SIZE 2048 |
#define | M3UA_MSG_HEADROOM 512 |
#define | CS7_STR "ITU-T Signaling System 7\n" |
#define | PC_STR "Point Code\n" |
#define | INST_STR "An instance of the SS7 stack\n" |
Enumerations | |
enum | ss7_asp_lm_timer { SS7_ASP_LM_T_WAIT_ASP_UP = 1 , SS7_ASP_LM_T_WAIT_NOTIFY , SS7_ASP_LM_T_WAIT_NOTIY_RKM , SS7_ASP_LM_T_WAIT_RK_REG_RESP , SS7_ASP_LM_TIMERS_LEN } |
Functions | |
int | sua_addr_parse_part (struct osmo_sccp_addr *out, const struct xua_msg_part *param) |
parse SCCP address from given xUA message part More... | |
int | sua_addr_parse (struct osmo_sccp_addr *out, struct xua_msg *xua, uint16_t iei) |
parse SCCP address from given xUA message IE More... | |
int | sua_parse_gt (struct osmo_sccp_gt *gt, const uint8_t *data, unsigned int datalen) |
Decode SUA Global Title according to RFC3868 Section 3.10.2.3. More... | |
struct xua_msg * | osmo_sccp_to_xua (struct msgb *msg) |
convert SCCP message to a SUA message More... | |
struct msgb * | osmo_sua_to_sccp (struct xua_msg *xua) |
convert parsed SUA message to SCCP message More... | |
int | sua_rx_msg (struct osmo_ss7_asp *asp, struct msgb *msg) |
process SUA message received from socket More... | |
int | sua_tx_xua_as (struct osmo_ss7_as *as, struct xua_msg *xua) |
Send a given xUA message via a given SUA Application Server. More... | |
void | sua_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 uint32_t *aff_ssn, const uint32_t *smi, const char *info_string, bool available) |
Transmit SSNM DUNA/DAVA message indicating [un]availability of certain point code[s]. More... | |
void | sua_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 *ssn, const uint8_t cong_level, const char *info_string) |
Transmit SSNM SCON message indicating congestion. More... | |
void | sua_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... | |
struct osmo_mtp_prim * | m3ua_to_xfer_ind (struct xua_msg *xua) |
int | m3ua_hmdc_rx_from_l2 (struct osmo_ss7_instance *inst, 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... | |
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... | |
void | xua_snm_rx_daud (struct osmo_ss7_asp *asp, struct xua_msg *xua) |
void | xua_snm_rx_duna (struct osmo_ss7_asp *asp, struct osmo_ss7_as *as, struct xua_msg *xua) |
void | xua_snm_rx_dava (struct osmo_ss7_asp *asp, struct osmo_ss7_as *as, struct xua_msg *xua) |
void | xua_snm_rx_dupu (struct osmo_ss7_asp *asp, struct osmo_ss7_as *as, struct xua_msg *xua) |
void | xua_snm_rx_scon (struct osmo_ss7_asp *asp, struct osmo_ss7_as *as, struct xua_msg *xua) |
int | m3ua_rx_msg (struct osmo_ss7_asp *asp, struct msgb *msg) |
process M3UA message received from socket More... | |
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) |
struct m3ua_data_hdr * | data_hdr_from_m3ua (struct xua_msg *xua) |
void | m3ua_dh_to_xfer_param (struct osmo_mtp_transfer_param *param, const struct m3ua_data_hdr *mdh) |
void | mtp_xfer_param_to_m3ua_dh (struct m3ua_data_hdr *mdh, const struct osmo_mtp_transfer_param *param) |
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) |
int | m3ua_rx_rkm (struct osmo_ss7_asp *asp, struct xua_msg *xua) |
void | xua_rkm_cleanup_dyn_as_for_asp (struct osmo_ss7_asp *asp) |
struct osmo_xlm_prim * | xua_xlm_prim_alloc (enum osmo_xlm_prim_type prim_type, enum osmo_prim_operation op) |
void | xua_asp_send_xlm_prim (struct osmo_ss7_asp *asp, struct osmo_xlm_prim *prim) |
void | xua_asp_send_xlm_prim_simple (struct osmo_ss7_asp *asp, enum osmo_xlm_prim_type prim_type, enum osmo_prim_operation op) |
void | xua_snm_pc_available (struct osmo_ss7_as *as, const uint32_t *aff_pc, unsigned int num_aff_pc, const char *info_str, bool available) |
static const char * | ss7_asp_lm_timer_name (enum ss7_asp_lm_timer val) |
int | xua_as_transmit_msg (struct osmo_ss7_as *as, struct msgb *msg) |
int | xua_find_as_for_asp (struct osmo_ss7_as **as, const struct osmo_ss7_asp *asp, const struct xua_msg_part *rctx_ie) |
Find the AS for given ASP + optional routing context IE. More... | |
int | ipa_tx_xua_as (struct osmo_ss7_as *as, struct xua_msg *xua) |
Send a given xUA message via a given IPA "Application Server". More... | |
int | ipa_rx_msg (struct osmo_ss7_asp *asp, struct msgb *msg, uint8_t sls) |
process M3UA message received from socket More... | |
struct osmo_ss7_as * | ipa_find_as_for_asp (struct osmo_ss7_asp *asp) |
int | osmo_isup_party_parse (char *out_digits, const uint8_t *in, unsigned int in_num_bytes, bool odd) |
Parse ISUP style address of BCD digets. More... | |
int | osmo_sccp_addr_parse (struct osmo_sccp_addr *out, const uint8_t *addr, unsigned int addrlen) |
Parse wire-encoded SCCP address into osmo_sccp_addr. More... | |
int | osmo_sccp_addr_encode (struct msgb *msg, const struct osmo_sccp_addr *in) |
encode a SCCP address from parsed format to wire format More... | |
int | ss7_asp_rx_unknown (struct osmo_ss7_asp *asp, int ppid_mux, struct msgb *msg) |
Variables | |
const struct xua_msg_class | m3ua_msg_class_mgmt |
const struct xua_msg_class | m3ua_msg_class_snm |
const struct xua_msg_class | m3ua_msg_class_rkm |
const struct xua_msg_class | m3ua_msg_class_aspsm |
const struct xua_msg_class | m3ua_msg_class_asptm |
const struct value_string | m3ua_err_names [] |
const struct value_string | m3ua_ntfy_type_names [] |
const struct value_string | m3ua_ntfy_stchg_names [] |
const struct value_string | m3ua_ntfy_other_names [] |
const struct osmo_tdef | ss7_asp_lm_timer_defaults [SS7_ASP_LM_TIMERS_LEN] |
const struct value_string | ss7_asp_lm_timer_names [] |
struct osmo_fsm | xua_default_lm_fsm |
const struct value_string | m3ua_rkm_reg_status_vals [] |
const struct value_string | m3ua_rkm_dereg_status_vals [] |
#define CS7_STR "ITU-T Signaling System 7\n" |
#define INST_STR "An instance of the SS7 stack\n" |
#define M3UA_MSG_HEADROOM 512 |
#define M3UA_MSG_SIZE 2048 |
#define PC_STR "Point Code\n" |
enum ss7_asp_lm_timer |
struct m3ua_data_hdr * data_hdr_from_m3ua | ( | struct xua_msg * | xua | ) |
References xua_msg_part::dat, xua_msg::hdr, M3UA_IEI_PROT_DATA, M3UA_MSGC_XFER, M3UA_XFER_DATA, xua_common_hdr::msg_class, xua_common_hdr::msg_type, and xua_msg_find_tag().
Referenced by hmdt_message_for_distribution(), and m3ua_rx_xfer().
struct osmo_ss7_as * ipa_find_as_for_asp | ( | struct osmo_ss7_asp * | asp | ) |
References osmo_ss7_instance::as_list, osmo_ss7_asp::inst, osmo_ss7_as::list, and osmo_ss7_as_has_asp().
Referenced by ipa_asp_fsm_start(), and ipa_rx_msg_sccp().
int ipa_rx_msg | ( | struct osmo_ss7_asp * | asp, |
struct msgb * | msg, | ||
uint8_t | sls | ||
) |
process M3UA message received from socket
[in] | asp | Application Server Process receiving msg |
[in] | msg | received message buffer. Callee takes ownership! |
[in] | sls | The SLS (signaling link selector) field to use in the generated M3UA header |
References osmo_ss7_asp::cfg, ipa_rx_msg_ccm(), ipa_rx_msg_sccp(), OSMO_SS7_ASP_PROT_IPA, osmo_ss7_asp::proto, sls, and ss7_asp_rx_unknown().
Referenced by ipa_cli_read_cb(), and ss7_asp_ipa_srv_conn_rx_cb().
int ipa_tx_xua_as | ( | struct osmo_ss7_as * | as, |
struct xua_msg * | xua | ||
) |
Send a given xUA message via a given IPA "Application Server".
[in] | as | Application Server through which to send xua |
[in] | xua | xUA message to be sent |
References osmo_ss7_as::cfg, xua_msg_part::dat, xua_msg_part::len, LOGPAS, M3UA_IEI_PROT_DATA, MTP_SI_SCCP, OSMO_SS7_ASP_PROT_IPA, osmo_ss7_as::proto, m3ua_data_hdr::si, xua_as_transmit_msg(), and xua_msg_find_tag().
Referenced by hmrt_message_for_routing().
int m3ua_decode_notify | ( | struct osmo_xlm_prim_notify * | npar, |
void * | ctx, | ||
const struct xua_msg * | xua | ||
) |
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().
void m3ua_dh_to_xfer_param | ( | struct osmo_mtp_transfer_param * | param, |
const struct m3ua_data_hdr * | mdh | ||
) |
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().
struct xua_msg * m3ua_encode_notify | ( | const struct osmo_xlm_prim_notify * | npar | ) |
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().
int m3ua_hmdc_rx_from_l2 | ( | struct osmo_ss7_instance * | inst, |
struct xua_msg * | xua | ||
) |
struct msgb * m3ua_msgb_alloc | ( | const char * | name | ) |
References M3UA_MSG_HEADROOM, and M3UA_MSG_SIZE.
Referenced by m3ua_rx_rkm_dereg_req(), m3ua_rx_rkm_reg_req(), m3ua_to_xfer_ind(), xua_rkm_send_dereg_req(), and xua_rkm_send_reg_req().
int m3ua_rx_msg | ( | struct osmo_ss7_asp * | asp, |
struct msgb * | msg | ||
) |
process M3UA message received from socket
[in] | asp | Application Server Process receiving msg |
[in] | msg | received message buffer |
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 ss7_asp_m3ua_tcp_srv_conn_rx_cb(), ss7_asp_xua_srv_conn_rx_cb(), and xua_cli_read_cb().
int m3ua_rx_rkm | ( | struct osmo_ss7_asp * | asp, |
struct xua_msg * | xua | ||
) |
struct osmo_mtp_prim * m3ua_to_xfer_ind | ( | struct xua_msg * | xua | ) |
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.
[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().
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].
[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().
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.
[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().
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.
[in] | as | Application Server through which to send xua |
[in] | xua | xUA message to be sent |
References osmo_ss7_as::cfg, osmo_ss7_routing_key::context, osmo_ss7_as::fi, M3UA_IEI_ROUTE_CTX, m3ua_to_msg(), OSMO_SS7_ASP_PROT_M3UA, osmo_ss7_as::proto, osmo_ss7_as::routing_key, XUA_AS_E_TRANSFER_REQ, and xua_msg_add_u32().
Referenced by hmrt_message_for_routing().
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().
void mtp_xfer_param_to_m3ua_dh | ( | struct m3ua_data_hdr * | mdh, |
const struct osmo_mtp_transfer_param * | param | ||
) |
int osmo_isup_party_parse | ( | char * | out_digits, |
const uint8_t * | in, | ||
unsigned int | in_num_bytes, | ||
bool | odd | ||
) |
Parse ISUP style address of BCD digets.
[out] | out_digits | user-allocated buffer for ASCII digits |
[in] | in | BCD-encoded digits |
[in] | in_num_bytes | Size of in in bytes |
[in] | odd | Odd (true) or even (false) number of digits |
Referenced by osmo_sccp_addr_parse().
int osmo_sccp_addr_encode | ( | struct msgb * | msg, |
const struct osmo_sccp_addr * | in | ||
) |
encode a SCCP address from parsed format to wire format
[out] | msg | message buffer to which address is to be appended |
[in] | in | data structure describing SCCP address |
References osmo_sccp_gt::digits, osmo_sccp_addr::gt, osmo_sccp_gt::gti, msgb_put_u16le(), osmo_sccp_gt::nai, osmo_sccp_gt::npi, osmo_isup_party_encode(), OSMO_SCCP_ADDR_T_GT, OSMO_SCCP_ADDR_T_PC, OSMO_SCCP_ADDR_T_SSN, OSMO_SCCP_GTI_NAI_ONLY, OSMO_SCCP_GTI_NO_GT, OSMO_SCCP_GTI_TT_NPL_ENC, OSMO_SCCP_GTI_TT_NPL_ENC_NAI, OSMO_SCCP_GTI_TT_ONLY, OSMO_SCCP_RI_GT, OSMO_SCCP_RI_SSN_PC, osmo_sccp_addr::pc, osmo_sccp_addr::presence, osmo_sccp_addr::ri, osmo_sccp_addr::ssn, and osmo_sccp_gt::tt.
Referenced by sua_addr_to_sccp().
int osmo_sccp_addr_parse | ( | struct osmo_sccp_addr * | out, |
const uint8_t * | addr, | ||
unsigned int | addrlen | ||
) |
Parse wire-encoded SCCP address into osmo_sccp_addr.
[out] | out | user-allocated output data structure |
[in] | addr | wire-encoded SCCP address |
[in] | addrlen | Size of addr in bytes |
References osmo_sccp_gt::digits, osmo_sccp_addr::gt, osmo_sccp_gt::gti, osmo_sccp_gt::nai, osmo_sccp_gt::npi, osmo_isup_party_parse(), OSMO_SCCP_ADDR_T_GT, OSMO_SCCP_ADDR_T_PC, OSMO_SCCP_ADDR_T_SSN, OSMO_SCCP_GTI_NAI_ONLY, OSMO_SCCP_GTI_NO_GT, OSMO_SCCP_GTI_TT_NPL_ENC, OSMO_SCCP_GTI_TT_NPL_ENC_NAI, OSMO_SCCP_GTI_TT_ONLY, OSMO_SCCP_RI_GT, OSMO_SCCP_RI_SSN_PC, osmo_sccp_addr::pc, osmo_sccp_addr::presence, osmo_sccp_addr::ri, osmo_sccp_addr::ssn, and osmo_sccp_gt::tt.
Referenced by sccp_addr_to_sua().
struct xua_msg * osmo_sccp_to_xua | ( | struct msgb * | msg | ) |
convert SCCP message to a SUA message
[in] | msg | message buffer holding SCCP message at l2h |
References xua_msg::hdr, sccp_to_xua_cc(), sccp_to_xua_cr(), sccp_to_xua_cref(), sccp_to_xua_dt1(), sccp_to_xua_err(), sccp_to_xua_it(), sccp_to_xua_ludt(), sccp_to_xua_ludts(), sccp_to_xua_rlc(), sccp_to_xua_rlsd(), sccp_to_xua_udt(), sccp_to_xua_udts(), sccp_to_xua_xudt(), sccp_to_xua_xudts(), SUA_CL_CLDR, SUA_CL_CLDT, SUA_CO_COAK, SUA_CO_CODT, SUA_CO_COERR, SUA_CO_COIT, SUA_CO_CORE, SUA_CO_COREF, SUA_CO_RELCO, SUA_CO_RELRE, SUA_MSGC_CL, SUA_MSGC_CO, XUA_HDR, xua_msg_alloc(), and xua_msg_free().
Referenced by mtp_user_prim_cb(), and patch_sccp_with_pc().
struct msgb * osmo_sua_to_sccp | ( | struct xua_msg * | xua | ) |
convert parsed SUA message to SCCP message
[in] | xua | parsed SUA message to be converted |
References xua_msg::hdr, xua_common_hdr::msg_class, xua_common_hdr::msg_type, sccp_msgb_alloc(), SUA_CL_CLDR, SUA_CL_CLDT, SUA_CO_COAK, SUA_CO_CODT, SUA_CO_COERR, SUA_CO_COIT, SUA_CO_CORE, SUA_CO_COREF, SUA_CO_RELCO, SUA_CO_RELRE, SUA_MSGC_CL, SUA_MSGC_CO, sua_to_sccp_cc(), sua_to_sccp_cr(), sua_to_sccp_cref(), sua_to_sccp_dt1(), sua_to_sccp_err(), sua_to_sccp_it(), sua_to_sccp_rlc(), sua_to_sccp_rlsd(), sua_to_sccp_udt(), sua_to_sccp_udts(), xua_dialect_sua, and xua_hdr_dump().
Referenced by patch_sccp_with_pc(), and sua2sccp_tx_m3ua().
|
inlinestatic |
References ss7_asp_lm_timer_names.
int ss7_asp_rx_unknown | ( | struct osmo_ss7_asp * | asp, |
int | ppid_mux, | ||
struct msgb * | msg | ||
) |
References osmo_ss7_asp::cfg, osmo_ss7_asp::ctrg, g_osmo_ss7_asp_rx_unknown_cb, LOGPASP, OSMO_SS7_ASP_PROT_IPA, osmo_ss7_asp::proto, and SS7_ASP_CTR_PKT_RX_UNKNOWN.
Referenced by ipa_rx_msg(), ss7_asp_xua_srv_conn_rx_cb(), and xua_cli_read_cb().
int sua_addr_parse | ( | struct osmo_sccp_addr * | out, |
struct xua_msg * | xua, | ||
uint16_t | iei | ||
) |
parse SCCP address from given xUA message IE
[out] | out | caller-allocated decoded SCCP address struct |
[in] | xua | xUA message |
[in] | iei | Information Element Identifier inside xua |
References sua_addr_parse_part(), and xua_msg_find_tag().
Referenced by ensure_opc_in_calling_ssn(), gen_ret_msg(), patch_sccp_with_pc(), sccp_find_user(), sccp_scrc_rx_sclc_msg(), sccp_scrc_rx_scoc_conn_msg(), sclc_rx_cldr(), sclc_rx_cldt(), scoc_fsm_idle(), scrc_rx_mtp_xfer_ind_xua(), and scu_gen_encode_and_send().
int sua_addr_parse_part | ( | struct osmo_sccp_addr * | out, |
const struct xua_msg_part * | param | ||
) |
parse SCCP address from given xUA message part
[out] | out | caller-allocated decoded SCCP address struct |
[in] | param | xUA message part containing address |
References xua_msg_part::dat, osmo_sccp_addr::gt, osmo_sccp_addr::ip, xua_msg_part::len, xua_parameter_hdr::len, OSMO_SCCP_ADDR_T_GT, OSMO_SCCP_ADDR_T_IPv4, OSMO_SCCP_ADDR_T_IPv6, OSMO_SCCP_ADDR_T_PC, OSMO_SCCP_ADDR_T_SSN, OSMO_SCCP_RI_GT, OSMO_SCCP_RI_SSN_IP, OSMO_SCCP_RI_SSN_PC, osmo_sccp_addr::pc, osmo_sccp_addr::presence, osmo_sccp_addr::ri, osmo_sccp_addr::ssn, SUA_IEI_GT, SUA_IEI_IPv4, SUA_IEI_IPv6, SUA_IEI_PC, SUA_IEI_SSN, sua_parse_gt(), SUA_RI_GT, SUA_RI_HOST, SUA_RI_SSN_IP, SUA_RI_SSN_PC, xua_msg_part::tag, xua_parameter_hdr::tag, osmo_sccp_addr::v4, and osmo_sccp_addr::v6.
Referenced by sua_addr_parse(), and sua_addr_to_sccp().
int sua_parse_gt | ( | struct osmo_sccp_gt * | gt, |
const uint8_t * | data, | ||
unsigned int | datalen | ||
) |
Decode SUA Global Title according to RFC3868 Section 3.10.2.3.
[out] | gt | User-allocated structure for decoded output |
[in] | data | binary-encoded data |
[in] | datalen | length of data in octets |
References data, osmo_sccp_gt::digits, osmo_sccp_gt::gti, osmo_sccp_gt::nai, osmo_sccp_gt::npi, and osmo_sccp_gt::tt.
Referenced by sua_addr_parse_part().
int sua_rx_msg | ( | struct osmo_ss7_asp * | asp, |
struct msgb * | msg | ||
) |
process SUA message received from socket
[in] | asp | Application Server Process receiving msg |
[in] | msg | received message buffer |
References osmo_ss7_asp::cfg, xua_common_hdr::data, osmo_mtp_transfer_param::dpc, xua_msg::hdr, osmo_ss7_asp::inst, LOGPASP, xua_common_hdr::msg_class, xua_msg::mtp, MTP_SI_SCCP, osmo_mtp_transfer_param::opc, OSMO_SS7_ASP_PROT_SUA, osmo_ss7_asp::proto, osmo_ss7_instance::sccp, osmo_mtp_transfer_param::sio, SUA_ERR_INVAL_STREAM_ID, SUA_ERR_INVALID_VERSION, SUA_ERR_MISSING_PARAM, SUA_ERR_PARAM_FIELD_ERR, SUA_ERR_UNSUPP_MSG_CLASS, sua_gen_error_msg(), SUA_MSGC_ASPSM, SUA_MSGC_ASPTM, SUA_MSGC_CL, SUA_MSGC_CO, SUA_MSGC_MGMT, SUA_MSGC_RKM, SUA_MSGC_SNM, sua_rx_asp(), sua_rx_cl(), sua_rx_co(), sua_rx_mgmt(), sua_rx_snm(), sua_tx_xua_asp(), SUA_VERSION, xua_common_hdr::version, xua_dialect_check_all_mand_ies(), xua_dialect_sua, xua_from_msg(), xua_hdr_dump(), and xua_msg_free().
Referenced by ss7_asp_xua_srv_conn_rx_cb(), and xua_cli_read_cb().
void sua_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.
[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, sua_encode_dupu(), and sua_tx_xua_asp().
Referenced by xua_tx_upu().
void sua_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 uint32_t * | aff_ssn, | ||
const uint32_t * | smi, | ||
const char * | info_string, | ||
bool | available | ||
) |
Transmit SSNM DUNA/DAVA message indicating [un]availability of certain point code[s].
[in] | asp | ASP through whihc 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] | aff_ssn | affected SSN (optional) |
[in] | smi | subsystem multiplicity indicator (optional) |
[in] | info_string | optional information strng (can be NULL). |
[in] | available | are aff_pc now available (true) or unavailable (false) |
References smi, sua_encode_dava(), sua_encode_duna(), and sua_tx_xua_asp().
Referenced by sua_snm_ssn_available(), and xua_tx_snm_available().
void sua_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 * | ssn, | ||
const uint8_t | cong_level, | ||
const char * | info_string | ||
) |
Transmit SSNM SCON message indicating congestion.
[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] | ssn | optional SSN (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, SUA_IEI_AFFECTED_PC, SUA_IEI_CONG_LEVEL, SUA_IEI_INFO_STRING, SUA_IEI_ROUTE_CTX, SUA_IEI_SSN, SUA_MSGC_SNM, SUA_SNM_SCON, SUA_VERSION, xua_common_hdr::version, XUA_HDR, xua_msg_add_data(), xua_msg_add_u32(), and xua_msg_alloc().
Referenced by xua_tx_scon().
int sua_tx_xua_as | ( | struct osmo_ss7_as * | as, |
struct xua_msg * | xua | ||
) |
Send a given xUA message via a given SUA Application Server.
[in] | as | Application Server through which to send xua |
[in] | xua | xUA message to be sent |
References osmo_ss7_as::cfg, osmo_ss7_routing_key::context, osmo_ss7_as::fi, OSMO_SS7_ASP_PROT_SUA, osmo_ss7_as::proto, osmo_ss7_as::routing_key, SUA_IEI_ROUTE_CTX, sua_to_msg(), XUA_AS_E_TRANSFER_REQ, and xua_msg_add_u32().
Referenced by gen_mtp_transfer_req_xua().
int xua_as_transmit_msg | ( | struct osmo_ss7_as * | as, |
struct msgb * | msg | ||
) |
References _NUM_OSMO_SS7_ASP_TMOD, osmo_ss7_as::cfg, osmo_ss7_as::fi, osmo_ss7_as::mode, osmo_ss7_as_select_asp(), OSMO_SS7_AS_TMOD_BCAST, OSMO_SS7_AS_TMOD_LOADSHARE, OSMO_SS7_AS_TMOD_OVERRIDE, OSMO_SS7_AS_TMOD_ROUNDROBIN, osmo_ss7_asp_send(), and xua_as_transmit_msg_broadcast().
Referenced by ipa_tx_xua_as(), xua_as_fsm_active(), and xua_as_fsm_pending().
void xua_asp_send_xlm_prim | ( | struct osmo_ss7_asp * | asp, |
struct osmo_xlm_prim * | prim | ||
) |
void xua_asp_send_xlm_prim_simple | ( | struct osmo_ss7_asp * | asp, |
enum osmo_xlm_prim_type | prim_type, | ||
enum osmo_prim_operation | op | ||
) |
References xua_asp_send_xlm_prim(), and xua_xlm_prim_alloc().
Referenced by send_xlm_prim_simple(), ss7_asp_xua_srv_conn_closed_cb(), ss7_asp_xua_srv_conn_rx_cb(), xua_accept_cb(), xua_cli_close(), xua_cli_connect_cb(), and xua_cli_read_cb().
int xua_find_as_for_asp | ( | struct osmo_ss7_as ** | as, |
const struct osmo_ss7_asp * | asp, | ||
const struct xua_msg_part * | rctx_ie | ||
) |
Find the AS for given ASP + optional routing context IE.
if rctx_ie == NULL, we assume that this ASP is only part of a single AS; if rctx_ie is given, then we look-up the ASP based on the routing context, and verify that this ASP is part of it.
[out] | as | caller-provided address-of-pointer to store the found AS |
[in] | asp | ASP for which we want to look-up the AS |
[in] | rctx_ie | routing context IE (may be NULL) to use for look-up |
References osmo_ss7_asp::cfg, find_single_as_for_asp(), osmo_ss7_asp::inst, LOGPASP, M3UA_ERR_INVAL_ROUT_CTX, M3UA_ERR_NO_CONFGD_AS_FOR_ASP, osmo_ss7_asp::name, osmo_ss7_as_find_by_rctx(), osmo_ss7_as_has_asp(), osmo_ss7_asp_get_log_subsys(), and xua_msg_part_get_u32().
Referenced by m3ua_rx_snm_asp(), m3ua_rx_xfer(), sua_rx_cl(), sua_rx_co(), and sua_rx_snm_asp().
void xua_rkm_cleanup_dyn_as_for_asp | ( | struct osmo_ss7_asp * | asp | ) |
void xua_snm_pc_available | ( | struct osmo_ss7_as * | as, |
const uint32_t * | aff_pc, | ||
unsigned int | num_aff_pc, | ||
const char * | info_str, | ||
bool | available | ||
) |
References osmo_ss7_instance::asp_list, osmo_ss7_asp::cfg, get_all_rctx_for_asp(), osmo_ss7_as::inst, osmo_ss7_asp::list, osmo_ss7_asp_active(), OSMO_SS7_ASP_ROLE_SG, osmo_ss7_asp::role, osmo_ss7_instance::sccp, xua_snm_pc_available_to_sccp(), and xua_tx_snm_available().
Referenced by xua_snm_rx_dava(), and xua_snm_rx_duna().
void xua_snm_rx_daud | ( | struct osmo_ss7_asp * | asp, |
struct xua_msg * | xua | ||
) |
References xua_msg_part::dat, format_affected_pcs_c(), get_all_rctx_for_asp(), osmo_ss7_asp::inst, xua_msg_part::len, LOGPASP, M3UA_IEI_AFFECTED_PC, M3UA_IEI_INFO_STRING, osmo_ss7_asp_get_log_subsys(), osmo_ss7_route_lookup(), xua_msg_find_tag(), xua_msg_get_str(), and xua_tx_snm_available().
Referenced by m3ua_rx_snm_asp(), m3ua_rx_snm_sg(), sua_rx_snm_asp(), and sua_rx_snm_sg().
void xua_snm_rx_dava | ( | struct osmo_ss7_asp * | asp, |
struct osmo_ss7_as * | as, | ||
struct xua_msg * | xua | ||
) |
References osmo_ss7_asp::cfg, xua_msg_part::dat, format_affected_pcs_c(), osmo_ss7_asp::inst, xua_msg_part::len, LOGPASP, M3UA_IEI_AFFECTED_PC, M3UA_IEI_INFO_STRING, osmo_ss7_asp_get_log_subsys(), OSMO_SS7_ASP_PROT_SUA, OSMO_SS7_ASP_ROLE_ASP, osmo_ss7_asp::proto, osmo_ss7_asp::role, smi, SUA_IEI_SMI, SUA_IEI_SSN, sua_snm_ssn_available(), xua_msg_find_tag(), xua_msg_get_str(), xua_msg_get_u32p(), xua_msg_part_get_u32(), and xua_snm_pc_available().
Referenced by m3ua_rx_snm_asp(), and sua_rx_snm_asp().
void xua_snm_rx_duna | ( | struct osmo_ss7_asp * | asp, |
struct osmo_ss7_as * | as, | ||
struct xua_msg * | xua | ||
) |
References osmo_ss7_asp::cfg, xua_msg_part::dat, format_affected_pcs_c(), osmo_ss7_asp::inst, xua_msg_part::len, LOGPASP, M3UA_IEI_AFFECTED_PC, M3UA_IEI_INFO_STRING, osmo_ss7_asp_get_log_subsys(), OSMO_SS7_ASP_PROT_SUA, OSMO_SS7_ASP_ROLE_ASP, osmo_ss7_asp::proto, osmo_ss7_asp::role, smi, SUA_IEI_SMI, SUA_IEI_SSN, sua_snm_ssn_available(), xua_msg_find_tag(), xua_msg_get_str(), xua_msg_get_u32p(), xua_msg_part_get_u32(), and xua_snm_pc_available().
Referenced by m3ua_rx_snm_asp(), and sua_rx_snm_asp().
void xua_snm_rx_dupu | ( | struct osmo_ss7_asp * | asp, |
struct osmo_ss7_as * | as, | ||
struct xua_msg * | xua | ||
) |
References osmo_ss7_asp::cfg, osmo_ss7_asp::inst, LOGPASP, M3UA_IEI_USER_CAUSE, mtp_si_vals, osmo_ss7_asp_get_log_subsys(), OSMO_SS7_ASP_PROT_M3UA, OSMO_SS7_ASP_PROT_SUA, OSMO_SS7_ASP_ROLE_ASP, osmo_ss7_pointcode_print(), osmo_ss7_asp::proto, osmo_ss7_asp::role, SUA_IEI_AFFECTED_PC, SUA_IEI_INFO_STRING, SUA_IEI_USER_CAUSE, xua_msg_get_str(), xua_msg_get_u32(), and xua_snm_upu().
Referenced by m3ua_rx_snm_asp(), and sua_rx_snm_asp().
void xua_snm_rx_scon | ( | struct osmo_ss7_asp * | asp, |
struct osmo_ss7_as * | as, | ||
struct xua_msg * | xua | ||
) |
References xua_msg_part::dat, format_affected_pcs_c(), osmo_ss7_asp::inst, xua_msg_part::len, LOGPASP, M3UA_IEI_AFFECTED_PC, M3UA_IEI_CONC_DEST, M3UA_IEI_CONG_IND, M3UA_IEI_INFO_STRING, osmo_ss7_asp_get_log_subsys(), xua_msg_find_tag(), xua_msg_get_str(), xua_msg_get_u32p(), and xua_snm_scon().
Referenced by m3ua_rx_snm_asp().
struct osmo_xlm_prim * xua_xlm_prim_alloc | ( | enum osmo_xlm_prim_type | prim_type, |
enum osmo_prim_operation | op | ||
) |
References osmo_xlm_prim::oph, and XUA_SAP_LM.
Referenced by handle_rkey_dereg_resp(), handle_rkey_reg_resp(), lm_timer_cb(), m3ua_rx_mgmt_err(), m3ua_rx_mgmt_ntfy(), and xua_asp_send_xlm_prim_simple().
|
extern |
Referenced by m3ua_rx_mgmt_err(), peer_send_error(), and sua_rx_mgmt_err().
|
extern |
|
extern |
|
extern |
|
extern |
|
extern |
|
extern |
Referenced by m3ua_rx_mgmt_ntfy(), and sua_rx_mgmt_ntfy().
|
extern |
Referenced by m3ua_rx_mgmt_ntfy(), and sua_rx_mgmt_ntfy().
|
extern |
Referenced by m3ua_rx_mgmt_ntfy(), and sua_rx_mgmt_ntfy().
|
extern |
Referenced by handle_rkey_dereg_resp().
|
extern |
Referenced by handle_rkey_reg_resp().
|
extern |
Referenced by gen_asp_timer_cmd_strs(), and ss7_asp_alloc().
|
extern |
Referenced by DEFUN_ATTR(), gen_asp_timer_cmd_strs(), ss7_asp_lm_timer_name(), and write_asp_timers().
|
extern |
Referenced by osmo_ss7_asp_use_default_lm(), and osmo_ss7_init().
libosmo-sigtran 2.0.0.52-6412
Osmocom SIGTRAN library
|
#include <ss7_xua_srv.h>
Data Fields | |
struct llist_head | list |
struct osmo_ss7_instance * | inst |
struct llist_head | asp_list |
struct osmo_stream_srv_link * | server |
struct { | |
bool accept_dyn_reg | |
struct osmo_ss7_asp_peer local | |
enum osmo_ss7_asp_protocol proto | |
struct { | |
bool num_ostreams_present | |
bool max_instreams_present | |
uint16_t num_ostreams_value | |
uint16_t max_instreams_value | |
} sctp_init | |
int trans_proto | |
The underlaying transport protocol (one of IPPROTO_*) More... | |
} | cfg |
bool osmo_xua_server::accept_dyn_reg |
Referenced by DEFUN_ATTR(), write_one_xua(), and xua_accept_cb().
struct llist_head osmo_xua_server::asp_list |
Referenced by ss7_xua_server_create2(), ss7_xua_server_destroy(), and xua_accept_cb().
struct { ... } osmo_xua_server::cfg |
Referenced by _show_cs7_xua(), DEFUN_ATTR(), osmo_sccp_simple_server_add_clnt(), ss7_xua_server_add_local_host(), ss7_xua_server_bind(), ss7_xua_server_create2(), ss7_xua_server_del_local_host(), ss7_xua_server_find2(), ss7_xua_server_set_default_local_hosts(), ss7_xua_server_set_local_hosts(), vty_dump_xua_server(), write_one_xua(), and xua_accept_cb().
struct osmo_ss7_instance* osmo_xua_server::inst |
struct llist_head osmo_xua_server::list |
Referenced by _show_cs7_xua(), ss7_xua_server_create2(), ss7_xua_server_destroy(), ss7_xua_server_find2(), and write_one_cs7().
struct osmo_ss7_asp_peer osmo_xua_server::local |
Referenced by _show_cs7_xua(), osmo_sccp_simple_server_add_clnt(), ss7_xua_server_add_local_host(), ss7_xua_server_bind(), ss7_xua_server_create2(), ss7_xua_server_del_local_host(), ss7_xua_server_find2(), ss7_xua_server_set_default_local_hosts(), ss7_xua_server_set_local_hosts(), vty_dump_xua_server(), write_one_xua(), and xua_accept_cb().
bool osmo_xua_server::max_instreams_present |
Referenced by DEFUN_ATTR(), ss7_xua_server_bind(), and write_one_xua().
uint16_t osmo_xua_server::max_instreams_value |
Referenced by DEFUN_ATTR(), ss7_xua_server_bind(), and write_one_xua().
bool osmo_xua_server::num_ostreams_present |
Referenced by DEFUN_ATTR(), ss7_xua_server_bind(), and write_one_xua().
uint16_t osmo_xua_server::num_ostreams_value |
Referenced by DEFUN_ATTR(), ss7_xua_server_bind(), and write_one_xua().
enum osmo_ss7_asp_protocol osmo_xua_server::proto |
struct { ... } osmo_xua_server::sctp_init |
Referenced by DEFUN_ATTR(), ss7_xua_server_bind(), and write_one_xua().
struct osmo_stream_srv_link* osmo_xua_server::server |
int osmo_xua_server::trans_proto |
The underlaying transport protocol (one of IPPROTO_*)
Referenced by _show_cs7_xua(), DEFUN(), DEFUN_ATTR(), osmo_sccp_simple_server_add_clnt(), osmo_sccp_simple_server_on_ss7_id(), ss7_xua_server_create(), ss7_xua_server_create2(), ss7_xua_server_find(), ss7_xua_server_find2(), vty_dump_xua_server(), write_one_xua(), and xua_accept_cb().
libosmo-sigtran 2.0.0.52-6412
Osmocom SIGTRAN library
|
Go to the source code of this file.
Enumerations | |
enum | xua_as_state { XUA_AS_S_DOWN , XUA_AS_S_INACTIVE , XUA_AS_S_ACTIVE , XUA_AS_S_PENDING } |
enum | xua_as_event { XUA_ASPAS_ASP_INACTIVE_IND , XUA_ASPAS_ASP_DOWN_IND , XUA_ASPAS_ASP_ACTIVE_IND , XUA_AS_E_RECOVERY_EXPD , XUA_AS_E_TRANSFER_REQ } |
Functions | |
struct osmo_fsm_inst * | xua_as_fsm_start (struct osmo_ss7_as *as, int log_level) |
Start an AS FSM for a given Application Server. More... | |
Variables | |
struct osmo_fsm | xua_as_fsm |
enum xua_as_event |
enum xua_as_state |
struct osmo_fsm_inst * xua_as_fsm_start | ( | struct osmo_ss7_as * | as, |
int | log_level | ||
) |
Start an AS FSM for a given Application Server.
[in] | as | Application Server for which to start the AS FSM |
[in] | log_level | Logging level for logging of this FSM |
References xua_as_fsm_priv::as, osmo_ss7_as::cfg, osmo_ss7_as::name, xua_as_fsm_priv::queued_msgs, xua_as_fsm_priv::recovery, xua_as_fsm_priv::t_r, t_r_callback(), and xua_as_fsm.
Referenced by ss7_as_alloc().
|
extern |
Referenced by osmo_ss7_init(), and xua_as_fsm_start().
libosmo-sigtran 2.0.0.52-6412
Osmocom SIGTRAN library
|
libosmo-sigtran 2.0.0.52-6412
Osmocom SIGTRAN library
|
libosmo-sigtran 2.0.0.52-6412
Osmocom SIGTRAN library
|
libosmo-sigtran 2.0.0.52-6412
Osmocom SIGTRAN library
|
#include <xua_msg.h>
Data Fields | |
struct llist_head | entry |
uint16_t | tag |
uint16_t | len |
uint8_t * | dat |
uint8_t* xua_msg_part::dat |
Referenced by data_hdr_from_m3ua(), format_affected_pcs_c(), ipa_tx_xua_as(), m3ua_decode_notify(), m3ua_gen_error_msg(), m3ua_rx_rkm_dereg_req(), m3ua_to_xfer_ind(), m3ua_xfer_from_data(), sccp_add_long_variable_part(), sccp_add_variable_part(), sccp_msg_add_sua_opt(), sclc_rx_cldr(), sclc_rx_cldt(), scrc_rx_mtp_xfer_ind_xua(), scu_gen_encode_and_send(), sua_addr_parse_part(), xua_asp_fsm_inactive(), xua_from_nested(), xua_msg_add_data(), xua_msg_copy_part(), xua_msg_dump(), xua_msg_part_get_str(), xua_msg_part_get_u32(), xua_snm_rx_daud(), xua_snm_rx_dava(), xua_snm_rx_duna(), xua_snm_rx_scon(), and xua_to_msg().
struct llist_head xua_msg_part::entry |
Referenced by m3ua_xfer_from_data(), xua_ies_to_sccp_opts(), xua_msg_add_data(), xua_msg_find_tag(), and xua_msg_free_tag().
uint16_t xua_msg_part::len |
Referenced by format_affected_pcs_c(), ipa_tx_xua_as(), m3ua_decode_notify(), m3ua_gen_error_msg(), m3ua_rx_rkm_dereg_req(), m3ua_rx_rkm_dereg_rsp(), m3ua_rx_rkm_reg_rsp(), m3ua_rx_snm(), m3ua_rx_xfer(), m3ua_to_xfer_ind(), m3ua_xfer_from_data(), sccp_add_long_variable_part(), sccp_add_variable_part(), sccp_msg_add_sua_opt(), sclc_rx_cldr(), sclc_rx_cldt(), scu_gen_encode_and_send(), sua_addr_parse_part(), xua_asp_fsm_inactive(), xua_from_nested(), xua_msg_add_data(), xua_msg_copy_part(), xua_msg_dump(), xua_msg_get_len(), xua_msg_part_get_str(), xua_msg_part_get_u32(), xua_snm_rx_daud(), xua_snm_rx_dava(), xua_snm_rx_duna(), xua_snm_rx_scon(), and xua_to_msg().
uint16_t xua_msg_part::tag |
libosmo-sigtran 2.0.0.52-6412
Osmocom SIGTRAN library
|
#include <sccp_sap.h>
Data Fields | |
struct osmo_prim_hdr | oph |
union { | |
struct osmo_scu_connect_param connect | |
struct osmo_scu_data_param data | |
struct osmo_scu_disconn_param disconnect | |
struct osmo_scu_reset_param reset | |
struct osmo_scu_unitdata_param unitdata | |
struct osmo_scu_notice_param notice | |
struct osmo_scu_state_param state | |
struct osmo_scu_pcstate_param pcstate | |
} | u |
struct osmo_scu_connect_param osmo_scu_prim::connect |
struct osmo_scu_data_param osmo_scu_prim::data |
Referenced by osmo_sccp_tx_data(), scu_gen_encode_and_send(), and scu_prim_conn_id().
struct osmo_scu_disconn_param osmo_scu_prim::disconnect |
struct osmo_scu_notice_param osmo_scu_prim::notice |
Referenced by sclc_rx_cldr().
struct osmo_prim_hdr osmo_scu_prim::oph |
Referenced by osmo_sccp_tx_conn_req(), osmo_sccp_tx_conn_resp_msg(), osmo_sccp_tx_data(), osmo_sccp_tx_disconn_data(), osmo_sccp_tx_unitdata(), osmo_sccp_user_sap_down(), osmo_sccp_user_sap_down_nofree(), sccp_lbcs_local_bcast_pcstate(), sccp_lbcs_local_bcast_state(), sccp_sclc_user_sap_down(), sccp_sclc_user_sap_down_nofree(), sccp_scmg_tx(), sccp_user_prim_up(), sclc_rx_cldr(), sclc_rx_cldt(), scmg_prim_cb(), scu_gen_encode_and_send(), scu_prim_alloc(), scu_prim_conn_id(), xua_drop_data_check_drop(), xua_gen_msg_cl(), xua_gen_msg_co(), xua_gen_relre(), xua_opt_data_cache_keep(), and xua_opt_data_length_lim().
struct osmo_scu_pcstate_param osmo_scu_prim::pcstate |
Referenced by sccp_lbcs_local_bcast_pcstate().
struct osmo_scu_reset_param osmo_scu_prim::reset |
Referenced by scu_prim_conn_id().
struct osmo_scu_state_param osmo_scu_prim::state |
Referenced by sccp_lbcs_local_bcast_state().
union { ... } osmo_scu_prim::u |
Referenced by osmo_sccp_tx_conn_req(), osmo_sccp_tx_conn_resp_msg(), osmo_sccp_tx_data(), osmo_sccp_tx_disconn_data(), osmo_sccp_tx_unitdata(), osmo_sccp_user_sap_down_nofree(), sccp_lbcs_local_bcast_pcstate(), sccp_lbcs_local_bcast_state(), sccp_scmg_tx(), sclc_rx_cldr(), sclc_rx_cldt(), scmg_prim_cb(), scoc_fsm_conn_pend_out(), scoc_fsm_idle(), scu_gen_encode_and_send(), scu_prim_conn_id(), xua_gen_msg_cl(), and xua_gen_msg_co().
struct osmo_scu_unitdata_param osmo_scu_prim::unitdata |
Referenced by osmo_sccp_tx_unitdata(), sccp_scmg_tx(), sclc_rx_cldt(), scmg_prim_cb(), and xua_gen_msg_cl().
libosmo-sigtran 2.0.0.52-6412
Osmocom SIGTRAN library
|
libosmo-sigtran 2.0.0.52-6412
Osmocom SIGTRAN library
|
#include <sccp_sap.h>
Data Fields | |
uint32_t | affected_pc |
uint32_t | affected_ssn |
bool | user_in_service |
uint32_t | ssn_multiplicity_ind |
uint32_t osmo_scu_state_param::affected_pc |
Referenced by sccp_scmg_rx_ssn_allowed(), and sccp_scmg_rx_ssn_prohibited().
uint32_t osmo_scu_state_param::affected_ssn |
uint32_t osmo_scu_state_param::ssn_multiplicity_ind |
bool osmo_scu_state_param::user_in_service |
libosmo-sigtran 2.0.0.52-6412
Osmocom SIGTRAN library
|
libosmo-sigtran 2.0.0.52-6412
Osmocom SIGTRAN library
|