diff --git a/ChangeLog b/ChangeLog index fb9e54611..62d053844 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,8 @@ +2005-10-03 Robert Love + + * src/backends/NetworkManagerSuSE.c: Fix Glib error, GError must be + NULL. + 2005-10-02 Dan Williams * Shorten time taken to sleep by fastpathing bits of device deactivation diff --git a/gnome/applet/applet-dbus-devices.c b/gnome/applet/applet-dbus-devices.c index 1afe490dd..b39b0f643 100644 --- a/gnome/applet/applet-dbus-devices.c +++ b/gnome/applet/applet-dbus-devices.c @@ -662,6 +662,7 @@ static void nmwa_dbus_device_properties_cb (DBusPendingCall *pcall, void *user_d const char * broadcast = NULL; const char * subnetmask = NULL; const char * hw_addr = NULL; + const char * route = NULL; dbus_uint32_t mode = 0; dbus_int32_t strength = -1; char * active_network_path = NULL; @@ -693,6 +694,7 @@ static void nmwa_dbus_device_properties_cb (DBusPendingCall *pcall, void *user_d DBUS_TYPE_STRING, &subnetmask, DBUS_TYPE_STRING, &broadcast, DBUS_TYPE_STRING, &hw_addr, + DBUS_TYPE_STRING, &route, DBUS_TYPE_UINT32, &mode, DBUS_TYPE_INT32, &strength, DBUS_TYPE_BOOLEAN,&link_active, @@ -713,6 +715,7 @@ static void nmwa_dbus_device_properties_cb (DBusPendingCall *pcall, void *user_d network_device_set_ip4_address (dev, ip4_address); network_device_set_broadcast (dev, broadcast); network_device_set_netmask (dev, subnetmask); + network_device_set_route (dev, route); /* If the device already exists in our list for some reason, remove it so we * can add the new one with updated data. diff --git a/gnome/applet/applet.c b/gnome/applet/applet.c index b522172c0..cbc6894ea 100644 --- a/gnome/applet/applet.c +++ b/gnome/applet/applet.c @@ -189,7 +189,7 @@ static gboolean nmwa_update_info (NMWirelessApplet *applet) { GtkWidget *info_dialog; char *addr = NULL, *mask = NULL, *broadcast = NULL; - char *mac = NULL, *iface_and_type = NULL; + char *mac = NULL, *iface_and_type = NULL, *route = NULL; GtkWidget *label; const char *iface = NULL; NetworkDevice *dev; @@ -218,6 +218,7 @@ static gboolean nmwa_update_info (NMWirelessApplet *applet) broadcast = (char*) network_device_get_broadcast (dev); addr = (char*) network_device_get_ip4_address (dev); mask = (char*) network_device_get_netmask (dev); + route = (char*) network_device_get_route (dev); if (network_device_is_wired (dev)) iface_and_type = g_strdup_printf (_("Wired Ethernet (%s)"), iface); @@ -239,6 +240,9 @@ static gboolean nmwa_update_info (NMWirelessApplet *applet) label = get_label (info_dialog, applet->info_dialog_xml, "label-hardware-address"); gtk_label_set_text (GTK_LABEL (label), mac); + label = get_label (info_dialog, applet->info_dialog_xml, "label-default-route"); + gtk_label_set_text (GTK_LABEL (label), route); + g_free (iface_and_type); return TRUE; diff --git a/gnome/applet/nm-device.c b/gnome/applet/nm-device.c index 9fefd862f..1baeaba18 100644 --- a/gnome/applet/nm-device.c +++ b/gnome/applet/nm-device.c @@ -45,6 +45,7 @@ struct NetworkDevice char * broadcast; char * netmask; char * udi; + char * route; gint strength; GSList * networks; NMActStage act_stage; @@ -98,6 +99,7 @@ NetworkDevice *network_device_copy (NetworkDevice *src) dev->driver_support_level = src->driver_support_level; dev->iface = g_strdup (src->iface); dev->desc = g_strdup (src->desc); + dev->route = g_strdup (src->route); dev->udi = g_strdup (src->udi); dev->active = src->active; dev->act_stage = src->act_stage; @@ -148,6 +150,7 @@ void network_device_unref (NetworkDevice *dev) network_device_clear_wireless_networks (dev); g_free (dev->nm_path); g_free (dev->iface); + g_free (dev->route); g_free (dev->udi); g_free (dev->desc); g_free (dev->addr); @@ -470,6 +473,25 @@ void network_device_set_ip4_address (NetworkDevice *dev, const char *addr) dev->ip4addr = addr ? g_strdup (addr) : NULL; } +/* + * Accessors for default route + */ +const char *network_device_get_route (NetworkDevice *dev) +{ + g_return_val_if_fail (dev != NULL, NULL); + + return (dev->route); +} + +void network_device_set_route (NetworkDevice *dev, const char *route) +{ + g_return_if_fail (dev != NULL); + + if (dev->route) + g_free (dev->route); + dev->route = route ? g_strdup (route) : NULL; +} + /* * Accessors for driver support level */ diff --git a/gnome/applet/nm-device.h b/gnome/applet/nm-device.h index 782983bdb..c9defb0de 100644 --- a/gnome/applet/nm-device.h +++ b/gnome/applet/nm-device.h @@ -66,8 +66,11 @@ void network_device_set_broadcast (NetworkDevice *dev, const char *addr); const char * network_device_get_netmask (NetworkDevice *dev); void network_device_set_netmask (NetworkDevice *dev, const char *addr); -const char * network_device_get_ip4_address (NetworkDevice *dev); -void network_device_set_ip4_address (NetworkDevice *dev, const char *addr); +const char * network_device_get_ip4_address (NetworkDevice *dev); +void network_device_set_ip4_address (NetworkDevice *dev, const char *addr); + +const char * network_device_get_route (NetworkDevice *dev); +void network_device_set_route (NetworkDevice *dev, const char *route); NMDriverSupportLevel network_device_get_driver_support_level (NetworkDevice *dev); void network_device_set_driver_support_level (NetworkDevice *dev, NMDriverSupportLevel level); diff --git a/gnome/applet/wireless-applet.glade b/gnome/applet/wireless-applet.glade index cfad0e030..9a350ffd4 100644 --- a/gnome/applet/wireless-applet.glade +++ b/gnome/applet/wireless-applet.glade @@ -17,6 +17,7 @@ GDK_WINDOW_TYPE_HINT_DIALOG GDK_GRAVITY_NORTH_WEST True + False False @@ -172,6 +173,7 @@ You have chosen to log in to the wireless network '%s'. If you are sure that th GDK_WINDOW_TYPE_HINT_DIALOG GDK_GRAVITY_NORTH_WEST True + False False @@ -316,6 +318,7 @@ You have chosen to log in to the wireless network '%s'. If you are sure that th GDK_WINDOW_TYPE_HINT_DIALOG GDK_GRAVITY_NORTH_WEST True + False False @@ -618,6 +621,7 @@ You have chosen to log in to the wireless network '%s'. If you are sure that th 0.5 0 0 + passphrase_entry PANGO_ELLIPSIZE_NONE -1 False @@ -721,6 +725,7 @@ Hex key (WEP) GDK_WINDOW_TYPE_HINT_DIALOG GDK_GRAVITY_NORTH_WEST True + False False @@ -974,6 +979,7 @@ Hex Key (WEP) GDK_WINDOW_TYPE_HINT_DIALOG GDK_GRAVITY_NORTH_WEST True + False False @@ -1055,7 +1061,7 @@ Hex Key (WEP) 1 True - 9 + 10 2 False 3 @@ -1539,6 +1545,63 @@ Hex Key (WEP) + + + + True + Default Route: + False + False + GTK_JUSTIFY_LEFT + False + False + 0 + 0 + 0 + 0 + PANGO_ELLIPSIZE_NONE + -1 + False + 0 + + + 0 + 1 + 9 + 10 + fill + + + + + + + True + True + + False + False + GTK_JUSTIFY_LEFT + False + True + 0 + 0 + 0 + 0 + PANGO_ELLIPSIZE_NONE + -1 + False + 0 + + + 1 + 2 + 9 + 10 + fill + + + 0 diff --git a/src/backends/NetworkManagerSuSE.c b/src/backends/NetworkManagerSuSE.c index edf21172b..673d36506 100644 --- a/src/backends/NetworkManagerSuSE.c +++ b/src/backends/NetworkManagerSuSE.c @@ -765,7 +765,7 @@ GSList * nm_system_get_dialup_config (void) { GSList *list = NULL; const char *dentry; - GError *err; + GError *err = NULL; GDir *dir; dir = g_dir_open (SYSCONFDIR "/sysconfig/network", 0, &err); diff --git a/src/nm-dbus-device.c b/src/nm-dbus-device.c index f6b30bd19..a59d6e785 100644 --- a/src/nm-dbus-device.c +++ b/src/nm-dbus-device.c @@ -329,6 +329,7 @@ static DBusMessage *nm_dbus_device_get_properties (DBusConnection *connection, D gchar * ip4_address; gchar * broadcast; gchar * subnetmask; + gchar * route; struct ether_addr hw_addr; char hw_addr_buf[20]; char * hw_addr_buf_ptr = &hw_addr_buf[0]; @@ -358,6 +359,7 @@ static DBusMessage *nm_dbus_device_get_properties (DBusConnection *connection, D ip4_address = nm_utils_inet_ip4_address_as_string (nm_device_get_ip4_address (dev)); broadcast = nm_utils_inet_ip4_address_as_string (broadcast_addr); subnetmask = nm_utils_inet_ip4_address_as_string (subnetmask_addr); + route = g_strdup ("123.456.789.101"); if (nm_device_is_wireless (dev)) { @@ -369,13 +371,13 @@ static DBusMessage *nm_dbus_device_get_properties (DBusConnection *connection, D strength = (dbus_int32_t) nm_device_get_signal_strength (dev); mode = (dbus_uint32_t) nm_device_get_mode (dev); - if (req && (ap = nm_act_request_get_ap (req))) - { + if (req && (ap = nm_act_request_get_ap (req))) + { NMAccessPoint *tmp_ap; if ((tmp_ap = nm_device_ap_list_get_ap_by_essid (dev, nm_ap_get_essid (ap)))) active_network_path = nm_dbus_get_object_path_for_network (dev, tmp_ap); - } + } ap_list = nm_device_ap_list_get (dev); if (ap_list && (num_networks = nm_ap_list_size (ap_list))) @@ -411,6 +413,7 @@ static DBusMessage *nm_dbus_device_get_properties (DBusConnection *connection, D DBUS_TYPE_STRING, &subnetmask, DBUS_TYPE_STRING, &broadcast, DBUS_TYPE_STRING, &hw_addr_buf_ptr, + DBUS_TYPE_STRING, &route, DBUS_TYPE_UINT32, &mode, DBUS_TYPE_INT32, &strength, DBUS_TYPE_BOOLEAN,&link_active, @@ -421,6 +424,7 @@ static DBusMessage *nm_dbus_device_get_properties (DBusConnection *connection, D g_free (op); g_free (active_network_path); g_strfreev (networks); + g_free (route); g_free (ip4_address); g_free (broadcast); g_free (subnetmask);