PWD.H(7) Miscellaneous Information Manual PWD.H(7)

pwd.hpassword structure

#include <pwd.h>

The <pwd.h> header shall define the struct passwd, structure, which shall include at least the following members:

char    *pw_name   User's login name.
uid_t    pw_uid    Numerical user ID.
gid_t    pw_gid    Numerical group ID.
char    *pw_dir    Initial working directory.
char    *pw_shell  Program to use as shell.

The <pwd.h> header shall define the gid_t, uid_t, and size_t types as described in <sys/types.h>.

The following shall be declared as functions and may also be defined as macros. Function prototypes shall be provided.

[XSI]
void           endpwent(void);
struct passwd *getpwent(void);

struct passwd *getpwnam(const char *);
int            getpwnam_r(const char *, struct passwd *, char *,
                   size_t, struct passwd **);
struct passwd *getpwuid(uid_t);
int            getpwuid_r(uid_t, struct passwd *, char *,
                   size_t, struct passwd **);
[XSI]
void           setpwent(void);

None.

None.

None.

<sys/types.h>

XSH endpwent(3), getpwnam(3), getpwuid(3)

First released in Issue 1.

The DESCRIPTION is updated for alignment with the POSIX Threads Extension.

The following new requirements on POSIX implementations derive from alignment with the Single UNIX Specification:

  • The gid_t and uid_t types are mandated.
  • The getpwnam_r(3) and getpwuid_r(3) functions are marked as part of the Thread-Safe Functions option.

SD5-XBD-ERN-56 is applied, adding a reference to <sys/types.h> for the size_t type.

January 1, 2016 posix.fail