From: Alexander Traud Date: Fri, 26 Aug 2016 13:41:16 +0000 (+0200) Subject: channel: No hung-up on failing security requirements. X-Git-Tag: 13.12.0-rc1~83^2 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=refs%2Fchanges%2F26%2F3726%2F2;p=thirdparty%2Fasterisk.git channel: No hung-up on failing security requirements. In your Diaplan, if you specify same => n,Set(CHANNEL(secure_bridge_media)=1) same => n,Set(CHANNEL(secure_bridge_signaling)=1) only the SIP channel driver chan_sip supports this. All other channels drivers like res_pjsip fail. In case of failure, the original sRTP source code released the whole channel, even if not hung-up, yet. This change does not release the channel but instead hangs-up the channel. ASTERISK-26306 Change-Id: I0489f0cb660fab6673b0db8af027d116e70a66db --- diff --git a/main/channel.c b/main/channel.c index 853935da33..f3f79399fe 100644 --- a/main/channel.c +++ b/main/channel.c @@ -6094,7 +6094,7 @@ struct ast_channel *ast_request(const char *type, struct ast_format_cap *request if (set_security_requirements(requestor, c)) { ast_log(LOG_WARNING, "Setting security requirements failed\n"); - c = ast_channel_release(c); + ast_hangup(c); *cause = AST_CAUSE_BEARERCAPABILITY_NOTAVAIL; return NULL; }