[asterisk-commits] kmoore: branch 12 r400682 - in /branches/12: ./	res/res_rtp_asterisk.c
    SVN commits to the Asterisk project 
    asterisk-commits at lists.digium.com
       
    Tue Oct  8 10:44:06 CDT 2013
    
    
  
Author: kmoore
Date: Tue Oct  8 10:44:04 2013
New Revision: 400682
URL: http://svnview.digium.com/svn/asterisk?view=rev&rev=400682
Log:
Fix STUN crash when using IPv6 any address
Ensure that when chan_sip binds to the IPv6 any address ([::]), IPv4
candidates are also added.
(closes issue ASTERISK-21917)
Reported by: Torrey Searle
Patches:
    0023_ipv6_stun_crash.patch uploaded by Torrey Searle (License 5334)
........
Merged revisions 400681 from http://svn.asterisk.org/svn/asterisk/branches/11
Modified:
    branches/12/   (props changed)
    branches/12/res/res_rtp_asterisk.c
Propchange: branches/12/
------------------------------------------------------------------------------
Binary property 'branch-11-merged' - no diff available.
Modified: branches/12/res/res_rtp_asterisk.c
URL: http://svnview.digium.com/svn/asterisk/branches/12/res/res_rtp_asterisk.c?view=diff&rev=400682&r1=400681&r2=400682
==============================================================================
--- branches/12/res/res_rtp_asterisk.c (original)
+++ branches/12/res/res_rtp_asterisk.c Tue Oct  8 10:44:04 2013
@@ -1661,7 +1661,13 @@
 	unsigned int count = PJ_ARRAY_SIZE(address), pos = 0;
 
 	/* Add all the local interface IP addresses */
-	pj_enum_ip_interface(ast_sockaddr_is_ipv4(addr) ? pj_AF_INET() : pj_AF_INET6(), &count, address);
+	if (ast_sockaddr_is_ipv4(addr)) {
+		pj_enum_ip_interface(pj_AF_INET(), &count, address);
+	} else if (ast_sockaddr_is_any(addr)) {
+		pj_enum_ip_interface(pj_AF_UNSPEC(), &count, address);
+	} else {
+		pj_enum_ip_interface(pj_AF_INET6(), &count, address);
+	}
 
 	for (pos = 0; pos < count; pos++) {
 		pj_sockaddr_set_port(&address[pos], port);
    
    
More information about the asterisk-commits
mailing list