diff options
author | Tim Potter <tpot@samba.org> | 2000-05-12 06:55:09 +0000 |
---|---|---|
committer | Tim Potter <tpot@samba.org> | 2000-05-12 06:55:09 +0000 |
commit | 75ebfc6f7a7692d772b729b2d83038a9054b4f90 (patch) | |
tree | 031b445348b62fdf40489fb2526c46506ee2c3ba /testsuite/nsswitch/getpwuid.c | |
parent | 053322d0ca6b68be638c2d5f4caa9909a19c1646 (diff) | |
download | samba-75ebfc6f7a7692d772b729b2d83038a9054b4f90.tar.gz samba-75ebfc6f7a7692d772b729b2d83038a9054b4f90.tar.xz samba-75ebfc6f7a7692d772b729b2d83038a9054b4f90.zip |
Merge from TNG.
(This used to be commit af5ded9f17addb4bc89ecb762b9b99d2f99463ab)
Diffstat (limited to 'testsuite/nsswitch/getpwuid.c')
-rw-r--r-- | testsuite/nsswitch/getpwuid.c | 43 |
1 files changed, 43 insertions, 0 deletions
diff --git a/testsuite/nsswitch/getpwuid.c b/testsuite/nsswitch/getpwuid.c new file mode 100644 index 00000000000..3f364df29d5 --- /dev/null +++ b/testsuite/nsswitch/getpwuid.c @@ -0,0 +1,43 @@ +/* + * Lookup a user by uid. + */ + +#include <stdio.h> +#include <pwd.h> +#include <sys/types.h> + +int main(int argc, char **argv) +{ + struct passwd *pw; + uid_t uid; + + /* Check args */ + + if (argc != 2) { + printf("ERROR: no arg specified\n"); + exit(1); + } + + if ((uid = atoi(argv[1])) == 0) { + printf("ERROR: invalid uid specified\n"); + exit(1); + } + + /* Do getpwuid() */ + + if ((pw = getpwuid(uid)) == NULL) { + printf("FAIL: uid %d does not exist\n", uid); + exit(1); + } + + printf("PASS: uid %d exists\n", uid); + printf("pw_name = %s\n", pw->pw_name); + printf("pw_passwd = %s\n", pw->pw_passwd); + printf("pw_uid = %d\n", pw->pw_uid); + printf("pw_gid = %d\n", pw->pw_gid); + printf("pw_gecos = %s\n", pw->pw_gecos); + printf("pw_dir = %s\n", pw->pw_dir); + printf("pw_shell = %s\n", pw->pw_shell); + + exit(0); +} |