[PATCH 10/17] Replace getMacAddress() using new nm module

Radek Vykydal rvykydal at redhat.com
Fri Feb 8 14:04:26 UTC 2013


---
 pyanaconda/bootloader.py |  3 ++-
 pyanaconda/network.py    | 37 ++++++++++++++++++-------------------
 2 files changed, 20 insertions(+), 20 deletions(-)

diff --git a/pyanaconda/bootloader.py b/pyanaconda/bootloader.py
index 0e6ee4f..8944e5b 100644
--- a/pyanaconda/bootloader.py
+++ b/pyanaconda/bootloader.py
@@ -36,6 +36,7 @@ from pyanaconda.constants import *
 from blivet.errors import StorageError
 from blivet.fcoe import fcoe
 import pyanaconda.network
+from pyanaconda.nm import nm_device_hwaddress
 from blivet import platform
 
 import gettext
@@ -842,7 +843,7 @@ class BootLoader(object):
         # Dracut needs the explicit ifname= because biosdevname
         # fails to rename the iface (because of BFS booting from it).
         for nic, dcb, auto_vlan in fcoe().nics:
-            hwaddr = network.getMacAddress(nic)
+            hwaddr = nm_device_hwaddress(nic)
             self.boot_args.add("ifname=%s:%s" % (nic, hwaddr.lower()))
 
         #
diff --git a/pyanaconda/network.py b/pyanaconda/network.py
index 9c9193a..f94c02a 100644
--- a/pyanaconda/network.py
+++ b/pyanaconda/network.py
@@ -130,22 +130,6 @@ def getDeviceProperties(dev=None):
     else:
         return None
 
-def getMacAddress(dev):
-    """Return MAC address of device. "" if not found"""
-    if dev == '' or dev is None:
-        return ""
-
-    device_props_iface = getDeviceProperties(dev=dev)
-    if device_props_iface is None:
-        return ""
-
-    device_macaddr = ""
-    try:
-        device_macaddr = device_props_iface.Get(NM_DEVICE_WIRED_IFACE, "HwAddress").upper()
-    except dbus.exceptions.DBusException as e:
-        log.debug("getMacAddress %s: %s" % (dev, e))
-    return device_macaddr
-
 # Get IP addresses for a network device.
 # Returns list of ipv4 or ipv6 addresses, depending
 # on version parameter. ipv4 is default.
@@ -746,12 +730,22 @@ def get_ksdevice_name(ksspec=""):
                 break
         # "XX:XX:XX:XX:XX:XX" (mac address)
         elif ':' in ksdevice:
-            if ksdevice.upper() == getMacAddress(dev):
+            try:
+                hwaddr = nm.nm_device_hwaddress(dev)
+            except ValueError as e:
+                log.debug("get_ksdevice_name: %s" % e)
+                continue
+            if ksdevice.lower() == hwaddr.lower():
                 ksdevice = dev
                 break
         # "bootif" and BOOTIF==XX:XX:XX:XX:XX:XX
         elif ksdevice == 'bootif':
-            if bootif_mac == getMacAddress(dev):
+            try:
+                hwaddr = nm.nm_device_hwaddress(dev)
+            except ValueError as e:
+                log.debug("get_ksdevice_name: %s" % e)
+                continue
+            if bootif_mac.lower() == hwaddr.lower():
                 ksdevice = dev
                 break
 
@@ -961,7 +955,12 @@ def get_device_name(devspec):
 
     if devname not in devices:
         for d in devices:
-            if getMacAddress(d).lower() == devname.lower():
+            try:
+                hwaddr = nm.nm_device_hwaddress(d)
+            except ValueError as e:
+                log.debug("get_device_name: %s" % e)
+                continue
+            if hwaddr.lower() == devname.lower():
                 devname = d
                 break
         else:
-- 
1.7.11.7



More information about the anaconda-patches mailing list