[asterisk-commits] seanbright: branch group/asterisk-cpp r168560 - in /team/group/asterisk-cpp: ...

SVN commits to the Asterisk project asterisk-commits at lists.digium.com
Tue Jan 13 13:07:12 CST 2009


Author: seanbright
Date: Tue Jan 13 13:07:12 2009
New Revision: 168560

URL: http://svn.digium.com/svn-view/asterisk?view=rev&rev=168560
Log:
Merged revisions 168479,168481,168485,168497,168508,168517,168522-168523,168526,168539,168547 via svnmerge from 
https://origsvn.digium.com/svn/asterisk/trunk

................
  r168479 | oej | 2009-01-12 09:35:09 -0500 (Mon, 12 Jan 2009) | 2 lines
  
  Don't include swap.h unless we have swapctl
................
  r168481 | russell | 2009-01-12 09:57:49 -0500 (Mon, 12 Jan 2009) | 10 lines
  
  Merged revisions 168480 via svnmerge from 
  https://origsvn.digium.com/svn/asterisk/branches/1.4
  
  ........
  r168480 | russell | 2009-01-12 08:57:27 -0600 (Mon, 12 Jan 2009) | 2 lines
  
  s/ringdance/ringcadence/ for Bulgaria
  
  ........
................
  r168485 | mmichelson | 2009-01-12 10:00:00 -0500 (Mon, 12 Jan 2009) | 13 lines
  
  Merged revisions 168482 via svnmerge from 
  https://origsvn.digium.com/svn/asterisk/branches/1.4
  
  ........
  r168482 | mmichelson | 2009-01-12 08:58:25 -0600 (Mon, 12 Jan 2009) | 5 lines
  
  I am reverting the fix made in revision 168128 (and its upward merges)
  after being contacted by Olle Johansson and being shown how this fix is
  incorrect. Thanks to Olle for clearing this up for me.
  
  
  ........
................
  r168497 | oej | 2009-01-12 11:31:27 -0500 (Mon, 12 Jan 2009) | 2 lines
  
  Better to use the proper app name
