diff src/network.c @ 11336:7d7dd22215ec

[gaim-migrate @ 13549] STUN NAT discovery from gaim_network_get_public_ip committer: Tailor Script <tailor@pidgin.im>
author Thomas Butter <tbutter>
date Wed, 24 Aug 2005 20:45:20 +0000
parents bb0d7b719af2
children d3755a7ddd82
line wrap: on
line diff
--- a/src/network.c	Wed Aug 24 19:02:59 2005 +0000
+++ b/src/network.c	Wed Aug 24 20:45:20 2005 +0000
@@ -29,6 +29,7 @@
 #include "account.h"
 #include "network.h"
 #include "prefs.h"
+#include "stun.h"
 #include "upnp.h"
 
 const unsigned char *
@@ -67,11 +68,17 @@
 gaim_network_get_public_ip(void)
 {
 	const char *ip;
-
+	struct stun_nattype *stun;
+	
 	ip = gaim_prefs_get_string("/core/network/public_ip");
 
-	if (ip == NULL || *ip == '\0')
+	if (ip == NULL || *ip == '\0') {
+		/* Check if STUN discovery was already done */
+		stun = gaim_stun_discover(NULL);
+		if(stun && stun->status>1)
+			return stun->publicip;
 		return NULL;
+	}
 
 	return ip;
 }