libosmo-sigtran  1.4.0
Osmocom SIGTRAN library
xua_as_fsm.h
Go to the documentation of this file.
1 #pragma once
2 
3 struct osmo_ss7_as;
4 
10 };
11 
18 };
19 
20 extern struct osmo_fsm xua_as_fsm;
21 
22 struct osmo_fsm_inst *xua_as_fsm_start(struct osmo_ss7_as *as, int log_level);
osmo_scu_prim::data
struct osmo_scu_data_param data
Definition: sccp_sap.h:264
osmo_sccp_addr_cmp
int osmo_sccp_addr_cmp(const struct osmo_sccp_addr *a, const struct osmo_sccp_addr *b, uint32_t presence_criteria)
Compare two SCCP addresses by given presence criteria.
Definition: sccp_user.c:356
osmo_ss7_user::prim_cb
osmo_prim_cb prim_cb
Definition: osmo_ss7.h:130
S_CONN_PEND_IN
@ S_CONN_PEND_IN
Definition: sccp_scoc.c:128
msg_class_cl
static const struct xua_msg_class msg_class_cl
Definition: sua.c:134
osmo_sccp_instance::ss7
struct osmo_ss7_instance * ss7
Definition: sccp_internal.h:53
osmo_ss7_instance_find
struct osmo_ss7_instance * osmo_ss7_instance_find(uint32_t id)
Find a SS7 Instance with given ID.
Definition: osmo_ss7.c:342
scmg_prim_cb
static int scmg_prim_cb(struct osmo_prim_hdr *oph, void *_scu)
Definition: sccp_scmg.c:272
osmo_sccp_instance
Definition: sccp_internal.h:42
SCOC_E_T_IAS_EXP
@ SCOC_E_T_IAS_EXP
Definition: sccp_scoc.c:160
osmo_mtp_transfer_param::dpc
uint32_t dpc
Definition: mtp_sap.h:38
S_RESET_OUT
@ S_RESET_OUT
Definition: sccp_scoc.c:133
scoc_fsm_disconn_pend
static void scoc_fsm_disconn_pend(struct osmo_fsm_inst *fi, uint32_t event, void *data)
Definition: sccp_scoc.c:1161
osmo_ss7_instance::network_indicator
uint8_t network_indicator
Definition: osmo_ss7.h:100
OSMO_SCCP_SSN_VLR
@ OSMO_SCCP_SSN_VLR
Definition: sccp_sap.h:113
OSMO_SCCP_TIMER_IAS
@ OSMO_SCCP_TIMER_IAS
Definition: sccp_internal.h:14
osmo_sccp_get_sccp
struct osmo_sccp_instance * osmo_sccp_get_sccp(const struct osmo_sccp_user *scu)
get the SCCP instance that is related to the given sccp user
Definition: sccp_user.c:823
scrc_rx_mtp_xfer_ind_xua
int scrc_rx_mtp_xfer_ind_xua(struct osmo_sccp_instance *inst, struct xua_msg *xua)
Definition: sccp_scrc.c:445
smi
uint8_t smi
Definition: sccp_scmg.h:5
SUA_IEI_DEREG_RESULT
#define SUA_IEI_DEREG_RESULT
Definition: sua.h:93
resre_mand_ies
static const uint16_t resre_mand_ies[]
Definition: sua.c:168
xua_parameter_hdr
Definition: xua_types.h:41
SCOC_E_RCOC_CREF_IND
@ SCOC_E_RCOC_CREF_IND
Definition: sccp_scoc.c:150
cause_map_cref
static const uint8_t cause_map_cref[]
Definition: sccp_scoc.c:1298
osmo_sccp_simple_client_on_ss7_id
struct osmo_sccp_instance * osmo_sccp_simple_client_on_ss7_id(void *ctx, uint32_t ss7_id, const char *name, uint32_t default_pc, enum osmo_ss7_asp_protocol prot, int default_local_port, const char *default_local_ip, int default_remote_port, const char *default_remote_ip)
request an sccp client instance
Definition: sccp_user.c:485
OSMO_SCCP_SSN_ISUP
@ OSMO_SCCP_SSN_ISUP
Definition: sccp_sap.h:109
SUA_CO_COAK
#define SUA_CO_COAK
Definition: sua.h:71
osmo_ss7_asp::proto
enum osmo_ss7_asp_protocol proto
Definition: osmo_ss7.h:420
OSMO_XLM_PRIM_M_ASP_STATUS
@ OSMO_XLM_PRIM_M_ASP_STATUS
Definition: sigtran_sap.h:18
osmo_sccp_timer_val_name
static const char * osmo_sccp_timer_val_name(const struct osmo_sccp_timer_val *val)
Definition: sccp_vty.c:168
core_mand_ies
static const uint16_t core_mand_ies[]
Definition: sua.c:150
CS7_STR
#define CS7_STR
Definition: xua_internal.h:83
osmo_sccp_local_addr_by_instance
void osmo_sccp_local_addr_by_instance(struct osmo_sccp_addr *dest_addr, const struct osmo_sccp_instance *inst, uint32_t ssn)
derive a basic local SCCP-Address from a given SCCP instance.
Definition: sccp_user.c:271
xua_as_fsm
struct osmo_fsm xua_as_fsm
Definition: xua_as_fsm.c:504
sccp_scmg_msg::smi
uint8_t smi
Definition: sccp_scmg.h:18
xua_common_hdr::data
uint8_t data[0]
Definition: xua_types.h:37
osmo_xlm_prim_notify::status_info
uint16_t status_info
Definition: sigtran_sap.h:40
sccp_scmg_rx_ssn_prohibited
void sccp_scmg_rx_ssn_prohibited(struct osmo_sccp_instance *inst, uint32_t dpc, uint32_t ssn, uint32_t smi)
Definition: sccp_scmg.c:58
osmo_ss7_route::as
struct osmo_ss7_as * as
pointer to Application Server
Definition: osmo_ss7.h:217
OSMO_SCU_PRIM_N_DISCONNECT
@ OSMO_SCU_PRIM_N_DISCONNECT
Definition: sccp_sap.h:37
sccp_connection::t_conn
struct osmo_timer_list t_conn
Definition: sccp_scoc.c:110
OSMO_XLM_PRIM_M_SCTP_RELEASE
@ OSMO_XLM_PRIM_M_SCTP_RELEASE
Definition: sigtran_sap.h:15
mtp_unavail_cause
mtp_unavail_cause
Definition: mtp.h:28
osmo_ss7_as
Definition: osmo_ss7.h:298
osmo_xlm_prim_notify::info_string
char * info_string
Definition: sigtran_sap.h:43
SCOC_E_SCU_N_DISC_REQ
@ SCOC_E_SCU_N_DISC_REQ
Definition: sccp_scoc.c:141
sccp_connection::t_iar
struct osmo_timer_list t_iar
Definition: sccp_scoc.c:114
osmo_sccp_user::priv
void * priv
Definition: sccp_internal.h:78
osmo_sccp_timer_names
const struct value_string osmo_sccp_timer_names[]
Definition: sccp_scoc.c:233
msg_type
uint8_t msg_type
Definition: sccp_scmg.h:2
OSMO_SCCP_SSN_GMLC_MAP
@ OSMO_SCCP_SSN_GMLC_MAP
Definition: sccp_sap.h:125
check_any_other_asp_not_down
static bool check_any_other_asp_not_down(struct osmo_ss7_as *as, struct osmo_ss7_asp *asp_cmp)
Definition: xua_as_fsm.c:206
conn_restart_rx_inact_timer
static void conn_restart_rx_inact_timer(struct sccp_connection *conn)
Definition: sccp_scoc.c:384
sccp_scoc_show_connections
void sccp_scoc_show_connections(struct vty *vty, struct osmo_sccp_instance *inst)
Definition: sccp_scoc.c:1821
osmo_ss7_asp_peer_set_hosts
int osmo_ss7_asp_peer_set_hosts(struct osmo_ss7_asp_peer *peer, void *talloc_ctx, const char *const *hosts, size_t host_cnt)
Set (copy) addresses for a given ASP peer.
Definition: osmo_ss7.c:1130
osmo_ss7_instance::cfg
struct osmo_ss7_instance::@20 cfg
conn_stop_release_timers
static void conn_stop_release_timers(struct sccp_connection *conn)
Definition: sccp_scoc.c:422
OSMO_SCU_PRIM_N_UNITDATA
@ OSMO_SCU_PRIM_N_UNITDATA
Definition: sccp_sap.h:41
osmo_ss7_as::simple_client_allocated
bool simple_client_allocated
Were we allocated by "simple client" support?
Definition: osmo_ss7.h:310
xua_as_transmit_msg_broadcast
int xua_as_transmit_msg_broadcast(struct osmo_ss7_as *as, struct msgb *msg)
Definition: xua_as_fsm.c:131
xua_as_fsm_priv::recovery
struct xua_as_fsm_priv::@33 recovery
M3UA_NOTIFY_T_STATCHG
#define M3UA_NOTIFY_T_STATCHG
Definition: m3ua.h:107
SUA_IEI_DRN
#define SUA_IEI_DRN
Definition: sua.h:111
OSMO_SS7_ASP_PROT_IPA
@ OSMO_SS7_ASP_PROT_IPA
Definition: osmo_ss7.h:279
sccp_connection::user
struct osmo_sccp_user * user
Definition: sccp_scoc.c:80
sccp_connection::t_rep_rel
struct osmo_timer_list t_rep_rel
Definition: sccp_scoc.c:119
XUA_AS_E_TRANSFER_REQ
@ XUA_AS_E_TRANSFER_REQ
Definition: xua_as_fsm.h:17
XUA_ASPAS_ASP_ACTIVE_IND
@ XUA_ASPAS_ASP_ACTIVE_IND
Definition: xua_as_fsm.h:15
osmo_sccp_gti_names
const struct value_string osmo_sccp_gti_names[]
Definition: sccp_sap.c:99
osmo_ss7_as::fi
struct osmo_fsm_inst * fi
AS FSM.
Definition: osmo_ss7.h:304
osmo_sccp_user::name
char * name
human-readable name of this user
Definition: sccp_internal.h:67
SUA_CO_RELCO
#define SUA_CO_RELCO
Definition: sua.h:74
SUA_ERR_INVAL_STREAM_ID
#define SUA_ERR_INVAL_STREAM_ID
Definition: sua.h:147
SUA_CL_CLDR
#define SUA_CL_CLDR
Definition: sua.h:68
tx_coerr_from_xua
static void tx_coerr_from_xua(struct osmo_sccp_instance *inst, struct xua_msg *in, uint32_t err_cause)
Definition: sccp_scoc.c:1416
sua_tx_xua_as
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.
Definition: sua.c:302
osmo_scu_notice_param
Definition: sccp_sap.h:236
osmo_scu_prim::state
struct osmo_scu_state_param state
Definition: sccp_sap.h:269
osmo_ss7_xua_server_bind
int osmo_ss7_xua_server_bind(struct osmo_xua_server *xs)
Set the xUA server to bind/listen to the currently configured ip/port.
Definition: osmo_ss7.c:2098
OSMO_SCU_PRIM_N_NOTICE
@ OSMO_SCU_PRIM_N_NOTICE
Definition: sccp_sap.h:42
SUA_CO_COREF
#define SUA_CO_COREF
Definition: sua.h:72
osmo_sccp_user
Definition: sccp_internal.h:61
m3ua_msg_class_snm
const struct xua_msg_class m3ua_msg_class_snm
Definition: m3ua.c:175
osmo_sccp_addr
Definition: sccp_sap.h:170
XUA_ASP_E_ASPSM_BEAT
@ XUA_ASP_E_ASPSM_BEAT
Definition: xua_asp_fsm.h:28
osmo_ss7_route_create
struct osmo_ss7_route * osmo_ss7_route_create(struct osmo_ss7_route_table *rtbl, uint32_t dpc, uint32_t mask, const char *linkset_name)
Create a new route in the given routing table.
Definition: osmo_ss7.c:771
OSMO_SCCP_GTI_TT_NPL_ENC_NAI
@ OSMO_SCCP_GTI_TT_NPL_ENC_NAI
Definition: sccp_sap.h:75
SCCP_SCMG_MSGT_SSA
@ SCCP_SCMG_MSGT_SSA
Definition: sccp_scmg.h:6
M3UA_NOTIFY_I_AS_INACT
#define M3UA_NOTIFY_I_AS_INACT
Definition: m3ua.h:111
conn_find_by_id
static struct sccp_connection * conn_find_by_id(struct osmo_sccp_instance *inst, uint32_t id)
Definition: sccp_scoc.c:448
sua_aspxm_map
static const struct xua_msg_event_map sua_aspxm_map[]
Definition: sua.c:634
sccp_lbcs_local_bcast_state
void sccp_lbcs_local_bcast_state(struct osmo_sccp_instance *inst, const struct osmo_scu_state_param *state)
Definition: sccp_lbcs.c:55
osmo_sccp_user::ssn
uint16_t ssn
SSN and/or point code to which we are bound.
Definition: sccp_internal.h:70
osmo_scu_unitdata_param::in_sequence_control
uint32_t in_sequence_control
Definition: sccp_sap.h:229
SUA_CO_CODT
#define SUA_CO_CODT
Definition: sua.h:77
sua_encode_dupu
static struct xua_msg * sua_encode_dupu(const uint32_t *rctx, unsigned int num_rctx, uint32_t dpc, uint16_t user, uint16_t cause, const char *info_string)
Definition: sua.c:827
sccp_sclc_user_sap_down_nofree
int sccp_sclc_user_sap_down_nofree(struct osmo_sccp_user *scu, struct osmo_prim_hdr *oph)
Main entrance function for primitives from SCCP User.
Definition: sccp_sclc.c:123
sccp_connection
Definition: sccp_scoc.c:72
osmo_scu_notice_param::importance
uint32_t importance
Definition: sccp_sap.h:240
scoc_fsm_active
static void scoc_fsm_active(struct osmo_fsm_inst *fi, uint32_t event, void *data)
Definition: sccp_scoc.c:1034
osmo_sccp_addr::pc
uint32_t pc
Definition: sccp_sap.h:174
osmo_scu_connect_param::importance
uint32_t importance
Definition: sccp_sap.h:190
osmo_scu_data_param::conn_id
uint32_t conn_id
Definition: sccp_sap.h:197
osmo_scu_prim_name
char * osmo_scu_prim_name(struct osmo_prim_hdr *oph)
Definition: sccp_sap.c:46
OSMO_SCCP_ADDR_T_PC
#define OSMO_SCCP_ADDR_T_PC
Definition: sccp_sap.h:50
SUA_MGMT_ERR
#define SUA_MGMT_ERR
Definition: sua.h:40
osmo_sccp_gt::npi
uint32_t npi
Definition: sccp_sap.h:165
DEFUN
DEFUN(show_sccp_users, show_sccp_users_cmd, "show cs7 instance <0-15> sccp users", SHOW_STR CS7_STR INST_STR INST_STR SCCP_STR "Show List of SCCP Users registered\n")
Definition: sccp_vty.c:55
SUA_IEI_ROUTE_CTX
#define SUA_IEI_ROUTE_CTX
Definition: sua.h:83
S_IDLE
@ S_IDLE
Definition: sccp_scoc.c:127
sccp_scrc_rx_sclc_msg
int sccp_scrc_rx_sclc_msg(struct osmo_sccp_instance *inst, struct xua_msg *xua)
Definition: sccp_scrc.c:418
sua_rx_mgmt_ntfy
static int sua_rx_mgmt_ntfy(struct osmo_ss7_asp *asp, struct xua_msg *xua)
Definition: sua.c:588
xua_as_fsm_priv::as
struct osmo_ss7_as * as
Definition: xua_as_fsm.c:198
OSMO_SCCP_SSN_SMLC_BSSAP
#define OSMO_SCCP_SSN_SMLC_BSSAP
Definition: sccp_sap.h:156
osmo_scu_connect_param
Definition: sccp_sap.h:184
osmo_ss7_user_unregister
int osmo_ss7_user_unregister(struct osmo_ss7_instance *inst, uint8_t service_ind, struct osmo_ss7_user *user)
Unregister a MTP user for a given service indicator.
Definition: osmo_ss7.c:485
osmo_sccp_timer_get
const struct osmo_sccp_timer_val * osmo_sccp_timer_get(const struct osmo_sccp_instance *inst, enum osmo_sccp_timer timer, bool default_if_unset)
Definition: sccp_scoc.c:297
OSMO_SCCP_TIMER_IAR
@ OSMO_SCCP_TIMER_IAR
Definition: sccp_internal.h:15
sccp_scrc_rx_scoc_conn_msg
int sccp_scrc_rx_scoc_conn_msg(struct osmo_sccp_instance *inst, struct xua_msg *xua)
Definition: sccp_scrc.c:396
osmo_scu_prim::pcstate
struct osmo_scu_pcstate_param pcstate
Definition: sccp_sap.h:270
osmo_scu_unitdata_param
Definition: sccp_sap.h:226
t_r_callback
static void t_r_callback(void *_fi)
Definition: xua_as_fsm.c:278
SUA_IEI_CONG_LEVEL
#define SUA_IEI_CONG_LEVEL
Definition: sua.h:119
SUA_ASPSM_UP_ACK
#define SUA_ASPSM_UP_ACK
Definition: sua.h:53
sua_to_msg
static struct msgb * sua_to_msg(struct xua_msg *xua)
Definition: sua.c:263
SCOC_E_RCOC_CC_IND
@ SCOC_E_RCOC_CC_IND
Definition: sccp_scoc.c:151
sccp_connection::fi
struct osmo_fsm_inst * fi
Definition: sccp_scoc.c:107
OSMO_SCU_PRIM_N_RESET
@ OSMO_SCU_PRIM_N_RESET
Definition: sccp_sap.h:38
SUA_ASPTM_ACTIVE
#define SUA_ASPTM_ACTIVE
Definition: sua.h:57
coerr_mand_ies
static const uint16_t coerr_mand_ies[]
Definition: sua.c:175
sccp_lbcs_local_bcast_state
void sccp_lbcs_local_bcast_state(struct osmo_sccp_instance *inst, const struct osmo_scu_state_param *state)
Definition: sccp_lbcs.c:55
osmo_ss7_instance::primary_pc
uint32_t primary_pc
Definition: osmo_ss7.h:97
dpc
uint32_t dpc
Definition: m3ua.h:3
as_notify_all_asp
static int as_notify_all_asp(struct osmo_ss7_as *as, struct osmo_xlm_prim_notify *npar)
Definition: xua_as_fsm.c:38
osmo_ss7_asp::simple_client_allocated
bool simple_client_allocated
Were we allocated by "simple client" support?
Definition: osmo_ss7.h:412
OSMO_SCU_PRIM_N_PCSTATE
@ OSMO_SCU_PRIM_N_PCSTATE
Definition: sccp_sap.h:46
OSMO_SCCP_SSN_SGSN_MAP
@ OSMO_SCCP_SSN_SGSN_MAP
Definition: sccp_sap.h:129
tx_relco_from_xua
static void tx_relco_from_xua(struct osmo_sccp_instance *inst, struct xua_msg *in)
Definition: sccp_scoc.c:1452
OSMO_SCU_PRIM_N_STATE
@ OSMO_SCU_PRIM_N_STATE
Definition: sccp_sap.h:45
encode_notify
static struct msgb * encode_notify(const struct osmo_xlm_prim_notify *npar)
Definition: xua_as_fsm.c:30
osmo_sccp_addr::presence
uint32_t presence
Definition: sccp_sap.h:171
S_RESET_IN
@ S_RESET_IN
Definition: sccp_scoc.c:132
sccp_scoc_flush_connections
void sccp_scoc_flush_connections(struct osmo_sccp_instance *inst)
Definition: sccp_scoc.c:1786
osmo_sccp_addr::v4
struct in_addr v4
Definition: sccp_sap.h:177
osmo_sccp_user_sap_down
int osmo_sccp_user_sap_down(struct osmo_sccp_user *scu, struct osmo_prim_hdr *oph)
Main entrance function for primitives from SCCP User.
Definition: sccp_scoc.c:1777
sccp_connection::importance
uint32_t importance
Definition: sccp_scoc.c:99
osmo_scu_disconn_param
Definition: sccp_sap.h:209
OSMO_SS7_ASP_PROT_M3UA
@ OSMO_SS7_ASP_PROT_M3UA
Definition: osmo_ss7.h:278
osmo_mtp_prim::u
union osmo_mtp_prim::@18 u
xua_snm_rx_daud
void xua_snm_rx_daud(struct osmo_ss7_asp *asp, struct xua_msg *xua)
Definition: xua_snm.c:261
osmo_scu_data_param
Definition: sccp_sap.h:196
notify_any_other_active_asp_as_inactive
static void notify_any_other_active_asp_as_inactive(struct osmo_ss7_as *as, struct osmo_ss7_asp *asp_cmp)
Definition: xua_as_fsm.c:247
SUA_IEI_DATA
#define SUA_IEI_DATA
Definition: sua.h:107
osmo_sccp_user::prim_cb
osmo_prim_cb prim_cb
Definition: sccp_internal.h:77
osmo_scu_unitdata_param::importance
uint32_t importance
Definition: sccp_sap.h:231
OSMO_SCCP_RI_NONE
@ OSMO_SCCP_RI_NONE
Definition: sccp_sap.h:58
osmo_ss7_asp_destroy
void osmo_ss7_asp_destroy(struct osmo_ss7_asp *asp)
Definition: osmo_ss7.c:1402
XUA_ASP_E_ASPTM_ASPIA
@ XUA_ASP_E_ASPTM_ASPIA
Definition: xua_asp_fsm.h:25
OSMO_SCCP_SSN_PCAP
@ OSMO_SCCP_SSN_PCAP
Definition: sccp_sap.h:132
osmo_sccp_user_name
const char * osmo_sccp_user_name(struct osmo_sccp_user *scu)
Compose a human readable string to describe the SCCP user's connection.
Definition: sccp_user.c:452
osmo_ss7_pointcode_print2
const char * osmo_ss7_pointcode_print2(const struct osmo_ss7_instance *inst, uint32_t pc)
Definition: osmo_ss7.c:295
osmo_scu_disconn_param::cause
uint32_t cause
Definition: sccp_sap.h:212
osmo_ss7_as_find_by_proto
struct osmo_ss7_as * osmo_ss7_as_find_by_proto(struct osmo_ss7_instance *inst, enum osmo_ss7_asp_protocol proto)
Find Application Server (AS) by given protocol.
Definition: osmo_ss7.c:920
m3ua_msg_class_rkm
const struct xua_msg_class m3ua_msg_class_rkm
Definition: m3ua.c:259
SUA_RI_SSN_PC
#define SUA_RI_SSN_PC
Definition: sua.h:129
sccp_scoc_rx_from_scrc
void sccp_scoc_rx_from_scrc(struct osmo_sccp_instance *inst, struct xua_msg *xua)
Main entrance function for primitives from the SCRC (Routing Control)
Definition: sccp_scoc.c:1620
xua_as_fsm_priv
Definition: xua_as_fsm.c:197
xua_dialect
Definition: xua_msg.h:55
SCCP_SCMG_MSGT_SST
@ SCCP_SCMG_MSGT_SST
Definition: sccp_scmg.h:8
sccp_internal.h
xua_as_fsm_down
static void xua_as_fsm_down(struct osmo_fsm_inst *fi, uint32_t event, void *data)
Definition: xua_as_fsm.c:284
sua_rx_mgmt_err
static int sua_rx_mgmt_err(struct osmo_ss7_asp *asp, struct xua_msg *xua)
Definition: sua.c:575
osmo_xlm_prim_name
char * osmo_xlm_prim_name(struct osmo_prim_hdr *oph)
Definition: sccp_sap.c:81
scmg_rx
static int scmg_rx(struct osmo_sccp_user *scu, const struct osmo_sccp_addr *calling_addr, const struct osmo_sccp_addr *called_addr, const struct sccp_scmg_msg *scmg)
Definition: sccp_scmg.c:250
OSMO_XLM_PRIM_M_RK_DEREG
@ OSMO_XLM_PRIM_M_RK_DEREG
Definition: sigtran_sap.h:31
SUA_ASPSM_BEAT_ACK
#define SUA_ASPSM_BEAT_ACK
Definition: sua.h:55
osmo_scu_state_param::affected_pc
uint32_t affected_pc
Definition: sccp_sap.h:246
osmo_scu_connect_param::sccp_class
uint32_t sccp_class
Definition: sccp_sap.h:189
osmo_scu_prim_names
const struct value_string osmo_scu_prim_names[]
Definition: sccp_sap.c:28
sua_tx_snm_available
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].
Definition: sua.c:859
sccp_scmg_msg
Definition: sccp_scmg.h:14
osmo_ss7_asp_restart
int osmo_ss7_asp_restart(struct osmo_ss7_asp *asp)
Definition: osmo_ss7.c:1438
OSMO_SCCP_SSN_RES_INTL
@ OSMO_SCCP_SSN_RES_INTL
Definition: sccp_sap.h:119
osmo_ss7_user::priv
void * priv
Definition: osmo_ss7.h:132
SUA_IEI_SRC_ADDR
#define SUA_IEI_SRC_ADDR
Definition: sua.h:98
M3UA_NOTIFY_I_OT_ALT_ASP_ACT
#define M3UA_NOTIFY_I_OT_ALT_ASP_ACT
Definition: m3ua.h:116
osmo_xlm_prim_notify
Definition: sigtran_sap.h:37
SUA_CAUSE_T_RELEASE
#define SUA_CAUSE_T_RELEASE
Definition: sua.h:136
xua_as_fsm_priv::queued_msgs
struct llist_head queued_msgs
Definition: xua_as_fsm.c:201
SUA_RI_GT
#define SUA_RI_GT
Definition: sua.h:128
SUA_IEI_IPv6
#define SUA_IEI_IPv6
Definition: sua.h:126
xua_as_fsm_active
static void xua_as_fsm_active(struct osmo_fsm_inst *fi, uint32_t event, void *data)
Definition: xua_as_fsm.c:377
scu_scoc_event_map
static const struct osmo_prim_event_map scu_scoc_event_map[]
Definition: sccp_scoc.c:214
SCCP_SCMG_MSGT_SSC
@ SCCP_SCMG_MSGT_SSC
Definition: sccp_scmg.h:11
osmo_scu_reset_param::conn_id
uint32_t conn_id
Definition: sccp_sap.h:222
OSMO_SCCP_SSN_RANAP
@ OSMO_SCCP_SSN_RANAP
Definition: sccp_sap.h:123
SCOC_E_RCOC_REL_COMPL_IND
@ SCOC_E_RCOC_REL_COMPL_IND
Definition: sccp_scoc.c:149
osmo_ss7_routing_key::pc
uint32_t pc
Definition: osmo_ss7.h:255
SCOC_E_RCOC_ERROR_IND
@ SCOC_E_RCOC_ERROR_IND
Definition: sccp_scoc.c:156
osmo_ss7_as::mode
enum osmo_ss7_as_traffic_mode mode
Definition: osmo_ss7.h:317
XUA_ASP_S_INACTIVE
@ XUA_ASP_S_INACTIVE
Definition: xua_asp_fsm.h:5
sua_gen_error_msg
static struct xua_msg * sua_gen_error_msg(uint32_t err_code, struct msgb *msg)
Definition: sua.c:246
sua_parse_gt
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.
Definition: sua.c:334
osmo_sccp_pnc_names
const struct value_string osmo_sccp_pnc_names[]
Definition: sccp_types.c:29
SUA_IEI_HOST
#define SUA_IEI_HOST
Definition: sua.h:125
osmo_xua_server
Definition: osmo_ss7.h:485
scmg_rx_ssa
static int scmg_rx_ssa(struct osmo_sccp_user *scu, const struct osmo_sccp_addr *calling_addr, const struct osmo_sccp_addr *called_addr, const struct sccp_scmg_msg *ssa)
Definition: sccp_scmg.c:204
scu_prim_conn_id
static uint32_t scu_prim_conn_id(const struct osmo_scu_prim *prim)
Definition: sccp_scoc.c:1699
OSMO_SCCP_SSN_MGMT
@ OSMO_SCCP_SSN_MGMT
Definition: sccp_sap.h:108
MTP_SAP_USER
@ MTP_SAP_USER
Definition: sigtran_sap.h:10
coref_mand_ies
static const uint16_t coref_mand_ies[]
Definition: sua.c:158
xua_msg_get_u32
uint32_t xua_msg_get_u32(const struct xua_msg *xua, uint16_t iei)
Definition: xua_msg.c:292
get_cref_cause_for_ret
static uint8_t get_cref_cause_for_ret(uint8_t ret_cause)
Definition: sccp_scoc.c:1313
osmo_ss7_asp::local
struct osmo_ss7_asp_peer local
Definition: osmo_ss7.h:426
osmo_mtp_prim::oph
struct osmo_prim_hdr oph
Definition: mtp_sap.h:57
OSMO_SCU_PRIM_N_COORD
@ OSMO_SCU_PRIM_N_COORD
Definition: sccp_sap.h:44
SUA_IEI_USER_CAUSE
#define SUA_IEI_USER_CAUSE
Definition: sua.h:108
conn_destroy
static void conn_destroy(struct sccp_connection *conn)
Definition: sccp_scoc.c:510
osmo_ss7_asp_send
int osmo_ss7_asp_send(struct osmo_ss7_asp *asp, struct msgb *msg)
send a fully encoded msgb via a given ASP
Definition: osmo_ss7.c:1974
osmo_scu_prim::connect
struct osmo_scu_connect_param connect
Definition: sccp_sap.h:263
xua_as_fsm.h
osmo_ss7_user_mtp_xfer_req
int osmo_ss7_user_mtp_xfer_req(struct osmo_ss7_instance *inst, struct osmo_mtp_prim *omp)
Definition: osmo_ss7_hmrt.c:284
rel_tmr_cb
static void rel_tmr_cb(void *data)
Definition: sccp_scoc.c:350
xua_as_fsm_start
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.
Definition: xua_as_fsm.c:517
sigtran_sap.h
scrc_node_4
static int scrc_node_4(struct osmo_sccp_instance *inst, struct xua_msg *xua, uint32_t return_cause)
Definition: sccp_scrc.c:248
sua_rx_snm
static int sua_rx_snm(struct osmo_ss7_asp *asp, struct xua_msg *xua)
Definition: sua.c:936
xua_msg_part::dat
uint8_t * dat
Definition: xua_msg.h:43
osmo_sccp_timer_val
Definition: sccp_internal.h:26
conn_start_rep_rel_timer
static void conn_start_rep_rel_timer(struct sccp_connection *conn)
Definition: sccp_scoc.c:410
osmo_scu_connect_param::calling_addr
struct osmo_sccp_addr calling_addr
Definition: sccp_sap.h:186
osmo_ss7_as_add_asp
int osmo_ss7_as_add_asp(struct osmo_ss7_as *as, const char *asp_name)
Add given ASP to given AS.
Definition: osmo_ss7.c:988
LLIST_HEAD
static LLIST_HEAD(sccp_instances)
osmo_ss7_asp::inst
struct osmo_ss7_instance * inst
Definition: osmo_ss7.h:385
XUA_ASP_E_ASPSM_ASPDN_ACK
@ XUA_ASP_E_ASPSM_ASPDN_ACK
Definition: xua_asp_fsm.h:24
osmo_ss7_asp_protocol
osmo_ss7_asp_protocol
Definition: osmo_ss7.h:275
osmo_ss7_as::cfg
struct osmo_ss7_as::@25 cfg
SUA_CL_CLDT
#define SUA_CL_CLDT
Definition: sua.h:67
S_WAIT_CONN_CONF
@ S_WAIT_CONN_CONF
Definition: sccp_scoc.c:135
OSMO_SCCP_ORIG_UNDEFINED
@ OSMO_SCCP_ORIG_UNDEFINED
Definition: sccp_sap.h:205
osmo_scu_data_param::importance
uint32_t importance
Definition: sccp_sap.h:198
OSMO_SS7_ASP_ROLE_SG
@ OSMO_SS7_ASP_ROLE_SG
Definition: osmo_ss7.h:376
xua_from_msg
struct xua_msg * xua_from_msg(const int version, uint16_t len, uint8_t *data)
Definition: xua_msg.c:151
XUA_AS_E_RECOVERY_EXPD
@ XUA_AS_E_RECOVERY_EXPD
Definition: xua_as_fsm.h:16
osmo_sccp_timer_val::s
uint32_t s
Definition: sccp_internal.h:27
OSMO_SCCP_TIMER_REASSEMBLY
@ OSMO_SCCP_TIMER_REASSEMBLY
Definition: sccp_internal.h:21
xua_common_hdr::version
uint8_t version
Definition: xua_types.h:32
OSMO_XLM_PRIM_M_NOTIFY
@ OSMO_XLM_PRIM_M_NOTIFY
Definition: sigtran_sap.h:20
OSMO_SCCP_SSN_EIR
@ OSMO_SCCP_SSN_EIR
Definition: sccp_sap.h:115
xua_as_state
xua_as_state
Definition: xua_as_fsm.h:5
SUA_IEI_IMPORTANCE
#define SUA_IEI_IMPORTANCE
Definition: sua.h:114
SCOC_E_RCOC_IT_IND
@ SCOC_E_RCOC_IT_IND
Definition: sccp_scoc.c:154
osmo_sccp_user_get_priv
void * osmo_sccp_user_get_priv(struct osmo_sccp_user *scu)
Definition: sccp_user.c:163
osmo_scu_disconn_param::importance
uint32_t importance
Definition: sccp_sap.h:214
sua_tx_xua_asp
static int sua_tx_xua_asp(struct osmo_ss7_asp *asp, struct xua_msg *xua)
Definition: sua.c:286
osmo_ss7_route::dest
struct osmo_ss7_route::@23 dest
OSMO_SCCP_ADDR_T_IPv4
#define OSMO_SCCP_ADDR_T_IPv4
Definition: sccp_sap.h:52
S_DISCONN_PEND
@ S_DISCONN_PEND
Definition: sccp_scoc.c:131
SUA_IEI_SEQ_CTRL
#define SUA_IEI_SEQ_CTRL
Definition: sua.h:117
SUA_IEI_DEST_REF
#define SUA_IEI_DEST_REF
Definition: sua.h:101
osmo_scu_state_param
Definition: sccp_sap.h:245
SUA_IEI_PROTO_CLASS
#define SUA_IEI_PROTO_CLASS
Definition: sua.h:116
osmo_ss7_xua_server_find
struct osmo_xua_server * osmo_ss7_xua_server_find(struct osmo_ss7_instance *inst, enum osmo_ss7_asp_protocol proto, uint16_t local_port)
Definition: osmo_ss7.c:2031
SUA_IEI_GT
#define SUA_IEI_GT
Definition: sua.h:121
conn_start_connect_timer
static void conn_start_connect_timer(struct sccp_connection *conn)
Definition: sccp_scoc.c:430
osmo_sccp_addr::v6
struct in6_addr v6
Definition: sccp_sap.h:178
sclc_rx_cldr
static int sclc_rx_cldr(struct osmo_sccp_instance *inst, struct xua_msg *xua)
Definition: sccp_sclc.c:206
OSMO_SCCP_SSN_BISDN
@ OSMO_SCCP_SSN_BISDN
Definition: sccp_sap.h:120
OSMO_SCCP_SSN_RNSAP
@ OSMO_SCCP_SSN_RNSAP
Definition: sccp_sap.h:124
xua_as_select_asp_override
static struct osmo_ss7_asp * xua_as_select_asp_override(struct osmo_ss7_as *as)
Definition: xua_as_fsm.c:98
xua_msg_event_map
Definition: xua_msg.h:63
data
uint8_t data[0]
Definition: xua_types.h:7
osmo_sccp_user_bind
struct osmo_sccp_user * osmo_sccp_user_bind(struct osmo_sccp_instance *inst, const char *name, osmo_prim_cb prim_cb, uint16_t ssn)
Bind a given SCCP User to a given SSN (at any PC)
Definition: sccp_user.c:139
DEFUN_ATTR
DEFUN_ATTR(sccp_timer, sccp_timer_cmd, NULL, NULL, CMD_ATTR_IMMEDIATE)
Definition: sccp_vty.c:146
sccp_scmg_msg::affected_pc
uint16_t affected_pc
Definition: sccp_scmg.h:17
conn_start_inact_timers
static void conn_start_inact_timers(struct sccp_connection *conn)
Definition: sccp_scoc.c:390
OSMO_SCU_PRIM_N_CONNECT
@ OSMO_SCU_PRIM_N_CONNECT
Definition: sccp_sap.h:34
sccp_user_find
struct osmo_sccp_user * sccp_user_find(struct osmo_sccp_instance *inst, uint16_t ssn, uint32_t pc)
Find a SCCP User registered for given PC+SSN or SSN only First search all users with a valid PC for a...
Definition: sccp_user.c:50
SUA_ASPSM_BEAT
#define SUA_ASPSM_BEAT
Definition: sua.h:52
sccp_scoc_event
sccp_scoc_event
Definition: sccp_scoc.c:137
sua.h
scrc_local_out_common
static int scrc_local_out_common(struct osmo_sccp_instance *inst, struct xua_msg *xua, const struct osmo_sccp_addr *called)
Definition: sccp_scrc.c:356
OSMO_SCCP_ADDR_T_SSN
#define OSMO_SCCP_ADDR_T_SSN
Definition: sccp_sap.h:51
sua_rx_co
static int sua_rx_co(struct osmo_ss7_asp *asp, struct xua_msg *xua)
Definition: sua.c:539
XUA_ASP_E_ASPTM_ASPAC_ACK
@ XUA_ASP_E_ASPTM_ASPAC_ACK
Definition: xua_asp_fsm.h:22
M3UA_VERSION
#define M3UA_VERSION
Definition: m3ua.h:24
osmo_scu_prim::unitdata
struct osmo_scu_unitdata_param unitdata
Definition: sccp_sap.h:267
m3ua_decode_notify
int m3ua_decode_notify(struct osmo_xlm_prim_notify *npar, void *ctx, const struct xua_msg *xua)
Definition: m3ua.c:409
m3ua_msg_class_aspsm
const struct xua_msg_class m3ua_msg_class_aspsm
Definition: m3ua.c:198
sccp_connection_state
sccp_connection_state
Definition: sccp_scoc.c:124
scrc_node_6
static int scrc_node_6(struct osmo_sccp_instance *inst, struct xua_msg *xua, const struct osmo_sccp_addr *called)
Definition: sccp_scrc.c:312
sccp_scmg_msgt_name
static const char * sccp_scmg_msgt_name(enum sccp_scmg_msg_type msgt)
Definition: sccp_scmg.h:24
sua_rx_asp
static int sua_rx_asp(struct osmo_ss7_asp *asp, struct xua_msg *xua)
Definition: sua.c:647
osmo_scu_prim::oph
struct osmo_prim_hdr oph
Definition: sccp_sap.h:261
xua_internal.h
conn_restart_tx_inact_timer
static void conn_restart_tx_inact_timer(struct sccp_connection *conn)
Definition: sccp_scoc.c:378
sccp_scmg_init
int sccp_scmg_init(struct osmo_sccp_instance *inst)
Definition: sccp_scmg.c:308
osmo_mtp_transfer_param::opc
uint32_t opc
Definition: mtp_sap.h:37
gen_mtp_transfer_req_xua
static int gen_mtp_transfer_req_xua(struct osmo_sccp_instance *inst, struct xua_msg *xua, const struct osmo_sccp_addr *called)
Definition: sccp_scrc.c:113
resco_mand_ies
static const uint16_t resco_mand_ies[]
Definition: sua.c:172
M3UA_NOTIFY_I_AS_PEND
#define M3UA_NOTIFY_I_AS_PEND
Definition: m3ua.h:113
OSMO_SCCP_ADDR_T_GT
#define OSMO_SCCP_ADDR_T_GT
Definition: sccp_sap.h:49
osmo_ss7_instance
Definition: osmo_ss7.h:72
SUA_IEI_SEGMENTATION
#define SUA_IEI_SEGMENTATION
Definition: sua.h:118
osmo_ss7_as::asps
struct osmo_ss7_asp * asps[16]
Definition: osmo_ss7.h:329
m3ua_ntfy_stchg_names
const struct value_string m3ua_ntfy_stchg_names[]
Definition: m3ua.c:85
osmo_ss7_linkset::name
char * name
Definition: osmo_ss7.h:189
SUA_MSGC_CL
#define SUA_MSGC_CL
Definition: sua.h:35
SCOC_E_T_IAR_EXP
@ SCOC_E_T_IAR_EXP
Definition: sccp_scoc.c:159
xua_as_fsm
struct osmo_fsm xua_as_fsm
Definition: xua_as_fsm.c:504
SUA_SNM_DUPU
#define SUA_SNM_DUPU
Definition: sua.h:47
sccp_scoc_flush_connections
void sccp_scoc_flush_connections(struct osmo_sccp_instance *inst)
Definition: sccp_scoc.c:1786
osmo_sccp_addr_dump
char * osmo_sccp_addr_dump(const struct osmo_sccp_addr *addr)
Definition: sccp_helpers.c:288
SUA_SNM_DRST
#define SUA_SNM_DRST
Definition: sua.h:48
osmo_ss7_pointcode_print
const char * osmo_ss7_pointcode_print(const struct osmo_ss7_instance *inst, uint32_t pc)
Definition: osmo_ss7.c:287
scu_gen_encode_and_send
static void scu_gen_encode_and_send(struct sccp_connection *conn, uint32_t event, struct xua_msg *xua, unsigned int primitive, enum osmo_prim_operation operation)
Definition: sccp_scoc.c:720
XUA_AS_S_PENDING
@ XUA_AS_S_PENDING
Definition: xua_as_fsm.h:9
osmo_sccp_timer_names
const struct value_string osmo_sccp_timer_names[]
Definition: sccp_scoc.c:233
gen_rlsd
static struct xua_msg * gen_rlsd(uint32_t route_ctx, uint32_t dest_ref, uint32_t src_ref)
Definition: sccp_scoc.c:1476
osmo_scu_prim_name
char * osmo_scu_prim_name(struct osmo_prim_hdr *oph)
Definition: sccp_sap.c:46
xua_as_fsm_inactive
static void xua_as_fsm_inactive(struct osmo_fsm_inst *fi, uint32_t event, void *data)
Definition: xua_as_fsm.c:354
dpc_accessible
static bool dpc_accessible(struct osmo_sccp_instance *inst, uint32_t pc)
Definition: sccp_scrc.c:59
XUA_ASP_E_ASPTM_ASPIA_ACK
@ XUA_ASP_E_ASPTM_ASPIA_ACK
Definition: xua_asp_fsm.h:26
gen_ret_msg
static struct xua_msg * gen_ret_msg(struct osmo_sccp_instance *inst, const struct xua_msg *xua_in, uint32_t ret_cause)
Definition: sccp_sclc.c:282
SCCP_SCMG_MSGT_SSP
@ SCCP_SCMG_MSGT_SSP
Definition: sccp_scmg.h:7
sccp_available
static bool sccp_available(struct osmo_sccp_instance *inst, const struct osmo_sccp_addr *addr)
Definition: sccp_scrc.c:65
OSMO_XLM_PRIM_M_AS_ACTIVE
@ OSMO_XLM_PRIM_M_AS_ACTIVE
Definition: sigtran_sap.h:26
osmo_sccp_vty_init
void osmo_sccp_vty_init(void)
Definition: sccp_vty.c:256
SCOC_E_RCOC_ROUT_FAIL_IND
@ SCOC_E_RCOC_ROUT_FAIL_IND
Definition: sccp_scoc.c:147
SCOC_E_RCOC_DT1_IND
@ SCOC_E_RCOC_DT1_IND
Definition: sccp_scoc.c:152
OSMO_SCCP_RI_SSN_PC
@ OSMO_SCCP_RI_SSN_PC
Definition: sccp_sap.h:60
osmo_sua_to_sccp
struct msgb * osmo_sua_to_sccp(struct xua_msg *xua)
convert parsed SUA message to SCCP message
Definition: sccp2sua.c:1413
cldt_mand_ies
static const uint16_t cldt_mand_ies[]
Definition: sua.c:121
osmo_ss7_asp_protocol_name
static const char * osmo_ss7_asp_protocol_name(enum osmo_ss7_asp_protocol mode)
Definition: osmo_ss7.h:286
SUA_SNM_DUNA
#define SUA_SNM_DUNA
Definition: sua.h:43
sccp_scoc_rx_inval_src_ref
static void sccp_scoc_rx_inval_src_ref(struct sccp_connection *conn, struct xua_msg *xua, uint32_t inval_src_ref)
Definition: sccp_scoc.c:1555
SUA_ERR_UNSUPP_MSG_TYPE
#define SUA_ERR_UNSUPP_MSG_TYPE
Definition: sua.h:143
m3ua_ntfy_type_names
const struct value_string m3ua_ntfy_type_names[]
Definition: m3ua.c:79
xua_as_select_asp_roundrobin
static struct osmo_ss7_asp * xua_as_select_asp_roundrobin(struct osmo_ss7_as *as)
Definition: xua_as_fsm.c:112
OSMO_XLM_PRIM_M_ASP_INACTIVE
@ OSMO_XLM_PRIM_M_ASP_INACTIVE
Definition: sigtran_sap.h:25
osmo_sccp_gt_cmp
int osmo_sccp_gt_cmp(const struct osmo_sccp_gt *a, const struct osmo_sccp_gt *b)
Compare two SCCP Global Titles.
Definition: sccp_user.c:334
osmo_scu_prim::u
union osmo_scu_prim::@30 u
OSMO_SCCP_TIMERS_COUNT
@ OSMO_SCCP_TIMERS_COUNT
Definition: sccp_internal.h:23
OSMO_SCCP_SP_S_INACCESSIBLE
@ OSMO_SCCP_SP_S_INACCESSIBLE
Definition: sccp_sap.h:142
xua_msg_find_tag
struct xua_msg_part * xua_msg_find_tag(const struct xua_msg *msg, uint16_t tag)
Definition: xua_msg.c:86
S_CONN_PEND_OUT
@ S_CONN_PEND_OUT
Definition: sccp_scoc.c:129
scoc_event_names
static const struct value_string scoc_event_names[]
Definition: sccp_scoc.c:169
osmo_ss7_as::mode_set_by_vty
bool mode_set_by_vty
Definition: osmo_ss7.h:319
sclc_rx_cldt
static int sclc_rx_cldt(struct osmo_sccp_instance *inst, struct xua_msg *xua)
Definition: sccp_sclc.c:157
conn_create_id
static struct sccp_connection * conn_create_id(struct osmo_sccp_user *user, uint32_t conn_id)
Definition: sccp_scoc.c:462
osmo_xua_server::cfg
struct osmo_xua_server::@28 cfg
scoc_fsm_conn_pend_out
static void scoc_fsm_conn_pend_out(struct osmo_fsm_inst *fi, uint32_t event, void *data)
Definition: sccp_scoc.c:912
SUA_IEI_MSG_PRIO
#define SUA_IEI_MSG_PRIO
Definition: sua.h:115
sccp_scoc_rx_inval_opc
static void sccp_scoc_rx_inval_opc(struct sccp_connection *conn, struct xua_msg *xua)
Definition: sccp_scoc.c:1588
scu_msgb_alloc
static struct msgb * scu_msgb_alloc(void)
Definition: sccp_scoc.c:523
OSMO_SCCP_SSN_gsmSCF_MAP
@ OSMO_SCCP_SSN_gsmSCF_MAP
Definition: sccp_sap.h:127
osmo_ss7_as_has_asp
bool osmo_ss7_as_has_asp(const struct osmo_ss7_as *as, const struct osmo_ss7_asp *asp)
Determine if given AS contains ASP.
Definition: osmo_ss7.c:1066
xua_gen_encode_and_send
static int xua_gen_encode_and_send(struct osmo_sccp_user *scu, uint32_t event, struct osmo_scu_prim *prim, int msg_type)
Definition: sccp_sclc.c:103
osmo_sccp_user::inst
struct osmo_sccp_instance * inst
pointer back to SCCP instance
Definition: sccp_internal.h:65
SUA_ASPSM_DOWN_ACK
#define SUA_ASPSM_DOWN_ACK
Definition: sua.h:54
xua_parameter_hdr::len
uint16_t len
Definition: xua_types.h:43
osmo_sccp_instance::priv
void * priv
Definition: sccp_internal.h:54
osmo_sccp_gt::tt
uint8_t tt
Definition: sccp_sap.h:164
XUA_ASP_E_ASPSM_ASPDN
@ XUA_ASP_E_ASPSM_ASPDN
Definition: xua_asp_fsm.h:23
sua_iei_names
static const struct value_string sua_iei_names[]
Definition: sua.c:80
sccp_scrc_rx_scoc_conn_msg
int sccp_scrc_rx_scoc_conn_msg(struct osmo_sccp_instance *inst, struct xua_msg *xua)
Definition: sccp_scrc.c:396
xua_dialect::name
const char * name
Definition: xua_msg.h:56
SUA_IEI_SSN
#define SUA_IEI_SSN
Definition: sua.h:123
osmo_ss7_instance::sccp
struct osmo_sccp_instance * sccp
Definition: osmo_ss7.h:91
coak_mand_ies
static const uint16_t coak_mand_ies[]
Definition: sua.c:154
OSMO_SCCP_SSN_ISDN_SS
@ OSMO_SCCP_SSN_ISDN_SS
Definition: sccp_sap.h:118
xua_msg_event_map::event
int event
Definition: xua_msg.h:66
tx_inact_tmr_cb
static void tx_inact_tmr_cb(void *data)
Definition: sccp_scoc.c:336
osmo_sccp_timer_defaults
const struct osmo_sccp_timer_val osmo_sccp_timer_defaults[]
Definition: sccp_scoc.c:278
m3ua_msg_class_mgmt
const struct xua_msg_class m3ua_msg_class_mgmt
Definition: m3ua.c:229
translate
static int translate(struct osmo_sccp_instance *inst, const struct osmo_sccp_addr *called, struct osmo_sccp_addr *translated)
Definition: sccp_scrc.c:175
xua_common_hdr
Definition: xua_types.h:31
INIT_TIMER
#define INIT_TIMER(x, fn, priv)
Definition: sccp_scoc.c:459
sccp_msgb_alloc
struct msgb * sccp_msgb_alloc(const char *name)
Definition: sua.c:63
xua_find_as_for_asp
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.
Definition: xua_shared.c:68
OSMO_SCCP_SSN_CAP
@ OSMO_SCCP_SSN_CAP
Definition: sccp_sap.h:126
SUA_IEI_ERR_CODE
#define SUA_IEI_ERR_CODE
Definition: sua.h:87
OSMO_XLM_PRIM_M_SCTP_RESTART
@ OSMO_XLM_PRIM_M_SCTP_RESTART
Definition: sigtran_sap.h:16
sccp_connection::called_addr
struct osmo_sccp_addr called_addr
Definition: sccp_scoc.c:87
xua_msg_copy_part
int xua_msg_copy_part(struct xua_msg *xua_out, uint16_t tag_out, const struct xua_msg *xua_in, uint16_t tag_in)
Definition: xua_msg.c:111
OSMO_XLM_PRIM_M_SCTP_ESTABLISH
@ OSMO_XLM_PRIM_M_SCTP_ESTABLISH
Definition: sigtran_sap.h:14
OSMO_SCCP_REM_SCCP_S_AVAILABLE
@ OSMO_SCCP_REM_SCCP_S_AVAILABLE
Definition: sccp_sap.h:148
osmo_ss7_as_find_or_create
struct osmo_ss7_as * osmo_ss7_as_find_or_create(struct osmo_ss7_instance *inst, const char *name, enum osmo_ss7_asp_protocol proto)
Find or Create Application Server.
Definition: osmo_ss7.c:955
SUA_CO_RELRE
#define SUA_CO_RELRE
Definition: sua.h:73
XUA_ASP_E_ASPTM_ASPAC
@ XUA_ASP_E_ASPTM_ASPAC
Definition: xua_asp_fsm.h:21
osmo_ss7_user::inst
struct osmo_ss7_instance * inst
Definition: osmo_ss7.h:126
SCCP_SCMG_MSGT_SOG
@ SCCP_SCMG_MSGT_SOG
Definition: sccp_scmg.h:10
sccp_msgb_alloc
struct msgb * sccp_msgb_alloc(const char *name)
Definition: sua.c:63
NOTIFY_PAR_P_ASP_ID
#define NOTIFY_PAR_P_ASP_ID
Definition: sigtran_sap.h:34
SUA_ASPTM_ACTIVE_ACK
#define SUA_ASPTM_ACTIVE_ACK
Definition: sua.h:59
sccp_scoc_rx_scrc_rout_fail
void sccp_scoc_rx_scrc_rout_fail(struct osmo_sccp_instance *inst, struct xua_msg *xua, uint32_t cause)
SCOC: Receive SCRC Routing Failure.
Definition: sccp_scoc.c:1376
SCCP_MSG_HEADROOM
#define SCCP_MSG_HEADROOM
Definition: sua.c:61
OSMO_XLM_PRIM_M_RK_REG
@ OSMO_XLM_PRIM_M_RK_REG
Definition: sigtran_sap.h:30
codt_mand_ies
static const uint16_t codt_mand_ies[]
Definition: sua.c:144
osmo_mtp_transfer_param::sio
uint8_t sio
Definition: mtp_sap.h:40
xua_gen_msg_cl
static struct xua_msg * xua_gen_msg_cl(uint32_t event, struct osmo_scu_prim *prim, int msg_type)
Definition: sccp_sclc.c:65
MTP_SIO
#define MTP_SIO(service, net_ind)
Definition: mtp_sap.h:34
SCU_MSGB_SIZE
#define SCU_MSGB_SIZE
Definition: sccp_scoc.c:65
osmo_ss7_asp::name
char * name
Definition: osmo_ss7.h:418
OSMO_XLM_PRIM_M_AS_INACTIVE
@ OSMO_XLM_PRIM_M_AS_INACTIVE
Definition: sigtran_sap.h:27
sua_rx_msg
int sua_rx_msg(struct osmo_ss7_asp *asp, struct msgb *msg)
process SUA message received from socket
Definition: sua.c:670
osmo_sccp_user_find
struct osmo_sccp_user * osmo_sccp_user_find(struct osmo_sccp_instance *inst, uint16_t ssn, uint32_t pc)
Find a SCCP User registered for given PC+SSN or SSN only.
Definition: sccp_user.c:80
sccp_scmg_rx_mtp_resume
void sccp_scmg_rx_mtp_resume(struct osmo_sccp_instance *inst, uint32_t dpc)
brief MTP -> SNM (MTP-RESUME.ind) - ability of providing the MTP service Q.714 5.2....
Definition: sccp_scmg.c:102
mtp_user_prim_cb
static int mtp_user_prim_cb(struct osmo_prim_hdr *oph, void *ctx)
Definition: sccp_user.c:180
SUA_ASPSM_DOWN
#define SUA_ASPSM_DOWN
Definition: sua.h:51
SUA_IEI_CREDIT
#define SUA_IEI_CREDIT
Definition: sua.h:106
_NUM_OSMO_SS7_ASP_TMOD
@ _NUM_OSMO_SS7_ASP_TMOD
Definition: osmo_ss7.h:264
OSMO_SCCP_SP_S_ACCESSIBLE
@ OSMO_SCCP_SP_S_ACCESSIBLE
Definition: sccp_sap.h:144
OSMO_SCCP_GTI_NAI_ONLY
@ OSMO_SCCP_GTI_NAI_ONLY
Definition: sccp_sap.h:72
MTP_SI_SCCP
@ MTP_SI_SCCP
Definition: mtp.h:10
OSMO_SCU_PRIM_N_EXPEDITED_DATA
@ OSMO_SCU_PRIM_N_EXPEDITED_DATA
Definition: sccp_sap.h:36
SCOC_E_SCU_N_DATA_REQ
@ SCOC_E_SCU_N_DATA_REQ
Definition: sccp_scoc.c:142
conn_start_rel_timer
static void conn_start_rel_timer(struct sccp_connection *conn)
Definition: sccp_scoc.c:404
get_local_role
static int get_local_role(struct osmo_ss7_as *as)
Definition: xua_as_fsm.c:79
osmo_sccp_user_sap_down
int osmo_sccp_user_sap_down(struct osmo_sccp_user *scu, struct osmo_prim_hdr *oph)
Main entrance function for primitives from SCCP User.
Definition: sccp_scoc.c:1777
osmo_ss7_as::name
char * name
Definition: osmo_ss7.h:313
sccp_scmg_rx_ssn_allowed
void sccp_scmg_rx_ssn_allowed(struct osmo_sccp_instance *inst, uint32_t dpc, uint32_t ssn, uint32_t smi)
Definition: sccp_scmg.c:40
sua_gen_error
static struct xua_msg * sua_gen_error(uint32_t err_code)
Definition: sua.c:235
OSMO_XLM_PRIM_M_ASP_DOWN
@ OSMO_XLM_PRIM_M_ASP_DOWN
Definition: sigtran_sap.h:23
MAND_IES
#define MAND_IES(msgt, ies)
Definition: sua.c:119
osmo_scu_unitdata_param::called_addr
struct osmo_sccp_addr called_addr
Definition: sccp_sap.h:227
SUA_SNM_DAVA
#define SUA_SNM_DAVA
Definition: sua.h:44
SUA_IEI_RX_SEQ_NR
#define SUA_IEI_RX_SEQ_NR
Definition: sua.h:104
xua_snm_rx_duna
void xua_snm_rx_duna(struct osmo_ss7_asp *asp, struct osmo_ss7_as *as, struct xua_msg *xua)
Definition: xua_snm.c:306
xua_as_fsm_pending
static void xua_as_fsm_pending(struct osmo_fsm_inst *fi, uint32_t event, void *data)
Definition: xua_as_fsm.c:412
SCOC_E_SCU_N_CONN_RESP
@ SCOC_E_SCU_N_CONN_RESP
Definition: sccp_scoc.c:140
osmo_scu_pcstate_param
Definition: sccp_sap.h:253
osmo_ss7_as::last_asp_idx_sent
uint8_t last_asp_idx_sent
Definition: osmo_ss7.h:330
xua_gen_encode_and_send
static int xua_gen_encode_and_send(struct sccp_connection *conn, uint32_t event, struct osmo_scu_prim *prim, int msg_type)
Definition: sccp_scoc.c:688
relco_mand_ies
static const uint16_t relco_mand_ies[]
Definition: sua.c:165
m3ua.h
sccp_scoc_states
static const struct osmo_fsm_state sccp_scoc_states[]
Definition: sccp_scoc.c:1201
OSMO_SCCP_TIMER_RESET
@ OSMO_SCCP_TIMER_RESET
Definition: sccp_internal.h:20
xua_common_hdr::msg_class
uint8_t msg_class
Definition: xua_types.h:34
xua_msg::hdr
struct xua_common_hdr hdr
Definition: xua_msg.h:32
scrc_node_12
static int scrc_node_12(struct osmo_sccp_instance *inst, struct xua_msg *xua, const struct osmo_sccp_addr *called)
Definition: sccp_scrc.c:193
SUA_IEI_ROUTING_KEY
#define SUA_IEI_ROUTING_KEY
Definition: sua.h:110
sua_rx_snm_sg
static int sua_rx_snm_sg(struct osmo_ss7_asp *asp, struct xua_msg *xua)
Definition: sua.c:923
osmo_scu_disconn_param::responding_addr
struct osmo_sccp_addr responding_addr
Definition: sccp_sap.h:211
SUA_MSGC_RKM
#define SUA_MSGC_RKM
Definition: sua.h:37
osmo_mtp_transfer_param::sls
uint8_t sls
Definition: mtp_sap.h:39
sccp_scmg_msgt_names
const struct value_string sccp_scmg_msgt_names[]
Definition: sccp_scmg.c:158
OSMO_SCCP_SSN_SIWF_MAP
@ OSMO_SCCP_SSN_SIWF_MAP
Definition: sccp_sap.h:128
XUA_ASP_E_ASPSM_BEAT_ACK
@ XUA_ASP_E_ASPSM_BEAT_ACK
Definition: xua_asp_fsm.h:29
xua_as_fsm_onenter
static void xua_as_fsm_onenter(struct osmo_fsm_inst *fi, uint32_t old_state)
Definition: xua_as_fsm.c:299
SUA_IEI_IPv4
#define SUA_IEI_IPv4
Definition: sua.h:124
xua_gen_relre_and_send
static int xua_gen_relre_and_send(struct sccp_connection *conn, uint32_t cause, struct osmo_scu_prim *prim)
Definition: sccp_scoc.c:552
osmo_sccp_user_bind_pc
struct osmo_sccp_user * osmo_sccp_user_bind_pc(struct osmo_sccp_instance *inst, const char *name, osmo_prim_cb prim_cb, uint16_t ssn, uint32_t pc)
Bind a given SCCP User to a given SSN+PC.
Definition: sccp_user.c:127
osmo_ss7_route_destroy
void osmo_ss7_route_destroy(struct osmo_ss7_route *rt)
Destroy a given SS7 route.
Definition: osmo_ss7.c:810
osmo_mtp_transfer_param
Definition: mtp_sap.h:36
osmo_xlm_prim_names
const struct value_string osmo_xlm_prim_names[]
Definition: sccp_sap.c:59
prim_name_buf
static char prim_name_buf[128]
Definition: sccp_sap.c:44
OSMO_MTP_PRIM_TRANSFER
@ OSMO_MTP_PRIM_TRANSFER
Definition: mtp_sap.h:28
SUA_IEI_PC
#define SUA_IEI_PC
Definition: sua.h:122
sua_scoc_event_map
static const struct xua_msg_event_map sua_scoc_event_map[]
Definition: sccp_scoc.c:201
XUA_ASPAS_ASP_INACTIVE_IND
@ XUA_ASPAS_ASP_INACTIVE_IND
Definition: xua_as_fsm.h:13
xua_msg_add_sccp_addr
int xua_msg_add_sccp_addr(struct xua_msg *xua, uint16_t iei, const struct osmo_sccp_addr *addr)
Definition: xua_msg.c:371
sua_is_connectionless
static bool sua_is_connectionless(struct xua_msg *xua)
Definition: sccp_scrc.c:42
osmo_scu_prim::notice
struct osmo_scu_notice_param notice
Definition: sccp_sap.h:268
osmo_ss7_asp::role
enum osmo_ss7_asp_role role
Definition: osmo_ss7.h:423
write_sccp_timers
static void write_sccp_timers(struct vty *vty, const char *indent, struct osmo_sccp_instance *inst, bool default_if_unset)
Definition: sccp_vty.c:213
SCOC_E_CONN_TMR_EXP
@ SCOC_E_CONN_TMR_EXP
Definition: sccp_scoc.c:162
scu_prim_alloc
static struct osmo_scu_prim * scu_prim_alloc(unsigned int primitive, enum osmo_prim_operation operation)
Definition: sccp_scoc.c:706
SUA_ERR_INVALID_VERSION
#define SUA_ERR_INVALID_VERSION
Definition: sua.h:141
osmo_ss7.h
xua_as_fsm_states
static const struct osmo_fsm_state xua_as_fsm_states[]
Definition: xua_as_fsm.c:456
SUA_IEI_NET_APPEARANCE
#define SUA_IEI_NET_APPEARANCE
Definition: sua.h:109
xua_msg_part
Definition: xua_msg.h:38
SUA_IEI_ASP_CAPA
#define SUA_IEI_ASP_CAPA
Definition: sua.h:105
xua_msg_event_map
int xua_msg_event_map(const struct xua_msg *xua, const struct xua_msg_event_map *maps, unsigned int num_maps)
Map from a xua_msg (class+type) to an event.
Definition: xua_msg.c:427
XUA_ASP_S_ACTIVE
@ XUA_ASP_S_ACTIVE
Definition: xua_asp_fsm.h:6
OSMO_SCCP_GTI_TT_NPL_ENC
@ OSMO_SCCP_GTI_TT_NPL_ENC
Definition: sccp_sap.h:74
osmo_ss7_pc_is_valid
static bool osmo_ss7_pc_is_valid(uint32_t pc)
Definition: osmo_ss7.h:34
osmo_ss7_asp::fi
struct osmo_fsm_inst * fi
ASP FSM.
Definition: osmo_ss7.h:388
SUA_RI_SSN_IP
#define SUA_RI_SSN_IP
Definition: sua.h:131
M3UA_NOTIFY_T_OTHER
#define M3UA_NOTIFY_T_OTHER
Definition: m3ua.h:108
SCOC_E_RCOC_RLSD_IND
@ SCOC_E_RCOC_RLSD_IND
Definition: sccp_scoc.c:148
sccp_lbcs_local_bcast_pcstate
void sccp_lbcs_local_bcast_pcstate(struct osmo_sccp_instance *inst, const struct osmo_scu_pcstate_param *pcstate)
Definition: sccp_lbcs.c:39
osmo_sccp_routing_ind_names
const struct value_string osmo_sccp_routing_ind_names[]
Definition: sccp_sap.c:91
SUA_IEI_AFFECTED_PC
#define SUA_IEI_AFFECTED_PC
Definition: sua.h:90
M3UA_NOTIFY_I_AS_ACT
#define M3UA_NOTIFY_I_AS_ACT
Definition: m3ua.h:112
osmo_ss7_instance::asp_list
struct llist_head asp_list
list of osmo_ss7_asp
Definition: osmo_ss7.h:80
OSMO_SCCP_SSN_HLR
@ OSMO_SCCP_SSN_HLR
Definition: sccp_sap.h:112
gen_sccp_timer_cmd_strs
static void gen_sccp_timer_cmd_strs(struct cmd_element *cmd)
Definition: sccp_vty.c:176
SUA_ERR_PARAM_FIELD_ERR
#define SUA_ERR_PARAM_FIELD_ERR
Definition: sua.h:152
osmo_xlm_prim_notify::asp_id
uint32_t asp_id
Definition: sigtran_sap.h:41
osmo_sccp_simple_server
struct osmo_sccp_instance * osmo_sccp_simple_server(void *ctx, uint32_t pc, enum osmo_ss7_asp_protocol prot, int local_port, const char *local_ip)
Definition: sccp_user.c:735
sccp_find_user
static struct osmo_sccp_user * sccp_find_user(struct osmo_sccp_instance *inst, struct xua_msg *xua)
Definition: sccp_scoc.c:1348
osmo_ss7_instance::rtable_system
struct osmo_ss7_route_table * rtable_system
Definition: osmo_ss7.h:89
OSMO_SS7_PC_INVALID
#define OSMO_SS7_PC_INVALID
Definition: osmo_ss7.h:33
INST_STR
#define INST_STR
Definition: xua_internal.h:85
sccp_connection::release_cause
uint32_t release_cause
Definition: sccp_scoc.c:101
SCOC_E_T_INT_EXP
@ SCOC_E_T_INT_EXP
Definition: sccp_scoc.c:165
SUA_IEI_DEST_ADDR
#define SUA_IEI_DEST_ADDR
Definition: sua.h:99
osmo_ss7_xua_server_destroy
void osmo_ss7_xua_server_destroy(struct osmo_xua_server *xs)
Definition: osmo_ss7.c:2143
scrc_node_2
static int scrc_node_2(struct osmo_sccp_instance *inst, struct xua_msg *xua, const struct osmo_sccp_addr *called)
Definition: sccp_scrc.c:203
sua_addr_parse_part
int sua_addr_parse_part(struct osmo_sccp_addr *out, const struct xua_msg_part *param)
parse SCCP address from given xUA message part
Definition: sua.c:371
sua_tx_dupu
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.
Definition: sua.c:881
check_any_other_asp_in_active
static bool check_any_other_asp_in_active(struct osmo_ss7_as *as, struct osmo_ss7_asp *asp_cmp)
Definition: xua_as_fsm.c:226
xua_msg_add_u32
int xua_msg_add_u32(struct xua_msg *xua, uint16_t iei, uint32_t val)
Definition: xua_msg.c:280
osmo_ss7_as::recovery_timeout_msec
uint32_t recovery_timeout_msec
Definition: osmo_ss7.h:322
osmo_sccp_timer_name
static const char * osmo_sccp_timer_name(enum osmo_sccp_timer val)
Definition: sccp_internal.h:34
sccp_connection::inst
struct osmo_sccp_instance * inst
Definition: sccp_scoc.c:78
int_tmr_cb
static void int_tmr_cb(void *data)
Definition: sccp_scoc.c:357
xua_msg.h
osmo_sccp_gt::digits
char digits[32]
Definition: sccp_sap.h:167
msg_class_co
static const struct xua_msg_class msg_class_co
Definition: sua.c:196
xua_msg_alloc
struct xua_msg * xua_msg_alloc(void)
Definition: xua_msg.c:44
SCOC_E_RCOC_OTHER_NPDU
@ SCOC_E_RCOC_OTHER_NPDU
Definition: sccp_scoc.c:155
xua_as_fsm_cleanup
static void xua_as_fsm_cleanup(struct osmo_fsm_inst *fi, enum osmo_fsm_term_cause cause)
Definition: xua_as_fsm.c:449
osmo_ss7_instance::as_list
struct llist_head as_list
list of osmo_ss7_as
Definition: osmo_ss7.h:78
XUA_ASP_E_ASPSM_ASPUP_ACK
@ XUA_ASP_E_ASPSM_ASPUP_ACK
Definition: xua_asp_fsm.h:20
mtp_sap.h
osmo_ss7_asp::asp_id
uint32_t asp_id
Definition: osmo_ss7.h:401
osmo_ss7_instance_find_or_create
struct osmo_ss7_instance * osmo_ss7_instance_find_or_create(void *ctx, uint32_t id)
Find or create a SS7 Instance.
Definition: osmo_ss7.c:359
OSMO_SCCP_SSN_OMAP
@ OSMO_SCCP_SSN_OMAP
Definition: sccp_sap.h:110
SUA_MGMT_NTFY
#define SUA_MGMT_NTFY
Definition: sua.h:41
SUA_IEI_SMI
#define SUA_IEI_SMI
Definition: sua.h:113
scrc_rx_mtp_xfer_ind_xua
int scrc_rx_mtp_xfer_ind_xua(struct osmo_sccp_instance *inst, struct xua_msg *xua)
Definition: sccp_scrc.c:445
osmo_ss7_route_lookup
struct osmo_ss7_route * osmo_ss7_route_lookup(struct osmo_ss7_instance *inst, uint32_t dpc)
Find a SS7 route for given destination point code in given SS7.
Definition: osmo_ss7.c:735
mtp.h
osmo_sccp_addr_name
char * osmo_sccp_addr_name(const struct osmo_ss7_instance *ss7, const struct osmo_sccp_addr *addr)
Definition: sccp_helpers.c:371
sccp_timer_schedule
static void sccp_timer_schedule(const struct sccp_connection *conn, struct osmo_timer_list *timer, enum osmo_sccp_timer timer_name)
Definition: sccp_scoc.c:327
osmo_ss7_asp_peer::host_cnt
size_t host_cnt
Definition: osmo_ss7.h:363
OSMO_SCCP_SSN_MAP
@ OSMO_SCCP_SSN_MAP
Definition: sccp_sap.h:111
osmo_ss7_linkset::cfg
struct osmo_ss7_linkset::@22 cfg
scmg_rx_ssp
static int scmg_rx_ssp(struct osmo_sccp_user *scu, const struct osmo_sccp_addr *calling_addr, const struct osmo_sccp_addr *called_addr, const struct sccp_scmg_msg *ssp)
Definition: sccp_scmg.c:222
SUA_MSGC_SNM
#define SUA_MSGC_SNM
Definition: sua.h:32
sccp_sap.h
sua_rx_mgmt
static int sua_rx_mgmt(struct osmo_ss7_asp *asp, struct xua_msg *xua)
Definition: sua.c:621
scrc_translate_node_9
static int scrc_translate_node_9(struct osmo_sccp_instance *inst, struct xua_msg *xua, const struct osmo_sccp_addr *called)
Definition: sccp_scrc.c:262
OSMO_XLM_PRIM_M_AS_DOWN
@ OSMO_XLM_PRIM_M_AS_DOWN
Definition: sigtran_sap.h:28
SUA_PPID
#define SUA_PPID
Definition: sua.h:27
osmo_sccp_user_set_priv
void osmo_sccp_user_set_priv(struct osmo_sccp_user *scu, void *priv)
Definition: sccp_user.c:158
gen_coerr
static struct xua_msg * gen_coerr(uint32_t route_ctx, uint32_t dest_ref, uint32_t err_cause)
Definition: sccp_scoc.c:1402
SUA_IEI_CAUSE
#define SUA_IEI_CAUSE
Definition: sua.h:102
osmo_ss7_asp::is_server
bool is_server
Definition: osmo_ss7.h:422
osmo_sccp_gt
Definition: sccp_sap.h:162
MSEC_TO_S_US
#define MSEC_TO_S_US(x)
Definition: xua_as_fsm.c:186
osmo_sccp_vty_write_cs7_node
void osmo_sccp_vty_write_cs7_node(struct vty *vty, const char *indent, struct osmo_sccp_instance *inst)
Definition: sccp_vty.c:227
osmo_scu_unitdata_param::return_option
uint32_t return_option
Definition: sccp_sap.h:230
OSMO_XLM_PRIM_M_AS_STATUS
@ OSMO_XLM_PRIM_M_AS_STATUS
Definition: sigtran_sap.h:19
sccp_scmg_rx_mtp_pause
void sccp_scmg_rx_mtp_pause(struct osmo_sccp_instance *inst, uint32_t dpc)
brief MTP -> SNM (MTP-PAUSE.ind) - inability to providing MTP service Q.714 5.2.2
Definition: sccp_scmg.c:79
osmo_sccp_make_addr_pc_ssn
void osmo_sccp_make_addr_pc_ssn(struct osmo_sccp_addr *addr, uint32_t pc, uint32_t ssn)
Definition: sccp_helpers.c:44
SUA_SNM_DAUD
#define SUA_SNM_DAUD
Definition: sua.h:45
S
#define S(x)
Definition: xua_as_fsm.c:184
sccp_scmg_rx_mtp_status
void sccp_scmg_rx_mtp_status(struct osmo_sccp_instance *inst, uint32_t dpc, enum mtp_unavail_cause cause)
Definition: sccp_scmg.c:125
osmo_mtp_prim::transfer
struct osmo_mtp_transfer_param transfer
Definition: mtp_sap.h:59
osmo_scu_unitdata_param::calling_addr
struct osmo_sccp_addr calling_addr
Definition: sccp_sap.h:228
SUA_ERR_UNEXPECTED_MSG
#define SUA_ERR_UNEXPECTED_MSG
Definition: sua.h:145
osmo_ss7_asp_peer_add_host
int osmo_ss7_asp_peer_add_host(struct osmo_ss7_asp_peer *peer, void *talloc_ctx, const char *host)
Append (copy) address to a given ASP peer.
Definition: osmo_ss7.c:1163
sccp_connection::conn_id
uint32_t conn_id
Definition: sccp_scoc.c:91
xua_asp_fsm.h
osmo_sccp_instance::route_ctx
uint32_t route_ctx
Definition: sccp_internal.h:50
osmo_sccp_user_bind
struct osmo_sccp_user * osmo_sccp_user_bind(struct osmo_sccp_instance *inst, const char *name, osmo_prim_cb prim_cb, uint16_t ssn)
Bind a given SCCP User to a given SSN (at any PC)
Definition: sccp_user.c:139
xua_msg_add_data
int xua_msg_add_data(struct xua_msg *msg, uint16_t tag, uint16_t len, const uint8_t *dat)
Definition: xua_msg.c:61
xua_msg_part_get_u32
uint32_t xua_msg_part_get_u32(const struct xua_msg_part *part)
Definition: xua_msg.c:286
osmo_xua_server::local
struct osmo_ss7_asp_peer local
Definition: osmo_ss7.h:496
OSMO_SCCP_TIMER_CONN_EST
@ OSMO_SCCP_TIMER_CONN_EST
Definition: sccp_internal.h:13
OSMO_SCU_PRIM_N_INFORM
@ OSMO_SCU_PRIM_N_INFORM
Definition: sccp_sap.h:39
xua_msg_part::tag
uint16_t tag
Definition: xua_msg.h:41
sua_encode_duna
static struct xua_msg * sua_encode_duna(const uint32_t *rctx, unsigned int num_rctx, const uint32_t *aff_pc, unsigned int num_aff_pc, const uint32_t *ssn, const uint32_t *smi, const char *info_string)
Definition: sua.c:773
SCCP_SAP_USER
@ SCCP_SAP_USER
Definition: sigtran_sap.h:7
sccp_sclc_rx_scrc_rout_fail
void sccp_sclc_rx_scrc_rout_fail(struct osmo_sccp_instance *inst, struct xua_msg *xua_in, uint32_t cause)
SCRC -> SCLC (Routing Failure.
Definition: sccp_sclc.c:332
osmo_sccp_timer_val::us
uint32_t us
Definition: sccp_internal.h:28
osmo_ss7_user::name
const char * name
Definition: osmo_ss7.h:128
osmo_sccp_user::list
struct llist_head list
entry in list of sccp users of osmo_sccp_instance
Definition: sccp_internal.h:63
rx_inact_tmr_cb
static void rx_inact_tmr_cb(void *data)
Definition: sccp_scoc.c:343
SUA_IEI_SEQ_NR
#define SUA_IEI_SEQ_NR
Definition: sua.h:103
sua_cl_msgt_names
static const struct value_string sua_cl_msgt_names[]
Definition: sua.c:129
osmo_ss7_xua_server_create
struct osmo_xua_server * osmo_ss7_xua_server_create(struct osmo_ss7_instance *inst, enum osmo_ss7_asp_protocol proto, uint16_t local_port, const char *local_host)
create a new xUA server configured with given ip/port
Definition: osmo_ss7.c:2053
OSMO_XLM_PRIM_M_ERROR
@ OSMO_XLM_PRIM_M_ERROR
Definition: sigtran_sap.h:21
osmo_ss7_as::mode_set_by_peer
bool mode_set_by_peer
Definition: osmo_ss7.h:321
SUA_RI_HOST
#define SUA_RI_HOST
Definition: sua.h:130
sccp_connection::t_rel
struct osmo_timer_list t_rel
Definition: sccp_scoc.c:117
osmo_ss7_pc_is_local
bool osmo_ss7_pc_is_local(struct osmo_ss7_instance *inst, uint32_t pc)
Definition: osmo_ss7.c:2160
OSMO_SS7_ASP_PROT_SUA
@ OSMO_SS7_ASP_PROT_SUA
Definition: osmo_ss7.h:277
SUA_CO_RESCO
#define SUA_CO_RESCO
Definition: sua.h:75
osmo_sccp_instance_create
struct osmo_sccp_instance * osmo_sccp_instance_create(struct osmo_ss7_instance *ss7, void *priv)
create a SCCP Instance and register it as user with SS7 inst
Definition: sccp_user.c:220
SUA_CO_CORE
#define SUA_CO_CORE
Definition: sua.h:70
SCCP_STR
#define SCCP_STR
Definition: sccp_internal.h:9
osmo_ss7_as::list
struct llist_head list
entry in 'ref osmo_ss7_instance.as_list
Definition: osmo_ss7.h:300
osmo_ss7_as::proto
enum osmo_ss7_asp_protocol proto
Definition: osmo_ss7.h:315
OSMO_SS7_AS_TMOD_LOADSHARE
@ OSMO_SS7_AS_TMOD_LOADSHARE
Definition: osmo_ss7.h:262
S_BOTHWAY_RESET
@ S_BOTHWAY_RESET
Definition: sccp_scoc.c:134
sccp_scoc_rx_from_scrc
void sccp_scoc_rx_from_scrc(struct osmo_sccp_instance *inst, struct xua_msg *xua)
Main entrance function for primitives from the SCRC (Routing Control)
Definition: sccp_scoc.c:1620
sccp_helpers.h
OSMO_SCCP_TIMER_INT
@ OSMO_SCCP_TIMER_INT
Definition: sccp_internal.h:18
sccp_scmg.h
SUA_MSGC_MGMT
#define SUA_MSGC_MGMT
Definition: sua.h:31
XUA_ASP_E_ASPSM_ASPUP
@ XUA_ASP_E_ASPSM_ASPUP
Definition: xua_asp_fsm.h:19
OSMO_XLM_PRIM_M_ASP_ACTIVE
@ OSMO_XLM_PRIM_M_ASP_ACTIVE
Definition: sigtran_sap.h:24
sccp_connection::remote_pc
uint32_t remote_pc
Definition: sccp_scoc.c:83
osmo_sccp_gt::nai
uint32_t nai
Definition: sccp_sap.h:166
m3ua_ntfy_other_names
const struct value_string m3ua_ntfy_other_names[]
Definition: m3ua.c:93
OSMO_SS7_AS_TMOD_BCAST
@ OSMO_SS7_AS_TMOD_BCAST
Definition: osmo_ss7.h:261
osmo_sccp_timer_defaults
const struct osmo_sccp_timer_val osmo_sccp_timer_defaults[]
Definition: sccp_scoc.c:278
xua_to_msg
struct msgb * xua_to_msg(const int version, struct xua_msg *msg)
Definition: xua_msg.c:203
osmo_ss7_asp_active
bool osmo_ss7_asp_active(const struct osmo_ss7_asp *asp)
Definition: osmo_ss7.c:1506
osmo_scu_notice_param::cause
uint32_t cause
Definition: sccp_sap.h:239
relre_mand_ies
static const uint16_t relre_mand_ies[]
Definition: sua.c:161
vty_show_connection
static void vty_show_connection(struct vty *vty, struct sccp_connection *conn)
Definition: sccp_scoc.c:1796
osmo_ss7_asp::cfg
struct osmo_ss7_asp::@27 cfg
xua_snm_pc_available
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)
Definition: xua_snm.c:151
OSMO_SCCP_TIMER_GUARD
@ OSMO_SCCP_TIMER_GUARD
Definition: sccp_internal.h:19
osmo_ss7_as::routing_key
struct osmo_ss7_routing_key routing_key
Definition: osmo_ss7.h:316
sua_is_cr
static bool sua_is_cr(struct xua_msg *xua)
Definition: sccp_scrc.c:50
SCOC_E_RCOC_CONN_IND
@ SCOC_E_RCOC_CONN_IND
Definition: sccp_scoc.c:146
sccp_connection::sccp_class
uint32_t sccp_class
Definition: sccp_scoc.c:100
sccp_scrc_rx_sclc_msg
int sccp_scrc_rx_sclc_msg(struct osmo_sccp_instance *inst, struct xua_msg *xua)
Definition: sccp_scrc.c:418
SUA_VERSION
#define SUA_VERSION
Definition: sua.h:26
SCOC_E_T_REL_EXP
@ SCOC_E_T_REL_EXP
Definition: sccp_scoc.c:164
osmo_ss7_route_find_dpc_mask
struct osmo_ss7_route * osmo_ss7_route_find_dpc_mask(struct osmo_ss7_route_table *rtbl, uint32_t dpc, uint32_t mask)
Find a SS7 route for given destination point code + mask in given table.
Definition: osmo_ss7.c:717
sccp_connection::calling_addr
struct osmo_sccp_addr calling_addr
Definition: sccp_scoc.c:86
OSMO_XLM_PRIM_M_SCTP_STATUS
@ OSMO_XLM_PRIM_M_SCTP_STATUS
Definition: sigtran_sap.h:17
sccp_scoc_fsm
struct osmo_fsm sccp_scoc_fsm
Definition: sccp_scoc.c:1289
sua2sccp_tx_m3ua
static int sua2sccp_tx_m3ua(struct osmo_sccp_instance *inst, struct xua_msg *sua)
Definition: sccp_scrc.c:72
osmo_mtp_prim
Definition: mtp_sap.h:56
osmo_scu_connect_param::called_addr
struct osmo_sccp_addr called_addr
Definition: sccp_sap.h:185
scrc_node_7
static int scrc_node_7(struct osmo_sccp_instance *inst, struct xua_msg *xua, const struct osmo_sccp_addr *called)
Definition: sccp_scrc.c:226
XUA_AS_S_DOWN
@ XUA_AS_S_DOWN
Definition: xua_as_fsm.h:6
SUA_CO_COIT
#define SUA_CO_COIT
Definition: sua.h:80
osmo_sccp_addr::ip
union osmo_sccp_addr::@29 ip
osmo_ss7_asp_peer::host
char * host[OSMO_SOCK_MAX_ADDRS]
Definition: osmo_ss7.h:362
osmo_scu_prim::disconnect
struct osmo_scu_disconn_param disconnect
Definition: sccp_sap.h:265
SUA_SNM_SCON
#define SUA_SNM_SCON
Definition: sua.h:46
osmo_sccp_to_xua
struct xua_msg * osmo_sccp_to_xua(struct msgb *msg)
convert SCCP message to a SUA message
Definition: sccp2sua.c:1315
sua_co_msgt_names
static const struct value_string sua_co_msgt_names[]
Definition: sua.c:182
sccp_user_bind_pc
static struct osmo_sccp_user * sccp_user_bind_pc(struct osmo_sccp_instance *inst, const char *name, osmo_prim_cb prim_cb, uint16_t ssn, uint32_t pc)
Bind a SCCP User to a given Point Code.
Definition: sccp_user.c:92
osmo_scu_notice_param::calling_addr
struct osmo_sccp_addr calling_addr
Definition: sccp_sap.h:238
OSMO_SCCP_SSN_BSSAP
@ OSMO_SCCP_SSN_BSSAP
Definition: sccp_sap.h:137
m3ua_msg_class_asptm
const struct xua_msg_class m3ua_msg_class_asptm
Definition: m3ua.c:211
osmo_ss7_ensure_sccp
struct osmo_sccp_instance * osmo_ss7_ensure_sccp(struct osmo_ss7_instance *inst)
Allocate an SCCP instance, if not present yet.
Definition: osmo_ss7.c:442
OSMO_SCCP_SSN_MSC_BSSAP_LE
@ OSMO_SCCP_SSN_MSC_BSSAP_LE
Definition: sccp_sap.h:134
sua_rx_cl
static int sua_rx_cl(struct osmo_ss7_asp *asp, struct xua_msg *xua)
Definition: sua.c:511
osmo_sccp_simple_server_on_ss7_id
struct osmo_sccp_instance * osmo_sccp_simple_server_on_ss7_id(void *ctx, uint32_t ss7_id, uint32_t pc, enum osmo_ss7_asp_protocol prot, int local_port, const char *local_ip)
Definition: sccp_user.c:694
rep_rel_tmr_cb
static void rep_rel_tmr_cb(void *data)
Definition: sccp_scoc.c:364
scoc_fsm_wait_conn_conf
static void scoc_fsm_wait_conn_conf(struct osmo_fsm_inst *fi, uint32_t event, void *data)
Definition: sccp_scoc.c:990
OSMO_SCCP_GTI_NO_GT
@ OSMO_SCCP_GTI_NO_GT
Definition: sccp_sap.h:71
osmo_sccp_instance::timers
struct osmo_sccp_timer_val timers[OSMO_SCCP_TIMERS_COUNT]
Definition: sccp_internal.h:58
osmo_ss7_route
Definition: osmo_ss7.h:205
xua_dialect_sua
const struct xua_dialect xua_dialect_sua
Definition: sua.c:215
conn_create
static struct sccp_connection * conn_create(struct osmo_sccp_user *user)
Definition: sccp_scoc.c:497
sccp_sclc_rx_scrc_rout_fail
void sccp_sclc_rx_scrc_rout_fail(struct osmo_sccp_instance *inst, struct xua_msg *xua, uint32_t cause)
SCRC -> SCLC (Routing Failure.
Definition: sccp_sclc.c:332
SUA_ASPSM_UP
#define SUA_ASPSM_UP
Definition: sua.h:50
gen_relco
static struct xua_msg * gen_relco(uint32_t route_ctx, uint32_t dest_ref, uint32_t src_ref)
Definition: sccp_scoc.c:1438
sccp_sclc_rx_from_scrc
int sccp_sclc_rx_from_scrc(struct osmo_sccp_instance *inst, struct xua_msg *xua)
SCRC -> SCLC (connectionless message)
Definition: sccp_sclc.c:256
OSMO_SCCP_TIMER_REPEAT_REL
@ OSMO_SCCP_TIMER_REPEAT_REL
Definition: sccp_internal.h:17
cldr_mand_ies
static const uint16_t cldr_mand_ies[]
Definition: sua.c:125
osmo_sccp_check_addr
bool osmo_sccp_check_addr(struct osmo_sccp_addr *addr, uint32_t presence)
check whether a given SCCP-Address is consistent.
Definition: sccp_user.c:291
osmo_scu_disconn_param::conn_id
uint32_t conn_id
Definition: sccp_sap.h:213
conn_tmr_cb
static void conn_tmr_cb(void *data)
Definition: sccp_scoc.c:371
xua_msg_free
void xua_msg_free(struct xua_msg *msg)
Definition: xua_msg.c:56
scoc_fsm_idle
static void scoc_fsm_idle(struct osmo_fsm_inst *fi, uint32_t event, void *data)
Definition: sccp_scoc.c:811
sccp_scmg_msg::ssc_congestion_lvl
uint8_t ssc_congestion_lvl[0]
Definition: sccp_scmg.h:20
osmo_scu_prim
Definition: sccp_sap.h:260
SUA_IEI_TID
#define SUA_IEI_TID
Definition: sua.h:112
SCCP_MSG_SIZE
#define SCCP_MSG_SIZE
Definition: sua.c:60
xua_as_fsm_start
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.
Definition: xua_as_fsm.c:517
OSMO_SCCP_SSN_BSC_BSSAP_LE
@ OSMO_SCCP_SSN_BSC_BSSAP_LE
Definition: sccp_sap.h:133
osmo_sccp_user_unbind
void osmo_sccp_user_unbind(struct osmo_sccp_user *scu)
Unbind a given SCCP user.
Definition: sccp_user.c:148
coit_mand_ies
static const uint16_t coit_mand_ies[]
Definition: sua.c:178
osmo_ss7_instance_destroy
void osmo_ss7_instance_destroy(struct osmo_ss7_instance *inst)
Destroy a SS7 Instance.
Definition: osmo_ss7.c:400
sccp_connection::t_ias
struct osmo_timer_list t_ias
Definition: sccp_scoc.c:113
SCOC_E_RCOC_DT2_IND
@ SCOC_E_RCOC_DT2_IND
Definition: sccp_scoc.c:153
SUA_IEI_REG_RESULT
#define SUA_IEI_REG_RESULT
Definition: sua.h:92
conn_stop_inact_timers
static void conn_stop_inact_timers(struct sccp_connection *conn)
Definition: sccp_scoc.c:397
sccp_scoc_show_connections
void sccp_scoc_show_connections(struct vty *vty, struct osmo_sccp_instance *inst)
Definition: sccp_scoc.c:1821
xua_msg_class::name
const char * name
Definition: xua_msg.h:49
osmo_scu_prim::reset
struct osmo_scu_reset_param reset
Definition: sccp_sap.h:266
sccp_connection::incoming
bool incoming
Definition: sccp_scoc.c:104
OSMO_SCCP_ADDR_T_IPv6
#define OSMO_SCCP_ADDR_T_IPv6
Definition: sccp_sap.h:53
osmo_ss7_route::linkset
struct osmo_ss7_linkset * linkset
pointer to linkset (destination) of route
Definition: osmo_ss7.h:215
m3ua_encode_notify
struct xua_msg * m3ua_encode_notify(const struct osmo_xlm_prim_notify *npar)
Definition: m3ua.c:380
osmo_sccp_addr_ri_cmp
int osmo_sccp_addr_ri_cmp(const struct osmo_sccp_addr *a, const struct osmo_sccp_addr *b)
Compare the routing information of two SCCP addresses.
Definition: sccp_user.c:416
sccp_sclc_rx_from_scrc
int sccp_sclc_rx_from_scrc(struct osmo_sccp_instance *inst, struct xua_msg *xua)
SCRC -> SCLC (connectionless message)
Definition: sccp_sclc.c:256
osmo_ss7_asp_use_default_lm
int osmo_ss7_asp_use_default_lm(struct osmo_ss7_asp *asp, int log_level)
Definition: xua_default_lm_fsm.c:367
SUA_ASPTM_INACTIVE_ACK
#define SUA_ASPTM_INACTIVE_ACK
Definition: sua.h:60
sccp_connection::remote_ref
uint32_t remote_ref
Definition: sccp_scoc.c:97
S
#define S(x)
Definition: sccp_scoc.c:64
sccp_scmg_tx
static int sccp_scmg_tx(struct osmo_sccp_user *scu, const struct osmo_sccp_addr *calling_addr, const struct osmo_sccp_addr *called_addr, uint8_t msg_type, uint8_t ssn, uint16_t pc, uint8_t smi, uint8_t *ssc_cong_lvl)
Definition: sccp_scmg.c:168
osmo_scu_connect_param::conn_id
uint32_t conn_id
Definition: sccp_sap.h:191
LOGPASP
#define LOGPASP(asp, subsys, level, fmt, args ...)
Definition: osmo_ss7.h:472
S_ACTIVE
@ S_ACTIVE
Definition: sccp_scoc.c:130
NOTIFY_PAR_P_ROUTE_CTX
#define NOTIFY_PAR_P_ROUTE_CTX
Definition: sigtran_sap.h:35
sccp_scoc_rx_scrc_rout_fail
void sccp_scoc_rx_scrc_rout_fail(struct osmo_sccp_instance *inst, struct xua_msg *xua, uint32_t return_cause)
SCOC: Receive SCRC Routing Failure.
Definition: sccp_scoc.c:1376
xua_dialect_check_all_mand_ies
int xua_dialect_check_all_mand_ies(const struct xua_dialect *dialect, struct xua_msg *xua)
Definition: xua_msg.c:482
show_user
static void show_user(struct vty *vty, struct osmo_sccp_user *user)
Definition: sccp_vty.c:43
xua_snm_rx_dupu
void xua_snm_rx_dupu(struct osmo_ss7_asp *asp, struct osmo_ss7_as *as, struct xua_msg *xua)
Definition: xua_snm.c:376
osmo_sccp_user_sap_down_nofree
int osmo_sccp_user_sap_down_nofree(struct osmo_sccp_user *scu, struct osmo_prim_hdr *oph)
Main entrance function for primitives from SCCP User.
Definition: sccp_scoc.c:1720
coda_mand_ies
static const uint16_t coda_mand_ies[]
Definition: sua.c:147
osmo_xlm_prim_notify::status_type
uint16_t status_type
Definition: sigtran_sap.h:39
OSMO_XLM_PRIM_M_ASP_UP
@ OSMO_XLM_PRIM_M_ASP_UP
Definition: sigtran_sap.h:22
m3ua_err_names
const struct value_string m3ua_err_names[]
Definition: m3ua.c:55
sccp_user_prim_up
int sccp_user_prim_up(struct osmo_sccp_user *scu, struct osmo_scu_prim *prim)
Send a SCCP User SAP Primitive up to the User.
Definition: sccp_user.c:172
OSMO_SCCP_GTI_TT_ONLY
@ OSMO_SCCP_GTI_TT_ONLY
Definition: sccp_sap.h:73
conn_stop_connect_timer
static void conn_stop_connect_timer(struct sccp_connection *conn)
Definition: sccp_scoc.c:436
xua_parameter_hdr::tag
uint16_t tag
Definition: xua_types.h:42
SCOC_E_T_REP_REL_EXP
@ SCOC_E_T_REP_REL_EXP
Definition: sccp_scoc.c:166
osmo_sccp_get_ss7
struct osmo_ss7_instance * osmo_sccp_get_ss7(const struct osmo_sccp_instance *sccp)
get the SS7 instance that is related to the given SCCP instance
Definition: sccp_user.c:813
OSMO_SCCP_SSN_TC_TEST
@ OSMO_SCCP_SSN_TC_TEST
Definition: sccp_sap.h:121
OSMO_SS7_AS_TMOD_OVERRIDE
@ OSMO_SS7_AS_TMOD_OVERRIDE
Definition: osmo_ss7.h:260
osmo_sccp_instance::list
struct llist_head list
Definition: sccp_internal.h:44
osmo_scu_pcstate_param::affected_pc
uint32_t affected_pc
Definition: sccp_sap.h:254
osmo_ss7_asp
Definition: osmo_ss7.h:382
sccp_sclc_user_sap_down_nofree
int sccp_sclc_user_sap_down_nofree(struct osmo_sccp_user *scu, struct osmo_prim_hdr *oph)
Main entrance function for primitives from SCCP User.
Definition: sccp_sclc.c:123
SUA_IEI_S7_HOP_CTR
#define SUA_IEI_S7_HOP_CTR
Definition: sua.h:97
osmo_sccp_instance::connections
struct llist_head connections
Definition: sccp_internal.h:46
SUA_IEI_DIAG_INFO
#define SUA_IEI_DIAG_INFO
Definition: sua.h:84
OSMO_SS7_ASP_ROLE_ASP
@ OSMO_SS7_ASP_ROLE_ASP
Definition: osmo_ss7.h:375
xua_as_event
xua_as_event
Definition: xua_as_fsm.h:12
sua_encode_dava
static struct xua_msg * sua_encode_dava(const uint32_t *rctx, unsigned int num_rctx, const uint32_t *aff_pc, unsigned int num_aff_pc, const uint32_t *ssn, const uint32_t *smi, const char *info_string)
Definition: sua.c:801
SUA_MSGC_ASPSM
#define SUA_MSGC_ASPSM
Definition: sua.h:33
MTP_UNAVAIL_C_INACC_REM_USER
@ MTP_UNAVAIL_C_INACC_REM_USER
Definition: mtp.h:31
SUA_ERR_UNSUPP_MSG_CLASS
#define SUA_ERR_UNSUPP_MSG_CLASS
Definition: sua.h:142
xua_gen_msg_co
static struct xua_msg * xua_gen_msg_co(struct sccp_connection *conn, uint32_t event, struct osmo_scu_prim *prim, int msg_type)
Definition: sccp_scoc.c:571
OSMO_SCCP_RI_GT
@ OSMO_SCCP_RI_GT
Definition: sccp_sap.h:59
SUA_IEI_CORR_ID
#define SUA_IEI_CORR_ID
Definition: sua.h:91
sccp_scmg_init
int sccp_scmg_init(struct osmo_sccp_instance *inst)
Definition: sccp_scmg.c:308
OSMO_SCCP_SSN_BSS_OAM
@ OSMO_SCCP_SSN_BSS_OAM
Definition: sccp_sap.h:136
xua_msg_dump
char * xua_msg_dump(struct xua_msg *xua, const struct xua_dialect *dialect)
Definition: xua_msg.c:527
osmo_sccp_timer_description
static const char * osmo_sccp_timer_description(enum osmo_sccp_timer val)
Definition: sccp_internal.h:38
osmo_ss7_asp::asp_id_present
bool asp_id_present
Definition: osmo_ss7.h:402
osmo_sccp_instance::ss7_user
struct osmo_ss7_user ss7_user
Definition: sccp_internal.h:56
MTP_UNAVAIL_C_UNEQUIP_REM_USER
@ MTP_UNAVAIL_C_UNEQUIP_REM_USER
Definition: mtp.h:30
sccp_lbcs_local_bcast_pcstate
void sccp_lbcs_local_bcast_pcstate(struct osmo_sccp_instance *inst, const struct osmo_scu_pcstate_param *pcstate)
Definition: sccp_lbcs.c:39
xua_gen_relre
static struct xua_msg * xua_gen_relre(struct sccp_connection *conn, uint32_t cause, struct osmo_scu_prim *prim)
Definition: sccp_scoc.c:529
sccp_sclc_user_sap_down
int sccp_sclc_user_sap_down(struct osmo_sccp_user *scu, struct osmo_prim_hdr *oph)
Main entrance function for primitives from SCCP User.
Definition: sccp_sclc.c:147
osmo_sccp_instance_destroy
void osmo_sccp_instance_destroy(struct osmo_sccp_instance *inst)
Definition: sccp_user.c:252
SUA_ASPTM_INACTIVE
#define SUA_ASPTM_INACTIVE
Definition: sua.h:58
osmo_sccp_ssn_names
const struct value_string osmo_sccp_ssn_names[]
Definition: sccp_sap.c:108
xua_common_hdr::msg_type
uint8_t msg_type
Definition: xua_types.h:35
xua_msg_class
Definition: xua_msg.h:48
OSMO_SCCP_SSN_AUC
@ OSMO_SCCP_SSN_AUC
Definition: sccp_sap.h:116
sccp_connection::list
struct llist_head list
Definition: sccp_scoc.c:76
SUA_CAUSE_T_REFUSAL
#define SUA_CAUSE_T_REFUSAL
Definition: sua.h:135
sua_rx_snm_asp
static int sua_rx_snm_asp(struct osmo_ss7_asp *asp, struct xua_msg *xua)
Definition: sua.c:889
scmg_rx_sst
static int scmg_rx_sst(struct osmo_sccp_user *scu, const struct osmo_sccp_addr *calling_addr, const struct osmo_sccp_addr *called_addr, const struct sccp_scmg_msg *sst)
Definition: sccp_scmg.c:231
XUA_AS_S_INACTIVE
@ XUA_AS_S_INACTIVE
Definition: xua_as_fsm.h:7
SUA_ERR_MISSING_PARAM
#define SUA_ERR_MISSING_PARAM
Definition: sua.h:156
OSMO_SS7_AS_TMOD_ROUNDROBIN
@ OSMO_SS7_AS_TMOD_ROUNDROBIN
Definition: osmo_ss7.h:263
OSMO_SCCP_SSN_GGSN_MAP
@ OSMO_SCCP_SSN_GGSN_MAP
Definition: sccp_sap.h:130
SUA_CO_CODA
#define SUA_CO_CODA
Definition: sua.h:78
XUA_ASP_S_DOWN
@ XUA_ASP_S_DOWN
Definition: xua_asp_fsm.h:4
osmo_ss7_asp_find_or_create
struct osmo_ss7_asp * osmo_ss7_asp_find_or_create(struct osmo_ss7_instance *inst, const char *name, uint16_t remote_port, uint16_t local_port, enum osmo_ss7_asp_protocol proto)
Definition: osmo_ss7.c:1370
osmo_ss7_routing_key::context
uint32_t context
Definition: osmo_ss7.h:252
osmo_ss7_user_register
int osmo_ss7_user_register(struct osmo_ss7_instance *inst, uint8_t service_ind, struct osmo_ss7_user *user)
Register a MTP user for a given service indicator.
Definition: osmo_ss7.c:461
osmo_static_assert
osmo_static_assert(ARRAY_SIZE(osmo_sccp_timer_defaults)==OSMO_SCCP_TIMERS_COUNT, assert_osmo_sccp_timers_count)
osmo_sccp_user::pc
uint32_t pc
Definition: sccp_internal.h:71
xua_msg_part::len
uint16_t len
Definition: xua_msg.h:42
osmo_scu_notice_param::called_addr
struct osmo_sccp_addr called_addr
Definition: sccp_sap.h:237
OSMO_SCCP_TIMER_REL
@ OSMO_SCCP_TIMER_REL
Definition: sccp_internal.h:16
osmo_ss7_as_destroy
void osmo_ss7_as_destroy(struct osmo_ss7_as *as)
Destroy given Application Server.
Definition: osmo_ss7.c:1041
osmo_ss7_asp_protocol_port
int osmo_ss7_asp_protocol_port(enum osmo_ss7_asp_protocol prot)
Definition: osmo_ss7.c:326
osmo_sccp_addr::gt
struct osmo_sccp_gt gt
Definition: sccp_sap.h:173
sccp_user_prim_up
int sccp_user_prim_up(struct osmo_sccp_user *scut, struct osmo_scu_prim *prim)
Send a SCCP User SAP Primitive up to the User.
Definition: sccp_user.c:172
osmo_ss7_asp::remote
struct osmo_ss7_asp_peer remote
Definition: osmo_ss7.h:427
scoc_fsm_idle_onenter
static void scoc_fsm_idle_onenter(struct osmo_fsm_inst *fi, uint32_t old_state)
Definition: sccp_scoc.c:881
xua_as_transmit_msg
int xua_as_transmit_msg(struct osmo_ss7_as *as, struct msgb *msg)
Definition: xua_as_fsm.c:152
osmo_sccp_gt::gti
uint8_t gti
Definition: sccp_sap.h:163
SUA_CO_COERR
#define SUA_CO_COERR
Definition: sua.h:79
xua_msg
Definition: xua_msg.h:31
osmo_sccp_timer
osmo_sccp_timer
Definition: sccp_internal.h:12
SCOC_E_SCU_N_EXP_DATA_REQ
@ SCOC_E_SCU_N_EXP_DATA_REQ
Definition: sccp_scoc.c:143
sua_addr_parse
int sua_addr_parse(struct osmo_sccp_addr *out, struct xua_msg *xua, uint16_t iei)
parse SCCP address from given xUA message IE
Definition: sua.c:499
osmo_ss7_asp::list
struct llist_head list
entry in osmo_ss7_instance::asp_list
Definition: osmo_ss7.h:384
osmo_sccp_instance::next_id
uint32_t next_id
Definition: sccp_internal.h:52
OSMO_SCU_PRIM_N_DATA
@ OSMO_SCU_PRIM_N_DATA
Definition: sccp_sap.h:35
osmo_sccp_addr::ri
enum osmo_sccp_routing_ind ri
Definition: sccp_sap.h:172
scoc_fsm_conn_pend_in
static void scoc_fsm_conn_pend_in(struct osmo_fsm_inst *fi, uint32_t event, void *data)
Definition: sccp_scoc.c:887
xua_dialect_sua
const struct xua_dialect xua_dialect_sua
Definition: sua.c:215
osmo_ss7_as::inst
struct osmo_ss7_instance * inst
Definition: osmo_ss7.h:301
OSMO_SCCP_RI_SSN_IP
@ OSMO_SCCP_RI_SSN_IP
Definition: sccp_sap.h:61
xua_as_fsm_priv::t_r
struct osmo_timer_list t_r
Definition: xua_as_fsm.c:200
osmo_xlm_prim_notify::presence
uint32_t presence
Definition: sigtran_sap.h:38
OSMO_SCCP_SSN_MSC
@ OSMO_SCCP_SSN_MSC
Definition: sccp_sap.h:114
SUA_MSGC_ASPTM
#define SUA_MSGC_ASPTM
Definition: sua.h:34
sccp_user_find
struct osmo_sccp_user * sccp_user_find(struct osmo_sccp_instance *inst, uint16_t ssn, uint32_t pc)
Find a SCCP User registered for given PC+SSN or SSN only First search all users with a valid PC for a...
Definition: sccp_user.c:50
gen_coref_without_conn
static struct xua_msg * gen_coref_without_conn(struct osmo_sccp_instance *inst, struct xua_msg *xua_in, uint32_t ref_cause)
Definition: sccp_scoc.c:1323
SCCP_SCMG_MSGT_SOR
@ SCCP_SCMG_MSGT_SOR
Definition: sccp_scmg.h:9
osmo_scu_disconn_param::originator
enum osmo_sccp_originator originator
Definition: sccp_sap.h:210
sccp_connection::t_int
struct osmo_timer_list t_int
Definition: sccp_scoc.c:118
osmo_sccp_timer_descriptions
const struct value_string osmo_sccp_timer_descriptions[]
Definition: sccp_scoc.c:248
tx_rlsd_from_xua_twoway
static void tx_rlsd_from_xua_twoway(struct sccp_connection *conn, struct xua_msg *in)
Definition: sccp_scoc.c:1490
osmo_sccp_timer_get
const struct osmo_sccp_timer_val * osmo_sccp_timer_get(const struct osmo_sccp_instance *inst, enum osmo_sccp_timer timer, bool default_if_unset)
Definition: sccp_scoc.c:297
xua_msg_free_tag
int xua_msg_free_tag(struct xua_msg *xua, uint16_t tag)
Definition: xua_msg.c:97
osmo_ss7_instance::id
uint32_t id
Definition: osmo_ss7.h:94
xua_as_event_names
static const struct value_string xua_as_event_names[]
Definition: xua_as_fsm.c:188
sccp_scmg_msg::affected_ssn
uint8_t affected_ssn
Definition: sccp_scmg.h:16
XUA_ASPAS_ASP_DOWN_IND
@ XUA_ASPAS_ASP_DOWN_IND
Definition: xua_as_fsm.h:14
xua_msg::mtp
struct osmo_mtp_transfer_param mtp
Definition: xua_msg.h:33
osmo_sccp_msg_type_names
const struct value_string osmo_sccp_msg_type_names[]
Definition: sccp_types.c:4
SUA_IEI_INFO_STRING
#define SUA_IEI_INFO_STRING
Definition: sua.h:82
OSMO_SCCP_REM_SCCP_S_UNAVAILABLE_UNKNOWN
@ OSMO_SCCP_REM_SCCP_S_UNAVAILABLE_UNKNOWN
Definition: sccp_sap.h:149
SUA_IEI_SRC_REF
#define SUA_IEI_SRC_REF
Definition: sua.h:100
osmo_sccp_simple_server_add_clnt
struct osmo_sccp_instance * osmo_sccp_simple_server_add_clnt(struct osmo_sccp_instance *inst, enum osmo_ss7_asp_protocol prot, const char *name, uint32_t pc, int local_port, int remote_port, const char *remote_ip)
Definition: sccp_user.c:744
sccp_scmg_msg::msg_type
uint8_t msg_type
Definition: sccp_scmg.h:15
XUA_AS_S_ACTIVE
@ XUA_AS_S_ACTIVE
Definition: xua_as_fsm.h:8
xua_snm_rx_dava
void xua_snm_rx_dava(struct osmo_ss7_asp *asp, struct osmo_ss7_as *as, struct xua_msg *xua)
Definition: xua_snm.c:341
osmo_sccp_instance::users
struct llist_head users
Definition: sccp_internal.h:48
SUA_CAUSE_T_ERROR
#define SUA_CAUSE_T_ERROR
Definition: sua.h:138
SUA_CAUSE_T_RETURN
#define SUA_CAUSE_T_RETURN
Definition: sua.h:134
SUA_CO_RESRE
#define SUA_CO_RESRE
Definition: sua.h:76
xua_hdr_dump
char * xua_hdr_dump(struct xua_msg *xua, const struct xua_dialect *dialect)
Definition: xua_msg.c:467
osmo_sccp_simple_client
struct osmo_sccp_instance * osmo_sccp_simple_client(void *ctx, const char *name, uint32_t default_pc, enum osmo_ss7_asp_protocol prot, int default_local_port, const char *default_local_ip, int default_remote_port, const char *default_remote_ip)
request an sccp client instance
Definition: sccp_user.c:673
osmo_ss7_asp_find_by_proto
struct osmo_ss7_asp * osmo_ss7_asp_find_by_proto(struct osmo_ss7_as *as, enum osmo_ss7_asp_protocol proto)
Find an ASP that matches the given protocol.
Definition: osmo_ss7.c:1338
conn_start_int_timer
static void conn_start_int_timer(struct sccp_connection *conn)
Definition: sccp_scoc.c:416
sccp_scoc_rx_unass_local_ref
static void sccp_scoc_rx_unass_local_ref(struct osmo_sccp_instance *inst, struct xua_msg *xua)
Definition: sccp_scoc.c:1522
MTP_UNAVAIL_C_UNKNOWN
@ MTP_UNAVAIL_C_UNKNOWN
Definition: mtp.h:29
SUA_PORT
#define SUA_PORT
Definition: sua.h:28
SUA_MSGC_CO
#define SUA_MSGC_CO
Definition: sua.h:36
SCOC_E_SCU_N_CONN_REQ
@ SCOC_E_SCU_N_CONN_REQ
Definition: sccp_scoc.c:139
XUA_HDR
#define XUA_HDR(class, type)
Definition: xua_msg.h:25
osmo_sccp_addr::ssn
uint32_t ssn
Definition: sccp_sap.h:175