Yolinux.com

getpw manpage

Search topic Section


GETPW(3)		   Linux Programmer's Manual		      GETPW(3)



NAME
       getpw - reconstruct password line entry

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

       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 |
       +----------+---------------+----------------+

CONFORMING TO
       SVr2.

BUGS
       The getpw() function is dangerous as it may overflow the provided  buf-
       fer 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)

COLOPHON
       This page is part of release 4.10 of the Linux  man-pages  project.   A
       description  of	the project, information about reporting bugs, and the
       latest	 version    of	  this	  page,	   can	   be	  found	    at
       https://www.kernel.org/doc/man-pages/.



GNU				  2015-07-23			      GETPW(3)