# 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: 2012-04-23 07:54+0900\n" "PO-Revision-Date: 2012-04-25 01:04+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:28 #, no-wrap msgid "FGETGRENT" msgstr "FGETGRENT" #. type: TH #: build/C/man3/fgetgrent.3:28 build/C/man3/fgetpwent.3:31 #, no-wrap msgid "2008-07-10" msgstr "2008-07-10" #. type: TH #: build/C/man3/fgetgrent.3:28 build/C/man3/fgetpwent.3:31 #: build/C/man3/getgrent_r.3:23 build/C/man3/getgrouplist.3:27 #: build/C/man3/getpw.3:30 build/C/man3/getpwent.3:31 #: build/C/man3/getpwent_r.3:23 build/C/man3/getpwnam.3:35 #: build/C/man3/getspnam.3:6 build/C/man3/initgroups.3:30 #: build/C/man3/putgrent.3:4 build/C/man3/putpwent.3:28 #: build/C/man3/setaliasent.3:6 #, no-wrap msgid "GNU" msgstr "GNU" #. type: TH #: build/C/man3/fgetgrent.3:28 build/C/man3/fgetpwent.3:31 #: build/C/man5/ftpusers.5:17 build/C/man3/getgrent.3:28 #: build/C/man3/getgrent_r.3:23 build/C/man3/getgrnam.3:31 #: build/C/man3/getgrouplist.3:27 build/C/man3/getpw.3:30 #: build/C/man3/getpwent.3:31 build/C/man3/getpwent_r.3:23 #: build/C/man3/getpwnam.3:35 build/C/man3/getspnam.3:6 #: build/C/man5/group.5:25 build/C/man3/initgroups.3:30 #: build/C/man5/passwd.5:29 build/C/man3/putgrent.3:4 #: build/C/man3/putpwent.3:28 build/C/man3/setaliasent.3:6 #, no-wrap msgid "Linux Programmer's Manual" msgstr "Linux Programmer's Manual" #. type: SH #: build/C/man3/fgetgrent.3:29 build/C/man3/fgetpwent.3:32 #: build/C/man5/ftpusers.5:18 build/C/man3/getgrent.3:29 #: build/C/man3/getgrent_r.3:24 build/C/man3/getgrnam.3:32 #: build/C/man3/getgrouplist.3:28 build/C/man3/getpw.3:31 #: build/C/man3/getpwent.3:32 build/C/man3/getpwent_r.3:24 #: build/C/man3/getpwnam.3:36 build/C/man3/getspnam.3:7 #: build/C/man5/group.5:26 build/C/man3/initgroups.3:31 #: build/C/man5/passwd.5:30 build/C/man3/putgrent.3:5 #: build/C/man3/putpwent.3:29 build/C/man3/setaliasent.3:7 #, no-wrap msgid "NAME" msgstr "名前" #. type: Plain text #: build/C/man3/fgetgrent.3:31 msgid "fgetgrent - get group file entry" msgstr "fgetgrent - グループファイルエントリの取り出し" #. type: SH #: build/C/man3/fgetgrent.3:31 build/C/man3/fgetpwent.3:34 #: build/C/man3/getgrent.3:31 build/C/man3/getgrent_r.3:26 #: 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:26 build/C/man3/getpwnam.3:38 #: build/C/man3/getspnam.3:11 build/C/man3/initgroups.3:33 #: build/C/man3/putgrent.3:7 build/C/man3/putpwent.3:31 #: build/C/man3/setaliasent.3:10 #, no-wrap msgid "SYNOPSIS" msgstr "書式" #. type: Plain text #: build/C/man3/fgetgrent.3:36 #, 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:38 #, no-wrap msgid "BIB<);>\n" msgstr "BIB<);>\n" #. type: Plain text #: build/C/man3/fgetgrent.3:43 build/C/man3/fgetpwent.3:46 #: build/C/man3/getgrent.3:46 build/C/man3/getgrent_r.3:42 #: build/C/man3/getgrnam.3:55 build/C/man3/getgrouplist.3:40 #: build/C/man3/getpwent.3:49 build/C/man3/getpwent_r.3:42 #: build/C/man3/getpwnam.3:59 build/C/man3/getspnam.3:59 #: build/C/man3/initgroups.3:44 build/C/man3/putpwent.3:43 msgid "" "Feature Test Macro Requirements for glibc (see B(7)):" msgstr "glibc 向けの機能検査マクロの要件 (B(7) 参照):" #. type: Plain text #: build/C/man3/fgetgrent.3:47 msgid "B(): _SVID_SOURCE" msgstr "B(): _SVID_SOURCE" #. type: SH #: build/C/man3/fgetgrent.3:47 build/C/man3/fgetpwent.3:50 #: build/C/man5/ftpusers.5:20 build/C/man3/getgrent.3:66 #: build/C/man3/getgrent_r.3:50 build/C/man3/getgrnam.3:65 #: build/C/man3/getgrouplist.3:44 build/C/man3/getpw.3:41 #: build/C/man3/getpwent.3:60 build/C/man3/getpwent_r.3:49 #: build/C/man3/getpwnam.3:69 build/C/man3/getspnam.3:70 #: build/C/man5/group.5:28 build/C/man3/initgroups.3:48 #: build/C/man5/passwd.5:32 build/C/man3/putgrent.3:13 #: build/C/man3/putpwent.3:47 build/C/man3/setaliasent.3:28 #, no-wrap msgid "DESCRIPTION" msgstr "説明" #. type: Plain text #: build/C/man3/fgetgrent.3:61 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:63 build/C/man3/getgrent.3:90 #: build/C/man3/getgrent_r.3:67 build/C/man3/getgrnam.3:84 msgid "The I structure is defined in Igrp.hE> as follows:" msgstr "I 構造体は Igrp.hE> で以下のように定義されている:" #. type: Plain text #: build/C/man3/fgetgrent.3:72 #, 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: SH #: build/C/man3/fgetgrent.3:74 build/C/man3/fgetpwent.3:79 #: build/C/man3/getgrent.3:104 build/C/man3/getgrent_r.3:100 #: build/C/man3/getgrnam.3:128 build/C/man3/getgrouplist.3:76 #: build/C/man3/getpw.3:70 build/C/man3/getpwent.3:101 #: build/C/man3/getpwent_r.3:102 build/C/man3/getpwnam.3:135 #: build/C/man3/getspnam.3:212 build/C/man3/initgroups.3:60 #: build/C/man3/putgrent.3:35 build/C/man3/putpwent.3:68 #: build/C/man3/setaliasent.3:85 #, no-wrap msgid "RETURN VALUE" msgstr "返り値" #. type: Plain text #: build/C/man3/fgetgrent.3:81 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: SH #: build/C/man3/fgetgrent.3:81 build/C/man3/fgetpwent.3:86 #: build/C/man3/getgrent.3:127 build/C/man3/getgrent_r.3:107 #: build/C/man3/getgrnam.3:166 build/C/man3/getpw.3:76 #: build/C/man3/getpwent.3:123 build/C/man3/getpwent_r.3:109 #: build/C/man3/getpwnam.3:173 build/C/man3/getspnam.3:223 #: build/C/man3/initgroups.3:67 build/C/man3/putpwent.3:73 #, no-wrap msgid "ERRORS" msgstr "エラー" #. type: TP #: build/C/man3/fgetgrent.3:82 build/C/man3/fgetpwent.3:87 #: build/C/man3/getgrent.3:140 build/C/man3/getgrnam.3:188 #: build/C/man3/getpw.3:85 build/C/man3/getpwent.3:138 #: build/C/man3/getpwnam.3:195 build/C/man3/initgroups.3:68 #, 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:87 build/C/man3/getgrent.3:146 #: build/C/man3/getgrnam.3:195 msgid "Insufficient memory to allocate I structure." msgstr "I 構造体を割り当てるためのメモリが不十分。" #. type: SH #: build/C/man3/fgetgrent.3:87 build/C/man3/fgetpwent.3:96 #: build/C/man3/getgrent.3:153 build/C/man3/getgrent_r.3:115 #: build/C/man3/getgrnam.3:202 build/C/man3/getgrouplist.3:96 #: build/C/man3/getpw.3:94 build/C/man3/getpwent.3:152 #: build/C/man3/getpwent_r.3:117 build/C/man3/getpwnam.3:209 #: build/C/man3/getspnam.3:240 build/C/man3/initgroups.3:80 #: build/C/man3/putgrent.3:37 build/C/man3/putpwent.3:77 #: build/C/man3/setaliasent.3:97 #, no-wrap msgid "CONFORMING TO" msgstr "準拠" #. type: Plain text #: build/C/man3/fgetgrent.3:89 build/C/man3/fgetpwent.3:98 #: build/C/man3/putpwent.3:79 msgid "SVr4." msgstr "SVr4." #. type: SH #: build/C/man3/fgetgrent.3:89 build/C/man3/fgetpwent.3:98 #: build/C/man5/ftpusers.5:47 build/C/man3/getgrent.3:155 #: build/C/man3/getgrent_r.3:182 build/C/man3/getgrnam.3:225 #: build/C/man3/getgrouplist.3:187 build/C/man3/getpw.3:103 #: build/C/man3/getpwent.3:157 build/C/man3/getpwent_r.3:179 #: build/C/man3/getpwnam.3:305 build/C/man3/getspnam.3:244 #: build/C/man5/group.5:60 build/C/man3/initgroups.3:82 #: build/C/man5/passwd.5:131 build/C/man3/putgrent.3:39 #: build/C/man3/putpwent.3:79 build/C/man3/setaliasent.3:141 #, no-wrap msgid "SEE ALSO" msgstr "関連項目" #. type: Plain text #: build/C/man3/fgetgrent.3:99 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:99 build/C/man3/fgetpwent.3:109 #: build/C/man5/ftpusers.5:51 build/C/man3/getgrent.3:163 #: build/C/man3/getgrent_r.3:189 build/C/man3/getgrnam.3:232 #: build/C/man3/getgrouplist.3:193 build/C/man3/getpw.3:112 #: build/C/man3/getpwent.3:165 build/C/man3/getpwent_r.3:187 #: build/C/man3/getpwnam.3:315 build/C/man3/getspnam.3:249 #: build/C/man5/group.5:66 build/C/man3/initgroups.3:86 #: build/C/man5/passwd.5:139 build/C/man3/putgrent.3:43 #: build/C/man3/putpwent.3:87 build/C/man3/setaliasent.3:150 #, no-wrap msgid "COLOPHON" msgstr "この文書について" #. type: Plain text #: build/C/man3/fgetgrent.3:106 build/C/man3/fgetpwent.3:116 #: build/C/man5/ftpusers.5:58 build/C/man3/getgrent.3:170 #: build/C/man3/getgrent_r.3:196 build/C/man3/getgrnam.3:239 #: build/C/man3/getgrouplist.3:200 build/C/man3/getpw.3:119 #: build/C/man3/getpwent.3:172 build/C/man3/getpwent_r.3:194 #: build/C/man3/getpwnam.3:322 build/C/man3/getspnam.3:256 #: build/C/man5/group.5:73 build/C/man3/initgroups.3:93 #: build/C/man5/passwd.5:146 build/C/man3/putgrent.3:50 #: build/C/man3/putpwent.3:94 build/C/man3/setaliasent.3:157 msgid "" "This page is part of release 3.38 of the Linux I project. A " "description of the project, and information about reporting bugs, can be " "found at http://www.kernel.org/doc/man-pages/." msgstr "" "この man ページは Linux I プロジェクトのリリース 3.38 の一部である。\n" "プロジェクトの説明とバグ報告に関する情報は\n" "http://www.kernel.org/doc/man-pages/ に書かれている。" #. type: TH #: build/C/man3/fgetpwent.3:31 #, no-wrap msgid "FGETPWENT" msgstr "FGETPWENT" #. type: Plain text #: build/C/man3/fgetpwent.3:34 msgid "fgetpwent - get password file entry" msgstr "fgetpwent - パスワードファイルエントリの取り出し" #. type: Plain text #: build/C/man3/fgetpwent.3:39 build/C/man3/putpwent.3:36 #, 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:41 #, no-wrap msgid "BIB<);>\n" msgstr "BIB<);>\n" #. type: Plain text #: build/C/man3/fgetpwent.3:50 msgid "B(): _SVID_SOURCE" msgstr "B(): _SVID_SOURCE" #. type: Plain text #: build/C/man3/fgetpwent.3:63 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:65 build/C/man3/getpw.3:53 #: build/C/man3/getpwent.3:84 build/C/man3/getpwent_r.3:66 #: build/C/man3/getpwnam.3:88 build/C/man3/putpwent.3:54 msgid "The I structure is defined in Ipwd.hE> as follows:" msgstr "I 構造体は、Ipwd.hE> で以下のように定義されている:" #. type: Plain text #: build/C/man3/fgetpwent.3:77 #, 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:86 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 を返す。" #. not in POSIX #. This structure is static, allocated 0 or 1 times. No memory leak. (libc45) #. type: Plain text #: build/C/man3/fgetpwent.3:92 build/C/man3/getpw.3:90 #: build/C/man3/getpwent.3:145 build/C/man3/getpwnam.3:202 msgid "Insufficient memory to allocate I structure." msgstr "I 構造体に割り当てるメモリが十分なかった。" #. type: SH #: build/C/man3/fgetpwent.3:92 build/C/man5/ftpusers.5:45 #: build/C/man3/getgrent.3:149 build/C/man3/getgrnam.3:198 #: build/C/man3/getpw.3:90 build/C/man3/getpwent.3:148 #: build/C/man3/getpwnam.3:205 build/C/man3/getspnam.3:227 #: build/C/man5/group.5:52 build/C/man3/initgroups.3:76 #: build/C/man5/passwd.5:111 build/C/man3/setaliasent.3:91 #, no-wrap msgid "FILES" msgstr "ファイル" #. type: Plain text #: build/C/man3/fgetpwent.3:93 build/C/man3/getpw.3:91 #: build/C/man3/getpwent.3:149 build/C/man3/getpwnam.3:206 #: build/C/man5/passwd.5:113 #, no-wrap msgid "I" msgstr "I" #. type: Plain text #: build/C/man3/fgetpwent.3:96 build/C/man3/getpw.3:94 msgid "password database file" msgstr "パスワードデータベースファイル" #. type: Plain text #: build/C/man3/fgetpwent.3:109 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:17 #, no-wrap msgid "FTPUSERS" msgstr "FTPUSERS" #. type: TH #: build/C/man5/ftpusers.5:17 #, no-wrap msgid "2000-08-27" msgstr "2000-08-27" #. type: TH #: build/C/man5/ftpusers.5:17 build/C/man5/group.5:25 build/C/man5/passwd.5:29 #, no-wrap msgid "Linux" msgstr "Linux" #. type: Plain text #: build/C/man5/ftpusers.5:20 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:39 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:39 #, no-wrap msgid "Format" msgstr "フォーマット" #. type: Plain text #: build/C/man5/ftpusers.5:45 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:47 msgid "I" msgstr "I" #. type: Plain text #: build/C/man5/ftpusers.5:51 msgid "B(5), B(8), B(8)" msgstr "B(5), B(8), B(8)" #. type: TH #: build/C/man3/getgrent.3:28 #, no-wrap msgid "GETGRENT" msgstr "GETGRENT" #. type: TH #: build/C/man3/getgrent.3:28 build/C/man3/getgrent_r.3:23 #: build/C/man3/getgrnam.3:31 build/C/man3/getpw.3:30 #: build/C/man3/getpwent.3:31 build/C/man3/getpwent_r.3:23 #: build/C/man3/getpwnam.3:35 build/C/man5/group.5:25 #, no-wrap msgid "2010-10-21" msgstr "2010-10-21" #. type: Plain text #: build/C/man3/getgrent.3:31 msgid "getgrent, setgrent, endgrent - get group file entry" msgstr "getgrent, setgrent, endgrent - グループファイルエントリの取得" #. type: Plain text #: build/C/man3/getgrent.3:35 build/C/man3/getgrnam.3:38 #: build/C/man3/initgroups.3:37 #, 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:37 #, no-wrap msgid "B\n" msgstr "B\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:51 msgid "B():" msgstr "B():" #. type: Plain text #: build/C/man3/getgrent.3:54 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:56 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:60 msgid "B(), B():" msgstr "B(), B():" #. type: Plain text #: build/C/man3/getgrent.3:63 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:78 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:83 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:88 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:99 build/C/man3/getgrnam.3:93 #, 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/getgrent.3:104 build/C/man3/getgrent_r.3:81 #: build/C/man3/getgrnam.3:98 msgid "" "For more information about the fields of this structure, see B(5)." msgstr "この構造体のフィールドの詳細は B(5) を参照のこと。" #. type: Plain text #: build/C/man3/getgrent.3:111 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:118 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:127 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:128 build/C/man3/getgrnam.3:174 #: build/C/man3/getpwent.3:124 build/C/man3/getpwnam.3:181 #, no-wrap msgid "B" msgstr "B" #. type: Plain text #: build/C/man3/getgrent.3:131 build/C/man3/getgrnam.3:177 #: build/C/man3/getpwent.3:127 build/C/man3/getpwnam.3:184 msgid "A signal was caught." msgstr "シグナルが捕捉された。" #. type: TP #: build/C/man3/getgrent.3:131 build/C/man3/getgrnam.3:177 #: build/C/man3/getpwent.3:127 build/C/man3/getpwnam.3:184 #, no-wrap msgid "B" msgstr "B" #. type: Plain text #: build/C/man3/getgrent.3:134 build/C/man3/getgrnam.3:180 #: build/C/man3/getpwent.3:130 build/C/man3/getpwnam.3:187 msgid "I/O error." msgstr "I/O エラー。" #. type: TP #: build/C/man3/getgrent.3:134 build/C/man3/getgrnam.3:180 #: build/C/man3/getpwent.3:130 build/C/man3/getpwnam.3:187 #, no-wrap msgid "B" msgstr "B" #. type: Plain text #: build/C/man3/getgrent.3:137 msgid "The calling process already has too many open files." msgstr "呼び出したプロセスが既にファイルをオープンし過ぎている。" #. type: TP #: build/C/man3/getgrent.3:137 build/C/man3/getgrnam.3:185 #: build/C/man3/getpwent.3:135 build/C/man3/getpwnam.3:192 #, no-wrap msgid "B" msgstr "B" #. type: Plain text #: build/C/man3/getgrent.3:140 msgid "Too many open files in the system." msgstr "システム上にオープンされたファイルが多過ぎる。" #. type: TP #: build/C/man3/getgrent.3:146 build/C/man3/getgrent_r.3:111 #: build/C/man3/getgrnam.3:195 build/C/man3/getpwent.3:145 #: build/C/man3/getpwent_r.3:113 build/C/man3/getpwnam.3:202 #: build/C/man3/getspnam.3:224 #, no-wrap msgid "B" msgstr "B" #. type: Plain text #: build/C/man3/getgrent.3:149 build/C/man3/getgrnam.3:198 #: build/C/man3/getpwent.3:148 build/C/man3/getpwnam.3:205 msgid "Insufficient buffer space supplied." msgstr "与えられたバッファ空間が不十分である。" #. type: TP #: build/C/man3/getgrent.3:150 build/C/man3/getgrnam.3:199 #, no-wrap msgid "I" msgstr "I" #. type: Plain text #: build/C/man3/getgrent.3:153 build/C/man3/getgrnam.3:202 msgid "local group database file" msgstr "ローカルのグループ・データベースファイル" #. type: Plain text #: build/C/man3/getgrent.3:155 build/C/man3/getgrnam.3:204 msgid "SVr4, 4.3BSD, POSIX.1-2001." msgstr "SVr4, 4.3BSD, POSIX.1-2001." #. type: Plain text #: build/C/man3/getgrent.3:163 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:23 #, no-wrap msgid "GETGRENT_R" msgstr "GETGRENT_R" #. type: Plain text #: build/C/man3/getgrent_r.3:26 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:29 #, no-wrap msgid "B<#include Egrp.hE>\n" msgstr "B<#include Egrp.hE>\n" #. type: Plain text #: build/C/man3/getgrent_r.3:31 #, no-wrap msgid "BIB<, char *>IB<,>\n" msgstr "BIB<, char *>IB<,>\n" #. type: Plain text #: build/C/man3/getgrent_r.3:33 #, 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:35 #, 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:37 #, 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:47 msgid "B(): _GNU_SOURCE" msgstr "B(): _GNU_SOURCE" #. type: Plain text #: build/C/man3/getgrent_r.3:50 msgid "B(): _SVID_SOURCE" msgstr "B(): _SVID_SOURCE" #. type: Plain text #: build/C/man3/getgrent_r.3:63 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 the stream I." msgstr "" "関数 B() と B() は B(3) と B" "(3) のリエントラント版である。 前者は、 B(3) によって初期化された" "ストリームから、次のグループファイルのエントリを読み込む。 後者は、ストリー" "ム I から次のグループファイルのエントリを読み込む。" #. type: Plain text #: build/C/man3/getgrent_r.3:76 #, 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/getgrent_r.3:100 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:107 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: TP #: build/C/man3/getgrent_r.3:108 build/C/man3/getpw.3:81 #: build/C/man3/getpwent_r.3:110 #, no-wrap msgid "B" msgstr "B" #. type: Plain text #: build/C/man3/getgrent_r.3:111 build/C/man3/getpwent_r.3:113 msgid "No more entries." msgstr "次のエントリがない。" #. type: Plain text #: build/C/man3/getgrent_r.3:115 build/C/man3/getpwent_r.3:117 msgid "Insufficient buffer space supplied. Try again with larger buffer." msgstr "" "十分なバッファ空間が与えられていない。 もっと大きなバッファで再度実行するこ" "と。" #. type: Plain text #: build/C/man3/getgrent_r.3:120 build/C/man3/getpwent_r.3:122 msgid "" "These functions are GNU extensions, done in a style resembling the POSIX " "version of functions like B(3). Other systems use prototype" msgstr "" "これらの関数は GNU 拡張であり、POSIX 版の関数 B(3) の形式に似せ" "てある。 他のシステムでは以下のプロトタイプが使われている。" #. type: Plain text #: build/C/man3/getgrent_r.3:125 #, 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:129 build/C/man3/getpwent_r.3:131 msgid "or, better," msgstr "より良いものでは、以下のようになっている。" #. type: Plain text #: build/C/man3/getgrent_r.3:134 #, 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:136 build/C/man3/getgrnam.3:204 #: build/C/man3/getpwent_r.3:139 build/C/man3/getpwnam.3:214 #: build/C/man5/passwd.5:113 #, no-wrap msgid "NOTES" msgstr "注意" #. type: Plain text #: build/C/man3/getgrent_r.3:141 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:141 build/C/man3/getgrouplist.3:107 #: build/C/man3/getpwent_r.3:144 build/C/man3/getpwnam.3:253 #: build/C/man3/setaliasent.3:111 #, no-wrap msgid "EXAMPLE" msgstr "例" #. type: Plain text #: build/C/man3/getgrent_r.3:148 #, 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:155 #, 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:172 #, 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:189 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:31 #, no-wrap msgid "GETGRNAM" msgstr "GETGRNAM" #. type: Plain text #: build/C/man3/getgrnam.3:34 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:40 #, no-wrap msgid "BIB<);>\n" msgstr "BIB<);>\n" #. 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<, struct group *>IB<,>\n" msgstr "BIB<, struct group *>IB<,>\n" #. type: Plain text #: build/C/man3/getgrnam.3:46 build/C/man3/getgrnam.3:50 #, 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:48 #, no-wrap msgid "BIB<, struct group *>IB<,>\n" msgstr "BIB<, struct group *>IB<,>\n" #. type: Plain text #: build/C/man3/getgrnam.3:60 msgid "B(), B():" msgstr "B(), B():" #. type: Plain text #: build/C/man3/getgrnam.3:63 build/C/man3/getpwnam.3:67 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:75 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:82 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:121 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:128 msgid "" "The maximum needed size for I can be found using B(3) with " "the argument B<_SC_GETGR_R_SIZE_MAX>." msgstr "" "I に最大必要なサイズは、 B(3) に引き数 " "B<_SC_GETGR_R_SIZE_MAX> を指定して実行することで分かる。" #. type: Plain text #: build/C/man3/getgrnam.3:143 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:152 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:166 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:167 build/C/man3/getpwnam.3:174 #, 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:174 msgid "The given I or I was not found." msgstr "指定された I または I が見つからなかった。" #. type: Plain text #: build/C/man3/getgrnam.3:185 build/C/man3/getpwent.3:135 #: build/C/man3/getpwnam.3:192 msgid "" "The maximum number (B) of files was open already in the calling " "process." msgstr "" "呼び出し元プロセスがオープンしているファイル数が すでに上限 (B) で" "あった。" #. type: Plain text #: build/C/man3/getgrnam.3:188 build/C/man3/getpwent.3:138 #: build/C/man3/getpwnam.3:195 msgid "The maximum number of files was open already in the system." msgstr "システムでオープンされているファイル数がすでに上限であった。" #. more precisely: #. AIX 5.1 - gives ESRCH #. OSF1 4.0g - gives EWOULDBLOCK #. libc, glibc up to version 2.6, Irix 6.5 - give ENOENT #. glibc since version 2.7 - give 0 #. FreeBSD 4.8, OpenBSD 3.2, NetBSD 1.6 - give EPERM #. SunOS 5.8 - gives EBADF #. Tru64 5.1b, HP-UX-11i, SunOS 5.7 - give 0 #. type: Plain text #: build/C/man3/getgrnam.3:225 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:232 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:27 #, no-wrap msgid "GETGROUPLIST" msgstr "GETGROUPLIST" #. type: TH #: build/C/man3/getgrouplist.3:27 #, no-wrap msgid "2008-07-03" msgstr "2009-07-03" #. type: Plain text #: build/C/man3/getgrouplist.3:30 msgid "getgrouplist - get list of groups to which a user belongs" msgstr "getgrouplist - ユーザが所属するグループのリストを取得する" #. type: Plain text #: build/C/man3/getgrouplist.3:32 build/C/man3/putgrent.3:11 msgid "B<#include Egrp.hE>" msgstr "B<#include Egrp.hE>" #. type: Plain text #: build/C/man3/getgrouplist.3:34 msgid "BIB<, gid_t >IB<,>" msgstr "BIB<, gid_t >IB<,>" #. type: Plain text #: build/C/man3/getgrouplist.3:36 msgid "B< gid_t *>IB<, int *>IB<);>" msgstr "B< gid_t *>IB<, int *>IB<);>" #. type: Plain text #: build/C/man3/getgrouplist.3:44 msgid "B(): _BSD_SOURCE" msgstr "B(): _BSD_SOURCE" #. type: Plain text #: build/C/man3/getgrouplist.3:56 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:66 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:76 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:84 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:94 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:94 #, no-wrap msgid "VERSIONS" msgstr "バージョン" #. type: Plain text #: build/C/man3/getgrouplist.3:96 msgid "This function is present since glibc 2.2.4." msgstr "この関数は glibc 2.2.4 から存在する。" #. type: Plain text #: build/C/man3/getgrouplist.3:98 msgid "This function is nonstandard; it appears on most BSDs." msgstr "この関数は非標準である。ほとんどの BSD に存在する。" #. type: SH #: build/C/man3/getgrouplist.3:98 build/C/man3/getpw.3:96 #: build/C/man5/group.5:54 #, no-wrap msgid "BUGS" msgstr "バグ" #. type: Plain text #: build/C/man3/getgrouplist.3:107 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:116 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:126 #, 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:128 #, no-wrap msgid "Program source" msgstr "プログラムのソース" #. type: Plain text #: build/C/man3/getgrouplist.3:135 #, 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:143 #, 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:148 #, 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:150 #, no-wrap msgid " ngroups = atoi(argv[2]);\n" msgstr " ngroups = atoi(argv[2]);\n" #. type: Plain text #: build/C/man3/getgrouplist.3:156 #, 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:158 #, 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:164 #, 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:166 #, no-wrap msgid " /* Retrieve group list */\n" msgstr " /* Retrieve group list */\n" #. type: Plain text #: build/C/man3/getgrouplist.3:172 #, 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" "\texit(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" "\texit(EXIT_FAILURE);\n" " }\n" #. type: Plain text #: build/C/man3/getgrouplist.3:174 #, 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:183 #, 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:186 #, no-wrap msgid "" " exit(EXIT_SUCCESS);\n" "}\n" msgstr "" " exit(EXIT_SUCCESS);\n" "}\n" #. type: Plain text #: build/C/man3/getgrouplist.3:193 msgid "" "B(2), B(2), B(3), B(5), B(5)" msgstr "" "B(2), B(2), B(3), B(5), B(5)" #. type: TH #: build/C/man3/getpw.3:30 #, no-wrap msgid "GETPW" msgstr "GETPW" #. type: Plain text #: build/C/man3/getpw.3:33 msgid "getpw - Re-construct password line entry" msgstr "getpw - パスワード行エントリを取得する" #. type: Plain text #: build/C/man3/getpw.3:38 #, 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:40 #, no-wrap msgid "BIB<, char *>IB<);>\n" msgstr "BIB<, char *>IB<);>\n" #. type: Plain text #: build/C/man3/getpw.3:47 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:50 msgid "B" msgstr "B" #. type: Plain text #: build/C/man3/getpw.3:65 build/C/man3/getpwent.3:96 #: build/C/man3/getpwnam.3:100 #, 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:70 build/C/man3/getpwent.3:101 #: build/C/man3/getpwent_r.3:83 msgid "" "For more information about the fields of this structure, see B(5)." msgstr "この構造体のフィールドの詳細は B(5) を参照のこと。" #. type: Plain text #: build/C/man3/getpw.3:76 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: TP #: build/C/man3/getpw.3:77 build/C/man3/putpwent.3:74 #, no-wrap msgid "B" msgstr "B" #. type: Plain text #: build/C/man3/getpw.3:81 msgid "I is NULL." msgstr "I が NULL。" #. type: Plain text #: build/C/man3/getpw.3:85 msgid "No user corresponding to I." msgstr "I に対応するユーザがいない。" #. type: Plain text #: build/C/man3/getpw.3:96 msgid "SVr2." msgstr "SVr2" #. type: Plain text #: build/C/man3/getpw.3:103 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:112 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:31 #, no-wrap msgid "GETPWENT" msgstr "GETPWENT" #. type: Plain text #: build/C/man3/getpwent.3:34 msgid "getpwent, setpwent, endpwent - get password file entry" msgstr "getpwent, setpwent, endpwent - パスワードファイルのエントリの取得" #. type: Plain text #: build/C/man3/getpwent.3:38 build/C/man3/getpwnam.3:42 #, 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:40 #, no-wrap msgid "B\n" msgstr "B\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:55 msgid "B(), B(), B():" msgstr "B(), B(), B():" #. type: Plain text #: build/C/man3/getpwent.3:58 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:72 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:77 msgid "" "The B() function rewinds to the beginning of the password " "database." msgstr "B() 関数を使うと、パスワード・データベースの先頭に戻る。" #. type: Plain text #: build/C/man3/getpwent.3:82 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:114 msgid "" "The B() function returns a pointer to a I structure, or " "NULL if there are no more entries 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() 関数は I 構造体へのポインタを返す。 これ以上エントリが" "無いか、エラーが発生した場合は NULL を返す。 エラーが発生すると、 I が" "適切に設定される。 この関数の呼び出し後に I をチェックしたい場合は、呼" "び出し前に I を 0 に設定しておかないといけない。" #. type: Plain text #: build/C/man3/getpwent.3:123 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:152 build/C/man3/getpwnam.3:209 msgid "local password database file" msgstr "ローカルのパスワード・データベースファイル" #. type: Plain text #: build/C/man3/getpwent.3:157 build/C/man3/getpwnam.3:214 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:165 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:23 #, no-wrap msgid "GETPWENT_R" msgstr "GETPWENT_R" #. type: Plain text #: build/C/man3/getpwent_r.3:26 msgid "getpwent_r, fgetpwent_r - get passwd file entry reentrantly" msgstr "" "getpwent_r, fgetpwent_r - パスワードファイルのエントリを リエントラントで取り" "出す" #. type: Plain text #: build/C/man3/getpwent_r.3:29 #, no-wrap msgid "B<#include Epwd.hE>\n" msgstr "B<#include Epwd.hE>\n" #. type: Plain text #: build/C/man3/getpwent_r.3:31 #, no-wrap msgid "BIB<, char *>IB<,>\n" msgstr "BIB<, char *>IB<,>\n" #. type: Plain text #: build/C/man3/getpwent_r.3:33 #, 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:35 #, 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:37 #, 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:46 msgid "B(), _BSD_SOURCE || _SVID_SOURCE" msgstr "B(), _BSD_SOURCE || _SVID_SOURCE" #. type: Plain text #: build/C/man3/getpwent_r.3:49 msgid "B(): _SVID_SOURCE" msgstr "B(): _SVID_SOURCE" #. type: Plain text #: build/C/man3/getpwent_r.3:62 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 the stream I." msgstr "" "関数 B() と B() は B(3) と B" "(3) のリエントラント (reentrant) 版である。 前者は、 B(3) によっ" "て初期化されたストリームから、次のパスワードエントリを読み込む。 後者は、スト" "リーム I から次のパスワードエントリを読み込む。" #. type: Plain text #: build/C/man3/getpwent_r.3:78 #, 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:102 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:109 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:127 #, 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:137 #, 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:144 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:150 #, 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:157 #, 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:169 #, 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: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/getpwnam.3:35 #, no-wrap msgid "GETPWNAM" msgstr "GETPWNAM" #. type: Plain text #: build/C/man3/getpwnam.3:38 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:44 #, no-wrap msgid "BIB<);>\n" msgstr "BIB<);>\n" #. 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<, struct passwd *>IB<,>\n" msgstr "BIB<, struct passwd *>IB<,>\n" #. type: Plain text #: build/C/man3/getpwnam.3:50 build/C/man3/getpwnam.3:54 #, 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:52 #, no-wrap msgid "BIB<, struct passwd *>IB<,>\n" msgstr "BIB<, struct passwd *>IB<,>\n" #. type: Plain text #: build/C/man3/getpwnam.3:64 msgid "B(), B():" msgstr "B(), B():" #. type: Plain text #: build/C/man3/getpwnam.3:79 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:86 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:106 msgid "See B(5) for more information about these fields." msgstr "これらのフィールドの詳しい情報については B(5) を参照のこと。" #. type: Plain text #: build/C/man3/getpwnam.3:128 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:135 msgid "" "The maximum size needed for I can be found using B(3) with " "the argument B<_SC_GETPW_R_SIZE_MAX>." msgstr "" "I に必要な最大サイズは、 B(3) に引き数\n" "B<_SC_GETPW_R_SIZE_MAX> を指定して実行することで分かる。" #. type: Plain text #: build/C/man3/getpwnam.3:150 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:159 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:173 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:181 msgid "The given I or I was not found." msgstr "指定された I または I が見つからなかった。" #. 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:235 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:253 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:258 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:265 #, 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:274 #, 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:279 #, 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:283 #, 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:289 #, 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:300 #, 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:304 #, 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:315 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:6 #, no-wrap msgid "GETSPNAM" msgstr "GETSPNAM" #. type: TH #: build/C/man3/getspnam.3:6 #, no-wrap msgid "2010-02-25" msgstr "2010-02-25" #. type: Plain text #: build/C/man3/getspnam.3:11 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:14 #, no-wrap msgid "/* General shadow password file API */\n" msgstr "/* 一般的な shadow パスワードファイル API */\n" #. type: Plain text #: build/C/man3/getspnam.3:16 build/C/man3/getspnam.3:38 #, no-wrap msgid "B<#include Eshadow.hE>\n" msgstr "B<#include Eshadow.hE>\n" #. type: Plain text #: build/C/man3/getspnam.3:18 #, no-wrap msgid "BIB<);>\n" msgstr "BIB<);>\n" #. type: Plain text #: build/C/man3/getspnam.3:20 #, no-wrap msgid "B\n" msgstr "B\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 "BIB<);>\n" msgstr "BIB<);>\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 "BI

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

