# SOME DESCRIPTIVE TITLE # Copyright (C) YEAR Free Software Foundation, Inc. # This file is distributed under the same license as the PACKAGE package. # FIRST AUTHOR , YEAR. # msgid "" msgstr "" "Project-Id-Version: PACKAGE VERSION\n" "POT-Creation-Date: 2015-01-23 22:25+0900\n" "PO-Revision-Date: 2015-01-24 20:54+0900\n" "Last-Translator: FULL NAME \n" "Language-Team: LANGUAGE \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 "FGETGRENT" #. 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 "2014-08-19" #. 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 "GNU" #. 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 "Linux Programmer's Manual" #. 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 "fgetgrent - グループファイルエントリの取り出し" #. 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 Estdio.hE>\n" "B<#include Esys/types.hE>\n" "B<#include Egrp.hE>\n" msgstr "" "B<#include Estdio.hE>\n" "B<#include Esys/types.hE>\n" "B<#include Egrp.hE>\n" #. type: Plain text #: build/C/man3/fgetgrent.3:40 #, no-wrap msgid "BIB<);>\n" msgstr "BIB<);>\n" #. 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(7)):" msgstr "glibc 向けの機能検査マクロの要件 (B(7) 参照):" #. type: Plain text #: build/C/man3/fgetgrent.3:49 msgid "B(): _SVID_SOURCE" msgstr "B(): _SVID_SOURCE" #. 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() function returns a pointer to a structure containing the group information from the file referred to by I. The first time it is called it returns the first entry; thereafter, it returns successive entries. The file referred to by I must have the same format as I (see B(5))." msgstr "B() 関数は、 I で参照されるファイルから取り出したグループ情報 を含む構造体へのポインタを返す。最初に呼び出された時は 最初のエントリを返し、それ以降は、次のエントリを返す。 I で参照されるファイルは、 I と同じ形式でなければならない (B(5) 参照)。" #. 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 structure is defined in Igrp.hE> as follows:" msgstr "I 構造体は Igrp.hE> で以下のように定義されている:" #. 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 "" "struct group {\n" " char *gr_name; /* グループ名 */\n" " char *gr_passwd; /* グループのパスワード */\n" " gid_t gr_gid; /* グループ ID */\n" " char **gr_mem; /* グループのメンバ名へのポインター\n" " の配列 (配列はヌルで終端する) */\n" "};\n" #. 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() function returns a pointer to a I structure, or NULL if there are no more entries or an error occurs. In the event of an error, I is set to indicate the cause." msgstr "B() 関数は I 構造体へのポインタを返す。 これ以上エントリが無いか、エラーが発生した場合は NULL を返す。 エラーの場合、 I に原因を示す値が設定される。" #. 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" msgstr "B" #. 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 structure." msgstr "I 構造体を割り当てるためのメモリが不十分。" #. 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 "SVr4." #. 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(3), B(3), B(3), B(3), B(3), B(3), B(3), B(3), B(5)" msgstr "B(3), B(3), B(3), B(3), B(3), B(3), B(3), B(3), B(5)" #. 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:171 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:179 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.78 of the Linux I 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 "" "この man ページは Linux I プロジェクトのリリース 3.78 の一部\n" "である。プロジェクトの説明とバグ報告に関する情報は\n" "http://www.kernel.org/doc/man-pages/ に書かれている。" #. type: TH #: build/C/man3/fgetpwent.3:33 #, no-wrap msgid "FGETPWENT" msgstr "FGETPWENT" #. type: TH #: build/C/man3/fgetpwent.3:33 build/C/man3/putpwent.3:30 #, no-wrap msgid "2013-04-19" msgstr "2013-04-19" #. type: Plain text #: build/C/man3/fgetpwent.3:36 msgid "fgetpwent - get password file entry" msgstr "fgetpwent - パスワードファイルエントリの取り出し" #. type: Plain text #: build/C/man3/fgetpwent.3:41 build/C/man3/putpwent.3:38 #, no-wrap msgid "" "B<#include Estdio.hE>\n" "B<#include Esys/types.hE>\n" "B<#include Epwd.hE>\n" msgstr "" "B<#include Estdio.hE>\n" "B<#include Esys/types.hE>\n" "B<#include Epwd.hE>\n" #. type: Plain text #: build/C/man3/fgetpwent.3:43 #, no-wrap msgid "BIB<);>\n" msgstr "BIB<);>\n" #. type: Plain text #: build/C/man3/fgetpwent.3:52 msgid "B(): _SVID_SOURCE" msgstr "B(): _SVID_SOURCE" #. type: Plain text #: build/C/man3/fgetpwent.3:65 msgid "The B() function returns a pointer to a structure containing the broken out fields of a line in the file I. The first time it is called it returns the first entry; thereafter, it returns successive entries. The file referred to by I must have the same format as I (see B(5))." msgstr "B() 関数は、I から得られた行を分解したフィールド を含む構造体へのポインタを返す。 最初に呼び出された時には最初のエントリを返し、それ以降は 次のエントリを返す。 I で参照されるファイルは I と同じ形式でなければならない (B(5) 参照)。" #. 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 structure is defined in Ipwd.hE> as follows:" msgstr "I 構造体は、Ipwd.hE> で以下のように定義されている:" #. 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 "" "struct passwd {\n" " char *pw_name; /* ユーザ名 */\n" " char *pw_passwd; /* ユーザのパスワード */\n" " uid_t pw_uid; /* ユーザ ID */\n" " gid_t pw_gid; /* グループ ID */\n" " char *pw_gecos; /* 実名 */\n" " char *pw_dir; /* ホームディレクトリ */\n" " char *pw_shell; /* シェルプログラム */\n" "};\n" #. type: Plain text #: build/C/man3/fgetpwent.3:91 msgid "The B() function returns a pointer to a I structure, or NULL if there are no more entries or an error occurs. In the event of an error, I is set to indicate the cause." msgstr "B() 関数は、 I 構造体へのポインタを返す。 これ以上エントリが無いか、エラーが発生した場合は NULL を返す。 エラーの場合、 I に原因を示す値が設定される。" #. 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 structure." msgstr "I 構造体に割り当てるメモリが十分なかった。" #. 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" msgstr "I" #. 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(3), B(3), B(3), B(3), B(3), B(3), B(3), B(3), B(3), B(5)" msgstr "B(3), B(3), B(3), B(3), B(3), B(3), B(3), B(3), B(3), B(5)" #. type: TH #: build/C/man5/ftpusers.5:19 #, no-wrap msgid "FTPUSERS" msgstr "FTPUSERS" #. type: TH #: build/C/man5/ftpusers.5:19 #, no-wrap msgid "2000-08-27" msgstr "2000-08-27" #. 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 "Linux" #. type: Plain text #: build/C/man5/ftpusers.5:22 msgid "ftpusers - list of users that may not log in via the FTP daemon" msgstr "ftpusers - FTP デーモン経由でのログインを許さないユーザーのリスト" #. type: Plain text #: build/C/man5/ftpusers.5:41 msgid "The text file B 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, 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." msgstr "B はテキストファイルで、File Transfer Protocol (FTP) サーバーデーモン を利用してのログインを許さないユーザーをリストしたものである。 このファイルは単にシステム管理のためだけでなく、 TCP/IP ネットワーク環境でのセキュリティを向上させるのにも利用できる。 通常は、ftp を用いた作業を行わないユーザーや、 FTP サーバーデーモン経由でのログインを許すには 権限が大きすぎるユーザーをリストしておく。 このようなユーザーには、例えば root, daemon, bin, uucp, news などが含まれる。 お使いの FTP サーバーデーモンが B を用いない場合は、そのデーモンのドキュメントを読んで、 特定のユーザーのアクセスをブロックするやり方を学んでおくことをすすめる。 Washington University FTP サーバーデーモン (wuftpd) と Professional FTP デーモン (proftpd) とは、 B を利用することがわかっている。" #. 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 is very simple. There is one account name (or username) per line. Lines starting with a # are ignored." msgstr "B のフォーマットは非常に単純であり、 アカウント名 (またはユーザー名) を各行に書くだけである。 # で始まる行は無視される。" #. type: Plain text #: build/C/man5/ftpusers.5:49 msgid "I" msgstr "I" #. type: Plain text #: build/C/man5/ftpusers.5:53 msgid "B(5), B(8), B(8)" msgstr "B(5), B(8), B(8)" #. type: TH #: build/C/man3/getgrent.3:30 #, no-wrap msgid "GETGRENT" msgstr "GETGRENT" #. type: TH #: build/C/man3/getgrent.3:30 #, no-wrap msgid "2014-10-02" msgstr "2014-10-02" #. type: Plain text #: build/C/man3/getgrent.3:33 msgid "getgrent, setgrent, endgrent - get group file entry" msgstr "getgrent, setgrent, endgrent - グループファイルエントリの取得" #. 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 Esys/types.hE>\n" "B<#include Egrp.hE>\n" msgstr "" "B<#include Esys/types.hE>\n" "B<#include Egrp.hE>\n" #. type: Plain text #: build/C/man3/getgrent.3:39 #, no-wrap msgid "B\n" msgstr "B\n" #. type: Plain text #: build/C/man3/getgrent.3:41 #, no-wrap msgid "B\n" msgstr "B\n" #. type: Plain text #: build/C/man3/getgrent.3:43 #, no-wrap msgid "B\n" msgstr "B\n" #. type: Plain text #: build/C/man3/getgrent.3:53 msgid "B():" msgstr "B():" #. type: Plain text #: build/C/man3/getgrent.3:56 msgid "_SVID_SOURCE || _BSD_SOURCE || _XOPEN_SOURCE\\ E=\\ 500 || _XOPEN_SOURCE\\ &&\\ _XOPEN_SOURCE_EXTENDED ||" msgstr "_SVID_SOURCE || _BSD_SOURCE || _XOPEN_SOURCE\\ E=\\ 500 || _XOPEN_SOURCE\\ &&\\ _XOPEN_SOURCE_EXTENDED ||" #. type: Plain text #: build/C/man3/getgrent.3:58 msgid "/* Since glibc 2.12: */ _POSIX_C_SOURCE\\ E=\\ 200809L" msgstr "/* Since glibc 2.12: */ _POSIX_C_SOURCE\\ E=\\ 200809L" #. type: Plain text #: build/C/man3/getgrent.3:62 msgid "B(), B():" msgstr "B(), B():" #. type: Plain text #: build/C/man3/getgrent.3:65 msgid "_SVID_SOURCE || _BSD_SOURCE || _XOPEN_SOURCE\\ E=\\ 500 || _XOPEN_SOURCE\\ &&\\ _XOPEN_SOURCE_EXTENDED" msgstr "_SVID_SOURCE || _BSD_SOURCE || _XOPEN_SOURCE\\ E=\\ 500 || _XOPEN_SOURCE\\ &&\\ _XOPEN_SOURCE_EXTENDED" #. type: Plain text #: build/C/man3/getgrent.3:80 msgid "The B() 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, NIS, and LDAP). The first time B() is called, it returns the first entry; thereafter, it returns successive entries." msgstr "B() 関数は、グループ・データベースから取得したエントリを 要素毎に分解し、各要素を格納した構造体へのポインタを返す (グループ・データベースの例: ローカルのグループファイル I, NIS, LDAP)。 B() は、最初に呼び出された時は最初のエントリを返し、 それ以降は呼び出される毎に次のエントリを返す。" #. type: Plain text #: build/C/man3/getgrent.3:85 msgid "The B() function rewinds to the beginning of the group database, to allow repeated scans." msgstr "B() 関数を使うと、もう一度読み込めるように、 グループ・データベースの先頭に戻る。" #. type: Plain text #: build/C/man3/getgrent.3:90 msgid "The B() function is used to close the group database after all processing has been performed." msgstr "B() 関数は、全ての処理が終わった後にグループ・ データベースをクローズする。" #. 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(5)." msgstr "この構造体のフィールドの詳細は B(5) を参照のこと。" #. type: Plain text #: build/C/man3/getgrent.3:114 msgid "The B() function returns a pointer to a I structure, or NULL if there are no more entries or an error occurs." msgstr "B() 関数は I 構造体へのポインタを返す。 これ以上エントリが無いか、エラーが発生した場合は NULL を返す。" #. type: Plain text #: build/C/man3/getgrent.3:121 msgid "Upon error, I may be set. If one wants to check I after the call, it should be set to zero before the call." msgstr "エラーが発生すると、 I が適切に設定される。 この関数の呼び出し後に I をチェックしたい場合は、呼び出し前に I を 0 に設定しておかないといけない。" #. 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(), B(3), or B(3). (Do not pass the returned pointer to B(3).)" msgstr "返り値は静的な領域を指しており、その後の B(), B(3), B(3) の呼び出しで上書きされるかもしれない。 (返されたポインタを B(3) に渡さないこと。)" #. type: TP #: build/C/man3/getgrent.3:131 #, no-wrap msgid "B" msgstr "B" #. 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 "サービスが一時的に利用できなかったこと。あとでもう一度試してほしい。 NSS バックエンドの場合、glibc では、バックエンドとの通信中に一時的なエラーが発生したことを示す。 このエラーは直るかもしれないので、あとでもう一度試すよう提案している。" #. 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" msgstr "B" #. 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" msgstr "B" #. 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 "I/O エラー。" #. 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" msgstr "B" #. 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" msgstr "B" #. 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" msgstr "B" #. 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 "必要な入力ファイルが見つからなかった。 NSS バックエンドの場合、glibc では、このエラーはバックエンドが正しく設定されていないことを示す。" #. 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" msgstr "B" #. 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" msgstr "I" #. 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 "マルチスレッディング (pthreads(7) 参照)" #. type: Plain text #: build/C/man3/getgrent.3:171 msgid "The B() function is not thread-safe." msgstr "B() 関数はスレッドセーフではない。" #. type: Plain text #: build/C/man3/getgrent.3:177 msgid "The B() and B() functions are thread-safe." msgstr "関数 B() と B() はスレッドセーフである。" #. type: Plain text #: build/C/man3/getgrent.3:179 build/C/man3/getgrnam.3:226 msgid "SVr4, 4.3BSD, POSIX.1-2001." msgstr "SVr4, 4.3BSD, POSIX.1-2001." #. type: Plain text #: build/C/man3/getgrent.3:187 msgid "B(3), B(3), B(3), B(3), B(3), B(3), B(5)" msgstr "B(3), B(3), B(3), B(3) B(3), B(3), B(5)" #. type: TH #: build/C/man3/getgrent_r.3:24 #, no-wrap msgid "GETGRENT_R" msgstr "GETGRENT_R" #. 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 "2015-01-22" #. type: Plain text #: build/C/man3/getgrent_r.3:27 msgid "getgrent_r, fgetgrent_r - get group file entry reentrantly" msgstr "getgrent_r, fgetgrent_r - グループファイルエントリをリエントラント (reentrant) に取り出す" #. type: Plain text #: build/C/man3/getgrent_r.3:30 #, no-wrap msgid "B<#include Egrp.hE>\n" msgstr "B<#include Egrp.hE>\n" #. type: Plain text #: build/C/man3/getgrent_r.3:32 #, no-wrap msgid "BIB<, char *>IB<,>\n" msgstr "BIB<, char *>IB<,>\n" #. type: Plain text #: build/C/man3/getgrent_r.3:34 #, no-wrap msgid "B< size_t >IB<, struct group **>IB<);>\n" msgstr "B< size_t >IB<, struct group **>IB<);>\n" #. type: Plain text #: build/C/man3/getgrent_r.3:36 #, no-wrap msgid "BIB<, struct group *>IB<, char *>IB<,>\n" msgstr "BIB<, struct group *>IB<, char *>IB<,>\n" #. type: Plain text #: build/C/man3/getgrent_r.3:38 #, no-wrap msgid "B< size_t >IB<, struct group **>IB<);>\n" msgstr "B< size_t >IB<, struct group **>IB<);>\n" #. FIXME . The FTM requirements seem inconsistent here. File a glibc bug? #. type: Plain text #: build/C/man3/getgrent_r.3:48 msgid "B(): _GNU_SOURCE" msgstr "B(): _GNU_SOURCE" #. type: Plain text #: build/C/man3/getgrent_r.3:51 msgid "B(): _SVID_SOURCE" msgstr "B(): _SVID_SOURCE" #. type: Plain text #: build/C/man3/getgrent_r.3:64 msgid "The functions B() and B() are the reentrant versions of B(3) and B(3). The former reads the next group entry from the stream initialized by B(3). The latter reads the next group entry from I." msgstr "関数 B() と B() は B(3) と B(3) のリエントラント版である。 前者は、 B(3) によって初期化されたストリームから、次のグループファイルのエントリを読み込む。 後者は、 I から次のグループファイルのエントリを読み込む。" #. 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 that can hold a I. And next the buffer I of size I that can hold additional strings. The result of these functions, the I read from the stream, is stored in the provided buffer I<*gbuf>, and a pointer to this I is returned in I<*gbufp>." msgstr "リエントラントでない関数は静的な格納領域へのポインタを返す。 この静的な格納領域には、更にグループ名・パスワード・ メンバへのポインタが含まれる。 ここで説明されているリエントラントな関数は、 呼び出し側から提供されるバッファにグループ名など全てを返す。 最初の引き数として I を保持できるバッファ I がある。 次にその他の文字列を保持できるサイズ I のバッファ I がある。 これらの関数の結果 (ストリームから読み込まれた I) は、 提供されたバッファ I<*gbuf> に格納され、この I へのポインタは I<*gbufp> に返される。" #. 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. On error, these functions return an error value and I<*gbufp> is NULL." msgstr "成功した場合、これらの関数は 0 を返し、 *I は I へのポインタとなる。 エラーの場合、これらの関数はエラー値を返し、 *I は NULL になる。" #. 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(3). Other systems use the prototype" msgstr "これらの関数は GNU 拡張であり、POSIX 版の関数 B(3) の形式に似せてある。 他のシステムでは以下のプロトタイプが使われている。" #. 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 "" "struct group *getgrent_r(struct group *grp, char *buf,\n" " int buflen);\n" #. 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 "" "int getgrent_r(struct group *grp, char *buf, int buflen,\n" " FILE **gr_fp);\n" #. 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() is not really reentrant since it shares the reading position in the stream with all other threads." msgstr "関数 B() は本当のリエントラントではない。 なぜなら、ストリームの読み込み位置を 他の全てのスレッドと共有しているためである。" #. 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 Egrp.hE\n" "#include Estdio.hE\n" "#include Estdlib.hE\n" "#define BUFLEN 4096\n" msgstr "" "#define _GNU_SOURCE\n" "#include Egrp.hE\n" "#include Estdio.hE\n" "#include Estdlib.hE\n" "#define BUFLEN 4096\n" #. 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 "" "int\n" "main(void)\n" "{\n" " struct group grp, *grpp;\n" " char buf[BUFLEN];\n" " int i;\n" #. 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-Egr_name, grpp-Egr_gid);\n" " for (i = 0; ; i++) {\n" " if (grpp-Egr_mem[i] == NULL)\n" " break;\n" " printf(\" %s\", grpp-Egr_mem[i]);\n" " }\n" " printf(\"\\en\");\n" " }\n" " endgrent();\n" " exit(EXIT_SUCCESS);\n" "}\n" msgstr "" " setgrent();\n" " while (1) {\n" " i = getgrent_r(&grp, buf, BUFLEN, &grpp);\n" " if (i)\n" " break;\n" " printf(\"%s (%d):\", grpp-Egr_name, grpp-Egr_gid);\n" " for (i = 0; ; i++) {\n" " if (grpp-Egr_mem[i] == NULL)\n" " break;\n" " printf(\" %s\", grpp-Egr_mem[i]);\n" " }\n" " printf(\"\\en\");\n" " }\n" " endgrent();\n" " exit(EXIT_SUCCESS);\n" "}\n" #. type: Plain text #: build/C/man3/getgrent_r.3:191 msgid "B(3), B(3), B(3), B(3), B(3), B(5)" msgstr "B(3), B(3), B(3), B(3), B(3), B(5)" #. type: TH #: build/C/man3/getgrnam.3:33 #, no-wrap msgid "GETGRNAM" msgstr "GETGRNAM" #. type: Plain text #: build/C/man3/getgrnam.3:36 msgid "getgrnam, getgrnam_r, getgrgid, getgrgid_r - get group file entry" msgstr "getgrnam, getgrnam_r, getgrgid, getgrgid_r - グループファイルエントリの取り出し" #. type: Plain text #: build/C/man3/getgrnam.3:42 #, no-wrap msgid "BIB<);>\n" msgstr "BIB<);>\n" #. type: Plain text #: build/C/man3/getgrnam.3:44 #, no-wrap msgid "BIB<);>\n" msgstr "BIB<);>\n" #. type: Plain text #: build/C/man3/getgrnam.3:46 #, no-wrap msgid "BIB<, struct group *>IB<,>\n" msgstr "BIB<, struct group *>IB<,>\n" #. type: Plain text #: build/C/man3/getgrnam.3:48 build/C/man3/getgrnam.3:52 #, no-wrap msgid "B< char *>IB<, size_t >IB<, struct group **>IB<);>\n" msgstr "B< char *>IB<, size_t >IB<, struct group **>IB<);>\n" #. type: Plain text #: build/C/man3/getgrnam.3:50 #, no-wrap msgid "BIB<, struct group *>IB<,>\n" msgstr "BIB<, struct group *>IB<,>\n" #. type: Plain text #: build/C/man3/getgrnam.3:62 msgid "B(), B():" msgstr "B(), B():" #. type: Plain text #: build/C/man3/getgrnam.3:65 build/C/man3/getpwnam.3:69 msgid "_POSIX_C_SOURCE\\ E=\\ 1 || _XOPEN_SOURCE || _BSD_SOURCE || _SVID_SOURCE || _POSIX_SOURCE" msgstr "_POSIX_C_SOURCE\\ E=\\ 1 || _XOPEN_SOURCE || _BSD_SOURCE || _SVID_SOURCE || _POSIX_SOURCE" #. type: Plain text #: build/C/man3/getgrnam.3:77 msgid "The B() 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, NIS, and LDAP) that matches the group name I." msgstr "B() 関数は、グループ名 I にマッチするグループ・データベースのエントリを 要素毎に分解し、各要素を格納した構造体へのポインタを返す (パスワード・データベースの例: ローカルのグループファイル I, NIS, LDAP)。" #. type: Plain text #: build/C/man3/getgrnam.3:84 msgid "The B() 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." msgstr "B() 関数は、グループ ID I にマッチするグループ・データベースのエントリを 要素毎に分解し、各要素を格納した構造体へのポインタを返す。" #. type: Plain text #: build/C/man3/getgrnam.3:124 msgid "The B() and B() functions obtain the same information as B() and B(), but store the retrieved I structure in the space pointed to by I. The string fields pointed to by the members of the I structure are stored in the buffer I of size I. 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 "" "B() と B() 関数は、それぞれ B() と\n" "B() と同じ情報を取得するが、取得した I 構造体を\n" "I が指す領域に格納する。I 構造体のメンバーが指す文字列は、\n" "サイズ I のバッファ I に格納される。成功した場合\n" "I<*gbufp> には結果へのポインタが格納される。エントリが見つからなかった\n" "場合やエラーが発生した場合には I<*result> には NULL が入る。" #. 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 " sysconf(_SC_GETGR_R_SIZE_MAX)\n" #. type: Plain text #: build/C/man3/getgrnam.3:137 build/C/man3/getpwnam.3:143 msgid "returns either -1, without changing I, or an initial suggested size for I. (If this size is too small, the call fails with B, in which case the caller can retry with a larger buffer.)" msgstr "" "は、 I を変更せずに -1 を返すか、 I の初期サイズの推奨値を\n" "返す。(このサイズが小さすぎる場合、呼び出しは B で失敗し、この\n" "場合には呼び出し側はバッファを大きくしてから再度呼び出すことができる。)" #. type: Plain text #: build/C/man3/getgrnam.3:152 msgid "The B() and B() functions return a pointer to a I structure, or NULL if the matching entry is not found or an error occurs. If an error occurs, I is set appropriately. If one wants to check I after the call, it should be set to zero before the call." msgstr "B() と B() 関数は、 I 構造体へのポインタを返す。 マッチするエントリが見つからなかった場合や、 エラーが発生した場合は NULL を返す。 エラーが起こった場合、 I が適切に設定される。 呼び出しの後で I をチェックしたい場合は、 呼び出しの前に (この値を) 0 に設定しておくべきである。" #. 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(3), B(), or B(). (Do not pass the returned pointer to B(3).)" msgstr "返り値は静的な領域を指しており、その後の B(3), B(), B() の呼び出しで上書きされるかもしれない。 (返されたポインタを B(3) に渡さないこと。)" #. type: Plain text #: build/C/man3/getgrnam.3:175 msgid "On success, B() and B() return zero, and set I<*result> to I. 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 "成功すると、 B() と B() は 0 を返し、 I<*result> に I を設定する。 マッチするグループ・エントリが見つからなかった場合には、 0 を返し、 I<*result> に NULL を設定する。 エラーの場合、エラー番号を返し、 I<*result> に NULL を設定する。" #. type: TP #: build/C/man3/getgrnam.3:176 build/C/man3/getpwnam.3:182 #, no-wrap msgid "B<0> or B or B or B or B or ... " msgstr "B<0> または B または B または B または B または ... " #. type: Plain text #: build/C/man3/getgrnam.3:183 msgid "The given I or I was not found." msgstr "指定された I または I が見つからなかった。" #. 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) of files was open already in the calling process." msgstr "呼び出し元プロセスがオープンしているファイル数が すでに上限 (B) であった。" #. 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() and B() functions are not thread-safe." msgstr "関数 B() と B() はスレッドセーフではない。" #. type: Plain text #: build/C/man3/getgrnam.3:224 msgid "The B() and B() functions are thread-safe." msgstr "関数 B() と B() はスレッドセーフである。" #. 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 might have in this situation. But that makes it impossible to recognize errors. One might argue that according to POSIX I 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 "上記の「返り値」以下の記述は POSIX.1-2001 に拠る。 この標準は「(エントリが) 見つからないこと」をエラーとしていないので、 そのような場合に I がどのような値になるかを定めていない。 そのため、エラーを認識することは不可能である。 POSIX に準拠して、エントリが見つからない場合は I を変更しないようにすべきである、と主張する人もいるかもしれない。 様々な UNIX 系のシステムで試してみると、そのような場合には 0, ENOENT, EBADF, ESRCH, EWOULDBLOCK, EPERM といった様々な値が返される。 他の値が返されるかもしれない。" #. type: Plain text #: build/C/man3/getgrnam.3:254 msgid "B(3), B(3), B(3), B(3), B(3), B(5)" msgstr "B(3), B(3), B(3), B(3), B(3), B(5)" #. type: TH #: build/C/man3/getgrouplist.3:29 #, no-wrap msgid "GETGROUPLIST" msgstr "GETGROUPLIST" #. type: Plain text #: build/C/man3/getgrouplist.3:32 msgid "getgrouplist - get list of groups to which a user belongs" msgstr "getgrouplist - ユーザが所属するグループのリストを取得する" #. type: Plain text #: build/C/man3/getgrouplist.3:34 build/C/man3/putgrent.3:14 msgid "B<#include Egrp.hE>" msgstr "B<#include Egrp.hE>" #. type: Plain text #: build/C/man3/getgrouplist.3:36 msgid "BIB<, gid_t >IB<,>" msgstr "BIB<, gid_t >IB<,>" #. type: Plain text #: build/C/man3/getgrouplist.3:38 msgid "B< gid_t *>IB<, int *>IB<);>" msgstr "B< gid_t *>IB<, int *>IB<);>" #. type: Plain text #: build/C/man3/getgrouplist.3:46 msgid "B(): _BSD_SOURCE" msgstr "B(): _BSD_SOURCE" #. type: Plain text #: build/C/man3/getgrouplist.3:58 msgid "The B() function scans the group database (see B(5)) to obtain the list of groups that I belongs to. Up to I<*ngroups> of these groups are returned in the array I." msgstr "B() 関数は、グループデータベース (B(5) 参照) を調べて、 I が所属するグループのリストを取得する。 見つかったグループのうち最大 I<*ngroups> 個のグループが、配列 I に格納されて返される。" #. type: Plain text #: build/C/man3/getgrouplist.3:68 msgid "If it was not among the groups defined for I in the group database, then I is included in the list of groups returned by B(); typically this argument is specified as the group ID from the password record for I." msgstr "引き数 I がグループデータベースに I が所属するグループがなかった場合、 B() が返すグループのリストに引き数 I も追加される。 通常は、この引き数にはユーザ I のパスワードレコードに書かれているグループ ID を指定する。" #. type: Plain text #: build/C/man3/getgrouplist.3:78 msgid "The I argument is a value-result argument: on return it always contains the number of groups found for I, including I; this value may be greater than the number of groups stored in I." msgstr "引き数 I は、値渡しと結果の両方に使用される引き数 (value-result argument) であり、 リターン時には、常に I も含めた I が所属するグループ数が格納される。 この値は I に格納されたグループ数より大きくなる可能性がある。" #. type: Plain text #: build/C/man3/getgrouplist.3:86 msgid "If the number of groups of which I is a member is less than or equal to I<*ngroups>, then the value I<*ngroups> is returned." msgstr "I が所属しているグループ数が I<*ngroups> 以下の場合、 I<*ngroups> の値が返される。" #. type: Plain text #: build/C/man3/getgrouplist.3:96 msgid "If the user is a member of more than I<*ngroups> groups, then B() returns -1. In this case, the value returned in I<*ngroups> can be used to resize the buffer passed to a further call B()." msgstr "指定されたユーザが I<*ngroups> より多くのグループに所属している場合、 B() は -1 を返す。 この場合、 I<*ngroups> で返される値を使って、バッファのサイズを変更してから、 B() をもう一度呼び出すことができる。" #. 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 "この関数は glibc 2.2.4 から存在する。" #. type: Plain text #: build/C/man3/getgrouplist.3:100 msgid "This function is nonstandard; it appears on most BSDs." msgstr "この関数は非標準である。ほとんどの BSD に存在する。" #. 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 in the array I, even when the number of groups exceeds I<*ngroups>." msgstr "バージョン 2.3.3 より前の glibc では、 この関数の実装にはバッファオーバーフローのバグがあり、 I が所属するグループ数が I<*ngroups> より多い場合であっても、 I が所属するグループの全リストを配列 I に格納してしまう。" #. 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 value to be supplied to B(). The following shell session shows examples of the use of this program:" msgstr "以下のプログラムは、一つ目のコマンドライン引き数で指定された名前のユーザ が所属するグループのリストを表示する。 二番目のコマンドライン引き数には、 B() に渡す I の値を指定する。 以下のシェルのセッションはこのプログラムの使用例を示したものである。" #. 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 "" "$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" #. 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 Estdio.hE\n" "#include Estdlib.hE\n" "#include Egrp.hE\n" "#include Epwd.hE\n" msgstr "" "#include Estdio.hE\n" "#include Estdlib.hE\n" "#include Egrp.hE\n" "#include Epwd.hE\n" #. 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 "" "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" #. type: Plain text #: build/C/man3/getgrouplist.3:150 #, no-wrap msgid "" " if (argc != 3) {\n" " fprintf(stderr, \"Usage: %s EuserE EngroupsE\\en\", argv[0]);\n" " exit(EXIT_FAILURE);\n" " }\n" msgstr "" " if (argc != 3) {\n" " fprintf(stderr, \"Usage: %s EuserE EngroupsE\\en\", argv[0]);\n" " exit(EXIT_FAILURE);\n" " }\n" #. type: Plain text #: build/C/man3/getgrouplist.3:152 #, no-wrap msgid " ngroups = atoi(argv[2]);\n" msgstr " ngroups = atoi(argv[2]);\n" #. 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 "" " groups = malloc(ngroups * sizeof (gid_t));\n" " if (groups == NULL) {\n" " perror(\"malloc\");\n" " exit(EXIT_FAILURE);\n" " }\n" #. type: Plain text #: build/C/man3/getgrouplist.3:160 #, no-wrap msgid " /* Fetch passwd structure (contains first group ID for user) */\n" msgstr " /* Fetch passwd structure (contains first group ID for user) */\n" #. 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 "" " pw = getpwnam(argv[1]);\n" " if (pw == NULL) {\n" " perror(\"getpwnam\");\n" " exit(EXIT_SUCCESS);\n" " }\n" #. type: Plain text #: build/C/man3/getgrouplist.3:168 #, no-wrap msgid " /* Retrieve group list */\n" msgstr " /* Retrieve group list */\n" #. type: Plain text #: build/C/man3/getgrouplist.3:174 #, no-wrap msgid "" " if (getgrouplist(argv[1], pw-Epw_gid, groups, &ngroups) == -1) {\n" " fprintf(stderr, \"getgrouplist() returned -1; ngroups = %d\\en\",\n" " ngroups);\n" " exit(EXIT_FAILURE);\n" " }\n" msgstr "" " if (getgrouplist(argv[1], pw-Epw_gid, groups, &ngroups) == -1) {\n" " fprintf(stderr, \"getgrouplist() returned -1; ngroups = %d\\en\",\n" " ngroups);\n" " exit(EXIT_FAILURE);\n" " }\n" #. type: Plain text #: build/C/man3/getgrouplist.3:176 #, no-wrap msgid " /* Display list of retrieved groups, along with group names */\n" msgstr " /* Display list of retrieved groups, along with group names */\n" #. type: Plain text #: build/C/man3/getgrouplist.3:185 #, no-wrap msgid "" " fprintf(stderr, \"ngroups = %d\\en\", ngroups);\n" " for (j = 0; j E ngroups; j++) {\n" " printf(\"%d\", groups[j]);\n" " gr = getgrgid(groups[j]);\n" " if (gr != NULL)\n" " printf(\" (%s)\", gr-Egr_name);\n" " printf(\"\\en\");\n" " }\n" msgstr "" " fprintf(stderr, \"ngroups = %d\\en\", ngroups);\n" " for (j = 0; j E ngroups; j++) {\n" " printf(\"%d\", groups[j]);\n" " gr = getgrgid(groups[j]);\n" " if (gr != NULL)\n" " printf(\" (%s)\", gr-Egr_name);\n" " printf(\"\\en\");\n" " }\n" #. type: Plain text #: build/C/man3/getgrouplist.3:188 #, no-wrap msgid "" " exit(EXIT_SUCCESS);\n" "}\n" msgstr "" " exit(EXIT_SUCCESS);\n" "}\n" #. type: Plain text #: build/C/man3/getgrouplist.3:196 msgid "B(2), B(2), B(3), B(3), B(5), B(5)" msgstr "B(2), B(2), B(3), B(3), B(5), B(5)" #. type: TH #: build/C/man3/getpw.3:32 #, no-wrap msgid "GETPW" msgstr "GETPW" #. type: Plain text #: build/C/man3/getpw.3:35 msgid "getpw - reconstruct password line entry" msgstr "getpw - パスワード行エントリを取得する" #. type: Plain text #: build/C/man3/getpw.3:40 #, no-wrap msgid "" "B<#define _GNU_SOURCE> /* See feature_test_macros(7) */\n" "B<#include Esys/types.hE>\n" "B<#include Epwd.hE>\n" msgstr "" "B<#define _GNU_SOURCE> /* feature_test_macros(7) 参照 */\n" "B<#include Esys/types.hE>\n" "B<#include Epwd.hE>\n" #. type: Plain text #: build/C/man3/getpw.3:42 #, no-wrap msgid "BIB<, char *>IB<);>\n" msgstr "BIB<, char *>IB<);>\n" #. type: Plain text #: build/C/man3/getpw.3:49 msgid "The B() function reconstructs the password line entry for the given user ID I in the buffer I. The returned buffer contains a line of format" msgstr "B() 関数は、バッファ I に指定ユーザ ID I の パスワード行エントリを取得する。 返されるバッファは、以下の形式の行を含む。" #. type: Plain text #: build/C/man3/getpw.3:52 msgid "B" msgstr "B" #. 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 "" "struct passwd {\n" " char *pw_name; /* ユーザ名 */\n" " char *pw_passwd; /* ユーザのパスワード */\n" " uid_t pw_uid; /* ユーザ ID */\n" " gid_t pw_gid; /* グループ ID */\n" " char *pw_gecos; /* ユーザ情報 */\n" " char *pw_dir; /* ホームディレクトリ */\n" " char *pw_shell; /* シェルプログラム */\n" "};\n" #. 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(5)." msgstr "この構造体のフィールドの詳細は B(5) を参照のこと。" #. type: Plain text #: build/C/man3/getpw.3:78 msgid "The B() function returns 0 on success; on error, it returns -1, and I is set to indicate the error." msgstr "B() 関数は、成功した場合 0 を返す; エラーが発生した場合 -1 を返し、エラーを 示すために I がセットされる。" #. type: Plain text #: build/C/man3/getpw.3:88 msgid "If I is not found in the password database, B() returns -1, sets I to 0, and leaves I unchanged." msgstr "I がパスワードデータベースに見つからない場合、 B() は -1 を返し、 I に 0 を設定し、 I は変更しない。" #. type: TP #: build/C/man3/getpw.3:89 #, no-wrap msgid "B<0> or B" msgstr "B<0> または B" #. type: Plain text #: build/C/man3/getpw.3:93 msgid "No user corresponding to I." msgstr "I に対応するユーザがいない。" #. type: TP #: build/C/man3/getpw.3:93 build/C/man3/putpwent.3:79 #, no-wrap msgid "B" msgstr "B" #. type: Plain text #: build/C/man3/getpw.3:97 msgid "I is NULL." msgstr "I が NULL。" #. type: Plain text #: build/C/man3/getpw.3:108 msgid "SVr2." msgstr "SVr2" #. type: Plain text #: build/C/man3/getpw.3:115 msgid "The B() function is dangerous as it may overflow the provided buffer I. It is obsoleted by B(3)." msgstr "B() 関数は、与えられたバッファ I がオーバーフローするかもしれないので危険である。 この関数は B(3) によって古いものとなった。" #. type: Plain text #: build/C/man3/getpw.3:124 msgid "B(3), B(3), B(3), B(3), B(3), B(3), B(3), B(5)" msgstr "B(3), B(3), B(3), B(3), B(3), B(3), B(3), B(5)" #. type: TH #: build/C/man3/getpwent.3:33 #, no-wrap msgid "GETPWENT" msgstr "GETPWENT" #. type: TH #: build/C/man3/getpwent.3:33 #, no-wrap msgid "2013-06-21" msgstr "2013-06-21" #. type: Plain text #: build/C/man3/getpwent.3:36 msgid "getpwent, setpwent, endpwent - get password file entry" msgstr "getpwent, setpwent, endpwent - パスワードファイルのエントリの取得" #. type: Plain text #: build/C/man3/getpwent.3:40 build/C/man3/getpwnam.3:44 #, no-wrap msgid "" "B<#include Esys/types.hE>\n" "B<#include Epwd.hE>\n" msgstr "" "B<#include Esys/types.hE>\n" "B<#include Epwd.hE>\n" #. type: Plain text #: build/C/man3/getpwent.3:42 #, no-wrap msgid "B\n" msgstr "B\n" #. type: Plain text #: build/C/man3/getpwent.3:44 #, no-wrap msgid "B\n" msgstr "B\n" #. type: Plain text #: build/C/man3/getpwent.3:46 #, no-wrap msgid "B\n" msgstr "B\n" #. type: Plain text #: build/C/man3/getpwent.3:57 msgid "B(), B(), B():" msgstr "B(), B(), B():" #. type: Plain text #: build/C/man3/getpwent.3:60 msgid "_BSD_SOURCE || _SVID_SOURCE || _XOPEN_SOURCE\\ E=\\ 500 || _XOPEN_SOURCE\\ &&\\ _XOPEN_SOURCE_EXTENDED" msgstr "_BSD_SOURCE || _SVID_SOURCE || _XOPEN_SOURCE\\ E=\\ 500 || _XOPEN_SOURCE\\ &&\\ _XOPEN_SOURCE_EXTENDED" #. type: Plain text #: build/C/man3/getpwent.3:74 msgid "The B() 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, NIS, and LDAP). The first time B() is called, it returns the first entry; thereafter, it returns successive entries." msgstr "B() 関数は、パスワード・データベースから取得したエントリを 要素毎に分解し、各要素を格納した構造体へのポインタを返す (パスワード・データベースの例: ローカルのパスワードファイル I, NIS, LDAP)。 B() は、最初に呼び出された時は最初のエントリを返し、それ以降は 呼び出される毎に次のエントリを返す。" #. type: Plain text #: build/C/man3/getpwent.3:79 msgid "The B() function rewinds to the beginning of the password database." msgstr "B() 関数を使うと、パスワード・データベースの先頭に戻る。" #. type: Plain text #: build/C/man3/getpwent.3:84 msgid "The B() function is used to close the password database after all processing has been performed." msgstr "B() 関数は、全ての処理が終わった後にパスワード・ データベースをクローズする。" #. type: Plain text #: build/C/man3/getpwent.3:116 msgid "The B() function returns a pointer to a I structure, or NULL if there are no more entries or an error occurred. If an error occurs, I is set appropriately. If one wants to check I after the call, it should be set to zero before the call." msgstr "B() 関数は I 構造体へのポインタを返す。 これ以上エントリが無いか、エラーが発生した場合は NULL を返す。 エラーが発生すると、 I が適切に設定される。 この関数の呼び出し後に I をチェックしたい場合は、呼び出し前に I を 0 に設定しておかないといけない。" #. 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(), B(3), or B(3). (Do not pass the returned pointer to B(3).)" msgstr "返り値は静的な領域を指しており、その後の B(), B(3), B(3) の呼び出しで上書きされるかもしれない。 (返されたポインタを B(3) に渡さないこと。)" #. 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() function is not thread-safe." msgstr "B() 関数はスレッドセーフではない。" #. type: Plain text #: build/C/man3/getpwent.3:165 msgid "The B() and B() functions are thread-safe." msgstr "関数 B() と B() はスレッドセーフである。" #. type: Plain text #: build/C/man3/getpwent.3:170 build/C/man3/getpwnam.3:235 msgid "SVr4, 4.3BSD, POSIX.1-2001. The I field is not specified in POSIX, but is present on most implementations." msgstr "SVr4, 4.3BSD, POSIX.1-2001. I フィールドは POSIX では規定されていないが、 ほとんどの実装に存在する。" #. type: Plain text #: build/C/man3/getpwent.3:178 msgid "B(3), B(3), B(3), B(3), B(3), B(3), B(5)" msgstr "B(3), B(3), B(3), B(3), B(3), B(3), B(5)" #. type: TH #: build/C/man3/getpwent_r.3:24 #, no-wrap msgid "GETPWENT_R" msgstr "GETPWENT_R" #. type: Plain text #: build/C/man3/getpwent_r.3:27 msgid "getpwent_r, fgetpwent_r - get passwd file entry reentrantly" msgstr "getpwent_r, fgetpwent_r - パスワードファイルのエントリを リエントラントで取り出す" #. type: Plain text #: build/C/man3/getpwent_r.3:30 #, no-wrap msgid "B<#include Epwd.hE>\n" msgstr "B<#include Epwd.hE>\n" #. type: Plain text #: build/C/man3/getpwent_r.3:32 #, no-wrap msgid "BIB<, char *>IB<,>\n" msgstr "BIB<, char *>IB<,>\n" #. type: Plain text #: build/C/man3/getpwent_r.3:34 #, no-wrap msgid "B< size_t >IB<, struct passwd **>IB<);>\n" msgstr "B< size_t >IB<, struct passwd **>IB<);>\n" #. type: Plain text #: build/C/man3/getpwent_r.3:36 #, no-wrap msgid "BIB<, struct passwd *>IB<, char *>IB<,>\n" msgstr "BIB<, struct passwd *>IB<, char *>IB<,>\n" #. type: Plain text #: build/C/man3/getpwent_r.3:38 #, no-wrap msgid "B< size_t >IB<, struct passwd **>IB<);>\n" msgstr "B< size_t >IB<, struct passwd **>IB<);>\n" #. type: Plain text #: build/C/man3/getpwent_r.3:47 msgid "B(), _BSD_SOURCE || _SVID_SOURCE" msgstr "B(), _BSD_SOURCE || _SVID_SOURCE" #. type: Plain text #: build/C/man3/getpwent_r.3:50 msgid "B(): _SVID_SOURCE" msgstr "B(): _SVID_SOURCE" #. type: Plain text #: build/C/man3/getpwent_r.3:63 msgid "The functions B() and B() are the reentrant versions of B(3) and B(3). The former reads the next passwd entry from the stream initialized by B(3). The latter reads the next passwd entry from I." msgstr "関数 B() と B() は B(3) と B(3) のリエントラント (reentrant) 版である。 前者は、 B(3) によって初期化されたストリームから、次のパスワードエントリを読み込む。 後者は、 I から次のパスワードエントリを読み込む。" #. 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 "" "struct passwd {\n" " char *pw_name; /* ユーザ名 */\n" " char *pw_passwd; /* ユーザのパスワード */\n" " uid_t pw_uid; /* ユーザ ID */\n" " gid_t pw_gid; /* グループ ID */\n" " char *pw_gecos; /* ユーザ情報 */\n" " char *pw_dir; /* ホームディレクトリ */\n" " char *pw_shell; /* シェルプログラム */\n" "};\n" #. 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 that can hold a I. And next the buffer I of size I that can hold additional strings. The result of these functions, the I read from the stream, is stored in the provided buffer I<*pwbuf>, and a pointer to this I is returned in I<*pwbufp>." msgstr "リエントラントでない関数は静的な格納領域へのポインタを返す。 この静的な格納領域には、更にユーザ名・パスワード・gecos フィールド・ ホームディレクトリ・シェルへのポインタが含まれる。 ここで説明されているリエントラント版の関数は、 呼び出し側から提供されるバッファにユーザ名など全てを返す。 最初の引き数として I を保持できるバッファ I がある。 次にその他の文字列を保持できるサイズ I のバッファ I がある。 これらの関数の結果 (ストリームから読み込まれた I) は、 提供されたバッファ I<*pwbuf> に格納され、この I へのポインタは I<*pwbufp> に返される。" #. 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. On error, these functions return an error value and I<*pwbufp> is NULL." msgstr "成功した場合、これらの関数は 0 を返し、 I<*pwbufp> は I へのポインタとなる。 エラーの場合、これらの関数はエラー値を返し、 I<*pwbufp> は NULL になる。" #. 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 "" "struct passwd *\n" "getpwent_r(struct passwd *pwd, char *buf, int buflen);\n" #. 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 "" "int\n" "getpwent_r(struct passwd *pwd, char *buf, int buflen,\n" " FILE **pw_fp);\n" #. type: Plain text #: build/C/man3/getpwent_r.3:145 msgid "The function B() is not really reentrant since it shares the reading position in the stream with all other threads." msgstr "関数 B() は本当のリエントラントではない。 なぜなら、ストリームの読み込み位置を 他の全てのスレッドと共有しているためである。" #. type: Plain text #: build/C/man3/getpwent_r.3:151 #, no-wrap msgid "" "#define _GNU_SOURCE\n" "#include Epwd.hE\n" "#include Estdio.hE\n" "#define BUFLEN 4096\n" msgstr "" "#define _GNU_SOURCE\n" "#include Epwd.hE\n" "#include Estdio.hE\n" "#define BUFLEN 4096\n" #. 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 "" "int\n" "main(void)\n" "{\n" " struct passwd pw, *pwp;\n" " char buf[BUFLEN];\n" " int i;\n" #. 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-Epw_name,\n" " pwp-Epw_uid, pwp-Epw_dir, pwp-Epw_shell);\n" " }\n" " endpwent();\n" " exit(EXIT_SUCCESS);\n" "}\n" msgstr "" " 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-Epw_name,\n" " pwp-Epw_uid, pwp-Epw_dir, pwp-Epw_shell);\n" " }\n" " endpwent();\n" " exit(EXIT_SUCCESS);\n" "}\n" #. type: Plain text #: build/C/man3/getpwent_r.3:188 msgid "B(3), B(3), B(3), B(3), B(3), B(3), B(5)" msgstr "B(3), B(3), B(3), B(3), B(3), B(3), B(5)" #. type: TH #: build/C/man3/getpwnam.3:37 #, no-wrap msgid "GETPWNAM" msgstr "GETPWNAM" #. type: TH #: build/C/man3/getpwnam.3:37 #, no-wrap msgid "2013-07-22" msgstr "2013-07-22" #. type: Plain text #: build/C/man3/getpwnam.3:40 msgid "getpwnam, getpwnam_r, getpwuid, getpwuid_r - get password file entry" msgstr "getpwnam, getpwnam_r, getpwuid, getpwuid_r - パスワードファイルのエントリの取得" #. type: Plain text #: build/C/man3/getpwnam.3:46 #, no-wrap msgid "BIB<);>\n" msgstr "BIB<);>\n" #. type: Plain text #: build/C/man3/getpwnam.3:48 #, no-wrap msgid "BIB<);>\n" msgstr "BIB<);>\n" #. type: Plain text #: build/C/man3/getpwnam.3:50 #, no-wrap msgid "BIB<, struct passwd *>IB<,>\n" msgstr "BIB<, struct passwd *>IB<,>\n" #. type: Plain text #: build/C/man3/getpwnam.3:52 build/C/man3/getpwnam.3:56 #, no-wrap msgid "B< char *>IB<, size_t >IB<, struct passwd **>IB<);>\n" msgstr "B< char *>IB<, size_t >IB<, struct passwd **>IB<);>\n" #. type: Plain text #: build/C/man3/getpwnam.3:54 #, no-wrap msgid "BIB<, struct passwd *>IB<,>\n" msgstr "BIB<, struct passwd *>IB<,>\n" #. type: Plain text #: build/C/man3/getpwnam.3:66 msgid "B(), B():" msgstr "B(), B():" #. type: Plain text #: build/C/man3/getpwnam.3:81 msgid "The B() 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, NIS, and LDAP) that matches the username I." msgstr "B() 関数は、ユーザ名 I にマッチするパスワード・データベースのエントリを 要素毎に分解し、各要素を格納した構造体へのポインタを返す (パスワード・データベースの例: ローカルのパスワードファイル I, NIS, LDAP)。" #. type: Plain text #: build/C/man3/getpwnam.3:88 msgid "The B() 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." msgstr "B() 関数は、ユーザ ID I にマッチするパスワード・データベースのエントリを 要素毎に分解し、各要素を格納した構造体へのポインタを返す。" #. type: Plain text #: build/C/man3/getpwnam.3:108 msgid "See B(5) for more information about these fields." msgstr "これらのフィールドの詳しい情報については B(5) を参照のこと。" #. type: Plain text #: build/C/man3/getpwnam.3:130 msgid "The B() and B() functions obtain the same information as B() and B(), but store the retrieved I structure in the space pointed to by I. The string fields pointed to by the members of the I structure are stored in the buffer I of size I. 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 "" "B() と B() 関数は、それぞれB() と\n" "B() と同じ情報を取得するが、取得した I 構造体を\n" "I が指す領域に格納する。I 構造体のメンバーが指す文字列は、\n" "サイズ I のバッファ I に格納される。成功した場合\n" "I<*result> には結果へのポインタが格納される。エントリが見つからなかった\n" "場合やエラーが発生した場合には I<*result> には NULL が入る。" #. type: Plain text #: build/C/man3/getpwnam.3:134 #, no-wrap msgid " sysconf(_SC_GETPW_R_SIZE_MAX)\n" msgstr " sysconf(_SC_GETPW_R_SIZE_MAX)\n" #. type: Plain text #: build/C/man3/getpwnam.3:158 msgid "The B() and B() functions return a pointer to a I structure, or NULL if the matching entry is not found or an error occurs. If an error occurs, I is set appropriately. If one wants to check I after the call, it should be set to zero before the call." msgstr "B() と B() 関数は、 I 構造体へのポインタを返す。 一致するエントリが見つからなかった場合や、エラーが発生した場合は NULL を返す。 エラーが起こった場合、 I が適切に設定される。 呼び出しの後で I をチェックしたい場合は、 呼び出しの前に (この値を) 0 に設定しておくべきである。" #. 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(3), B(), or B(). (Do not pass the returned pointer to B(3).)" msgstr "返り値は静的な領域を指しており、その後の B(3), B(), B() の呼び出しで上書きされるかもしれない。 (返されたポインタを B(3) に渡さないこと。)" #. type: Plain text #: build/C/man3/getpwnam.3:181 msgid "On success, B() and B() return zero, and set I<*result> to I. 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 "成功すると、 B() と B() は 0 を返し、 I<*result> に I を設定する。 マッチするパスワード・エントリが見つからなかった場合には、 0 を返し、 I<*result> に NULL を設定する。 エラーの場合、エラー番号を返し、 I<*result> に NULL を設定する。" #. type: Plain text #: build/C/man3/getpwnam.3:189 msgid "The given I or I was not found." msgstr "指定された I または I が見つからなかった。" #. type: Plain text #: build/C/man3/getpwnam.3:224 msgid "The B() and B() functions are not thread-safe." msgstr "関数 B() と B() はスレッドセーフではない。" #. type: Plain text #: build/C/man3/getpwnam.3:230 msgid "The B() and B() functions are thread-safe." msgstr "関数 B() と B() はスレッドセーフである。" #. 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 might have in this situation. But that makes it impossible to recognize errors. One might argue that according to POSIX I 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 "上記の「返り値」以下の記述は POSIX.1-2001 に拠る。 この標準は「(エントリが) 見つからないこと」をエラーとしていないので、 そのような場合に I がどのような値になるかを定めていない。 そのため、エラーを認識することは不可能である。 POSIX に準拠して、エントリが見つからない場合は I を変更しないようにすべきである、と主張する人もいるかもしれない。 様々な UNIX 系のシステムで試してみると、そのような場合には 0, ENOENT, EBADF, ESRCH, EWOULDBLOCK, EPERM といった様々な値が返される。 他の値が返されるかもしれない。" #. type: Plain text #: build/C/man3/getpwnam.3:274 msgid "The I field contains the name of the initial working directory of the user. Login programs use the value of this field to initialize the B environment variable for the login shell. An application that wants to determine its user's home directory should inspect the value of B (rather than the value Ipw_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 Ipw_dir> or similar." msgstr "フィールド I には、ユーザの作業ディレクトリ名の初期値が格納される。 ログインプロセスは、このフィールドの値を使って、 ログインシェルの B 環境変数を初期化する。 アプリケーションが、ユーザのホーム・ディレクトリを決定する場合には、 (Ipw_dir> の値ではなく) B の値を検査するようにすべきである。 なぜなら、このようにすることで、ユーザがログイン・セッション中で 「ホーム・ディレクトリ」の意味を変更できるようになるからである。 別のユーザのホーム・ディレクトリ (の初期値) を知るには Ipw_dir> か同様の方法を使う必要がある。" #. type: Plain text #: build/C/man3/getpwnam.3:279 msgid "The program below demonstrates the use of B() to find the full username and user ID for the username supplied as a command-line argument." msgstr "以下のプログラムは B() の使用例を示したもので、コマンドライン引き数で渡されたユーザ名に対する 完全なユーザ名とユーザ ID を探すものである。" #. type: Plain text #: build/C/man3/getpwnam.3:286 #, no-wrap msgid "" "#include Epwd.hE\n" "#include Estdio.hE\n" "#include Estdlib.hE\n" "#include Eunistd.hE\n" "#include Eerrno.hE\n" msgstr "" "#include Epwd.hE\n" "#include Estdio.hE\n" "#include Estdlib.hE\n" "#include Eunistd.hE\n" "#include Eerrno.hE\n" #. 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 "" "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" #. 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 "" " if (argc != 2) {\n" " fprintf(stderr, \"Usage: %s username\\en\", argv[0]);\n" " exit(EXIT_FAILURE);\n" " }\n" #. 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 "" " bufsize = sysconf(_SC_GETPW_R_SIZE_MAX);\n" " if (bufsize == -1) /* 値を決定できなかった */\n" " bufsize = 16384; /* 十分大きな値にすべき */\n" #. 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 "" " buf = malloc(bufsize);\n" " if (buf == NULL) {\n" " perror(\"malloc\");\n" " exit(EXIT_FAILURE);\n" " }\n" #. 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 "" " 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" #. 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 "" " printf(\"Name: %s; UID: %ld\\en\", pwd.pw_gecos, (long) pwd.pw_uid);\n" " exit(EXIT_SUCCESS);\n" "}\n" #. type: Plain text #: build/C/man3/getpwnam.3:336 msgid "B(3), B(3), B(3), B(3), B(3), B(3), B(3), B(3), B(5)" msgstr "B(3), B(3), B(3), B(3), B(3), B(3), B(3), B(3), B(5)" #. type: TH #: build/C/man3/getspnam.3:8 #, no-wrap msgid "GETSPNAM" msgstr "GETSPNAM" #. 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 "getspnam, getspnam_r, getspent, getspent_r, setspent, endspent,fgetspent, fgetspent_r, sgetspent, sgetspent_r, putspent, lckpwdf, ulckpwdf - shadow パスワードファイルのエントリを取得する" #. type: Plain text #: build/C/man3/getspnam.3:16 #, no-wrap msgid "/* General shadow password file API */\n" msgstr "/* 一般的な shadow パスワードファイル API */\n" #. type: Plain text #: build/C/man3/getspnam.3:18 build/C/man3/getspnam.3:40 #, no-wrap msgid "B<#include Eshadow.hE>\n" msgstr "B<#include Eshadow.hE>\n" #. type: Plain text #: build/C/man3/getspnam.3:20 #, no-wrap msgid "BIB<);>\n" msgstr "BIB<);>\n" #. type: Plain text #: build/C/man3/getspnam.3:22 #, no-wrap msgid "B\n" msgstr "B\n" #. type: Plain text #: build/C/man3/getspnam.3:24 #, no-wrap msgid "B\n" msgstr "B\n" #. type: Plain text #: build/C/man3/getspnam.3:26 #, no-wrap msgid "B\n" msgstr "B\n" #. type: Plain text #: build/C/man3/getspnam.3:28 #, no-wrap msgid "BIB<);>\n" msgstr "BIB<);>\n" #. type: Plain text #: build/C/man3/getspnam.3:30 #, no-wrap msgid "BIB<);>\n" msgstr "BIB<);>\n" #. type: Plain text #: build/C/man3/getspnam.3:32 #, no-wrap msgid "BI

