| #ifndef _PWD_H |
| #define _PWD_H |
| |
| #ifdef __cplusplus |
| extern "C" { |
| #endif |
| |
| #include <features.h> |
| |
| #define __NEED_size_t |
| #define __NEED_uid_t |
| #define __NEED_gid_t |
| |
| #ifdef _GNU_SOURCE |
| #define __NEED_FILE |
| #endif |
| |
| #include <bits/alltypes.h> |
| |
| struct passwd { |
| char *pw_name; |
| char *pw_passwd; |
| uid_t pw_uid; |
| gid_t pw_gid; |
| char *pw_gecos; |
| char *pw_dir; |
| char *pw_shell; |
| }; |
| |
| #if defined(_XOPEN_SOURCE) || defined(_GNU_SOURCE) || defined(_BSD_SOURCE) |
| void setpwent (void); |
| void endpwent (void); |
| struct passwd *getpwent (void); |
| #endif |
| |
| struct passwd *getpwuid (uid_t); |
| struct passwd *getpwnam (const char *); |
| int getpwuid_r (uid_t, struct passwd *, char *, size_t, struct passwd **); |
| int getpwnam_r (const char *, struct passwd *, char *, size_t, struct passwd **); |
| |
| #ifdef _GNU_SOURCE |
| struct passwd *fgetpwent(FILE *); |
| int putpwent(const struct passwd *, FILE *); |
| #endif |
| |
| #ifdef __cplusplus |
| } |
| #endif |
| |
| #endif |