B<, FILE *>IB<);>\n" #. type: Plain text #: build/C/man3/getspnam.3:32 #, no-wrap msgid "B\n" msgstr "B\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 "/* GNU extension */\n" msgstr "/* GNU 版における拡張 */\n" #. type: Plain text #: build/C/man3/getspnam.3:40 #, no-wrap msgid "BIB<,>\n" msgstr "BIB<,>\n" #. type: Plain text #: build/C/man3/getspnam.3:42 build/C/man3/getspnam.3:46 #: build/C/man3/getspnam.3:50 build/C/man3/getspnam.3:54 #, 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:44 #, no-wrap msgid "BIB<, struct spwd *>IB<,>\n" msgstr "BIB<, struct spwd *>IB<,>\n" #. type: Plain text #: build/C/man3/getspnam.3:48 #, no-wrap msgid "BIB<, struct spwd *>IB<,>\n" msgstr "BIB<, struct spwd *>IB<,>\n" #. type: Plain text #: build/C/man3/getspnam.3:52 #, no-wrap msgid "BIB<, struct spwd *>IB<,>\n" msgstr "BIB<, struct spwd *>IB<,>\n" #. type: Plain text #: build/C/man3/getspnam.3:66 msgid "B(), B(), B(), B():" msgstr "B(), B(), B(), B():" #. type: Plain text #: build/C/man3/getspnam.3:68 msgid "_BSD_SOURCE || _SVID_SOURCE" msgstr "_BSD_SOURCE || _SVID_SOURCE" #. type: Plain text #: build/C/man3/getspnam.3:82 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:99 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:106 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:118 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:125 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:132 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:142 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 the " "stream 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:157 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:162 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:162 #, no-wrap msgid "Reentrant versions" msgstr "リエントラント版" #. type: Plain text #: build/C/man3/getspnam.3:179 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:186 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:190 msgid "" "Some non-glibc systems also have functions with these names, often with " "different prototypes." msgstr "" "glibc でないシステムにもこれらと同じ名前の関数があるが、 プロトタイプが異なる" "ことも多い。" #. type: SS #: build/C/man3/getspnam.3:190 #, no-wrap msgid "Structure" msgstr "構造体" #. type: Plain text #: build/C/man3/getspnam.3:192 msgid "" "The shadow password structure is defined in Ishadow.hE> as follows:" msgstr "" "shadow パスワード構造体は Ishadow.hE> で以下のように定義されている:" #. type: Plain text #: build/C/man3/getspnam.3:210 #, 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 (measured\n" " in days since 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 (measured\n" " in days since 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" " 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" " unsigned long sp_flag; /* 予約フィールド */\n" "};\n" #. type: Plain text #: build/C/man3/getspnam.3:217 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." msgstr "" "ポインタを返す関数は、これ以上エントリがない場合や 処理中にエラーが発生した場" "合 NULL を返す。 I を返り値として持つ関数は、 成功した場合 0 を返し、失" "敗した場合 -1 を返す。" #. type: Plain text #: build/C/man3/getspnam.3:220 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:223 msgid "" "The reentrant functions return zero on success. In case of error, an error " "number is returned." msgstr "" "リエントラント版の関数は、成功した場合に 0 を返す。 エラーの場合は、エラー番" "号が返される。" #. type: Plain text #: build/C/man3/getspnam.3:227 msgid "Supplied buffer is too small." msgstr "与えられたバッファが小さすぎる。" #. type: TP #: build/C/man3/getspnam.3:228 #, no-wrap msgid "I" msgstr "I" #. type: Plain text #: build/C/man3/getspnam.3:231 msgid "local shadow password database file" msgstr "ローカルの shadow パスワード・データベースファイル" #. type: TP #: build/C/man3/getspnam.3:231 #, no-wrap msgid "I" msgstr "I" #. type: Plain text #: build/C/man3/getspnam.3:234 msgid "lock file" msgstr "ロックファイル" #. type: Plain text #: build/C/man3/getspnam.3:240 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:244 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:249 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:25 #, no-wrap msgid "GROUP" msgstr "GROUP" #. type: Plain text #: build/C/man5/group.5:28 msgid "group - user group file" msgstr "group - ユーザーグループのファイル" #. type: Plain text #: build/C/man5/group.5:33 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:36 msgid "group_name:password:GID:user_list" msgstr "group_name:password:GID:user_list" #. type: Plain text #: build/C/man5/group.5:39 msgid "The fields are as follows:" msgstr "各フィールドは以下の通りである:" #. type: TP #: build/C/man5/group.5:39 #, no-wrap msgid "I" msgstr "I" #. type: Plain text #: build/C/man5/group.5:42 msgid "the name of the group." msgstr "グループの名前。" #. type: TP #: build/C/man5/group.5:42 build/C/man5/passwd.5:75 #, no-wrap msgid "I" msgstr "I" #. type: Plain text #: build/C/man5/group.5:46 msgid "" "the (encrypted) group password. If this field is empty, no password is " "needed." msgstr "" "(暗号化された) パスワード。このフィールドが空ならパスワードは必要ない。" #. type: TP #: build/C/man5/group.5:46 build/C/man5/passwd.5:84 #, no-wrap msgid "I" msgstr "I" #. type: Plain text #: build/C/man5/group.5:49 msgid "the numeric group ID." msgstr "グループ ID 番号。" #. type: TP #: build/C/man5/group.5:49 #, no-wrap msgid "I" msgstr "I" #. type: Plain text #: build/C/man5/group.5:52 msgid "" "a list of the usernames that are members of this group, separated by commas." msgstr "" "このグループのメンバーのユーザー名のリスト。 ユーザー名はコンマで区切られる。" #. type: Plain text #: build/C/man5/group.5:54 msgid "/etc/group" msgstr "/etc/group" #. type: Plain text #: build/C/man5/group.5:60 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:66 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:30 #, no-wrap msgid "INITGROUPS" msgstr "INITGROUPS" #. type: TH #: build/C/man3/initgroups.3:30 build/C/man3/putpwent.3:28 #, no-wrap msgid "2007-07-26" msgstr "2007-07-26" #. type: Plain text #: build/C/man3/initgroups.3:33 msgid "initgroups - initialize the supplementary group access list" msgstr "initgroups - 追加のグループアクセスリストの初期化" #. type: Plain text #: build/C/man3/initgroups.3:39 #, no-wrap msgid "BIB<, gid_t >IB<);>\n" msgstr "BIB<, gid_t >IB<);>\n" #. type: Plain text #: build/C/man3/initgroups.3:48 msgid "B(): _BSD_SOURCE" msgstr "B(): _BSD_SOURCE" #. type: Plain text #: build/C/man3/initgroups.3:56 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:60 msgid "The I argument must be non-NULL." msgstr "I 引数は NULL であってはならない。" #. type: Plain text #: build/C/man3/initgroups.3:67 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:71 msgid "Insufficient memory to allocate group information structure." msgstr "グループ情報構造体を配置するためのメモリが不足している。" #. type: TP #: build/C/man3/initgroups.3:71 #, no-wrap msgid "B" msgstr "B" #. type: Plain text #: build/C/man3/initgroups.3:76 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:79 #, no-wrap msgid "I\t\tgroup database file\n" msgstr "I\t\tグループデータベースファイル\n" #. type: Plain text #: build/C/man3/initgroups.3:82 msgid "SVr4, 4.3BSD." msgstr "SVr4, 4.3BSD." #. type: Plain text #: build/C/man3/initgroups.3:86 msgid "B(2), B(2), B(7)" msgstr "B(2), B(2), B(7)" #. type: TH #: build/C/man5/passwd.5:29 #, no-wrap msgid "PASSWD" msgstr "PASSWD" #. type: TH #: build/C/man5/passwd.5:29 #, no-wrap msgid "2012-02-14" msgstr "2012-02-14" #. type: Plain text #: build/C/man5/passwd.5:32 msgid "passwd - password file" msgstr "passwd - パスワードファイル" #. type: Plain text #: build/C/man5/passwd.5:40 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:52 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:58 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:63 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:65 msgid "" "Each line of the file describes a single user, and has the following format:" msgstr "ファイルの 1 行が 1 ユーザの情報を表し、書式は以下の通りである。" #. type: Plain text #: build/C/man5/passwd.5:68 msgid "account:password:UID:GID:GECOS:directory:shell" msgstr "account:password:UID:GID:GECOS:directory:shell" #. type: Plain text #: build/C/man5/passwd.5:71 msgid "The field are as follows:" msgstr "各フィールドは以下の通りである:" #. type: TP #: build/C/man5/passwd.5:71 #, no-wrap msgid "I" msgstr "I" #. type: Plain text #: build/C/man5/passwd.5:75 msgid "" "the name of the user on the system. It should not contain capital letters." msgstr "そのシステムでのユーザー名。大文字を含まないようにする。" #. type: Plain text #: build/C/man5/passwd.5:81 msgid "" "the encrypted user password, an asterisk (*), or the letter \\(aqx\\(aq. " "(See B(8) for an explanation of \\(aqx\\(aq.)" msgstr "" "ユーザーの暗号化されたパスワード、アスタリスク、または文字 \\(aqx\\(aq " "(\\(aqx\\(aq の説明については B(8) を参照)。" #. type: TP #: build/C/man5/passwd.5:81 #, no-wrap msgid "I" msgstr "I" #. type: Plain text #: build/C/man5/passwd.5:84 msgid "the numeric user ID." msgstr "ユーザー ID 番号。" #. type: Plain text #: build/C/man5/passwd.5:87 msgid "the numeric primary group ID for this user." msgstr "ユーザーが属するプライマリグループ ID 番号。" #. type: TP #: build/C/man5/passwd.5:87 #, no-wrap msgid "I" msgstr "I" #. type: Plain text #: build/C/man5/passwd.5:99 msgid "" "This field is optional and used only for informational purposes. Usually, " "it contains the full username. 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 "" "本欄は省略可能で、情報提供の目的のみに使われる。ユーザーのフルネームを\n" "設定することが多い。GECOS は General Electric Comprehensive Operating\n" "System を意味しており、GE 社の大規模システム部門が Honeywell 社に売却さ\n" "れた際に GCOS へと変更された。Dennis Ritchie 氏は次のように言っている:\n" "「時々プリンタ出力や、バッチジョブを GCOS マシンに送ったりするが、 パ\n" "スワードファイルの gcos 欄は $IDENT カード用の情報を 隠しておくための場\n" "所なんだ。まるっきりエレガントじゃない。」" #. type: TP #: build/C/man5/passwd.5:99 #, no-wrap msgid "I" msgstr "I" #. type: Plain text #: build/C/man5/passwd.5:104 msgid "the user's B<$HOME> directory." msgstr "ユーザーの B<$HOME> ディレクトリ。" #. type: TP #: build/C/man5/passwd.5:104 #, no-wrap msgid "I" msgstr "I" #. type: Plain text #: build/C/man5/passwd.5:111 msgid "" "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)." msgstr "" "ログイン時に動くプログラム名 (空欄の場合 I が使われる)。 存在しない" "実行プログラムが設定された場合、 B(1) によるシステムへのログインはで" "きなくなる。" #. type: Plain text #: build/C/man5/passwd.5:117 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:131 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:139 msgid "" "B(1), B(1), B(1), B(3), B(3), B" "(5), B(5)" msgstr "" "B(1), B(1), B(1), B(3), B(3), B" "(5), B(5)" #. type: TH #: build/C/man3/putgrent.3:4 #, no-wrap msgid "PUTGRENT" msgstr "PUTGRENT" #. type: TH #: build/C/man3/putgrent.3:4 build/C/man3/setaliasent.3:6 #, no-wrap msgid "2003-09-09" msgstr "2003-09-09" #. type: Plain text #: build/C/man3/putgrent.3:7 msgid "putgrent - write a group database entry to a file" msgstr "putgrent - グループデータベースエントリをファイルに書き込む" #. type: Plain text #: build/C/man3/putgrent.3:9 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:13 msgid "BIB<, FILE *>IB<);>" msgstr "BIB<, FILE *>IB<);>" #. type: Plain text #: build/C/man3/putgrent.3:22 msgid "" "The B() function is the counterpart for B(3). The " "function writes the content of the provided I into the file " "pointed to by 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:24 msgid "The I is defined as follows:" msgstr "I は以下のように定義される:" #. type: Plain text #: build/C/man3/putgrent.3:33 #, 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:37 msgid "The function returns zero on success, and a nonzero value on error." msgstr "この関数は、成功した場合は 0 を返し、エラーの場合は 0 以外の値を返す。" #. type: Plain text #: build/C/man3/putgrent.3:39 msgid "This function is a GNU extension." msgstr "この関数は GNU による拡張である。" #. type: Plain text #: build/C/man3/putgrent.3:43 msgid "B(3), B(3), B(5)" msgstr "B(3), B(3), B(5)" #. type: TH #: build/C/man3/putpwent.3:28 #, no-wrap msgid "PUTPWENT" msgstr "PUTPWENT" #. type: Plain text #: build/C/man3/putpwent.3:31 msgid "putpwent - write a password file entry" msgstr "putpwent - パスワードファイルエントリの書き込み" #. type: Plain text #: build/C/man3/putpwent.3:38 #, no-wrap msgid "BI

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

