From aa44d70038e7ea53ef9517255750638fececd736 Mon Sep 17 00:00:00 2001 From: Dan Williams Date: Wed, 14 May 2008 01:55:49 +0000 Subject: [PATCH] 2008-05-13 Dan Williams * src/nm-device-private.h src/nm-device.c - (nm_device_hw_bring_up, nm_device_hw_take_down): export * src/nm-device-802-11-wireless.c - (nm_device_802_11_wireless_set_enabled): take devices up and down as appropriate for the rfkill state git-svn-id: http://svn-archive.gnome.org/svn/NetworkManager/trunk@3666 4912f4e0-d625-0410-9fb7-b9a5a253dbdc --- ChangeLog | 10 ++++++++++ src/nm-device-802-11-wireless.c | 7 +++++-- src/nm-device-private.h | 4 ++++ src/nm-device.c | 4 ++-- 4 files changed, 21 insertions(+), 4 deletions(-) diff --git a/ChangeLog b/ChangeLog index caa227d3f0..c1718d2e29 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,13 @@ +2008-05-13 Dan Williams + + * src/nm-device-private.h + src/nm-device.c + - (nm_device_hw_bring_up, nm_device_hw_take_down): export + + * src/nm-device-802-11-wireless.c + - (nm_device_802_11_wireless_set_enabled): take devices up + and down as appropriate for the rfkill state + 2008-05-13 Dan Williams * marshallers/nm-marshal.list diff --git a/src/nm-device-802-11-wireless.c b/src/nm-device-802-11-wireless.c index f74ff5ed2d..d74e9e8fb7 100644 --- a/src/nm-device-802-11-wireless.c +++ b/src/nm-device-802-11-wireless.c @@ -3306,10 +3306,13 @@ nm_device_802_11_wireless_set_enabled (NMDevice80211Wireless *self, gboolean ena state = nm_device_interface_get_state (NM_DEVICE_INTERFACE (self)); if (state >= NM_DEVICE_STATE_UNAVAILABLE) { - if (enabled) + if (enabled) { + nm_device_hw_bring_up (NM_DEVICE (self), TRUE); nm_device_state_changed (NM_DEVICE (self), NM_DEVICE_STATE_DISCONNECTED); - else + } else { nm_device_state_changed (NM_DEVICE (self), NM_DEVICE_STATE_UNAVAILABLE); + nm_device_hw_take_down (NM_DEVICE (self), TRUE); + } } } diff --git a/src/nm-device-private.h b/src/nm-device-private.h index 00752fefc7..0494c8fa94 100644 --- a/src/nm-device-private.h +++ b/src/nm-device-private.h @@ -33,4 +33,8 @@ void nm_device_activate_schedule_stage3_ip_config_start (NMDevice *device); void nm_device_state_changed (NMDevice *device, NMDeviceState state); +gboolean nm_device_hw_bring_up (NMDevice *self, gboolean wait); + +void nm_device_hw_take_down (NMDevice *self, gboolean wait); + #endif /* NM_DEVICE_PRIVATE_H */ diff --git a/src/nm-device.c b/src/nm-device.c index 3b67db0db2..efe144a2b3 100644 --- a/src/nm-device.c +++ b/src/nm-device.c @@ -1386,7 +1386,7 @@ nm_device_is_up (NMDevice *self) return TRUE; } -static gboolean +gboolean nm_device_hw_bring_up (NMDevice *self, gboolean wait) { gboolean success; @@ -1423,7 +1423,7 @@ out: return TRUE; } -static void +void nm_device_hw_take_down (NMDevice *self, gboolean wait) { guint32 tries = 0;