libosmo-sigtran: src/xua_asp_fsm.h Source File

libosmo-sigtran 2.2.1.95-893c Osmocom SIGTRAN library

xua_asp_fsm.h
Go to the documentation of this file.
1#pragma once
2
3 enum xua_asp_state {
4 XUA_ASP_S_DOWN,
5 XUA_ASP_S_INACTIVE,
6 XUA_ASP_S_ACTIVE,
7};
8
9 enum xua_asp_event {
10 XUA_ASP_E_M_ASP_UP_REQ,
11 XUA_ASP_E_M_ASP_ACTIVE_REQ,
12 XUA_ASP_E_M_ASP_DOWN_REQ,
13 XUA_ASP_E_M_ASP_INACTIVE_REQ,
14
15 XUA_ASP_E_SCTP_COMM_DOWN_IND,
16 XUA_ASP_E_SCTP_RESTART_IND,
17 XUA_ASP_E_SCTP_EST_IND,
18
19 XUA_ASP_E_ASPSM_ASPUP,
20 XUA_ASP_E_ASPSM_ASPUP_ACK,
21 XUA_ASP_E_ASPTM_ASPAC,
22 XUA_ASP_E_ASPTM_ASPAC_ACK,
23 XUA_ASP_E_ASPSM_ASPDN,
24 XUA_ASP_E_ASPSM_ASPDN_ACK,
25 XUA_ASP_E_ASPTM_ASPIA,
26 XUA_ASP_E_ASPTM_ASPIA_ACK,
27
28 XUA_ASP_E_ASPSM_BEAT,
29 XUA_ASP_E_ASPSM_BEAT_ACK,
30
31 /* Rx M3UA MGMT Error message from peer */
32 XUA_ASP_E_MGMT_ERROR,
33
34 /* The ASP was added to an AS. data: (struct osmo_ss7_as *) */
35 XUA_ASP_E_AS_ASSIGNED,
36
37 /* The ASP became administratively (un)blocked */
38 XUA_ASP_E_ADM_BLOCKED,
39 XUA_ASP_E_ADM_UNBLOCKED,
40
41 /* IPA specific */
42 IPA_ASP_E_ID_RESP,
43 IPA_ASP_E_ID_ACK,
44 IPA_ASP_E_ID_GET,
45
46 _NUM_XUA_ASP_E
47};
48
49extern struct osmo_fsm xua_asp_fsm;
50extern struct osmo_fsm ipa_asp_fsm;
51
52int xua_asp_fsm_start(struct osmo_ss7_asp *asp, int log_level);
osmo_ss7_asp
Definition: ss7_asp.h:55
xua_asp_event
xua_asp_event
Definition: xua_asp_fsm.h:9
XUA_ASP_E_SCTP_EST_IND
@ XUA_ASP_E_SCTP_EST_IND
Definition: xua_asp_fsm.h:17
XUA_ASP_E_ASPTM_ASPAC_ACK
@ XUA_ASP_E_ASPTM_ASPAC_ACK
Definition: xua_asp_fsm.h:22
XUA_ASP_E_ASPSM_BEAT_ACK
@ XUA_ASP_E_ASPSM_BEAT_ACK
Definition: xua_asp_fsm.h:29
IPA_ASP_E_ID_RESP
@ IPA_ASP_E_ID_RESP
Definition: xua_asp_fsm.h:42
XUA_ASP_E_ASPSM_ASPDN
@ XUA_ASP_E_ASPSM_ASPDN
Definition: xua_asp_fsm.h:23
IPA_ASP_E_ID_ACK
@ IPA_ASP_E_ID_ACK
Definition: xua_asp_fsm.h:43
XUA_ASP_E_ADM_BLOCKED
@ XUA_ASP_E_ADM_BLOCKED
Definition: xua_asp_fsm.h:38
XUA_ASP_E_SCTP_RESTART_IND
@ XUA_ASP_E_SCTP_RESTART_IND
Definition: xua_asp_fsm.h:16
XUA_ASP_E_ASPSM_ASPUP
@ XUA_ASP_E_ASPSM_ASPUP
Definition: xua_asp_fsm.h:19
XUA_ASP_E_ADM_UNBLOCKED
@ XUA_ASP_E_ADM_UNBLOCKED
Definition: xua_asp_fsm.h:39
XUA_ASP_E_ASPSM_ASPDN_ACK
@ XUA_ASP_E_ASPSM_ASPDN_ACK
Definition: xua_asp_fsm.h:24
XUA_ASP_E_M_ASP_INACTIVE_REQ
@ XUA_ASP_E_M_ASP_INACTIVE_REQ
Definition: xua_asp_fsm.h:13
XUA_ASP_E_ASPSM_ASPUP_ACK
@ XUA_ASP_E_ASPSM_ASPUP_ACK
Definition: xua_asp_fsm.h:20
XUA_ASP_E_ASPTM_ASPAC
@ XUA_ASP_E_ASPTM_ASPAC
Definition: xua_asp_fsm.h:21
XUA_ASP_E_M_ASP_ACTIVE_REQ
@ XUA_ASP_E_M_ASP_ACTIVE_REQ
Definition: xua_asp_fsm.h:11
XUA_ASP_E_ASPTM_ASPIA_ACK
@ XUA_ASP_E_ASPTM_ASPIA_ACK
Definition: xua_asp_fsm.h:26
XUA_ASP_E_SCTP_COMM_DOWN_IND
@ XUA_ASP_E_SCTP_COMM_DOWN_IND
Definition: xua_asp_fsm.h:15
IPA_ASP_E_ID_GET
@ IPA_ASP_E_ID_GET
Definition: xua_asp_fsm.h:44
XUA_ASP_E_ASPTM_ASPIA
@ XUA_ASP_E_ASPTM_ASPIA
Definition: xua_asp_fsm.h:25
XUA_ASP_E_ASPSM_BEAT
@ XUA_ASP_E_ASPSM_BEAT
Definition: xua_asp_fsm.h:28
XUA_ASP_E_M_ASP_UP_REQ
@ XUA_ASP_E_M_ASP_UP_REQ
Definition: xua_asp_fsm.h:10
XUA_ASP_E_M_ASP_DOWN_REQ
@ XUA_ASP_E_M_ASP_DOWN_REQ
Definition: xua_asp_fsm.h:12
XUA_ASP_E_MGMT_ERROR
@ XUA_ASP_E_MGMT_ERROR
Definition: xua_asp_fsm.h:32
_NUM_XUA_ASP_E
@ _NUM_XUA_ASP_E
Definition: xua_asp_fsm.h:46
XUA_ASP_E_AS_ASSIGNED
@ XUA_ASP_E_AS_ASSIGNED
Definition: xua_asp_fsm.h:35
xua_asp_fsm
struct osmo_fsm xua_asp_fsm
Definition: xua_asp_fsm.c:1039
ipa_asp_fsm
struct osmo_fsm ipa_asp_fsm
Definition: xua_asp_fsm.c:1596
xua_asp_fsm_start
int xua_asp_fsm_start(struct osmo_ss7_asp *asp, int log_level)
Start a new ASP finite state machine for given ASP (stored in asp->fi)
Definition: xua_asp_fsm.c:1064
xua_asp_state
xua_asp_state
Definition: xua_asp_fsm.h:3
XUA_ASP_S_DOWN
@ XUA_ASP_S_DOWN
Definition: xua_asp_fsm.h:4
XUA_ASP_S_ACTIVE
@ XUA_ASP_S_ACTIVE
Definition: xua_asp_fsm.h:6
XUA_ASP_S_INACTIVE
@ XUA_ASP_S_INACTIVE
Definition: xua_asp_fsm.h:5