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
Show replies by date
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.
Looks fine.
- Chris