diff options
author | Vadim Yanitskiy <vyanitskiy@sysmocom.de> | 2021-10-26 10:25:36 +0300 |
---|---|---|
committer | Vadim Yanitskiy <vyanitskiy@sysmocom.de> | 2021-10-26 10:25:39 +0300 |
commit | 583883bf2e4fbeac7594e027d47cdc271534ffba (patch) | |
tree | 1e4a28990b711bd7af2a1ff6360c747b78836e9b | |
parent | a1a70be593a341f48fd7eeca96e6663109868370 (diff) |
libmsc: fix NULL pointer dereference in trans_lcls_compose()
Change-Id: I96342de4cb3e0bc3d3cac7538d4517aa211e8a38
Fixes: CID#240768
-rw-r--r-- | src/libmsc/transaction.c | 10 |
1 files changed, 5 insertions, 5 deletions
diff --git a/src/libmsc/transaction.c b/src/libmsc/transaction.c index 2108ab492..25c0e3c50 100644 --- a/src/libmsc/transaction.c +++ b/src/libmsc/transaction.c @@ -112,6 +112,11 @@ struct gsm_trans *trans_find_by_sm_rp_mr(const struct gsm_network *net, struct osmo_lcls *trans_lcls_compose(const struct gsm_trans *trans, bool use_lac) { + if (!trans) { + LOGP(DCC, LOGL_ERROR, "LCLS: unable to fill parameters for unallocated transaction\n"); + return NULL; + } + if (!trans->net->a.sri->sccp) return NULL; @@ -119,11 +124,6 @@ struct osmo_lcls *trans_lcls_compose(const struct gsm_trans *trans, bool use_lac struct osmo_lcls *lcls; uint8_t w = osmo_ss7_pc_width(&ss7->cfg.pc_fmt); - if (!trans) { - LOGP(DCC, LOGL_ERROR, "LCLS: unable to fill parameters for unallocated transaction\n"); - return NULL; - } - if (!trans->net->lcls_permitted) { LOGP(DCC, LOGL_NOTICE, "LCLS disabled globally\n"); return NULL; |