dwww Home | Manual pages | Find package

getpw(3)                    Library Functions Manual                   getpw(3)

NAME
       getpw - reconstruct password line entry

LIBRARY
       Standard C library (libc, -lc)

SYNOPSIS
       #define _GNU_SOURCE             /* See feature_test_macros(7) */
       #include <sys/types.h>
       #include <pwd.h>

       [[deprecated]] int getpw(uid_t uid, char *buf);

DESCRIPTION
       The  getpw() function reconstructs the password line entry for the given
       user ID uid in the buffer buf.  The returned buffer contains a  line  of
       format

           name:passwd:uid:gid:gecos:dir:shell

       The passwd structure is defined in <pwd.h> as follows:

           struct passwd {
               char   *pw_name;       /* username */
               char   *pw_passwd;     /* user password */
               uid_t   pw_uid;        /* user ID */
               gid_t   pw_gid;        /* group ID */
               char   *pw_gecos;      /* user information */
               char   *pw_dir;        /* home directory */
               char   *pw_shell;      /* shell program */
           };

       For more information about the fields of this structure, see passwd(5).

RETURN VALUE
       The  getpw() function returns 0 on success; on error, it returns -1, and
       errno is set to indicate the error.

       If uid is not found in the password database, getpw() returns  -1,  sets
       errno to 0, and leaves buf unchanged.

ERRORS
       0 or ENOENT
              No user corresponding to uid.

       EINVAL buf is NULL.

       ENOMEM Insufficient memory to allocate passwd structure.

FILES
       /etc/passwd
              password database file

ATTRIBUTES
       For an explanation of the terms used in this section, see attributes(7).
       ┌─────────────────────────────────────┬───────────────┬────────────────┐
       │ Interface                           Attribute     Value          │
       ├─────────────────────────────────────┼───────────────┼────────────────┤
       │ getpw()                             │ Thread safety │ MT-Safe locale │
       └─────────────────────────────────────┴───────────────┴────────────────┘

STANDARDS
       None.

HISTORY
       SVr2.

BUGS
       The getpw() function is dangerous as it may overflow the provided buffer
       buf.  It is obsoleted by getpwuid(3).

SEE ALSO
       endpwent(3),  fgetpwent(3), getpwent(3), getpwnam(3), getpwuid(3), putp-
       went(3), setpwent(3), passwd(5)

Linux man-pages 6.9.1              2024-05-02                          getpw(3)

Generated by dwww version 1.16 on Tue Dec 16 04:19:05 CET 2025.