[asterisk-commits] may: branch may/chan_ooh323_evo r306969 - in /team/may/chan_ooh323_evo: ./ ap...

SVN commits to the Asterisk project asterisk-commits at lists.digium.com
Tue Feb 8 13:44:20 CST 2011


Author: may
Date: Tue Feb  8 13:44:14 2011
New Revision: 306969

URL: http://svnview.digium.com/svn/asterisk?view=rev&rev=306969
Log:
reinit automerge

Modified:
    team/may/chan_ooh323_evo/   (props changed)
    team/may/chan_ooh323_evo/CHANGES
    team/may/chan_ooh323_evo/apps/app_voicemail.c
    team/may/chan_ooh323_evo/channels/chan_dahdi.c
    team/may/chan_ooh323_evo/channels/chan_sip.c
    team/may/chan_ooh323_evo/channels/sig_pri.c
    team/may/chan_ooh323_evo/channels/sig_pri.h
    team/may/chan_ooh323_evo/doc/asterisk.sgml
    team/may/chan_ooh323_evo/funcs/func_frame_trace.c
    team/may/chan_ooh323_evo/include/asterisk/frame.h
    team/may/chan_ooh323_evo/main/channel.c
    team/may/chan_ooh323_evo/main/features.c

Propchange: team/may/chan_ooh323_evo/
------------------------------------------------------------------------------
    automerge = *

Propchange: team/may/chan_ooh323_evo/
            ('svnmerge-integrated' removed)

Modified: team/may/chan_ooh323_evo/CHANGES
URL: http://svnview.digium.com/svn/asterisk/team/may/chan_ooh323_evo/CHANGES?view=diff&rev=306969&r1=306968&r2=306969
==============================================================================
--- team/may/chan_ooh323_evo/CHANGES (original)
+++ team/may/chan_ooh323_evo/CHANGES Tue Feb  8 13:44:14 2011
@@ -52,6 +52,7 @@
  * Added display_send and display_receive options to control how the display ie
    is handled.  To send display text from the dialplan use the SendText()
    application when the option is enabled.
+ * Added mcid_send option to allow sending a MCID request on a span.
 
 ------------------------------------------------------------------------------
 --- Functionality changes from Asterisk 1.6.2 to Asterisk 1.8 ----------------

Modified: team/may/chan_ooh323_evo/apps/app_voicemail.c
URL: http://svnview.digium.com/svn/asterisk/team/may/chan_ooh323_evo/apps/app_voicemail.c?view=diff&rev=306969&r1=306968&r2=306969
==============================================================================
--- team/may/chan_ooh323_evo/apps/app_voicemail.c (original)
+++ team/may/chan_ooh323_evo/apps/app_voicemail.c Tue Feb  8 13:44:14 2011
@@ -3916,7 +3916,7 @@
 	DIR *msgdir;
 	struct dirent *msgdirent;
 	int msgdirint;
-	char extension[3];
+	char extension[4];
 	int stopcount = 0;
 
 	/* Reading the entire directory into a file map scales better than
@@ -3928,7 +3928,7 @@
 	}
 
 	while ((msgdirent = readdir(msgdir))) {
-		if (sscanf(msgdirent->d_name, "msg%30d.%3s", &msgdirint, extension) == 2 && msgdirint < MAXMSGLIMIT && !strcmp(extension, "txt")) {
+		if (!strcmp(extension, "txt") && msgdirint < MAXMSGLIMIT && sscanf(msgdirent->d_name, "msg%10d.%3s", &msgdirint, extension) == 2) {
 			map[msgdirint] = 1;
 			stopcount++;
 			ast_debug(4, "%s map[%d] = %d, count = %d\n", dir, msgdirint, map[msgdirint], stopcount);
@@ -6767,14 +6767,16 @@
 			}
 			
 			/* Back up the original file, so we can retry the prepend and restore it after forward. */
