libosmo-sigtran  0.10.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 
11 };
12 
13 extern struct osmo_fsm xua_as_fsm;
14 
15 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:229
osmo_ss7_user::prim_cb
osmo_prim_cb prim_cb
Definition: osmo_ss7.h:126
S_CONN_PEND_IN
@ S_CONN_PEND_IN
Definition: sccp_scoc.c:134
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:20
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:329
osmo_sccp_instance
Definition: sccp_internal.h:9
SCOC_E_T_IAS_EXP
@ SCOC_E_T_IAS_EXP
Definition: sccp_scoc.c:166
osmo_mtp_transfer_param::dpc
uint32_t dpc
Definition: mtp_sap.h:38
S_RESET_OUT
@ S_RESET_OUT
Definition: sccp_scoc.c:139
scoc_fsm_disconn_pend
static void scoc_fsm_disconn_pend(struct osmo_fsm_inst *fi, uint32_t event, void *data)
Definition: sccp_scoc.c:1049
TX_INACT_TIMER
#define TX_INACT_TIMER
Definition: sccp_scoc.c:69
osmo_ss7_instance::network_indicator
uint8_t network_indicator
Definition: osmo_ss7.h:98
OSMO_SCCP_SSN_VLR
@ OSMO_SCCP_SSN_VLR
Definition: sccp_sap.h:112
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:655
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:442
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:156
cause_map_cref
static const uint8_t cause_map_cref[]
Definition: sccp_scoc.c:1186
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:334
OSMO_SCCP_SSN_ISUP
@ OSMO_SCCP_SSN_ISUP
Definition: sccp_sap.h:108
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:387
OSMO_XLM_PRIM_M_ASP_STATUS
@ OSMO_XLM_PRIM_M_ASP_STATUS
Definition: sigtran_sap.h:18
core_mand_ies
static const uint16_t core_mand_ies[]
Definition: sua.c:150
CS7_STR
#define CS7_STR
Definition: xua_internal.h:66
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:238
xua_as_fsm
struct osmo_fsm xua_as_fsm
Definition: xua_as_fsm.c:372
xua_msg_get_u32
uint32_t xua_msg_get_u32(struct xua_msg *xua, uint16_t iei)
Definition: xua_msg.c:292
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
osmo_ss7_route::as
struct osmo_ss7_as * as
pointer to Application Server
Definition: osmo_ss7.h:213
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:116
OSMO_XLM_PRIM_M_SCTP_RELEASE
@ OSMO_XLM_PRIM_M_SCTP_RELEASE
Definition: sigtran_sap.h:15
osmo_ss7_as
Definition: osmo_ss7.h:288
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:147
sccp_connection::t_iar
struct osmo_timer_list t_iar
Definition: sccp_scoc.c:120
osmo_sccp_user::priv
void * priv
Definition: sccp_internal.h:43
OSMO_SCCP_SSN_GMLC_MAP
@ OSMO_SCCP_SSN_GMLC_MAP
Definition: sccp_sap.h:124
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:133
conn_restart_rx_inact_timer
static void conn_restart_rx_inact_timer(struct sccp_connection *conn)
Definition: sccp_scoc.c:287
sccp_scoc_show_connections
void sccp_scoc_show_connections(struct vty *vty, struct osmo_sccp_instance *inst)
Definition: sccp_scoc.c:1700
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:325
OSMO_SCU_PRIM_N_UNITDATA
@ OSMO_SCU_PRIM_N_UNITDATA
Definition: sccp_sap.h:41
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:274
sccp_connection::user
struct osmo_sccp_user * user
Definition: sccp_scoc.c:94
sccp_connection::t_rep_rel
struct osmo_timer_list t_rep_rel
Definition: sccp_scoc.c:125
XUA_AS_E_TRANSFER_REQ
@ XUA_AS_E_TRANSFER_REQ
Definition: xua_as_fsm.h:10
XUA_ASPAS_ASP_ACTIVE_IND
@ XUA_ASPAS_ASP_ACTIVE_IND
Definition: xua_as_fsm.h:8
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:294
osmo_sccp_user::name
char * name
human-readable name of this user
Definition: sccp_internal.h:32
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:1301
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:217
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:1831
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
asp_notify_all_as
static int asp_notify_all_as(struct osmo_ss7_as *as, struct osmo_xlm_prim_notify *npar)
Definition: xua_as_fsm.c:38
INT_TIMER
#define INT_TIMER
Definition: sccp_scoc.c:73
osmo_sccp_user
Definition: sccp_internal.h:26
XUA_AS_S_ACTIVE
@ XUA_AS_S_ACTIVE
Definition: xua_as_fsm.c:111
m3ua_msg_class_snm
const struct xua_msg_class m3ua_msg_class_snm
Definition: m3ua.c:175
osmo_sccp_addr
Definition: sccp_sap.h:151
RELEASE_REP_TIMER
#define RELEASE_REP_TIMER
Definition: sccp_scoc.c:72
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:782
OSMO_SCCP_GTI_TT_NPL_ENC_NAI
@ OSMO_SCCP_GTI_TT_NPL_ENC_NAI
Definition: sccp_sap.h:74
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:351
sua_aspxm_map
static const struct xua_msg_event_map sua_aspxm_map[]
Definition: sua.c:613
osmo_sccp_user::ssn
uint16_t ssn
SSN and/or point code to which we are bound.
Definition: sccp_internal.h:35
osmo_scu_unitdata_param::in_sequence_control
uint32_t in_sequence_control
Definition: sccp_sap.h:210
SUA_CO_CODT
#define SUA_CO_CODT
Definition: sua.h:77
sccp_connection
Definition: sccp_scoc.c:86
osmo_scu_notice_param::importance
uint32_t importance
Definition: sccp_sap.h:221
scoc_fsm_active
static void scoc_fsm_active(struct osmo_fsm_inst *fi, uint32_t event, void *data)
Definition: sccp_scoc.c:936
osmo_sccp_addr::pc
uint32_t pc
Definition: sccp_sap.h:155
osmo_scu_connect_param::importance
uint32_t importance
Definition: sccp_sap.h:171
osmo_scu_data_param::conn_id
uint32_t conn_id
Definition: sccp_sap.h:178
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:146
SUA_IEI_ROUTE_CTX
#define SUA_IEI_ROUTE_CTX
Definition: sua.h:83
S_IDLE
@ S_IDLE
Definition: sccp_scoc.c:133
sccp_scrc_rx_sclc_msg
int sccp_scrc_rx_sclc_msg(struct osmo_sccp_instance *inst, struct xua_msg *xua)
Definition: sccp_scrc.c:415
sua_rx_mgmt_ntfy
static int sua_rx_mgmt_ntfy(struct osmo_ss7_asp *asp, struct xua_msg *xua)
Definition: sua.c:567
xua_as_fsm_priv::as
struct osmo_ss7_as * as
Definition: xua_as_fsm.c:125
osmo_scu_connect_param
Definition: sccp_sap.h:165
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:496
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:393
osmo_scu_unitdata_param
Definition: sccp_sap.h:207
t_r_callback
static void t_r_callback(void *_fi)
Definition: xua_as_fsm.c:172
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:157
sccp_connection::fi
struct osmo_fsm_inst * fi
Definition: sccp_scoc.c:113
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
osmo_ss7_instance::primary_pc
uint32_t primary_pc
Definition: osmo_ss7.h:95
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:128
tx_relco_from_xua
static void tx_relco_from_xua(struct osmo_sccp_instance *inst, struct xua_msg *in)
Definition: sccp_scoc.c:1337
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:152
S_RESET_IN
@ S_RESET_IN
Definition: sccp_scoc.c:138
sccp_scoc_flush_connections
void sccp_scoc_flush_connections(struct osmo_sccp_instance *inst)
Definition: sccp_scoc.c:1665
osmo_sccp_addr::v4
struct in_addr v4
Definition: sccp_sap.h:158
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:1605
sccp_connection::importance
uint32_t importance
Definition: sccp_scoc.c:105
osmo_scu_disconn_param
Definition: sccp_sap.h:190
OSMO_SS7_ASP_PROT_M3UA
@ OSMO_SS7_ASP_PROT_M3UA
Definition: osmo_ss7.h:273
osmo_mtp_prim::u
union osmo_mtp_prim::@18 u
osmo_scu_data_param
Definition: sccp_sap.h:177
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:42
osmo_scu_unitdata_param::importance
uint32_t importance
Definition: sccp_sap.h:212
OSMO_SCCP_RI_NONE
@ OSMO_SCCP_RI_NONE
Definition: sccp_sap.h:57
osmo_ss7_asp_destroy
void osmo_ss7_asp_destroy(struct osmo_ss7_asp *asp)
Definition: osmo_ss7.c:1179
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:131
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:301
osmo_ss7_pointcode_print2
const char * osmo_ss7_pointcode_print2(const struct osmo_ss7_instance *inst, uint32_t pc)
Definition: osmo_ss7.c:282
osmo_scu_disconn_param::cause
uint32_t cause
Definition: sccp_sap.h:193
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:889
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:1505
xua_as_fsm_priv
Definition: xua_as_fsm.c:124
xua_dialect
Definition: xua_msg.h:55
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:178
sua_rx_mgmt_err
static int sua_rx_mgmt_err(struct osmo_ss7_asp *asp, struct xua_msg *xua)
Definition: sua.c:554
osmo_xlm_prim_name
char * osmo_xlm_prim_name(struct osmo_prim_hdr *oph)
Definition: sccp_sap.c:81
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_connect_param::sccp_class
uint32_t sccp_class
Definition: sccp_sap.h:170
osmo_scu_prim_names
const struct value_string osmo_scu_prim_names[]
Definition: sccp_sap.c:28
osmo_ss7_asp_restart
int osmo_ss7_asp_restart(struct osmo_ss7_asp *asp)
Definition: osmo_ss7.c:1215
OSMO_SCCP_SSN_RES_INTL
@ OSMO_SCCP_SSN_RES_INTL
Definition: sccp_sap.h:118
osmo_ss7_user::priv
void * priv
Definition: osmo_ss7.h:128
SUA_IEI_SRC_ADDR
#define SUA_IEI_SRC_ADDR
Definition: sua.h:98
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:128
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:249
scu_scoc_event_map
static const struct osmo_prim_event_map scu_scoc_event_map[]
Definition: sccp_scoc.c:220
osmo_scu_reset_param::conn_id
uint32_t conn_id
Definition: sccp_sap.h:203
OSMO_SCCP_SSN_RANAP
@ OSMO_SCCP_SSN_RANAP
Definition: sccp_sap.h:122
SCOC_E_RCOC_REL_COMPL_IND
@ SCOC_E_RCOC_REL_COMPL_IND
Definition: sccp_scoc.c:155
osmo_ss7_routing_key::pc
uint32_t pc
Definition: osmo_ss7.h:250
SCOC_E_RCOC_ERROR_IND
@ SCOC_E_RCOC_ERROR_IND
Definition: sccp_scoc.c:162
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
SUA_IEI_HOST
#define SUA_IEI_HOST
Definition: sua.h:125
osmo_xua_server
Definition: osmo_ss7.h:433
scu_prim_conn_id
static uint32_t scu_prim_conn_id(const struct osmo_scu_prim *prim)
Definition: sccp_scoc.c:1585
OSMO_SCCP_SSN_MGMT
@ OSMO_SCCP_SSN_MGMT
Definition: sccp_sap.h:107
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
DEFUN
DEFUN(show_sccp_users, show_sccp_users_cmd, "show cs7 instance <0-15> sccp users", SHOW_STR CS7_STR INST_STR INST_STR "Signaling Connection Control Part\n" "Show List of SCCP Users registered\n")
Definition: sccp_vty.c:55
get_cref_cause_for_ret
static uint8_t get_cref_cause_for_ret(uint8_t ret_cause)
Definition: sccp_scoc.c:1201
osmo_ss7_asp::local
struct osmo_ss7_asp_peer local
Definition: osmo_ss7.h:391
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:413
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:1715
osmo_scu_prim::connect
struct osmo_scu_connect_param connect
Definition: sccp_sap.h:228
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:253
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:385
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
conn_create_id
static struct sccp_connection * conn_create_id(struct osmo_sccp_instance *inst, uint32_t conn_id)
Definition: sccp_scoc.c:365
xua_msg_part::dat
uint8_t * dat
Definition: xua_msg.h:43
conn_start_rep_rel_timer
static void conn_start_rep_rel_timer(struct sccp_connection *conn)
Definition: sccp_scoc.c:313
osmo_scu_connect_param::calling_addr
struct osmo_sccp_addr calling_addr
Definition: sccp_sap.h:167
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:957
LLIST_HEAD
static LLIST_HEAD(sccp_instances)
osmo_ss7_asp::inst
struct osmo_ss7_instance * inst
Definition: osmo_ss7.h:355
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:270
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:141
OSMO_SCCP_ORIG_UNDEFINED
@ OSMO_SCCP_ORIG_UNDEFINED
Definition: sccp_sap.h:186
osmo_scu_data_param::importance
uint32_t importance
Definition: sccp_sap.h:179
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:9
MSEC_TO_S_US
#define MSEC_TO_S_US(x)
Definition: sccp_scoc.c:79
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:114
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:160
osmo_sccp_user_get_priv
void * osmo_sccp_user_get_priv(struct osmo_sccp_user *scu)
Definition: sccp_user.c:144
osmo_scu_disconn_param::importance
uint32_t importance
Definition: sccp_sap.h:195
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:137
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
SUA_IEI_PROTO_CLASS
#define SUA_IEI_PROTO_CLASS
Definition: sua.h:116
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:333
sclc_rx_cldr
static int sclc_rx_cldr(struct osmo_sccp_instance *inst, struct xua_msg *xua)
Definition: sccp_sclc.c:201
OSMO_SCCP_SSN_BISDN
@ OSMO_SCCP_SSN_BISDN
Definition: sccp_sap.h:119
OSMO_SCCP_SSN_RNSAP
@ OSMO_SCCP_SSN_RNSAP
Definition: sccp_sap.h:123
xua_msg_event_map
Definition: xua_msg.h:63
data
uint8_t data[0]
Definition: xua_types.h:5
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:120
conn_start_inact_timers
static void conn_start_inact_timers(struct sccp_connection *conn)
Definition: sccp_scoc.c:293
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.
Definition: sccp_user.c:47
SUA_ASPSM_BEAT
#define SUA_ASPSM_BEAT
Definition: sua.h:52
sccp_scoc_event
sccp_scoc_event
Definition: sccp_scoc.c:143
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:353
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:525
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:232
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:130
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
sua_rx_asp
static int sua_rx_asp(struct osmo_ss7_asp *asp, struct xua_msg *xua)
Definition: sua.c:626
osmo_scu_prim::oph
struct osmo_prim_hdr oph
Definition: sccp_sap.h:226
xua_internal.h
conn_restart_tx_inact_timer
static void conn_restart_tx_inact_timer(struct sccp_connection *conn)
Definition: sccp_scoc.c:281
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:70
osmo_ss7_asp_peer::host
char * host
Definition: osmo_ss7.h:341
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:311
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:185
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:165
xua_as_fsm
struct osmo_fsm xua_as_fsm
Definition: xua_as_fsm.c:372
RX_INACT_TIMER
#define RX_INACT_TIMER
Definition: sccp_scoc.c:70
sccp_scoc_flush_connections
void sccp_scoc_flush_connections(struct osmo_sccp_instance *inst)
Definition: sccp_scoc.c:1665
osmo_sccp_addr_dump
char * osmo_sccp_addr_dump(const struct osmo_sccp_addr *addr)
Definition: sccp_helpers.c:288
osmo_ss7_pointcode_print
const char * osmo_ss7_pointcode_print(const struct osmo_ss7_instance *inst, uint32_t pc)
Definition: osmo_ss7.c:274
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:623
gen_rlsd
static struct xua_msg * gen_rlsd(uint32_t route_ctx, uint32_t dest_ref, uint32_t src_ref)
Definition: sccp_scoc.c:1361
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:226
xua_as_state
xua_as_state
Definition: xua_as_fsm.c:108
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:277
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:146
SCOC_E_RCOC_ROUT_FAIL_IND
@ SCOC_E_RCOC_ROUT_FAIL_IND
Definition: sccp_scoc.c:153
SCOC_E_RCOC_DT1_IND
@ SCOC_E_RCOC_DT1_IND
Definition: sccp_scoc.c:158
OSMO_SCCP_RI_SSN_PC
@ OSMO_SCCP_RI_SSN_PC
Definition: sccp_sap.h:59
osmo_sua_to_sccp
struct msgb * osmo_sua_to_sccp(struct xua_msg *xua)
convert parsed SUA message to SCCP message
Definition: sccp2sua.c:1357
cldt_mand_ies
static const uint16_t cldt_mand_ies[]
Definition: sua.c:121
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:1440
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
OSMO_XLM_PRIM_M_ASP_INACTIVE
@ OSMO_XLM_PRIM_M_ASP_INACTIVE
Definition: sigtran_sap.h:25
osmo_scu_prim::u
union osmo_scu_prim::@30 u
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:135
scoc_event_names
static const struct value_string scoc_event_names[]
Definition: sccp_scoc.c:175
sclc_rx_cldt
static int sclc_rx_cldt(struct osmo_sccp_instance *inst, struct xua_msg *xua)
Definition: sccp_sclc.c:152
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:814
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:1473
scu_msgb_alloc
static struct msgb * scu_msgb_alloc(void)
Definition: sccp_scoc.c:426
OSMO_SCCP_SSN_gsmSCF_MAP
@ OSMO_SCCP_SSN_gsmSCF_MAP
Definition: sccp_sap.h:126
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:30
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:21
osmo_sccp_gt::tt
uint8_t tt
Definition: sccp_sap.h:145
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:393
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:89
XUA_AS_S_PENDING
@ XUA_AS_S_PENDING
Definition: xua_as_fsm.c:112
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:117
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:239
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:362
sccp_msgb_alloc
struct msgb * sccp_msgb_alloc(const char *name)
Definition: sua.c:63
OSMO_SCCP_SSN_CAP
@ OSMO_SCCP_SSN_CAP
Definition: sccp_sap.h:125
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:101
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
xua_msg_add_data
int xua_msg_add_data(struct xua_msg *msg, uint16_t tag, uint16_t len, uint8_t *dat)
Definition: xua_msg.c:61
OSMO_XLM_PRIM_M_SCTP_ESTABLISH
@ OSMO_XLM_PRIM_M_SCTP_ESTABLISH
Definition: sigtran_sap.h:14
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:924
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:122
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:1239
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:385
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:647
mtp_user_prim_cb
static int mtp_user_prim_cb(struct osmo_prim_hdr *oph, void *ctx)
Definition: sccp_user.c:161
SUA_ASPSM_DOWN
#define SUA_ASPSM_DOWN
Definition: sua.h:51
SUA_IEI_CREDIT
#define SUA_IEI_CREDIT
Definition: sua.h:106
OSMO_SCCP_GTI_NAI_ONLY
@ OSMO_SCCP_GTI_NAI_ONLY
Definition: sccp_sap.h:71
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:148
conn_start_rel_timer
static void conn_start_rel_timer(struct sccp_connection *conn)
Definition: sccp_scoc.c:307
osmo_ss7_as::name
char * name
Definition: osmo_ss7.h:300
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:208
SUA_IEI_RX_SEQ_NR
#define SUA_IEI_RX_SEQ_NR
Definition: sua.h:104
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:281
SCOC_E_SCU_N_CONN_RESP
@ SCOC_E_SCU_N_CONN_RESP
Definition: sccp_scoc.c:146
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:591
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:1089
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
osmo_scu_disconn_param::responding_addr
struct osmo_sccp_addr responding_addr
Definition: sccp_sap.h:192
SUA_MSGC_RKM
#define SUA_MSGC_RKM
Definition: sua.h:37
osmo_mtp_transfer_param::sls
uint8_t sls
Definition: mtp_sap.h:39
OSMO_SCCP_SSN_SIWF_MAP
@ OSMO_SCCP_SSN_SIWF_MAP
Definition: sccp_sap.h:127
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:193
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:455
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:108
osmo_ss7_route_destroy
void osmo_ss7_route_destroy(struct osmo_ss7_route *rt)
Destroy a given SS7 route.
Definition: osmo_ss7.c:821
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:207
XUA_ASPAS_ASP_INACTIVE_IND
@ XUA_ASPAS_ASP_INACTIVE_IND
Definition: xua_as_fsm.h:6
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:338
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:233
SCOC_E_CONN_TMR_EXP
@ SCOC_E_CONN_TMR_EXP
Definition: sccp_scoc.c:168
scu_prim_alloc
static struct osmo_scu_prim * scu_prim_alloc(unsigned int primitive, enum osmo_prim_operation operation)
Definition: sccp_scoc.c:609
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:325
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:394
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:73
osmo_ss7_pc_is_valid
static bool osmo_ss7_pc_is_valid(uint32_t pc)
Definition: osmo_ss7.h:32
osmo_ss7_asp::fi
struct osmo_fsm_inst * fi
ASP FSM.
Definition: osmo_ss7.h:358
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:154
osmo_sccp_routing_ind_names
const struct value_string osmo_sccp_routing_ind_names[]
Definition: sccp_sap.c:91
M3UA_NOTIFY_I_AS_ACT
#define M3UA_NOTIFY_I_AS_ACT
Definition: m3ua.h:112
OSMO_SCCP_SSN_HLR
@ OSMO_SCCP_SSN_HLR
Definition: sccp_sap.h:111
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:580
sccp_find_user
static struct osmo_sccp_user * sccp_find_user(struct osmo_sccp_instance *inst, struct xua_msg *xua)
Definition: sccp_scoc.c:1262
osmo_ss7_instance::rtable_system
struct osmo_ss7_route_table * rtable_system
Definition: osmo_ss7.h:87
OSMO_SS7_PC_INVALID
#define OSMO_SS7_PC_INVALID
Definition: osmo_ss7.h:31
INST_STR
#define INST_STR
Definition: xua_internal.h:68
sccp_connection::release_cause
uint32_t release_cause
Definition: sccp_scoc.c:107
SCOC_E_T_INT_EXP
@ SCOC_E_T_INT_EXP
Definition: sccp_scoc.c:171
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:1850
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
osmo_ss7_asp_find_by_name
struct osmo_ss7_asp * osmo_ss7_asp_find_by_name(struct osmo_ss7_instance *inst, const char *name)
Definition: osmo_ss7.c:1055
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:153
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:305
sccp_connection::inst
struct osmo_sccp_instance * inst
Definition: sccp_scoc.c:92
xua_msg_part_get_u32
uint32_t xua_msg_part_get_u32(struct xua_msg_part *part)
Definition: xua_msg.c:286
int_tmr_cb
static void int_tmr_cb(void *data)
Definition: sccp_scoc.c:260
xua_msg.h
osmo_sccp_gt::digits
char digits[32]
Definition: sccp_sap.h:148
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:161
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:318
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:371
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:346
OSMO_SCCP_SSN_OMAP
@ OSMO_SCCP_SSN_OMAP
Definition: sccp_sap.h:109
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:442
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:746
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:312
OSMO_SCCP_SSN_MAP
@ OSMO_SCCP_SSN_MAP
Definition: sccp_sap.h:110
osmo_ss7_linkset::cfg
struct osmo_ss7_linkset::@22 cfg
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:600
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:139
gen_coerr
static struct xua_msg * gen_coerr(uint32_t route_ctx, uint32_t dest_ref, uint32_t err_cause)
Definition: sccp_scoc.c:1287
SUA_IEI_CAUSE
#define SUA_IEI_CAUSE
Definition: sua.h:102
osmo_ss7_asp::is_server
bool is_server
Definition: osmo_ss7.h:389
osmo_sccp_gt
Definition: sccp_sap.h:143
MSEC_TO_S_US
#define MSEC_TO_S_US(x)
Definition: xua_as_fsm.c:106
osmo_scu_unitdata_param::return_option
uint32_t return_option
Definition: sccp_sap.h:211
OSMO_XLM_PRIM_M_AS_STATUS
@ OSMO_XLM_PRIM_M_AS_STATUS
Definition: sigtran_sap.h:19
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
RELEASE_TIMER
#define RELEASE_TIMER
Definition: sccp_scoc.c:71
S
#define S(x)
Definition: xua_as_fsm.c:104
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:209
sccp_connection::conn_id
uint32_t conn_id
Definition: sccp_scoc.c:102
xua_asp_fsm.h
osmo_sccp_instance::route_ctx
uint32_t route_ctx
Definition: sccp_internal.h:17
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
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:327
osmo_ss7_user::name
const char * name
Definition: osmo_ss7.h:124
osmo_sccp_user::list
struct llist_head list
entry in list of sccp users of osmo_sccp_instance
Definition: sccp_internal.h:28
rx_inact_tmr_cb
static void rx_inact_tmr_cb(void *data)
Definition: sccp_scoc.c:246
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:1789
OSMO_XLM_PRIM_M_ERROR
@ OSMO_XLM_PRIM_M_ERROR
Definition: sigtran_sap.h:21
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:123
osmo_ss7_pc_is_local
bool osmo_ss7_pc_is_local(struct osmo_ss7_instance *inst, uint32_t pc)
Definition: osmo_ss7.c:1867
OSMO_SS7_ASP_PROT_SUA
@ OSMO_SS7_ASP_PROT_SUA
Definition: osmo_ss7.h:272
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:194
SUA_CO_CORE
#define SUA_CO_CORE
Definition: sua.h:70
osmo_ss7_as::proto
enum osmo_ss7_asp_protocol proto
Definition: osmo_ss7.h:302
conn_create
static struct sccp_connection * conn_create(struct osmo_sccp_instance *inst)
Definition: sccp_scoc.c:400
S_BOTHWAY_RESET
@ S_BOTHWAY_RESET
Definition: sccp_scoc.c:140
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:1505
sccp_helpers.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:97
osmo_sccp_gt::nai
uint32_t nai
Definition: sccp_sap.h:147
m3ua_ntfy_other_names
const struct value_string m3ua_ntfy_other_names[]
Definition: m3ua.c:93
xua_to_msg
struct msgb * xua_to_msg(const int version, struct xua_msg *msg)
Definition: xua_msg.c:203
osmo_scu_notice_param::cause
uint32_t cause
Definition: sccp_sap.h:220
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:1675
osmo_ss7_asp::cfg
struct osmo_ss7_asp::@27 cfg
osmo_ss7_as::routing_key
struct osmo_ss7_routing_key routing_key
Definition: osmo_ss7.h:303
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:152
sccp_connection::sccp_class
uint32_t sccp_class
Definition: sccp_scoc.c:106
sccp_scrc_rx_sclc_msg
int sccp_scrc_rx_sclc_msg(struct osmo_sccp_instance *inst, struct xua_msg *xua)
Definition: sccp_scrc.c:415
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:122
SUA_VERSION
#define SUA_VERSION
Definition: sua.h:26
SCOC_E_T_REL_EXP
@ SCOC_E_T_REL_EXP
Definition: sccp_scoc.c:170
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:728
sccp_connection::calling_addr
struct osmo_sccp_addr calling_addr
Definition: sccp_scoc.c:100
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:1177
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:166
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
SUA_CO_COIT
#define SUA_CO_COIT
Definition: sua.h:80
osmo_sccp_addr::ip
union osmo_sccp_addr::@29 ip
osmo_scu_prim::disconnect
struct osmo_scu_disconn_param disconnect
Definition: sccp_sap.h:230
osmo_sccp_to_xua
struct xua_msg * osmo_sccp_to_xua(struct msgb *msg)
convert SCCP message to a SUA message
Definition: sccp2sua.c:1289
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:73
osmo_scu_notice_param::calling_addr
struct osmo_sccp_addr calling_addr
Definition: sccp_sap.h:219
OSMO_SCCP_SSN_BSSAP
@ OSMO_SCCP_SSN_BSSAP
Definition: sccp_sap.h:136
m3ua_msg_class_asptm
const struct xua_msg_class m3ua_msg_class_asptm
Definition: m3ua.c:211
OSMO_SCCP_SSN_MSC_BSSAP_LE
@ OSMO_SCCP_SSN_MSC_BSSAP_LE
Definition: sccp_sap.h:133
sua_rx_cl
static int sua_rx_cl(struct osmo_ss7_asp *asp, struct xua_msg *xua)
Definition: sua.c:504
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:539
rep_rel_tmr_cb
static void rep_rel_tmr_cb(void *data)
Definition: sccp_scoc.c:267
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:892
OSMO_SCCP_GTI_NO_GT
@ OSMO_SCCP_GTI_NO_GT
Definition: sccp_sap.h:70
osmo_ss7_route
Definition: osmo_ss7.h:201
xua_dialect_sua
const struct xua_dialect xua_dialect_sua
Definition: sua.c:215
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:327
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:1323
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:251
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:258
osmo_scu_disconn_param::conn_id
uint32_t conn_id
Definition: sccp_sap.h:194
conn_tmr_cb
static void conn_tmr_cb(void *data)
Definition: sccp_scoc.c:274
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:713
osmo_scu_prim
Definition: sccp_sap.h:225
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:385
OSMO_SCCP_SSN_BSC_BSSAP_LE
@ OSMO_SCCP_SSN_BSC_BSSAP_LE
Definition: sccp_sap.h:132
osmo_sccp_user_unbind
void osmo_sccp_user_unbind(struct osmo_sccp_user *scu)
Unbind a given SCCP user.
Definition: sccp_user.c:129
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:387
sccp_connection::t_ias
struct osmo_timer_list t_ias
Definition: sccp_scoc.c:119
SCOC_E_RCOC_DT2_IND
@ SCOC_E_RCOC_DT2_IND
Definition: sccp_scoc.c:159
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:300
sccp_scoc_show_connections
void sccp_scoc_show_connections(struct vty *vty, struct osmo_sccp_instance *inst)
Definition: sccp_scoc.c:1700
XUA_AS_S_DOWN
@ XUA_AS_S_DOWN
Definition: xua_as_fsm.c:109
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:231
sccp_connection::incoming
bool incoming
Definition: sccp_scoc.c:110
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:211
m3ua_encode_notify
struct xua_msg * m3ua_encode_notify(const struct osmo_xlm_prim_notify *npar)
Definition: m3ua.c:380
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:251
OSMO_SCCP_SSN_SMLC_BSSAP
@ OSMO_SCCP_SSN_SMLC_BSSAP
Definition: sccp_sap.h:134
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:366
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:103
S
#define S(x)
Definition: sccp_scoc.c:64
osmo_scu_connect_param::conn_id
uint32_t conn_id
Definition: sccp_sap.h:172
LOGPASP
#define LOGPASP(asp, subsys, level, fmt, args ...)
Definition: osmo_ss7.h:422
S_ACTIVE
@ S_ACTIVE
Definition: sccp_scoc.c:136
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:1239
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:449
show_user
static void show_user(struct vty *vty, struct osmo_sccp_user *user)
Definition: sccp_vty.c:43
XUA_AS_S_INACTIVE
@ XUA_AS_S_INACTIVE
Definition: xua_as_fsm.c:110
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:153
OSMO_SCCP_GTI_TT_ONLY
@ OSMO_SCCP_GTI_TT_ONLY
Definition: sccp_sap.h:72
conn_stop_connect_timer
static void conn_stop_connect_timer(struct sccp_connection *conn)
Definition: sccp_scoc.c:339
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:172
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:645
OSMO_SCCP_SSN_TC_TEST
@ OSMO_SCCP_SSN_TC_TEST
Definition: sccp_sap.h:120
osmo_sccp_instance::list
struct llist_head list
Definition: sccp_internal.h:11
osmo_ss7_asp
Definition: osmo_ss7.h:352
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:13
SUA_IEI_DIAG_INFO
#define SUA_IEI_DIAG_INFO
Definition: sua.h:84
xua_as_event
xua_as_event
Definition: xua_as_fsm.h:5
SUA_MSGC_ASPSM
#define SUA_MSGC_ASPSM
Definition: sua.h:33
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:474
OSMO_SCCP_RI_GT
@ OSMO_SCCP_RI_GT
Definition: sccp_sap.h:58
SUA_IEI_CORR_ID
#define SUA_IEI_CORR_ID
Definition: sua.h:91
OSMO_SCCP_SSN_BSS_OAM
@ OSMO_SCCP_SSN_BSS_OAM
Definition: sccp_sap.h:135
xua_msg_dump
char * xua_msg_dump(struct xua_msg *xua, const struct xua_dialect *dialect)
Definition: xua_msg.c:494
osmo_ss7_asp::asp_id_present
bool asp_id_present
Definition: osmo_ss7.h:372
osmo_sccp_instance::ss7_user
struct osmo_ss7_user ss7_user
Definition: sccp_internal.h:23
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:432
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:122
osmo_sccp_instance_destroy
void osmo_sccp_instance_destroy(struct osmo_sccp_instance *inst)
Definition: sccp_user.c:219
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:115
sccp_connection::list
struct llist_head list
Definition: sccp_scoc.c:90
SUA_CAUSE_T_REFUSAL
#define SUA_CAUSE_T_REFUSAL
Definition: sua.h:135
SUA_ERR_MISSING_PARAM
#define SUA_ERR_MISSING_PARAM
Definition: sua.h:156
OSMO_SCCP_SSN_GGSN_MAP
@ OSMO_SCCP_SSN_GGSN_MAP
Definition: sccp_sap.h:129
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:1147
osmo_ss7_routing_key::context
uint32_t context
Definition: osmo_ss7.h:247
msg_type
uint8_t msg_type
Definition: xua_types.h:3
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:472
osmo_sccp_user::pc
uint32_t pc
Definition: sccp_internal.h:36
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:218
osmo_ss7_as_destroy
void osmo_ss7_as_destroy(struct osmo_ss7_as *as)
Destroy given Application Server.
Definition: osmo_ss7.c:1012
osmo_ss7_asp_protocol_port
int osmo_ss7_asp_protocol_port(enum osmo_ss7_asp_protocol prot)
Definition: osmo_ss7.c:313
osmo_sccp_addr::gt
struct osmo_sccp_gt gt
Definition: sccp_sap.h:154
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:153
osmo_ss7_asp::remote
struct osmo_ss7_asp_peer remote
Definition: osmo_ss7.h:392
scoc_fsm_idle_onenter
static void scoc_fsm_idle_onenter(struct osmo_fsm_inst *fi, uint32_t old_state)
Definition: sccp_scoc.c:783
xua_as_transmit_msg
int xua_as_transmit_msg(struct osmo_ss7_as *as, struct msgb *msg)
Definition: xua_as_fsm.c:75
osmo_sccp_gt::gti
uint8_t gti
Definition: sccp_sap.h:144
SUA_CO_COERR
#define SUA_CO_COERR
Definition: sua.h:79
xua_msg
Definition: xua_msg.h:31
SCOC_E_SCU_N_EXP_DATA_REQ
@ SCOC_E_SCU_N_EXP_DATA_REQ
Definition: sccp_scoc.c:149
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:492
osmo_sccp_instance::next_id
uint32_t next_id
Definition: sccp_internal.h:19
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:153
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:789
CONNECTION_TIMER
#define CONNECTION_TIMER
Definition: sccp_scoc.c:68
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:291
OSMO_SCCP_RI_SSN_IP
@ OSMO_SCCP_RI_SSN_IP
Definition: sccp_sap.h:60
xua_as_fsm_priv::t_r
struct osmo_timer_list t_r
Definition: xua_as_fsm.c:127
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:113
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.
Definition: sccp_user.c:47
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:1211
osmo_scu_disconn_param::originator
enum osmo_sccp_originator originator
Definition: sccp_sap.h:191
sccp_connection::t_int
struct osmo_timer_list t_int
Definition: sccp_scoc.c:124
tx_rlsd_from_xua_twoway
static void tx_rlsd_from_xua_twoway(struct sccp_connection *conn, struct xua_msg *in)
Definition: sccp_scoc.c:1375
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:92
xua_as_event_names
static const struct value_string xua_as_event_names[]
Definition: xua_as_fsm.c:115
XUA_ASPAS_ASP_DOWN_IND
@ XUA_ASPAS_ASP_DOWN_IND
Definition: xua_as_fsm.h:7
xua_msg::mtp
struct osmo_mtp_transfer_param mtp
Definition: xua_msg.h:33
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:589
osmo_sccp_instance::users
struct llist_head users
Definition: sccp_internal.h:15
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:434
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:518
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:1133
conn_start_int_timer
static void conn_start_int_timer(struct sccp_connection *conn)
Definition: sccp_scoc.c:319
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:1407
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:145
XUA_HDR
#define XUA_HDR(class, type)
Definition: xua_msg.h:25
osmo_sccp_addr::ssn
uint32_t ssn
Definition: sccp_sap.h:156