[Freeswitch-svn] [commit] r13563 - freeswitch/branches/brian/trunk/src

FreeSWITCH SVN brian at freeswitch.org
Tue Jun 2 17:33:59 PDT 2009


Author: brian
Date: Tue Jun  2 19:33:59 2009
New Revision: 13563

Log:
 merge trunk down 

Modified:
   freeswitch/branches/brian/trunk/src/switch_core.c
   freeswitch/branches/brian/trunk/src/switch_nat.c
   freeswitch/branches/brian/trunk/src/switch_xml.c

Modified: freeswitch/branches/brian/trunk/src/switch_core.c
==============================================================================
--- freeswitch/branches/brian/trunk/src/switch_core.c	(original)
+++ freeswitch/branches/brian/trunk/src/switch_core.c	Tue Jun  2 19:33:59 2009
@@ -1176,6 +1176,12 @@
 	runtime.flags = flags;
 	runtime.sps_total = 30;
 
+	*err = NULL;
+
+	if (console) {
+		runtime.console = stdout;
+	}
+
 	switch_find_local_ip(guess_ip, sizeof(guess_ip), &mask, AF_INET);
 	switch_core_set_variable("local_ip_v4", guess_ip);
 	switch_core_set_variable("local_mask_v4", inet_ntoa(*(struct in_addr *)&mask));
@@ -1188,25 +1194,21 @@
 
 	switch_event_init(runtime.memory_pool);
 
-	if (switch_test_flag((&runtime), SCF_USE_AUTO_NAT)) {
-		switch_nat_init(runtime.memory_pool);
-	}
-
 	if (switch_xml_init(runtime.memory_pool, err) != SWITCH_STATUS_SUCCESS) {
 		apr_terminate();
 		return SWITCH_STATUS_MEMERR;
 	}
 
-	switch_load_core_config("switch.conf");
-
+	if (switch_test_flag((&runtime), SCF_USE_AUTO_NAT)) {
+		switch_nat_init(runtime.memory_pool);
+	}
+	
 	switch_log_init(runtime.memory_pool, runtime.colorize_console);
-	switch_core_state_machine_init(runtime.memory_pool);
 
-	*err = NULL;
+	switch_load_core_config("switch.conf");
 
-	if (console) {
-		runtime.console = stdout;
-	}
+
+	switch_core_state_machine_init(runtime.memory_pool);
 
 	if (switch_test_flag((&runtime), SCF_USE_SQL)) {
 		switch_core_sqldb_start(runtime.memory_pool);

Modified: freeswitch/branches/brian/trunk/src/switch_nat.c
==============================================================================
--- freeswitch/branches/brian/trunk/src/switch_nat.c	(original)
+++ freeswitch/branches/brian/trunk/src/switch_nat.c	Tue Jun  2 19:33:59 2009
@@ -101,11 +101,11 @@
 
 static int init_pmp(void)
 {
-	int r = 0;
+	int r = 0, i = 0, max = 5;
 	natpmpresp_t response;
 	char *pubaddr = NULL;
 	fd_set fds;
-	struct timeval timeout;
+
 
 	initnatpmp(&nat_globals.natpmp);
 	r = sendpublicaddressrequest(&nat_globals.natpmp);
@@ -115,12 +115,16 @@
 	}
 
 	do {
+		struct timeval timeout = { 1, 0};
+		i++;
+		switch_log_printf(SWITCH_CHANNEL_LOG, SWITCH_LOG_DEBUG, "Checking for PMP %d/%d\n", i, max);
+
 		FD_ZERO(&fds);
 		FD_SET(nat_globals.natpmp.s, &fds);
 		getnatpmprequesttimeout(&nat_globals.natpmp, &timeout);
 		select(FD_SETSIZE, &fds, NULL, NULL, &timeout);
 		r = readnatpmpresponseorretry(&nat_globals.natpmp, &response);
-	} while(r == NATPMP_TRYAGAIN);
+	} while(r == NATPMP_TRYAGAIN && i < max);
 
 	if (r < 0) {
 		goto end;
@@ -146,9 +150,13 @@
 
 	switch_find_local_ip(nat_globals.pvt_addr, sizeof(nat_globals.pvt_addr), NULL, AF_INET);
 
+
+	switch_log_printf(SWITCH_CHANNEL_LOG, SWITCH_LOG_INFO, "Scanning for NAT\n");
+
 	init_pmp();
 
 	if (!nat_globals.nat_type) {
+		switch_log_printf(SWITCH_CHANNEL_LOG, SWITCH_LOG_DEBUG, "Checking for UPnP\n");
 		init_upnp();
 	}
 	
@@ -156,8 +164,9 @@
 		switch_core_set_variable("nat_public_addr", nat_globals.pub_addr);
 		switch_core_set_variable("nat_private_addr", nat_globals.pvt_addr);
 		switch_core_set_variable("nat_type", nat_globals.nat_type == SWITCH_NAT_TYPE_PMP ? "pmp" : "upnp");
+		switch_log_printf(SWITCH_CHANNEL_LOG, SWITCH_LOG_INFO, "NAT detected type: %s\n", nat_globals.nat_type == SWITCH_NAT_TYPE_PMP ? "pmp" : "upnp");
 	} else {
-		switch_log_printf(SWITCH_CHANNEL_LOG, SWITCH_LOG_DEBUG, "No PMP or uPNP NAT device detected!\n");
+		switch_log_printf(SWITCH_CHANNEL_LOG, SWITCH_LOG_INFO, "No PMP or UPnP NAT detected!\n");
 	}
 }
 

Modified: freeswitch/branches/brian/trunk/src/switch_xml.c
==============================================================================
--- freeswitch/branches/brian/trunk/src/switch_xml.c	(original)
+++ freeswitch/branches/brian/trunk/src/switch_xml.c	Tue Jun  2 19:33:59 2009
@@ -1287,8 +1287,8 @@
 		char *bp = expand_vars(buf, ebuf, sizeof(ebuf), &cur, &err);
 		line++;
 		
-		if (err && stderr) {
-			fprintf(stderr, "Error [%s] in file %s line %d\n", err, file, line);
+		if (err) {
+			switch_log_printf(SWITCH_CHANNEL_LOG, SWITCH_LOG_ERROR, "Error [%s] in file %s line %d\n", err, file, line);
 		}
 
 		/* we ignore <include> or </include> for the sake of validators as well as <?xml version="1.0"?> type stuff */



More information about the Freeswitch-svn mailing list