+++ /dev/null
-# SOME DESCRIPTIVE TITLE
-# Copyright (C) YEAR Free Software Foundation, Inc.
-# This file is distributed under the same license as the PACKAGE package.
-# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
-#
-#, fuzzy
-msgid ""
-msgstr ""
-"Project-Id-Version: PACKAGE VERSION\n"
-"POT-Creation-Date: 2015-02-04 23:33+0900\n"
-"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
-"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
-"Language-Team: LANGUAGE <LL@li.org>\n"
-"Language: \n"
-"MIME-Version: 1.0\n"
-"Content-Type: text/plain; charset=UTF-8\n"
-"Content-Transfer-Encoding: 8bit\n"
-
-#. type: TH
-#: build/C/man3/fgetgrent.3:30
-#, no-wrap
-msgid "FGETGRENT"
-msgstr ""
-
-#. type: TH
-#: build/C/man3/fgetgrent.3:30 build/C/man3/getgrnam.3:33 build/C/man3/getgrouplist.3:29
-#, no-wrap
-msgid "2014-08-19"
-msgstr ""
-
-#. type: TH
-#: build/C/man3/fgetgrent.3:30 build/C/man3/fgetpwent.3:33 build/C/man3/getgrent_r.3:24 build/C/man3/getgrouplist.3:29 build/C/man3/getpw.3:32 build/C/man3/getpwent.3:33 build/C/man3/getpwent_r.3:24 build/C/man3/getpwnam.3:37 build/C/man3/getspnam.3:8 build/C/man3/initgroups.3:32 build/C/man3/putgrent.3:7 build/C/man3/putpwent.3:30 build/C/man3/setaliasent.3:9
-#, no-wrap
-msgid "GNU"
-msgstr ""
-
-#. type: TH
-#: build/C/man3/fgetgrent.3:30 build/C/man3/fgetpwent.3:33 build/C/man5/ftpusers.5:19 build/C/man3/getgrent.3:30 build/C/man3/getgrent_r.3:24 build/C/man3/getgrnam.3:33 build/C/man3/getgrouplist.3:29 build/C/man3/getpw.3:32 build/C/man3/getpwent.3:33 build/C/man3/getpwent_r.3:24 build/C/man3/getpwnam.3:37 build/C/man3/getspnam.3:8 build/C/man5/group.5:26 build/C/man3/initgroups.3:32 build/C/man5/passwd.5:30 build/C/man3/putgrent.3:7 build/C/man3/putpwent.3:30 build/C/man3/setaliasent.3:9
-#, no-wrap
-msgid "Linux Programmer's Manual"
-msgstr ""
-
-#. type: SH
-#: build/C/man3/fgetgrent.3:31 build/C/man3/fgetpwent.3:34 build/C/man5/ftpusers.5:20 build/C/man3/getgrent.3:31 build/C/man3/getgrent_r.3:25 build/C/man3/getgrnam.3:34 build/C/man3/getgrouplist.3:30 build/C/man3/getpw.3:33 build/C/man3/getpwent.3:34 build/C/man3/getpwent_r.3:25 build/C/man3/getpwnam.3:38 build/C/man3/getspnam.3:9 build/C/man5/group.5:27 build/C/man3/initgroups.3:33 build/C/man5/passwd.5:31 build/C/man3/putgrent.3:8 build/C/man3/putpwent.3:31 build/C/man3/setaliasent.3:10
-#, no-wrap
-msgid "NAME"
-msgstr ""
-
-#. type: Plain text
-#: build/C/man3/fgetgrent.3:33
-msgid "fgetgrent - get group file entry"
-msgstr ""
-
-#. type: SH
-#: build/C/man3/fgetgrent.3:33 build/C/man3/fgetpwent.3:36 build/C/man3/getgrent.3:33 build/C/man3/getgrent_r.3:27 build/C/man3/getgrnam.3:36 build/C/man3/getgrouplist.3:32 build/C/man3/getpw.3:35 build/C/man3/getpwent.3:36 build/C/man3/getpwent_r.3:27 build/C/man3/getpwnam.3:40 build/C/man3/getspnam.3:13 build/C/man3/initgroups.3:35 build/C/man3/putgrent.3:10 build/C/man3/putpwent.3:33 build/C/man3/setaliasent.3:13
-#, no-wrap
-msgid "SYNOPSIS"
-msgstr ""
-
-#. type: Plain text
-#: build/C/man3/fgetgrent.3:38
-#, no-wrap
-msgid ""
-"B<#include E<lt>stdio.hE<gt>>\n"
-"B<#include E<lt>sys/types.hE<gt>>\n"
-"B<#include E<lt>grp.hE<gt>>\n"
-msgstr ""
-
-#. type: Plain text
-#: build/C/man3/fgetgrent.3:40
-#, no-wrap
-msgid "B<struct group *fgetgrent(FILE *>I<stream>B<);>\n"
-msgstr ""
-
-#. type: Plain text
-#: build/C/man3/fgetgrent.3:45 build/C/man3/fgetpwent.3:48 build/C/man3/getgrent.3:48 build/C/man3/getgrent_r.3:43 build/C/man3/getgrnam.3:57 build/C/man3/getgrouplist.3:42 build/C/man3/getpwent.3:51 build/C/man3/getpwent_r.3:43 build/C/man3/getpwnam.3:61 build/C/man3/getspnam.3:61 build/C/man3/initgroups.3:46 build/C/man3/putpwent.3:45
-msgid "Feature Test Macro Requirements for glibc (see B<feature_test_macros>(7)):"
-msgstr ""
-
-#. type: Plain text
-#: build/C/man3/fgetgrent.3:49
-msgid "B<fgetgrent>(): _SVID_SOURCE"
-msgstr ""
-
-#. type: SH
-#: build/C/man3/fgetgrent.3:49 build/C/man3/fgetpwent.3:52 build/C/man5/ftpusers.5:22 build/C/man3/getgrent.3:68 build/C/man3/getgrent_r.3:51 build/C/man3/getgrnam.3:67 build/C/man3/getgrouplist.3:46 build/C/man3/getpw.3:43 build/C/man3/getpwent.3:62 build/C/man3/getpwent_r.3:50 build/C/man3/getpwnam.3:71 build/C/man3/getspnam.3:72 build/C/man5/group.5:29 build/C/man3/initgroups.3:50 build/C/man5/passwd.5:33 build/C/man3/putgrent.3:16 build/C/man3/putpwent.3:49 build/C/man3/setaliasent.3:31
-#, no-wrap
-msgid "DESCRIPTION"
-msgstr ""
-
-#. type: Plain text
-#: build/C/man3/fgetgrent.3:63
-msgid ""
-"The B<fgetgrent>() function returns a pointer to a structure containing the "
-"group information from the file referred to by I<stream>. The first time it "
-"is called it returns the first entry; thereafter, it returns successive "
-"entries. The file referred to by I<stream> must have the same format as "
-"I</etc/group> (see B<group>(5))."
-msgstr ""
-
-#. type: Plain text
-#: build/C/man3/fgetgrent.3:65 build/C/man3/getgrent.3:92 build/C/man3/getgrent_r.3:68 build/C/man3/getgrnam.3:86
-msgid "The I<group> structure is defined in I<E<lt>grp.hE<gt>> as follows:"
-msgstr ""
-
-#. type: Plain text
-#: build/C/man3/fgetgrent.3:75 build/C/man3/getgrent.3:102 build/C/man3/getgrent_r.3:78 build/C/man3/getgrnam.3:96
-#, no-wrap
-msgid ""
-"struct group {\n"
-" char *gr_name; /* group name */\n"
-" char *gr_passwd; /* group password */\n"
-" gid_t gr_gid; /* group ID */\n"
-" char **gr_mem; /* NULL-terminated array of pointers\n"
-" to names of group members */\n"
-"};\n"
-msgstr ""
-
-#. type: SH
-#: build/C/man3/fgetgrent.3:77 build/C/man3/fgetpwent.3:81 build/C/man3/getgrent.3:107 build/C/man3/getgrent_r.3:102 build/C/man3/getgrnam.3:137 build/C/man3/getgrouplist.3:78 build/C/man3/getpw.3:72 build/C/man3/getpwent.3:103 build/C/man3/getpwent_r.3:103 build/C/man3/getpwnam.3:143 build/C/man3/getspnam.3:216 build/C/man3/initgroups.3:68 build/C/man3/putgrent.3:41 build/C/man3/putpwent.3:70 build/C/man3/setaliasent.3:89
-#, no-wrap
-msgid "RETURN VALUE"
-msgstr ""
-
-#. type: Plain text
-#: build/C/man3/fgetgrent.3:87
-msgid ""
-"The B<fgetgrent>() function returns a pointer to a I<group> structure, or "
-"NULL if there are no more entries or an error occurs. In the event of an "
-"error, I<errno> is set to indicate the cause."
-msgstr ""
-
-#. type: SH
-#: build/C/man3/fgetgrent.3:87 build/C/man3/fgetpwent.3:91 build/C/man3/getgrent.3:130 build/C/man3/getgrent_r.3:109 build/C/man3/getgrnam.3:175 build/C/man3/getpw.3:88 build/C/man3/getpwent.3:125 build/C/man3/getpwent_r.3:110 build/C/man3/getpwnam.3:181 build/C/man3/getspnam.3:229 build/C/man3/initgroups.3:75 build/C/man3/putpwent.3:78
-#, no-wrap
-msgid "ERRORS"
-msgstr ""
-
-#. type: TP
-#: build/C/man3/fgetgrent.3:88 build/C/man3/fgetpwent.3:92 build/C/man3/getgrent.3:153 build/C/man3/getgrnam.3:197 build/C/man3/getpw.3:97 build/C/man3/getpwent.3:140 build/C/man3/getpwnam.3:203 build/C/man3/initgroups.3:76
-#, no-wrap
-msgid "B<ENOMEM>"
-msgstr ""
-
-#. not in POSIX
-#. to allocate the group structure, or to allocate buffers
-#. type: Plain text
-#: build/C/man3/fgetgrent.3:93 build/C/man3/getgrent.3:159 build/C/man3/getgrnam.3:204
-msgid "Insufficient memory to allocate I<group> structure."
-msgstr ""
-
-#. type: SH
-#: build/C/man3/fgetgrent.3:93 build/C/man3/fgetpwent.3:101 build/C/man3/getgrent.3:177 build/C/man3/getgrent_r.3:117 build/C/man3/getgrnam.3:224 build/C/man3/getgrouplist.3:98 build/C/man3/getpw.3:106 build/C/man3/getpwent.3:165 build/C/man3/getpwent_r.3:118 build/C/man3/getpwnam.3:230 build/C/man3/getspnam.3:249 build/C/man3/initgroups.3:88 build/C/man3/putgrent.3:43 build/C/man3/putpwent.3:82 build/C/man3/setaliasent.3:101
-#, no-wrap
-msgid "CONFORMING TO"
-msgstr ""
-
-#. type: Plain text
-#: build/C/man3/fgetgrent.3:95 build/C/man3/fgetpwent.3:103 build/C/man3/putpwent.3:84
-msgid "SVr4."
-msgstr ""
-
-#. type: SH
-#: build/C/man3/fgetgrent.3:95 build/C/man3/fgetpwent.3:103 build/C/man5/ftpusers.5:49 build/C/man3/getgrent.3:179 build/C/man3/getgrent_r.3:184 build/C/man3/getgrnam.3:247 build/C/man3/getgrouplist.3:189 build/C/man3/getpw.3:115 build/C/man3/getpwent.3:170 build/C/man3/getpwent_r.3:180 build/C/man3/getpwnam.3:326 build/C/man3/getspnam.3:253 build/C/man5/group.5:61 build/C/man3/initgroups.3:90 build/C/man5/passwd.5:162 build/C/man3/putgrent.3:45 build/C/man3/putpwent.3:84 build/C/man3/setaliasent.3:145
-#, no-wrap
-msgid "SEE ALSO"
-msgstr ""
-
-#. type: Plain text
-#: build/C/man3/fgetgrent.3:105
-msgid ""
-"B<endgrent>(3), B<fgetgrent_r>(3), B<fopen>(3), B<getgrent>(3), "
-"B<getgrgid>(3), B<getgrnam>(3), B<putgrent>(3), B<setgrent>(3), B<group>(5)"
-msgstr ""
-
-#. type: SH
-#: build/C/man3/fgetgrent.3:105 build/C/man3/fgetpwent.3:114 build/C/man5/ftpusers.5:53 build/C/man3/getgrent.3:187 build/C/man3/getgrent_r.3:191 build/C/man3/getgrnam.3:254 build/C/man3/getgrouplist.3:196 build/C/man3/getpw.3:124 build/C/man3/getpwent.3:178 build/C/man3/getpwent_r.3:188 build/C/man3/getpwnam.3:336 build/C/man3/getspnam.3:258 build/C/man5/group.5:67 build/C/man3/initgroups.3:94 build/C/man5/passwd.5:173 build/C/man3/putgrent.3:49 build/C/man3/putpwent.3:92 build/C/man3/setaliasent.3:154
-#, no-wrap
-msgid "COLOPHON"
-msgstr ""
-
-#. type: Plain text
-#: build/C/man3/fgetgrent.3:113 build/C/man3/fgetpwent.3:122 build/C/man5/ftpusers.5:61 build/C/man3/getgrent.3:195 build/C/man3/getgrent_r.3:199 build/C/man3/getgrnam.3:262 build/C/man3/getgrouplist.3:204 build/C/man3/getpw.3:132 build/C/man3/getpwent.3:186 build/C/man3/getpwent_r.3:196 build/C/man3/getpwnam.3:344 build/C/man3/getspnam.3:266 build/C/man5/group.5:75 build/C/man3/initgroups.3:102 build/C/man5/passwd.5:181 build/C/man3/putgrent.3:57 build/C/man3/putpwent.3:100 build/C/man3/setaliasent.3:162
-msgid ""
-"This page is part of release 3.79 of the Linux I<man-pages> project. A "
-"description of the project, information about reporting bugs, and the latest "
-"version of this page, can be found at "
-"\\%http://www.kernel.org/doc/man-pages/."
-msgstr ""
-
-#. type: TH
-#: build/C/man3/fgetpwent.3:33
-#, no-wrap
-msgid "FGETPWENT"
-msgstr ""
-
-#. type: TH
-#: build/C/man3/fgetpwent.3:33 build/C/man3/putpwent.3:30
-#, no-wrap
-msgid "2013-04-19"
-msgstr ""
-
-#. type: Plain text
-#: build/C/man3/fgetpwent.3:36
-msgid "fgetpwent - get password file entry"
-msgstr ""
-
-#. type: Plain text
-#: build/C/man3/fgetpwent.3:41 build/C/man3/putpwent.3:38
-#, no-wrap
-msgid ""
-"B<#include E<lt>stdio.hE<gt>>\n"
-"B<#include E<lt>sys/types.hE<gt>>\n"
-"B<#include E<lt>pwd.hE<gt>>\n"
-msgstr ""
-
-#. type: Plain text
-#: build/C/man3/fgetpwent.3:43
-#, no-wrap
-msgid "B<struct passwd *fgetpwent(FILE *>I<stream>B<);>\n"
-msgstr ""
-
-#. type: Plain text
-#: build/C/man3/fgetpwent.3:52
-msgid "B<fgetpwent>(): _SVID_SOURCE"
-msgstr ""
-
-#. type: Plain text
-#: build/C/man3/fgetpwent.3:65
-msgid ""
-"The B<fgetpwent>() function returns a pointer to a structure containing the "
-"broken out fields of a line in the file I<stream>. The first time it is "
-"called it returns the first entry; thereafter, it returns successive "
-"entries. The file referred to by I<stream> must have the same format as "
-"I</etc/passwd> (see B<passwd>(5))."
-msgstr ""
-
-#. type: Plain text
-#: build/C/man3/fgetpwent.3:67 build/C/man3/getpw.3:55 build/C/man3/getpwent.3:86 build/C/man3/getpwent_r.3:67 build/C/man3/getpwnam.3:90 build/C/man3/putpwent.3:56
-msgid "The I<passwd> structure is defined in I<E<lt>pwd.hE<gt>> as follows:"
-msgstr ""
-
-#. type: Plain text
-#: build/C/man3/fgetpwent.3:79
-#, no-wrap
-msgid ""
-"struct passwd {\n"
-" char *pw_name; /* username */\n"
-" char *pw_passwd; /* user password */\n"
-" uid_t pw_uid; /* user ID */\n"
-" gid_t pw_gid; /* group ID */\n"
-" char *pw_gecos; /* real name */\n"
-" char *pw_dir; /* home directory */\n"
-" char *pw_shell; /* shell program */\n"
-"};\n"
-msgstr ""
-
-#. type: Plain text
-#: build/C/man3/fgetpwent.3:91
-msgid ""
-"The B<fgetpwent>() function returns a pointer to a I<passwd> structure, or "
-"NULL if there are no more entries or an error occurs. In the event of an "
-"error, I<errno> is set to indicate the cause."
-msgstr ""
-
-#. not in POSIX
-#. This structure is static, allocated 0 or 1 times. No memory leak. (libc45)
-#. type: Plain text
-#: build/C/man3/fgetpwent.3:97 build/C/man3/getpw.3:102 build/C/man3/getpwent.3:147 build/C/man3/getpwnam.3:210
-msgid "Insufficient memory to allocate I<passwd> structure."
-msgstr ""
-
-#. type: SH
-#: build/C/man3/fgetpwent.3:97 build/C/man5/ftpusers.5:47 build/C/man3/getgrent.3:162 build/C/man3/getgrnam.3:207 build/C/man3/getpw.3:102 build/C/man3/getpwent.3:150 build/C/man3/getpwnam.3:213 build/C/man3/getspnam.3:236 build/C/man5/group.5:53 build/C/man3/initgroups.3:84 build/C/man5/passwd.5:142 build/C/man3/setaliasent.3:95
-#, no-wrap
-msgid "FILES"
-msgstr ""
-
-#. type: Plain text
-#: build/C/man3/fgetpwent.3:98 build/C/man3/getpw.3:103 build/C/man3/getpwent.3:151 build/C/man3/getpwnam.3:214 build/C/man5/passwd.5:144
-#, no-wrap
-msgid "I</etc/passwd>"
-msgstr ""
-
-#. type: Plain text
-#: build/C/man3/fgetpwent.3:101 build/C/man3/getpw.3:106
-msgid "password database file"
-msgstr ""
-
-#. type: Plain text
-#: build/C/man3/fgetpwent.3:114
-msgid ""
-"B<endpwent>(3), B<fgetpwent_r>(3), B<fopen>(3), B<getpw>(3), B<getpwent>(3), "
-"B<getpwnam>(3), B<getpwuid>(3), B<putpwent>(3), B<setpwent>(3), B<passwd>(5)"
-msgstr ""
-
-#. type: TH
-#: build/C/man5/ftpusers.5:19
-#, no-wrap
-msgid "FTPUSERS"
-msgstr ""
-
-#. type: TH
-#: build/C/man5/ftpusers.5:19
-#, no-wrap
-msgid "2000-08-27"
-msgstr ""
-
-#. type: TH
-#: build/C/man5/ftpusers.5:19 build/C/man5/group.5:26 build/C/man5/passwd.5:30
-#, no-wrap
-msgid "Linux"
-msgstr ""
-
-#. type: Plain text
-#: build/C/man5/ftpusers.5:22
-msgid "ftpusers - list of users that may not log in via the FTP daemon"
-msgstr ""
-
-#. type: Plain text
-#: build/C/man5/ftpusers.5:41
-msgid ""
-"The text file B<ftpusers> contains a list of users that may not log in using "
-"the File Transfer Protocol (FTP) server daemon. This file is used not "
-"merely for system administration purposes but for improving security within "
-"a TCP/IP networked environment. It will typically contain a list of the "
-"users that either have no business using ftp or have too many privileges to "
-"be allowed to log in through the FTP server daemon. Such users usually "
-"include root, daemon, bin, uucp, and news. If your FTP server daemon "
-"doesn't use B<ftpusers>, then it is suggested that you read its "
-"documentation to find out how to block access for certain users. Washington "
-"University FTP server Daemon (wuftpd) and Professional FTP Daemon (proftpd) "
-"are known to make use of B<ftpusers>."
-msgstr ""
-
-#. type: SS
-#: build/C/man5/ftpusers.5:41
-#, no-wrap
-msgid "Format"
-msgstr ""
-
-#. type: Plain text
-#: build/C/man5/ftpusers.5:47
-msgid ""
-"The format of B<ftpusers> is very simple. There is one account name (or "
-"username) per line. Lines starting with a # are ignored."
-msgstr ""
-
-#. type: Plain text
-#: build/C/man5/ftpusers.5:49
-msgid "I</etc/ftpusers>"
-msgstr ""
-
-#. type: Plain text
-#: build/C/man5/ftpusers.5:53
-msgid "B<passwd>(5), B<proftpd>(8), B<wuftpd>(8)"
-msgstr ""
-
-#. type: TH
-#: build/C/man3/getgrent.3:30
-#, no-wrap
-msgid "GETGRENT"
-msgstr ""
-
-#. type: TH
-#: build/C/man3/getgrent.3:30
-#, no-wrap
-msgid "2014-10-02"
-msgstr ""
-
-#. type: Plain text
-#: build/C/man3/getgrent.3:33
-msgid "getgrent, setgrent, endgrent - get group file entry"
-msgstr ""
-
-#. type: Plain text
-#: build/C/man3/getgrent.3:37 build/C/man3/getgrnam.3:40 build/C/man3/initgroups.3:39
-#, no-wrap
-msgid ""
-"B<#include E<lt>sys/types.hE<gt>>\n"
-"B<#include E<lt>grp.hE<gt>>\n"
-msgstr ""
-
-#. type: Plain text
-#: build/C/man3/getgrent.3:39
-#, no-wrap
-msgid "B<struct group *getgrent(void);>\n"
-msgstr ""
-
-#. type: Plain text
-#: build/C/man3/getgrent.3:41
-#, no-wrap
-msgid "B<void setgrent(void);>\n"
-msgstr ""
-
-#. type: Plain text
-#: build/C/man3/getgrent.3:43
-#, no-wrap
-msgid "B<void endgrent(void);>\n"
-msgstr ""
-
-#. type: Plain text
-#: build/C/man3/getgrent.3:53
-msgid "B<setgrent>():"
-msgstr ""
-
-#. type: Plain text
-#: build/C/man3/getgrent.3:56
-msgid ""
-"_SVID_SOURCE || _BSD_SOURCE || _XOPEN_SOURCE\\ E<gt>=\\ 500 || "
-"_XOPEN_SOURCE\\ &&\\ _XOPEN_SOURCE_EXTENDED ||"
-msgstr ""
-
-#. type: Plain text
-#: build/C/man3/getgrent.3:58
-msgid "/* Since glibc 2.12: */ _POSIX_C_SOURCE\\ E<gt>=\\ 200809L"
-msgstr ""
-
-#. type: Plain text
-#: build/C/man3/getgrent.3:62
-msgid "B<getgrent>(), B<endgrent>():"
-msgstr ""
-
-#. type: Plain text
-#: build/C/man3/getgrent.3:65
-msgid ""
-"_SVID_SOURCE || _BSD_SOURCE || _XOPEN_SOURCE\\ E<gt>=\\ 500 || "
-"_XOPEN_SOURCE\\ &&\\ _XOPEN_SOURCE_EXTENDED"
-msgstr ""
-
-#. type: Plain text
-#: build/C/man3/getgrent.3:80
-msgid ""
-"The B<getgrent>() function returns a pointer to a structure containing the "
-"broken-out fields of a record in the group database (e.g., the local group "
-"file I</etc/group>, NIS, and LDAP). The first time B<getgrent>() is "
-"called, it returns the first entry; thereafter, it returns successive "
-"entries."
-msgstr ""
-
-#. type: Plain text
-#: build/C/man3/getgrent.3:85
-msgid ""
-"The B<setgrent>() function rewinds to the beginning of the group database, "
-"to allow repeated scans."
-msgstr ""
-
-#. type: Plain text
-#: build/C/man3/getgrent.3:90
-msgid ""
-"The B<endgrent>() function is used to close the group database after all "
-"processing has been performed."
-msgstr ""
-
-#. type: Plain text
-#: build/C/man3/getgrent.3:107 build/C/man3/getgrent_r.3:83 build/C/man3/getgrnam.3:101
-msgid "For more information about the fields of this structure, see B<group>(5)."
-msgstr ""
-
-#. type: Plain text
-#: build/C/man3/getgrent.3:114
-msgid ""
-"The B<getgrent>() function returns a pointer to a I<group> structure, or "
-"NULL if there are no more entries or an error occurs."
-msgstr ""
-
-#. type: Plain text
-#: build/C/man3/getgrent.3:121
-msgid ""
-"Upon error, I<errno> may be set. If one wants to check I<errno> after the "
-"call, it should be set to zero before the call."
-msgstr ""
-
-#. type: Plain text
-#: build/C/man3/getgrent.3:130
-msgid ""
-"The return value may point to a static area, and may be overwritten by "
-"subsequent calls to B<getgrent>(), B<getgrgid>(3), or B<getgrnam>(3). (Do "
-"not pass the returned pointer to B<free>(3).)"
-msgstr ""
-
-#. type: TP
-#: build/C/man3/getgrent.3:131
-#, no-wrap
-msgid "B<EAGAIN>"
-msgstr ""
-
-#. type: Plain text
-#: build/C/man3/getgrent.3:136
-msgid ""
-"The service was temporarily unavailable; try again later. For NSS backends "
-"in glibc this indicates a temporary error talking to the backend. The error "
-"may correct itself, retrying later is suggested."
-msgstr ""
-
-#. type: TP
-#: build/C/man3/getgrent.3:136 build/C/man3/getgrnam.3:183 build/C/man3/getpwent.3:126 build/C/man3/getpwnam.3:189
-#, no-wrap
-msgid "B<EINTR>"
-msgstr ""
-
-#. type: Plain text
-#: build/C/man3/getgrent.3:139 build/C/man3/getgrnam.3:186 build/C/man3/getpwent.3:129 build/C/man3/getpwnam.3:192
-msgid "A signal was caught."
-msgstr ""
-
-#. type: TP
-#: build/C/man3/getgrent.3:139 build/C/man3/getgrnam.3:186 build/C/man3/getpwent.3:129 build/C/man3/getpwnam.3:192
-#, no-wrap
-msgid "B<EIO>"
-msgstr ""
-
-#. type: Plain text
-#: build/C/man3/getgrent.3:142 build/C/man3/getgrnam.3:189 build/C/man3/getpwent.3:132 build/C/man3/getpwnam.3:195
-msgid "I/O error."
-msgstr ""
-
-#. type: TP
-#: build/C/man3/getgrent.3:142 build/C/man3/getgrnam.3:189 build/C/man3/getpwent.3:132 build/C/man3/getpwnam.3:195
-#, no-wrap
-msgid "B<EMFILE>"
-msgstr ""
-
-#. type: Plain text
-#: build/C/man3/getgrent.3:145
-msgid "The calling process already has too many open files."
-msgstr ""
-
-#. type: TP
-#: build/C/man3/getgrent.3:145 build/C/man3/getgrnam.3:194 build/C/man3/getpwent.3:137 build/C/man3/getpwnam.3:200
-#, no-wrap
-msgid "B<ENFILE>"
-msgstr ""
-
-#. type: Plain text
-#: build/C/man3/getgrent.3:148
-msgid "Too many open files in the system."
-msgstr ""
-
-#. type: TP
-#: build/C/man3/getgrent.3:148 build/C/man3/getgrent_r.3:110 build/C/man3/getpwent_r.3:111
-#, no-wrap
-msgid "B<ENOENT>"
-msgstr ""
-
-#. type: Plain text
-#: build/C/man3/getgrent.3:153
-msgid ""
-"A necessary input file cannot be found. For NSS backends in glibc this "
-"indicates the backend is not correctly configured."
-msgstr ""
-
-#. type: TP
-#: build/C/man3/getgrent.3:159 build/C/man3/getgrent_r.3:113 build/C/man3/getgrnam.3:204 build/C/man3/getpwent.3:147 build/C/man3/getpwent_r.3:114 build/C/man3/getpwnam.3:210 build/C/man3/getspnam.3:233
-#, no-wrap
-msgid "B<ERANGE>"
-msgstr ""
-
-#. type: Plain text
-#: build/C/man3/getgrent.3:162 build/C/man3/getgrnam.3:207 build/C/man3/getpwent.3:150 build/C/man3/getpwnam.3:213
-msgid "Insufficient buffer space supplied."
-msgstr ""
-
-#. type: TP
-#: build/C/man3/getgrent.3:163 build/C/man3/getgrnam.3:208
-#, no-wrap
-msgid "I</etc/group>"
-msgstr ""
-
-#. type: Plain text
-#: build/C/man3/getgrent.3:166 build/C/man3/getgrnam.3:211
-msgid "local group database file"
-msgstr ""
-
-#. type: SH
-#: build/C/man3/getgrent.3:166 build/C/man3/getgrnam.3:211 build/C/man3/getpwent.3:154 build/C/man3/getpwnam.3:217
-#, no-wrap
-msgid "ATTRIBUTES"
-msgstr ""
-
-#. type: SS
-#: build/C/man3/getgrent.3:167 build/C/man3/getgrnam.3:212 build/C/man3/getpwent.3:155 build/C/man3/getpwnam.3:218
-#, no-wrap
-msgid "Multithreading (see pthreads(7))"
-msgstr ""
-
-#. type: Plain text
-#: build/C/man3/getgrent.3:171
-msgid "The B<getgrent>() function is not thread-safe."
-msgstr ""
-
-#. type: Plain text
-#: build/C/man3/getgrent.3:177
-msgid "The B<setgrent>() and B<endgrent>() functions are thread-safe."
-msgstr ""
-
-#. type: Plain text
-#: build/C/man3/getgrent.3:179 build/C/man3/getgrnam.3:226
-msgid "SVr4, 4.3BSD, POSIX.1-2001."
-msgstr ""
-
-#. type: Plain text
-#: build/C/man3/getgrent.3:187
-msgid ""
-"B<fgetgrent>(3), B<getgrent_r>(3), B<getgrgid>(3), B<getgrnam>(3), "
-"B<getgrouplist>(3), B<putgrent>(3), B<group>(5)"
-msgstr ""
-
-#. type: TH
-#: build/C/man3/getgrent_r.3:24
-#, no-wrap
-msgid "GETGRENT_R"
-msgstr ""
-
-#. type: TH
-#: build/C/man3/getgrent_r.3:24 build/C/man3/getpw.3:32 build/C/man3/getpwent_r.3:24 build/C/man3/getspnam.3:8 build/C/man3/putgrent.3:7
-#, no-wrap
-msgid "2015-01-22"
-msgstr ""
-
-#. type: Plain text
-#: build/C/man3/getgrent_r.3:27
-msgid "getgrent_r, fgetgrent_r - get group file entry reentrantly"
-msgstr ""
-
-#. type: Plain text
-#: build/C/man3/getgrent_r.3:30
-#, no-wrap
-msgid "B<#include E<lt>grp.hE<gt>>\n"
-msgstr ""
-
-#. type: Plain text
-#: build/C/man3/getgrent_r.3:32
-#, no-wrap
-msgid "B<int getgrent_r(struct group *>I<gbuf>B<, char *>I<buf>B<,>\n"
-msgstr ""
-
-#. type: Plain text
-#: build/C/man3/getgrent_r.3:34
-#, no-wrap
-msgid "B< size_t >I<buflen>B<, struct group **>I<gbufp>B<);>\n"
-msgstr ""
-
-#. type: Plain text
-#: build/C/man3/getgrent_r.3:36
-#, no-wrap
-msgid ""
-"B<int fgetgrent_r(FILE *>I<stream>B<, struct group *>I<gbuf>B<, char "
-"*>I<buf>B<,>\n"
-msgstr ""
-
-#. type: Plain text
-#: build/C/man3/getgrent_r.3:38
-#, no-wrap
-msgid "B< size_t >I<buflen>B<, struct group **>I<gbufp>B<);>\n"
-msgstr ""
-
-#. FIXME . The FTM requirements seem inconsistent here. File a glibc bug?
-#. type: Plain text
-#: build/C/man3/getgrent_r.3:48
-msgid "B<getgrent_r>(): _GNU_SOURCE"
-msgstr ""
-
-#. type: Plain text
-#: build/C/man3/getgrent_r.3:51
-msgid "B<fgetgrent_r>(): _SVID_SOURCE"
-msgstr ""
-
-#. type: Plain text
-#: build/C/man3/getgrent_r.3:64
-msgid ""
-"The functions B<getgrent_r>() and B<fgetgrent_r>() are the reentrant "
-"versions of B<getgrent>(3) and B<fgetgrent>(3). The former reads the next "
-"group entry from the stream initialized by B<setgrent>(3). The latter reads "
-"the next group entry from I<stream>."
-msgstr ""
-
-#. type: Plain text
-#: build/C/man3/getgrent_r.3:102
-msgid ""
-"The nonreentrant functions return a pointer to static storage, where this "
-"static storage contains further pointers to group name, password and "
-"members. The reentrant functions described here return all of that in "
-"caller-provided buffers. First of all there is the buffer I<gbuf> that can "
-"hold a I<struct group>. And next the buffer I<buf> of size I<buflen> that "
-"can hold additional strings. The result of these functions, the I<struct "
-"group> read from the stream, is stored in the provided buffer I<*gbuf>, and "
-"a pointer to this I<struct group> is returned in I<*gbufp>."
-msgstr ""
-
-#. type: Plain text
-#: build/C/man3/getgrent_r.3:109
-msgid ""
-"On success, these functions return 0 and I<*gbufp> is a pointer to the "
-"I<struct group>. On error, these functions return an error value and "
-"I<*gbufp> is NULL."
-msgstr ""
-
-#. type: Plain text
-#: build/C/man3/getgrent_r.3:113 build/C/man3/getpwent_r.3:114
-msgid "No more entries."
-msgstr ""
-
-#. type: Plain text
-#: build/C/man3/getgrent_r.3:117 build/C/man3/getpwent_r.3:118
-msgid "Insufficient buffer space supplied. Try again with larger buffer."
-msgstr ""
-
-#. type: Plain text
-#: build/C/man3/getgrent_r.3:122 build/C/man3/getpwent_r.3:123
-msgid ""
-"These functions are GNU extensions, done in a style resembling the POSIX "
-"version of functions like B<getpwnam_r>(3). Other systems use the prototype"
-msgstr ""
-
-#. type: Plain text
-#: build/C/man3/getgrent_r.3:127
-#, no-wrap
-msgid ""
-"struct group *getgrent_r(struct group *grp, char *buf,\n"
-" int buflen);\n"
-msgstr ""
-
-#. type: Plain text
-#: build/C/man3/getgrent_r.3:131 build/C/man3/getpwent_r.3:132
-msgid "or, better,"
-msgstr ""
-
-#. type: Plain text
-#: build/C/man3/getgrent_r.3:136
-#, no-wrap
-msgid ""
-"int getgrent_r(struct group *grp, char *buf, int buflen,\n"
-" FILE **gr_fp);\n"
-msgstr ""
-
-#. type: SH
-#: build/C/man3/getgrent_r.3:138 build/C/man3/getgrnam.3:226 build/C/man3/getpwent_r.3:140 build/C/man3/getpwnam.3:235 build/C/man5/passwd.5:144
-#, no-wrap
-msgid "NOTES"
-msgstr ""
-
-#. type: Plain text
-#: build/C/man3/getgrent_r.3:143
-msgid ""
-"The function B<getgrent_r>() is not really reentrant since it shares the "
-"reading position in the stream with all other threads."
-msgstr ""
-
-#. type: SH
-#: build/C/man3/getgrent_r.3:143 build/C/man3/getgrouplist.3:109 build/C/man3/getpwent_r.3:145 build/C/man3/getpwnam.3:274 build/C/man3/setaliasent.3:115
-#, no-wrap
-msgid "EXAMPLE"
-msgstr ""
-
-#. type: Plain text
-#: build/C/man3/getgrent_r.3:150
-#, no-wrap
-msgid ""
-"#define _GNU_SOURCE\n"
-"#include E<lt>grp.hE<gt>\n"
-"#include E<lt>stdio.hE<gt>\n"
-"#include E<lt>stdlib.hE<gt>\n"
-"#define BUFLEN 4096\n"
-msgstr ""
-
-#. type: Plain text
-#: build/C/man3/getgrent_r.3:157
-#, no-wrap
-msgid ""
-"int\n"
-"main(void)\n"
-"{\n"
-" struct group grp, *grpp;\n"
-" char buf[BUFLEN];\n"
-" int i;\n"
-msgstr ""
-
-#. type: Plain text
-#: build/C/man3/getgrent_r.3:174
-#, no-wrap
-msgid ""
-" setgrent();\n"
-" while (1) {\n"
-" i = getgrent_r(&grp, buf, BUFLEN, &grpp);\n"
-" if (i)\n"
-" break;\n"
-" printf(\"%s (%d):\", grpp-E<gt>gr_name, grpp-E<gt>gr_gid);\n"
-" for (i = 0; ; i++) {\n"
-" if (grpp-E<gt>gr_mem[i] == NULL)\n"
-" break;\n"
-" printf(\" %s\", grpp-E<gt>gr_mem[i]);\n"
-" }\n"
-" printf(\"\\en\");\n"
-" }\n"
-" endgrent();\n"
-" exit(EXIT_SUCCESS);\n"
-"}\n"
-msgstr ""
-
-#. type: Plain text
-#: build/C/man3/getgrent_r.3:191
-msgid ""
-"B<fgetgrent>(3), B<getgrent>(3), B<getgrgid>(3), B<getgrnam>(3), "
-"B<putgrent>(3), B<group>(5)"
-msgstr ""
-
-#. type: TH
-#: build/C/man3/getgrnam.3:33
-#, no-wrap
-msgid "GETGRNAM"
-msgstr ""
-
-#. type: Plain text
-#: build/C/man3/getgrnam.3:36
-msgid "getgrnam, getgrnam_r, getgrgid, getgrgid_r - get group file entry"
-msgstr ""
-
-#. type: Plain text
-#: build/C/man3/getgrnam.3:42
-#, no-wrap
-msgid "B<struct group *getgrnam(const char *>I<name>B<);>\n"
-msgstr ""
-
-#. type: Plain text
-#: build/C/man3/getgrnam.3:44
-#, no-wrap
-msgid "B<struct group *getgrgid(gid_t >I<gid>B<);>\n"
-msgstr ""
-
-#. type: Plain text
-#: build/C/man3/getgrnam.3:46
-#, no-wrap
-msgid "B<int getgrnam_r(const char *>I<name>B<, struct group *>I<grp>B<,>\n"
-msgstr ""
-
-#. type: Plain text
-#: build/C/man3/getgrnam.3:48 build/C/man3/getgrnam.3:52
-#, no-wrap
-msgid ""
-"B< char *>I<buf>B<, size_t >I<buflen>B<, struct group "
-"**>I<result>B<);>\n"
-msgstr ""
-
-#. type: Plain text
-#: build/C/man3/getgrnam.3:50
-#, no-wrap
-msgid "B<int getgrgid_r(gid_t >I<gid>B<, struct group *>I<grp>B<,>\n"
-msgstr ""
-
-#. type: Plain text
-#: build/C/man3/getgrnam.3:62
-msgid "B<getgrnam_r>(), B<getgrgid_r>():"
-msgstr ""
-
-#. type: Plain text
-#: build/C/man3/getgrnam.3:65 build/C/man3/getpwnam.3:69
-msgid ""
-"_POSIX_C_SOURCE\\ E<gt>=\\ 1 || _XOPEN_SOURCE || _BSD_SOURCE || _SVID_SOURCE "
-"|| _POSIX_SOURCE"
-msgstr ""
-
-#. type: Plain text
-#: build/C/man3/getgrnam.3:77
-msgid ""
-"The B<getgrnam>() function returns a pointer to a structure containing the "
-"broken-out fields of the record in the group database (e.g., the local group "
-"file I</etc/group>, NIS, and LDAP) that matches the group name I<name>."
-msgstr ""
-
-#. type: Plain text
-#: build/C/man3/getgrnam.3:84
-msgid ""
-"The B<getgrgid>() function returns a pointer to a structure containing the "
-"broken-out fields of the record in the group database that matches the group "
-"ID I<gid>."
-msgstr ""
-
-#. type: Plain text
-#: build/C/man3/getgrnam.3:124
-msgid ""
-"The B<getgrnam_r>() and B<getgrgid_r>() functions obtain the same "
-"information as B<getgrnam>() and B<getgrgid>(), but store the retrieved "
-"I<group> structure in the space pointed to by I<grp>. The string fields "
-"pointed to by the members of the I<group> structure are stored in the buffer "
-"I<buf> of size I<buflen>. A pointer to the result (in case of success) or "
-"NULL (in case no entry was found or an error occurred) is stored in "
-"I<*result>."
-msgstr ""
-
-#. type: Plain text
-#: build/C/man3/getgrnam.3:126 build/C/man3/getpwnam.3:132
-msgid "The call"
-msgstr ""
-
-#. type: Plain text
-#: build/C/man3/getgrnam.3:128
-#, no-wrap
-msgid " sysconf(_SC_GETGR_R_SIZE_MAX)\n"
-msgstr ""
-
-#. type: Plain text
-#: build/C/man3/getgrnam.3:137 build/C/man3/getpwnam.3:143
-msgid ""
-"returns either -1, without changing I<errno>, or an initial suggested size "
-"for I<buf>. (If this size is too small, the call fails with B<ERANGE>, in "
-"which case the caller can retry with a larger buffer.)"
-msgstr ""
-
-#. type: Plain text
-#: build/C/man3/getgrnam.3:152
-msgid ""
-"The B<getgrnam>() and B<getgrgid>() functions return a pointer to a "
-"I<group> structure, or NULL if the matching entry is not found or an error "
-"occurs. If an error occurs, I<errno> is set appropriately. If one wants to "
-"check I<errno> after the call, it should be set to zero before the call."
-msgstr ""
-
-#. type: Plain text
-#: build/C/man3/getgrnam.3:161
-msgid ""
-"The return value may point to a static area, and may be overwritten by "
-"subsequent calls to B<getgrent>(3), B<getgrgid>(), or B<getgrnam>(). (Do "
-"not pass the returned pointer to B<free>(3).)"
-msgstr ""
-
-#. type: Plain text
-#: build/C/man3/getgrnam.3:175
-msgid ""
-"On success, B<getgrnam_r>() and B<getgrgid_r>() return zero, and set "
-"I<*result> to I<grp>. If no matching group record was found, these "
-"functions return 0 and store NULL in I<*result>. In case of error, an error "
-"number is returned, and NULL is stored in I<*result>."
-msgstr ""
-
-#. type: TP
-#: build/C/man3/getgrnam.3:176 build/C/man3/getpwnam.3:182
-#, no-wrap
-msgid "B<0> or B<ENOENT> or B<ESRCH> or B<EBADF> or B<EPERM> or ... "
-msgstr ""
-
-#. type: Plain text
-#: build/C/man3/getgrnam.3:183
-msgid "The given I<name> or I<gid> was not found."
-msgstr ""
-
-#. type: Plain text
-#: build/C/man3/getgrnam.3:194 build/C/man3/getpwent.3:137 build/C/man3/getpwnam.3:200
-msgid ""
-"The maximum number (B<OPEN_MAX>) of files was open already in the calling "
-"process."
-msgstr ""
-
-#. type: Plain text
-#: build/C/man3/getgrnam.3:197 build/C/man3/getpwent.3:140 build/C/man3/getpwnam.3:203
-msgid "The maximum number of files was open already in the system."
-msgstr ""
-
-#. type: Plain text
-#: build/C/man3/getgrnam.3:218
-msgid "The B<getgrnam>() and B<getgrgid>() functions are not thread-safe."
-msgstr ""
-
-#. type: Plain text
-#: build/C/man3/getgrnam.3:224
-msgid "The B<getgrnam_r>() and B<getgrgid_r>() functions are thread-safe."
-msgstr ""
-
-#. more precisely:
-#. AIX 5.1 - gives ESRCH
-#. OSF1 4.0g - gives EWOULDBLOCK
-#. libc, glibc up to version 2.6, Irix 6.5 - give ENOENT
-#. glibc since version 2.7 - give 0
-#. FreeBSD 4.8, OpenBSD 3.2, NetBSD 1.6 - give EPERM
-#. SunOS 5.8 - gives EBADF
-#. Tru64 5.1b, HP-UX-11i, SunOS 5.7 - give 0
-#. type: Plain text
-#: build/C/man3/getgrnam.3:247
-msgid ""
-"The formulation given above under \"RETURN VALUE\" is from POSIX.1-2001. It "
-"does not call \"not found\" an error, hence does not specify what value "
-"I<errno> might have in this situation. But that makes it impossible to "
-"recognize errors. One might argue that according to POSIX I<errno> should "
-"be left unchanged if an entry is not found. Experiments on various "
-"UNIX-like systems shows that lots of different values occur in this "
-"situation: 0, ENOENT, EBADF, ESRCH, EWOULDBLOCK, EPERM, and probably others."
-msgstr ""
-
-#. type: Plain text
-#: build/C/man3/getgrnam.3:254
-msgid ""
-"B<endgrent>(3), B<fgetgrent>(3), B<getgrent>(3), B<getpwnam>(3), "
-"B<setgrent>(3), B<group>(5)"
-msgstr ""
-
-#. type: TH
-#: build/C/man3/getgrouplist.3:29
-#, no-wrap
-msgid "GETGROUPLIST"
-msgstr ""
-
-#. type: Plain text
-#: build/C/man3/getgrouplist.3:32
-msgid "getgrouplist - get list of groups to which a user belongs"
-msgstr ""
-
-#. type: Plain text
-#: build/C/man3/getgrouplist.3:34 build/C/man3/putgrent.3:14
-msgid "B<#include E<lt>grp.hE<gt>>"
-msgstr ""
-
-#. type: Plain text
-#: build/C/man3/getgrouplist.3:36
-msgid "B<int getgrouplist(const char *>I<user>B<, gid_t >I<group>B<,>"
-msgstr ""
-
-#. type: Plain text
-#: build/C/man3/getgrouplist.3:38
-msgid "B< gid_t *>I<groups>B<, int *>I<ngroups>B<);>"
-msgstr ""
-
-#. type: Plain text
-#: build/C/man3/getgrouplist.3:46
-msgid "B<getgrouplist>(): _BSD_SOURCE"
-msgstr ""
-
-#. type: Plain text
-#: build/C/man3/getgrouplist.3:58
-msgid ""
-"The B<getgrouplist>() function scans the group database (see B<group>(5)) "
-"to obtain the list of groups that I<user> belongs to. Up to I<*ngroups> of "
-"these groups are returned in the array I<groups>."
-msgstr ""
-
-#. type: Plain text
-#: build/C/man3/getgrouplist.3:68
-msgid ""
-"If it was not among the groups defined for I<user> in the group database, "
-"then I<group> is included in the list of groups returned by "
-"B<getgrouplist>(); typically this argument is specified as the group ID from "
-"the password record for I<user>."
-msgstr ""
-
-#. type: Plain text
-#: build/C/man3/getgrouplist.3:78
-msgid ""
-"The I<ngroups> argument is a value-result argument: on return it always "
-"contains the number of groups found for I<user>, including I<group>; this "
-"value may be greater than the number of groups stored in I<groups>."
-msgstr ""
-
-#. type: Plain text
-#: build/C/man3/getgrouplist.3:86
-msgid ""
-"If the number of groups of which I<user> is a member is less than or equal "
-"to I<*ngroups>, then the value I<*ngroups> is returned."
-msgstr ""
-
-#. type: Plain text
-#: build/C/man3/getgrouplist.3:96
-msgid ""
-"If the user is a member of more than I<*ngroups> groups, then "
-"B<getgrouplist>() returns -1. In this case, the value returned in "
-"I<*ngroups> can be used to resize the buffer passed to a further call "
-"B<getgrouplist>()."
-msgstr ""
-
-#. type: SH
-#: build/C/man3/getgrouplist.3:96
-#, no-wrap
-msgid "VERSIONS"
-msgstr ""
-
-#. type: Plain text
-#: build/C/man3/getgrouplist.3:98
-msgid "This function is present since glibc 2.2.4."
-msgstr ""
-
-#. type: Plain text
-#: build/C/man3/getgrouplist.3:100
-msgid "This function is nonstandard; it appears on most BSDs."
-msgstr ""
-
-#. type: SH
-#: build/C/man3/getgrouplist.3:100 build/C/man3/getpw.3:108 build/C/man5/group.5:55
-#, no-wrap
-msgid "BUGS"
-msgstr ""
-
-#. type: Plain text
-#: build/C/man3/getgrouplist.3:109
-msgid ""
-"In glibc versions before 2.3.3, the implementation of this function contains "
-"a buffer-overrun bug: it returns the complete list of groups for I<user> in "
-"the array I<groups>, even when the number of groups exceeds I<*ngroups>."
-msgstr ""
-
-#. type: Plain text
-#: build/C/man3/getgrouplist.3:118
-msgid ""
-"The program below displays the group list for the user named in its first "
-"command-line argument. The second command-line argument specifies the "
-"I<ngroups> value to be supplied to B<getgrouplist>(). The following shell "
-"session shows examples of the use of this program:"
-msgstr ""
-
-#. type: Plain text
-#: build/C/man3/getgrouplist.3:128
-#, no-wrap
-msgid ""
-"$B< ./a.out cecilia 0>\n"
-"getgrouplist() returned -1; ngroups = 3\n"
-"$B< ./a.out cecilia 3>\n"
-"ngroups = 3\n"
-"16 (dialout)\n"
-"33 (video)\n"
-"100 (users)\n"
-msgstr ""
-
-#. type: SS
-#: build/C/man3/getgrouplist.3:130
-#, no-wrap
-msgid "Program source"
-msgstr ""
-
-#. type: Plain text
-#: build/C/man3/getgrouplist.3:137
-#, no-wrap
-msgid ""
-"#include E<lt>stdio.hE<gt>\n"
-"#include E<lt>stdlib.hE<gt>\n"
-"#include E<lt>grp.hE<gt>\n"
-"#include E<lt>pwd.hE<gt>\n"
-msgstr ""
-
-#. type: Plain text
-#: build/C/man3/getgrouplist.3:145
-#, no-wrap
-msgid ""
-"int\n"
-"main(int argc, char *argv[])\n"
-"{\n"
-" int j, ngroups;\n"
-" gid_t *groups;\n"
-" struct passwd *pw;\n"
-" struct group *gr;\n"
-msgstr ""
-
-#. type: Plain text
-#: build/C/man3/getgrouplist.3:150
-#, no-wrap
-msgid ""
-" if (argc != 3) {\n"
-" fprintf(stderr, \"Usage: %s E<lt>userE<gt> E<lt>ngroupsE<gt>\\en\", "
-"argv[0]);\n"
-" exit(EXIT_FAILURE);\n"
-" }\n"
-msgstr ""
-
-#. type: Plain text
-#: build/C/man3/getgrouplist.3:152
-#, no-wrap
-msgid " ngroups = atoi(argv[2]);\n"
-msgstr ""
-
-#. type: Plain text
-#: build/C/man3/getgrouplist.3:158
-#, no-wrap
-msgid ""
-" groups = malloc(ngroups * sizeof (gid_t));\n"
-" if (groups == NULL) {\n"
-" perror(\"malloc\");\n"
-" exit(EXIT_FAILURE);\n"
-" }\n"
-msgstr ""
-
-#. type: Plain text
-#: build/C/man3/getgrouplist.3:160
-#, no-wrap
-msgid " /* Fetch passwd structure (contains first group ID for user) */\n"
-msgstr ""
-
-#. type: Plain text
-#: build/C/man3/getgrouplist.3:166
-#, no-wrap
-msgid ""
-" pw = getpwnam(argv[1]);\n"
-" if (pw == NULL) {\n"
-" perror(\"getpwnam\");\n"
-" exit(EXIT_SUCCESS);\n"
-" }\n"
-msgstr ""
-
-#. type: Plain text
-#: build/C/man3/getgrouplist.3:168
-#, no-wrap
-msgid " /* Retrieve group list */\n"
-msgstr ""
-
-#. type: Plain text
-#: build/C/man3/getgrouplist.3:174
-#, no-wrap
-msgid ""
-" if (getgrouplist(argv[1], pw-E<gt>pw_gid, groups, &ngroups) == -1) {\n"
-" fprintf(stderr, \"getgrouplist() returned -1; ngroups = %d\\en\",\n"
-" ngroups);\n"
-" exit(EXIT_FAILURE);\n"
-" }\n"
-msgstr ""
-
-#. type: Plain text
-#: build/C/man3/getgrouplist.3:176
-#, no-wrap
-msgid " /* Display list of retrieved groups, along with group names */\n"
-msgstr ""
-
-#. type: Plain text
-#: build/C/man3/getgrouplist.3:185
-#, no-wrap
-msgid ""
-" fprintf(stderr, \"ngroups = %d\\en\", ngroups);\n"
-" for (j = 0; j E<lt> ngroups; j++) {\n"
-" printf(\"%d\", groups[j]);\n"
-" gr = getgrgid(groups[j]);\n"
-" if (gr != NULL)\n"
-" printf(\" (%s)\", gr-E<gt>gr_name);\n"
-" printf(\"\\en\");\n"
-" }\n"
-msgstr ""
-
-#. type: Plain text
-#: build/C/man3/getgrouplist.3:188
-#, no-wrap
-msgid ""
-" exit(EXIT_SUCCESS);\n"
-"}\n"
-msgstr ""
-
-#. type: Plain text
-#: build/C/man3/getgrouplist.3:196
-msgid ""
-"B<getgroups>(2), B<setgroups>(2), B<getgrent>(3), B<group_member>(3), "
-"B<group>(5), B<passwd>(5)"
-msgstr ""
-
-#. type: TH
-#: build/C/man3/getpw.3:32
-#, no-wrap
-msgid "GETPW"
-msgstr ""
-
-#. type: Plain text
-#: build/C/man3/getpw.3:35
-msgid "getpw - reconstruct password line entry"
-msgstr ""
-
-#. type: Plain text
-#: build/C/man3/getpw.3:40
-#, no-wrap
-msgid ""
-"B<#define _GNU_SOURCE> /* See feature_test_macros(7) */\n"
-"B<#include E<lt>sys/types.hE<gt>>\n"
-"B<#include E<lt>pwd.hE<gt>>\n"
-msgstr ""
-
-#. type: Plain text
-#: build/C/man3/getpw.3:42
-#, no-wrap
-msgid "B<int getpw(uid_t >I<uid>B<, char *>I<buf>B<);>\n"
-msgstr ""
-
-#. type: Plain text
-#: build/C/man3/getpw.3:49
-msgid ""
-"The B<getpw>() function reconstructs the password line entry for the given "
-"user ID I<uid> in the buffer I<buf>. The returned buffer contains a line of "
-"format"
-msgstr ""
-
-#. type: Plain text
-#: build/C/man3/getpw.3:52
-msgid "B<name:passwd:uid:gid:gecos:dir:shell>"
-msgstr ""
-
-#. type: Plain text
-#: build/C/man3/getpw.3:67 build/C/man3/getpwent.3:98 build/C/man3/getpwnam.3:102
-#, no-wrap
-msgid ""
-"struct passwd {\n"
-" char *pw_name; /* username */\n"
-" char *pw_passwd; /* user password */\n"
-" uid_t pw_uid; /* user ID */\n"
-" gid_t pw_gid; /* group ID */\n"
-" char *pw_gecos; /* user information */\n"
-" char *pw_dir; /* home directory */\n"
-" char *pw_shell; /* shell program */\n"
-"};\n"
-msgstr ""
-
-#. type: Plain text
-#: build/C/man3/getpw.3:72 build/C/man3/getpwent.3:103 build/C/man3/getpwent_r.3:84
-msgid "For more information about the fields of this structure, see B<passwd>(5)."
-msgstr ""
-
-#. type: Plain text
-#: build/C/man3/getpw.3:78
-msgid ""
-"The B<getpw>() function returns 0 on success; on error, it returns -1, and "
-"I<errno> is set to indicate the error."
-msgstr ""
-
-#. type: Plain text
-#: build/C/man3/getpw.3:88
-msgid ""
-"If I<uid> is not found in the password database, B<getpw>() returns -1, "
-"sets I<errno> to 0, and leaves I<buf> unchanged."
-msgstr ""
-
-#. type: TP
-#: build/C/man3/getpw.3:89
-#, no-wrap
-msgid "B<0> or B<ENOENT>"
-msgstr ""
-
-#. type: Plain text
-#: build/C/man3/getpw.3:93
-msgid "No user corresponding to I<uid>."
-msgstr ""
-
-#. type: TP
-#: build/C/man3/getpw.3:93 build/C/man3/putpwent.3:79
-#, no-wrap
-msgid "B<EINVAL>"
-msgstr ""
-
-#. type: Plain text
-#: build/C/man3/getpw.3:97
-msgid "I<buf> is NULL."
-msgstr ""
-
-#. type: Plain text
-#: build/C/man3/getpw.3:108
-msgid "SVr2."
-msgstr ""
-
-#. type: Plain text
-#: build/C/man3/getpw.3:115
-msgid ""
-"The B<getpw>() function is dangerous as it may overflow the provided buffer "
-"I<buf>. It is obsoleted by B<getpwuid>(3)."
-msgstr ""
-
-#. type: Plain text
-#: build/C/man3/getpw.3:124
-msgid ""
-"B<endpwent>(3), B<fgetpwent>(3), B<getpwent>(3), B<getpwnam>(3), "
-"B<getpwuid>(3), B<putpwent>(3), B<setpwent>(3), B<passwd>(5)"
-msgstr ""
-
-#. type: TH
-#: build/C/man3/getpwent.3:33
-#, no-wrap
-msgid "GETPWENT"
-msgstr ""
-
-#. type: TH
-#: build/C/man3/getpwent.3:33
-#, no-wrap
-msgid "2013-06-21"
-msgstr ""
-
-#. type: Plain text
-#: build/C/man3/getpwent.3:36
-msgid "getpwent, setpwent, endpwent - get password file entry"
-msgstr ""
-
-#. type: Plain text
-#: build/C/man3/getpwent.3:40 build/C/man3/getpwnam.3:44
-#, no-wrap
-msgid ""
-"B<#include E<lt>sys/types.hE<gt>>\n"
-"B<#include E<lt>pwd.hE<gt>>\n"
-msgstr ""
-
-#. type: Plain text
-#: build/C/man3/getpwent.3:42
-#, no-wrap
-msgid "B<struct passwd *getpwent(void);>\n"
-msgstr ""
-
-#. type: Plain text
-#: build/C/man3/getpwent.3:44
-#, no-wrap
-msgid "B<void setpwent(void);>\n"
-msgstr ""
-
-#. type: Plain text
-#: build/C/man3/getpwent.3:46
-#, no-wrap
-msgid "B<void endpwent(void);>\n"
-msgstr ""
-
-#. type: Plain text
-#: build/C/man3/getpwent.3:57
-msgid "B<getpwent>(), B<setpwent>(), B<endpwent>():"
-msgstr ""
-
-#. type: Plain text
-#: build/C/man3/getpwent.3:60
-msgid ""
-"_BSD_SOURCE || _SVID_SOURCE || _XOPEN_SOURCE\\ E<gt>=\\ 500 || "
-"_XOPEN_SOURCE\\ &&\\ _XOPEN_SOURCE_EXTENDED"
-msgstr ""
-
-#. type: Plain text
-#: build/C/man3/getpwent.3:74
-msgid ""
-"The B<getpwent>() function returns a pointer to a structure containing the "
-"broken-out fields of a record from the password database (e.g., the local "
-"password file I</etc/passwd>, NIS, and LDAP). The first time B<getpwent>() "
-"is called, it returns the first entry; thereafter, it returns successive "
-"entries."
-msgstr ""
-
-#. type: Plain text
-#: build/C/man3/getpwent.3:79
-msgid ""
-"The B<setpwent>() function rewinds to the beginning of the password "
-"database."
-msgstr ""
-
-#. type: Plain text
-#: build/C/man3/getpwent.3:84
-msgid ""
-"The B<endpwent>() function is used to close the password database after all "
-"processing has been performed."
-msgstr ""
-
-#. type: Plain text
-#: build/C/man3/getpwent.3:116
-msgid ""
-"The B<getpwent>() function returns a pointer to a I<passwd> structure, or "
-"NULL if there are no more entries or an error occurred. If an error occurs, "
-"I<errno> is set appropriately. If one wants to check I<errno> after the "
-"call, it should be set to zero before the call."
-msgstr ""
-
-#. type: Plain text
-#: build/C/man3/getpwent.3:125
-msgid ""
-"The return value may point to a static area, and may be overwritten by "
-"subsequent calls to B<getpwent>(), B<getpwnam>(3), or B<getpwuid>(3). (Do "
-"not pass the returned pointer to B<free>(3).)"
-msgstr ""
-
-#. type: Plain text
-#: build/C/man3/getpwent.3:154 build/C/man3/getpwnam.3:217
-msgid "local password database file"
-msgstr ""
-
-#. type: Plain text
-#: build/C/man3/getpwent.3:159
-msgid "The B<getpwent>() function is not thread-safe."
-msgstr ""
-
-#. type: Plain text
-#: build/C/man3/getpwent.3:165
-msgid "The B<setpwent>() and B<endpwent>() functions are thread-safe."
-msgstr ""
-
-#. type: Plain text
-#: build/C/man3/getpwent.3:170 build/C/man3/getpwnam.3:235
-msgid ""
-"SVr4, 4.3BSD, POSIX.1-2001. The I<pw_gecos> field is not specified in "
-"POSIX, but is present on most implementations."
-msgstr ""
-
-#. type: Plain text
-#: build/C/man3/getpwent.3:178
-msgid ""
-"B<fgetpwent>(3), B<getpw>(3), B<getpwent_r>(3), B<getpwnam>(3), "
-"B<getpwuid>(3), B<putpwent>(3), B<passwd>(5)"
-msgstr ""
-
-#. type: TH
-#: build/C/man3/getpwent_r.3:24
-#, no-wrap
-msgid "GETPWENT_R"
-msgstr ""
-
-#. type: Plain text
-#: build/C/man3/getpwent_r.3:27
-msgid "getpwent_r, fgetpwent_r - get passwd file entry reentrantly"
-msgstr ""
-
-#. type: Plain text
-#: build/C/man3/getpwent_r.3:30
-#, no-wrap
-msgid "B<#include E<lt>pwd.hE<gt>>\n"
-msgstr ""
-
-#. type: Plain text
-#: build/C/man3/getpwent_r.3:32
-#, no-wrap
-msgid "B<int getpwent_r(struct passwd *>I<pwbuf>B<, char *>I<buf>B<,>\n"
-msgstr ""
-
-#. type: Plain text
-#: build/C/man3/getpwent_r.3:34
-#, no-wrap
-msgid "B< size_t >I<buflen>B<, struct passwd **>I<pwbufp>B<);>\n"
-msgstr ""
-
-#. type: Plain text
-#: build/C/man3/getpwent_r.3:36
-#, no-wrap
-msgid ""
-"B<int fgetpwent_r(FILE *>I<stream>B<, struct passwd *>I<pwbuf>B<, char "
-"*>I<buf>B<,>\n"
-msgstr ""
-
-#. type: Plain text
-#: build/C/man3/getpwent_r.3:38
-#, no-wrap
-msgid "B< size_t >I<buflen>B<, struct passwd **>I<pwbufp>B<);>\n"
-msgstr ""
-
-#. type: Plain text
-#: build/C/man3/getpwent_r.3:47
-msgid "B<getpwent_r>(), _BSD_SOURCE || _SVID_SOURCE"
-msgstr ""
-
-#. type: Plain text
-#: build/C/man3/getpwent_r.3:50
-msgid "B<fgetpwent_r>(): _SVID_SOURCE"
-msgstr ""
-
-#. type: Plain text
-#: build/C/man3/getpwent_r.3:63
-msgid ""
-"The functions B<getpwent_r>() and B<fgetpwent_r>() are the reentrant "
-"versions of B<getpwent>(3) and B<fgetpwent>(3). The former reads the next "
-"passwd entry from the stream initialized by B<setpwent>(3). The latter "
-"reads the next passwd entry from I<stream>."
-msgstr ""
-
-#. type: Plain text
-#: build/C/man3/getpwent_r.3:79
-#, no-wrap
-msgid ""
-"struct passwd {\n"
-" char *pw_name; /* username */\n"
-" char *pw_passwd; /* user password */\n"
-" uid_t pw_uid; /* user ID */\n"
-" gid_t pw_gid; /* group ID */\n"
-" char *pw_gecos; /* user information */\n"
-" char *pw_dir; /* home directory */\n"
-" char *pw_shell; /* shell program */\n"
-"};\n"
-msgstr ""
-
-#. type: Plain text
-#: build/C/man3/getpwent_r.3:103
-msgid ""
-"The nonreentrant functions return a pointer to static storage, where this "
-"static storage contains further pointers to user name, password, gecos "
-"field, home directory and shell. The reentrant functions described here "
-"return all of that in caller-provided buffers. First of all there is the "
-"buffer I<pwbuf> that can hold a I<struct passwd>. And next the buffer "
-"I<buf> of size I<buflen> that can hold additional strings. The result of "
-"these functions, the I<struct passwd> read from the stream, is stored in the "
-"provided buffer I<*pwbuf>, and a pointer to this I<struct passwd> is "
-"returned in I<*pwbufp>."
-msgstr ""
-
-#. type: Plain text
-#: build/C/man3/getpwent_r.3:110
-msgid ""
-"On success, these functions return 0 and I<*pwbufp> is a pointer to the "
-"I<struct passwd>. On error, these functions return an error value and "
-"I<*pwbufp> is NULL."
-msgstr ""
-
-#. type: Plain text
-#: build/C/man3/getpwent_r.3:128
-#, no-wrap
-msgid ""
-"struct passwd *\n"
-"getpwent_r(struct passwd *pwd, char *buf, int buflen);\n"
-msgstr ""
-
-#. type: Plain text
-#: build/C/man3/getpwent_r.3:138
-#, no-wrap
-msgid ""
-"int\n"
-"getpwent_r(struct passwd *pwd, char *buf, int buflen,\n"
-" FILE **pw_fp);\n"
-msgstr ""
-
-#. type: Plain text
-#: build/C/man3/getpwent_r.3:145
-msgid ""
-"The function B<getpwent_r>() is not really reentrant since it shares the "
-"reading position in the stream with all other threads."
-msgstr ""
-
-#. type: Plain text
-#: build/C/man3/getpwent_r.3:151
-#, no-wrap
-msgid ""
-"#define _GNU_SOURCE\n"
-"#include E<lt>pwd.hE<gt>\n"
-"#include E<lt>stdio.hE<gt>\n"
-"#define BUFLEN 4096\n"
-msgstr ""
-
-#. type: Plain text
-#: build/C/man3/getpwent_r.3:158
-#, no-wrap
-msgid ""
-"int\n"
-"main(void)\n"
-"{\n"
-" struct passwd pw, *pwp;\n"
-" char buf[BUFLEN];\n"
-" int i;\n"
-msgstr ""
-
-#. type: Plain text
-#: build/C/man3/getpwent_r.3:170
-#, no-wrap
-msgid ""
-" setpwent();\n"
-" while (1) {\n"
-" i = getpwent_r(&pw, buf, BUFLEN, &pwp);\n"
-" if (i)\n"
-" break;\n"
-" printf(\"%s (%d)\\etHOME %s\\etSHELL %s\\en\", pwp-E<gt>pw_name,\n"
-" pwp-E<gt>pw_uid, pwp-E<gt>pw_dir, pwp-E<gt>pw_shell);\n"
-" }\n"
-" endpwent();\n"
-" exit(EXIT_SUCCESS);\n"
-"}\n"
-msgstr ""
-
-#. type: Plain text
-#: build/C/man3/getpwent_r.3:188
-msgid ""
-"B<fgetpwent>(3), B<getpw>(3), B<getpwent>(3), B<getpwnam>(3), "
-"B<getpwuid>(3), B<putpwent>(3), B<passwd>(5)"
-msgstr ""
-
-#. type: TH
-#: build/C/man3/getpwnam.3:37
-#, no-wrap
-msgid "GETPWNAM"
-msgstr ""
-
-#. type: TH
-#: build/C/man3/getpwnam.3:37
-#, no-wrap
-msgid "2013-07-22"
-msgstr ""
-
-#. type: Plain text
-#: build/C/man3/getpwnam.3:40
-msgid "getpwnam, getpwnam_r, getpwuid, getpwuid_r - get password file entry"
-msgstr ""
-
-#. type: Plain text
-#: build/C/man3/getpwnam.3:46
-#, no-wrap
-msgid "B<struct passwd *getpwnam(const char *>I<name>B<);>\n"
-msgstr ""
-
-#. type: Plain text
-#: build/C/man3/getpwnam.3:48
-#, no-wrap
-msgid "B<struct passwd *getpwuid(uid_t >I<uid>B<);>\n"
-msgstr ""
-
-#. type: Plain text
-#: build/C/man3/getpwnam.3:50
-#, no-wrap
-msgid "B<int getpwnam_r(const char *>I<name>B<, struct passwd *>I<pwd>B<,>\n"
-msgstr ""
-
-#. type: Plain text
-#: build/C/man3/getpwnam.3:52 build/C/man3/getpwnam.3:56
-#, no-wrap
-msgid ""
-"B< char *>I<buf>B<, size_t >I<buflen>B<, struct passwd "
-"**>I<result>B<);>\n"
-msgstr ""
-
-#. type: Plain text
-#: build/C/man3/getpwnam.3:54
-#, no-wrap
-msgid "B<int getpwuid_r(uid_t >I<uid>B<, struct passwd *>I<pwd>B<,>\n"
-msgstr ""
-
-#. type: Plain text
-#: build/C/man3/getpwnam.3:66
-msgid "B<getpwnam_r>(), B<getpwuid_r>():"
-msgstr ""
-
-#. type: Plain text
-#: build/C/man3/getpwnam.3:81
-msgid ""
-"The B<getpwnam>() function returns a pointer to a structure containing the "
-"broken-out fields of the record in the password database (e.g., the local "
-"password file I</etc/passwd>, NIS, and LDAP) that matches the username "
-"I<name>."
-msgstr ""
-
-#. type: Plain text
-#: build/C/man3/getpwnam.3:88
-msgid ""
-"The B<getpwuid>() function returns a pointer to a structure containing the "
-"broken-out fields of the record in the password database that matches the "
-"user ID I<uid>."
-msgstr ""
-
-#. type: Plain text
-#: build/C/man3/getpwnam.3:108
-msgid "See B<passwd>(5) for more information about these fields."
-msgstr ""
-
-#. type: Plain text
-#: build/C/man3/getpwnam.3:130
-msgid ""
-"The B<getpwnam_r>() and B<getpwuid_r>() functions obtain the same "
-"information as B<getpwnam>() and B<getpwuid>(), but store the retrieved "
-"I<passwd> structure in the space pointed to by I<pwd>. The string fields "
-"pointed to by the members of the I<passwd> structure are stored in the "
-"buffer I<buf> of size I<buflen>. A pointer to the result (in case of "
-"success) or NULL (in case no entry was found or an error occurred) is stored "
-"in I<*result>."
-msgstr ""
-
-#. type: Plain text
-#: build/C/man3/getpwnam.3:134
-#, no-wrap
-msgid " sysconf(_SC_GETPW_R_SIZE_MAX)\n"
-msgstr ""
-
-#. type: Plain text
-#: build/C/man3/getpwnam.3:158
-msgid ""
-"The B<getpwnam>() and B<getpwuid>() functions return a pointer to a "
-"I<passwd> structure, or NULL if the matching entry is not found or an error "
-"occurs. If an error occurs, I<errno> is set appropriately. If one wants to "
-"check I<errno> after the call, it should be set to zero before the call."
-msgstr ""
-
-#. type: Plain text
-#: build/C/man3/getpwnam.3:167
-msgid ""
-"The return value may point to a static area, and may be overwritten by "
-"subsequent calls to B<getpwent>(3), B<getpwnam>(), or B<getpwuid>(). (Do "
-"not pass the returned pointer to B<free>(3).)"
-msgstr ""
-
-#. type: Plain text
-#: build/C/man3/getpwnam.3:181
-msgid ""
-"On success, B<getpwnam_r>() and B<getpwuid_r>() return zero, and set "
-"I<*result> to I<pwd>. If no matching password record was found, these "
-"functions return 0 and store NULL in I<*result>. In case of error, an error "
-"number is returned, and NULL is stored in I<*result>."
-msgstr ""
-
-#. type: Plain text
-#: build/C/man3/getpwnam.3:189
-msgid "The given I<name> or I<uid> was not found."
-msgstr ""
-
-#. type: Plain text
-#: build/C/man3/getpwnam.3:224
-msgid "The B<getpwnam>() and B<getpwuid>() functions are not thread-safe."
-msgstr ""
-
-#. type: Plain text
-#: build/C/man3/getpwnam.3:230
-msgid "The B<getpwnam_r>() and B<getpwuid_r>() functions are thread-safe."
-msgstr ""
-
-#. more precisely:
-#. AIX 5.1 - gives ESRCH
-#. OSF1 4.0g - gives EWOULDBLOCK
-#. libc, glibc up to version 2.6, Irix 6.5 - give ENOENT
-#. glibc since version 2.7 - give 0
-#. FreeBSD 4.8, OpenBSD 3.2, NetBSD 1.6 - give EPERM
-#. SunOS 5.8 - gives EBADF
-#. Tru64 5.1b, HP-UX-11i, SunOS 5.7 - give 0
-#. type: Plain text
-#: build/C/man3/getpwnam.3:256
-msgid ""
-"The formulation given above under \"RETURN VALUE\" is from POSIX.1-2001. It "
-"does not call \"not found\" an error, and hence does not specify what value "
-"I<errno> might have in this situation. But that makes it impossible to "
-"recognize errors. One might argue that according to POSIX I<errno> should "
-"be left unchanged if an entry is not found. Experiments on various "
-"UNIX-like systems show that lots of different values occur in this "
-"situation: 0, ENOENT, EBADF, ESRCH, EWOULDBLOCK, EPERM, and probably others."
-msgstr ""
-
-#. type: Plain text
-#: build/C/man3/getpwnam.3:274
-msgid ""
-"The I<pw_dir> field contains the name of the initial working directory of "
-"the user. Login programs use the value of this field to initialize the "
-"B<HOME> environment variable for the login shell. An application that wants "
-"to determine its user's home directory should inspect the value of B<HOME> "
-"(rather than the value I<getpwuid(getuid())-E<gt>pw_dir>) since this allows "
-"the user to modify their notion of \"the home directory\" during a login "
-"session. To determine the (initial) home directory of another user, it is "
-"necessary to use I<getpwnam(\"username\")-E<gt>pw_dir> or similar."
-msgstr ""
-
-#. type: Plain text
-#: build/C/man3/getpwnam.3:279
-msgid ""
-"The program below demonstrates the use of B<getpwnam_r>() to find the full "
-"username and user ID for the username supplied as a command-line argument."
-msgstr ""
-
-#. type: Plain text
-#: build/C/man3/getpwnam.3:286
-#, no-wrap
-msgid ""
-"#include E<lt>pwd.hE<gt>\n"
-"#include E<lt>stdio.hE<gt>\n"
-"#include E<lt>stdlib.hE<gt>\n"
-"#include E<lt>unistd.hE<gt>\n"
-"#include E<lt>errno.hE<gt>\n"
-msgstr ""
-
-#. type: Plain text
-#: build/C/man3/getpwnam.3:295
-#, no-wrap
-msgid ""
-"int\n"
-"main(int argc, char *argv[])\n"
-"{\n"
-" struct passwd pwd;\n"
-" struct passwd *result;\n"
-" char *buf;\n"
-" size_t bufsize;\n"
-" int s;\n"
-msgstr ""
-
-#. type: Plain text
-#: build/C/man3/getpwnam.3:300
-#, no-wrap
-msgid ""
-" if (argc != 2) {\n"
-" fprintf(stderr, \"Usage: %s username\\en\", argv[0]);\n"
-" exit(EXIT_FAILURE);\n"
-" }\n"
-msgstr ""
-
-#. type: Plain text
-#: build/C/man3/getpwnam.3:304
-#, no-wrap
-msgid ""
-" bufsize = sysconf(_SC_GETPW_R_SIZE_MAX);\n"
-" if (bufsize == -1) /* Value was indeterminate */\n"
-" bufsize = 16384; /* Should be more than enough */\n"
-msgstr ""
-
-#. type: Plain text
-#: build/C/man3/getpwnam.3:310
-#, no-wrap
-msgid ""
-" buf = malloc(bufsize);\n"
-" if (buf == NULL) {\n"
-" perror(\"malloc\");\n"
-" exit(EXIT_FAILURE);\n"
-" }\n"
-msgstr ""
-
-#. type: Plain text
-#: build/C/man3/getpwnam.3:321
-#, no-wrap
-msgid ""
-" s = getpwnam_r(argv[1], &pwd, buf, bufsize, &result);\n"
-" if (result == NULL) {\n"
-" if (s == 0)\n"
-" printf(\"Not found\\en\");\n"
-" else {\n"
-" errno = s;\n"
-" perror(\"getpwnam_r\");\n"
-" }\n"
-" exit(EXIT_FAILURE);\n"
-" }\n"
-msgstr ""
-
-#. type: Plain text
-#: build/C/man3/getpwnam.3:325
-#, no-wrap
-msgid ""
-" printf(\"Name: %s; UID: %ld\\en\", pwd.pw_gecos, (long) pwd.pw_uid);\n"
-" exit(EXIT_SUCCESS);\n"
-"}\n"
-msgstr ""
-
-#. type: Plain text
-#: build/C/man3/getpwnam.3:336
-msgid ""
-"B<endpwent>(3), B<fgetpwent>(3), B<getgrnam>(3), B<getpw>(3), "
-"B<getpwent>(3), B<getspnam>(3), B<putpwent>(3), B<setpwent>(3), B<passwd>(5)"
-msgstr ""
-
-#. type: TH
-#: build/C/man3/getspnam.3:8
-#, no-wrap
-msgid "GETSPNAM"
-msgstr ""
-
-#. type: Plain text
-#: build/C/man3/getspnam.3:13
-msgid ""
-"getspnam, getspnam_r, getspent, getspent_r, setspent, endspent, fgetspent, "
-"fgetspent_r, sgetspent, sgetspent_r, putspent, lckpwdf, ulckpwdf - get "
-"shadow password file entry"
-msgstr ""
-
-#. type: Plain text
-#: build/C/man3/getspnam.3:16
-#, no-wrap
-msgid "/* General shadow password file API */\n"
-msgstr ""
-
-#. type: Plain text
-#: build/C/man3/getspnam.3:18 build/C/man3/getspnam.3:40
-#, no-wrap
-msgid "B<#include E<lt>shadow.hE<gt>>\n"
-msgstr ""
-
-#. type: Plain text
-#: build/C/man3/getspnam.3:20
-#, no-wrap
-msgid "B<struct spwd *getspnam(const char *>I<name>B<);>\n"
-msgstr ""
-
-#. type: Plain text
-#: build/C/man3/getspnam.3:22
-#, no-wrap
-msgid "B<struct spwd *getspent(void);>\n"
-msgstr ""
-
-#. type: Plain text
-#: build/C/man3/getspnam.3:24
-#, no-wrap
-msgid "B<void setspent(void);>\n"
-msgstr ""
-
-#. type: Plain text
-#: build/C/man3/getspnam.3:26
-#, no-wrap
-msgid "B<void endspent(void);>\n"
-msgstr ""
-
-#. type: Plain text
-#: build/C/man3/getspnam.3:28
-#, no-wrap
-msgid "B<struct spwd *fgetspent(FILE *>I<stream>B<);>\n"
-msgstr ""
-
-#. type: Plain text
-#: build/C/man3/getspnam.3:30
-#, no-wrap
-msgid "B<struct spwd *sgetspent(const char *>I<s>B<);>\n"
-msgstr ""
-
-#. type: Plain text
-#: build/C/man3/getspnam.3:32
-#, no-wrap
-msgid "B<int putspent(const struct spwd *>I<p>B<, FILE *>I<stream>B<);>\n"
-msgstr ""
-
-#. type: Plain text
-#: build/C/man3/getspnam.3:34
-#, no-wrap
-msgid "B<int lckpwdf(void);>\n"
-msgstr ""
-
-#. type: Plain text
-#: build/C/man3/getspnam.3:36
-#, no-wrap
-msgid "B<int ulckpwdf(void);>\n"
-msgstr ""
-
-#. type: Plain text
-#: build/C/man3/getspnam.3:38
-#, no-wrap
-msgid "/* GNU extension */\n"
-msgstr ""
-
-#. type: Plain text
-#: build/C/man3/getspnam.3:42
-#, no-wrap
-msgid "B<int getspent_r(struct spwd *>I<spbuf>B<,>\n"
-msgstr ""
-
-#. type: Plain text
-#: build/C/man3/getspnam.3:44 build/C/man3/getspnam.3:48 build/C/man3/getspnam.3:52 build/C/man3/getspnam.3:56
-#, no-wrap
-msgid ""
-"B< char *>I<buf>B<, size_t >I<buflen>B<, struct spwd "
-"**>I<spbufp>B<);>\n"
-msgstr ""
-
-#. type: Plain text
-#: build/C/man3/getspnam.3:46
-#, no-wrap
-msgid "B<int getspnam_r(const char *>I<name>B<, struct spwd *>I<spbuf>B<,>\n"
-msgstr ""
-
-#. type: Plain text
-#: build/C/man3/getspnam.3:50
-#, no-wrap
-msgid "B<int fgetspent_r(FILE *>I<stream>B<, struct spwd *>I<spbuf>B<,>\n"
-msgstr ""
-
-#. type: Plain text
-#: build/C/man3/getspnam.3:54
-#, no-wrap
-msgid "B<int sgetspent_r(const char *>I<s>B<, struct spwd *>I<spbuf>B<,>\n"
-msgstr ""
-
-#. type: Plain text
-#: build/C/man3/getspnam.3:68
-msgid "B<getspent_r>(), B<getspnam_r>(), B<fgetspent_r>(), B<sgetspent_r>():"
-msgstr ""
-
-#. type: Plain text
-#: build/C/man3/getspnam.3:70
-msgid "_BSD_SOURCE || _SVID_SOURCE"
-msgstr ""
-
-#. type: Plain text
-#: build/C/man3/getspnam.3:84
-msgid ""
-"Long ago it was considered safe to have encrypted passwords openly visible "
-"in the password file. When computers got faster and people got more "
-"security-conscious, this was no longer acceptable. Julianne Frances Haugh "
-"implemented the shadow password suite that keeps the encrypted passwords in "
-"the shadow password database (e.g., the local shadow password file "
-"I</etc/shadow>, NIS, and LDAP), readable only by root."
-msgstr ""
-
-#. FIXME . I've commented out the following for the
-#. moment. The relationship between PAM and nsswitch.conf needs
-#. to be clearly documented in one place, which is pointed to by
-#. the pages for the user, group, and shadow password functions.
-#. (Jul 2005, mtk)
-#
-#. This shadow password setup has been superseded by PAM
-#. (pluggable authentication modules), and the file
-#. .I /etc/nsswitch.conf
-#. now describes the sources to be used.
-#. type: Plain text
-#: build/C/man3/getspnam.3:101
-msgid ""
-"The functions described below resemble those for the traditional password "
-"database (e.g., see B<getpwnam>(3) and B<getpwent>(3))."
-msgstr ""
-
-#. type: Plain text
-#: build/C/man3/getspnam.3:108
-msgid ""
-"The B<getspnam>() function returns a pointer to a structure containing the "
-"broken-out fields of the record in the shadow password database that matches "
-"the username I<name>."
-msgstr ""
-
-#. some systems require a call of setspent() before the first getspent()
-#. glibc does not
-#. type: Plain text
-#: build/C/man3/getspnam.3:120
-msgid ""
-"The B<getspent>() function returns a pointer to the next entry in the "
-"shadow password database. The position in the input stream is initialized "
-"by B<setspent>(). When done reading, the program may call B<endspent>() so "
-"that resources can be deallocated."
-msgstr ""
-
-#. type: Plain text
-#: build/C/man3/getspnam.3:127
-msgid ""
-"The B<fgetspent>() function is similar to B<getspent>() but uses the "
-"supplied stream instead of the one implicitly opened by B<setspent>()."
-msgstr ""
-
-#. type: Plain text
-#: build/C/man3/getspnam.3:134
-msgid ""
-"The B<sgetspent>() function parses the supplied string I<s> into a struct "
-"I<spwd>."
-msgstr ""
-
-#. type: Plain text
-#: build/C/man3/getspnam.3:144
-msgid ""
-"The B<putspent>() function writes the contents of the supplied struct "
-"I<spwd> I<*p> as a text line in the shadow password file format to "
-"I<stream>. String entries with value NULL and numerical entries with value "
-"-1 are written as an empty string."
-msgstr ""
-
-#. type: Plain text
-#: build/C/man3/getspnam.3:159
-msgid ""
-"The B<lckpwdf>() function is intended to protect against multiple "
-"simultaneous accesses of the shadow password database. It tries to acquire "
-"a lock, and returns 0 on success, or -1 on failure (lock not obtained within "
-"15 seconds). The B<ulckpwdf>() function releases the lock again. Note "
-"that there is no protection against direct access of the shadow password "
-"file. Only programs that use B<lckpwdf>() will notice the lock."
-msgstr ""
-
-#. Also in libc5
-#. SUN doesn't have sgetspent()
-#. type: Plain text
-#: build/C/man3/getspnam.3:164
-msgid ""
-"These were the functions that formed the original shadow API. They are "
-"widely available."
-msgstr ""
-
-#. type: SS
-#: build/C/man3/getspnam.3:164
-#, no-wrap
-msgid "Reentrant versions"
-msgstr ""
-
-#. type: Plain text
-#: build/C/man3/getspnam.3:181
-msgid ""
-"Analogous to the reentrant functions for the password database, glibc also "
-"has reentrant functions for the shadow password database. The "
-"B<getspnam_r>() function is like B<getspnam>() but stores the retrieved "
-"shadow password structure in the space pointed to by I<spbuf>. This shadow "
-"password structure contains pointers to strings, and these strings are "
-"stored in the buffer I<buf> of size I<buflen>. A pointer to the result (in "
-"case of success) or NULL (in case no entry was found or an error occurred) "
-"is stored in I<*spbufp>."
-msgstr ""
-
-#. type: Plain text
-#: build/C/man3/getspnam.3:188
-msgid ""
-"The functions B<getspent_r>(), B<fgetspent_r>(), and B<sgetspent_r>() are "
-"similarly analogous to their nonreentrant counterparts."
-msgstr ""
-
-#. SUN doesn't have sgetspent_r()
-#. type: Plain text
-#: build/C/man3/getspnam.3:192
-msgid ""
-"Some non-glibc systems also have functions with these names, often with "
-"different prototypes."
-msgstr ""
-
-#. type: SS
-#: build/C/man3/getspnam.3:192
-#, no-wrap
-msgid "Structure"
-msgstr ""
-
-#. type: Plain text
-#: build/C/man3/getspnam.3:194
-msgid ""
-"The shadow password structure is defined in I<E<lt>shadow.hE<gt>> as "
-"follows:"
-msgstr ""
-
-#. type: Plain text
-#: build/C/man3/getspnam.3:214
-#, no-wrap
-msgid ""
-"struct spwd {\n"
-" char *sp_namp; /* Login name */\n"
-" char *sp_pwdp; /* Encrypted password */\n"
-" long sp_lstchg; /* Date of last change\n"
-" (measured in days since\n"
-" 1970-01-01 00:00:00 +0000 (UTC)) */\n"
-" long sp_min; /* Min # of days between changes */\n"
-" long sp_max; /* Max # of days between changes */\n"
-" long sp_warn; /* # of days before password expires\n"
-" to warn user to change it */\n"
-" long sp_inact; /* # of days after password expires\n"
-" until account is disabled */\n"
-" long sp_expire; /* Date when account expires\n"
-" (measured in days since\n"
-" 1970-01-01 00:00:00 +0000 (UTC)) */\n"
-" unsigned long sp_flag; /* Reserved */\n"
-"};\n"
-msgstr ""
-
-#. type: Plain text
-#: build/C/man3/getspnam.3:223
-msgid ""
-"The functions that return a pointer return NULL if no more entries are "
-"available or if an error occurs during processing. The functions which have "
-"I<int> as the return value return 0 for success and -1 for failure, with "
-"I<errno> set to indicate the cause of the error."
-msgstr ""
-
-#. type: Plain text
-#: build/C/man3/getspnam.3:226
-msgid ""
-"For the nonreentrant functions, the return value may point to static area, "
-"and may be overwritten by subsequent calls to these functions."
-msgstr ""
-
-#. type: Plain text
-#: build/C/man3/getspnam.3:229
-msgid ""
-"The reentrant functions return zero on success. In case of error, an error "
-"number is returned."
-msgstr ""
-
-#. type: TP
-#: build/C/man3/getspnam.3:230
-#, no-wrap
-msgid "B<EACCES>"
-msgstr ""
-
-#. type: Plain text
-#: build/C/man3/getspnam.3:233
-msgid "The caller does not have permission to access the shadow password file."
-msgstr ""
-
-#. type: Plain text
-#: build/C/man3/getspnam.3:236
-msgid "Supplied buffer is too small."
-msgstr ""
-
-#. type: TP
-#: build/C/man3/getspnam.3:237
-#, no-wrap
-msgid "I</etc/shadow>"
-msgstr ""
-
-#. type: Plain text
-#: build/C/man3/getspnam.3:240
-msgid "local shadow password database file"
-msgstr ""
-
-#. type: TP
-#: build/C/man3/getspnam.3:240
-#, no-wrap
-msgid "I</etc/.pwd.lock>"
-msgstr ""
-
-#. type: Plain text
-#: build/C/man3/getspnam.3:243
-msgid "lock file"
-msgstr ""
-
-#. type: Plain text
-#: build/C/man3/getspnam.3:249
-msgid ""
-"The include file I<E<lt>paths.hE<gt>> defines the constant B<_PATH_SHADOW> "
-"to the pathname of the shadow password file."
-msgstr ""
-
-#. type: Plain text
-#: build/C/man3/getspnam.3:253
-msgid ""
-"The shadow password database and its associated API are not specified in "
-"POSIX.1-2001. However, many other systems provide a similar API."
-msgstr ""
-
-#. type: Plain text
-#: build/C/man3/getspnam.3:258
-msgid "B<getgrnam>(3), B<getpwnam>(3), B<getpwnam_r>(3), B<shadow>(5)"
-msgstr ""
-
-#. type: TH
-#: build/C/man5/group.5:26
-#, no-wrap
-msgid "GROUP"
-msgstr ""
-
-#. type: TH
-#: build/C/man5/group.5:26
-#, no-wrap
-msgid "2010-10-21"
-msgstr ""
-
-#. type: Plain text
-#: build/C/man5/group.5:29
-msgid "group - user group file"
-msgstr ""
-
-#. type: Plain text
-#: build/C/man5/group.5:34
-msgid ""
-"The I</etc/group> file is a text file that defines the groups on the "
-"system. There is one entry per line, with the following format:"
-msgstr ""
-
-#. type: Plain text
-#: build/C/man5/group.5:37
-msgid "group_name:password:GID:user_list"
-msgstr ""
-
-#. type: Plain text
-#: build/C/man5/group.5:40
-msgid "The fields are as follows:"
-msgstr ""
-
-#. type: TP
-#: build/C/man5/group.5:40
-#, no-wrap
-msgid "I<group_name>"
-msgstr ""
-
-#. type: Plain text
-#: build/C/man5/group.5:43
-msgid "the name of the group."
-msgstr ""
-
-#. type: TP
-#: build/C/man5/group.5:43 build/C/man5/passwd.5:91
-#, no-wrap
-msgid "I<password>"
-msgstr ""
-
-#. type: Plain text
-#: build/C/man5/group.5:47
-msgid ""
-"the (encrypted) group password. If this field is empty, no password is "
-"needed."
-msgstr ""
-
-#. type: TP
-#: build/C/man5/group.5:47 build/C/man5/passwd.5:103
-#, no-wrap
-msgid "I<GID>"
-msgstr ""
-
-#. type: Plain text
-#: build/C/man5/group.5:50
-msgid "the numeric group ID."
-msgstr ""
-
-#. type: TP
-#: build/C/man5/group.5:50
-#, no-wrap
-msgid "I<user_list>"
-msgstr ""
-
-#. type: Plain text
-#: build/C/man5/group.5:53
-msgid "a list of the usernames that are members of this group, separated by commas."
-msgstr ""
-
-#. type: Plain text
-#: build/C/man5/group.5:55
-msgid "/etc/group"
-msgstr ""
-
-#. type: Plain text
-#: build/C/man5/group.5:61
-msgid ""
-"As the 4.2BSD B<initgroups>(3) man page says: No-one seems to keep "
-"I</etc/group> up-to-date."
-msgstr ""
-
-#. type: Plain text
-#: build/C/man5/group.5:67
-msgid "B<login>(1), B<newgrp>(1), B<getgrent>(3), B<getgrnam>(3), B<passwd>(5)"
-msgstr ""
-
-#. type: TH
-#: build/C/man3/initgroups.3:32
-#, no-wrap
-msgid "INITGROUPS"
-msgstr ""
-
-#. type: TH
-#: build/C/man3/initgroups.3:32
-#, no-wrap
-msgid "2007-07-26"
-msgstr ""
-
-#. type: Plain text
-#: build/C/man3/initgroups.3:35
-msgid "initgroups - initialize the supplementary group access list"
-msgstr ""
-
-#. type: Plain text
-#: build/C/man3/initgroups.3:41
-#, no-wrap
-msgid "B<int initgroups(const char *>I<user>B<, gid_t >I<group>B<);>\n"
-msgstr ""
-
-#. type: Plain text
-#: build/C/man3/initgroups.3:50
-msgid "B<initgroups>(): _BSD_SOURCE"
-msgstr ""
-
-#. type: Plain text
-#: build/C/man3/initgroups.3:64
-msgid ""
-"The B<initgroups>() function initializes the group access list by reading "
-"the group database I</etc/group> and using all groups of which I<user> is a "
-"member. The additional group I<group> is also added to the list."
-msgstr ""
-
-#. type: Plain text
-#: build/C/man3/initgroups.3:68
-msgid "The I<user> argument must be non-NULL."
-msgstr ""
-
-#. type: Plain text
-#: build/C/man3/initgroups.3:75
-msgid ""
-"The B<initgroups>() function returns 0 on success. On error, -1 is "
-"returned, and I<errno> is set appropriately."
-msgstr ""
-
-#. type: Plain text
-#: build/C/man3/initgroups.3:79
-msgid "Insufficient memory to allocate group information structure."
-msgstr ""
-
-#. type: TP
-#: build/C/man3/initgroups.3:79
-#, no-wrap
-msgid "B<EPERM>"
-msgstr ""
-
-#. type: Plain text
-#: build/C/man3/initgroups.3:84
-msgid ""
-"The calling process has insufficient privilege. See the underlying system "
-"call B<setgroups>(2)."
-msgstr ""
-
-#. type: Plain text
-#: build/C/man3/initgroups.3:87
-#, no-wrap
-msgid "I</etc/group>\t\tgroup database file\n"
-msgstr ""
-
-#. type: Plain text
-#: build/C/man3/initgroups.3:90
-msgid "SVr4, 4.3BSD."
-msgstr ""
-
-#. type: Plain text
-#: build/C/man3/initgroups.3:94
-msgid "B<getgroups>(2), B<setgroups>(2), B<credentials>(7)"
-msgstr ""
-
-#. type: TH
-#: build/C/man5/passwd.5:30
-#, no-wrap
-msgid "PASSWD"
-msgstr ""
-
-#. type: TH
-#: build/C/man5/passwd.5:30
-#, no-wrap
-msgid "2015-02-01"
-msgstr ""
-
-#. type: Plain text
-#: build/C/man5/passwd.5:33
-msgid "passwd - password file"
-msgstr ""
-
-#. type: Plain text
-#: build/C/man5/passwd.5:41
-msgid ""
-"The I</etc/passwd> file is a text file that describes user login accounts "
-"for the system. It should have read permission allowed for all users (many "
-"utilities, like B<ls>(1) use it to map user IDs to usernames), but write "
-"access only for the superuser."
-msgstr ""
-
-#. type: Plain text
-#: build/C/man5/passwd.5:53
-msgid ""
-"In the good old days there was no great problem with this general read "
-"permission. Everybody could read the encrypted passwords, but the hardware "
-"was too slow to crack a well-chosen password, and moreover the basic "
-"assumption used to be that of a friendly user-community. These days many "
-"people run some version of the shadow password suite, where I</etc/passwd> "
-"has an \\(aqx\\(aq character in the password field, and the encrypted "
-"passwords are in I</etc/shadow>, which is readable by the superuser only."
-msgstr ""
-
-#. type: Plain text
-#: build/C/man5/passwd.5:62
-msgid ""
-"If the encrypted password, whether in I</etc/passwd> or in I</etc/shadow>, "
-"is an empty string, login is allowed without even asking for a password. "
-"Note that this functionality may be intentionally disabled in applications, "
-"or configurable (for example using the \"nullok\" or \"nonull\" arguments to "
-"pam_unix.so)."
-msgstr ""
-
-#. type: Plain text
-#: build/C/man5/passwd.5:67
-msgid ""
-"If the encrypted password in I</etc/passwd> is \"I<*NP*>\" (without the "
-"quotes), the shadow record should be obtained from an NIS+ server."
-msgstr ""
-
-#. type: Plain text
-#: build/C/man5/passwd.5:73
-msgid ""
-"Regardless of whether shadow passwords are used, many system administrators "
-"use an asterisk (*) in the encrypted password field to make sure that this "
-"user can not authenticate him- or herself using a password. (But see NOTES "
-"below.)"
-msgstr ""
-
-#. type: Plain text
-#: build/C/man5/passwd.5:78
-msgid ""
-"If you create a new login, first put an asterisk (*) in the password field, "
-"then use B<passwd>(1) to set it."
-msgstr ""
-
-#. type: Plain text
-#: build/C/man5/passwd.5:81
-msgid ""
-"Each line of the file describes a single user, and contains seven "
-"colon-separated fields:"
-msgstr ""
-
-#. type: Plain text
-#: build/C/man5/passwd.5:84
-msgid "name:password:UID:GID:GECOS:directory:shell"
-msgstr ""
-
-#. type: Plain text
-#: build/C/man5/passwd.5:87
-msgid "The field are as follows:"
-msgstr ""
-
-#. type: TP
-#: build/C/man5/passwd.5:87
-#, no-wrap
-msgid "I<name>"
-msgstr ""
-
-#. type: Plain text
-#: build/C/man5/passwd.5:91
-msgid "This is the user's login name. It should not contain capital letters."
-msgstr ""
-
-#. type: Plain text
-#: build/C/man5/passwd.5:98
-msgid ""
-"This is either the encrypted user password, an asterisk (*), or the letter "
-"\\(aqx\\(aq. (See B<pwconv>(8) for an explanation of \\(aqx\\(aq.)"
-msgstr ""
-
-#. type: TP
-#: build/C/man5/passwd.5:98
-#, no-wrap
-msgid "I<UID>"
-msgstr ""
-
-#. type: Plain text
-#: build/C/man5/passwd.5:103
-msgid "The privileged I<root> login account (superuser) has the user ID 0."
-msgstr ""
-
-#. type: Plain text
-#: build/C/man5/passwd.5:108
-msgid ""
-"This is the numeric primary group ID for this user. (Additional groups for "
-"the user are defined in the system group file; see B<group>(5))."
-msgstr ""
-
-#. type: TP
-#: build/C/man5/passwd.5:108
-#, no-wrap
-msgid "I<GECOS>"
-msgstr ""
-
-#. type: Plain text
-#: build/C/man5/passwd.5:116
-msgid ""
-"This field (sometimes called the \"comment field\") is optional and used "
-"only for informational purposes. Usually, it contains the full username. "
-"Some programs (for example, B<finger>(1)) display information from this "
-"field."
-msgstr ""
-
-#. type: Plain text
-#: build/C/man5/passwd.5:125
-msgid ""
-"GECOS stands for \"General Electric Comprehensive Operating System\", which "
-"was renamed to GCOS when GE's large systems division was sold to Honeywell. "
-"Dennis Ritchie has reported: \"Sometimes we sent printer output or batch "
-"jobs to the GCOS machine. The gcos field in the password file was a place "
-"to stash the information for the $IDENTcard. Not elegant.\""
-msgstr ""
-
-#. type: TP
-#: build/C/man5/passwd.5:125
-#, no-wrap
-msgid "I<directory>"
-msgstr ""
-
-#. type: Plain text
-#: build/C/man5/passwd.5:132
-msgid ""
-"This is the user's home directory: the initial directory where the user is "
-"placed after logging in. The value in this field is used to set the B<HOME> "
-"environment variable."
-msgstr ""
-
-#. type: TP
-#: build/C/man5/passwd.5:132
-#, no-wrap
-msgid "I<shell>"
-msgstr ""
-
-#. type: Plain text
-#: build/C/man5/passwd.5:142
-msgid ""
-"This is the program to run at login (if empty, use I</bin/sh>). If set to a "
-"nonexistent executable, the user will be unable to login through "
-"B<login>(1). The value in this field is used to set the B<SHELL> "
-"environment variable."
-msgstr ""
-
-#. type: Plain text
-#: build/C/man5/passwd.5:148
-msgid ""
-"If you want to create user groups, there must be an entry in I</etc/group>, "
-"or no group will exist."
-msgstr ""
-
-#. type: Plain text
-#: build/C/man5/passwd.5:162
-msgid ""
-"If the encrypted password is set to an asterisk (*), the user will be unable "
-"to login using B<login>(1), but may still login using B<rlogin>(1), run "
-"existing processes and initiate new ones through B<rsh>(1), B<cron>(8), "
-"B<at>(1), or mail filters, etc. Trying to lock an account by simply "
-"changing the shell field yields the same result and additionally allows the "
-"use of B<su>(1)."
-msgstr ""
-
-#. type: Plain text
-#: build/C/man5/passwd.5:173
-msgid ""
-"B<chfn>(1), B<chsh>(1), B<login>(1), B<passwd>(1), B<su>(1), B<crypt>(3), "
-"B<getpwent>(3), B<getpwnam>(3), B<group>(5), B<shadow>(5)"
-msgstr ""
-
-#. type: TH
-#: build/C/man3/putgrent.3:7
-#, no-wrap
-msgid "PUTGRENT"
-msgstr ""
-
-#. type: Plain text
-#: build/C/man3/putgrent.3:10
-msgid "putgrent - write a group database entry to a file"
-msgstr ""
-
-#. type: Plain text
-#: build/C/man3/putgrent.3:12
-msgid "B<#define _GNU_SOURCE> /* See feature_test_macros(7) */"
-msgstr ""
-
-#. type: Plain text
-#: build/C/man3/putgrent.3:16
-msgid "B<int putgrent(const struct group *>I<grp>B<, FILE *>I<stream>B<);>"
-msgstr ""
-
-#. type: Plain text
-#: build/C/man3/putgrent.3:26
-msgid ""
-"The B<putgrent>() function is the counterpart for B<fgetgrent>(3). The "
-"function writes the content of the provided I<struct group> into the "
-"I<stream>. The list of group members must be NULL-terminated or "
-"NULL-initialized."
-msgstr ""
-
-#. type: Plain text
-#: build/C/man3/putgrent.3:30
-msgid "The I<struct group> is defined as follows:"
-msgstr ""
-
-#. type: Plain text
-#: build/C/man3/putgrent.3:39
-#, no-wrap
-msgid ""
-"struct group {\n"
-" char *gr_name; /* group name */\n"
-" char *gr_passwd; /* group password */\n"
-" gid_t gr_gid; /* group ID */\n"
-" char **gr_mem; /* group members */\n"
-"};\n"
-msgstr ""
-
-#. type: Plain text
-#: build/C/man3/putgrent.3:43
-msgid "The function returns zero on success, and a nonzero value on error."
-msgstr ""
-
-#. type: Plain text
-#: build/C/man3/putgrent.3:45
-msgid "This function is a GNU extension."
-msgstr ""
-
-#. type: Plain text
-#: build/C/man3/putgrent.3:49
-msgid "B<fgetgrent>(3), B<getgrent>(3), B<group>(5)"
-msgstr ""
-
-#. type: TH
-#: build/C/man3/putpwent.3:30
-#, no-wrap
-msgid "PUTPWENT"
-msgstr ""
-
-#. type: Plain text
-#: build/C/man3/putpwent.3:33
-msgid "putpwent - write a password file entry"
-msgstr ""
-
-#. type: Plain text
-#: build/C/man3/putpwent.3:40
-#, no-wrap
-msgid "B<int putpwent(const struct passwd *>I<p>B<, FILE *>I<stream>B<);>\n"
-msgstr ""
-
-#. type: Plain text
-#: build/C/man3/putpwent.3:49
-msgid "B<putpwent>(): _SVID_SOURCE"
-msgstr ""
-
-#. type: Plain text
-#: build/C/man3/putpwent.3:54
-msgid ""
-"The B<putpwent>() function writes a password entry from the structure I<p> "
-"in the file associated with I<stream>."
-msgstr ""
-
-#. type: Plain text
-#: build/C/man3/putpwent.3:68
-#, no-wrap
-msgid ""
-"struct passwd {\n"
-" char *pw_name; /* username */\n"
-" char *pw_passwd; /* user password */\n"
-" uid_t pw_uid; /* user ID */\n"
-" gid_t pw_gid; /* group ID */\n"
-" char *pw_gecos; /* real name */\n"
-" char *pw_dir; /* home directory */\n"
-" char *pw_shell; /* shell program */\n"
-"};\n"
-msgstr ""
-
-#. type: Plain text
-#: build/C/man3/putpwent.3:78
-msgid ""
-"The B<putpwent>() function returns 0 on success, or -1 if an error occurs. "
-"In the event of an error, I<errno> is set to indicate the cause."
-msgstr ""
-
-#. type: Plain text
-#: build/C/man3/putpwent.3:82
-msgid "Invalid (NULL) argument given."
-msgstr ""
-
-#. type: Plain text
-#: build/C/man3/putpwent.3:92
-msgid ""
-"B<endpwent>(3), B<fgetpwent>(3), B<getpw>(3), B<getpwent>(3), "
-"B<getpwnam>(3), B<getpwuid>(3), B<setpwent>(3)"
-msgstr ""
-
-#. type: TH
-#: build/C/man3/setaliasent.3:9
-#, no-wrap
-msgid "SETALIASENT"
-msgstr ""
-
-#. type: TH
-#: build/C/man3/setaliasent.3:9
-#, no-wrap
-msgid "2003-09-09"
-msgstr ""
-
-#. type: Plain text
-#: build/C/man3/setaliasent.3:13
-msgid ""
-"setaliasent, endaliasent, getaliasent, getaliasent_r, getaliasbyname, "
-"getaliasbyname_r - read an alias entry"
-msgstr ""
-
-#. type: Plain text
-#: build/C/man3/setaliasent.3:15
-msgid "B<#include E<lt>aliases.hE<gt>>"
-msgstr ""
-
-#. type: Plain text
-#: build/C/man3/setaliasent.3:17
-msgid "B<void setaliasent(void);>"
-msgstr ""
-
-#. type: Plain text
-#: build/C/man3/setaliasent.3:19
-msgid "B<void endaliasent(void);>"
-msgstr ""
-
-#. type: Plain text
-#: build/C/man3/setaliasent.3:21
-msgid "B<struct aliasent *getaliasent(void);>"
-msgstr ""
-
-#. type: Plain text
-#: build/C/man3/setaliasent.3:23
-msgid "B<int getaliasent_r(struct aliasent *>I<result>B<,>"
-msgstr ""
-
-#. type: Plain text
-#: build/C/man3/setaliasent.3:25 build/C/man3/setaliasent.3:31
-msgid "B< char *>I<buffer>B<, size_t >I<buflen>B<, struct aliasent **>I<res>B<);>"
-msgstr ""
-
-#. type: Plain text
-#: build/C/man3/setaliasent.3:27
-msgid "B<struct aliasent *getaliasbyname(const char *>I<name>B<);>"
-msgstr ""
-
-#. type: Plain text
-#: build/C/man3/setaliasent.3:29
-msgid ""
-"B<int getaliasbyname_r(const char *>I<name>B<, struct aliasent "
-"*>I<result>B<,>"
-msgstr ""
-
-#. type: Plain text
-#: build/C/man3/setaliasent.3:37
-msgid ""
-"One of the databases available with the Name Service Switch (NSS) is the "
-"aliases database, that contains mail aliases. (To find out which databases "
-"are supported, try I<getent --help>.) Six functions are provided to access "
-"the aliases database."
-msgstr ""
-
-#. type: Plain text
-#: build/C/man3/setaliasent.3:44
-msgid ""
-"The B<getaliasent>() function returns a pointer to a structure containing "
-"the group information from the aliases database. The first time it is "
-"called it returns the first entry; thereafter, it returns successive "
-"entries."
-msgstr ""
-
-#. type: Plain text
-#: build/C/man3/setaliasent.3:49
-msgid ""
-"The B<setaliasent>() function rewinds the file pointer to the beginning of "
-"the aliases database."
-msgstr ""
-
-#. type: Plain text
-#: build/C/man3/setaliasent.3:53
-msgid "The B<endaliasent>() function closes the aliases database."
-msgstr ""
-
-#. type: Plain text
-#: build/C/man3/setaliasent.3:60
-msgid ""
-"B<getaliasent_r>() is the reentrant version of the previous function. The "
-"requested structure is stored via the first argument but the programmer "
-"needs to fill the other arguments also. Not providing enough space causes "
-"the function to fail."
-msgstr ""
-
-#. type: Plain text
-#: build/C/man3/setaliasent.3:66
-msgid ""
-"The function B<getaliasbyname>() takes the name argument and searches the "
-"aliases database. The entry is returned as a pointer to a I<struct "
-"aliasent>."
-msgstr ""
-
-#. type: Plain text
-#: build/C/man3/setaliasent.3:73
-msgid ""
-"B<getaliasbyname_r>() is the reentrant version of the previous function. "
-"The requested structure is stored via the second argument but the programmer "
-"needs to fill the other arguments also. Not providing enough space causes "
-"the function to fail."
-msgstr ""
-
-#. type: Plain text
-#: build/C/man3/setaliasent.3:78
-msgid "The I<struct aliasent> is defined in I<E<lt>aliases.hE<gt>>:"
-msgstr ""
-
-#. type: Plain text
-#: build/C/man3/setaliasent.3:87
-#, no-wrap
-msgid ""
-"struct aliasent {\n"
-" char *alias_name; /* alias name */\n"
-" size_t alias_members_len;\n"
-" char **alias_members; /* alias name list */\n"
-" int alias_local;\n"
-"};\n"
-msgstr ""
-
-#. type: Plain text
-#: build/C/man3/setaliasent.3:95
-msgid ""
-"The functions B<getaliasent_r>() and B<getaliasbyname_r>() return a "
-"nonzero value on error."
-msgstr ""
-
-#. type: Plain text
-#: build/C/man3/setaliasent.3:101
-msgid ""
-"The default alias database is the file I</etc/aliases>. This can be changed "
-"in the I</etc/nsswitch.conf> file."
-msgstr ""
-
-#. type: Plain text
-#: build/C/man3/setaliasent.3:104
-msgid "These routines are glibc-specific. The NeXT system has similar routines:"
-msgstr ""
-
-#. type: Plain text
-#: build/C/man3/setaliasent.3:108
-#, no-wrap
-msgid "#include E<lt>aliasdb.hE<gt>\n"
-msgstr ""
-
-#. type: Plain text
-#: build/C/man3/setaliasent.3:113
-#, no-wrap
-msgid ""
-"void alias_setent(void);\n"
-"void alias_endent(void);\n"
-"alias_ent *alias_getent(void);\n"
-"alias_ent *alias_getbyname(char *name);\n"
-msgstr ""
-
-#. type: Plain text
-#: build/C/man3/setaliasent.3:119
-msgid ""
-"The following example compiles with I<gcc example.c -o example>. It will "
-"dump all names in the alias database."
-msgstr ""
-
-#. type: Plain text
-#: build/C/man3/setaliasent.3:125
-#, no-wrap
-msgid ""
-"#include E<lt>aliases.hE<gt>\n"
-"#include E<lt>stdio.hE<gt>\n"
-"#include E<lt>stdlib.hE<gt>\n"
-"#include E<lt>errno.hE<gt>\n"
-msgstr ""
-
-#. type: Plain text
-#: build/C/man3/setaliasent.3:144
-#, no-wrap
-msgid ""
-"int\n"
-"main(void)\n"
-"{\n"
-" struct aliasent *al;\n"
-" setaliasent();\n"
-" for (;;) {\n"
-" al = getaliasent();\n"
-" if (al == NULL)\n"
-" break;\n"
-" printf(\"Name: %s\\en\", al-E<gt>alias_name);\n"
-" }\n"
-" if (errno) {\n"
-" perror(\"reading alias\");\n"
-" exit(EXIT_FAILURE);\n"
-" }\n"
-" endaliasent();\n"
-" exit(EXIT_SUCCESS);\n"
-"}\n"
-msgstr ""
-
-#
-#. /etc/sendmail/aliases
-#. Yellow Pages
-#. newaliases, postalias
-#. type: Plain text
-#: build/C/man3/setaliasent.3:154
-msgid "B<getgrent>(3), B<getpwent>(3), B<getspent>(3), B<aliases>(5)"
-msgstr ""