[asterisk-commits] murf: branch murf/bug8423-1.4 r48348 - in /team/murf/bug8423-1.4: ./ channels...

asterisk-commits at lists.digium.com asterisk-commits at lists.digium.com
Thu Dec 7 07:46:01 MST 2006


Author: murf
Date: Thu Dec  7 08:46:00 2006
New Revision: 48348

URL: http://svn.digium.com/view/asterisk?view=rev&rev=48348
Log:
Merged revisions 48316-48317,48323,48326 via svnmerge from 
https://origsvn.digium.com/svn/asterisk/branches/1.4

................
r48316 | oej | 2006-12-06 05:17:31 -0700 (Wed, 06 Dec 2006) | 2 lines

Block patch from 1.2

................
r48317 | oej | 2006-12-06 05:27:43 -0700 (Wed, 06 Dec 2006) | 2 lines

Don't send Contact on MESSAGE

................
r48323 | russell | 2006-12-06 09:15:45 -0700 (Wed, 06 Dec 2006) | 11 lines

Merged revisions 48322 via svnmerge from 
https://origsvn.digium.com/svn/asterisk/branches/1.2

........
r48322 | russell | 2006-12-06 11:05:54 -0500 (Wed, 06 Dec 2006) | 3 lines

Fix the name of the rtignoreregexpire option in the sample configuration file.
(issue #8526, arkadia)

........

................
r48326 | oej | 2006-12-06 09:25:06 -0700 (Wed, 06 Dec 2006) | 2 lines

Issue #8258 - fix handling of 487 being retransmitted to Asterisk

................

Modified:
    team/murf/bug8423-1.4/   (props changed)
    team/murf/bug8423-1.4/channels/chan_sip.c
    team/murf/bug8423-1.4/configs/iax.conf.sample

Propchange: team/murf/bug8423-1.4/
------------------------------------------------------------------------------
Binary property 'branch-1.2-blocked' - no diff available.

Propchange: team/murf/bug8423-1.4/
------------------------------------------------------------------------------
Binary property 'branch-1.2-merged' - no diff available.

Propchange: team/murf/bug8423-1.4/
------------------------------------------------------------------------------
--- svnmerge-integrated (original)
+++ svnmerge-integrated Thu Dec  7 08:46:00 2006
@@ -1,1 +1,1 @@
-/branches/1.4:1-48306
+/branches/1.4:1-48347

Modified: team/murf/bug8423-1.4/channels/chan_sip.c
URL: http://svn.digium.com/view/asterisk/team/murf/bug8423-1.4/channels/chan_sip.c?view=diff&rev=48348&r1=48347&r2=48348
==============================================================================
--- team/murf/bug8423-1.4/channels/chan_sip.c (original)
+++ team/murf/bug8423-1.4/channels/chan_sip.c Thu Dec  7 08:46:00 2006
@@ -5629,9 +5629,10 @@
 		add_header(req, "From", ot);
 		add_header(req, "To", of);
 	}
-	/* Do not add Contact for BYE and Cancel requests */
-	if (sipmethod != SIP_BYE && sipmethod != SIP_CANCEL)
+	/* Do not add Contact for MESSAGE, BYE and Cancel requests */
+	if (sipmethod != SIP_BYE && sipmethod != SIP_CANCEL && sipmethod != SIP_MESSAGE)
 		add_header(req, "Contact", p->our_contact);
+
 	copy_header(req, orig, "Call-ID");
 	add_header(req, "CSeq", tmp);
 
@@ -11747,7 +11748,16 @@
 			ast_queue_control(p->owner, AST_CONTROL_CONGESTION);
 		sip_scheddestroy(p, DEFAULT_TRANS_TIMEOUT);
 		break;
-
+	case 487: /* Cancelled transaction */
+		/* We have sent CANCEL on an outbound INVITE 
+			This transaction is already scheduled to be killed by sip_hangup().
+		*/
+		transmit_request(p, SIP_ACK, seqno, 0, 0);
+		if (p->owner && !ast_test_flag(req, SIP_PKT_IGNORE))
+			ast_queue_hangup(p->owner);
+		else if (!ast_test_flag(req, SIP_PKT_IGNORE))
+			update_call_counter(p, DEC_CALL_LIMIT);
+		break;
 	case 491: /* Pending */
 		/* we really should have to wait a while, then retransmit */
 			/* We should support the retry-after at some point */
@@ -11759,6 +11769,7 @@
 		break;
 
 	case 501: /* Not implemented */
+		transmit_request(p, SIP_ACK, seqno, 0, 0);
 		if (p->owner)
 			ast_queue_control(p->owner, AST_CONTROL_CONGESTION);
 		break;
@@ -12165,6 +12176,10 @@
 				/* Guessing that this is not an important request */
 			}
 			break;
+		case 487:
+			if (sipmethod == SIP_INVITE)
+				handle_response_invite(p, resp, rest, req, seqno);
+			break;
 		case 491: /* Pending */
 			if (sipmethod == SIP_INVITE)
 				handle_response_invite(p, resp, rest, req, seqno);
@@ -12209,12 +12224,6 @@
 				case 603: /* Decline */
 					if (p->owner)
 						ast_queue_control(p->owner, AST_CONTROL_BUSY);
-					break;
-				case 487:	/* Response on INVITE that has been CANCELled */
-					/* channel now destroyed - dec the inUse counter */
-					if (owner)
-						ast_queue_hangup(p->owner);
-					update_call_counter(p, DEC_CALL_LIMIT);
 					break;
 				case 482: /*
 					\note SIP is incapable of performing a hairpin call, which

Modified: team/murf/bug8423-1.4/configs/iax.conf.sample
URL: http://svn.digium.com/view/asterisk/team/murf/bug8423-1.4/configs/iax.conf.sample?view=diff&rev=48348&r1=48347&r2=48348
==============================================================================
--- team/murf/bug8423-1.4/configs/iax.conf.sample (original)
+++ team/murf/bug8423-1.4/configs/iax.conf.sample Thu Dec  7 08:46:00 2006
@@ -258,7 +258,7 @@
 			; If set to an integer, friends expire within this number of
 			; seconds instead of the registration interval.
 
-;rtignoreexpire=yes	; When reading a peer from Realtime, if the peer's registration
+;rtignoreregexpire=yes	; When reading a peer from Realtime, if the peer's registration
 			; has expired based on its registration interval, used the stored
 			; address information regardless. (yes|no)
 



More information about the asterisk-commits mailing list