B<, FILE *>IB<);>\n" msgstr "BI

B<, FILE *>IB<);>\n" #. type: Plain text #: build/C/man3/getspnam.3:34 #, no-wrap msgid "B\n" msgstr "B\n" #. type: Plain text #: build/C/man3/getspnam.3:36 #, no-wrap msgid "B\n" msgstr "B\n" #. type: Plain text #: build/C/man3/getspnam.3:38 #, no-wrap msgid "/* GNU extension */\n" msgstr "/* GNU 版における拡張 */\n" #. type: Plain text #: build/C/man3/getspnam.3:42 #, no-wrap msgid "BIB<,>\n" msgstr "BIB<,>\n" #. 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 *>IB<, size_t >IB<, struct spwd **>IB<);>\n" msgstr "B< char *>IB<, size_t >IB<, struct spwd **>IB<);>\n" #. type: Plain text #: build/C/man3/getspnam.3:46 #, no-wrap msgid "BIB<, struct spwd *>IB<,>\n" msgstr "BIB<, struct spwd *>IB<,>\n" #. type: Plain text #: build/C/man3/getspnam.3:50 #, no-wrap msgid "BIB<, struct spwd *>IB<,>\n" msgstr "BIB<, struct spwd *>IB<,>\n" #. type: Plain text #: build/C/man3/getspnam.3:54 #, no-wrap msgid "BIB<, struct spwd *>IB<,>\n" msgstr "BIB<, struct spwd *>IB<,>\n" #. type: Plain text #: build/C/man3/getspnam.3:68 msgid "B(), B(), B(), B():" msgstr "B(), B(), B(), B():" #. type: Plain text #: build/C/man3/getspnam.3:70 msgid "_BSD_SOURCE || _SVID_SOURCE" msgstr "_BSD_SOURCE || _SVID_SOURCE" #. 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, NIS, and LDAP), readable only by root." msgstr "昔は暗号化されたパスワードをパスワードファイルに 見えるように公開しておいても安全だと考えられていた。 Julianne Frances Haugh は shadow パスワード・スイートを実装した。 これは暗号化されたパスワードを、root のみが読むことができる shadow パスワード・データベース (例えば、 ローカルの shadow パスワードファイル I, NIS, LDAP) に保持する。" #. 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(3) and B(3))." msgstr "以下で説明する関数は、伝統的なパスワード・データベースに対する 関数に似ている (例えば B(3) や B(3) を参照)。" #. type: Plain text #: build/C/man3/getspnam.3:108 msgid "The B() 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." msgstr "B() 関数は、ユーザ名 I にマッチする shadow パスワード・データベースのエントリを 要素毎に分解し、各要素を格納した構造体へのポインタを返す。" #. 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() function returns a pointer to the next entry in the shadow password database. The position in the input stream is initialized by B(). When done reading, the program may call B() so that resources can be deallocated." msgstr "B() 関数は shadow パスワード・データベースにおける次のエントリへのポインタを返す。 入力ストリームにおける位置は、 B() で初期化される。 読み込みが終わった後に、 B() を呼び出すと、リソースを解放できる。" #. type: Plain text #: build/C/man3/getspnam.3:127 msgid "The B() function is similar to B() but uses the supplied stream instead of the one implicitly opened by B()." msgstr "B() 関数は B() に似ているが、 B() で暗黙のうちにオープンされるストリームではなく、与えられたストリームを使う。" #. type: Plain text #: build/C/man3/getspnam.3:134 msgid "The B() function parses the supplied string I into a struct I." msgstr "B() 関数は与えられた文字列 I を解析し struct I に格納する。" #. type: Plain text #: build/C/man3/getspnam.3:144 msgid "The B() function writes the contents of the supplied struct I I<*p> as a text line in the shadow password file format to I. String entries with value NULL and numerical entries with value -1 are written as an empty string." msgstr "B() 関数は与えられた struct I I<*p> の内容を shadow パスワードファイル形式のテキスト行で I に書き出す。 空文字列として、 値が NULL の文字列エントリと値が -1 の数値エントリが 書き出される。" #. type: Plain text #: build/C/man3/getspnam.3:159 msgid "The B() 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() function releases the lock again. Note that there is no protection against direct access of the shadow password file. Only programs that use B() will notice the lock." msgstr "B() 関数は、 shadow パスワード・データベースを 多重同時アクセスから守るためのものである。 この関数はロックの獲得を試み、 成功した場合は 0 を返す。 失敗した場合 (15 秒以内にロックが取得できなかった場合) は -1 を返す。 B() 関数はロックを再び解放する。 shadow パスワードファイルへの直接アクセスから 保護する手段がない点に注意すること。 B() を使うプログラムだけがロックを通知できる。" #. 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 "これらの関数はオリジナルの shadow API を構成していた関数であり、 いろいろなシステムで広く利用可能である。" #. 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() function is like B() but stores the retrieved shadow password structure in the space pointed to by I. This shadow password structure contains pointers to strings, and these strings are stored in the buffer I of size I. 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 "パスワード・データベースに対するリエントラント版と同じように、 glibc には shadow パスワードファイルに対してリエントラント版がある。 B() 関数は B() と似ているが、取得した shadow パスワード構造体を I が指す領域に格納する。 shadow パスワード構造体は文字列群へのポインタを含み、 これらの文字列群はサイズ I のバッファ I に格納される。 I<*spbufp> には (成功した場合は) 結果へのポインタが格納され、 (エントリが見つからなかった場合またはエラーが起こった場合は) NULL が格納される。" #. type: Plain text #: build/C/man3/getspnam.3:188 msgid "The functions B(), B(), and B() are similarly analogous to their nonreentrant counterparts." msgstr "関数 B(), B(), B() はそれぞれリエントラントでないバージョンと同様の機能を持つ。" #. 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 "glibc でないシステムにもこれらと同じ名前の関数があるが、 プロトタイプが異なることも多い。" #. 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 Ishadow.hE> as follows:" msgstr "shadow パスワード構造体は Ishadow.hE> で以下のように定義されている:" #. 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 "" "struct spwd {\n" " char *sp_namp; /* ログイン名 */\n" " char *sp_pwdp; /* 暗号化されたパスワード */\n" " long sp_lstchg; /* 最終更新日\n" " (1970-01-01 00:00:00 +0000 (UTC)\n" " からの日数) */\n" " long sp_min; /* 変更が出来るようになるまでの最短日数 */\n" " long sp_max; /* 変更をしなくてもよい最長日数 */\n" " long sp_warn; /* パスワードが期限切れになる前に\n" " ユーザに変更の警告を出す日数 */\n" " long sp_inact; /* パスワードが期限切れになってから\n" " アカウントが無効になるまでの日数 */\n" " long sp_expire; /* アカウントが無効になる日付\n" " (1970-01-01 00:00:00 +0000 (UTC)\n" " からの日数) */\n" " unsigned long sp_flag; /* 予約フィールド */\n" "};\n" #. 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 as the return value return 0 for success and -1 for failure, with I set to indicate the cause of the error." msgstr "ポインタを返す関数は、これ以上エントリがない場合や 処理中にエラーが発生した場合 NULL を返す。 I を返り値として持つ関数は、 成功した場合 0 を返し、失敗した場合、 -1 を返し、 I にエラーの原因を示す値を設定する。" #. 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 "リエントラント版の関数は、成功した場合に 0 を返す。 エラーの場合は、エラー番号が返される。" #. type: TP #: build/C/man3/getspnam.3:230 #, no-wrap msgid "B" msgstr "B" #. type: Plain text #: build/C/man3/getspnam.3:233 msgid "The caller does not have permission to access the shadow password file." msgstr "呼び出し元が shadow パスワードファイルにアクセスする許可を持っていない。" #. 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" msgstr "I" #. type: Plain text #: build/C/man3/getspnam.3:240 msgid "local shadow password database file" msgstr "ローカルの shadow パスワード・データベースファイル" #. type: TP #: build/C/man3/getspnam.3:240 #, no-wrap msgid "I" msgstr "I" #. 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 Ipaths.hE> defines the constant B<_PATH_SHADOW> to the pathname of the shadow password file." msgstr "インクルードファイル Ipaths.hE> は定数 B<_PATH_SHADOW> を定義している。 これは shadow パスワードファイルのパス名である。" #. 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 "shadow パスワード・データベースと関連 API は POSIX.1-2001 には記載されていない。しかしながら、多くの他のシステムでも 同様の API が提供されている。" #. type: Plain text #: build/C/man3/getspnam.3:258 msgid "B(3), B(3), B(3), B(5)" msgstr "B(3), B(3), B(3), B(5)" #. type: TH #: build/C/man5/group.5:26 #, no-wrap msgid "GROUP" msgstr "GROUP" #. type: TH #: build/C/man5/group.5:26 #, no-wrap msgid "2010-10-21" msgstr "2010-10-21" #. type: Plain text #: build/C/man5/group.5:29 msgid "group - user group file" msgstr "group - ユーザーグループのファイル" #. type: Plain text #: build/C/man5/group.5:34 msgid "The I file is a text file that defines the groups on the system. There is one entry per line, with the following format:" msgstr "" "I ファイルは、そのシステムのグループを定義するテキスト\n" "ファイルである。 1 行に 1 エントリで、各行の形式は以下のとおりである。" #. type: Plain text #: build/C/man5/group.5:37 msgid "group_name:password:GID:user_list" msgstr "group_name:password:GID:user_list" #. 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" msgstr "I" #. 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" msgstr "I" #. 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" msgstr "I" #. type: Plain text #: build/C/man5/group.5:50 msgid "the numeric group ID." msgstr "グループ ID 番号。" #. type: TP #: build/C/man5/group.5:50 #, no-wrap msgid "I" msgstr "I" #. 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 "/etc/group" #. type: Plain text #: build/C/man5/group.5:61 msgid "As the 4.2BSD B(3) man page says: No-one seems to keep I up-to-date." msgstr "4.2BSD の B(3) には次のように書かれている: 誰も I を最新の状態に保ってはいないようである。" #. type: Plain text #: build/C/man5/group.5:67 msgid "B(1), B(1), B(3), B(3), B(5)" msgstr "B(1), B(1), B(3), B(3), B(5)" #. type: TH #: build/C/man3/initgroups.3:32 #, no-wrap msgid "INITGROUPS" msgstr "INITGROUPS" #. type: TH #: build/C/man3/initgroups.3:32 #, no-wrap msgid "2007-07-26" msgstr "2007-07-26" #. type: Plain text #: build/C/man3/initgroups.3:35 msgid "initgroups - initialize the supplementary group access list" msgstr "initgroups - 追加のグループアクセスリストの初期化" #. type: Plain text #: build/C/man3/initgroups.3:41 #, no-wrap msgid "BIB<, gid_t >IB<);>\n" msgstr "BIB<, gid_t >IB<);>\n" #. type: Plain text #: build/C/man3/initgroups.3:50 msgid "B(): _BSD_SOURCE" msgstr "B(): _BSD_SOURCE" #. type: Plain text #: build/C/man3/initgroups.3:64 msgid "The B() function initializes the group access list by reading the group database I and using all groups of which I is a member. The additional group I is also added to the list." msgstr "B() 関数はグループデータベース I を読み 込んで、I が所属している全てのグループを使って、グループアク セスリストを初期化する。さらに、I に示されるグループもグルー プアクセスリストに追加される。" #. type: Plain text #: build/C/man3/initgroups.3:68 msgid "The I argument must be non-NULL." msgstr "I 引数は NULL であってはならない。" #. type: Plain text #: build/C/man3/initgroups.3:75 msgid "The B() function returns 0 on success. On error, -1 is returned, and I is set appropriately." msgstr "B() 関数は、成功すると 0 を返す。 エラーの場合は -1 を返し、 I を適切に設定する。" #. 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" msgstr "B" #. type: Plain text #: build/C/man3/initgroups.3:84 msgid "The calling process has insufficient privilege. See the underlying system call B(2)." msgstr "呼出しプロセスが十分な特権を持っていない。 この関数の裏で実行されるシステムコール B(2) も参照のこと。" #. type: Plain text #: build/C/man3/initgroups.3:87 #, no-wrap msgid "I\t\tgroup database file\n" msgstr "I\t\tグループデータベースファイル\n" #. type: Plain text #: build/C/man3/initgroups.3:90 msgid "SVr4, 4.3BSD." msgstr "SVr4, 4.3BSD." #. type: Plain text #: build/C/man3/initgroups.3:94 msgid "B(2), B(2), B(7)" msgstr "B(2), B(2), B(7)" #. type: TH #: build/C/man5/passwd.5:30 #, no-wrap msgid "PASSWD" msgstr "PASSWD" #. type: TH #: build/C/man5/passwd.5:30 #, no-wrap msgid "2014-02-11" msgstr "2014-02-11" #. type: Plain text #: build/C/man5/passwd.5:33 msgid "passwd - password file" msgstr "passwd - パスワードファイル" #. type: Plain text #: build/C/man5/passwd.5:41 msgid "The I 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(1) use it to map user IDs to usernames), but write access only for the superuser." msgstr "" "I ファイルは、そのシステムのユーザのログインアカウントリス\n" "トを記述したテキストファイルである。パスワードファイルの読み出し許可は\n" "全ユーザーに対して与えるが(I(1) 等の多くのユーティリティではユーザー\n" "ID をユーザー名に 対応させるのに B ファイルを使用する)、書き込\n" "み許可はスーパーユーザーにのみ与えるようにすべきである。" #. 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 has an \\(aqx\\(aq character in the password field, and the encrypted passwords are in I, which is readable by the superuser only." msgstr "" "古き良き時代には、この全ユーザーに対する読み取り許可は 特別な問題を起こ\n" "さなかった。誰でも暗号化されたパスワードを 読むことが出来たが、上手に選\n" "ばれたパスワードを破るのには 当時のハードウェアの速度はあまりに遅かった\n" "し、それに加えて 友好的なユーザー社会であることを基本的な前提としていた。\n" "最近では多くの人が、何らかのバージョンの shadow password suite\n" "(シャドウ・パスワード機能を実現するためのプログラム群) を動かしている。\n" "その場合 I ファイルのパスワード欄には\n" "\\(aqx\\(aq 文字が設定され、暗号化されたパスワードは\n" "I ファイルに保持される。 I ファイルはスーパー\n" "ユーザーだけが読み出すことができる。" #. type: Plain text #: build/C/man5/passwd.5:62 msgid "If the encrypted password, whether in I or in I, 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 "" "I と I のどちらの場合でも暗号化パスワードが\n" "空文字列の場合、パスワードの問い合わせなしでのログインが許可される。\n" "この機能は、アプリケーションで意図的に無効されたり、\n" "設定可能 (例えば pam_unix.so の \"nullok\" や \"nonull\" 引き数など)\n" "になっていたりする場合がある点に注意すること。" #. type: Plain text #: build/C/man5/passwd.5:67 msgid "If the encrypted password in I is \"I<*NP*>\" (without the quotes), the shadow record should be obtained from an NIS+ server." msgstr "" "I の暗号化パスワードが \"I<*NP*>\" (クォートはなし) の場合、\n" "shadow レコードを NIS+ サーバから取得することを意味する。" #. 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 "" "shadow password が使われているかどうかにはよらず、多くのシステム管理者は、\n" "暗号化パスワード欄にアスタリスク (*) を設定することで、そのユーザーが\n" "パスワードでの認証が受けられないようにしている (下記の「注意」の項を参照)。" #. 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(1) to set it." msgstr "" "新しいユーザーを登録する場合には、パスワード欄にアスタリスク (*) を設定しておき、\n" "B(1) コマンドにより設定を行うようにすること。" #. 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 "" "ファイルの 1 行は 1 ユーザの情報を表し、\n" "コロン区切りの 7 つの項目を含む。" #. type: Plain text #: build/C/man5/passwd.5:84 msgid "name:password:UID:GID:GECOS:directory:shell" msgstr "name:password:UID:GID:GECOS:directory:shell" #. 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" msgstr "I" #. 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(8) for an explanation of \\(aqx\\(aq.)" msgstr "" "暗号化されたユーザのパスワード、アスタリスク (*)、文字 \\(aqx\\(aq の\n" "いずれかである (\\(aqx\\(aq の説明については B(8) を参照)。" #. type: TP #: build/C/man5/passwd.5:98 #, no-wrap msgid "I" msgstr "I" #. type: Plain text #: build/C/man5/passwd.5:103 msgid "The privileged I login account (superuser) has the user ID 0." msgstr "" "特権を持つ I ログインアカウント (スーパーユーザ) は\n" "ユーザ ID 0 である。" #. 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(5))." msgstr "" "このユーザのプライマリグループ ID の番号。\n" "(このユーザの追加のグループはシステムのグループ定義ファイル\n" "で定義される。 B(5) を参照)。" #. type: TP #: build/C/man5/passwd.5:108 #, no-wrap msgid "I" msgstr "I" #. 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(1)) display information from this field." msgstr "" "本欄 (「コメント欄」と呼ばれることもある) は省略可能で、情報提供の\n" "目的のみに使われる。ユーザーのフルネームを設定することが多い。\n" "(B(1) などの) いくつかのプログラムでは、このフィールドの\n" "情報が表示される。" #. 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 "" "GECOS は General Electric Comprehensive Operating System を意味しており、\n" "GE 社の大規模システム部門が Honeywell 社に売却された際に GCOS へと変更\n" "された。Dennis Ritchie 氏は次のように言っている:「時々プリンタ出力や、\n" "バッチジョブを GCOS マシンに送ったりするが、パスワードファイルの \n" "gcos 欄は $IDENT カード用の情報を 隠しておくための場所なんだ。\n" "まるっきりエレガントじゃない。」" #. type: TP #: build/C/man5/passwd.5:125 #, no-wrap msgid "I" msgstr "I" #. 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 environment variable." msgstr "" "ユーザのホームディレクトリ、つまりログイン直後のそのユーザの\n" "初期ディレクトリである。\n" "このフィールドの値は B 環境変数に設定される。" #. type: TP #: build/C/man5/passwd.5:132 #, no-wrap msgid "I" msgstr "I" #. type: Plain text #: build/C/man5/passwd.5:142 msgid "This is the program to run at login (if empty, use I). If set to a nonexistent executable, the user will be unable to login through B(1). The value in this field is used to set the B environment variable." msgstr "" "ログイン時に動くプログラム名 (空欄の場合 I が使われる)。\n" "存在しない実行ファイルが設定された場合、そのユーザは B(1) による\n" "システムへのログインができなくなる。\n" "このフィールドの値は B 環境変数の値に設定される。" #. type: Plain text #: build/C/man5/passwd.5:148 msgid "If you want to create user groups, there must be an entry in I, or no group will exist." msgstr "" "ユーザーグループを作りたい場合には、そのグループが I の中に\n" "定義されていなければならない。そうしないとグループを作ったことにはならない。" #. 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(1), but may still login using B(1), run existing processes and initiate new ones through B(1), B(8), B(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(1)." msgstr "" "暗号化パスワードとしてアスタリスク (*) を設定すると、 B(1) を\n" "使ってのログインができなくなるが、 B(1) ではまだログインができるし、\n" "B(1), B(8), B(1) やメールのフィルタ等を使い、現存するプロセスを\n" "実行させたり、新たなプロセスを起動したりすることができる。\n" "使用する shell の欄を、単に変更することでアカウントを 使えないようにする\n" "のも同様の結果となる。その場合にはさらに B(1) も有効なまま残ってしまう。" #. type: Plain text #: build/C/man5/passwd.5:171 msgid "B(1), B(1), B(1), B(3), B(3), B(3), B(5), B(5)" msgstr "B(1), B(1), B(1), B(3), B(3), B(3), B(5), B(5)" #. type: TH #: build/C/man3/putgrent.3:7 #, no-wrap msgid "PUTGRENT" msgstr "PUTGRENT" #. type: Plain text #: build/C/man3/putgrent.3:10 msgid "putgrent - write a group database entry to a file" msgstr "putgrent - グループデータベースエントリをファイルに書き込む" #. type: Plain text #: build/C/man3/putgrent.3:12 msgid "B<#define _GNU_SOURCE> /* See feature_test_macros(7) */" msgstr "B<#define _GNU_SOURCE> /* feature_test_macros(7) 参照 */" #. type: Plain text #: build/C/man3/putgrent.3:16 msgid "BIB<, FILE *>IB<);>" msgstr "BIB<, FILE *>IB<);>" #. type: Plain text #: build/C/man3/putgrent.3:26 msgid "The B() function is the counterpart for B(3). The function writes the content of the provided I into the I. The list of group members must be NULL-terminated or NULL-initialized." msgstr "B() 関数は B(3) の逆である。 この関数は与えられた I を I に書き込む。 グループメンバのリストは、 NULL で終端されるか、 NULL で初期化されなければならない。" #. type: Plain text #: build/C/man3/putgrent.3:30 msgid "The I is defined as follows:" msgstr "I は以下のように定義される:" #. 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 "" "struct group {\n" " char *gr_name; /* グループ名 */\n" " char *gr_passwd; /* グループパスワード */\n" " gid_t gr_gid; /* グループ ID */\n" " char **gr_mem; /* グループメンバ */\n" "};\n" #. type: Plain text #: build/C/man3/putgrent.3:43 msgid "The function returns zero on success, and a nonzero value on error." msgstr "この関数は、成功した場合は 0 を返し、エラーの場合は 0 以外の値を返す。" #. type: Plain text #: build/C/man3/putgrent.3:45 msgid "This function is a GNU extension." msgstr "この関数は GNU による拡張である。" #. type: Plain text #: build/C/man3/putgrent.3:49 msgid "B(3), B(3), B(5)" msgstr "B(3), B(3), B(5)" #. type: TH #: build/C/man3/putpwent.3:30 #, no-wrap msgid "PUTPWENT" msgstr "PUTPWENT" #. type: Plain text #: build/C/man3/putpwent.3:33 msgid "putpwent - write a password file entry" msgstr "putpwent - パスワードファイルエントリの書き込み" #. type: Plain text #: build/C/man3/putpwent.3:40 #, no-wrap msgid "BI

