[Asterisk-cvs] libpri q931.c,1.127,1.128

mattf at lists.digium.com mattf at lists.digium.com
Tue May 24 10:59:18 CDT 2005


Update of /usr/cvsroot/libpri
In directory mongoose.digium.com:/tmp/cvs-serv25664

Modified Files:
	q931.c 
Log Message:
Explicit/Implicit ds1 selection changes for NFAS


Index: q931.c
===================================================================
RCS file: /usr/cvsroot/libpri/q931.c,v
retrieving revision 1.127
retrieving revision 1.128
diff -u -d -r1.127 -r1.128
--- q931.c	23 May 2005 18:15:06 -0000	1.127
+++ q931.c	24 May 2005 15:03:33 -0000	1.128
@@ -248,6 +248,7 @@
 	c->slotmap = -1;
 	c->channelno = -1;
 	c->ds1no = 0;
+	c->ds1explicit = 0;
 	c->chanflags = 0;
 	c->next = NULL;
 	c->sentchannel = 0;
@@ -360,7 +361,7 @@
 		return 0;
 	}
 
-	if (call->ds1no > 0) {
+	if ((call->ds1no > 0) || call->ds1explicit) {
 		/* Note that we are specifying the identifier */
 		ie->data[pos++] |= 0x40;
 		/* We need to use the Channel Identifier Present thingy.  Just specify it and we're done */
@@ -2621,6 +2622,7 @@
 {
 	if (channel) { 
 		c->ds1no = (channel & 0xff00) >> 8;
+		c->ds1explicit = (channel & 0x10000) >> 16;
 		channel &= 0xff;
 		c->channelno = channel;		
 	}
@@ -2647,6 +2649,7 @@
 {
 	if (channel) { 
 		c->ds1no = (channel & 0xff00) >> 8;
+		c->ds1explicit = (channel & 0x10000) >> 16;
 		channel &= 0xff;
 		c->channelno = channel;		
 	}
@@ -2692,6 +2695,7 @@
 {
 	if (channel) { 
 		c->ds1no = (channel & 0xff00) >> 8;
+		c->ds1explicit = (channel & 0x10000) >> 16;
 		channel &= 0xff;
 		c->channelno = channel;		
 	}
@@ -2763,6 +2767,7 @@
 {
 	if (channel) { 
 		c->ds1no = (channel & 0xff00) >> 8;
+		c->ds1explicit = (channel & 0x10000) >> 16;
 		channel &= 0xff;
 		c->channelno = channel;		
 	}
@@ -2824,6 +2829,7 @@
 		return -1;
 	c->ri = 0;
 	c->ds1no = (channel & 0xff00) >> 8;
+	c->ds1explicit = (channel & 0x10000) >> 16;
 	channel &= 0xff;
 	c->channelno = channel;		
 	c->chanflags &= ~FLAG_PREFERRED;
@@ -2871,6 +2877,7 @@
 		req->userl1 = PRI_LAYER_1_ULAW;
 	c->userl1 = req->userl1;
 	c->ds1no = (req->channel & 0xff00) >> 8;
+	c->ds1explicit = (req->channel & 0x10000) >> 16;
 	req->channel &= 0xff;
 	if ((pri->localtype == PRI_CPE) && pri->subchannel) {
 		req->channel = 0;




More information about the svn-commits mailing list