[asterisk-commits] crichter: branch 1.2 r72040 - /branches/1.2/channels/misdn/isdn_lib.c

SVN commits to the Asterisk project asterisk-commits at lists.digium.com
Wed Jun 27 02:49:27 CDT 2007


Author: crichter
Date: Wed Jun 27 02:49:27 2007
New Revision: 72040

URL: http://svn.digium.com/view/asterisk?view=rev&rev=72040
Log:
for inbound TE calls, we setup the bchannel when we get the CONNECT_ACKNOWLEDGE, to make sure mISDN has everything ready. removed some #if 0 areas which weren't used anymore.

Modified:
    branches/1.2/channels/misdn/isdn_lib.c

Modified: branches/1.2/channels/misdn/isdn_lib.c
URL: http://svn.digium.com/view/asterisk/branches/1.2/channels/misdn/isdn_lib.c?view=diff&rev=72040&r1=72039&r2=72040
==============================================================================
--- branches/1.2/channels/misdn/isdn_lib.c (original)
+++ branches/1.2/channels/misdn/isdn_lib.c Wed Jun 27 02:49:27 2007
@@ -1485,6 +1485,7 @@
 		switch (event) {
 
 		case EVENT_CONNECT_ACKNOWLEDGE:
+			setup_bc(bc);
 			break;
 		case EVENT_CONNECT:
 
@@ -1826,20 +1827,6 @@
 		break;
 
 		case CC_CONNECT_ACKNOWLEDGE|INDICATION:
-#if 0
-		{
-			struct misdn_bchannel *bc=find_bc_by_l3id(stack, hh->dinfo);
-			if (bc) {
-				if ( !misdn_cap_is_speech(bc->capability)) {
-					int ret=setup_bc(bc);
-					if (ret == -EINVAL){
-						cb_log(0,bc->port,"send_event: setup_bc failed\n");
-						
-					}
-				}
-			}
-		}
-#endif
 		break;
 		
 		case CC_ALERTING|INDICATION:
@@ -1847,28 +1834,6 @@
 		case CC_SETUP_ACKNOWLEDGE|INDICATION:
 			if(!stack->ptp) break;	
 		case CC_CONNECT|INDICATION:
-		{
-#if 0
-			struct misdn_bchannel *bc=find_bc_by_l3id(stack, hh->dinfo);
-			
-			if (!bc) {
-				msg_t *dmsg;
-				cb_log(0, stack->port,"!!!! We didn't found our bc, dinfo:%x on this port.\n",hh->dinfo);
-				
-				cb_log(0, stack->port, "Releaseing call %x (No free Chan for you..)\n", hh->dinfo);
-				dmsg = create_l3msg(CC_RELEASE_COMPLETE | REQUEST,MT_RELEASE_COMPLETE, hh->dinfo,sizeof(RELEASE_COMPLETE_t), 1);
-				stack->nst.manager_l3(&stack->nst, dmsg);
-				free_msg(msg);
-				return 0;
-				
-			}
-			int ret=setup_bc(bc);
-			if (ret == -EINVAL){
-				cb_log(0,bc->port,"handle_event_nt: setup_bc failed\n");
-				misdn_lib_send_event(bc,EVENT_RELEASE_COMPLETE);
-			}
-#endif
-		}
 		break;
 		case CC_DISCONNECT|INDICATION:
 		{
@@ -3252,23 +3217,15 @@
 
 			RETURN(-ENOCHAN,OUT);
 		}
-#if 0
-	if (stack->nt) {
-		ret=setup_bc(bc);
-		if (ret == -EINVAL) {
-			cb_log(0,bc->port,"send_event: setup_bc failed\n");
-		}
-	}
-#endif
 		break;
 
 	case EVENT_PROGRESS:
 	case EVENT_ALERTING:
 	case EVENT_PROCEEDING:
 	case EVENT_SETUP_ACKNOWLEDGE:
+	case EVENT_CONNECT:
 		if (!stack->nt) break;
 
-	case EVENT_CONNECT:
 	case EVENT_RETRIEVE_ACKNOWLEDGE:
 
 		if (stack->nt) {
@@ -3694,6 +3651,8 @@
 		int cnt;
 		for (cnt=0; cnt<=stack->b_num; cnt++) {
 			if (stack->bc[cnt].channel == i) {
+				cb_event(&stack->bc[cnt], EVENT_CLEANUP);
+
 				empty_bc(&stack->bc[cnt]);
 				clean_up_bc(&stack->bc[cnt]);
 				stack->bc[cnt].in_use=0;




More information about the asterisk-commits mailing list