logo
Free, unlimited AI code reviews that run on commit
git-lrc git-lrc GitHub Install Now We'd appreciate a star git-lrc - Free, unlimited AI code reviews that run on commit | Product Hunt git-lrc - Free, unlimited AI code reviews that run on commit | Product Hunt

getpw - reconstruct password line entry

Attributes

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

Bugs

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

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).

Errors

0 or ENOENT
              No user corresponding to uid.

       EINVALbuf is NULL.

       ENOMEM Insufficient memory to allocate passwd structure.

Files

/etc/passwd
              password database file

History

       SVr2.

Library

       Standard C library (libc, -lc)

Name

       getpw - reconstruct password line entry

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.

See Also

endpwent(3), fgetpwent(3), getpwent(3), getpwnam(3), getpwuid(3), putpwent(3), setpwent(3), passwd(5)

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

Standards

       None.

Synopsis

#define_GNU_SOURCE             /* See feature_test_macros(7) */
       #include<sys/types.h>#include<pwd.h>[[deprecated]]intgetpw(uid_tuid,char*buf);

See Also