diff libpurple/network.c @ 22875:4f6040bb6f7a

Update configure.ac to properly detect Network Manager (via NetworkManager.h instead of libnm_glib). Also, change the code so that if NetworkManager is dead, we'll assume we're connected to the network and try anyway.
author Richard Laager <rlaager@wiktel.com>
date Sat, 10 May 2008 03:32:58 +0000
parents 790c606ff8a9
children e6674df4cbf1
line wrap: on
line diff
--- a/libpurple/network.c	Sat May 10 03:29:15 2008 +0000
+++ b/libpurple/network.c	Sat May 10 03:32:58 2008 +0000
@@ -59,9 +59,9 @@
 #  define HX_SIZE_OF_IFREQ(a) sizeof(a)
 #endif
 
-#ifdef HAVE_LIBNM
+#ifdef HAVE_NETWORKMANAGER_NETWORKMANAGER_H
 #include <dbus/dbus-glib.h>
-#include <NetworkManager.h>
+#include <NetworkManager/NetworkManager.h>
 
 static DBusGConnection *nm_conn = NULL;
 static DBusGProxy *nm_proxy = NULL;
@@ -81,7 +81,7 @@
 	UPnPMappingAddRemove *mapping_data;
 };
 
-#ifdef HAVE_LIBNM
+#ifdef HAVE_NETWORKMANAGER_NETWORKMANAGER_H
 static NMState nm_get_network_state(void);
 #endif
 
@@ -593,12 +593,12 @@
 gboolean
 purple_network_is_available(void)
 {
-#ifdef HAVE_LIBNM
+#ifdef HAVE_NETWORKMANAGER_NETWORKMANAGER_H
 	/* Try NetworkManager first, maybe we'll get lucky */
 	if (nm_get_network_state() != NM_STATE_CONNECTED)
 	{
 		purple_debug_warning("network", "NetworkManager not active or reports no connection\n");
-		return FALSE;
+		return TRUE;
 	} else
 		return TRUE;
 #elif defined _WIN32
@@ -607,7 +607,7 @@
 	return TRUE;
 }
 
-#ifdef HAVE_LIBNM
+#ifdef HAVE_NETWORKMANAGER_NETWORKMANAGER_H
 static void
 nm_update_state(NMState state)
 {
@@ -695,7 +695,7 @@
 void
 purple_network_init(void)
 {
-#ifdef HAVE_LIBNM
+#ifdef HAVE_NETWORKMANAGER_NETWORKMANAGER_H
 	GError *error = NULL;
 #endif
 #ifdef _WIN32
@@ -724,7 +724,7 @@
 	if(purple_prefs_get_bool("/purple/network/map_ports") || purple_prefs_get_bool("/purple/network/auto_ip"))
 		purple_upnp_discover(NULL, NULL);
 
-#ifdef HAVE_LIBNM
+#ifdef HAVE_NETWORKMANAGER_NETWORKMANAGER_H
 	nm_conn = dbus_g_bus_get(DBUS_BUS_SYSTEM, &error);
 	if (!nm_conn) {
 		purple_debug_warning("network", "Error connecting to DBus System service: %s.\n", error->message);
@@ -757,7 +757,7 @@
 void
 purple_network_uninit(void)
 {
-#ifdef HAVE_LIBNM
+#ifdef HAVE_NETWORKMANAGER_NETWORKMANAGER_H
 	if (nm_proxy) {
 		dbus_g_proxy_disconnect_signal(nm_proxy, NM_DBUS_SIGNAL_STATE_CHANGE, G_CALLBACK(nm_state_change_cb), NULL);
 		g_object_unref(G_OBJECT(nm_proxy));