#ifndef SYSROOT_PWD_H_
#define SYSROOT_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;
};

void setpwent(void);
void endpwent(void);
struct passwd* getpwent(void);

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  // SYSROOT_PWD_H_
