summaryrefslogtreecommitdiff
path: root/res
diff options
context:
space:
mode:
Diffstat (limited to 'res')
-rw-r--r--res/res_pjsip_dtmf_info.c8
-rw-r--r--res/res_pjsip_session.c4
2 files changed, 11 insertions, 1 deletions
diff --git a/res/res_pjsip_dtmf_info.c b/res/res_pjsip_dtmf_info.c
index b0a6649a0..7b52250c8 100644
--- a/res/res_pjsip_dtmf_info.c
+++ b/res/res_pjsip_dtmf_info.c
@@ -89,7 +89,13 @@ static int dtmf_info_incoming_request(struct ast_sip_session *session, struct pj
char event = '\0';
unsigned int duration = 100;
- char is_dtmf = is_media_type(rdata, "dtmf");
+ char is_dtmf;
+
+ if (!session->channel) {
+ return 0;
+ }
+
+ is_dtmf = is_media_type(rdata, "dtmf");
if (!is_dtmf && !is_media_type(rdata, "dtmf-relay")) {
return 0;
diff --git a/res/res_pjsip_session.c b/res/res_pjsip_session.c
index 3475e80b7..a8f8cba85 100644
--- a/res/res_pjsip_session.c
+++ b/res/res_pjsip_session.c
@@ -2627,6 +2627,10 @@ static pjsip_redirect_op session_inv_on_redirected(pjsip_inv_session *inv, const
struct ast_sip_session *session = inv->mod_data[session_module.id];
const pjsip_sip_uri *uri;
+ if (!session->channel) {
+ return PJSIP_REDIRECT_STOP;
+ }
+
if (session->endpoint->redirect_method == AST_SIP_REDIRECT_URI_PJSIP) {
return PJSIP_REDIRECT_ACCEPT;
}