.\" Copyright (c) 2003 Andries Brouwer (aeb@cwi.nl)
.\"
+.\" %%%LICENSE_START(GPLv2+_DOC_FULL)
.\" This is free documentation; you can redistribute it and/or
.\" modify it under the terms of the GNU General Public License as
.\" published by the Free Software Foundation; either version 2 of
.\" GNU General Public License for more details.
.\"
.\" You should have received a copy of the GNU General Public
-.\" License along with this manual; if not, write to the Free
-.\" Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111,
-.\" USA.
+.\" License along with this manual; if not, see
+.\" <http://www.gnu.org/licenses/>.
+.\" %%%LICENSE_END
+.\"
+.\"*******************************************************************
+.\"
+.\" This file was generated with po4a. Translate the source file.
+.\"
+.\"*******************************************************************
.\"
.\" Japanese Version Copyright (c) 2004 Yuichi SATO
.\" all rights reserved.
.\" Translated Thu Jul 29 02:26:07 JST 2004
.\" by Yuichi SATO <ysato444@yahoo.co.jp>
.\"
-.TH GETGRENT_R 3 2010-10-21 "GNU" "Linux Programmer's Manual"
+.TH GETGRENT_R 3 2015\-01\-22 GNU "Linux Programmer's Manual"
.SH 名前
-getgrent_r, fgetgrent_r \- グループファイルエントリをリエントラント (reentrant) に取り出す
+getgrent_r, fgetgrent_r \- ã\82°ã\83«ã\83¼ã\83\97ã\83\95ã\82¡ã\82¤ã\83«ã\82¨ã\83³ã\83\88ã\83ªã\83¼ã\82\92ã\83ªã\82¨ã\83³ã\83\88ã\83©ã\83³ã\83\88 (reentrant) ã\81«å\8f\96ã\82\8aå\87ºã\81\99
.SH 書式
.nf
-.B #include <grp.h>
+\fB#include <grp.h>\fP
.sp
-.BI "int getgrent_r(struct group *" gbuf ", char *" buf ,
+\fBint getgrent_r(struct group *\fP\fIgbuf\fP\fB, char *\fP\fIbuf\fP\fB,\fP
.br
-.BI " size_t " buflen ", struct group **" gbufp );
+\fB size_t \fP\fIbuflen\fP\fB, struct group **\fP\fIgbufp\fP\fB);\fP
.sp
-.BI "int fgetgrent_r(FILE *" fp ", struct group *" gbuf ", char *" buf ,
+\fBint fgetgrent_r(FILE *\fP\fIstream\fP\fB, struct group *\fP\fIgbuf\fP\fB, char *\fP\fIbuf\fP\fB,\fP
.br
-.BI " size_t " buflen ", struct group **" gbufp );
+\fB size_t \fP\fIbuflen\fP\fB, struct group **\fP\fIgbufp\fP\fB);\fP
.fi
.sp
.in -4n
-glibc 向けの機能検査マクロの要件
-.RB ( feature_test_macros (7)
-参照):
+glibc 向けの機能検査マクロの要件 (\fBfeature_test_macros\fP(7) 参照):
.in
.sp
-.BR getgrent_r ():
-_GNU_SOURCE
.\" FIXME . The FTM requirements seem inconsistent here. File a glibc bug?
+\fBgetgrent_r\fP(): _GNU_SOURCE
.br
-.BR fgetgrent_r ():
-_SVID_SOURCE
+\fBfgetgrent_r\fP(): _SVID_SOURCE
.SH 説明
-関数
-.BR getgrent_r ()
-と
-.BR fgetgrent_r ()
-は
-.BR getgrent (3)
-と
-.BR fgetgrent (3)
-のリエントラント版である。
-前者は、
-.BR setgrent (3)
-によって初期化されたストリームから、次のグループファイルのエントリを読み込む。
-後者は、ストリーム
-.I fp
-から次のグループファイルのエントリを読み込む。
+関数 \fBgetgrent_r\fP() と \fBfgetgrent_r\fP() は \fBgetgrent\fP(3) と \fBfgetgrent\fP(3)
+のリエントラント版である。 前者は、 \fBsetgrent\fP(3) によって初期化されたストリームから、次のグループファイルのエントリーを読み込む。
+後者は、 \fIstream\fP から次のグループファイルのエントリーを読み込む。
.PP
-\fIgroup\fP 構造体は
-.I <grp.h>
-において以下のように定義されている:
+\fIgroup\fP 構造体は \fI<grp.h>\fP で以下のように定義されている:
.sp
.in +4n
.nf
struct group {
- char *gr_name; /* グループ名 */
- char *gr_passwd; /* グループパスワード */
- gid_t gr_gid; /* グループ ID */
- char **gr_mem; /* グループメンバ */
+ char *gr_name; /* グループ名 */
+ char *gr_passwd; /* グループのパスワード */
+ gid_t gr_gid; /* グループ ID */
+ char **gr_mem; /* グループのメンバ名へのポインター
+ の配列 (配列はヌルで終端する) */
};
.fi
.in
.PP
-この構造体のフィールドの詳細は
-.BR group (5)
-を参照のこと。
+この構造体のフィールドの詳細は \fBgroup\fP(5) を参照のこと。
.PP
-リエントラントでない関数は静的な格納領域へのポインタを返す。
-この静的な格納領域には、更にグループ名・パスワード・
-メンバへのポインタが含まれる。
-ここで説明されているリエントラントな関数は、
-呼び出し側から提供されるバッファにグループ名など全てを返す。
-最初の引き数として \fIstruct group\fP を保持できるバッファ
-.I gbuf
-がある。
-次にその他の文字列を保持できるサイズ
-.I buflen
-のバッファ
-.I buf
-がある。
-これらの関数の結果 (ストリームから読み込まれた \fIstruct group\fP) は、
-提供されたバッファ
-.IR *gbuf
-に格納され、この \fIstruct group\fP へのポインタは
-.IR *gbufp
-に返される。
+リエントラントでない関数は静的な格納領域へのポインターを返す。 この静的な格納領域には、更にグループ名・パスワード・ メンバへのポインターが含まれる。
+ここで説明されているリエントラントな関数は、 呼び出し側から提供されるバッファーにグループ名など全てを返す。 最初の引き数として \fIstruct
+group\fP を保持できるバッファー \fIgbuf\fP がある。 次にその他の文字列を保持できるサイズ \fIbuflen\fP のバッファー \fIbuf\fP
+がある。 これらの関数の結果 (ストリームから読み込まれた \fIstruct group\fP) は、 提供されたバッファー \fI*gbuf\fP
+に格納され、この \fIstruct group\fP へのポインターは \fI*gbufp\fP に返される。
.SH 返り値
-成功した場合、これらの関数は 0 を返し、
-.RI * gbufp
-は \fIstruct group\fP へのポインタとなる。
-エラーの場合、これらの関数はエラー値を返し、
-.RI * gbufp
-は NULL になる。
+成功した場合、これらの関数は 0 を返し、 *\fIgbufp\fP は \fIstruct group\fP へのポインターとなる。
+エラーの場合、これらの関数はエラー値を返し、 *\fIgbufp\fP は NULL になる。
.SH エラー
-.TP
-.B ENOENT
-次のエントリがない。
-.TP
-.B ERANGE
-十分なバッファ空間が与えられていない。
-もっと大きなバッファで再度実行すること。
+.TP
+\fBENOENT\fP
+次のエントリーがない。
+.TP
+\fBERANGE\fP
+十分なバッファー空間が与えられていない。 もっと大きなバッファーで再度実行すること。
.SH 準拠
-これらの関数は GNU 拡張であり、POSIX 版の関数
-.BR getpwnam_r (3)
-の形式に似せてある。
+これらの関数は GNU 拡張であり、POSIX 版の関数 \fBgetpwnam_r\fP(3) の形式に似せてある。
他のシステムでは以下のプロトタイプが使われている。
.sp
.nf
.in
.fi
.SH 注意
-関数
-.BR getgrent_r ()
-は本当のリエントラントではない。
-なぜなら、ストリームの読み込み位置を
+関数 \fBgetgrent_r\fP() は本当のリエントラントではない。 なぜなら、ストリームの読み込み位置を
他の全てのスレッドと共有しているためである。
.SH 例
.nf
exit(EXIT_SUCCESS);
}
.fi
-.\" たぶんエラーチェックを追加して、strerror_r を使うべきだろう。
+.\" perhaps add error checking - should use strerror_r
.\" #include <errno.h>
.\" #include <stdlib.h>
.\" if (i) {
.\" exit(EXIT_FAILURE);
.\" }
.SH 関連項目
-.BR fgetgrent (3),
-.BR getgrent (3),
-.BR getgrgid (3),
-.BR getgrnam (3),
-.BR putgrent (3),
-.BR group (5)
+\fBfgetgrent\fP(3), \fBgetgrent\fP(3), \fBgetgrgid\fP(3), \fBgetgrnam\fP(3),
+\fBputgrent\fP(3), \fBgroup\fP(5)
+.SH この文書について
+この man ページは Linux \fIman\-pages\fP プロジェクトのリリース 3.78 の一部
+である。プロジェクトの説明とバグ報告に関する情報は
+http://www.kernel.org/doc/man\-pages/ に書かれている。