summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDan Williams <dcbw@redhat.com>2014-04-02 09:15:54 -0500
committerDan Williams <dcbw@redhat.com>2014-04-02 09:15:54 -0500
commit0b664ad4a4dc0e8acefdf53f8a9adb12bbd0cd29 (patch)
treed0cb84d0891c960963f668644ec25ab54f88290d
parentece92fe67a92824648022fadb4b0ec6fa74fc7ed (diff)
downloadNetworkManager-0b664ad4a4dc0e8acefdf53f8a9adb12bbd0cd29.tar.gz
core: fix bug with ignore-carrier and master/slave devices (rh #1083521)
Even ignore-carrier devices need to be aware of carrier-up events so they can continue DHCP when the link comes up. They just ignore all carrier-down events.
-rw-r--r--src/devices/nm-device.c8
1 files changed, 3 insertions, 5 deletions
diff --git a/src/devices/nm-device.c b/src/devices/nm-device.c
index 7e2f034ec8..0906da3ebe 100644
--- a/src/devices/nm-device.c
+++ b/src/devices/nm-device.c
@@ -1008,11 +1008,9 @@ carrier_changed (NMDevice *device, gboolean carrier)
nm_device_recheck_available_connections (device);
- if (priv->ignore_carrier) {
- /* Ignore all carrier-off, and ignore carrier-on on connected devices */
- if (!carrier || priv->state > NM_DEVICE_STATE_DISCONNECTED)
- return;
- }
+ /* ignore-carrier devices ignore all carrier-down events */
+ if (priv->ignore_carrier && !carrier)
+ return;
if (nm_device_is_master (device)) {
/* Bridge/bond/team carrier does not affect its own activation,