[asterisk-commits] rmudgett: branch rmudgett/ss7_27_knk r376090 - in /team/rmudgett/ss7_27_knk: ...

SVN commits to the Asterisk project asterisk-commits at lists.digium.com
Thu Nov 8 16:09:34 CST 2012


Author: rmudgett
Date: Thu Nov  8 16:09:30 2012
New Revision: 376090

URL: http://svnview.digium.com/svn/asterisk?view=rev&rev=376090
Log:
chan_dahdi/SS7: Made reject incoming call for an in-alarm or blocked channel.

If a SS7 call comes in requesting a CIC that is in-alarm, the call is
accepted and connects if the extension exists in the dialplan.  The call
does not have any audio.

* Made release the call immediately with circuit congestion cause.

(closes issue ASTERISK-20204)
Reported by: Tuan Le
Patches:
      jira_asterisk_20204_v1.8.patch (license #5621) patch uploaded by rmudgett
........

Merged revisions 376058 from http://svn.asterisk.org/svn/asterisk/branches/1.8
........

Merged revisions 376059 from http://svn.asterisk.org/svn/asterisk/branches/10
........

Merged revisions 376060 from http://svn.asterisk.org/svn/asterisk/branches/11
........

Merged revisions 376061 from http://svn.asterisk.org/svn/asterisk/trunk

Modified:
    team/rmudgett/ss7_27_knk/   (props changed)
    team/rmudgett/ss7_27_knk/channels/sig_ss7.c

Propchange: team/rmudgett/ss7_27_knk/
------------------------------------------------------------------------------
Binary property 'branch-11-merged' - no diff available.

Propchange: team/rmudgett/ss7_27_knk/
------------------------------------------------------------------------------
--- ss7_27_knk-integrated (original)
+++ ss7_27_knk-integrated Thu Nov  8 16:09:30 2012
@@ -1,1 +1,1 @@
-/trunk:1-376056
+/trunk:1-376062

Modified: team/rmudgett/ss7_27_knk/channels/sig_ss7.c
URL: http://svnview.digium.com/svn/asterisk/team/rmudgett/ss7_27_knk/channels/sig_ss7.c?view=diff&rev=376090&r1=376089&r2=376090
==============================================================================
--- team/rmudgett/ss7_27_knk/channels/sig_ss7.c (original)
+++ team/rmudgett/ss7_27_knk/channels/sig_ss7.c Thu Nov  8 16:09:30 2012
@@ -1710,11 +1710,11 @@
 				 * are in the process of creating an owner for it.
 				 */
 				ast_assert(!p->owner && p->call_level == SIG_SS7_CALL_LEVEL_IDLE);
-/* BUGBUG need to handle the case where a call comes in on a cic that is in alarm status. ASTERISK-20204 */
 
 				/* Mark channel as in use so no outgoing call will steal it. */
 				p->call_level = SIG_SS7_CALL_LEVEL_ALLOCATED;
 				p->ss7call = e->iam.call;
+
 				if (p->locallyblocked) {
 					isup_clear_callflags(ss7, p->ss7call, ISUP_GOT_IAM);
 					p->ss7call = isup_free_call_if_clear(ss7, p->ss7call);
@@ -1730,6 +1730,13 @@
 				}
 
 				isup_set_call_dpc(p->ss7call, p->dpc);
+
+				if (!p->inservice || p->inalarm) {
+					/* Circuit cannot take a call now. */
+					isup_rel(ss7, e->iam.call, AST_CAUSE_NORMAL_CIRCUIT_CONGESTION);
+					sig_ss7_unlock_private(p);
+					break;
+				}
 
 				if ((p->use_callerid) && (!ast_strlen_zero(e->iam.calling_party_num))) {
 					ss7_apply_plan_to_number(p->cid_num, sizeof(p->cid_num), linkset, e->iam.calling_party_num, e->iam.calling_nai);




More information about the asterisk-commits mailing list