[asterisk-commits] branch oej/sipdiversion r9284 - in /team/oej/sipdiversion: ./ apps/ cdr/ chan...

asterisk-commits at lists.digium.com asterisk-commits at lists.digium.com
Thu Feb 9 07:22:43 MST 2006


Author: oej
Date: Thu Feb  9 08:22:32 2006
New Revision: 9284

URL: http://svn.digium.com/view/asterisk?rev=9284&view=rev
Log:
Up to date and automerging

Modified:
    team/oej/sipdiversion/   (props changed)
    team/oej/sipdiversion/Makefile
    team/oej/sipdiversion/apps/Makefile
    team/oej/sipdiversion/apps/app_macro.c
    team/oej/sipdiversion/cdr/Makefile
    team/oej/sipdiversion/channels/chan_iax2.c
    team/oej/sipdiversion/channels/chan_misdn.c
    team/oej/sipdiversion/channels/chan_misdn_config.c
    team/oej/sipdiversion/channels/chan_oss.c
    team/oej/sipdiversion/channels/chan_zap.c
    team/oej/sipdiversion/channels/misdn/Makefile
    team/oej/sipdiversion/channels/misdn/isdn_lib.c
    team/oej/sipdiversion/channels/misdn/isdn_lib_intern.h
    team/oej/sipdiversion/channels/misdn/isdn_msg_parser.c
    team/oej/sipdiversion/configs/misdn.conf.sample
    team/oej/sipdiversion/dsp.c
    team/oej/sipdiversion/enum.c
    team/oej/sipdiversion/file.c
    team/oej/sipdiversion/include/asterisk/sha1.h
    team/oej/sipdiversion/logger.c
    team/oej/sipdiversion/sha1.c

Propchange: team/oej/sipdiversion/
------------------------------------------------------------------------------
    automerge = ok

Propchange: team/oej/sipdiversion/
------------------------------------------------------------------------------
    automerge-email = oej at edvina.net

Propchange: team/oej/sipdiversion/
------------------------------------------------------------------------------
--- branch-1.2-blocked (added)
+++ branch-1.2-blocked Thu Feb  9 08:22:32 2006
@@ -1,0 +1,1 @@
+/branches/1.2:7490,7497,7517,7529,7546,7550,7552,7557,7580,7586,7595,7605,7641,7663,7706,7738,7771,7792,7812,7870-7871,7898-7900,7915,7960,7965,7970,7976,8047,8112,8124,8134,8394,8412,8414,8418,8429,8433,8445,8562,8573,8600,8619,8666,8808,9073,9262

Propchange: team/oej/sipdiversion/
------------------------------------------------------------------------------
Binary property 'branch-1.2-merged' - no diff available.

Propchange: team/oej/sipdiversion/
            ('svnmerge-blocked' removed)

Propchange: team/oej/sipdiversion/
------------------------------------------------------------------------------
--- svnmerge-integrated (original)
+++ svnmerge-integrated Thu Feb  9 08:22:32 2006
@@ -1,1 +1,1 @@
-/trunk:1-9146
+/trunk:1-9283

Modified: team/oej/sipdiversion/Makefile
URL: http://svn.digium.com/view/asterisk/team/oej/sipdiversion/Makefile?rev=9284&r1=9283&r2=9284&view=diff
==============================================================================
--- team/oej/sipdiversion/Makefile (original)
+++ team/oej/sipdiversion/Makefile Thu Feb  9 08:22:32 2006
@@ -3,7 +3,7 @@
 # 
 # Top level Makefile
 #
-# Copyright (C) 1999-2005, Mark Spencer
+# Copyright (C) 1999-2006, Digium, Inc.
 #
 # Mark Spencer <markster at digium.com>
 #
@@ -943,4 +943,4 @@
 	rm -rf $(DESTDIR)$(ASTSPOOLDIR)
 	rm -rf $(DESTDIR)$(ASTETCDIR)
 	rm -rf $(DESTDIR)$(ASTLOGDIR)
-	
+

Modified: team/oej/sipdiversion/apps/Makefile
URL: http://svn.digium.com/view/asterisk/team/oej/sipdiversion/apps/Makefile?rev=9284&r1=9283&r2=9284&view=diff
==============================================================================
--- team/oej/sipdiversion/apps/Makefile (original)
+++ team/oej/sipdiversion/apps/Makefile Thu Feb  9 08:22:32 2006
@@ -91,15 +91,6 @@
 app_curl.so: app_curl.o
 	$(CC) $(SOLINK) -o $@ ${CYGSOLINK} $< ${CYGSOLIB} $(CURLLIBS)
 
-app_sql_postgres.o: app_sql_postgres.c
-	$(CC) -pipe -I$(CROSS_COMPILE_TARGET)/usr/local/pgsql/include -I$(CROSS_COMPILE_TARGET)/usr/include/postgresql $(CFLAGS) -c -o app_sql_postgres.o app_sql_postgres.c
-
-app_sql_postgres.so: app_sql_postgres.o
-	$(CC) $(SOLINK) -o $@ ${CYGSOLINK} $< ${CYGSOLIB} -L/usr/local/pgsql/lib -lpq
-
-app_sql_odbc.so: app_sql_odbc.o
-	$(CC) $(SOLINK) -o $@ ${CYGSOLINK} $< ${CYGSOLIB} -lodbc
-
 look:	look.c
 	$(CC) -pipe -O6 -g look.c -o look -lncurses
 

Modified: team/oej/sipdiversion/apps/app_macro.c
URL: http://svn.digium.com/view/asterisk/team/oej/sipdiversion/apps/app_macro.c?rev=9284&r1=9283&r2=9284&view=diff
==============================================================================
--- team/oej/sipdiversion/apps/app_macro.c (original)
+++ team/oej/sipdiversion/apps/app_macro.c Thu Feb  9 08:22:32 2006
@@ -107,7 +107,7 @@
 	char oldcontext[AST_MAX_CONTEXT] = "";
 	int offset, depth = 0;
 	int setmacrocontext=0;
-	int autoloopflag;
+	int autoloopflag, dead = 0;
   
 	char *save_macro_exten;
 	char *save_macro_context;
@@ -208,8 +208,8 @@
 				break;
 			}
 			switch(res) {
-	        	case MACRO_EXIT_RESULT:
-                        	res = 0;
+			case MACRO_EXIT_RESULT:
+				res = 0;
 				goto out;
 			case AST_PBX_KEEPALIVE:
 				if (option_debug)
@@ -223,6 +223,7 @@
 					ast_log(LOG_DEBUG, "Spawn extension (%s,%s,%d) exited non-zero on '%s' in macro '%s'\n", chan->context, chan->exten, chan->priority, chan->name, macro);
 				else if (option_verbose > 1)
 					ast_verbose( VERBOSE_PREFIX_2 "Spawn extension (%s, %s, %d) exited non-zero on '%s' in macro '%s'\n", chan->context, chan->exten, chan->priority, chan->name, macro);
+				dead = 1;
 				goto out;
 			}
 		}
@@ -242,37 +243,44 @@
 	out:
 	/* Reset the depth back to what it was when the routine was entered (like if we called Macro recursively) */
 	snprintf(depthc, sizeof(depthc), "%d", depth);
