diff options
author | Harald Welte <laforge@gnumonks.org> | 2018-10-21 12:26:39 +0200 |
---|---|---|
committer | Harald Welte <laforge@gnumonks.org> | 2018-10-21 12:19:50 +0000 |
commit | a52eed1d16d18fc577e6721974102c4614cdd44d (patch) | |
tree | e8536d0f3387be78a13065d082424c1aec4b6f57 /src | |
parent | 3c4661b5c883a98f1b84bedad212db45cd05b299 (diff) |
subscr_conn_fsm: Fix null-pointer deref / N-CONNECT.ind from unknown MSC
Change-Id: Id0eca3dd729d2e4c8c6ff83f05efde00b42c16f1
Fixes: Coverity CID#188860
Diffstat (limited to 'src')
-rw-r--r-- | src/osmo-bsc/bsc_subscr_conn_fsm.c | 5 |
1 files changed, 3 insertions, 2 deletions
diff --git a/src/osmo-bsc/bsc_subscr_conn_fsm.c b/src/osmo-bsc/bsc_subscr_conn_fsm.c index 52afd5498..bca9e1f87 100644 --- a/src/osmo-bsc/bsc_subscr_conn_fsm.c +++ b/src/osmo-bsc/bsc_subscr_conn_fsm.c @@ -276,8 +276,9 @@ static void gscon_fsm_init(struct osmo_fsm_inst *fi, uint32_t event, void *data) if (!conn->sccp.msc) { LOGPFSML(fi, LOGL_NOTICE, "N-CONNECT.ind from unknown MSC %s\n", osmo_sccp_addr_dump(&scu_prim->u.connect.calling_addr)); - osmo_sccp_tx_disconn(conn->sccp.msc->a.sccp_user, scu_prim->u.connect.conn_id, - &scu_prim->u.connect.called_addr, 0); + /* We cannot find a way to the sccp_user without the MSC, so we cannot + * use osmo_sccp_tx_disconn() :( */ + //osmo_sccp_tx_disconn(conn->sccp.msc->a.sccp_user, scu_prim->u.connect.conn_id, &scu_prim->u.connect.called_addr, 0); osmo_fsm_inst_term(fi, OSMO_FSM_TERM_REGULAR, NULL); return; } |