[asterisk-commits] rmudgett: branch 1.8 r283050 - in /branches/1.8: ./ channels/sig_pri.c

SVN commits to the Asterisk project asterisk-commits at lists.digium.com
Fri Aug 20 10:35:43 CDT 2010


Author: rmudgett
Date: Fri Aug 20 10:35:38 2010
New Revision: 283050

URL: http://svnview.digium.com/svn/asterisk?view=rev&rev=283050
Log:
Merged revisions 283049 via svnmerge from 
https://origsvn.digium.com/svn/asterisk/branches/1.6.2

................
  r283049 | rmudgett | 2010-08-20 10:31:03 -0500 (Fri, 20 Aug 2010) | 29 lines
  
  Merged revisions 283048 via svnmerge from 
  https://origsvn.digium.com/svn/asterisk/branches/1.4
  
  ........
    r283048 | rmudgett | 2010-08-20 10:24:36 -0500 (Fri, 20 Aug 2010) | 22 lines
    
    Q931 - Sending PROGRESS after sending ALERTING is a protocol error
    
    The PRI layer in chan_dadhi will check if a PROGRESS message has already
    been sent, and not allow sending another (although that is technically
    allowed by the Q931 spec), however it does not protect against sending an
    ALERTING and then sending a PROGRESS message, which is a violation of the
    specification.
    
    Most switches don't seem to care too deeply about this, but some do, and
    will disconnect the call when receiving this invalid sequence.
    
    Protocol specification reference: T-REC-Q.931-199805-I page 223, "Figure
    A.5/Q.931 -- Overview protocol control (network side) point-point
    (sheet 3 of 8)"
    
    (closes issue #17874)
    Reported by: nic_bellamy
    Patches:
          asterisk-1.4-r282537_no-progress-after-alerting.patch uploaded by nic bellamy (license 299)
          asterisk-1.6.2-r282537_no-progress-after-alerting.patch uploaded by nic bellamy (license 299)
          asterisk-trunk-r282537_no-progress-after-alerting.patch uploaded by nic bellamy (license 299)
  ........
................

Modified:
    branches/1.8/   (props changed)
    branches/1.8/channels/sig_pri.c

Propchange: branches/1.8/
------------------------------------------------------------------------------
Binary property 'branch-1.6.2-merged' - no diff available.

Modified: branches/1.8/channels/sig_pri.c
URL: http://svnview.digium.com/svn/asterisk/branches/1.8/channels/sig_pri.c?view=diff&rev=283050&r1=283049&r2=283050
==============================================================================
--- branches/1.8/channels/sig_pri.c (original)
+++ branches/1.8/channels/sig_pri.c Fri Aug 20 10:35:38 2010
@@ -6329,7 +6329,7 @@
 	case AST_CONTROL_PROGRESS:
 		ast_debug(1,"Received AST_CONTROL_PROGRESS on %s\n",chan->name);
 		sig_pri_set_digital(p, 0);	/* Digital-only calls isn't allowing any inband progress messages */
-		if (!p->progress && p->pri && !p->outgoing && !p->no_b_channel) {
+		if (!p->progress && !p->alerting && p->pri && !p->outgoing && !p->no_b_channel) {
 			if (p->pri->pri) {
 				if (!pri_grab(p, p->pri)) {
 #ifdef HAVE_PRI_PROG_W_CAUSE




More information about the asterisk-commits mailing list