B<, FILE *>IB<);>\n" msgstr "BI

B<, FILE *>IB<);>\n" #. type: Plain text #: build/C/man3/putpwent.3:49 msgid "B(): _SVID_SOURCE" msgstr "B(): _SVID_SOURCE" #. type: Plain text #: build/C/man3/putpwent.3:54 msgid "The B() function writes a password entry from the structure I

in the file associated with I." msgstr "B() 関数は、構造体 I

からのパスワードエントリを I に結びつけられたファイルに書き込む。" #. 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 "" "struct passwd {\n" " char *pw_name; /* ユーザ名 */\n" " char *pw_passwd; /* ユーザのパスワード */\n" " uid_t pw_uid; /* ユーザ ID */\n" " gid_t pw_gid; /* グループ ID */\n" " char *pw_gecos; /* 本名 */\n" " char *pw_dir; /* ホームディレクトリ */\n" " char *pw_shell; /* シェルプログラム */\n" "};\n" #. type: Plain text #: build/C/man3/putpwent.3:78 msgid "The B() function returns 0 on success, or -1 if an error occurs. In the event of an error, I is set to indicate the cause." msgstr "B() 関数は、成功した場合 0 を返す。 エラーが発生した場合 -1 を返し、 Iに原因を示す値が設定される。" #. type: Plain text #: build/C/man3/putpwent.3:82 msgid "Invalid (NULL) argument given." msgstr "無効な(NULL)引数が渡された。" #. type: Plain text #: build/C/man3/putpwent.3:92 msgid "B(3), B(3), B(3), B(3), B(3), B(3), B(3)" msgstr "B(3), B(3), B(3), B(3), B(3), B(3), B(3)" #. type: TH #: build/C/man3/setaliasent.3:9 #, no-wrap msgid "SETALIASENT" msgstr "SETALIASENT" #. type: TH #: build/C/man3/setaliasent.3:9 #, no-wrap msgid "2003-09-09" msgstr "2003-09-09" #. type: Plain text #: build/C/man3/setaliasent.3:13 msgid "setaliasent, endaliasent, getaliasent, getaliasent_r, getaliasbyname, getaliasbyname_r - read an alias entry" msgstr "setaliasent, endaliasent, getaliasent, getaliasent_r, getaliasbyname, getaliasbyname_r - エイリアスエントリを読み込む" #. type: Plain text #: build/C/man3/setaliasent.3:15 msgid "B<#include Ealiases.hE>" msgstr "B<#include Ealiases.hE>" #. type: Plain text #: build/C/man3/setaliasent.3:17 msgid "B" msgstr "B" #. type: Plain text #: build/C/man3/setaliasent.3:19 msgid "B" msgstr "B" #. type: Plain text #: build/C/man3/setaliasent.3:21 msgid "B" msgstr "B" #. type: Plain text #: build/C/man3/setaliasent.3:23 msgid "BIB<,>" msgstr "BIB<,>" #. type: Plain text #: build/C/man3/setaliasent.3:25 build/C/man3/setaliasent.3:31 msgid "B< char *>IB<, size_t >IB<, struct aliasent **>IB<);>" msgstr "B< char *>IB<, size_t >IB<, struct aliasent **>IB<);>" #. type: Plain text #: build/C/man3/setaliasent.3:27 msgid "BIB<);>" msgstr "BIB<);>" #. type: Plain text #: build/C/man3/setaliasent.3:29 msgid "BIB<, struct aliasent *>IB<,>" msgstr "BIB<, struct aliasent *>IB<,>" #. 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.) Six functions are provided to access the aliases database." msgstr "ネームサービススイッチ (Name Service Switch, NSS) で 利用可能なデータベースの 1 つとして、 メールエイリアスを保持するエイリアスデータベースがある。 (どのデータベースがサポートされているかを調べるには、 getent --help を実行すること。) エイリアスデータベースにアクセスするために、 6 つの関数が提供されている。" #. type: Plain text #: build/C/man3/setaliasent.3:44 msgid "The B() 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 "B() 関数はエイリアスデータベースから取り出した グループ情報を含む構造体へのポインタを返す。 1 回目に関数が呼ばれたときには、最初のエントリを返す; それ以降はその後のエントリを返す。" #. type: Plain text #: build/C/man3/setaliasent.3:49 msgid "The B() function rewinds the file pointer to the beginning of the aliases database." msgstr "B() 関数はファイルポインタをエイリアスデータベースの先頭に巻き戻す。" #. type: Plain text #: build/C/man3/setaliasent.3:53 msgid "The B() function closes the aliases database." msgstr "B() 関数はエイリアスデータベースをクローズする。" #. type: Plain text #: build/C/man3/setaliasent.3:60 msgid "B() 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 "B() 関数は上記の関数のリエントラント版である。 要求された構造体は第 1 引き数に格納されるが、 プログラマは他の引き数も埋めてやる必要がある。 充分な領域が与えられないと、この関数は失敗する。" #. type: Plain text #: build/C/man3/setaliasent.3:66 msgid "The function B() takes the name argument and searches the aliases database. The entry is returned as a pointer to a I." msgstr "関数 B() は name 引き数をとり、エイリアスデータベースを検索する。 エントリは I へのポインタとして返される。" #. type: Plain text #: build/C/man3/setaliasent.3:73 msgid "B() 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 "B() は上記の関数のリエントラント版である。 要求された構造体は第 2 引き数に格納されるが、 プログラマは他の引き数も埋めてやる必要がある。 充分な領域が与えられないと、この関数は失敗する。" #. type: Plain text #: build/C/man3/setaliasent.3:78 msgid "The I is defined in Ialiases.hE>:" msgstr "I は Ialiases.hE> で定義されている。" #. 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 "" "struct aliasent {\n" " char *alias_name; /* エイリアス名 */\n" " size_t alias_members_len;\n" " char **alias_members; /* エイリアス名のリスト */\n" " int alias_local;\n" "};\n" #. type: Plain text #: build/C/man3/setaliasent.3:95 msgid "The functions B() and B() return a nonzero value on error." msgstr "関数 B() と B() は、エラーの場合に 0 以外の値を返す。" #. type: Plain text #: build/C/man3/setaliasent.3:101 msgid "The default alias database is the file I. This can be changed in the I file." msgstr "デフォルトのエイリアスデータベースは、ファイル I である。 これは I ファイルで変更できる。" #. type: Plain text #: build/C/man3/setaliasent.3:104 msgid "These routines are glibc-specific. The NeXT system has similar routines:" msgstr "このルーチンは glibc 固有のものである。 NeXT システムには同様のルーチンがある。" #. type: Plain text #: build/C/man3/setaliasent.3:108 #, no-wrap msgid "#include Ealiasdb.hE\n" msgstr "#include Ealiasdb.hE\n" #. 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 "" "void alias_setent(void);\n" "void alias_endent(void);\n" "alias_ent *alias_getent(void);\n" "alias_ent *alias_getbyname(char *name);\n" #. type: Plain text #: build/C/man3/setaliasent.3:119 msgid "The following example compiles with I. It will dump all names in the alias database." msgstr "以下の例は I でコンパイルできる。 これはエイリアスデータベースにある全ての名前をダンプする。" #. type: Plain text #: build/C/man3/setaliasent.3:125 #, no-wrap msgid "" "#include Ealiases.hE\n" "#include Estdio.hE\n" "#include Estdlib.hE\n" "#include Eerrno.hE\n" msgstr "" "#include Ealiases.hE\n" "#include Estdio.hE\n" "#include Estdlib.hE\n" "#include Eerrno.hE\n" #. 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-Ealias_name);\n" " }\n" " if (errno) {\n" " perror(\"reading alias\");\n" " exit(EXIT_FAILURE);\n" " }\n" " endaliasent();\n" " exit(EXIT_SUCCESS);\n" "}\n" msgstr "" "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-Ealias_name);\n" " }\n" " if (errno) {\n" " perror(\"reading alias\");\n" " exit(EXIT_FAILURE);\n" " }\n" " endaliasent();\n" " exit(EXIT_SUCCESS);\n" #. /etc/sendmail/aliases #. Yellow Pages #. newaliases, postalias #. type: Plain text #: build/C/man3/setaliasent.3:154 msgid "B(3), B(3), B(3), B(5)" msgstr "B(3), B(3), B(3), B(5)"