diff options
author | No author <no_author@ocaml.org> | 1995-06-15 16:08:54 +0000 |
---|---|---|
committer | No author <no_author@ocaml.org> | 1995-06-15 16:08:54 +0000 |
commit | 77b1c8b89fd8940a63b17c41eb37161e5d159831 (patch) | |
tree | 43dbfb3982d9166b717199cb8faa97bdce30add7 /otherlibs/unix/getpw.c | |
parent | ba79d4bd1f01a70b892c69f6a5e6e86714a023d6 (diff) | |
download | ocaml-unlabeled-1.2.2.tar.gz |
This commit was manufactured by cvs2svn to create branchunlabeled-1.2.2
'unlabeled-1.2.2'.
git-svn-id: http://caml.inria.fr/svn/ocaml/branches/unlabeled-1.2.2@37 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
Diffstat (limited to 'otherlibs/unix/getpw.c')
-rw-r--r-- | otherlibs/unix/getpw.c | 47 |
1 files changed, 0 insertions, 47 deletions
diff --git a/otherlibs/unix/getpw.c b/otherlibs/unix/getpw.c deleted file mode 100644 index 86d27474ab..0000000000 --- a/otherlibs/unix/getpw.c +++ /dev/null @@ -1,47 +0,0 @@ -#include <mlvalues.h> -#include <alloc.h> -#include <memory.h> -#include <fail.h> -#include "unix.h" -#include <pwd.h> - -static value alloc_passwd_entry(entry) - struct passwd * entry; -{ - value res; - Push_roots(s, 5); - - s[0] = copy_string(entry->pw_name); - s[1] = copy_string(entry->pw_passwd); - s[2] = copy_string(entry->pw_gecos); - s[3] = copy_string(entry->pw_dir); - s[4] = copy_string(entry->pw_shell); - res = alloc_tuple(7); - Field(res,0) = s[0]; - Field(res,1) = s[1]; - Field(res,2) = Val_int(entry->pw_uid); - Field(res,3) = Val_int(entry->pw_gid); - Field(res,4) = s[2]; - Field(res,5) = s[3]; - Field(res,6) = s[4]; - Pop_roots(); - return res; -} - -value unix_getpwnam(name) /* ML */ - value name; -{ - struct passwd * entry; - entry = getpwnam(String_val(name)); - if (entry == (struct passwd *) NULL) mlraise(Atom(NOT_FOUND_EXN)); - return alloc_passwd_entry(entry); -} - -value unix_getpwuid(uid) /* ML */ - value uid; -{ - struct passwd * entry; - entry = getpwuid(Int_val(uid)); - if (entry == (struct passwd *) NULL) mlraise(Atom(NOT_FOUND_EXN)); - return alloc_passwd_entry(entry); -} |