-	pbx_builtin_setvar_helper(chan, "MACRO_DEPTH", depthc);
-
-	ast_set2_flag(chan, autoloopflag, AST_FLAG_IN_AUTOLOOP);
-  	for (x=1; x<argc; x++) {
+	if (!dead) {
+		pbx_builtin_setvar_helper(chan, "MACRO_DEPTH", depthc);
+
+		ast_set2_flag(chan, autoloopflag, AST_FLAG_IN_AUTOLOOP);
+	}
+
+  	for (x = 1; x < argc; x++) {
   		/* Restore old arguments and delete ours */
 		snprintf(varname, sizeof(varname), "ARG%d", x);
   		if (oldargs[x]) {
-			pbx_builtin_setvar_helper(chan, varname, oldargs[x]);
+			if (!dead)
+				pbx_builtin_setvar_helper(chan, varname, oldargs[x]);
 			free(oldargs[x]);
-		} else {
+		} else if (!dead) {
 			pbx_builtin_setvar_helper(chan, varname, NULL);
 		}
   	}
 
 	/* Restore macro variables */
-	pbx_builtin_setvar_helper(chan, "MACRO_EXTEN", save_macro_exten);
+	if (!dead) {
+		pbx_builtin_setvar_helper(chan, "MACRO_EXTEN", save_macro_exten);
+		pbx_builtin_setvar_helper(chan, "MACRO_CONTEXT", save_macro_context);
+		pbx_builtin_setvar_helper(chan, "MACRO_PRIORITY", save_macro_priority);
+	}
 	if (save_macro_exten)
 		free(save_macro_exten);
-	pbx_builtin_setvar_helper(chan, "MACRO_CONTEXT", save_macro_context);
 	if (save_macro_context)
 		free(save_macro_context);
-	pbx_builtin_setvar_helper(chan, "MACRO_PRIORITY", save_macro_priority);
 	if (save_macro_priority)
 		free(save_macro_priority);
-	if (setmacrocontext) {
+
+	if (!dead && setmacrocontext) {
 		chan->macrocontext[0] = '\0';
 		chan->macroexten[0] = '\0';
 		chan->macropriority = 0;
 	}
 
-	if (!strcasecmp(chan->context, fullmacro)) {
+	if (!dead && !strcasecmp(chan->context, fullmacro)) {
   		/* If we're leaving the macro normally, restore original information */
 		chan->priority = oldpriority;
 		ast_copy_string(chan->context, oldcontext, sizeof(chan->context));
@@ -292,7 +300,8 @@
 		}
 	}
 
-	pbx_builtin_setvar_helper(chan, "MACRO_OFFSET", save_macro_offset);
+	if (!dead)
+		pbx_builtin_setvar_helper(chan, "MACRO_OFFSET", save_macro_offset);
 	if (save_macro_offset)
 		free(save_macro_offset);
 	LOCAL_USER_REMOVE(u);

Modified: team/oej/sipdiversion/cdr/Makefile
URL: http://svn.digium.com/view/asterisk/team/oej/sipdiversion/cdr/Makefile?rev=9284&r1=9283&r2=9284&view=diff
==============================================================================
--- team/oej/sipdiversion/cdr/Makefile (original)
+++ team/oej/sipdiversion/cdr/Makefile Thu Feb  9 08:22:32 2006
@@ -45,11 +45,11 @@
 #
 # FreeTDS stuff...
 #
-ifneq ($(wildcard $(CROSS_COMPILE_TARGET)/usr/include/tds.h)$(wildcard $(CROSS_COMPILE_TARGET)/usr/local/include/tds.h),)
-  ifeq ($(shell grep -s TDS_VERSION_NO $(CROSS_COMPILE_TARGET)/usr/include/tdsver.h $(CROSS_COMPILE_TARGET)/usr/local/include/tdsver.h | grep -c 0.63),1)
+ifneq ($(wildcard $(CROSS_COMPILE_TARGET)/usr/include/tds.h)$(wildcard $(CROSS_COMPILE_TARGET)/usr/local/include/tds.h)$(wildcard $(CROSS_COMPILE_TARGET)/usr/include/freetds/tds.h),)
+  ifeq ($(shell grep -s TDS_VERSION_NO $(CROSS_COMPILE_TARGET)/usr/include/tdsver.h $(CROSS_COMPILE_TARGET)/usr/local/include/tdsver.h $(CROSS_COMPILE_TARGET)/usr/include/freetds/tdsver.h | grep -c 0.63),1)
     CFLAGS += -DFREETDS_0_63
   else
-	ifeq ($(shell grep -s TDS_VERSION_NO $(CROSS_COMPILE_TARGET)/usr/include/tdsver.h $(CROSS_COMPILE_TARGET)/usr/local/include/tdsver.h | grep -c 0.62),1)
+	ifeq ($(shell grep -s TDS_VERSION_NO $(CROSS_COMPILE_TARGET)/usr/include/tdsver.h $(CROSS_COMPILE_TARGET)/usr/local/include/tdsver.h $(CROSS_COMPILE_TARGET)/usr/include/freetds/tdsver.h | grep -c 0.62),1)
       CFLAGS += -DFREETDS_0_62
     else
       CFLAGS += -DFREETDS_PRE_0_62

Modified: team/oej/sipdiversion/channels/chan_iax2.c
URL: http://svn.digium.com/view/asterisk/team/oej/sipdiversion/channels/chan_iax2.c?rev=9284&r1=9283&r2=9284&view=diff
==============================================================================
--- team/oej/sipdiversion/channels/chan_iax2.c (original)
+++ team/oej/sipdiversion/channels/chan_iax2.c Thu Feb  9 08:22:32 2006
@@ -8131,6 +8131,7 @@
 		peer->pokefreqok = DEFAULT_FREQ_OK;
 		peer->pokefreqnotok = DEFAULT_FREQ_NOTOK;
 		peer->context[0] = '\0';
+		peer->peercontext[0] = '\0';
 		while(v) {
 			if (!strcasecmp(v->name, "secret")) {
 				if (!ast_strlen_zero(peer->secret)) {

Modified: team/oej/sipdiversion/channels/chan_misdn.c
URL: http://svn.digium.com/view/asterisk/team/oej/sipdiversion/channels/chan_misdn.c?rev=9284&r1=9283&r2=9284&view=diff
==============================================================================
--- team/oej/sipdiversion/channels/chan_misdn.c (original)
+++ team/oej/sipdiversion/channels/chan_misdn.c Thu Feb  9 08:22:32 2006
@@ -888,7 +888,7 @@
 	return RESULT_SUCCESS ;
 }
 
-static char *complete_ch_helper(char *line, char *word, int pos, int state, int rpos)
+static char *complete_ch_helper(const char *line, const char *word, int pos, int state, int rpos)
 {
 	struct ast_channel *c;
 	int which=0;
@@ -912,12 +912,12 @@
 	return ret;
 }
 
-static char *complete_ch(char *line, char *word, int pos, int state)
+static char *complete_ch(const char *line, const char *word, int pos, int state)
 {
 	return complete_ch_helper(line, word, pos, state, 3);
 }
 
-static char *complete_debug_port (char *line, char *word, int pos, int state)
+static char *complete_debug_port (const char *line, const char *word, int pos, int state)
 {
 	if (state)
 		return NULL;
@@ -1418,14 +1418,7 @@
 	struct misdn_bchannel *newbc;
 	char *opts=NULL, *ext,*tokb;
 	char dest_cp[256];
-	struct ast_channel *bridged;
-	
-	if ( (bridged=ast_bridged_channel(ast)) ) {
-		chan_misdn_log(0,0,"Our Bridged Partner is %s\n",bridged->tech->type);
-	} else {
-		chan_misdn_log(0,0,"No Bridged Partner\n");
-	}
-	
+
 	{
 		strncpy(dest_cp,dest,sizeof(dest_cp)-1);
 		dest_cp[sizeof(dest_cp)]=0;
@@ -1480,7 +1473,7 @@
 	strncpy(ast->exten,ext,sizeof(ast->exten));
 	
 	
-	chan_misdn_log(1, 0, "* CALL: %s\n",dest);
+	chan_misdn_log(1, port, "* CALL: %s\n",dest);
 	
 	chan_misdn_log(1, port, " --> * dad:%s tech:%s ctx:%s\n",ast->exten,ast->name, ast->context);
 	
@@ -1521,7 +1514,7 @@
 		if (opts)
 			misdn_set_opt_exec(ast,opts);
 		else
-			chan_misdn_log(1,0,"NO OPTS GIVEN\n");
+			chan_misdn_log(2,port,"NO OPTS GIVEN\n");
 		
 		
 		ch->state=MISDN_CALLING;
@@ -2342,8 +2335,8 @@
 	}
 	
 	if (!newbc) {
-		chan_misdn_log(1, 0, " --> ! No free channel chan ext:%s even after Group Call\n",ext);
-		chan_misdn_log(1, 0, " --> SEND: State Down\n");
+		chan_misdn_log(-1, 0, " --> ! No free channel chan ext:%s even after Group Call\n",ext);
+		chan_misdn_log(-1, 0, " --> SEND: State Down\n");
 		return NULL;
 	}
 
@@ -2773,7 +2766,6 @@
 					} else {
 						chan_misdn_log(2,  bc->port, "* --> Hangup\n");
 						ast_queue_hangup(ast);
-						//ast_hangup(ast);
 					}
 					break;
 					
@@ -2817,7 +2809,6 @@
 	holded_chan->state=MISDN_CONNECTED;
 	holded_chan->holded=0;
 	misdn_lib_transfer(holded_chan->bc?holded_chan->bc:holded_chan->holded_bc);
-	
 	ast_channel_masquerade(holded_chan->ast, AST_BRIDGED_P(tmp_ch->ast));
 }
 
@@ -2832,7 +2823,6 @@
 	strncpy(predial, ast->exten, sizeof(predial) -1 );
   
 	ch->state=MISDN_DIALING;
-	
 
 	if (bc->nt) {
 		int ret; 
@@ -2845,7 +2835,6 @@
 			ret = misdn_lib_send_event(bc, EVENT_PROCEEDING );
 		}
 	}
-
 	tone_indicate(ch,TONE_DIAL);  
   
 	chan_misdn_log(1, bc->port, "* Starting Ast ctx:%s dad:%s oad:%s with 's' extension\n", ast->context, ast->exten, AST_CID_P(ast));
@@ -3010,6 +2999,21 @@
 			}
 /*			chan_misdn_log(5, bc->port, "Can Match Extension: dad:%s oad:%s\n",bc->dad,bc->oad);*/
 			
+			/* Check for Pickup Request first */
+			if (!strcmp(ch->ast->exten, ast_pickup_ext())) {
+				int ret;/** Sending SETUP_ACK**/
+				ret = misdn_lib_send_event(bc, EVENT_SETUP_ACKNOWLEDGE );
+				if (ast_pickup_call(ch->ast)) {
+					ast_hangup(ch->ast);
+				} else {
+					struct ast_channel *chan=ch->ast;
+					ch->state = MISDN_CALLING_ACKNOWLEDGE;
+					ch->ast=NULL;
+					ast_setstate(chan, AST_STATE_DOWN);
+					ast_hangup(chan);
+					break;
+				}
+			}
 			
 			if(!ast_canmatch_extension(ch->ast, ch->context, bc->dad, 1, bc->oad)) {
 
@@ -3130,7 +3134,21 @@
 
 		/** queue new chan **/
 		cl_queue_chan(&cl_te, ch) ;
-
+		
+		/* Check for Pickup Request first */
+		if (!strcmp(chan->exten, ast_pickup_ext())) {
+			int ret;/** Sending SETUP_ACK**/
+			ret = misdn_lib_send_event(bc, EVENT_SETUP_ACKNOWLEDGE );
+			if (ast_pickup_call(chan)) {
+				ast_hangup(chan);
+			} else {
+				ch->state = MISDN_CALLING_ACKNOWLEDGE;
+				ch->ast=NULL;
+				ast_setstate(chan, AST_STATE_DOWN);
+				ast_hangup(chan);
+				break;
+			}
+		}
 		
 		/*
 		  added support for s extension hope it will help those poor cretains
@@ -3371,7 +3389,7 @@
 		int res;
 		int (*generate)(struct ast_channel *chan, void *tmp, int datalen, int samples);
 
-		chan_misdn_log(9,0,"TONE_GEN: len:%d\n");
+		chan_misdn_log(9,bc->port,"TONE_GEN: len:%d\n");
 		
 		if (!ast->generator) break;
 		

Modified: team/oej/sipdiversion/channels/chan_misdn_config.c
URL: http://svn.digium.com/view/asterisk/team/oej/sipdiversion/channels/chan_misdn_config.c?rev=9284&r1=9283&r2=9284&view=diff
==============================================================================
--- team/oej/sipdiversion/channels/chan_misdn_config.c (original)
+++ team/oej/sipdiversion/channels/chan_misdn_config.c Thu Feb  9 08:22:32 2006
@@ -107,8 +107,8 @@
 	{ "echocancelwhenbridged", MISDN_CFG_ECHOCANCELWHENBRIDGED, MISDN_CTYPE_BOOL, "no", NONE },
 	{ "echotraining", MISDN_CFG_ECHOTRAINING, MISDN_CTYPE_BOOLINT, "1", 1 },
 	{ "need_more_infos", MISDN_CFG_NEED_MORE_INFOS, MISDN_CTYPE_BOOL, "0", NONE },
-	{ "jitterbuffer", MISDN_CFG_JITTERBUFFER, MISDN_CTYPE_INT, "0", NONE },
-	{ "jitterbuffer_upper_threshold", MISDN_CFG_JITTERBUFFER_UPPER_THRESHOLD, MISDN_CTYPE_INT, "0", NONE },
+	{ "jitterbuffer", MISDN_CFG_JITTERBUFFER, MISDN_CTYPE_INT, "1000", NONE },
+	{ "jitterbuffer_upper_threshold", MISDN_CFG_JITTERBUFFER_UPPER_THRESHOLD, MISDN_CTYPE_INT, "600", NONE },
 	{ "callgroup", MISDN_CFG_CALLGROUP, MISDN_CTYPE_ASTGROUP, NO_DEFAULT, NONE },
 	{ "pickupgroup", MISDN_CFG_PICKUPGROUP, MISDN_CTYPE_ASTGROUP, NO_DEFAULT, NONE },
 	{ "msns", MISDN_CFG_MSNS, MISDN_CTYPE_MSNLIST, NO_DEFAULT, NONE }

Modified: team/oej/sipdiversion/channels/chan_oss.c
URL: http://svn.digium.com/view/asterisk/team/oej/sipdiversion/channels/chan_oss.c?rev=9284&r1=9283&r2=9284&view=diff
==============================================================================
--- team/oej/sipdiversion/channels/chan_oss.c (original)
+++ team/oej/sipdiversion/channels/chan_oss.c Thu Feb  9 08:22:32 2006
@@ -1392,6 +1392,9 @@
 			store_config(cfg, ctg);
 		} while ( (ctg = ast_category_browse(cfg, ctg)) != NULL);
 		ast_config_destroy(cfg);
+	} else {
+		 ast_log(LOG_NOTICE, "Unable to load config oss.conf\n");
+		 return -1;
 	}
 	if (find_desc(oss_active) == NULL) {
 		ast_log(LOG_NOTICE, "Device %s not found\n", oss_active);

Modified: team/oej/sipdiversion/channels/chan_zap.c
URL: http://svn.digium.com/view/asterisk/team/oej/sipdiversion/channels/chan_zap.c?rev=9284&r1=9283&r2=9284&view=diff
==============================================================================
--- team/oej/sipdiversion/channels/chan_zap.c (original)
+++ team/oej/sipdiversion/channels/chan_zap.c Thu Feb  9 08:22:32 2006
@@ -7032,7 +7032,7 @@
 				if (p.sigtype != (signalling & 0x3ffff)) {
 					ast_log(LOG_ERROR, "Signalling requested on channel %d is %s but line is in %s signalling\n", channel, sig2str(signalling), sig2str(p.sigtype));
 					destroy_zt_pvt(&tmp);
-					return tmp;
+					return NULL;
 				}
 				tmp->law = p.curlaw;
 				tmp->span = p.spanno;
@@ -7587,7 +7587,6 @@
 
 static struct ast_channel *zt_request(const char *type, int format, void *data, int *cause)
 {
-	int oldformat;
 	int groupmatch = 0;
 	int channelmatch = -1;
 	int roundrobin = 0;
@@ -7616,13 +7615,6 @@
 	lock = &iflock;
 	start = iflist;
 	end = ifend;
-	/* We do signed linear */
-	oldformat = format;
-	format &= (AST_FORMAT_SLINEAR | AST_FORMAT_ULAW);
-	if (!format) {
-		ast_log(LOG_NOTICE, "Asked to get a channel of unsupported format '%d'\n", oldformat);
-		return NULL;
-	}
 	if (data) {
 		dest = ast_strdupa((char *)data);
 	} else {
@@ -9392,7 +9384,7 @@
 	}
 	for (x=0;x<NUM_DCHANS;x++) {
 		if (pris[span-1].dchans[x])
-			pri_set_debug(pris[span-1].dchans[x], PRI_DEBUG_Q931_DUMP | PRI_DEBUG_Q931_STATE);
+			pri_set_debug(pris[span-1].dchans[x], PRI_DEBUG_APDU | PRI_DEBUG_Q931_DUMP | PRI_DEBUG_Q931_STATE);
 	}
 	ast_cli(fd, "Enabled debugging on span %d\n", span);
 	return RESULT_SUCCESS;
@@ -9440,7 +9432,7 @@
 	}
 	for (x=0;x<NUM_DCHANS;x++) {
 		if (pris[span-1].dchans[x])
-			pri_set_debug(pris[span-1].dchans[x], (PRI_DEBUG_Q931_DUMP | PRI_DEBUG_Q921_DUMP | PRI_DEBUG_Q921_RAW | PRI_DEBUG_Q921_STATE));
+			pri_set_debug(pris[span-1].dchans[x], (PRI_DEBUG_APDU | PRI_DEBUG_Q931_DUMP | PRI_DEBUG_Q921_DUMP | PRI_DEBUG_Q921_RAW | PRI_DEBUG_Q921_STATE));
 	}
 	ast_cli(fd, "Enabled EXTENSIVE debugging on span %d\n", span);
 	return RESULT_SUCCESS;

Modified: team/oej/sipdiversion/channels/misdn/Makefile
URL: http://svn.digium.com/view/asterisk/team/oej/sipdiversion/channels/misdn/Makefile?rev=9284&r1=9283&r2=9284&view=diff
==============================================================================
--- team/oej/sipdiversion/channels/misdn/Makefile (original)
+++ team/oej/sipdiversion/channels/misdn/Makefile Thu Feb  9 08:22:32 2006
@@ -6,7 +6,7 @@
 
 # Verify those options with main Makefile
 CFLAGS		= -pipe -c -Wall
-ifeq ($(PROC),x86_64)
+ifeq ($(shell uname -m),x86_64)
 CFLAGS	       += -fPIC
 endif
 SOURCES		= isdn_lib.c isdn_msg_parser.c 

Modified: team/oej/sipdiversion/channels/misdn/isdn_lib.c
URL: http://svn.digium.com/view/asterisk/team/oej/sipdiversion/channels/misdn/isdn_lib.c?rev=9284&r1=9283&r2=9284&view=diff
==============================================================================
--- team/oej/sipdiversion/channels/misdn/isdn_lib.c (original)
+++ team/oej/sipdiversion/channels/misdn/isdn_lib.c Thu Feb  9 08:22:32 2006
@@ -335,9 +335,8 @@
 	frm = (iframe_t *)dmsg->data;
 	struct misdn_stack *stack=get_stack_by_bc(bc);
 
-
 	if (!stack) {
-		cb_log(0,0,"send_msg: IEK!! no stack\n ");
+		cb_log(0,bc->port,"send_msg: IEK!! no stack\n ");
 		return -1;
 	}
 	
@@ -594,16 +593,11 @@
 
 static int newteid=0;
 
-#ifdef MISDNUSER_JOLLY
 #define MAXPROCS 0x100
-#else
-#define MAXPROCS 0x10
-#endif
-
 
 int misdn_lib_get_l1_up(struct misdn_stack *stack)
 {
-	/* Pull Up L1 if we have JOLLY */ 
+	/* Pull Up L1 */ 
 	iframe_t act;
 	act.prim = PH_ACTIVATE | REQUEST; 
 	act.addr = (stack->upper_id | FLG_MSG_DOWN)  ;
@@ -641,18 +635,30 @@
 	return 0;
 }
 
-
-int misdn_lib_get_l2_status(struct misdn_stack *stack)
+int misdn_lib_get_l2_te_ptp_up(struct misdn_stack *stack)
 {
 	iframe_t act;
-	
+		
 	act.prim = DL_ESTABLISH | REQUEST;
-
-	act.addr = (stack->upper_id | FLG_MSG_DOWN)  ;
-
+	act.addr = (stack->upper_id  & ~LAYER_ID_MASK) | 3 | FLG_MSG_DOWN;
+		
 	act.dinfo = 0;
 	act.len = 0;
 	return mISDN_write(stack->midev, &act, mISDN_HEADER_LEN+act.len, TIMEOUT_1SEC);
+	return 0;
+}
+
+int misdn_lib_get_l2_status(struct misdn_stack *stack)
+{
+	iframe_t act;
+	
+	act.prim = DL_ESTABLISH | REQUEST;
+
+	act.addr = (stack->upper_id | FLG_MSG_DOWN)  ;
+
+	act.dinfo = 0;
+	act.len = 0;
+	return mISDN_write(stack->midev, &act, mISDN_HEADER_LEN+act.len, TIMEOUT_1SEC);
 }
 
 int misdn_lib_get_short_status(struct misdn_stack *stack)
@@ -662,9 +668,9 @@
 	
 	act.prim = MGR_SHORTSTATUS | REQUEST; 
 	
-	act.addr = (stack->upper_id | FLG_MSG_DOWN)  ;
-
-	act.dinfo = SSTATUS_L1;
+	act.addr = (stack->upper_id | MSG_BROADCAST)  ;
+
+	act.dinfo = SSTATUS_BROADCAST_BIT | SSTATUS_ALL;
 	
 	act.len = 0;
 	return mISDN_write(stack->midev, &act, mISDN_HEADER_LEN+act.len, TIMEOUT_1SEC);
@@ -693,11 +699,7 @@
 		}
 		stack->procids[i]=1;
 
