[asterisk-commits] mogorman: branch anthonyl/8741 r50072 - in /team/anthonyl/8741: ./ apps/ chan...

asterisk-commits at lists.digium.com asterisk-commits at lists.digium.com
Mon Jan 8 14:04:01 MST 2007


Author: mogorman
Date: Mon Jan  8 15:04:00 2007
New Revision: 50072

URL: http://svn.digium.com/view/asterisk?view=rev&rev=50072
Log:
ooh now i can actually see the real differences...

Modified:
    team/anthonyl/8741/   (props changed)
    team/anthonyl/8741/acinclude.m4
    team/anthonyl/8741/apps/app_dictate.c
    team/anthonyl/8741/apps/app_meetme.c
    team/anthonyl/8741/apps/app_queue.c
    team/anthonyl/8741/apps/app_senddtmf.c
    team/anthonyl/8741/apps/app_setcdruserfield.c
    team/anthonyl/8741/channels/chan_agent.c
    team/anthonyl/8741/channels/chan_iax2.c
    team/anthonyl/8741/channels/chan_sip.c
    team/anthonyl/8741/channels/chan_zap.c
    team/anthonyl/8741/codecs/codec_zap.c
    team/anthonyl/8741/configure
    team/anthonyl/8741/configure.ac
    team/anthonyl/8741/include/asterisk/jabber.h
    team/anthonyl/8741/include/asterisk/manager.h
    team/anthonyl/8741/main/channel.c
    team/anthonyl/8741/main/config.c
    team/anthonyl/8741/main/db.c
    team/anthonyl/8741/main/manager.c
    team/anthonyl/8741/main/pbx.c
    team/anthonyl/8741/main/rtp.c
    team/anthonyl/8741/pbx/pbx_config.c
    team/anthonyl/8741/res/res_features.c
    team/anthonyl/8741/res/res_jabber.c
    team/anthonyl/8741/res/res_monitor.c
    team/anthonyl/8741/utils/astman.c

Propchange: team/anthonyl/8741/
------------------------------------------------------------------------------
Binary property 'branch-1.2-merged' - no diff available.

Propchange: team/anthonyl/8741/
------------------------------------------------------------------------------
--- svnmerge-integrated (original)
+++ svnmerge-integrated Mon Jan  8 15:04:00 2007
@@ -1,1 +1,1 @@
-/branches/1.4:1-49668
+/branches/1.4:1-50071

Modified: team/anthonyl/8741/acinclude.m4
URL: http://svn.digium.com/view/asterisk/team/anthonyl/8741/acinclude.m4?view=diff&rev=50072&r1=50071&r2=50072
==============================================================================
--- team/anthonyl/8741/acinclude.m4 (original)
+++ team/anthonyl/8741/acinclude.m4 Mon Jan  8 15:04:00 2007
@@ -58,12 +58,15 @@
       if test "x${$1_DIR}" != "x"; then
          $1_LIB="${pbxlibdir} ${$1_LIB}"
 	 $1_INCLUDE="-I${$1_DIR}/include"
+	 saved_cppflags="${CPPFLAGS}"
+	 CPPFLAGS="${CPPFLAGS} -I${$1_DIR}/include"
 	 if test "x$4" != "x" ; then
-	    AC_CHECK_HEADER([${$1_DIR}/include/$4], [$1_HEADER_FOUND=1], [$1_HEADER_FOUND=0] )
+	    AC_CHECK_HEADER([${$1_DIR}/include/$4], [$1_HEADER_FOUND=1], [$1_HEADER_FOUND=0])
 	 fi
+	 CPPFLAGS="${saved_cppflags}"
       else
 	 if test "x$4" != "x" ; then
-            AC_CHECK_HEADER([$4], [$1_HEADER_FOUND=1], [$1_HEADER_FOUND=0] )
+            AC_CHECK_HEADER([$4], [$1_HEADER_FOUND=1], [$1_HEADER_FOUND=0])
 	 fi
       fi
       if test "x${$1_HEADER_FOUND}" = "x0" ; then

Modified: team/anthonyl/8741/apps/app_dictate.c
URL: http://svn.digium.com/view/asterisk/team/anthonyl/8741/apps/app_dictate.c?view=diff&rev=50072&r1=50071&r2=50072
==============================================================================
--- team/anthonyl/8741/apps/app_dictate.c (original)
+++ team/anthonyl/8741/apps/app_dictate.c Mon Jan  8 15:04:00 2007
@@ -267,7 +267,8 @@
 						if (lastop != DFLAG_PLAY) {
 							lastop = DFLAG_PLAY;
 							ast_closestream(fs);
-							fs = ast_openstream(chan, path, chan->language);
+							if (!(fs = ast_openstream(chan, path, chan->language)))
+								break;
 							ast_seekstream(fs, samples, SEEK_SET);
 							chan->stream = NULL;
 						}

Modified: team/anthonyl/8741/apps/app_meetme.c
URL: http://svn.digium.com/view/asterisk/team/anthonyl/8741/apps/app_meetme.c?view=diff&rev=50072&r1=50071&r2=50072
==============================================================================
--- team/anthonyl/8741/apps/app_meetme.c (original)
+++ team/anthonyl/8741/apps/app_meetme.c Mon Jan  8 15:04:00 2007
@@ -2751,12 +2751,12 @@
 	return 0;
 }
 
