Harald Welte has submitted this change and it was merged.

Change subject: Fix SCCP client crash on xUA server (STP) disconnect
......................................................................


Fix SCCP client crash on xUA server (STP) disconnect

When the server (STP) disappears from a live SCCP client,
then the xUA default layer manager receives LM_E_SCTP_DISC_IND,
which is traversing retart_asp().  In there, we first terminate
the current instance of the layer manager FSM, and then re-initialize
the ASP to use the default layer manager using
osmo_ss7_asp_use_default_lm().

However, osmo_ss7_asp_use_default_lm() uses the presence of an
asp->lm_priv pointer as a sign that the old layer manager is still
running and attempts to terminate it - despite being terminated
just before in restart_as().

So let's simply remove the termination from restart_asp(), and
leave it to osmo_ss7_asp_use_default_lm().

Fixes: OS#2402
Change-Id: I062d3af17539de864b56d079fe9b8d76ad99cf1e
---
M src/xua_default_lm_fsm.c
1 file changed, 0 insertions(+), 1 deletion(-)

Approvals:
  Harald Welte: Looks good to me, approved
  Jenkins Builder: Verified



diff --git a/src/xua_default_lm_fsm.c b/src/xua_default_lm_fsm.c
index 2a03cbc..64f26c3 100644
--- a/src/xua_default_lm_fsm.c
+++ b/src/xua_default_lm_fsm.c
@@ -126,7 +126,6 @@
        int log_level = fi->log_level;
 
        osmo_ss7_asp_restart(asp);
-       osmo_fsm_inst_term(fi, OSMO_FSM_TERM_ERROR, NULL);
        osmo_ss7_asp_use_default_lm(asp, log_level);
 }
 

-- 
To view, visit https://gerrit.osmocom.org/3535
To unsubscribe, visit https://gerrit.osmocom.org/settings

Gerrit-MessageType: merged
Gerrit-Change-Id: I062d3af17539de864b56d079fe9b8d76ad99cf1e
Gerrit-PatchSet: 1
Gerrit-Project: libosmo-sccp
Gerrit-Branch: master
Gerrit-Owner: Harald Welte <[email protected]>
Gerrit-Reviewer: Harald Welte <[email protected]>
Gerrit-Reviewer: Jenkins Builder

Reply via email to