B<, FILE *>IB<);>\n" #. type: Plain text #: build/C/man3/putpwent.3:47 msgid "B(): _SVID_SOURCE" msgstr "B(): _SVID_SOURCE" #. type: Plain text #: build/C/man3/putpwent.3:52 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:66 #, 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:73 msgid "" "The B() function returns 0 on success, or -1 if an error occurs." msgstr "" "B() 関数は、成功した場合は 0 を、エラーが発生した場合は -1 を返" "す。" #. type: Plain text #: build/C/man3/putpwent.3:77 msgid "Invalid (NULL) argument given." msgstr "無効な(NULL)引数が渡された。" #. type: Plain text #: build/C/man3/putpwent.3:87 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:6 #, no-wrap msgid "SETALIASENT" msgstr "SETALIASENT" #. type: Plain text #: build/C/man3/setaliasent.3:10 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:12 msgid "B<#include Ealiases.hE>" msgstr "B<#include Ealiases.hE>" #. type: Plain text #: build/C/man3/setaliasent.3:14 msgid "B" msgstr "B" #. type: Plain text #: build/C/man3/setaliasent.3:16 msgid "B" msgstr "B" #. type: Plain text #: build/C/man3/setaliasent.3:18 msgid "B" msgstr "B" #. type: Plain text #: build/C/man3/setaliasent.3:20 msgid "BIB<,>" msgstr "BIB<,>" #. type: Plain text #: build/C/man3/setaliasent.3:22 build/C/man3/setaliasent.3:28 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:24 msgid "BIB<);>" msgstr "BIB<);>" #. type: Plain text #: build/C/man3/setaliasent.3:26 msgid "" "BIB<, struct aliasent *>IB<," ">" msgstr "" "BIB<, struct aliasent *>IB<," ">" #. type: Plain text #: build/C/man3/setaliasent.3:33 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:40 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:45 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:49 msgid "The B() function closes the aliases database." msgstr "B() 関数はエイリアスデータベースをクローズする。" #. type: Plain text #: build/C/man3/setaliasent.3:56 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:62 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:69 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:74 msgid "The I is defined in Ialiases.hE>:" msgstr "I は Ialiases.hE> で定義されている。" #. type: Plain text #: build/C/man3/setaliasent.3:83 #, 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:91 msgid "" "The functions B() and B() return a " "nonzero value on error." msgstr "" "関数 B() と B() は、エラーの場合に 0 以外" "の値を返す。" #. type: Plain text #: build/C/man3/setaliasent.3:97 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:100 msgid "" "These routines are glibc-specific. The NeXT system has similar routines:" msgstr "" "このルーチンは glibc 固有のものである。 NeXT システムには同様のルーチンがあ" "る。" #. type: Plain text #: build/C/man3/setaliasent.3:104 #, no-wrap msgid "#include Ealiasdb.hE\n" msgstr "#include Ealiasdb.hE\n" #. type: Plain text #: build/C/man3/setaliasent.3:109 #, 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:115 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:121 #, 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:140 #, 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:150 msgid "B(3), B(3), B(3), B(5)" msgstr "B(3), B(3), B(3), B(5)" #~ msgid "2009-03-30" #~ msgstr "2009-03-30" #~ msgid "2009-10-17" #~ msgstr "2009-10-17" #~ msgid "The field descriptions are:" #~ msgstr "フィールドの説明:" #~ msgid "password" #~ msgstr "password" #~ msgid "GID" #~ msgstr "GID" #~ msgid "1998-01-05" #~ msgstr "1998-01-05" #~ msgid "There is one entry per line, and each line has the format:" #~ msgstr "" #~ "パスワードファイルは 1 行ごとに 1 エントリを持ち、 各行の書式は以下の通り" #~ "である:"