[PATCH 08/17] Replace getLinkStatus() using new nm module
Radek Vykydal
rvykydal at redhat.com
Fri Feb 8 14:04:24 UTC 2013
---
pyanaconda/installclasses/fedora.py | 9 +++++++--
pyanaconda/network.py | 33 +++++++++++++++------------------
2 files changed, 22 insertions(+), 20 deletions(-)
diff --git a/pyanaconda/installclasses/fedora.py b/pyanaconda/installclasses/fedora.py
index 57153c9..bb77515 100644
--- a/pyanaconda/installclasses/fedora.py
+++ b/pyanaconda/installclasses/fedora.py
@@ -123,8 +123,13 @@ class InstallClass(BaseInstallClass):
# the default otherwise: bring up the first wired netdev with link
for devName in nm.nm_devices():
- if (not network.isWirelessDevice(devName) and
- network.getLinkStatus(devName)):
+ if network.isWirelessDevice(devName):
+ continue
+ try:
+ link_up = nm.nm_device_carrier(devName)
+ except ValueError as e:
+ continue
+ if link_up:
dev = network.NetworkDevice(ROOT_PATH + network.netscriptsDir, devName)
dev.loadIfcfgFile()
dev.set(('ONBOOT', 'yes'))
diff --git a/pyanaconda/network.py b/pyanaconda/network.py
index 1d779ba..4bf0d99 100644
--- a/pyanaconda/network.py
+++ b/pyanaconda/network.py
@@ -146,20 +146,6 @@ def getMacAddress(dev):
log.debug("getMacAddress %s: %s" % (dev, e))
return device_macaddr
-def getLinkStatus(dev):
- """Return carrier status of device, None if not found"""
-
- device_props_iface = getDeviceProperties(dev=dev)
- if device_props_iface is None:
- return None
-
- carrier = None
- try:
- carrier = device_props_iface.Get(NM_DEVICE_WIRED_IFACE, "Carrier").upper()
- except dbus.exceptions.DBusException as e:
- log.debug("getLinkStatus %s: %s" % (dev, e))
- return carrier
-
# Determine if a network device is a wireless device.
def isWirelessDevice(dev_name):
bus = dbus.SystemBus()
@@ -767,9 +753,15 @@ def get_ksdevice_name(ksspec=""):
if ksdevice == dev:
break
# "link"
- elif ksdevice == 'link' and getLinkStatus(dev):
- ksdevice = dev
- break
+ elif ksdevice == 'link':
+ try:
+ link_up = nm.nm_device_carrier(dev)
+ except ValueError as e:
+ log.debug("get_ksdevice_name: %s" % e)
+ continue
+ if link_up:
+ ksdevice = dev
+ break
# "XX:XX:XX:XX:XX:XX" (mac address)
elif ':' in ksdevice:
if ksdevice.upper() == getMacAddress(dev):
@@ -966,7 +958,12 @@ def get_device_name(devspec):
devname = ""
if devspec.lower() == "link":
for dev in sorted(devices):
- if getLinkStatus(dev):
+ try:
+ link_up = nm.nm_device_carrier(dev)
+ except ValueError as e:
+ log.debug("get_device_name: %s" % e)
+ continue
+ if link_up:
devname = dev
break
else:
--
1.7.11.7
More information about the anaconda-patches
mailing list