[PATCH] parse-kickstart: fix "readfile", rename to "readsysfile"

Will Woods wwoods at redhat.com
Tue Jul 31 18:19:24 UTC 2012


Make "readfile" more clear about its intent (read one line, discard
errors). Rename it to "readsysfile" just so nobody gets confused about
what it's for.
---
 dracut/parse-kickstart | 30 ++++++++++++++----------------
 1 file changed, 14 insertions(+), 16 deletions(-)

diff --git a/dracut/parse-kickstart b/dracut/parse-kickstart
index 2d35560..13a0e8f 100755
--- a/dracut/parse-kickstart
+++ b/dracut/parse-kickstart
@@ -23,6 +23,15 @@ from collections import OrderedDict
 # Default logging: none
 log = logging.getLogger('parse-kickstart').addHandler(logging.NullHandler())
 
+# Helper function for reading simple files in /sys
+def readsysfile(f):
+    '''Return the contents of f, or "" if missing.'''
+    try:
+        val = open(f).readline().strip()
+    except IOError:
+        val = ""
+    return val
+
 # Here are the kickstart commands we care about:
 
 class Method(commands.method.F14_Method):
@@ -143,13 +152,9 @@ def is_mac(addr):
 
 def find_devname(mac):
     for netif in os.listdir("/sys/class/net"):
-        try:
-            thismac = readfile("/sys/class/net/%s/address" % netif)
-        except IOError:
-            pass
-        else:
-            if thismac.lower() == mac.lower():
-                return netif
+        thismac = readsysfile("/sys/class/net/%s/address" % netif)
+        if thismac.lower() == mac.lower():
+            return netif
 
 def ksnet_to_dracut(args, lineno, net, bootdev=False):
     '''Translate the kickstart network data into dracut network data.'''
@@ -218,13 +223,6 @@ def ksnet_to_dracut(args, lineno, net, bootdev=False):
 
     return " ".join(line)
 
-def readfile(f):
-    try:
-        val = open(f).readline().strip()
-    except IOError:
-        val = None
-    return val
-
 def ksnet_to_ifcfg(net, filename=None):
     '''Write an ifcfg file for the given kickstart network config'''
     dev = net.device
@@ -238,8 +236,8 @@ def ksnet_to_ifcfg(net, filename=None):
         if not os.path.isdir("/tmp/ifcfg"):
             os.makedirs("/tmp/ifcfg")
     ifcfg['DEVICE'] = dev
-    ifcfg['HWADDR'] = readfile("/sys/class/net/%s/address" % dev)
-    ifcfg['UUID'] = readfile("/proc/sys/kernel/random/uuid")
+    ifcfg['HWADDR'] = readsysfile("/sys/class/net/%s/address" % dev)
+    ifcfg['UUID'] = readsysfile("/proc/sys/kernel/random/uuid")
     ifcfg['ONBOOT'] = "yes" if net.onboot else "no"
 
     # dhcp etc.
-- 
1.7.11.2



More information about the anaconda-patches mailing list