summaryrefslogtreecommitdiff
path: root/Property
diff options
context:
space:
mode:
authorJoey Hess2014-03-30 00:17:44 -0400
committerJoey Hess2014-03-30 00:17:44 -0400
commitb5284cc23fc7ce49a3f75762d6387c28dbb174eb (patch)
treec1b5f52cd353466510c3a9bdcb6980109f87b171 /Property
parent3121c1005945b167abb1bfd16379002802429158 (diff)
password locking
Diffstat (limited to 'Property')
-rw-r--r--Property/User.hs13
1 files changed, 13 insertions, 0 deletions
diff --git a/Property/User.hs b/Property/User.hs
index 3ab5f570..47d6fb5b 100644
--- a/Property/User.hs
+++ b/Property/User.hs
@@ -17,5 +17,18 @@ nonsystem user = check (isNothing <$> homedir user) $ cmdProperty "adduser"
, Param user
]
+{- Removes user home directory!! Use with caution. -}
+nuked :: UserName -> Property
+nuked user = check (isJust <$> homedir user) $ cmdProperty "userdel"
+ [ Param "-r"
+ , Param user
+ ]
+
+lockedPassword :: UserName -> Property
+lockedPassword user = cmdProperty "passwd"
+ [ Param "--lock"
+ , Param user
+ ]
+
homedir :: UserName -> IO (Maybe FilePath)
homedir user = catchMaybeIO $ homeDirectory <$> getUserEntryForName user