................
  r168508 | jpeeler | 2009-01-12 15:53:04 -0500 (Mon, 12 Jan 2009) | 15 lines
  
  Merged revisions 168507 via svnmerge from 
  https://origsvn.digium.com/svn/asterisk/branches/1.4
  
  ........
    r168507 | jpeeler | 2009-01-12 14:26:22 -0600 (Mon, 12 Jan 2009) | 9 lines
    
    (closes issue #12269)
    Reported by: IgorG
    Tested by: denisgalvao
    
    This gits rid of the notion of an owning_app allowing the request and hangup to be initiated by different threads. Originating from an active agent channel requires this. The implementation primarily changes __login_exec to wait on a condition variable rather than a lock.
    
    Review: http://reviewboard.digium.com/r/35/
  ........
................
  r168517 | jpeeler | 2009-01-12 16:51:46 -0500 (Mon, 12 Jan 2009) | 12 lines
  
  Merged revisions 168516 via svnmerge from 
  https://origsvn.digium.com/svn/asterisk/branches/1.4
  
  ........
    r168516 | jpeeler | 2009-01-12 15:42:34 -0600 (Mon, 12 Jan 2009) | 5 lines
    
    (closes issue #13881)
    Reported by: hoowa
    
    Update the app CDR field for AGI commands that are not executing an application via "exec".
  ........
................
  r168522 | tilghman | 2009-01-12 18:06:12 -0500 (Mon, 12 Jan 2009) | 3 lines
  
  Some platforms (notably, the BSDs) have a more efficient implementation called
  closefrom(3).
................
  r168523 | mmichelson | 2009-01-12 18:12:30 -0500 (Mon, 12 Jan 2009) | 11 lines
  
  bump the verbosity of a message in srv.c up by one. It used to be
  at this level prior to a large patch merge which converted ast_verbose
  calls to ast_verb
  
  (closes issue #14221)
  Reported by: jcovert
  Patches:
        srv.c.patch uploaded by jcovert (license 551)
................
  r168526 | tilghman | 2009-01-12 18:45:51 -0500 (Mon, 12 Jan 2009) | 12 lines
  
  Merged revisions 167095 via svnmerge from 
  https://origsvn.digium.com/svn/asterisk/branches/1.4
  
  ........
    r167095 | tilghman | 2008-12-31 18:01:22 -0600 (Wed, 31 Dec 2008) | 5 lines
    
    Repeat attempts to write when we receive -EAGAIN from the driver, as detailed
    in the ALSA sample code (see http://www.alsa-project.org/alsa-doc/alsa-lib/_2test_2pcm_8c-example.html#a32)
    Reported by: Jerry Geis (via the -users list)
    Fixed by: me (license 14)
  ........
................
  r168539 | dhubbard | 2009-01-13 11:02:13 -0500 (Tue, 13 Jan 2009) | 1 line
  
  correct a CLI description
................
  r168547 | tilghman | 2009-01-13 12:51:12 -0500 (Tue, 13 Jan 2009) | 13 lines
  
  Merged revisions 168546 via svnmerge from 
  https://origsvn.digium.com/svn/asterisk/branches/1.4
  
  ........
    r168546 | tilghman | 2009-01-13 11:48:00 -0600 (Tue, 13 Jan 2009) | 6 lines
    
    If either conditional is NULL, don't try copying it.
    (closes issue #14226)
     Reported by: caspy
     Patches: 
           20090113__bug14226.diff.txt uploaded by Corydon76 (license 14)
  ........
................

Modified:
    team/group/asterisk-cpp/   (props changed)
    team/group/asterisk-cpp/apps/app_minivm.c
    team/group/asterisk-cpp/channels/chan_agent.c
    team/group/asterisk-cpp/channels/chan_alsa.c
    team/group/asterisk-cpp/channels/chan_sip.c
    team/group/asterisk-cpp/configs/indications.conf.sample
    team/group/asterisk-cpp/configure
    team/group/asterisk-cpp/configure.ac
    team/group/asterisk-cpp/funcs/func_logic.c
    team/group/asterisk-cpp/include/asterisk/autoconfig.h.in
    team/group/asterisk-cpp/main/app.c
    team/group/asterisk-cpp/main/asterisk.c
    team/group/asterisk-cpp/main/srv.c
    team/group/asterisk-cpp/main/taskprocessor.c
    team/group/asterisk-cpp/res/res_agi.c

Propchange: team/group/asterisk-cpp/
------------------------------------------------------------------------------
Binary property 'branch-1.4-merged' - no diff available.

Propchange: team/group/asterisk-cpp/
------------------------------------------------------------------------------
--- svnmerge-integrated (original)
+++ svnmerge-integrated Tue Jan 13 13:07:12 2009
@@ -1,1 +1,1 @@
-/trunk:1-168342
+/trunk:1-168559

Modified: team/group/asterisk-cpp/apps/app_minivm.c
URL: http://svn.digium.com/svn-view/asterisk/team/group/asterisk-cpp/apps/app_minivm.c?view=diff&rev=168560&r1=168559&r2=168560
==============================================================================
--- team/group/asterisk-cpp/apps/app_minivm.c (original)
+++ team/group/asterisk-cpp/apps/app_minivm.c Tue Jan 13 13:07:12 2009
@@ -2261,7 +2261,7 @@
 	if(!(vmu = find_account(domain, username, TRUE))) {
 		/* We could not find user, let's exit */
 		ast_log(LOG_WARNING, "Could not allocate temporary memory for '%s@%s'\n", username, domain);
-		pbx_builtin_setvar_helper(chan, "MVM_NOTIFY_STATUS", "FAILED");
+		pbx_builtin_setvar_helper(chan, "MVM_ACCMESS_STATUS", "FAILED");
 		return -1;
 	}
 
@@ -2292,7 +2292,7 @@
 	if(ast_test_flag(vmu, MVM_ALLOCED))
 		free_user(vmu);
 
-	pbx_builtin_setvar_helper(chan, "MVM_NOTIFY_STATUS", "SUCCESS");
+	pbx_builtin_setvar_helper(chan, "MVM_ACCMESS_STATUS", "SUCCESS");
 
 	/* Ok, we're ready to rock and roll. Return to dialplan */
 	return 0;

Modified: team/group/asterisk-cpp/channels/chan_agent.c
URL: http://svn.digium.com/svn-view/asterisk/team/group/asterisk-cpp/channels/chan_agent.c?view=diff&rev=168560&r1=168559&r2=168560
==============================================================================
--- team/group/asterisk-cpp/channels/chan_agent.c (original)
+++ team/group/asterisk-cpp/channels/chan_agent.c Tue Jan 13 13:07:12 2009
@@ -256,7 +256,8 @@
 	char name[AST_MAX_AGENT];
 	int inherited_devicestate;     /*!< Does the underlying channel have a devicestate to pass? */
 	ast_mutex_t app_lock;          /**< Synchronization between owning applications */
-	volatile pthread_t owning_app; /**< Owning application thread id */
+	int app_lock_flag;
+	ast_cond_t app_complete_cond;
 	volatile int app_sleep_cond;   /**< Sleep condition for the login app */
 	struct ast_channel *owner;     /**< Agent */
 	char loginchan[80];            /**< channel they logged in from */
@@ -451,7 +452,8 @@
 		ast_copy_string(p->agent, agt, sizeof(p->agent));
 		ast_mutex_init(&p->lock);
 		ast_mutex_init(&p->app_lock);
-		p->owning_app = (pthread_t) -1;
+		ast_cond_init(&p->app_complete_cond, NULL);
+		p->app_lock_flag = 0;
 		p->app_sleep_cond = 1;
 		p->group = group;
 		p->pending = pending;
@@ -509,12 +511,14 @@
 	chan->tech_pvt = NULL;
 	p->app_sleep_cond = 1;
 	/* Release ownership of the agent to other threads (presumably running the login app). */
-	ast_mutex_unlock(&p->app_lock);
+	p->app_lock_flag = 0;
+	ast_cond_signal(&p->app_complete_cond);
 	if (chan)
 		ast_channel_free(chan);
 	if (p->dead) {
 		ast_mutex_destroy(&p->lock);
 		ast_mutex_destroy(&p->app_lock);
+		ast_cond_destroy(&p->app_complete_cond);
 		ast_free(p);
         }
 	return 0;
@@ -1001,6 +1005,7 @@
 	} else if (p->dead) {
 		ast_mutex_destroy(&p->lock);
 		ast_mutex_destroy(&p->app_lock);
+		ast_cond_destroy(&p->app_complete_cond);
 		ast_free(p);
 	} else {
 		if (p->chan) {
@@ -1011,8 +1016,10 @@
 			ast_mutex_unlock(&p->lock);
 		}
 		/* Release ownership of the agent to other threads (presumably running the login app). */
-		if (ast_strlen_zero(p->loginchan))
-			ast_mutex_unlock(&p->app_lock);
+		if (ast_strlen_zero(p->loginchan)) {
+			p->app_lock_flag = 0;
+			ast_cond_signal(&p->app_complete_cond);
+		}
 	}
 	return 0;
 }
@@ -1099,6 +1106,7 @@
 static struct ast_channel *agent_new(struct agent_pvt *p, int state)
 {
 	struct ast_channel *tmp;
+	int alreadylocked;
 #if 0
 	if (!p->chan) {
 		ast_log(LOG_WARNING, "No channel? :(\n");
@@ -1144,11 +1152,15 @@
 	 * implemented in the kernel for this.
 	 */
 	p->app_sleep_cond = 0;
-	if(ast_strlen_zero(p->loginchan) && ast_mutex_trylock(&p->app_lock)) {
+
+	alreadylocked = p->app_lock_flag;
+	p->app_lock_flag = 1;
+
+	if(ast_strlen_zero(p->loginchan) && alreadylocked) {
 		if (p->chan) {
 			ast_queue_frame(p->chan, &ast_null_frame);
 			ast_mutex_unlock(&p->lock);	/* For other thread to read the condition. */
-			ast_mutex_lock(&p->app_lock);
+			p->app_lock_flag = 1;
 			ast_mutex_lock(&p->lock);
 		} else {
 			ast_log(LOG_WARNING, "Agent disconnected while we were connecting the call\n");
@@ -1157,7 +1169,8 @@
 			p->app_sleep_cond = 1;
 			ast_channel_free( tmp );
 			ast_mutex_unlock(&p->lock);	/* For other thread to read the condition. */
-			ast_mutex_unlock(&p->app_lock);
+			p->app_lock_flag = 0;
+			ast_cond_signal(&p->app_complete_cond);
 			return NULL;
 		}
 	} else if (!ast_strlen_zero(p->loginchan)) {
@@ -1175,14 +1188,6 @@
 	} 
 	if (p->chan)
 		ast_indicate(p->chan, AST_CONTROL_UNHOLD);
-	p->owning_app = pthread_self();
-	/* After the above step, there should not be any blockers. */
-	if (p->chan) {
-		if (ast_test_flag(p->chan, AST_FLAG_BLOCKING)) {
-			ast_log( LOG_ERROR, "A blocker exists after agent channel ownership acquired\n" );
-			ast_assert(ast_test_flag(p->chan, AST_FLAG_BLOCKING) == 0);
-		}
-	}
 	return tmp;
 }
 
@@ -1347,6 +1352,7 @@
 				if (!p->chan) {
 					ast_mutex_destroy(&p->lock);
 					ast_mutex_destroy(&p->app_lock);
+					ast_cond_destroy(&p->app_complete_cond);
 					ast_free(p);
 				} else {
 					/* Cause them to hang up */
@@ -2233,15 +2239,17 @@
 							ast_mutex_unlock(&p->lock);
 							AST_LIST_UNLOCK(&agents);
 							/*	Synchronize channel ownership between call to agent and itself. */
-							ast_mutex_lock( &p->app_lock );
+							ast_mutex_lock(&p->app_lock);
+							if (p->app_lock_flag == 1) {
+								ast_cond_wait(&p->app_complete_cond, &p->app_lock);
+							}
+							ast_mutex_unlock(&p->app_lock);
 							ast_mutex_lock(&p->lock);
-							p->owning_app = pthread_self();
 							ast_mutex_unlock(&p->lock);
 							if (p->ackcall > 1) 
 								res = agent_ack_sleep(p);
 							else
 								res = ast_safe_sleep_conditional( chan, 1000, agent_cont_sleep, p );
-							ast_mutex_unlock( &p->app_lock );
 							if ((p->ackcall > 1)  && (res == 1)) {
 								AST_LIST_LOCK(&agents);
 								ast_mutex_lock(&p->lock);
@@ -2276,6 +2284,7 @@
 						if (p->dead && !p->owner) {
 							ast_mutex_destroy(&p->lock);
 							ast_mutex_destroy(&p->app_lock);
+							ast_cond_destroy(&p->app_complete_cond);
 							ast_free(p);
 						}
 					}

Modified: team/group/asterisk-cpp/channels/chan_alsa.c
URL: http://svn.digium.com/svn-view/asterisk/team/group/asterisk-cpp/channels/chan_alsa.c?view=diff&rev=168560&r1=168559&r2=168560
==============================================================================
--- team/group/asterisk-cpp/channels/chan_alsa.c (original)
+++ team/group/asterisk-cpp/channels/chan_alsa.c Tue Jan 13 13:07:12 2009
@@ -381,13 +381,17 @@
 		state = snd_pcm_state(alsa.ocard);
 		if (state == SND_PCM_STATE_XRUN)
 			snd_pcm_prepare(alsa.ocard);
-		res = snd_pcm_writei(alsa.ocard, sizbuf, len / 2);
+		while ((res = snd_pcm_writei(alsa.ocard, sizbuf, len / 2)) == -EAGAIN) {
+			usleep(1);
+		}
 		if (res == -EPIPE) {
 #if DEBUG
 			ast_debug(1, "XRUN write\n");
 #endif
 			snd_pcm_prepare(alsa.ocard);
-			res = snd_pcm_writei(alsa.ocard, sizbuf, len / 2);
+			while ((res = snd_pcm_writei(alsa.ocard, sizbuf, len / 2)) == -EAGAIN) {
+				usleep(1);
+			}
 			if (res != len / 2) {
 				ast_log(LOG_ERROR, "Write error: %s\n", snd_strerror(res));
 				res = -1;

Modified: team/group/asterisk-cpp/channels/chan_sip.c
URL: http://svn.digium.com/svn-view/asterisk/team/group/asterisk-cpp/channels/chan_sip.c?view=diff&rev=168560&r1=168559&r2=168560
==============================================================================
--- team/group/asterisk-cpp/channels/chan_sip.c (original)
+++ team/group/asterisk-cpp/channels/chan_sip.c Tue Jan 13 13:07:12 2009
@@ -15150,7 +15150,6 @@
 	unsigned int event;
 	const char *c = get_header(req, "Content-Type");
 
-	check_via(p, req);
 	/* Need to check the media/type */
 	if (!strcasecmp(c, "application/dtmf-relay") ||
 	    !strcasecmp(c, "application/vnd.nortelnetworks.digits")) {
@@ -17530,7 +17529,6 @@
 	char *eventid = NULL;
 	char *sep;
 
-	check_via(p, req);
 	if( (sep = strchr(event, ';')) ) {	/* XXX bug here - overwriting string ? */
 		*sep++ = '\0';
 		eventid = sep;
@@ -17690,7 +17688,6 @@
 			(this needs to be fixed in 1.4 as well)
 	*/
 
-	check_via(p, req);
 	if (p->lastinvite) {
 		/* if this is a request in an active dialog, just confirm that the dialog exists. */
 		transmit_response_with_allow(p, "200 OK", req, 0);
@@ -19067,7 +19064,6 @@
 
 	int res = 0;
 
-	check_via(p, req);
 	if (req->debug)
 		ast_verbose("Call %s got a SIP call transfer from %s: (REFER)!\n", p->callid, ast_test_flag(&p->flags[0], SIP_OUTGOING) ? "callee" : "caller");
 
@@ -19607,7 +19603,6 @@
 static int handle_request_message(struct sip_pvt *p, struct sip_request *req)
 {
 	if (!req->ignore) {
-		check_via(p, req);
 		if (req->debug)
 			ast_verbose("Receiving message!\n");
 		receive_message(p, req);

Modified: team/group/asterisk-cpp/configs/indications.conf.sample
URL: http://svn.digium.com/svn-view/asterisk/team/group/asterisk-cpp/configs/indications.conf.sample?view=diff&rev=168560&r1=168559&r2=168560
==============================================================================
--- team/group/asterisk-cpp/configs/indications.conf.sample (original)
+++ team/group/asterisk-cpp/configs/indications.conf.sample Tue Jan 13 13:07:12 2009
@@ -117,7 +117,7 @@
 [bg]
 ; Reference: http://www.itu.int/ITU-T/inr/forms/files/tones-0203.pdf
 description = Bulgaria
-ringdance = 1000,4000
+ringcadence = 1000,4000
 ;
 dial = 425
 busy = 425/500,0/500

Modified: team/group/asterisk-cpp/configure.ac
URL: http://svn.digium.com/svn-view/asterisk/team/group/asterisk-cpp/configure.ac?view=diff&rev=168560&r1=168559&r2=168560
==============================================================================
--- team/group/asterisk-cpp/configure.ac (original)
+++ team/group/asterisk-cpp/configure.ac Tue Jan 13 13:07:12 2009
@@ -337,7 +337,7 @@
 AC_FUNC_STRTOD
 AC_FUNC_UTIME_NULL
 AC_FUNC_VPRINTF
-AC_CHECK_FUNCS([asprintf atexit dup2 endpwent ftruncate getcwd gethostbyname gethostname getloadavg gettimeofday ioperm inet_ntoa isascii localtime_r memchr memmove memset mkdir munmap putenv re_comp regcomp select setenv socket strcasecmp strcasestr strchr strcspn strdup strerror strlcat strlcpy strncasecmp strndup strnlen strrchr strsep strspn strstr strtol strtoq unsetenv utime vasprintf getpeereid sysctl swapctl])
+AC_CHECK_FUNCS([asprintf atexit closefrom dup2 endpwent ftruncate getcwd gethostbyname gethostname getloadavg gettimeofday ioperm inet_ntoa isascii localtime_r memchr memmove memset mkdir munmap putenv re_comp regcomp select setenv socket strcasecmp strcasestr strchr strcspn strdup strerror strlcat strlcpy strncasecmp strndup strnlen strrchr strsep strspn strstr strtol strtoq unsetenv utime vasprintf getpeereid sysctl swapctl])
 
 AC_CHECK_FUNCS([glob])
 

Modified: team/group/asterisk-cpp/funcs/func_logic.c
URL: http://svn.digium.com/svn-view/asterisk/team/group/asterisk-cpp/funcs/func_logic.c?view=diff&rev=168560&r1=168559&r2=168560
==============================================================================
--- team/group/asterisk-cpp/funcs/func_logic.c (original)
+++ team/group/asterisk-cpp/funcs/func_logic.c Tue Jan 13 13:07:12 2009
@@ -157,7 +157,7 @@
 	if (iffalse)
 		iffalse = ast_strip_quoted(iffalse, "\"", "\"");
 
-	ast_copy_string(buf, ast_check_timing(&timing) ? iftrue : iffalse, len);
+	ast_copy_string(buf, ast_check_timing(&timing) ? S_OR(iftrue, "") : S_OR(iffalse, ""), len);
 	ast_destroy_timing(&timing);
 
 	return 0;

Modified: team/group/asterisk-cpp/include/asterisk/autoconfig.h.in
URL: http://svn.digium.com/svn-view/asterisk/team/group/asterisk-cpp/include/asterisk/autoconfig.h.in?view=diff&rev=168560&r1=168559&r2=168560
==============================================================================
--- team/group/asterisk-cpp/include/asterisk/autoconfig.h.in (original)
+++ team/group/asterisk-cpp/include/asterisk/autoconfig.h.in Tue Jan 13 13:07:12 2009
@@ -155,6 +155,9 @@
 
 /* Define to 1 if your system has a working `chown' function. */
 #undef HAVE_CHOWN
+
+/* Define to 1 if you have the `closefrom' function. */
+#undef HAVE_CLOSEFROM
 
 /* Define this to indicate the ${COS_DESCRIP} library */
 #undef HAVE_COS

Modified: team/group/asterisk-cpp/main/app.c
URL: http://svn.digium.com/svn-view/asterisk/team/group/asterisk-cpp/main/app.c?view=diff&rev=168560&r1=168559&r2=168560
==============================================================================
--- team/group/asterisk-cpp/main/app.c (original)
+++ team/group/asterisk-cpp/main/app.c Tue Jan 13 13:07:12 2009
@@ -33,6 +33,9 @@
 #include <regex.h>
 #include <sys/file.h> /* added this to allow to compile, sorry! */
 #include <signal.h>
+#include <sys/time.h>       /* for getrlimit(2) */
+#include <sys/resource.h>   /* for getrlimit(2) */
+#include <stdlib.h>         /* for closefrom(3) */
 
 #include "asterisk/paths.h"	/* use ast_config_AST_DATA_DIR */
 #include "asterisk/channel.h"
@@ -1857,18 +1860,24 @@
 
 void ast_close_fds_above_n(int n)
 {
-	int x, null;
+#ifdef HAVE_CLOSEFROM
+	closefrom(n + 1);
+#else
+	rlim_t null;
+	struct rlimit rl;
+	getrlimit(RLIMIT_NOFILE, &rl);
 	null = open("/dev/null", O_RDONLY);
-	for (x = n + 1; x <= (null >= 8192 ? null : 8192); x++) {
+	for (rlim_t x = n + 1; x < rl.rlim_max; x++) {
 		if (x != null) {
 			/* Side effect of dup2 is that it closes any existing fd without error.
 			 * This prevents valgrind and other debugging tools from sending up
 			 * false error reports. */
-			dup2(null, x);
+			while (dup2(null, x) < 0 && errno == EINTR);
 			close(x);
 		}
 	}
 	close(null);
+#endif
 }
 
 int ast_safe_fork(int stop_reaper)

Modified: team/group/asterisk-cpp/main/asterisk.c
URL: http://svn.digium.com/svn-view/asterisk/team/group/asterisk-cpp/main/asterisk.c?view=diff&rev=168560&r1=168559&r2=168560
==============================================================================
--- team/group/asterisk-cpp/main/asterisk.c (original)
+++ team/group/asterisk-cpp/main/asterisk.c Tue Jan 13 13:07:12 2009
@@ -81,7 +81,9 @@
 #elif defined(HAVE_SYSCTL)
 #include <sys/param.h>
 #include <sys/sysctl.h>
+#if defined(HAVE_SWAPCTL)
 #include <sys/swap.h>
+#endif
 #endif
 #include <regex.h>
 

Modified: team/group/asterisk-cpp/main/srv.c
URL: http://svn.digium.com/svn-view/asterisk/team/group/asterisk-cpp/main/srv.c?view=diff&rev=168560&r1=168559&r2=168560
==============================================================================
--- team/group/asterisk-cpp/main/srv.c (original)
+++ team/group/asterisk-cpp/main/srv.c Tue Jan 13 13:07:12 2009
@@ -228,7 +228,7 @@
 		ast_copy_string(host, current->host, hostlen);
 		*port = current->port;
 		ast_free(current);
-		ast_verb(3, "ast_get_srv: SRV lookup for '%s' mapped to host %s, port %d\n",
+		ast_verb(4, "ast_get_srv: SRV lookup for '%s' mapped to host %s, port %d\n",
 				    service, host, *port);
 	} else {
 		host[0] = '\0';

Modified: team/group/asterisk-cpp/main/taskprocessor.c
URL: http://svn.digium.com/svn-view/asterisk/team/group/asterisk-cpp/main/taskprocessor.c?view=diff&rev=168560&r1=168559&r2=168560
==============================================================================
--- team/group/asterisk-cpp/main/taskprocessor.c (original)
+++ team/group/asterisk-cpp/main/taskprocessor.c Tue Jan 13 13:07:12 2009
@@ -114,7 +114,7 @@
 static char *cli_tps_report(struct ast_cli_entry *e, int cmd, struct ast_cli_args *a);
 
 static struct ast_cli_entry taskprocessor_clis[] = {
-	AST_CLI_DEFINE(cli_tps_ping, "Ping a named task processors"),
+	AST_CLI_DEFINE(cli_tps_ping, "Ping a named task processor"),
 	AST_CLI_DEFINE(cli_tps_report, "List instantiated task processors and statistics"),
 };
 

Modified: team/group/asterisk-cpp/res/res_agi.c
URL: http://svn.digium.com/svn-view/asterisk/team/group/asterisk-cpp/res/res_agi.c?view=diff&rev=168560&r1=168559&r2=168560
==============================================================================
--- team/group/asterisk-cpp/res/res_agi.c (original)
+++ team/group/asterisk-cpp/res/res_agi.c Tue Jan 13 13:07:12 2009
@@ -2753,6 +2753,11 @@
 		the module we are using */
 		if (c->mod != ast_module_info->self)
 			ast_module_ref(c->mod);
+		/* If the AGI command being executed is an actual application (using agi exec)
+		the app field will be updated in pbx_exec via handle_exec */
+		if (chan->cdr && !ast_check_hangup(chan) && strcasecmp(argv[0], "EXEC"))
+			ast_cdr_setapp(chan->cdr, "AGI", buf);
+
 		res = c->handler(chan, agi, argc, argv);
 		if (c->mod != ast_module_info->self)
 			ast_module_unref(c->mod);




More information about the asterisk-commits mailing list