diff options
author | Alexander Couzens <lynxis@fe80.eu> | 2019-08-13 17:42:50 +0200 |
---|---|---|
committer | Alexander Couzens <lynxis@fe80.eu> | 2019-09-03 18:44:34 +0200 |
commit | efdd80dc0ad218a5a5e02898e8993c69ed020098 (patch) | |
tree | d00512d08b583e93208208dd3b6bf32cecc26766 /src/iu_client.c | |
parent | 609994d1468af27d0af4427e6b57df580fc80a7a (diff) |
iu_client: emit RANAP_IU_EVENT_LINK_INVALIDATED on SCCP disconnect indication
Change-Id: I168b5c67336c4d1cb9fcebb9c26a7cf2fc46e420
Diffstat (limited to 'src/iu_client.c')
-rw-r--r-- | src/iu_client.c | 7 |
1 files changed, 7 insertions, 0 deletions
diff --git a/src/iu_client.c b/src/iu_client.c index c7ed341..7a0a78e 100644 --- a/src/iu_client.c +++ b/src/iu_client.c @@ -812,6 +812,13 @@ static int sccp_sap_up(struct osmo_prim_hdr *oph, void *_scu) rc = 0; if (msgb_l2len(oph->msg) > 0) rc = ranap_cn_rx_co(cn_ranap_handle_co, ue, msgb_l2(oph->msg), msgb_l2len(oph->msg)); + + /* A Iu Release event might be used to free the UE in cn_ranap_handle_co. */ + ue = ue_conn_ctx_find(prim->u.disconnect.conn_id); + if (!ue) + break; + + global_iu_event_cb(ue, RANAP_IU_EVENT_LINK_INVALIDATED, NULL); break; case OSMO_PRIM(OSMO_SCU_PRIM_N_DATA, PRIM_OP_INDICATION): /* connection-oriented data received */ |