return map(lambda x: prefix + x, target(self, *args))
return wrapper
+
def exclude_task(func):
func.excluded = True
return func
+
class OSBase(object):
"""Basic operating system class"""
def __init__(self, rootdev, ghandler):
return users
+ def data_cleanup_passwords(self, print_header=True):
+ """Remove all passwords and lock all user accounts"""
+
+ if print_header:
+ output('Cleaning up passwords & locking all user accounts')
+
+ shadow = []
+
+ for line in self.g.cat('/etc/shadow').splitlines():
+ fields = line.split(':')
+ if fields[1] not in ('*', '!'):
+ fields[1] = '!'
+
+ shadow.append(":".join(fields))
+
+ self.g.write('/etc/shadow', "\n".join(shadow))
+
def data_cleanup_cache(self, print_header=True):
"""Remove all regular files under /var/cache"""