aboutsummaryrefslogtreecommitdiffstats
path: root/src/osmo_ss7_hmrt.c
diff options
context:
space:
mode:
authorHarald Welte <laforge@gnumonks.org>2017-04-02 11:58:17 +0200
committerHarald Welte <laforge@gnumonks.org>2017-04-18 10:08:25 +0000
commit5f0a8df34cae20455a520c3a85cf94124f486bf2 (patch)
treea3be446812b69c3725fb5f6b655af053d7c474e7 /src/osmo_ss7_hmrt.c
parentafc3b856135237c8ce85ca39a42da892e5bdd9de (diff)
Add IPA/SCCPlite support as SIGTRAN alternative
This tries as good as possible to fit the IPA/SCCPlite stacking into the existing SIGTRAN/SS7 code architecture/model. To the user, the IPA protocol looks like yet another protocol on the same level as the choice between SUA and M3AU. On the inside, things are obviously quite different. We need to handle TCP with IPA framing instead of SCTP for both server and client. We also implement an alternative "ASP FSM" for IPA, which takes care of the CCM handshake (ID_REQ/ID_RESP/ID_ACK/ID_ACK2) for both client and server mode. In server mode, we use the 'unit name' as identifier to look up the AS, similar to how we use a routing context to look up the AS in the xUA case. We also have to bypass activating the default layer manager in the simple client to make sure we don't run into even more complexity. What's missing right now is some way to manually override/set the point codes. As IPA/SCCPlite is missing any routing label, we currently simply generate one with SPC=0/DPC=0, which will obviously not work in most configurations. Change-Id: I9098574cddeba10fcf8f1b6c196a7069a6805c56
Diffstat (limited to 'src/osmo_ss7_hmrt.c')
-rw-r--r--src/osmo_ss7_hmrt.c2
1 files changed, 2 insertions, 0 deletions
diff --git a/src/osmo_ss7_hmrt.c b/src/osmo_ss7_hmrt.c
index ce0728b..bbbb3a9 100644
--- a/src/osmo_ss7_hmrt.c
+++ b/src/osmo_ss7_hmrt.c
@@ -141,6 +141,8 @@ static int hmrt_message_for_routing(struct osmo_ss7_instance *inst,
switch (as->cfg.proto) {
case OSMO_SS7_ASP_PROT_M3UA:
return m3ua_tx_xua_as(as,xua);
+ case OSMO_SS7_ASP_PROT_IPA:
+ return ipa_tx_xua_as(as, xua);
default:
LOGP(DLSS7, LOGL_ERROR, "MTP message "
"for ASP of unknown protocol%u\n",