summaryrefslogtreecommitdiff
path: root/res/res_pjsip_exten_state.c
diff options
context:
space:
mode:
authorKevin Harwell <kharwell@digium.com>2014-10-30 21:14:01 +0000
committerKevin Harwell <kharwell@digium.com>2014-10-30 21:14:01 +0000
commita537e314d1875dbc4af0a16ae6cbcde9fe18fa21 (patch)
tree7c8467b6261ab94945004b4c8769eb04df1afaca /res/res_pjsip_exten_state.c
parentcd52456ea10d8716172dbacda5673ec8188c32ae (diff)
res_pjsip_exten_state: PJSIPShowSubscriptionsInbound causes crash
Currently, it is possible for some subscriptions to get into a NULL state. When this occurs and the PJSIPShowSubscriptionsInbound ami action is issued and a device is subscribed for extension state then the associated subscription state object can't be located. The code then attempts to dereference a NULL object. Added a NULL check to avoid the problem. Reported by: John Bigelow ........ Merged revisions 426779 from http://svn.asterisk.org/svn/asterisk/branches/12 ........ Merged revisions 426780 from http://svn.asterisk.org/svn/asterisk/branches/13 git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@426781 65c4cc65-6c06-0410-ace0-fbb531ad65f3
Diffstat (limited to 'res/res_pjsip_exten_state.c')
-rw-r--r--res/res_pjsip_exten_state.c4
1 files changed, 4 insertions, 0 deletions
diff --git a/res/res_pjsip_exten_state.c b/res/res_pjsip_exten_state.c
index 6b8ee6c12..332f45b3a 100644
--- a/res/res_pjsip_exten_state.c
+++ b/res/res_pjsip_exten_state.c
@@ -457,6 +457,10 @@ static void to_ami(struct ast_sip_subscription *sub,
struct exten_state_subscription *exten_state_sub =
get_exten_state_sub(sub);
+ if (!exten_state_sub) {
+ return;
+ }
+
ast_str_append(buf, 0, "SubscriptionType: extension_state\r\n"
"Extension: %s\r\nExtensionStates: %s\r\n",
exten_state_sub->exten, ast_extension_state2str(