-#ifdef MISDNUSER_JOLLY
 		l3_id = 0xff00 | i;
-#else
-		l3_id = 0xfff0 | i;
-#endif
     
 		ncr.prim = CC_NEW_CR | REQUEST; 
 
@@ -1054,15 +1056,11 @@
 		}
 	}
 	
-	
-
 	{
 		int ret;
 		int nt=stack->nt;
 
 		cb_log(4, port, "Init. Stack.\n");
-		
-		
 		
 		memset(&li, 0, sizeof(li));
 		{
@@ -1092,7 +1090,6 @@
 			return(NULL);
 		}
 		
-		
 		stack->lower_id = mISDN_get_layerid(midev, stack->d_stid, nt?1:3); 
 		if (stack->lower_id < 0) {
 			cb_log(-1, port, "%s: Cannot get layer(%d) id of this port.\n", __FUNCTION__, nt?1:3);
@@ -1144,6 +1141,7 @@
 			stack->l1link=1;
 		}
 
+		misdn_lib_get_short_status(stack);
 		misdn_lib_get_l1_up(stack);
 		misdn_lib_get_l2_up(stack);
 		
@@ -1277,7 +1275,6 @@
 				int ret=setup_bc(bc);
 				if (ret == -EINVAL){
 					cb_log(-1,bc->port,"send_event: setup_bc failed\n");
-					
 				}
 			}
 			
