[asterisk-commits] bebuild: tag 10.9.0-digiumphones-rc3 r374529 - in /tags/10.9.0-digiumphones-r...
SVN commits to the Asterisk project
asterisk-commits at lists.digium.com
Fri Oct 5 07:59:31 CDT 2012
Author: bebuild
Date: Fri Oct 5 07:59:28 2012
New Revision: 374529
URL: http://svnview.digium.com/svn/asterisk?view=rev&rev=374529
Log:
Merge r374447 for ASTERISK-20511
Removed:
tags/10.9.0-digiumphones-rc3/asterisk-10.9.0-digiumphones-rc2-summary.html
tags/10.9.0-digiumphones-rc3/asterisk-10.9.0-digiumphones-rc2-summary.txt
Modified:
tags/10.9.0-digiumphones-rc3/ (props changed)
tags/10.9.0-digiumphones-rc3/.version
tags/10.9.0-digiumphones-rc3/ChangeLog
tags/10.9.0-digiumphones-rc3/channels/chan_sip.c
Propchange: tags/10.9.0-digiumphones-rc3/
------------------------------------------------------------------------------
Binary property 'branch-1.8-merged' - no diff available.
Propchange: tags/10.9.0-digiumphones-rc3/
------------------------------------------------------------------------------
--- svn:mergeinfo (original)
+++ svn:mergeinfo Fri Oct 5 07:59:28 2012
@@ -1,1 +1,1 @@
-/branches/10:373179,373533,373879
+/branches/10:373179,373533,373879,374457
Modified: tags/10.9.0-digiumphones-rc3/.version
URL: http://svnview.digium.com/svn/asterisk/tags/10.9.0-digiumphones-rc3/.version?view=diff&rev=374529&r1=374528&r2=374529
==============================================================================
--- tags/10.9.0-digiumphones-rc3/.version (original)
+++ tags/10.9.0-digiumphones-rc3/.version Fri Oct 5 07:59:28 2012
@@ -1,1 +1,1 @@
-10.9.0-digiumphones-rc2
+10.9.0-digiumphones-rc3
Modified: tags/10.9.0-digiumphones-rc3/ChangeLog
URL: http://svnview.digium.com/svn/asterisk/tags/10.9.0-digiumphones-rc3/ChangeLog?view=diff&rev=374529&r1=374528&r2=374529
==============================================================================
--- tags/10.9.0-digiumphones-rc3/ChangeLog (original)
+++ tags/10.9.0-digiumphones-rc3/ChangeLog Fri Oct 5 07:59:28 2012
@@ -1,3 +1,24 @@
+2012-10-05 Asterisk Development Team <asteriskteam at digium.com>
+
+ * Asterisk 10.9.0-digiumphones-rc3 Released.
+
+ * Fix a regression from direct media ACLs where the directrtpsetup
+ option no longer works.
+
+ A check was added for direct media ACLs that immediately forced
+ remote bridging if there was no bridged channel. This caused
+ directrtpsetup to no longer function as it needs this information
+ before bridging actually occurs.
+
+ Logic has now been adjusted so if there is no bridged channel a
+ remote bridge will still be attempted.
+
+ (closes issue ASTERISK-20511)
+ Reported by: kristoff
+ Tested by: kristoff
+
+ Review: https://reviewboard.asterisk.org/r/2146
+
2012-10-03 Asterisk Development Team <asteriskteam at digium.com>
* Asterisk 10.9.0-digiumphones-rc2 Released.
Modified: tags/10.9.0-digiumphones-rc3/channels/chan_sip.c
URL: http://svnview.digium.com/svn/asterisk/tags/10.9.0-digiumphones-rc3/channels/chan_sip.c?view=diff&rev=374529&r1=374528&r2=374529
==============================================================================
--- tags/10.9.0-digiumphones-rc3/channels/chan_sip.c (original)
+++ tags/10.9.0-digiumphones-rc3/channels/chan_sip.c Fri Oct 5 07:59:28 2012
@@ -30430,22 +30430,22 @@
return AST_RTP_GLUE_RESULT_FORBID;
}
- if (!(opp_chan = ast_bridged_channel(chan))) {
+ if ((opp_chan = ast_bridged_channel(chan)) && (((opp_chan->tech != &sip_tech) && (opp_chan->tech != &sip_tech_info)) ||
+ (!(opp = opp_chan->tech_pvt)))) {
return AST_RTP_GLUE_RESULT_FORBID;
- } else if (((opp_chan->tech != &sip_tech) && (opp_chan->tech != &sip_tech_info)) ||
- (!(opp = opp_chan->tech_pvt))) {
- return AST_RTP_GLUE_RESULT_FORBID;
}
sip_pvt_lock(p);
- while (sip_pvt_trylock(opp)) {
+ while (opp && sip_pvt_trylock(opp)) {
sip_pvt_unlock(p);
usleep(1);
sip_pvt_lock(p);
}
if (!(p->rtp)) {
- sip_pvt_unlock(opp);
+ if (opp) {
+ sip_pvt_unlock(opp);
+ }
sip_pvt_unlock(p);
return AST_RTP_GLUE_RESULT_FORBID;
}
@@ -30455,7 +30455,7 @@
if (ast_test_flag(&p->flags[0], SIP_DIRECT_MEDIA)) {
res = AST_RTP_GLUE_RESULT_REMOTE;
- if (!apply_directmedia_ha(p, opp, "audio")) {
+ if (opp && !apply_directmedia_ha(p, opp, "audio")) {
res = AST_RTP_GLUE_RESULT_FORBID;
}
} else if (ast_test_flag(&p->flags[0], SIP_DIRECT_MEDIA_NAT)) {
@@ -30464,7 +30464,9 @@
res = AST_RTP_GLUE_RESULT_FORBID;
}
- sip_pvt_unlock(opp);
+ if (opp) {
+ sip_pvt_unlock(opp);
+ }
if (p->srtp) {
res = AST_RTP_GLUE_RESULT_FORBID;
@@ -30486,22 +30488,22 @@
return AST_RTP_GLUE_RESULT_FORBID;
}
- if (!(opp_chan = ast_bridged_channel(chan))) {
+ if ((opp_chan = ast_bridged_channel(chan)) && (((opp_chan->tech != &sip_tech) && (opp_chan->tech != &sip_tech_info)) ||
+ (!(opp = opp_chan->tech_pvt)))) {
return AST_RTP_GLUE_RESULT_FORBID;
- } else if (((opp_chan->tech != &sip_tech) && (opp_chan->tech != &sip_tech_info)) ||
- (!(opp = opp_chan->tech_pvt))) {
- return AST_RTP_GLUE_RESULT_FORBID;
}
sip_pvt_lock(p);
- while (sip_pvt_trylock(opp)) {
+ while (opp && sip_pvt_trylock(opp)) {
sip_pvt_unlock(p);
usleep(1);
sip_pvt_lock(p);
}
if (!(p->vrtp)) {
- sip_pvt_unlock(opp);
+ if (opp) {
+ sip_pvt_unlock(opp);
+ }
sip_pvt_unlock(p);
return AST_RTP_GLUE_RESULT_FORBID;
}
@@ -30511,12 +30513,14 @@
if (ast_test_flag(&p->flags[0], SIP_DIRECT_MEDIA)) {
res = AST_RTP_GLUE_RESULT_REMOTE;
- if (!apply_directmedia_ha(p, opp, "video")) {
+ if (opp && !apply_directmedia_ha(p, opp, "video")) {
res = AST_RTP_GLUE_RESULT_FORBID;
}
}
- sip_pvt_unlock(opp);
+ if (opp) {
+ sip_pvt_unlock(opp);
+ }
sip_pvt_unlock(p);
return res;
@@ -30533,22 +30537,22 @@
return AST_RTP_GLUE_RESULT_FORBID;
}
- if (!(opp_chan = ast_bridged_channel(chan))) {
+ if ((opp_chan = ast_bridged_channel(chan)) && (((opp_chan->tech != &sip_tech) && (opp_chan->tech != &sip_tech_info)) ||
+ (!(opp = opp_chan->tech_pvt)))) {
return AST_RTP_GLUE_RESULT_FORBID;
- } else if (((opp_chan->tech != &sip_tech) && (opp_chan->tech != &sip_tech_info)) ||
- (!(opp = opp_chan->tech_pvt))) {
- return AST_RTP_GLUE_RESULT_FORBID;
}
sip_pvt_lock(p);
- while (sip_pvt_trylock(opp)) {
+ while (opp && sip_pvt_trylock(opp)) {
sip_pvt_unlock(p);
usleep(1);
sip_pvt_lock(p);
}
if (!(p->trtp)) {
- sip_pvt_unlock(opp);
+ if (opp) {
+ sip_pvt_unlock(opp);
+ }
sip_pvt_unlock(p);
return AST_RTP_GLUE_RESULT_FORBID;
}
@@ -30558,12 +30562,14 @@
if (ast_test_flag(&p->flags[0], SIP_DIRECT_MEDIA)) {
res = AST_RTP_GLUE_RESULT_REMOTE;
- if (!apply_directmedia_ha(p, opp, "text")) {
+ if (opp && !apply_directmedia_ha(p, opp, "text")) {
res = AST_RTP_GLUE_RESULT_FORBID;
}
}
- sip_pvt_unlock(opp);
+ if (opp) {
+ sip_pvt_unlock(opp);
+ }
sip_pvt_unlock(p);
return res;
More information about the asterisk-commits
mailing list