Commit 5f7e1e0c authored by Nikos Skalkotos's avatar Nikos Skalkotos
Browse files

Do not allow empty USERS metadata fields

If snf-image-creator does not find any passworded user, then the
USERS metadata field is not created at all.
parent dbf466eb
......@@ -51,6 +51,11 @@ class Unix(OSBase):
super(Unix, self).__init__(rootdev, ghandler, output)
self.meta["USERS"] = " ".join(self._get_passworded_users())
# Delete the USERS metadata if empty
if not len(self.meta['USERS']):
self.out.warn("No passworded users found!")
del self.meta['USERS']
def _get_passworded_users(self):
users = []
......@@ -77,6 +82,9 @@ class Unix(OSBase):
self.out.output("Removing all user accounts with id greater than "
"1000")
if 'USERS' not in self.meta:
return
# Remove users from /etc/passwd
passwd = []
removed_users = {}
......@@ -92,6 +100,11 @@ class Unix(OSBase):
passwd.append(':'.join(fields))
self.meta['USERS'] = " ".join(metadata_users)
# Delete the USERS metadata if empty
if not len(self.meta['USERS']):
del self.meta['USERS']
self.g.write('/etc/passwd', '\n'.join(passwd) + '\n')
# Remove the corresponding /etc/shadow entries
......
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment