[rhel7-branch 1/1] Always quote values in ifcfg- files (#1279131)
bcl
installerbot-noreply at redhat.com
Tue Nov 10 00:59:17 UTC 2015
From: "Brian C. Lane" <bcl at redhat.com>
parse-kickstart doesn't use SimpleConfig and wasn't quoting everything.
These files are shell executables so everything needs to be quoted to
prevent accidentally trying to run unexpected binaries.
Resolves: rhbz#1279131
---
dracut/parse-kickstart | 10 +++++-----
1 file changed, 5 insertions(+), 5 deletions(-)
diff --git a/dracut/parse-kickstart b/dracut/parse-kickstart
index f652f9e..c6f5713 100755
--- a/dracut/parse-kickstart
+++ b/dracut/parse-kickstart
@@ -458,7 +458,7 @@ def ksnet_to_ifcfg(net, filename=None):
sep = ";"
else:
sep = ","
- ifcfg['BONDING_OPTS'] = '"' + " ".join(net.bondopts.split(sep)) + '"'
+ ifcfg['BONDING_OPTS'] = " ".join(net.bondopts.split(sep))
for i, slave in enumerate(net.bondslaves.split(","), 1):
slave_ifcfg = {
@@ -479,7 +479,7 @@ def ksnet_to_ifcfg(net, filename=None):
ifcfg.pop('HWADDR', None)
ifcfg['TYPE'] = "Team"
ifcfg['NAME'] = "Team connection %s" % dev
- ifcfg['TEAM_CONFIG'] = "'" + net.teamconfig + "'"
+ ifcfg['TEAM_CONFIG'] = net.teamconfig
for i, (slave, cfg) in enumerate(net.teamslaves):
slave_ifcfg = {
@@ -492,7 +492,7 @@ def ksnet_to_ifcfg(net, filename=None):
# 'HWADDR' : readsysfile("/sys/class/net/%s/address" % slave),
}
if cfg:
- slave_ifcfg['TEAM_PORT_CONFIG'] = "'" + cfg + "'"
+ slave_ifcfg['TEAM_PORT_CONFIG'] = cfg
slave_filename = "/tmp/ifcfg/ifcfg-%s" % "_".join(slave_ifcfg['NAME'].split(" "))
log.info("writing ifcfg %s for slave %s of team %s" % (slave_filename, slave, dev))
@@ -520,7 +520,7 @@ def ksnet_to_ifcfg(net, filename=None):
ifcfg['DELAY'] = delay
if options:
keyvalues = ["%s=%s" % (key, options[key]) for key in options]
- ifcfg['BRIDGING_OPTS'] = '"' + " ".join(keyvalues) + '"'
+ ifcfg['BRIDGING_OPTS'] = " ".join(keyvalues)
for i, slave in enumerate(net.bridgeslaves.split(","), 1):
slave_ifcfg = {
@@ -555,7 +555,7 @@ def write_ifcfg(filename, ifcfg):
with open(filename, "w") as f:
f.write('# Generated by parse-kickstart\n')
for k,v in ifcfg.items():
- f.write("%s=%s\n" % (k,v))
+ f.write('%s="%s"\n' % (k,v.replace('"', '\\"')))
except IOError as e:
log.error("can't write %s: %s" % (filename, e))
return False
--
To view this commit on github, visit https://github.com/rhinstaller/anaconda/commit/3ad9418b0287d455909e1bdbd487c3e0d3f237c5
More information about the anaconda-patches
mailing list