+#ifndef IMAP_STORAGE
 			if (already_recorded) {
 				ast_filecopy(backup, msgfile, NULL);
 				copy(backup_textfile, textfile);
 			}
 			else {
 				ast_filecopy(msgfile, backup, NULL);
-				copy(textfile,backup_textfile);
-			}
+				copy(textfile, backup_textfile);
+			}
+#endif
 			already_recorded = 1;
 
 			if (record_gain)

Modified: team/may/chan_ooh323_evo/channels/chan_dahdi.c
URL: http://svnview.digium.com/svn/asterisk/team/may/chan_ooh323_evo/channels/chan_dahdi.c?view=diff&rev=306969&r1=306968&r2=306969
==============================================================================
--- team/may/chan_ooh323_evo/channels/chan_dahdi.c (original)
+++ team/may/chan_ooh323_evo/channels/chan_dahdi.c Tue Feb  8 13:44:14 2011
@@ -12353,6 +12353,9 @@
 						pris[span].pri.display_flags_send = conf->pri.pri.display_flags_send;
 						pris[span].pri.display_flags_receive = conf->pri.pri.display_flags_receive;
 #endif	/* defined(HAVE_PRI_DISPLAY_TEXT) */
+#if defined(HAVE_PRI_MCID)
+						pris[span].pri.mcid_send = conf->pri.pri.mcid_send;
+#endif	/* defined(HAVE_PRI_MCID) */
 
 						for (x = 0; x < PRI_MAX_TIMERS; x++) {
 							pris[span].pri.pritimers[x] = conf->pri.pri.pritimers[x];
@@ -17307,6 +17310,10 @@
 			} else if (!strcasecmp(v->name, "display_receive")) {
 				confp->pri.pri.display_flags_receive = dahdi_display_text_option(v->value);
 #endif	/* defined(HAVE_PRI_DISPLAY_TEXT) */
+#if defined(HAVE_PRI_MCID)
+			} else if (!strcasecmp(v->name, "mcid_send")) {
+				confp->pri.pri.mcid_send = ast_true(v->value);
+#endif	/* defined(HAVE_PRI_MCID) */
 #endif /* HAVE_PRI */
 #if defined(HAVE_SS7)
 			} else if (!strcasecmp(v->name, "ss7type")) {

Modified: team/may/chan_ooh323_evo/channels/chan_sip.c
URL: http://svnview.digium.com/svn/asterisk/team/may/chan_ooh323_evo/channels/chan_sip.c?view=diff&rev=306969&r1=306968&r2=306969
==============================================================================
--- team/may/chan_ooh323_evo/channels/chan_sip.c (original)
+++ team/may/chan_ooh323_evo/channels/chan_sip.c Tue Feb  8 13:44:14 2011
@@ -14959,6 +14959,14 @@
 			ast_copy_string(referdata->replaces_callid_fromtag, ptr, sizeof(referdata->replaces_callid_fromtag));
 		}
 
+		if (!strcmp(referdata->replaces_callid, transferer->callid) &&
+			(!sip_cfg.pedanticsipchecking ||
+			(!strcmp(referdata->replaces_callid_fromtag, transferer->tag) &&
+			!strcmp(referdata->replaces_callid_totag, transferer->theirtag)))) {
+				ast_log(LOG_WARNING, "Got an attempt to replace own Call-ID on %s\n", transferer->callid);
+				return -4;
+		}
+
 		if (!sip_cfg.pedanticsipchecking) {
 			ast_debug(2, "Attended transfer: Will use Replace-Call-ID : %s (No check of from/to tags)\n", referdata->replaces_callid );
 		} else {

Modified: team/may/chan_ooh323_evo/channels/sig_pri.c
URL: http://svnview.digium.com/svn/asterisk/team/may/chan_ooh323_evo/channels/sig_pri.c?view=diff&rev=306969&r1=306968&r2=306969
==============================================================================
--- team/may/chan_ooh323_evo/channels/sig_pri.c (original)
+++ team/may/chan_ooh323_evo/channels/sig_pri.c Tue Feb  8 13:44:14 2011
@@ -1917,7 +1917,12 @@
 	}
 
 	if (owner) {
-		/* The owner channel is present. */
+		/*
+		 * The owner channel is present.
+		 * Pass the event to the peer as well.
+		 */
+		ast_queue_control(owner, AST_CONTROL_MCID);
+
 		ast_str_append(&msg, 0, "Channel: %s\r\n", owner->name);
 		ast_str_append(&msg, 0, "UniqueID: %s\r\n", owner->uniqueid);
 
@@ -7687,6 +7692,15 @@
 		}
 #endif	/* defined(HAVE_PRI_AOC_EVENTS) */
 		break;
