[Asterisk-cvs] libpri libpri.h,1.36,1.37 q931.c,1.93,1.94

markster at lists.digium.com markster at lists.digium.com
Sat Oct 30 16:16:31 CDT 2004


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

Modified Files:
	libpri.h q931.c 
Log Message:
Add progress support reporting to PRI (bug #2759)


Index: libpri.h
===================================================================
RCS file: /usr/cvsroot/libpri/libpri.h,v
retrieving revision 1.36
retrieving revision 1.37
diff -u -d -r1.36 -r1.37
--- libpri.h	30 Oct 2004 20:13:19 -0000	1.36
+++ libpri.h	30 Oct 2004 20:19:18 -0000	1.37
@@ -253,6 +253,7 @@
 	int e;
 	int channel;
 	int cref;
+	int progress;
 	q931_call *call;
 } pri_event_ringing;
 
@@ -260,6 +261,7 @@
 	int e;
 	int channel;
 	int cref;
+	int progress;
 	q931_call *call;
 } pri_event_answer;
 
@@ -309,6 +311,9 @@
 typedef struct pri_event_proceeding {
 	int e;
 	int channel;
+	int cref;
+	int progress;
+	q931_call *call;
 } pri_event_proceeding;
  
 typedef struct pri_event_setup_ack {

Index: q931.c
===================================================================
RCS file: /usr/cvsroot/libpri/q931.c,v
retrieving revision 1.93
retrieving revision 1.94
diff -u -d -r1.93 -r1.94
--- q931.c	30 Oct 2004 20:13:20 -0000	1.93
+++ q931.c	30 Oct 2004 20:19:18 -0000	1.94
@@ -2714,6 +2714,7 @@
 		pri->ev.ringing.channel = c->channelno | (c->ds1no << 8);
 		pri->ev.ringing.cref = c->cr;
 		pri->ev.ringing.call = c;
+		pri->ev.ringing.progress = c->progress;
 		return Q931_RES_HAVEEVENT;
 	case Q931_CONNECT:
 		if (c->newcall) {
@@ -2730,6 +2731,7 @@
 		pri->ev.answer.channel = c->channelno | (c->ds1no << 8);
 		pri->ev.answer.cref = c->cr;
 		pri->ev.answer.call = c;
+		pri->ev.answer.progress = c->progress;
 		q931_connect_acknowledge(pri, c);
 		return Q931_RES_HAVEEVENT;
 	case Q931_FACILITY:
@@ -2773,6 +2775,10 @@
 			c->ourcallstate = Q931_CALL_STATE_OUTGOING_CALL_PROCEEDING;
 			c->peercallstate = Q931_CALL_STATE_INCOMING_CALL_PROCEEDING;
 		}
+		else
+			pri->ev.proceeding.progress = c->progress;
+		pri->ev.proceeding.cref = c->cr;
+		pri->ev.proceeding.call = c;
 		return Q931_RES_HAVEEVENT;
 	case Q931_CONNECT_ACKNOWLEDGE:
 		if (c->newcall) {




More information about the svn-commits mailing list