[libpri-commits] rmudgett: branch 1.4 r2308 - /branches/1.4/q931.c

SVN commits to the libpri project libpri-commits at lists.digium.com
Tue Nov 13 13:59:54 CST 2012


Author: rmudgett
Date: Tue Nov 13 13:59:50 2012
New Revision: 2308

URL: http://svnview.digium.com/svn/libpri?view=rev&rev=2308
Log:
Q.SIG: Allow PROGRESS when in the Active state.

ECMA-143 Section 10.1.7.2 indicates that PROGRESS is allowed when in the
Active state.

* Made Q.SIG ignore the PROGRESS message when in the Active call state.

(closes issue PRI-147)
Reported by: Nick Merrett

Modified:
    branches/1.4/q931.c

Modified: branches/1.4/q931.c
URL: http://svnview.digium.com/svn/libpri/branches/1.4/q931.c?view=diff&rev=2308&r1=2307&r2=2308
==============================================================================
--- branches/1.4/q931.c (original)
+++ branches/1.4/q931.c Tue Nov 13 13:59:50 2012
@@ -8771,6 +8771,18 @@
 		    (c->ourcallstate != Q931_CALL_STATE_OVERLAP_SENDING) && 
 		    (c->ourcallstate != Q931_CALL_STATE_CALL_DELIVERED) && 
 		    (c->ourcallstate != Q931_CALL_STATE_OUTGOING_CALL_PROCEEDING)) {
+			if (mh->msg == Q931_PROGRESS
+				&& c->ourcallstate == Q931_CALL_STATE_ACTIVE
+				&& ctrl->switchtype == PRI_SWITCH_QSIG) {
+				/*
+				 * Q.SIG is odd to allow PROGRESS when in the Active state since
+				 * the media path is already open.  Ignore it since it doesn't
+				 * convey anything very useful.  Maybe they will stop doing it.
+				 *
+				 * See ECMA-143 Section 10.1.7.2.
+				 */
+				break;
+			}
 			q931_status(ctrl,c,PRI_CAUSE_WRONG_MESSAGE);
 			break;
 		}




More information about the libpri-commits mailing list