-static int meetmemute(struct mansession *s, struct message *m, int mute)
+static int meetmemute(struct mansession *s, const struct message *m, int mute)
 {
 	struct ast_conference *conf;
 	struct ast_conf_user *user;
-	char *confid = astman_get_header(m, "Meetme");
-	char *userid = astman_get_header(m, "Usernum");
+	const char *confid = astman_get_header(m, "Meetme");
+	char *userid = ast_strdupa(astman_get_header(m, "Usernum"));
 	int userno;
 
 	if (ast_strlen_zero(confid)) {
@@ -2812,12 +2812,12 @@
 	return 0;
 }
 
-static int action_meetmemute(struct mansession *s, struct message *m)
+static int action_meetmemute(struct mansession *s, const struct message *m)
 {
 	return meetmemute(s, m, 1);
 }
 
-static int action_meetmeunmute(struct mansession *s, struct message *m)
+static int action_meetmeunmute(struct mansession *s, const struct message *m)
 {
 	return meetmemute(s, m, 0);
 }

Modified: team/anthonyl/8741/apps/app_queue.c
URL: http://svn.digium.com/view/asterisk/team/anthonyl/8741/apps/app_queue.c?view=diff&rev=50072&r1=50071&r2=50072
==============================================================================
--- team/anthonyl/8741/apps/app_queue.c (original)
+++ team/anthonyl/8741/apps/app_queue.c Mon Jan  8 15:04:00 2007
@@ -401,7 +401,7 @@
 
 static AST_LIST_HEAD_STATIC(queues, call_queue);
 
-static int set_member_paused(char *queuename, char *interface, int paused);
+static int set_member_paused(const char *queuename, const char *interface, int paused);
 
 static void rr_dep_warning(void)
 {
@@ -613,7 +613,7 @@
 	return 0;
 }
 
-static struct member *create_queue_member(char *interface, const char *membername, int penalty, int paused)
+static struct member *create_queue_member(const char *interface, const char *membername, int penalty, int paused)
 {
 	struct member *cur;
 	
@@ -686,7 +686,7 @@
 	q->wrapuptime = 0;
 }
 
-static int add_to_interfaces(char *interface)
+static int add_to_interfaces(const char *interface)
 {
 	struct member_interface *curint;
 
@@ -713,7 +713,7 @@
 	return 0;
 }
 
-static int interface_exists_global(char *interface)
+static int interface_exists_global(const char *interface)
 {
 	struct call_queue *q;
 	struct member *mem;
@@ -735,7 +735,7 @@
 	return ret;
 }
 
-static int remove_from_interfaces(char *interface)
+static int remove_from_interfaces(const char *interface)
 {
 	struct member_interface *curint;
 
@@ -1100,7 +1100,7 @@
 	return q;
 }
 
-static struct call_queue *load_realtime_queue(char *queuename)
+static struct call_queue *load_realtime_queue(const char *queuename)
 {
 	struct ast_variable *queue_vars;
 	struct ast_config *member_config = NULL;
@@ -2686,7 +2686,7 @@
 	return ast_waitfordigit(qe->chan, retrywait);
 }
 
-static struct member *interface_exists(struct call_queue *q, char *interface)
+static struct member *interface_exists(struct call_queue *q, const char *interface)
 {
 	struct member *mem;
 
@@ -2741,7 +2741,7 @@
 		ast_db_del(pm_family, pm_queue->name);
 }
 
-static int remove_from_queue(char *queuename, char *interface)
+static int remove_from_queue(const char *queuename, const char *interface)
 {
 	struct call_queue *q;
 	struct member *last_member, *look;
@@ -2795,7 +2795,7 @@
 }
 
 
-static int add_to_queue(char *queuename, char *interface, char *membername, int penalty, int paused, int dump)
+static int add_to_queue(const char *queuename, const char *interface, const char *membername, int penalty, int paused, int dump)
 {
 	struct call_queue *q;
 	struct member *new_member;
@@ -2846,7 +2846,7 @@
 	return res;
 }
 
-static int set_member_paused(char *queuename, char *interface, int paused)
+static int set_member_paused(const char *queuename, const char *interface, int paused)
 {
 	int found = 0;
 	struct call_queue *q;
@@ -4027,7 +4027,7 @@
 /*!\brief callback to display queues status in manager
    \addtogroup Group_AMI
  */
-static int manager_queues_show( struct mansession *s, struct message *m )
+static int manager_queues_show(struct mansession *s, const struct message *m)
 {
 	char *a[] = { "queue", "show" };
 
@@ -4038,13 +4038,13 @@
 }
 
 /* Dump queue status */
-static int manager_queues_status( struct mansession *s, struct message *m )
+static int manager_queues_status(struct mansession *s, const struct message *m)
 {
 	time_t now;
 	int pos;
-	char *id = astman_get_header(m,"ActionID");
-	char *queuefilter = astman_get_header(m,"Queue");
-	char *memberfilter = astman_get_header(m,"Member");
+	const char *id = astman_get_header(m,"ActionID");
+	const char *queuefilter = astman_get_header(m,"Queue");
+	const char *memberfilter = astman_get_header(m,"Member");
 	char idText[256] = "";
 	struct call_queue *q;
 	struct queue_ent *qe;
@@ -4128,9 +4128,9 @@
 	return RESULT_SUCCESS;
 }
 
-static int manager_add_queue_member(struct mansession *s, struct message *m)
-{
-	char *queuename, *interface, *penalty_s, *paused_s, *membername;
+static int manager_add_queue_member(struct mansession *s, const struct message *m)
+{
+	const char *queuename, *interface, *penalty_s, *paused_s, *membername;
 	int paused, penalty = 0;
 
 	queuename = astman_get_header(m, "Queue");
@@ -4181,9 +4181,9 @@
 	return 0;
 }
 
-static int manager_remove_queue_member(struct mansession *s, struct message *m)
-{
-	char *queuename, *interface;
+static int manager_remove_queue_member(struct mansession *s, const struct message *m)
+{
+	const char *queuename, *interface;
 
 	queuename = astman_get_header(m, "Queue");
 	interface = astman_get_header(m, "Interface");
@@ -4212,9 +4212,9 @@
 	return 0;
 }
 
-static int manager_pause_queue_member(struct mansession *s, struct message *m)
-{
-	char *queuename, *interface, *paused_s;
+static int manager_pause_queue_member(struct mansession *s, const struct message *m)
+{
+	const char *queuename, *interface, *paused_s;
 	int paused;
 
 	interface = astman_get_header(m, "Interface");

Modified: team/anthonyl/8741/apps/app_senddtmf.c
URL: http://svn.digium.com/view/asterisk/team/anthonyl/8741/apps/app_senddtmf.c?view=diff&rev=50072&r1=50071&r2=50072
==============================================================================
--- team/anthonyl/8741/apps/app_senddtmf.c (original)
+++ team/anthonyl/8741/apps/app_senddtmf.c Mon Jan  8 15:04:00 2007
@@ -94,10 +94,10 @@
 "	Channel: Channel name to send digit to\n"
 "	Digit: The dtmf digit to play\n";
 
-static int manager_play_dtmf(struct mansession *s, struct message *m)
+static int manager_play_dtmf(struct mansession *s, const struct message *m)
 {
-	char *channel = astman_get_header(m, "Channel");
-	char *digit = astman_get_header(m, "Digit");
+	const char *channel = astman_get_header(m, "Channel");
+	const char *digit = astman_get_header(m, "Digit");
 	struct ast_channel *chan = ast_get_channel_by_name_locked(channel);
 	
 	if (!chan) {

Modified: team/anthonyl/8741/apps/app_setcdruserfield.c
URL: http://svn.digium.com/view/asterisk/team/anthonyl/8741/apps/app_setcdruserfield.c?view=diff&rev=50072&r1=50071&r2=50072
==============================================================================
--- team/anthonyl/8741/apps/app_setcdruserfield.c (original)
+++ team/anthonyl/8741/apps/app_setcdruserfield.c Mon Jan  8 15:04:00 2007
@@ -73,12 +73,12 @@
 static char *appendcdruserfield_synopsis = "Append to the CDR user field";
 
 
-static int action_setcdruserfield(struct mansession *s, struct message *m)
+static int action_setcdruserfield(struct mansession *s, const struct message *m)
 {
 	struct ast_channel *c = NULL;
-	char *userfield = astman_get_header(m, "UserField");
-	char *channel = astman_get_header(m, "Channel");
-	char *append = astman_get_header(m, "Append");
+	const char *userfield = astman_get_header(m, "UserField");
+	const char *channel = astman_get_header(m, "Channel");
+	const char *append = astman_get_header(m, "Append");
 
 	if (ast_strlen_zero(channel)) {
 		astman_send_error(s, m, "No Channel specified");

Modified: team/anthonyl/8741/channels/chan_agent.c
URL: http://svn.digium.com/view/asterisk/team/anthonyl/8741/channels/chan_agent.c?view=diff&rev=50072&r1=50071&r2=50072
==============================================================================
--- team/anthonyl/8741/channels/chan_agent.c (original)
+++ team/anthonyl/8741/channels/chan_agent.c Mon Jan  8 15:04:00 2007
@@ -1395,9 +1395,9 @@
  * \returns 
  * \sa action_agent_logoff(), action_agent_callback_login(), load_module().
  */
-static int action_agents(struct mansession *s, struct message *m)
-{
-	char *id = astman_get_header(m,"ActionID");
+static int action_agents(struct mansession *s, const struct message *m)
+{
+	const char *id = astman_get_header(m,"ActionID");
 	char idText[256] = "";
 	char chanbuf[256];
 	struct agent_pvt *p;
@@ -1505,7 +1505,7 @@
 
 }
 
-static int agent_logoff(char *agent, int soft)
+static int agent_logoff(const char *agent, int soft)
 {
 	struct agent_pvt *p;
 	long logintime;
@@ -1556,10 +1556,10 @@
  * \returns 
  * \sa action_agents(), action_agent_callback_login(), load_module().
  */
-static int action_agent_logoff(struct mansession *s, struct message *m)
-{
-	char *agent = astman_get_header(m, "Agent");
-	char *soft_s = astman_get_header(m, "Soft"); /* "true" is don't hangup */
+static int action_agent_logoff(struct mansession *s, const struct message *m)
+{
+	const char *agent = astman_get_header(m, "Agent");
+	const char *soft_s = astman_get_header(m, "Soft"); /* "true" is don't hangup */
 	int soft;
 	int ret; /* return value of agent_logoff */
 
@@ -2234,13 +2234,13 @@
  * \returns 
  * \sa action_agents(), action_agent_logoff(), load_module().
  */
-static int action_agent_callback_login(struct mansession *s, struct message *m)
-{
-	char *agent = astman_get_header(m, "Agent");
-	char *exten = astman_get_header(m, "Exten");
-	char *context = astman_get_header(m, "Context");
-	char *wrapuptime_s = astman_get_header(m, "WrapupTime");
-	char *ackcall_s = astman_get_header(m, "AckCall");
+static int action_agent_callback_login(struct mansession *s, const struct message *m)
+{
+	const char *agent = astman_get_header(m, "Agent");
+	const char *exten = astman_get_header(m, "Exten");
+	const char *context = astman_get_header(m, "Context");
+	const char *wrapuptime_s = astman_get_header(m, "WrapupTime");
+	const char *ackcall_s = astman_get_header(m, "AckCall");
 	struct agent_pvt *p;
 	int login_state = 0;
 

Modified: team/anthonyl/8741/channels/chan_iax2.c
URL: http://svn.digium.com/view/asterisk/team/anthonyl/8741/channels/chan_iax2.c?view=diff&rev=50072&r1=50071&r2=50072
==============================================================================
--- team/anthonyl/8741/channels/chan_iax2.c (original)
+++ team/anthonyl/8741/channels/chan_iax2.c Mon Jan  8 15:04:00 2007
@@ -4187,7 +4187,7 @@
 {
 	return __iax2_show_peers(0, fd, NULL, argc, argv);
 }
-static int manager_iax2_show_netstats( struct mansession *s, struct message *m )
+static int manager_iax2_show_netstats(struct mansession *s, const struct message *m)
 {
 	ast_cli_netstats(s, -1, 0);
 	astman_append(s, "\r\n");
@@ -4220,12 +4220,12 @@
 }
 
 /* JDG: callback to display iax peers in manager */
-static int manager_iax2_show_peers( struct mansession *s, struct message *m )
+static int manager_iax2_show_peers(struct mansession *s, const struct message *m)
 {
 	char *a[] = { "iax2", "show", "users" };
 	int ret;
-	char *id;
-	id = astman_get_header(m,"ActionID");
+	const char *id = astman_get_header(m,"ActionID");
+
 	if (!ast_strlen_zero(id))
 		astman_append(s, "ActionID: %s\r\n",id);
 	ret = __iax2_show_peers(1, -1, s, 3, a );
@@ -5338,7 +5338,7 @@
 	/* Start pessimistic */
 	char peer[256] = "";
 	char msgstatus[60];
-	int refresh = 0;
+	int refresh = 60;
 	char ourip[256] = "<Unspecified>";
 	struct sockaddr_in oldus;
 	struct sockaddr_in us;

Modified: team/anthonyl/8741/channels/chan_sip.c
URL: http://svn.digium.com/view/asterisk/team/anthonyl/8741/channels/chan_sip.c?view=diff&rev=50072&r1=50071&r2=50072
==============================================================================
--- team/anthonyl/8741/channels/chan_sip.c (original)
+++ team/anthonyl/8741/channels/chan_sip.c Mon Jan  8 15:04:00 2007
@@ -1335,8 +1335,7 @@
 static char *nat2str(int nat) attribute_const;
 static int peer_status(struct sip_peer *peer, char *status, int statuslen);
 static int sip_show_users(int fd, int argc, char *argv[]);
-static int _sip_show_peers(int fd, int *total, struct mansession *s, struct message *m, int argc, char *argv[]);
-static int manager_sip_show_peers( struct mansession *s, struct message *m );
+static int _sip_show_peers(int fd, int *total, struct mansession *s, const struct message *m, int argc, const char *argv[]);
 static int sip_show_peers(int fd, int argc, char *argv[]);
 static int sip_show_objects(int fd, int argc, char *argv[]);
 static void  print_group(int fd, ast_group_t group, int crlf);
@@ -1346,10 +1345,8 @@
 static void print_codec_to_cli(int fd, struct ast_codec_pref *pref);
 static const char *domain_mode_to_text(const enum domain_mode mode);
 static int sip_show_domains(int fd, int argc, char *argv[]);
-static int _sip_show_peer(int type, int fd, struct mansession *s, struct message *m, int argc, char *argv[]);
-static int manager_sip_show_peer( struct mansession *s, struct message *m);
+static int _sip_show_peer(int type, int fd, struct mansession *s, const struct message *m, int argc, const char *argv[]);
 static int sip_show_peer(int fd, int argc, char *argv[]);
-static int _sip_show_peer(int type, int fd, struct mansession *s, struct message *m, int argc, char *argv[]);
 static int sip_show_user(int fd, int argc, char *argv[]);
 static int sip_show_registry(int fd, int argc, char *argv[]);
 static int sip_show_settings(int fd, int argc, char *argv[]);
@@ -1508,7 +1505,6 @@
 static int handle_request_options(struct sip_pvt *p, struct sip_request *req);
 static int handle_invite_replaces(struct sip_pvt *p, struct sip_request *req, int debug, int ignore, int seqno, struct sockaddr_in *sin);
 static int handle_request_notify(struct sip_pvt *p, struct sip_request *req, struct sockaddr_in *sin, int seqno, char *e);
-static int handle_invite_replaces(struct sip_pvt *p, struct sip_request *req, int debug, int ignore, int seqno, struct sockaddr_in *sin);
 static int local_attended_transfer(struct sip_pvt *transferer, struct sip_dual *current, struct sip_request *req, int seqno);
 
 /*------Response handling functions */
@@ -5331,21 +5327,25 @@
 			break;
 
 		if (!copied) {	/* Only check for empty rport in topmost via header */
-			char *rport;
+			char leftmost[256], *others, *rport;
+
+			/* Only work on leftmost value */
+			ast_copy_string(leftmost, oh, sizeof(leftmost));
+			others = strchr(leftmost, ',');
+			if (others)
+			    *others++ = '\0';
 
 			/* Find ;rport;  (empty request) */
-			rport = strstr(oh, ";rport");
+			rport = strstr(leftmost, ";rport");
 			if (rport && *(rport+6) == '=') 
 				rport = NULL;		/* We already have a parameter to rport */
 
 			/* Check rport if NAT=yes or NAT=rfc3581 (which is the default setting)  */
 			if (rport && ((ast_test_flag(&p->flags[0], SIP_NAT) == SIP_NAT_ALWAYS) || (ast_test_flag(&p->flags[0], SIP_NAT) == SIP_NAT_RFC3581))) {
 				/* We need to add received port - rport */
-				char tmp[256], *end;
-
-				ast_copy_string(tmp, oh, sizeof(tmp));
-
-				rport = strstr(tmp, ";rport");
+				char *end;
+
+				rport = strstr(leftmost, ";rport");
 
 				if (rport) {
 					end = strchr(rport + 1, ';');
@@ -5356,13 +5356,15 @@
 				}
 
 				/* Add rport to first VIA header if requested */
-				snprintf(new, sizeof(new), "%s;received=%s;rport=%d",
-					tmp, ast_inet_ntoa(p->recv.sin_addr),
-					ntohs(p->recv.sin_port));
+				snprintf(new, sizeof(new), "%s;received=%s;rport=%d%s%s",
+					leftmost, ast_inet_ntoa(p->recv.sin_addr),
+					ntohs(p->recv.sin_port),
+					others ? "," : "", others ? others : "");
 			} else {
 				/* We should *always* add a received to the topmost via */
-				snprintf(new, sizeof(new), "%s;received=%s",
-					oh, ast_inet_ntoa(p->recv.sin_addr));
+				snprintf(new, sizeof(new), "%s;received=%s%s%s",
+					leftmost, ast_inet_ntoa(p->recv.sin_addr),
+					others ? "," : "", others ? others : "");
 			}
 			oh = new;	/* the header to copy */
 		}  /* else add the following via headers untouched */
@@ -6821,7 +6823,7 @@
 		pidfnote = "On the phone";
 		break;
 	case AST_EXTENSION_UNAVAILABLE:
-		statestring = "confirmed";
+		statestring = "terminated";
 		local_state = NOTIFY_CLOSED;
 		pidfstate = "away";
 		pidfnote = "Unavailable";
@@ -8098,7 +8100,7 @@
 	/* If they put someone on hold, increment the value... otherwise decrement it */
 	if (hold)
 		peer->onHold++;
-	else if (hold > 0)
+	else
 		peer->onHold--;
 
 	/* Request device state update */
@@ -8744,6 +8746,11 @@
 	struct ast_hostent ahp;
 
 	ast_copy_string(via, get_header(req, "Via"), sizeof(via));
+
+	/* Work on the leftmost value of the topmost Via header */
+	c = strchr(via, ',');
+	if (c)
+		*c = '\0';
 
 	/* Check for rport */
 	c = strstr(via, ";rport");
@@ -9394,10 +9401,10 @@
 
 /*! \brief  Show SIP peers in the manager API */
 /*    Inspired from chan_iax2 */
-static int manager_sip_show_peers( struct mansession *s, struct message *m )
-{
-	char *id = astman_get_header(m,"ActionID");
-	char *a[] = { "sip", "show", "peers" };
+static int manager_sip_show_peers(struct mansession *s, const struct message *m)
+{
+	const char *id = astman_get_header(m,"ActionID");
+	const char *a[] = {"sip", "show", "peers"};
 	char idtext[256] = "";
 	int total = 0;
 
@@ -9419,11 +9426,11 @@
 /*! \brief  CLI Show Peers command */
 static int sip_show_peers(int fd, int argc, char *argv[])
 {
-	return _sip_show_peers(fd, NULL, NULL, NULL, argc, argv);
+	return _sip_show_peers(fd, NULL, NULL, NULL, argc, (const char **) argv);
 }
 
 /*! \brief  _sip_show_peers: Execute sip show peers command */
-static int _sip_show_peers(int fd, int *total, struct mansession *s, struct message *m, int argc, char *argv[])
+static int _sip_show_peers(int fd, int *total, struct mansession *s, const struct message *m, int argc, const char *argv[])
 {
 	regex_t regexbuf;
 	int havepattern = FALSE;
@@ -9437,7 +9444,7 @@
 	int peers_mon_offline = 0;
 	int peers_unmon_offline = 0;
 	int peers_unmon_online = 0;
-	char *id;
+	const char *id;
 	char idtext[256] = "";
 	int realtimepeers;
 
@@ -9843,11 +9850,11 @@
 "  ActionID: <id>	  Optional action ID for this AMI transaction.\n";
 
 /*! \brief Show SIP peers in the manager API  */
-static int manager_sip_show_peer( struct mansession *s, struct message *m)
-{
-	char *id = astman_get_header(m,"ActionID");
-	char *a[4];
-	char *peer;
+static int manager_sip_show_peer(struct mansession *s, const struct message *m)
+{
+	const char *id = astman_get_header(m,"ActionID");
+	const char *a[4];
+	const char *peer;
 	int ret;
 
 	peer = astman_get_header(m,"Peer");
@@ -9862,7 +9869,7 @@
 
 	if (!ast_strlen_zero(id))
 		astman_append(s, "ActionID: %s\r\n",id);
-	ret = _sip_show_peer(1, -1, s, m, 4, a );
+	ret = _sip_show_peer(1, -1, s, m, 4, a);
 	astman_append(s, "\r\n\r\n" );
 	return ret;
 }
@@ -9872,11 +9879,11 @@
 /*! \brief Show one peer in detail */
 static int sip_show_peer(int fd, int argc, char *argv[])
 {
-	return _sip_show_peer(0, fd, NULL, NULL, argc, argv);
+	return _sip_show_peer(0, fd, NULL, NULL, argc, (const char **) argv);
 }
 
 /*! \brief Show one peer in detail (main function) */
-static int _sip_show_peer(int type, int fd, struct mansession *s, struct message *m, int argc, char *argv[])
+static int _sip_show_peer(int type, int fd, struct mansession *s, const struct message *m, int argc, const char *argv[])
 {
 	char status[30] = "";
 	char cbuf[256];
@@ -11762,6 +11769,33 @@
 			ast_queue_hangup(p->owner);
 		else if (!ast_test_flag(req, SIP_PKT_IGNORE))
 			update_call_counter(p, DEC_CALL_LIMIT);
+		break;
+	case 488: /* Not acceptable here */
+		transmit_request(p, SIP_ACK, seqno, XMIT_UNRELIABLE, FALSE);
+		if (reinvite && p->udptl) {
+			/* If this is a T.38 call, we should go back to 
+			   audio. If this is an audio call - something went
+			   terribly wrong since we don't renegotiate codecs,
+			   only IP/port .
+			*/
+			p->t38.state = T38_DISABLED;
+			/* Try to reset RTP timers */
+			ast_rtp_set_rtptimers_onhold(p->rtp);
+			ast_log(LOG_ERROR, "Got error on T.38 re-invite. Bad configuration. Peer needs to have T.38 disabled.\n");
+
+			/*! \bug Is there any way we can go back to the audio call on both
+			   sides here? 
+			*/
+			/* While figuring that out, hangup the call */
+			if (p->owner && !ast_test_flag(req, SIP_PKT_IGNORE))
+				ast_queue_control(p->owner, AST_CONTROL_CONGESTION);
+			ast_set_flag(&p->flags[0], SIP_NEEDDESTROY);	
+		} else {
+			/* We can't set up this call, so give up */
+			if (p->owner && !ast_test_flag(req, SIP_PKT_IGNORE))
+				ast_queue_control(p->owner, AST_CONTROL_CONGESTION);
+			ast_set_flag(&p->flags[0], SIP_NEEDDESTROY);	
+		}
 		break;
 	case 491: /* Pending */
 		/* we really should have to wait a while, then retransmit */
@@ -12185,6 +12219,10 @@
 			if (sipmethod == SIP_INVITE)
 				handle_response_invite(p, resp, rest, req, seqno);
 			break;
+		case 488: /* Not acceptable here - codec error */
+			if (sipmethod == SIP_INVITE)
+				handle_response_invite(p, resp, rest, req, seqno);
+			break;
 		case 491: /* Pending */
 			if (sipmethod == SIP_INVITE)
 				handle_response_invite(p, resp, rest, req, seqno);
@@ -12241,7 +12279,6 @@
 						ast_string_field_build(p->owner, call_forward,
 								       "Local/%s@%s", p->username, p->context);
 					/* Fall through */
-				case 488: /* Not acceptable here - codec error */
 				case 480: /* Temporarily Unavailable */
 				case 404: /* Not Found */
 				case 410: /* Gone */

Modified: team/anthonyl/8741/channels/chan_zap.c
URL: http://svn.digium.com/view/asterisk/team/anthonyl/8741/channels/chan_zap.c?view=diff&rev=50072&r1=50071&r2=50072
==============================================================================
--- team/anthonyl/8741/channels/chan_zap.c (original)
+++ team/anthonyl/8741/channels/chan_zap.c Mon Jan  8 15:04:00 2007
@@ -39,6 +39,7 @@
 
 /*** MODULEINFO
 	<depend>zaptel_vldtmf</depend>
+	<depend>zaptel</depend>
 	<depend>tonezone</depend>
 	<use>pri</use>
  ***/
@@ -9743,7 +9744,7 @@
 	return RESULT_SUCCESS;
 }
 
-static int action_zaprestart(struct mansession *s, struct message *m)
+static int action_zaprestart(struct mansession *s, const struct message *m)
 {
 	if (zap_restart() != 0) {
 		astman_send_error(s, m, "Failed rereading zaptel configuration");
@@ -10116,46 +10117,11 @@
 	return p;
 }
 
-static int action_zapdndon(struct mansession *s, struct message *m)
-{
-	 struct zt_pvt *p = NULL;
-	 char *channel = astman_get_header(m, "ZapChannel");
-	 if (ast_strlen_zero(channel)) {
-		  astman_send_error(s, m, "No channel specified");
-		  return 0;
-	 }
-	 p = find_channel(atoi(channel));
-	 if (!p) {
-		  astman_send_error(s, m, "No such channel");
-		  return 0;
-	 }
-	 p->dnd = 1;
-	 astman_send_ack(s, m, "DND Enabled");
-	 return 0;
-}
-
-static int action_zapdndoff(struct mansession *s, struct message *m)
-{
-	 struct zt_pvt *p = NULL;
-	 char *channel = astman_get_header(m, "ZapChannel");
-	 if (ast_strlen_zero(channel)) {
-		  astman_send_error(s, m, "No channel specified");
-		  return 0;
-	 }
-	 p = find_channel(atoi(channel));
-	 if (!p) {
-		  astman_send_error(s, m, "No such channel");
-		  return 0;
-	 }
-	 p->dnd = 0;
-	 astman_send_ack(s, m, "DND Disabled");
-	 return 0;
-}
-
-static int action_transfer(struct mansession *s, struct message *m)
+static int action_zapdndon(struct mansession *s, const struct message *m)
 {
 	struct zt_pvt *p = NULL;
-	char *channel = astman_get_header(m, "ZapChannel");
+	const char *channel = astman_get_header(m, "ZapChannel");
+
 	if (ast_strlen_zero(channel)) {
 		astman_send_error(s, m, "No channel specified");
 		return 0;
@@ -10165,15 +10131,16 @@
 		astman_send_error(s, m, "No such channel");
 		return 0;
 	}
-	zap_fake_event(p,TRANSFER);
-	astman_send_ack(s, m, "ZapTransfer");
+	p->dnd = 1;
+	astman_send_ack(s, m, "DND Enabled");
 	return 0;
 }
 
-static int action_transferhangup(struct mansession *s, struct message *m)
+static int action_zapdndoff(struct mansession *s, const struct message *m)
 {
 	struct zt_pvt *p = NULL;
-	char *channel = astman_get_header(m, "ZapChannel");
+	const char *channel = astman_get_header(m, "ZapChannel");
+
 	if (ast_strlen_zero(channel)) {
 		astman_send_error(s, m, "No channel specified");
 		return 0;
@@ -10183,23 +10150,18 @@
 		astman_send_error(s, m, "No such channel");
 		return 0;
 	}
-	zap_fake_event(p,HANGUP);
-	astman_send_ack(s, m, "ZapHangup");
+	p->dnd = 0;
+	astman_send_ack(s, m, "DND Disabled");
 	return 0;
 }
 
-static int action_zapdialoffhook(struct mansession *s, struct message *m)
+static int action_transfer(struct mansession *s, const struct message *m)
 {
 	struct zt_pvt *p = NULL;
-	char *channel = astman_get_header(m, "ZapChannel");
-	char *number = astman_get_header(m, "Number");
-	int i;
+	const char *channel = astman_get_header(m, "ZapChannel");
+
 	if (ast_strlen_zero(channel)) {
 		astman_send_error(s, m, "No channel specified");
-		return 0;
-	}
-	if (ast_strlen_zero(number)) {
-		astman_send_error(s, m, "No number specified");
 		return 0;
 	}
 	p = find_channel(atoi(channel));
@@ -10207,6 +10169,50 @@
 		astman_send_error(s, m, "No such channel");
 		return 0;
 	}
+	zap_fake_event(p,TRANSFER);
+	astman_send_ack(s, m, "ZapTransfer");
+	return 0;
+}
+
+static int action_transferhangup(struct mansession *s, const struct message *m)
+{
+	struct zt_pvt *p = NULL;
+	const char *channel = astman_get_header(m, "ZapChannel");
+
+	if (ast_strlen_zero(channel)) {
+		astman_send_error(s, m, "No channel specified");
+		return 0;
+	}
+	p = find_channel(atoi(channel));
+	if (!p) {
+		astman_send_error(s, m, "No such channel");
+		return 0;
+	}
+	zap_fake_event(p,HANGUP);
+	astman_send_ack(s, m, "ZapHangup");
+	return 0;
+}
+
+static int action_zapdialoffhook(struct mansession *s, const struct message *m)
+{
+	struct zt_pvt *p = NULL;
+	const char *channel = astman_get_header(m, "ZapChannel");
+	const char *number = astman_get_header(m, "Number");
+	int i;
+
+	if (ast_strlen_zero(channel)) {
+		astman_send_error(s, m, "No channel specified");
+		return 0;
+	}
+	if (ast_strlen_zero(number)) {
+		astman_send_error(s, m, "No number specified");
+		return 0;
+	}
+	p = find_channel(atoi(channel));
+	if (!p) {
+		astman_send_error(s, m, "No such channel");
+		return 0;
+	}
 	if (!p->owner) {
 		astman_send_error(s, m, "Channel does not have it's owner");
 		return 0;
@@ -10219,10 +10225,10 @@
 	return 0;
 }
 
-static int action_zapshowchannels(struct mansession *s, struct message *m)
+static int action_zapshowchannels(struct mansession *s, const struct message *m)
 {
 	struct zt_pvt *tmp = NULL;
-	char *id = astman_get_header(m, "ActionID");
+	const char *id = astman_get_header(m, "ActionID");
 	char idText[256] = "";
 
 	astman_send_ack(s, m, "Zapata channel status will follow");

Modified: team/anthonyl/8741/codecs/codec_zap.c
URL: http://svn.digium.com/view/asterisk/team/anthonyl/8741/codecs/codec_zap.c?view=diff&rev=50072&r1=50071&r2=50072
==============================================================================
--- team/anthonyl/8741/codecs/codec_zap.c (original)
+++ team/anthonyl/8741/codecs/codec_zap.c Mon Jan  8 15:04:00 2007
@@ -28,6 +28,7 @@
 
 /*** MODULEINFO
 	<depend>zaptel_transcode</depend>
+	<depend>zaptel</depend>
  ***/
 
 #include "asterisk.h"

Modified: team/anthonyl/8741/configure
URL: http://svn.digium.com/view/asterisk/team/anthonyl/8741/configure?view=diff&rev=50072&r1=50071&r2=50072
==============================================================================
--- team/anthonyl/8741/configure (original)
+++ team/anthonyl/8741/configure Mon Jan  8 15:04:00 2007
@@ -1,5 +1,5 @@
 #! /bin/sh
-# From configure.ac Revision: 49022 .
+# From configure.ac Revision: 49102 .
 # Guess values for system-dependent variables and create Makefiles.
 # Generated by GNU Autoconf 2.61.
 #
@@ -853,7 +853,7 @@
 PBX_GTK
 GTK_INCLUDE
 GTK_LIB
-CURL
+CURL_CONFIG
 LTLIBOBJS'
 ac_subst_files=''
       ac_precious_vars='build_alias
@@ -15384,6 +15384,8 @@
       if test "x${ALSA_DIR}" != "x"; then
          ALSA_LIB="${pbxlibdir} ${ALSA_LIB}"
 	 ALSA_INCLUDE="-I${ALSA_DIR}/include"
+	 saved_cppflags="${CPPFLAGS}"
+	 CPPFLAGS="${CPPFLAGS} -I${ALSA_DIR}/include"
 	 if test "xalsa/asoundlib.h" != "x" ; then
 	    as_ac_Header=`echo "ac_cv_header_${ALSA_DIR}/include/alsa/asoundlib.h" | $as_tr_sh`
 if { as_var=$as_ac_Header; eval "test \"\${$as_var+set}\" = set"; }; then
@@ -15521,6 +15523,7 @@
 
 
 	 fi
+	 CPPFLAGS="${saved_cppflags}"
       else
 	 if test "xalsa/asoundlib.h" != "x" ; then
             if test "${ac_cv_header_alsa_asoundlib_h+set}" = set; then
@@ -15780,6 +15783,8 @@
       if test "x${CURSES_DIR}" != "x"; then
          CURSES_LIB="${pbxlibdir} ${CURSES_LIB}"
 	 CURSES_INCLUDE="-I${CURSES_DIR}/include"
+	 saved_cppflags="${CPPFLAGS}"
+	 CPPFLAGS="${CPPFLAGS} -I${CURSES_DIR}/include"
 	 if test "xcurses.h" != "x" ; then
 	    as_ac_Header=`echo "ac_cv_header_${CURSES_DIR}/include/curses.h" | $as_tr_sh`
 if { as_var=$as_ac_Header; eval "test \"\${$as_var+set}\" = set"; }; then
@@ -15917,6 +15922,7 @@
 
 
 	 fi
+	 CPPFLAGS="${saved_cppflags}"
       else
 	 if test "xcurses.h" != "x" ; then
             if test "${ac_cv_header_curses_h+set}" = set; then
@@ -16278,6 +16284,8 @@
       if test "x${IKSEMEL_DIR}" != "x"; then
          IKSEMEL_LIB="${pbxlibdir} ${IKSEMEL_LIB}"
 	 IKSEMEL_INCLUDE="-I${IKSEMEL_DIR}/include"
+	 saved_cppflags="${CPPFLAGS}"
+	 CPPFLAGS="${CPPFLAGS} -I${IKSEMEL_DIR}/include"
 	 if test "xiksemel.h" != "x" ; then
 	    as_ac_Header=`echo "ac_cv_header_${IKSEMEL_DIR}/include/iksemel.h" | $as_tr_sh`
 if { as_var=$as_ac_Header; eval "test \"\${$as_var+set}\" = set"; }; then
@@ -16415,6 +16423,7 @@
 
 
 	 fi
+	 CPPFLAGS="${saved_cppflags}"
       else
 	 if test "xiksemel.h" != "x" ; then
             if test "${ac_cv_header_iksemel_h+set}" = set; then
@@ -16675,6 +16684,8 @@
       if test "x${GNUTLS_DIR}" != "x"; then
          GNUTLS_LIB="${pbxlibdir} ${GNUTLS_LIB}"
 	 GNUTLS_INCLUDE="-I${GNUTLS_DIR}/include"
+	 saved_cppflags="${CPPFLAGS}"
+	 CPPFLAGS="${CPPFLAGS} -I${GNUTLS_DIR}/include"
 	 if test "x" != "x" ; then
 	    as_ac_Header=`echo "ac_cv_header_${GNUTLS_DIR}/include/" | $as_tr_sh`
 if { as_var=$as_ac_Header; eval "test \"\${$as_var+set}\" = set"; }; then
@@ -16812,6 +16823,7 @@
 
 
 	 fi
+	 CPPFLAGS="${saved_cppflags}"
       else
 	 if test "x" != "x" ; then
             if test "${ac_cv_header_+set}" = set; then
@@ -17529,6 +17541,8 @@
       if test "x${MISDN_DIR}" != "x"; then
          MISDN_LIB="${pbxlibdir} ${MISDN_LIB}"
 	 MISDN_INCLUDE="-I${MISDN_DIR}/include"
+	 saved_cppflags="${CPPFLAGS}"
+	 CPPFLAGS="${CPPFLAGS} -I${MISDN_DIR}/include"
 	 if test "xmISDNuser/mISDNlib.h" != "x" ; then
 	    as_ac_Header=`echo "ac_cv_header_${MISDN_DIR}/include/mISDNuser/mISDNlib.h" | $as_tr_sh`
 if { as_var=$as_ac_Header; eval "test \"\${$as_var+set}\" = set"; }; then
@@ -17666,6 +17680,7 @@
 
 
 	 fi
+	 CPPFLAGS="${saved_cppflags}"
       else
 	 if test "xmISDNuser/mISDNlib.h" != "x" ; then
             if test "${ac_cv_header_mISDNuser_mISDNlib_h+set}" = set; then
@@ -17926,6 +17941,8 @@
       if test "x${ISDNNET_DIR}" != "x"; then
          ISDNNET_LIB="${pbxlibdir} ${ISDNNET_LIB}"
 	 ISDNNET_INCLUDE="-I${ISDNNET_DIR}/include"
+	 saved_cppflags="${CPPFLAGS}"
+	 CPPFLAGS="${CPPFLAGS} -I${ISDNNET_DIR}/include"
 	 if test "xmISDNuser/isdn_net.h" != "x" ; then
 	    as_ac_Header=`echo "ac_cv_header_${ISDNNET_DIR}/include/mISDNuser/isdn_net.h" | $as_tr_sh`
 if { as_var=$as_ac_Header; eval "test \"\${$as_var+set}\" = set"; }; then
@@ -18063,6 +18080,7 @@
 
 
 	 fi
+	 CPPFLAGS="${saved_cppflags}"
       else
 	 if test "xmISDNuser/isdn_net.h" != "x" ; then
             if test "${ac_cv_header_mISDNuser_isdn_net_h+set}" = set; then
@@ -18321,6 +18339,8 @@
       if test "x${SUPPSERV_DIR}" != "x"; then
          SUPPSERV_LIB="${pbxlibdir} ${SUPPSERV_LIB}"
 	 SUPPSERV_INCLUDE="-I${SUPPSERV_DIR}/include"
+	 saved_cppflags="${CPPFLAGS}"
+	 CPPFLAGS="${CPPFLAGS} -I${SUPPSERV_DIR}/include"
 	 if test "xmISDNuser/suppserv.h" != "x" ; then
 	    as_ac_Header=`echo "ac_cv_header_${SUPPSERV_DIR}/include/mISDNuser/suppserv.h" | $as_tr_sh`
 if { as_var=$as_ac_Header; eval "test \"\${$as_var+set}\" = set"; }; then
@@ -18458,6 +18478,7 @@
 
 
 	 fi
+	 CPPFLAGS="${saved_cppflags}"
       else
 	 if test "xmISDNuser/suppserv.h" != "x" ; then
             if test "${ac_cv_header_mISDNuser_suppserv_h+set}" = set; then
@@ -18718,6 +18739,8 @@
       if test "x${NBS_DIR}" != "x"; then
          NBS_LIB="${pbxlibdir} ${NBS_LIB}"
 	 NBS_INCLUDE="-I${NBS_DIR}/include"
+	 saved_cppflags="${CPPFLAGS}"
+	 CPPFLAGS="${CPPFLAGS} -I${NBS_DIR}/include"
 	 if test "xnbs.h" != "x" ; then
 	    as_ac_Header=`echo "ac_cv_header_${NBS_DIR}/include/nbs.h" | $as_tr_sh`
 if { as_var=$as_ac_Header; eval "test \"\${$as_var+set}\" = set"; }; then
@@ -18855,6 +18878,7 @@
 
 
 	 fi
+	 CPPFLAGS="${saved_cppflags}"
       else
 	 if test "xnbs.h" != "x" ; then
             if test "${ac_cv_header_nbs_h+set}" = set; then
@@ -19114,6 +19138,8 @@
       if test "x${NCURSES_DIR}" != "x"; then
          NCURSES_LIB="${pbxlibdir} ${NCURSES_LIB}"
 	 NCURSES_INCLUDE="-I${NCURSES_DIR}/include"
+	 saved_cppflags="${CPPFLAGS}"
+	 CPPFLAGS="${CPPFLAGS} -I${NCURSES_DIR}/include"
 	 if test "xcurses.h" != "x" ; then
 	    as_ac_Header=`echo "ac_cv_header_${NCURSES_DIR}/include/curses.h" | $as_tr_sh`
 if { as_var=$as_ac_Header; eval "test \"\${$as_var+set}\" = set"; }; then
@@ -19251,6 +19277,7 @@
 
 
 	 fi
+	 CPPFLAGS="${saved_cppflags}"
       else
 	 if test "xcurses.h" != "x" ; then
             if test "${ac_cv_header_curses_h+set}" = set; then
@@ -19650,7 +19677,7 @@
    fi
 fi
 if test x"${NETSNMP_CONFIG}" != xNo; then
-   NETSNMP_libs=`net-snmp-config --agent-libs`
+   NETSNMP_libs=`${NETSNMP_CONFIG} --agent-libs`
 
    { echo "$as_me:$LINENO: checking for snmp_register_callback in -lnetsnmp" >&5
 echo $ECHO_N "checking for snmp_register_callback in -lnetsnmp... $ECHO_C" >&6; }
@@ -19834,6 +19861,8 @@
       if test "x${NEWT_DIR}" != "x"; then
          NEWT_LIB="${pbxlibdir} ${NEWT_LIB}"
 	 NEWT_INCLUDE="-I${NEWT_DIR}/include"
+	 saved_cppflags="${CPPFLAGS}"
+	 CPPFLAGS="${CPPFLAGS} -I${NEWT_DIR}/include"
 	 if test "xnewt.h" != "x" ; then
 	    as_ac_Header=`echo "ac_cv_header_${NEWT_DIR}/include/newt.h" | $as_tr_sh`
 if { as_var=$as_ac_Header; eval "test \"\${$as_var+set}\" = set"; }; then
@@ -19971,6 +20000,7 @@
 
 
 	 fi
+	 CPPFLAGS="${saved_cppflags}"
       else
 	 if test "xnewt.h" != "x" ; then
             if test "${ac_cv_header_newt_h+set}" = set; then
@@ -20230,6 +20260,8 @@
       if test "x${UNIXODBC_DIR}" != "x"; then
          UNIXODBC_LIB="${pbxlibdir} ${UNIXODBC_LIB}"
 	 UNIXODBC_INCLUDE="-I${UNIXODBC_DIR}/include"
+	 saved_cppflags="${CPPFLAGS}"
+	 CPPFLAGS="${CPPFLAGS} -I${UNIXODBC_DIR}/include"
 	 if test "xsql.h" != "x" ; then
 	    as_ac_Header=`echo "ac_cv_header_${UNIXODBC_DIR}/include/sql.h" | $as_tr_sh`
 if { as_var=$as_ac_Header; eval "test \"\${$as_var+set}\" = set"; }; then
@@ -20367,6 +20399,7 @@
 
 
 	 fi
+	 CPPFLAGS="${saved_cppflags}"
       else
 	 if test "xsql.h" != "x" ; then
             if test "${ac_cv_header_sql_h+set}" = set; then
@@ -20626,6 +20659,8 @@
       if test "x${OGG_DIR}" != "x"; then
          OGG_LIB="${pbxlibdir} ${OGG_LIB}"
 	 OGG_INCLUDE="-I${OGG_DIR}/include"
+	 saved_cppflags="${CPPFLAGS}"
+	 CPPFLAGS="${CPPFLAGS} -I${OGG_DIR}/include"
 	 if test "x" != "x" ; then
 	    as_ac_Header=`echo "ac_cv_header_${OGG_DIR}/include/" | $as_tr_sh`
 if { as_var=$as_ac_Header; eval "test \"\${$as_var+set}\" = set"; }; then
@@ -20763,6 +20798,7 @@
 
 
 	 fi
+	 CPPFLAGS="${saved_cppflags}"
       else
 	 if test "x" != "x" ; then

[... 1583 lines stripped ...]


More information about the asterisk-commits mailing list