Import Upstream version 20180207
[hcoop/debian/mlton.git] / runtime / basis / Posix / SysDB / Passwd.c
1 #include "platform.h"
2
3 static struct passwd *Posix_SysDB_Passwd_passwd;
4
5 C_String_t Posix_SysDB_Passwd_getName(void) {
6 return (C_String_t)(Posix_SysDB_Passwd_passwd->pw_name);
7 }
8
9 C_UId_t Posix_SysDB_Passwd_getUId(void) {
10 return Posix_SysDB_Passwd_passwd->pw_uid;
11 }
12
13 C_GId_t Posix_SysDB_Passwd_getGId(void) {
14 return Posix_SysDB_Passwd_passwd->pw_gid;
15 }
16
17 C_String_t Posix_SysDB_Passwd_getDir(void) {
18 return (C_String_t)(Posix_SysDB_Passwd_passwd->pw_dir);
19 }
20
21 C_String_t Posix_SysDB_Passwd_getShell(void) {
22 return (C_String_t)(Posix_SysDB_Passwd_passwd->pw_shell);
23 }
24
25 C_Errno_t(C_Int_t) Posix_SysDB_getpwnam(NullString8_t p) {
26 return NULL != (Posix_SysDB_Passwd_passwd = getpwnam((const char *) p));
27 }
28
29 C_Errno_t(C_Int_t) Posix_SysDB_getpwuid(C_UId_t u) {
30 return NULL != (Posix_SysDB_Passwd_passwd = getpwuid(u));
31 }