[Date Prev][Date Next] [Thread Prev][Thread Next]
[Thread Index]
[Date Index]
[Author Index]
[PATCH 5/5] NM no longer exposes information through HAL (#514501).
- From: Chris Lumens <clumens redhat com>
- To: anaconda-devel-list redhat com
- Cc:
- Subject: [PATCH 5/5] NM no longer exposes information through HAL (#514501).
- Date: Wed, 29 Jul 2009 14:50:45 -0400
We need to use dbus and udev now, instead of the HAL interface. In
the future, we need to adapt code from storage/udev.py to be less tied
to block devices, since network devices use this same interface now.
---
isys/isys.py | 31 ++++++++++++++-----------------
1 files changed, 14 insertions(+), 17 deletions(-)
diff --git a/isys/isys.py b/isys/isys.py
index 48909c7..f4aeaec 100755
--- a/isys/isys.py
+++ b/isys/isys.py
@@ -55,10 +55,6 @@ NM_STATE_CONNECTING = 2
NM_STATE_CONNECTED = 3
NM_STATE_DISCONNECTED = 4
-HAL_SERVICE = "org.freedesktop.Hal"
-HAL_PATH = "/org/freedesktop/Hal"
-HAL_DEVICE_IFACE = "org.freedesktop.Hal.Device"
-
DBUS_PROPS_IFACE = "org.freedesktop.DBus.Properties"
mountCount = {}
@@ -584,6 +580,7 @@ def getMacAddress(dev):
# Get a description string for a network device (e.g., eth0)
def getNetDevDesc(dev):
+ from storage.udev import udev_get_block_device
desc = "Network Interface"
if dev == '' or dev is None:
@@ -594,19 +591,19 @@ def getNetDevDesc(dev):
devlist = nm.get_dbus_method("GetDevices")()
for path in devlist:
- device = bus.get_object(HAL_SERVICE, path)
- device_iface = dbus.Interface(device, HAL_DEVICE_IFACE)
- device_props = device_iface.get_dbus_method("GetAllProperties")()
-
- if dev == device_props['net.interface']:
- if device_props.has_key('info.product'):
- if device_props.has_key('info.vendor'):
- desc = "%s %s" % (device_props['info.product'],
- device_props['info.vendor'],)
- else:
- desc = device_props['info.product']
- else:
- desc = device_props['info.udi']
+ device = bus.get_object(NM_SERVICE, path)
+ device_iface = dbus.Interface(device, DBUS_PROPS_IFACE)
+ device_props = device_iface.get_dbus_method("GetAll")(NM_DEVICE_IFACE)
+
+ if dev == device_props['Interface']:
+ # This is the sysfs path (for now).
+ udev_path = device_props['Udi']
+ dev = udev_get_block_device(udev_path, requireName=False)
+
+ if dev.has_key("ID_VENDOR_ENC") and dev.has_key("ID_MODEL_ENC"):
+ desc = "%s %s" % (dev["ID_VENDOR_ENC"], dev["ID_MODEL_ENC"])
+ elif dev.has_key("ID_VENDOR_FROM_DATABASE") and dev.has_key("ID_MODEL_FROM_DATABASE"):
+ desc = "%s %s" % (dev["ID_VENDOR_FROM_DATABASE"], dev["ID_MODEL_FROM_DATABASE"])
return desc
--
1.6.1.3
[Date Prev][Date Next] [Thread Prev][Thread Next]
[Thread Index]
[Date Index]
[Author Index]