putpwent - Man Page

write a password file entry


#include <stdio.h>
#include <sys/types.h>
#include <pwd.h>

int putpwent(const struct passwd *restrict p, FILE *restrict stream);

Feature Test Macro Requirements for glibc (see feature_test_macros(7)):


    Since glibc 2.19:
    Glibc 2.19 and earlier:


The putpwent() function writes a password entry from the structure p in the file associated with stream.

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;       /* real name */
    char    *pw_dir;         /* home directory */
    char    *pw_shell;       /* shell program */

Return Value

The putpwent() function returns 0 on success. On failure, it returns -1, and errno is set to indicate the error.



Invalid (NULL) argument given.


For an explanation of the terms used in this section, see attributes(7).

putpwent()Thread safetyMT-Safe locale

Conforming to


See Also

endpwent(3), fgetpwent(3), getpw(3), getpwent(3), getpwnam(3), getpwuid(3), setpwent(3)


This page is part of release 5.13 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/.

Referenced By

fgetpwent(3), getpw(3), getpwent(3), getpwent_r(3), getpwnam(3).

2021-03-22 GNU Linux Programmer's Manual