[asterisk-commits] bebuild: tag 11.8.0-rc2 r409150 - in /tags/11.8.0-rc2: ./ res/
SVN commits to the Asterisk project
asterisk-commits at lists.digium.com
Thu Feb 27 15:39:32 CST 2014
Author: bebuild
Date: Thu Feb 27 15:39:30 2014
New Revision: 409150
URL: http://svnview.digium.com/svn/asterisk?view=rev&rev=409150
Log:
res_rtp_asterisk: Fix checklist creatingh problems in ICE sessions
Modified:
tags/11.8.0-rc2/ (props changed)
tags/11.8.0-rc2/ChangeLog
tags/11.8.0-rc2/res/res_rtp_asterisk.c
Propchange: tags/11.8.0-rc2/
------------------------------------------------------------------------------
--- svn:mergeinfo (original)
+++ svn:mergeinfo Thu Feb 27 15:39:30 2014
@@ -1,1 +1,2 @@
+/branches/11:409053,409129-409130
/certified/branches/1.8.15:382389
Modified: tags/11.8.0-rc2/ChangeLog
URL: http://svnview.digium.com/svn/asterisk/tags/11.8.0-rc2/ChangeLog?view=diff&rev=409150&r1=409149&r2=409150
==============================================================================
--- tags/11.8.0-rc2/ChangeLog (original)
+++ tags/11.8.0-rc2/ChangeLog Thu Feb 27 15:39:30 2014
@@ -1,3 +1,24 @@
+2014-02-27 Asterisk Development Team <asteriskteam at digium.com>
+
+ * Asterisk 11.8.0-rc2 Released.
+
+ * res_rtp_asterisk: Fix checklist creating problems in ICE sessions
+
+ Prior to this patch, local candidate lists including SRFLX would
+ fail to start properly when building ICE candidate check lists. This
+ patch fixes that problem by making sure that each SRFLX candidate is
+ associated with the proper base address so that the check list can
+ create matches properly. This patch was written by jcolp. Note that
+ the issue will be left open to await testing by the issue
+ participants.
+
+ (issue ASTERISK-23213)
+ Reported by: Andrea Suisani
+ Review: https://reviewboard.asterisk.org/r/3256
+
+ revisions 409129,409130 from
+ https://svn.asterisk.org/svn/asterisk/branches/11
+
2014-01-14 Asterisk Development Team <asteriskteam at digium.com>
* Asterisk 11.8.0-rc1 Released.
Modified: tags/11.8.0-rc2/res/res_rtp_asterisk.c
URL: http://svnview.digium.com/svn/asterisk/tags/11.8.0-rc2/res/res_rtp_asterisk.c?view=diff&rev=409150&r1=409149&r2=409150
==============================================================================
--- tags/11.8.0-rc2/res/res_rtp_asterisk.c (original)
+++ tags/11.8.0-rc2/res/res_rtp_asterisk.c Thu Feb 27 15:39:30 2014
@@ -678,7 +678,7 @@
return;
}
- if (pj_ice_sess_add_cand(rtp->ice, comp_id, transport_id, type, local_pref, &foundation, addr, addr, rel_addr, addr_len, NULL) != PJ_SUCCESS) {
+ if (pj_ice_sess_add_cand(rtp->ice, comp_id, transport_id, type, local_pref, &foundation, addr, base_addr, rel_addr, addr_len, NULL) != PJ_SUCCESS) {
ao2_ref(candidate, -1);
return;
}
@@ -1683,15 +1683,19 @@
}
/* If configured to use a STUN server to get our external mapped address do so */
- if (stunaddr.sin_addr.s_addr && ast_sockaddr_is_ipv4(addr)) {
+ if (stunaddr.sin_addr.s_addr && ast_sockaddr_is_ipv4(addr) && count) {
struct sockaddr_in answer;
- if (!ast_stun_request(rtp->s, &stunaddr, NULL, &answer)) {
+ if (!ast_stun_request(component == AST_RTP_ICE_COMPONENT_RTCP ? rtp->rtcp->s : rtp->s, &stunaddr, NULL, &answer)) {
+ pj_sockaddr base;
pj_str_t mapped = pj_str(ast_strdupa(ast_inet_ntoa(answer.sin_addr)));
+ /* Use the first local host candidate as the base */
+ pj_sockaddr_cp(&base, &address[0]);
+
pj_sockaddr_init(pj_AF_INET(), &address[0], &mapped, ntohs(answer.sin_port));
- ast_rtp_ice_add_cand(rtp, component, transport, PJ_ICE_CAND_TYPE_SRFLX, 65535, &address[0], &address[0],
+ ast_rtp_ice_add_cand(rtp, component, transport, PJ_ICE_CAND_TYPE_SRFLX, 65535, &address[0], &base,
NULL, pj_sockaddr_get_len(&address[0]));
}
}
More information about the asterisk-commits
mailing list