diff options
Diffstat (limited to 'ghc/misc/examples/posix/po010/Main.hs')
-rw-r--r-- | ghc/misc/examples/posix/po010/Main.hs | 24 |
1 files changed, 24 insertions, 0 deletions
diff --git a/ghc/misc/examples/posix/po010/Main.hs b/ghc/misc/examples/posix/po010/Main.hs new file mode 100644 index 0000000000..bfc890941f --- /dev/null +++ b/ghc/misc/examples/posix/po010/Main.hs @@ -0,0 +1,24 @@ +import LibPosix + +main = + getUserEntryForName "mattson" >>= \ mattson -> + getUserEntryForName "partain" >>= \ partain -> + putStr (ue2String mattson) >> + putChar '\n' >> + putStr (ue2String partain) >> + putChar '\n' >> + getUserEntryForID (userID mattson) >>= \ muid -> + getUserEntryForID (userID partain) >>= \ puid -> + putStr (ue2String muid) >> + putChar '\n' >> + putStr (ue2String puid) >> + putChar '\n' + +ue2String ue = + name ++ (':' : (show uid) ++ (':' : (show gid) ++ (':' : home ++ (':' : shell)))) + where + name = userName ue + uid = userID ue + gid = userGroupID ue + home = homeDirectory ue + shell = userShell ue
\ No newline at end of file |