1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23
#include <sys/types.h> #include <pwd.h> #include "_pwd.h" struct passwd * getpwuid(uid_t uid) { struct passwd *pwd = NULL; setpwent(); while ((pwd = getpwent()) != NULL) { if (pwd->pw_uid == uid) { endpwent(); return pwd; } } endpwent(); return NULL; } /* POSIX(1) */