res_pjsip: Prevent access of NULL channels.
authorMark Michelson <mmichelson@digium.com>
Wed, 3 Jun 2015 22:41:23 +0000 (17:41 -0500)
committerMark Michelson <mmichelson@digium.com>
Wed, 3 Jun 2015 22:41:23 +0000 (17:41 -0500)
commit92ccffd9e676f04c2959afcc00c1f8739786744f
tree57218c099a5fc48ff258ee59f7935d20ee194582
parentd355ee7ff3cfe1737d80da874ea93eee340cdf6f
res_pjsip: Prevent access of NULL channels.

It is possible to receive incoming requests or responses after the channel
on an ast_sip_session has been destroyed and NULLed out. Handlers of these
sorts of requests or responses need to be prepared for the possibility
that the channel is NULL or else they could cause a crash.

While several places have been amended to deal with NULL channels, there
were still a couple of places that needed updating.

res_pjsip_dtmf_info.c: When handling incoming INFO requests, we need to
return early if there is no channel on the session.

res_pjsip_session.c: When handling a 302 response, we need to stop the
redirecting attempt if there is no channel on the session.

ASTERISK-25148 #close
reported by Mark Michelson

Change-Id: Id1a75ffc3d0eaa168b0b28188fb54d6cf9fc47a9
res/res_pjsip_dtmf_info.c
res/res_pjsip_session.c