+#if defined(HAVE_PRI_MCID)
+	case AST_CONTROL_MCID:
+		if (p->pri && p->pri->pri && p->pri->mcid_send) {
+			pri_grab(p, p->pri);
+			pri_mcid_req_send(p->pri->pri, p->call);
+			pri_rel(p->pri);
+		}
+		break;
+#endif	/* defined(HAVE_PRI_MCID) */
 	}
 
 	return res;

Modified: team/may/chan_ooh323_evo/channels/sig_pri.h
URL: http://svnview.digium.com/svn/asterisk/team/may/chan_ooh323_evo/channels/sig_pri.h?view=diff&rev=306969&r1=306968&r2=306969
==============================================================================
--- team/may/chan_ooh323_evo/channels/sig_pri.h (original)
+++ team/may/chan_ooh323_evo/channels/sig_pri.h Tue Feb  8 13:44:14 2011
@@ -402,6 +402,10 @@
 	 * appended to the initial_user_tag[].
 	 */
 	unsigned int append_msn_to_user_tag:1;
+#if defined(HAVE_PRI_MCID)
+	/*! \brief TRUE if allow sending MCID request on this span. */
+	unsigned int mcid_send:1;
+#endif	/* defined(HAVE_PRI_MCID) */
 	int dialplan;							/*!< Dialing plan */
 	int localdialplan;						/*!< Local dialing plan */
 	int cpndialplan;						/*!< Connected party dialing plan */

Modified: team/may/chan_ooh323_evo/doc/asterisk.sgml
URL: http://svnview.digium.com/svn/asterisk/team/may/chan_ooh323_evo/doc/asterisk.sgml?view=diff&rev=306969&r1=306968&r2=306969
==============================================================================
--- team/may/chan_ooh323_evo/doc/asterisk.sgml (original)
+++ team/may/chan_ooh323_evo/doc/asterisk.sgml Tue Feb  8 13:44:14 2011
@@ -1,13 +1,13 @@
 <refentry>
 <refentryinfo>
-	<date>2010-08-03</date>
+	<date>2011-02-08</date>
 </refentryinfo>
 <refmeta>
 	<refentrytitle>
 		<application>asterisk</application>
 	</refentrytitle>
 	<manvolnum>8</manvolnum>
-	<refmiscinfo>asterisk 1.6</refmiscinfo>
+	<refmiscinfo>asterisk Trunk</refmiscinfo>
 </refmeta>
 <refnamediv>
 	<refname>
@@ -39,7 +39,7 @@
 </refsynopsisdiv>
 <refsect1>
 	<refsect1info>
-		<date>2010-08-03</date>
+		<date>2011-02-08</date>
 	</refsect1info>
 	<title>DESCRIPTION</title>
 	<para>
@@ -412,7 +412,7 @@
 	http://www.asteriskdocs.org - The Asterisk Documentation Project
 	</para>
 	<para>
-	http://www.voip-info.org/wiki-Asterisk - The Asterisk Wiki
+	http://wiki.asterisk.org - The Asterisk Wiki
 	</para>
 	<para>
 	http://www.digium.com/ - Asterisk sponsor and hardware supplier

Modified: team/may/chan_ooh323_evo/funcs/func_frame_trace.c
URL: http://svnview.digium.com/svn/asterisk/team/may/chan_ooh323_evo/funcs/func_frame_trace.c?view=diff&rev=306969&r1=306968&r2=306969
==============================================================================
--- team/may/chan_ooh323_evo/funcs/func_frame_trace.c (original)
+++ team/may/chan_ooh323_evo/funcs/func_frame_trace.c Tue Feb  8 13:44:14 2011
@@ -308,6 +308,9 @@
 		case AST_CONTROL_AOC:
 			ast_verbose("SubClass: AOC\n");
 			break;