@@ -1287,7 +1284,6 @@
 
 			if ( *bc->crypt_key ) {
 				cb_log(4, stack->port, "ENABLING BLOWFISH channel:%d oad%d:%s dad%d:%s\n", bc->channel, bc->onumplan,bc->oad, bc->dnumplan,bc->dad);
-				
 				manager_ph_control_block(bc,  BF_ENABLE_KEY, bc->crypt_key, strlen(bc->crypt_key) );
 			}
 		case EVENT_SETUP:
@@ -1333,7 +1329,7 @@
 	
 	
 	if (!bc) {
-		cb_log(-1, 0, " --> !! lib: No free channel!\n");
+		cb_log(-1, stack->port, " --> !! lib: No free channel!\n");
 		return -1;
 	}
   
@@ -1347,7 +1343,6 @@
 
 int handle_cr ( struct misdn_stack *stack, iframe_t *frm)
 {
-	
 	if (!stack) return -1;
   
 	switch (frm->prim) {
@@ -1385,7 +1380,6 @@
 				dump_chan_list(stack);
 				bc->pid = 0;
 				cb_event(EVENT_CLEANUP, bc, glob_mgr->user_data);
-				
 				if (bc->stack_holder) {
 					cb_log(4,stack->port, "REMOVEING Holder\n");
 					stack_holder_remove( stack, bc);
@@ -1427,7 +1421,7 @@
 
 
 int misdn_lib_get_port_up (int port) 
-{ /* Pull Up L1 if we have JOLLY */ 
+{ /* Pull Up L1 */ 
 	struct misdn_stack *stack;
 	
 	for (stack=glob_mgr->stack_list;
@@ -1508,16 +1502,11 @@
 		return(-EINVAL);
 
 	hh=(mISDNuser_head_t*)msg->data;
-
-
 	port=stack->port;
 	
-	
 	cb_log(4, stack->port, " --> lib: prim %x dinfo %x\n",hh->prim, hh->dinfo);
-  
 	{
 		switch(hh->prim){
-			
 		case CC_RETRIEVE|INDICATION:
 		{
 			iframe_t frm; /* fake te frm to add callref to global callreflist */
@@ -1549,15 +1538,13 @@
 			
 			break;
 			
-			
 		case CC_SETUP|CONFIRM:
 		{
 			struct misdn_bchannel *bc=find_bc_by_l3id(stack, hh->dinfo);
 			int l3id = *((int *)(((u_char *)msg->data)+ mISDNUSER_HEAD_SIZE));
-			
-			cb_log(4, bc?stack->port:0, " --> lib: Event_ind:SETUP CONFIRM [NT] : new L3ID  is %x\n",l3id );
-	
-			if (!bc) { cb_log(4, 0, "Bc Not found (after SETUP CONFIRM)\n"); return 0; }
+			cb_log(4, stack->port, " --> lib: Event_ind:SETUP CONFIRM [NT] : new L3ID  is %x\n",l3id );
+	
+			if (!bc) { cb_log(4, stack->port, "Bc Not found (after SETUP CONFIRM)\n"); return 0; }
 			cb_log (2,bc->port,"I IND :CC_SETUP|CONFIRM: old l3id:%x new l3id:%x\n", bc->l3_id, l3id);
 			bc->l3_id=l3id;
 			cb_event(EVENT_NEW_L3ID, bc, glob_mgr->user_data);
@@ -1656,7 +1643,6 @@
 		}
 		break;
 		
-
 		case CC_RELEASE_COMPLETE|INDICATION:
 			break;
 
@@ -1696,11 +1682,9 @@
 
 			frm.addr=stack->upper_id | FLG_MSG_DOWN;
 
-
 			frm.prim = CC_RELEASE_CR|INDICATION;
 			cb_log(4, stack->port, " --> Faking Realease_cr for %x\n",frm.addr);
 			/** removing procid **/
-
 			if (!bc) {
 				cb_log(4, stack->port, " --> Didn't found BC so temporarly creating dummy BC (l3id:%x) on this port.\n", hh->dinfo);
 				memset (&dummybc,0,sizeof(dummybc));
@@ -1710,20 +1694,10 @@
 			}
 	
 			if (bc) {
-#ifdef MISDNUSER_JOLLY
 				if ( (bc->l3_id & 0xff00) == 0xff00) {
 					cb_log(4, stack->port, " --> Removing Process Id:%x on this port.\n", bc->l3_id&0xff);
 					stack->procids[bc->l3_id&0xff] = 0 ;
 				}
-#else
-				if ( (bc->l3_id & 0xfff0) == 0xfff0) {
-					cb_log(4, stack->port, " --> Removing Process Id:%x on this port.\n", bc->l3_id&0xf);
-					stack->procids[bc->l3_id&0xf] = 0 ;
-	    
-				}
-	  
-#endif
-
 			}
 			else cb_log(-1, stack->port, "Couldnt find BC so I couldnt remove the Process!!!! this is a bad port.\n");
 	
@@ -1731,7 +1705,6 @@
 			free_msg(msg);
 			return 0 ;
 		}
-      
 		break;
       
 		case CC_NEW_CR|INDICATION:
@@ -1740,24 +1713,15 @@
 		{
 			struct misdn_bchannel *bc=find_bc_by_l3id(stack, hh->dinfo);
 			int l3id = *((int *)(((u_char *)msg->data)+ mISDNUSER_HEAD_SIZE));
-			if (!bc) { cb_log(-1, 0, " --> In NEW_CR: didn't found bc ??\n"); return -1;};
-#ifdef MISDNUSER_JOLLY
+			if (!bc) { cb_log(-1, stack->port, " --> In NEW_CR: didn't found bc ??\n"); return -1;};
 			if (((l3id&0xff00)!=0xff00) && ((bc->l3_id&0xff00)==0xff00)) {
 				cb_log(4, stack->port, " --> Removing Process Id:%x on this port.\n", 0xff&bc->l3_id);
 				stack->procids[bc->l3_id&0xff] = 0 ;
 			}
-#else
-			if (((l3id&0xfff0)!=0xfff0) && ((bc->l3_id&0xfff0)==0xfff0)) {
-				cb_log(4, stack->port, "Removing Process Id:%x on this port.\n", 0xf&bc->l3_id);
-				stack->procids[bc->l3_id&0xf] = 0 ;
-			}
-
-#endif
 			cb_log(4, stack->port, "lib: Event_ind:CC_NEW_CR : very new L3ID  is %x\n",l3id );
 	
 			bc->l3_id =l3id;
 			cb_event(EVENT_NEW_L3ID, bc, glob_mgr->user_data);
-	
 	
 			free_msg(msg);
 			return 0;
@@ -1787,8 +1751,6 @@
 		}
 	}
 	
-  
-
 	{
 		/*  Parse Events and fire_up to App. */
 		struct misdn_bchannel *bc;
@@ -1954,7 +1916,7 @@
 	struct misdn_stack *stack=get_stack_by_bc(bc);
 	
 	if (!stack) {
-		cb_log(0,0,"handle_bchan: STACK not found for prim:%x with addr:%x dinfo:%x\n", frm->prim, frm->addr, frm->dinfo);
+		cb_log(0, bc->port,"handle_bchan: STACK not found for prim:%x with addr:%x dinfo:%x\n", frm->prim, frm->addr, frm->dinfo);
 		return 0;
 	}
 	
@@ -2219,17 +2181,11 @@
 #endif
       
 		} else {
-	
 			cb_log(-1, stack->port, "NO BC FOR STACK\n");		
-			
-		}
-
+		}
 	}
 
 	cb_log(4, stack->port, "TE_FRM_HANDLER: Returning 0 on prim:%x \n",frm->prim);
-
-	
-  
 	return 0;
 }
 
@@ -2237,10 +2193,7 @@
 int handle_l1(msg_t *msg)
 {
 	iframe_t *frm = (iframe_t*) msg->data;
-
 	struct misdn_stack *stack = find_stack_by_addr(frm->addr);
-
-	
 	int i ;
 	
 	if (!stack) return 0 ;
@@ -2267,19 +2220,16 @@
 			}
 			
 		}
-		
 		return 1;
 
 	case PH_ACTIVATE | REQUEST:
 		free_msg(msg);
 		cb_log(1,stack->port,"L1: PH_ACTIVATE|REQUEST \n");
-		
 		return 1;
 		
 	case PH_DEACTIVATE | REQUEST:
 		free_msg(msg);
 		cb_log(1,stack->port,"L1: PH_DEACTIVATE|REQUEST \n");
-		
 		return 1;
 		
 	case PH_DEACTIVATE | CONFIRM:
@@ -2290,13 +2240,11 @@
 			if (global_state == MISDN_INITIALIZED)  {
 				cb_event(EVENT_CLEANUP, &stack->bc[i], glob_mgr->user_data);
 			}
-			
 		}
 		
 		if (stack->nt) {
 			if (stack->nst.l1_l2(&stack->nst, msg))
 				free_msg(msg);
-			
 		} else {
 			free_msg(msg);
 		}
@@ -2315,8 +2263,6 @@
 	iframe_t *frm = (iframe_t*) msg->data;
 
 	struct misdn_stack *stack = find_stack_by_addr(frm->addr);
-
-	
 	
 	if (!stack) {
 		return 0 ;
@@ -2355,12 +2301,9 @@
 	return 0;
 }
 
-
 int handle_mgmt(msg_t *msg)
 {
 	iframe_t *frm = (iframe_t*) msg->data;
-	
-
 
 	if ( (frm->addr == 0) && (frm->prim == (MGR_DELLAYER|CONFIRM)) ) {
 		cb_log(2, 0, "MGMT: DELLAYER|CONFIRM Addr: 0 !\n") ;
@@ -2376,12 +2319,14 @@
 	
 	switch(frm->prim) {
 	case MGR_SHORTSTATUS | INDICATION:
+	case MGR_SHORTSTATUS | CONFIRM:
 		cb_log(2, 0, "MGMT: Short status dinfo %x\n",frm->dinfo);
 		
 		switch (frm->dinfo) {
 		case SSTATUS_L1_ACTIVATED:
 			cb_log(1, 0, "MGMT: SSTATUS: L1_ACTIVATED \n");
 			stack->l1link=1;
+		
 			break;
 		case SSTATUS_L1_DEACTIVATED:
 			cb_log(1, 0, "MGMT: SSTATUS: L1_DEACTIVATED \n");
@@ -2393,31 +2338,28 @@
 				stack->l1link=0;
 			
 			break;
+
 		case SSTATUS_L2_ESTABLISHED:
-			cb_log(1, 0, "MGMT: SSTATUS: L2_ESTABLISH \n");
+			cb_log(1, stack->port, "MGMT: SSTATUS: L2_ESTABLISH \n");
 			stack->l2link=1;
-			
 			break;
 			
 		case SSTATUS_L2_RELEASED:
-			cb_log(1, 0, "MGMT: SSTATUS: L2_RELEASED \n");
+			cb_log(1, stack->port, "MGMT: SSTATUS: L2_RELEASED \n");
 			stack->l2link=0;
 			stack->l1link=2;
-			
 			break;
-			
-		}
-		
+		}
 		
 		free_msg(msg);
 		return 1;
 		
 	case MGR_SETSTACK | INDICATION:
-		cb_log(2, 0, "MGMT: SETSTACK|IND dinfo %x\n",frm->dinfo);
+		cb_log(2, stack->port, "MGMT: SETSTACK|IND dinfo %x\n",frm->dinfo);
 		free_msg(msg);
 		return 1;
 	case MGR_DELLAYER | CONFIRM:
-		cb_log(2, 0, "MGMT: DELLAYER|CNF dinfo %x\n",frm->dinfo) ;
+		cb_log(2, stack->port, "MGMT: DELLAYER|CNF dinfo %x\n",frm->dinfo) ;
 		free_msg(msg);
 		return 1;
 		
@@ -2648,7 +2590,6 @@
 	struct misdn_stack *stack=get_stack_by_bc(bc);
 
 	if (!stack) return;
-	
 
 	cb_log(2, stack->port, " --> mode:%s cause:%d ocause:%d rad:%s\n", stack->nt?"NT":"TE", bc->cause, bc->out_cause, bc->rad);
 	
@@ -2680,12 +2621,10 @@
 	int err = -1 ;
   
 	if (!bc) goto ERR; 
-
 	
 	struct misdn_stack *stack=get_stack_by_bc(bc);
 
-
-	cb_log(0,0,"SENDEVENT: stack->nt:%d stack->uperid:%x\n",stack->nt, stack->upper_id);
+	cb_log(6,stack->port,"SENDEVENT: stack->nt:%d stack->uperid:%x\n",stack->nt, stack->upper_id);
 
 	if ( stack->nt && !stack->l1link) {
 		/** Queue Event **/
@@ -2707,8 +2646,6 @@
 			goto ERR;
 		}
 		break;
-
-		
 
 	case EVENT_CONNECT:
 	case EVENT_PROGRESS:
@@ -2737,14 +2674,12 @@
 			}
 		} 
 		
-		
 		if ( (event == EVENT_CONNECT ) && misdn_cap_is_speech(bc->capability) ) {
 			if ( *bc->crypt_key ) {
 				cb_log(4, stack->port,  " --> ENABLING BLOWFISH channel:%d oad%d:%s dad%d:%s \n", bc->channel, bc->onumplan,bc->oad, bc->dnumplan,bc->dad);
 				
 				manager_ph_control_block(bc,  BF_ENABLE_KEY, bc->crypt_key, strlen(bc->crypt_key) );
 			}
-			
 			
 			if (!bc->nodsp) manager_ph_control(bc,  DTMF_TONE_START, 0);
 			
@@ -2827,7 +2762,6 @@
 }
 
 
-
 int manager_isdn_handler(iframe_t *frm ,msg_t *msg)
 {  
 
@@ -2836,13 +2770,10 @@
 	}
 
 	if ( ((frm->addr | ISDN_PID_BCHANNEL_BIT )>> 28 ) == 0x5) {
-		cb_log(9,0,"BCHANNEL_BIT\n");
 		if (handle_bchan(msg)) 
 			return 0 ;
-	} else {
-		cb_log(9,0,"NO BCHANNEL_BIT !\n");
-	}
-	
+	}	
+
 	if (handle_timers(msg)) 
 		return 0 ;
 	
@@ -2910,10 +2841,8 @@
 	cb_log(0, port, "Restarting this port.\n");
 	if (stack) {
 		cb_log(0, port, "Stack:%p\n",stack);
-
 		
 		clear_l3(stack);
-		
 		{
 			msg_t *msg=alloc_msg(MAX_MSG_SIZE);
 			iframe_t *frm;
@@ -2926,12 +2855,9 @@
 			frm=(iframe_t*)msg->data;
 			/* we must activate if we are deactivated */
 			/* activate bchannel */
-	
 			frm->prim = DL_RELEASE | REQUEST;
-
 			frm->addr = stack->upper_id | FLG_MSG_DOWN;
 
-	
 			frm->dinfo = 0;
 			frm->len = 0;
 			msg_queue_tail(&glob_mgr->activatequeue, msg);
@@ -3112,8 +3038,6 @@
 		}
 		stack=stack_init(midev, port, ptp);
     
-    
-    
 		if (!stack) {
 			perror("init_stack");
 			exit(1);

Modified: team/oej/sipdiversion/channels/misdn/isdn_lib_intern.h
URL: http://svn.digium.com/view/asterisk/team/oej/sipdiversion/channels/misdn/isdn_lib_intern.h?rev=9284&r1=9283&r2=9284&view=diff
==============================================================================
--- team/oej/sipdiversion/channels/misdn/isdn_lib_intern.h (original)
+++ team/oej/sipdiversion/channels/misdn/isdn_lib_intern.h Thu Feb  9 08:22:32 2006
@@ -16,11 +16,8 @@
 
 #ifndef mISDNUSER_HEAD_SIZE
 
-#ifdef MISDNUSER_JOLLY
 #define mISDNUSER_HEAD_SIZE (sizeof(mISDNuser_head_t))
-#else
-#define mISDNUSER_HEAD_SIZE (sizeof(mISDN_head_t))
-#endif
+/*#define mISDNUSER_HEAD_SIZE (sizeof(mISDN_head_t))*/
 #endif
 
 

Modified: team/oej/sipdiversion/channels/misdn/isdn_msg_parser.c
URL: http://svn.digium.com/view/asterisk/team/oej/sipdiversion/channels/misdn/isdn_msg_parser.c?rev=9284&r1=9283&r2=9284&view=diff
==============================================================================
--- team/oej/sipdiversion/channels/misdn/isdn_msg_parser.c (original)
+++ team/oej/sipdiversion/channels/misdn/isdn_msg_parser.c Thu Feb  9 08:22:32 2006
@@ -165,23 +165,18 @@
 		strcpy(bc->oad, id);
 		switch (present) {
 		case 0:
-//			cb_log(3, bc->stack->port, " --> Pres:0\n");
 			bc->pres=0; /* screened */
 			break;
 		case 1:
-//			cb_log(3, bc->stack->port, " --> Pres:1\n");
 			bc->pres=1; /* not screened */
 			break;
 		default:
-//			cb_log(3, bc->stack->port, " --> Pres:%d\n",present);
 			bc->pres=0;
 		}
 		switch (screen) {
 		case 0:
-//			cb_log(4, bc->stack->port, " --> Screen:0\n");
 			break;
 		default:
-//			cb_log(4, bc->stack->port, " --> Screen:%d\n",screen);
 			;
 		} 
 	}
@@ -210,7 +205,6 @@
     
 		strcpy(bc->rad, id);
 		bc->rnumplan=type; 
-//		cb_log(3, bc->stack->port, " --> Redirecting number (REDIR_NR): '%s'\n", id);
 	}
 	{
 		int  coding, capability, mode, rate, multi, user, async, urate, stopbits, dbits, parity;
@@ -267,7 +261,6 @@
   
 	setup=(SETUP_t*)((msg->data+HEADER_LEN)); 
   
-//	cb_log(2, bc->stack->port, " --> oad %s dad %s channel %d\n",bc->oad, bc->dad,bc->channel);
 	if (bc->channel == 0 || bc->channel == ANY_CHANNEL || bc->channel==-1)
 		enc_ie_channel_id(&setup->CHANNEL_ID, msg, 0, bc->channel, nt,bc);
 	else 
@@ -346,7 +339,7 @@
 	CONNECT_t *connect;
 	msg_t *msg =(msg_t*)create_l3msg(CC_CONNECT | REQUEST, MT_CONNECT,  bc?bc->l3_id:-1, sizeof(CONNECT_t) ,nt); 
 	
-	cb_log(0,0,"BUILD_CONNECT: bc:%p bc->l3id:%d, nt:%d\n",bc,bc->l3_id,nt);
+	cb_log(6,bc->port,"BUILD_CONNECT: bc:%p bc->l3id:%d, nt:%d\n",bc,bc->l3_id,nt);
 
 	connect=(CONNECT_t*)((msg->data+HEADER_LEN)); 
 
@@ -765,7 +758,7 @@
 		dec_ie_channel_id(restart->CHANNEL_ID, (Q931_info_t *)restart, &exclusive, &channel, nt,bc);
 		if (channel==0xff) /* any channel */
 			channel=-1;
-		cb_log(0, stack->port, "CC_RESTART Request on channel:%d on this port.\n");
+		cb_log(3, stack->port, "CC_RESTART Request on channel:%d on this port.\n");
 	}
   
  
@@ -822,15 +815,12 @@
 	iframe_t *frm = (iframe_t*) msg->data;
 
 	struct misdn_stack *stack=get_stack_by_bc(bc);
-	
-#ifdef MISDNUSER_JOLLY
 	mISDNuser_head_t *hh;
 	hh=(mISDNuser_head_t*)msg->data;
-#else
-	mISDN_head_t *hh;
-	hh=(mISDN_head_t*)msg->data;
-#endif
-  
+
+	/*hh=(mISDN_head_t*)msg->data;
+	mISDN_head_t *hh;*/
+
 	if (nt) {
 		if (hh->prim == (CC_RELEASE_COMPLETE|CONFIRM)) {
 			cb_log(0, stack->port, "CC_RELEASE_COMPLETE|CONFIRM [NT] \n");

Modified: team/oej/sipdiversion/configs/misdn.conf.sample
URL: http://svn.digium.com/view/asterisk/team/oej/sipdiversion/configs/misdn.conf.sample?rev=9284&r1=9283&r2=9284&view=diff
==============================================================================
--- team/oej/sipdiversion/configs/misdn.conf.sample (original)
+++ team/oej/sipdiversion/configs/misdn.conf.sample Thu Feb  9 08:22:32 2006
@@ -258,7 +258,7 @@
 ;
 ; change this threshold to enable dejitter functionality
 ;
-jitterbuffer_upper_threshold=0
+jitterbuffer_upper_threshold=600
 
 
 [intern]

Modified: team/oej/sipdiversion/dsp.c
URL: http://svn.digium.com/view/asterisk/team/oej/sipdiversion/dsp.c?rev=9284&r1=9283&r2=9284&view=diff
==============================================================================
--- team/oej/sipdiversion/dsp.c (original)
+++ team/oej/sipdiversion/dsp.c Thu Feb  9 08:22:32 2006
@@ -58,34 +58,41 @@
 #include "asterisk/dsp.h"
 #include "asterisk/ulaw.h"
 #include "asterisk/alaw.h"
-
-/* Number of goertzels for progress detect */
-#define GSAMP_SIZE_NA 183			/* North America - 350, 440, 480, 620, 950, 1400, 1800 Hz */
-#define GSAMP_SIZE_CR 188			/* Costa Rica, Brazil - Only care about 425 Hz */
-#define GSAMP_SIZE_UK 160			/* UK disconnect goertzel feed - shoud trigger 400hz */
-
-#define PROG_MODE_NA		0
-#define PROG_MODE_CR		1	
-#define PROG_MODE_UK		2	
-
-/* For US modes */
-#define HZ_350  0
-#define HZ_440  1
-#define HZ_480  2
-#define HZ_620  3
-#define HZ_950  4
-#define HZ_1400 5
-#define HZ_1800 6
-
-/* For CR/BR modes */
-#define HZ_425	0
-
-/* For UK mode */
-#define HZ_400	0
+#include "asterisk/utils.h"
+
+/*! Number of goertzels for progress detect */
+enum gsamp_size {
+	GSAMP_SIZE_NA = 183,			/*!< North America - 350, 440, 480, 620, 950, 1400, 1800 Hz */
+	GSAMP_SIZE_CR = 188,			/*!< Costa Rica, Brazil - Only care about 425 Hz */
+	GSAMP_SIZE_UK = 160 			/*!< UK disconnect goertzel feed - should trigger 400hz */
+};
+
+enum prog_mode {
+	PROG_MODE_NA = 0,
+	PROG_MODE_CR,
+	PROG_MODE_UK
+};
+
+enum freq_index { 
+	/*! For US modes { */
+	HZ_350 = 0,
+	HZ_440,
+	HZ_480,
+	HZ_620,
+	HZ_950,
+	HZ_1400,
+	HZ_1800, /*!< } */
+
+	/*! For CR/BR modes */
+	HZ_425 = 0,
+
+	/*! For UK mode */
+	HZ_400 = 0
+};
 
 static struct progalias {
 	char *name;
-	int mode;
+	enum prog_mode mode;
 } aliases[] = {
 	{ "us", PROG_MODE_NA },
 	{ "ca", PROG_MODE_NA },
@@ -95,39 +102,42 @@
 };
 
 static struct progress {
-	int size;
+	enum gsamp_size size;
 	int freqs[7];
 } modes[] = {
-	{ GSAMP_SIZE_NA, { 350, 440, 480, 620, 950, 1400, 1800 } },	/* North America */
-	{ GSAMP_SIZE_CR, { 425 } },
-	{ GSAMP_SIZE_UK, { 400 } },
+	{ GSAMP_SIZE_NA, { 350, 440, 480, 620, 950, 1400, 1800 } },	/*!< North America */
+	{ GSAMP_SIZE_CR, { 425 } },                                	/*!< Costa Rica, Brazil */
+	{ GSAMP_SIZE_UK, { 400 } },                                	/*!< UK */
 };
 
 #define DEFAULT_THRESHOLD	512
 
-#define BUSY_PERCENT		10	/* The percentage difference between the two last silence periods */
-#define BUSY_PAT_PERCENT	7	/* The percentage difference between measured and actual pattern */
-#define BUSY_THRESHOLD		100	/* Max number of ms difference between max and min times in busy */
-#define BUSY_MIN		75	/* Busy must be at least 80 ms in half-cadence */
-#define BUSY_MAX		3100	/* Busy can't be longer than 3100 ms in half-cadence */
-
-/* Remember last 15 units */
+enum busy_detect {
+	BUSY_PERCENT = 10,   	/*!< The percentage difference between the two last silence periods */
+	BUSY_PAT_PERCENT = 7,	/*!< The percentage difference between measured and actual pattern */
+	BUSY_THRESHOLD = 100,	/*!< Max number of ms difference between max and min times in busy */
+	BUSY_MIN = 75,       	/*!< Busy must be at least 80 ms in half-cadence */
+	BUSY_MAX =3100       	/*!< Busy can't be longer than 3100 ms in half-cadence */
+};
+
+/*! Remember last 15 units */
 #define DSP_HISTORY 		15
 
-/* Define if you want the fax detector -- NOT RECOMMENDED IN -STABLE */
+/*! Define if you want the fax detector -- NOT RECOMMENDED IN -STABLE */
 #define FAX_DETECT
 
-#define TONE_THRESH		10.0	/* How much louder the tone should be than channel energy */
-#define TONE_MIN_THRESH 	1e8	/* How much tone there should be at least to attempt */
-
-					/* All THRESH_XXX values are in GSAMP_SIZE chunks (us = 22ms) */
-#define THRESH_RING		8	/* Need at least 150ms ring to accept */
-#define THRESH_TALK		2	/* Talk detection does not work continously */
-#define THRESH_BUSY		4	/* Need at least 80ms to accept */
-#define THRESH_CONGESTION	4	/* Need at least 80ms to accept */

[... 1223 lines stripped ...]


More information about the asterisk-commits mailing list