chan_pjsip: Use session for retrieving CHANNEL() information.
authorJoshua Colp <jcolp@digium.com>
Thu, 22 Dec 2016 22:00:58 +0000 (22:00 +0000)
committerJoshua Colp <jcolp@digium.com>
Tue, 3 Jan 2017 11:47:05 +0000 (05:47 -0600)
commitae57652983ffd9d7307d3568d82939516a6803b9
tree59c351e95832f2504d2ddf26e274171117f8f40a
parent059a54202c43ed19c802efb153f0da4962e5b75c
chan_pjsip: Use session for retrieving CHANNEL() information.

The CHANNEL() dialplan function implementation for PJSIP allows
querying of PJSIP specific information. This used the channel
passed in to get the PJSIP session and associated information.
It is possible for this channel to be masqueraded and end
up as a different channel type by the time the information
request is actually acted upon.

This change retrieves the PJSIP session safely and accesses
data from it (including channel). This provides a guarantee
that the session and channel will not be altered when the
request is being acted upon.

ASTERISK-26673

Change-Id: I335e12b89e1820cafdd92b3e7526b8ba649eb7e6
channels/pjsip/dialplan_functions.c