[asterisk-commits] bebuild: tag 10.12.3 r397826 - in /tags/10.12.3: ./ channels/

SVN commits to the Asterisk project asterisk-commits at lists.digium.com
Tue Aug 27 14:24:00 CDT 2013


Author: bebuild
Date: Tue Aug 27 14:23:57 2013
New Revision: 397826

URL: http://svnview.digium.com/svn/asterisk?view=rev&rev=397826
Log:
Merge changes for 10.12.3

* AST-2013-004
* AST-2013-005

Removed:
    tags/10.12.3/asterisk-10.12.2-summary.html
    tags/10.12.3/asterisk-10.12.2-summary.txt
Modified:
    tags/10.12.3/   (props changed)
    tags/10.12.3/.version
    tags/10.12.3/ChangeLog
    tags/10.12.3/channels/chan_sip.c

Propchange: tags/10.12.3/
------------------------------------------------------------------------------
Binary property 'branch-1.8-merged' - no diff available.

Propchange: tags/10.12.3/
------------------------------------------------------------------------------
--- svn:mergeinfo (original)
+++ svn:mergeinfo Tue Aug 27 14:23:57 2013
@@ -1,2 +1,2 @@
 /branches/1.8:378967
-/branches/10:379510,379777,383977,383982
+/branches/10:379510,379777,383977,383982,397711,397757

Modified: tags/10.12.3/.version
URL: http://svnview.digium.com/svn/asterisk/tags/10.12.3/.version?view=diff&rev=397826&r1=397825&r2=397826
==============================================================================
--- tags/10.12.3/.version (original)
+++ tags/10.12.3/.version Tue Aug 27 14:23:57 2013
@@ -1,1 +1,1 @@
-10.12.2
+10.12.3

Modified: tags/10.12.3/ChangeLog
URL: http://svnview.digium.com/svn/asterisk/tags/10.12.3/ChangeLog?view=diff&rev=397826&r1=397825&r2=397826
==============================================================================
--- tags/10.12.3/ChangeLog (original)
+++ tags/10.12.3/ChangeLog Tue Aug 27 14:23:57 2013
@@ -1,3 +1,21 @@
+2013-08-27  Asterisk Development Team <asteriskteam at digium.com>
+
+	* Asterisk 10.12.3 Released.
+
+	* AST-2013-005: Remote crash from invalid SDP
+
+	If the SIP channel driver processes an invalid SDP that defines media
+	descriptions before connection information, it may attempt to
+	reference the socket address information even though that information
+	has not yet been set. This will cause a crash.
+
+	This patch adds checks when handling the various media descriptions
+	that ensures the media descriptions are handled only if we have
+	connection information suitable for that media.
+
+	Thanks to Walter Doekes, OSSO B.V., for reporting, testing, and
+	providng the solution to this problem.
+
 2013-03-27  Asterisk Development Team <asteriskteam at digium.com>
 
 	* Asterisk 10.12.2 Released.

Modified: tags/10.12.3/channels/chan_sip.c
URL: http://svnview.digium.com/svn/asterisk/tags/10.12.3/channels/chan_sip.c?view=diff&rev=397826&r1=397825&r2=397826
==============================================================================
--- tags/10.12.3/channels/chan_sip.c (original)
+++ tags/10.12.3/channels/chan_sip.c Tue Aug 27 14:23:57 2013
@@ -9920,7 +9920,7 @@
 
 	/* Setup audio address and port */
 	if (p->rtp) {
-		if (portno > 0) {
+		if (sa && portno > 0) {
 			ast_sockaddr_set_port(sa, portno);
 			ast_rtp_instance_set_remote_address(p->rtp, sa);
 			if (debug) {
@@ -9967,7 +9967,7 @@
 
 	/* Setup video address and port */
 	if (p->vrtp) {
-		if (vportno > 0) {
+		if (vsa && vportno > 0) {
 			ast_sockaddr_set_port(vsa, vportno);
 			ast_rtp_instance_set_remote_address(p->vrtp, vsa);
 			if (debug) {
@@ -9984,7 +9984,7 @@
 
 	/* Setup text address and port */
 	if (p->trtp) {
-		if (tportno > 0) {
+		if (tsa && tportno > 0) {
 			ast_sockaddr_set_port(tsa, tportno);
 			ast_rtp_instance_set_remote_address(p->trtp, tsa);
 			if (debug) {
@@ -10007,7 +10007,7 @@
 
 	/* Setup image address and port */
 	if (p->udptl) {
-		if (udptlportno > 0) {
+		if (isa && udptlportno > 0) {
 			if (ast_test_flag(&p->flags[1], SIP_PAGE2_SYMMETRICRTP) && ast_test_flag(&p->flags[1], SIP_PAGE2_UDPTL_DESTINATION)) {
 				ast_rtp_instance_get_remote_address(p->rtp, isa);
 				if (!ast_sockaddr_isnull(isa) && debug) {
@@ -26746,7 +26746,7 @@
 			p->invitestate = INV_TERMINATED;
 			p->pendinginvite = 0;
 			acked = __sip_ack(p, seqno, 1 /* response */, 0);
-			if (find_sdp(req)) {
+			if (p->owner && find_sdp(req)) {
 				if (process_sdp(p, req, SDP_T38_NONE)) {
 					return -1;
 				}




More information about the asterisk-commits mailing list