From a341d58fbdf6b8bd7d1dd9509dc5319bee206168 Mon Sep 17 00:00:00 2001 From: Harald Welte Date: Sun, 29 Dec 2019 00:26:14 +0100 Subject: [PATCH] ftmod_libpri: Fix NULL pointer deref in on_hangup() --- libs/freetdm/src/ftmod/ftmod_libpri/ftmod_libpri.c | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/libs/freetdm/src/ftmod/ftmod_libpri/ftmod_libpri.c b/libs/freetdm/src/ftmod/ftmod_libpri/ftmod_libpri.c index 99e1d5c5fb..0bba203497 100644 --- a/libs/freetdm/src/ftmod/ftmod_libpri/ftmod_libpri.c +++ b/libs/freetdm/src/ftmod/ftmod_libpri/ftmod_libpri.c @@ -1405,12 +1405,13 @@ static int on_hangup(lpwrap_pri_t *spri, lpwrap_pri_event_t event_type, pri_even { ftdm_span_t *span = spri->span; ftdm_channel_t *chan = ftdm_span_get_channel(span, pevent->hangup.channel); - ftdm_libpri_b_chan_t *chan_priv = chan->call_data; + ftdm_libpri_b_chan_t *chan_priv; if (!chan) { ftdm_log(FTDM_LOG_CRIT, "-- Hangup on channel %d:%d but it's not in use?\n", ftdm_span_get_id(spri->span), pevent->hangup.channel); return 0; } + chan_priv = chan->call_data; ftdm_channel_lock(chan);