+		case AST_CONTROL_MCID:
+			ast_verbose("SubClass: MCID\n");
+			break;
 		}
 		if (frame->subclass.integer == -1) {
 			ast_verbose("SubClass: %d\n", frame->subclass.integer);

Modified: team/may/chan_ooh323_evo/include/asterisk/frame.h
URL: http://svnview.digium.com/svn/asterisk/team/may/chan_ooh323_evo/include/asterisk/frame.h?view=diff&rev=306969&r1=306968&r2=306969
==============================================================================
--- team/may/chan_ooh323_evo/include/asterisk/frame.h (original)
+++ team/may/chan_ooh323_evo/include/asterisk/frame.h Tue Feb  8 13:44:14 2011
@@ -339,6 +339,7 @@
 	AST_CONTROL_READ_ACTION = 27, /*!< Tell ast_read to take a specific action */
 	AST_CONTROL_AOC = 28,           /*!< Advice of Charge with encoded generic AOC payload */
 	AST_CONTROL_END_OF_Q = 29,		/*!< Indicate that this position was the end of the channel queue for a softhangup. */
+	AST_CONTROL_MCID = 30,			/*!< Indicate that the caller is being malicious. */
 };
 
 enum ast_frame_read_action {

Modified: team/may/chan_ooh323_evo/main/channel.c
URL: http://svnview.digium.com/svn/asterisk/team/may/chan_ooh323_evo/main/channel.c?view=diff&rev=306969&r1=306968&r2=306969
==============================================================================
--- team/may/chan_ooh323_evo/main/channel.c (original)
+++ team/may/chan_ooh323_evo/main/channel.c Tue Feb  8 13:44:14 2011
@@ -4216,6 +4216,7 @@
 	case AST_CONTROL_READ_ACTION:
 	case AST_CONTROL_AOC:
 	case AST_CONTROL_END_OF_Q:
+	case AST_CONTROL_MCID:
 		break;
 
 	case AST_CONTROL_CONGESTION:
@@ -4399,6 +4400,7 @@
 	case AST_CONTROL_READ_ACTION:
 	case AST_CONTROL_AOC:
 	case AST_CONTROL_END_OF_Q:
+	case AST_CONTROL_MCID:
 		/* Nothing left to do for these. */
 		res = 0;
 		break;
@@ -6865,6 +6867,7 @@
 
 			switch (f->subclass.integer) {
 			case AST_CONTROL_AOC:
+			case AST_CONTROL_MCID:
 				ast_indicate_data(other, f->subclass.integer, f->data.ptr, f->datalen);
 				break;
 			case AST_CONTROL_REDIRECTING:

Modified: team/may/chan_ooh323_evo/main/features.c
URL: http://svnview.digium.com/svn/asterisk/team/may/chan_ooh323_evo/main/features.c?view=diff&rev=306969&r1=306968&r2=306969
==============================================================================
--- team/may/chan_ooh323_evo/main/features.c (original)
+++ team/may/chan_ooh323_evo/main/features.c Tue Feb  8 13:44:14 2011
@@ -3650,6 +3650,7 @@
 			switch (f->subclass.integer) {
 			case AST_CONTROL_RINGING:
 			case AST_CONTROL_FLASH:
+			case AST_CONTROL_MCID:
 			case -1:
 				ast_indicate(other, f->subclass.integer);
 				break;
@@ -5574,7 +5575,8 @@
 		   change while we're here, but that isn't a problem. */
 		(c != chan) &&
 		(chan->pickupgroup & c->callgroup) &&
-		((chan->_state == AST_STATE_RINGING) || (chan->_state == AST_STATE_RING));
+		((chan->_state == AST_STATE_RINGING) || (chan->_state == AST_STATE_RING)) &&
+		!c->masq;
 
 	return i ? CMP_MATCH | CMP_STOP : 0;
 }




More information about the asterisk-commits mailing list