aboutsummaryrefslogtreecommitdiffhomepage
path: root/System/Posix/User.hsc
diff options
context:
space:
mode:
authorGravatar John Goerzen <jgoerzen@complete.org>2006-08-29 18:55:36 +0000
committerGravatar John Goerzen <jgoerzen@complete.org>2006-08-29 18:55:36 +0000
commit20f1f4a35b77f9a512af99e275a8c926a08fad09 (patch)
tree340cca97c9455231ccf68a2520d1a1ff961f07bd /System/Posix/User.hsc
parent9d18a98eeea793efdb4b5869e25259349cc82dd8 (diff)
Add missing field gr_passwd to GroupEntry
Diffstat (limited to 'System/Posix/User.hsc')
-rw-r--r--System/Posix/User.hsc4
1 files changed, 3 insertions, 1 deletions
diff --git a/System/Posix/User.hsc b/System/Posix/User.hsc
index c13d7bd..cfa0879 100644
--- a/System/Posix/User.hsc
+++ b/System/Posix/User.hsc
@@ -146,6 +146,7 @@ getEffectiveUserName = do
data GroupEntry =
GroupEntry {
groupName :: String,
+ groupPassword :: String,
groupID :: GroupID,
groupMembers :: [String]
}
@@ -209,10 +210,11 @@ grBufSize = 2048 -- just assume some value (1024 is too small on OpenBSD)
unpackGroupEntry :: Ptr CGroup -> IO GroupEntry
unpackGroupEntry ptr = do
name <- (#peek struct group, gr_name) ptr >>= peekCString
+ passwd <- (#peek struct group, gr_passwd) ptr >>= peekCString
gid <- (#peek struct group, gr_gid) ptr
mem <- (#peek struct group, gr_mem) ptr
members <- peekArray0 nullPtr mem >>= mapM peekCString
- return (GroupEntry name gid members)
+ return (GroupEntry name passwd gid members)
-- -----------------------------------------------------------------------------
-- The user database (pwd.h)