OSDN Git Service

(split) LDP: Update releases based on LDP 3.52 release
[linuxjm/LDP_man-pages.git] / release / man3 / getutent.3
index 0579c2f..20a8c3b 100644 (file)
@@ -1,5 +1,6 @@
 .\" Copyright 1995 Mark D. Roth (roth@uiuc.edu)
 .\"
+.\" %%%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
@@ -16,9 +17,9 @@
 .\" 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
 .\"
 .\" References consulted:
 .\"     Linux libc source code
 .\" Modified Thu Jul 25 14:43:46 MET DST 1996 by Michael Haardt
 .\"     <michael@cantor.informatik.rwth-aachen.de>
 .\"
-.\" Japanese Version Copyright (c) 1998 NAKANO Takeo all rights reserved.
-.\" Translated 1998-03-15, NAKANO Takeo <nakano@apm.seikei.ac.jp>
-.\" Updated 2001-10-16, Kentaro Shirakata <argrath@ub32.org>
-.\" Updated 2002-01-03, Kentaro Shirakata <argrath@ub32.org>
-.\" Updated 2005-03-18, Akihiro MOTOKI <amotoki@dd.iij4u.or.jp>
-.\" Updated 2008-08-11, Akihiro MOTOKI, LDP v3.05
+.\"*******************************************************************
 .\"
-.TH GETUTENT 3 2008-06-29 "" "Linux Programmer's Manual"
-.SH Ì¾Á°
-getutent, getutid, getutline, pututline, setutent, endutent, utmpname \-
-utmp ¥Õ¥¡¥¤¥ë¤Î¥¨¥ó¥È¥ê¤Ë¥¢¥¯¥»¥¹¤¹¤ë
-.SH ½ñ¼°
-.B #include <utmp.h>
+.\" This file was generated with po4a. Translate the source file.
+.\"
+.\"*******************************************************************
+.TH GETUTENT 3 2013\-04\-19 "" "Linux Programmer's Manual"
+.SH 名前
+getutent, getutid, getutline, pututline, setutent, endutent, utmpname \- utmp
+ファイルのエントリにアクセスする
+.SH 書式
+\fB#include <utmp.h>\fP
 .sp
-.B struct utmp *getutent(void);
+\fBstruct utmp *getutent(void);\fP
 .br
-.BI "struct utmp *getutid(struct utmp *" ut );
+\fBstruct utmp *getutid(struct utmp *\fP\fIut\fP\fB);\fP
 .br
-.BI "struct utmp *getutline(struct utmp *" ut );
+\fBstruct utmp *getutline(struct utmp *\fP\fIut\fP\fB);\fP
 .sp
-.BI "struct utmp *pututline(struct utmp *" ut );
+\fBstruct utmp *pututline(struct utmp *\fP\fIut\fP\fB);\fP
 .sp
-.B void setutent(void);
+\fBvoid setutent(void);\fP
 .br
-.B void endutent(void);
+\fBvoid endutent(void);\fP
 .sp
-.BI "int utmpname(const char *" file );
-.SH ÀâÌÀ
-¿·¤·¤¤¥¢¥×¥ê¥±¡¼¥·¥ç¥ó¤Ç¤Ï¡¢¤³¤ì¤é¤Î´Ø¿ô¤Î "utmpx" ÈǤò»ÈÍѤ¹¤Ù¤­¤Ç¤¢¤ë¡£
-¤³¤ì¤é¤Ï POSIX.1 ¤Çµ¬Äꤵ¤ì¤Æ¤¤¤ë¡£¡Ö½àµò¡×¤ÎÀá¤ò»²¾È¡£
+\fBint utmpname(const char *\fP\fIfile\fP\fB);\fP
+.SH 説明
+新しいアプリケーションでは、これらの関数の "utmpx" 版を使用すべきである。 これらは POSIX.1 で規定されている。「準拠」の節を参照。
 
-.BR utmpname ()
-¤Ï¡¢Â¾¤Î utmp ´Ø¿ô¤¬¥¢¥¯¥»¥¹¤¹¤ë (utmp ¥Õ¥©¡¼¥Þ¥Ã¥È¤Î)
-¥Õ¥¡¥¤¥ë¤Î̾Á°¤ò»ØÄꤹ¤ë¡£Â¾¤Î´Ø¿ô¤ò»È¤¦Á°¤Ë
-.BR utmpname ()
-¤ò»È¤Ã¤Æ
-¥Õ¥¡¥¤¥ë̾¤Î»ØÄê¤ò¹Ô¤ï¤Ê¤«¤Ã¤¿¾ì¹ç¤Ï¡¢ \fI<path.h>\fP ¤Ç
-ÄêµÁ¤µ¤ì¤Æ¤¤¤ë \fB_PATH_UTMP\fP ¤¬¥Õ¥¡¥¤¥ë̾¤È¤ß¤Ê¤µ¤ì¤ë¡£
+\fButmpname\fP()  は、他の utmp 関数がアクセスする (utmp フォーマットの)  ファイルの名前を指定する。他の関数を使う前に
+\fButmpname\fP()  を使って ファイル名の指定を行わなかった場合は、 \fI<path.h>\fP で 定義されている
+\fB_PATH_UTMP\fP がファイル名とみなされる。
 .PP
-.BR setutent ()
-¤Ï¡¢¥Õ¥¡¥¤¥ë¥Ý¥¤¥ó¥¿¤ò utmp ¥Õ¥¡¥¤¥ë¤ÎÀèƬ¤Ë°ÜÆ°¤¹¤ë¡£
-°ìÈÌŪ¤Ë¤Ï¡¢Â¾¤Î´Ø¿ô¤ò»È¤¦Á°¤Ë¤³¤Î´Ø¿ô¤ò¸Æ¤Ó½Ð¤·¤Æ¤ª¤¯¤ÈÎɤ¤¤À¤í¤¦¡£
+\fBsetutent\fP()  は、ファイルポインタを utmp ファイルの先頭に移動する。
+一般的には、他の関数を使う前にこの関数を呼び出しておくと良いだろう。
 .PP
-.BR endutent ()
-¤Ï utmp ¥Õ¥¡¥¤¥ë¤ò¥¯¥í¡¼¥º¤¹¤ë¡£¥æ¡¼¥¶¡¼¥³¡¼¥É¤Ç
-¾¤Î´Ø¿ô¤ò»È¤Ã¤Æ¤³¤Î¥Õ¥¡¥¤¥ë¤Ë¥¢¥¯¥»¥¹¤ò¹Ô¤Ã¤¿»þ¤Ï¡¢ºÇ¸å¤Ë¤³¤Î´Ø¿ô¤ò
-¸Æ¤Ó½Ð¤¹¤Ù¤­¤Ç¤¢¤ë¡£
+\fBendutent\fP()  は utmp ファイルをクローズする。ユーザーコードで
+他の関数を使ってこのファイルにアクセスを行った時は、最後にこの関数を 呼び出すべきである。
 .PP
-.BR getutent ()
-¤Ï utmp ¥Õ¥¡¥¤¥ë¤Î¸½ºß¤Î¥Õ¥¡¥¤¥ë°ÌÃÖ¤«¤é°ì¹ÔÆɤ߹þ¤ß¡¢
-¹Ô¤Î³Æ¥Õ¥£¡¼¥ë¥É¤ÎÆâÍƤò¼ý¤á¤¿¹½Â¤ÂΤؤΥݥ¤¥ó¥¿¤òÊÖ¤¹¡£
-¤³¤Î¹½Â¤ÂΤÎÄêµÁ¤Ï
-.BR utmp (5)
-¤Ë½ñ¤«¤ì¤Æ¤¤¤ë¡£
+\fBgetutent\fP()  は utmp ファイルの現在のファイル位置から一行読み込み、 行の各フィールドの内容を収めた構造体へのポインタを返す。
+この構造体の定義は \fButmp\fP(5)  に書かれている。
 .PP
-.BR getutid ()
-¤Ï¡¢ utmp ¥Õ¥¡¥¤¥ëÃæ¤Î¸½ºß¤Î°ÌÃÖ¤«¤é½çÊý¸þ
-(ËöÈø¤Ë¸þ¤«¤¦Êý¸þ) ¤Ø \fIut\fP ¤Ë´ð¤¯¸¡º÷¤ò¹Ô¤¦¡£ \fIut\fP\->ut_type ¤¬
-\fBRUN_LVL\fP, \fBBOOT_TIME\fP, \fBNEW_TIME\fP, \fBOLD_TIME\fP ¤Î
-¤¤¤º¤ì¤«¤Ê¤é¡¢
-.BR getutid ()
-¤Ï \fBut_type\fP ¥Õ¥£¡¼¥ë¥É¤¬
-\fIut\fP\->ut_type ¤Ë°ìÃפ¹¤ëºÇ½é¤Î¥¨¥ó¥È¥ê¤òõ¤¹¡£
-\fIut\fP\->ut_type ¤¬ \fBINIT_PROCESS\fP, \fBLOGIN_PROCESS\fP,
-\fBUSER_PROCESS\fP, \fBDEAD_PROCESS\fP ¤Î¤¤¤º¤ì¤«¤Ê¤é¡¢
-.BR getutid ()
-¤Ï
-.I ut_id
-¥Õ¥£¡¼¥ë¥É¤¬ \fIut\fP\->ut_id ¤Ë
-°ìÃפ¹¤ëºÇ½é¤Î¥¨¥ó¥È¥ê¤òõ¤¹¡£
+\fBgetutid\fP()  は、 utmp ファイル中の現在の位置から順方向 (末尾に向かう方向) へ \fIut\fP に基く検索を行う。
+\fIut\fP\->ut_type が \fBRUN_LVL\fP, \fBBOOT_TIME\fP, \fBNEW_TIME\fP, \fBOLD_TIME\fP の
+いずれかなら、 \fBgetutid\fP()  は \fBut_type\fP フィールドが \fIut\fP\->ut_type
+に一致する最初のエントリを探す。 \fIut\fP\->ut_type が \fBINIT_PROCESS\fP, \fBLOGIN_PROCESS\fP,
+\fBUSER_PROCESS\fP, \fBDEAD_PROCESS\fP のいずれかなら、 \fBgetutid\fP()  は \fIut_id\fP フィールドが
+\fIut\fP\->ut_id に 一致する最初のエントリを探す。
 .PP
-.BR getutline ()
-¤Ï¡¢ utmp ¥Õ¥¡¥¤¥ë¤Î¸½ºß¤Î°ÌÃÖ¤«¤éËöÈø¤Ë¸þ¤«¤Ã¤Æ¸¡º÷¤ò¹Ô¤¦¡£
-.I ut_type
-¤¬ \fBUSER_PROCESS\fP ¤Þ¤¿¤Ï \fBLOGIN_PROCESS\fP ¤Ç¡¢
-.I ut_line
-¥Õ¥£¡¼¥ë¥É¤¬ \fIut\fP->ut_line ¤Ë¥Þ¥Ã¥Á¤¹¤ëºÇ½é¤Î¹Ô¤òÊÖ¤¹¡£
+\fBgetutline\fP()  は、 utmp ファイルの現在の位置から末尾に向かって検索を行う。 \fIut_type\fP が
+\fBUSER_PROCESS\fP または \fBLOGIN_PROCESS\fP で、 \fIut_line\fP フィールドが \fIut\fP\->ut_line
+にマッチする最初の行を返す。
 .PP
-.BR pututline ()
-¤Ï
-.I utmp
-¹½Â¤ÂΠ\fIut\fP ¤ÎÆâÍƤò utmp ¥Õ¥¡¥¤¥ë¤Ë½ñ¤­½Ð¤¹¡£
-.BR pututline ()
-¤Ï
-.BR getutid ()
-¤òÍѤ¤¤Æ¡¢¿·¤¿¤Ê¥¨¥ó¥È¥ê¤ò
-ÁÞÆþ¤¹¤ë¤Î¤Ë¤Õ¤µ¤ï¤·¤¤¾ì½ê¤òõ¤¹¡£ \fIut\fP ¤òÁÞÆþ¤¹¤ë¤Õ¤µ¤ï¤·¤¤¾ì½ê¤¬
-¸«¤Ä¤«¤é¤Ê¤¤¾ì¹ç¤Ï¡¢¿·¤¿¤Ê¥¨¥ó¥È¥ê¤ò¥Õ¥¡¥¤¥ë¤ÎËöÈø¤ËÄɲ乤롣
-.SH ÊÖ¤êÃÍ
-.BR getutent (),
-.BR getutid (),
-.BR getutline ()
-¤Ï¡¢À®¸ù¤¹¤ë¤È \fIstruct utmp\fP ¤Ø¤Î¥Ý¥¤¥ó¥¿¤òÊÖ¤¹¡£
-¼ºÇÔ¤¹¤ë¤È NULL ¤òÊÖ¤¹ (¥ì¥³¡¼¥É¤¬¸«¤Ä¤«¤é¤Ê¤«¤Ã¤¿¾ì¹ç¤â¼ºÇԤȤʤë)¡£
-¤³¤Î \fIstruct utmp\fP ¤ÏÀÅŪ¤Êµ­²±Îΰè¤Ë³ÎÊݤµ¤ì¡¢¼¡¤Ë¤³¤ì¤é¤Î´Ø¿ô¤ò
-¸Æ¤Ó½Ð¤·¤¿ºÝ¤Ë¾å½ñ¤­¤µ¤ì¤ë¤«¤â¤·¤ì¤Ê¤¤¡£
+\fBpututline\fP()  は \fIutmp\fP 構造体 \fIut\fP の内容を utmp ファイルに書き出す。 \fBpututline\fP()  は
+\fBgetutid\fP()  を用いて、新たなエントリを 挿入するのにふさわしい場所を探す。 \fIut\fP を挿入するふさわしい場所が
+見つからない場合は、新たなエントリをファイルの末尾に追加する。
+.SH 返り値
+\fBgetutent\fP(), \fBgetutid\fP(), \fBgetutline\fP()  は、成功すると \fIstruct utmp\fP
+へのポインタを返す。 失敗すると NULL を返す (レコードが見つからなかった場合も失敗となる)。 この \fIstruct utmp\fP
+は静的な記憶領域に確保され、次にこれらの関数を 呼び出した際に上書きされるかもしれない。
+
+\fBpututline\fP()  は成功すると \fIut\fP を返す。失敗すると NULL を返す。
 
-.BR pututline ()
-¤ÏÀ®¸ù¤¹¤ë¤È
-.I ut
-¤òÊÖ¤¹¡£¼ºÇÔ¤¹¤ë¤È NULL ¤òÊÖ¤¹¡£
+\fButmpname\fP()  は、新しい名前の格納に成功すると 0 を返し、失敗すると \-1 を返す。
 
-.BR utmpname ()
-¤Ï¡¢¿·¤·¤¤Ì¾Á°¤Î³ÊǼ¤ËÀ®¸ù¤¹¤ë¤È 0 ¤òÊÖ¤·¡¢¼ºÇÔ¤¹¤ë¤È \-1 ¤òÊÖ¤¹¡£
-.SH ¥¨¥é¡¼
-.TP
-.B ENOMEM
-¥á¥â¥êÉÔ­¡£
-.TP
-.B ESRCH
-¥ì¥³¡¼¥É¤¬¸«¤Ä¤«¤é¤Ê¤«¤Ã¤¿¡£
+In the event of an error, these functions \fIerrno\fP set to indicate the
+cause.
+.SH ã\82¨ã\83©ã\83¼
+.TP 
+\fBENOMEM\fP
+メモリ不足。
+.TP 
+\fBESRCH\fP
+レコードが見つからなかった。
 .PP
-´Ø¿ô
-.BR setutent (),
-.BR pututent (),
-.BR getut* ()
-¤Ï
-.BR open (2)
-¤Ë½ñ¤«¤ì¤Æ¤¤¤ëÍýͳ¤Ç¤â¼ºÇÔ¤¹¤ë¤³¤È¤¬¤¢¤ë¡£
-.SH ¥Õ¥¡¥¤¥ë
-/var/run/utmp     ¸½ºß¥í¥°¥¤¥óÃæ¤Î¥æ¡¼¥¶¡¼¤Î¥Ç¡¼¥¿¥Ù¡¼¥¹
+関数 \fBsetutent\fP(), \fBpututline\fP(), \fBgetut*\fP()  は \fBopen\fP(2)
+に書かれている理由でも失敗することがある。
+.SH ファイル
+/var/run/utmp 現在ログイン中のユーザーのデータベース
 .br
-/var/log/wtmp     ²áµî¤Î¥æ¡¼¥¶¡¼¥í¥°¥¤¥ó¤Î¥Ç¡¼¥¿¥Ù¡¼¥¹
-.SH ½àµò
+/var/log/wtmp é\81\8eå\8e»ã\81®ã\83¦ã\83¼ã\82¶ã\83¼ã\83­ã\82°ã\82¤ã\83³ã\81®ã\83\87ã\83¼ã\82¿ã\83\99ã\83¼ã\82¹
+.SH 準拠
 XPG2, SVr4.
 .LP
-XPG2 ¤È SVID 2 ¤Ç¤Ï¡¢
-.BR pututline ()
-´Ø¿ô¤ÏÃͤòÊÖ¤µ¤Ê¤¤¤È¤µ¤ì¤Æ¤ª¤ê¡¢
-(AIX, HP-UX, Linux libc5 ¤Ê¤É¤Î) Â¿¤¯¤Î¥·¥¹¥Æ¥à¤Ç¤Ï¤½¤¦¤Ê¤Ã¤Æ¤¤¤ë¡£
-HP-UX ¤Ç¤Ï¡¢¾å½Ò¤Î
-.BR pututline ()
-¤ÈƱ¤¸¥×¥í¥È¥¿¥¤¥×¤ò»ý¤Ä
-¿·¤·¤¤´Ø¿ô
-.BR _pututline ()
-¤¬Æ³Æþ¤µ¤ì¤Æ¤¤¤ë
-(¤³¤Î´Ø¿ô¤Ï Linux libc5 ¤Ë¤â¤¢¤ë)¡£
+XPG2 と SVID 2 では、 \fBpututline\fP()  関数は値を返さないとされており、 (AIX, HP\-UX, Linux libc5
+などの) 多くのシステムではそうなっている。 HP\-UX では、上述の \fBpututline\fP()  と同じプロトタイプを持つ 新しい関数
+\fB_pututline\fP()  が導入されている (この関数は Linux libc5 にもある)。
 .LP
-¸½ºß¤Ç¤Ï¡¢Linux °Ê³°¤Î¥·¥¹¥Æ¥à¤Ç¤Ï¡¢¤³¤ì¤é¤Î´Ø¿ô¤ÏÁ´¤ÆÇѻߤµ¤ì¤Æ¤¤¤ë¡£
-SUSv1 ¤Î¸å¤Ë½Ð¤Æ¤­¤¿ POSIX.1-2001 ¤Ç¤Ï¡¢¤â¤Ï¤ä¤³¤ì¤é¤Î´Ø¿ô¤Ï¤Ê¤¯¡¢
-Âå¤ï¤ê¤Ë°Ê²¼¤Î¤â¤Î¤ò»È¤¦¡£
+現在では、Linux 以外のシステムでは、これらの関数は全て廃止されている。 SUSv1 の後に出てきた POSIX.1\-2001
+では、もはやこれらの関数はなく、 代わりに以下のものを使う。
 .sp
-.B #include <utmpx.h>
+\fB#include <utmpx.h>\fP
 .sp
-.B struct utmpx *getutxent(void);
+\fBstruct utmpx *getutxent(void);\fP
 .br
-.B struct utmpx *getutxid(const struct utmpx *);
+\fBstruct utmpx *getutxid(const struct utmpx *);\fP
 .br
-.B struct utmpx *getutxline(const struct utmpx *);
+\fBstruct utmpx *getutxline(const struct utmpx *);\fP
 .br
-.B struct utmpx *pututxline(const struct utmpx *);
+\fBstruct utmpx *pututxline(const struct utmpx *);\fP
 .br
-.B void setutxent(void);
+\fBvoid setutxent(void);\fP
 .br
-.B void endutxent(void);
+\fBvoid endutxent(void);\fP
 .PP
-¤³¤ì¤é¤Î´Ø¿ô¤Ï glibc ¤Ë¤è¤êÄ󶡤µ¤ì¤Æ¤ª¤ê¡¢
-"x" ¤¬¤Ê¤¤´Ø¿ô¤ÈƱ¤¸½èÍý¤ò¹Ô¤¦¤¬¡¢
-.I "struct utmpx"
-¤ò»ÈÍѤ¹¤ë¡£
-Linux ¤Ç¤Ï¡¢¤³¤Î¹½Â¤ÂΤÎÄêµÁ¤Ï
-.I "struct utmp"
-¤ÈƱ¤¸¤Ë¤Ê¤Ã¤Æ¤¤¤ë¡£
-´°Á´¤ò´ü¤¹¤¿¤á¤Ë¡¢glibc ¤Ç¤Ï
-.BR utmpxname ()
-¤âÄ󶡤·¤Æ¤¤¤ë¡£¤³¤Î´Ø¿ô¤Ï POSIX.1 ¤Ç¤Ïµ¬Äꤵ¤ì¤Æ¤¤¤Ê¤¤¡£
+これらの関数は glibc により提供されており、 "x" がない関数と同じ処理を行うが、 \fIstruct utmpx\fP を使用する。 Linux
+では、この構造体の定義は \fIstruct utmp\fP と同じになっている。 完全を期すために、glibc では \fButmpxname\fP()
+も提供している。この関数は POSIX.1 では規定されていない。
 .PP
-Linux °Ê³°¤Î¥·¥¹¥Æ¥à¤Ç¤Ï¡¢
-\fIutmpx\fP ¹½Â¤ÂΤϠ\fIutmp\fP ¹½Â¤ÂΤξå°Ì½¸¹ç (superset) ¤Ë¤Ê¤Ã¤Æ¤¤¤Æ¡¢
-ÄɲäΥե£¡¼¥ë¥É¤¬¤¢¤Ã¤¿¤ê¡¢´û¸¤Î¥Õ¥£¡¼¥ë¥É¤Î¥µ¥¤¥º¤¬Â礭¤¯¤Ê¤Ã¤Æ¤¤¤¿¤ê
-¤¹¤ë¤â¤Î¤â¤¢¤ë¡£Ê£¿ô¤Î¥Õ¥¡¥¤¥ë¤¬»ÈÍѤµ¤ì¤Æ¤¤¤ë¾ì¹ç¤â¤¢¤ê¡¢Â¿¤¯¤Î¾ì¹ç
-.I /var/*/utmpx
-¤È
-.I /var/*/wtmpx
-¤È¤¤¤¦¥Õ¥¡¥¤¥ë¤¬»È¤ï¤ì¤ë¡£
+Linux 以外のシステムでは、 \fIutmpx\fP 構造体は \fIutmp\fP 構造体の上位集合 (superset) になっていて、
+追加のフィールドがあったり、既存のフィールドのサイズが大きくなっていたり するものもある。複数のファイルが使用されている場合もあり、多くの場合
+\fI/var/*/utmpx\fP と \fI/var/*/wtmpx\fP というファイルが使われる。
 .LP
-°ìÊý¡¢ Linux glibc ¤Ç¤ÏÊ£¿ô¤Î \fIutmpx\fP ¥Õ¥¡¥¤¥ë ¤Ï»È¤ï¤ì¤Æ¤¤¤Ê¤¤¡£
-\fIutmp\fP ¹½Â¤ÂΤ¬½½Ê¬¤ËÂ礭¤¤¤«¤é¤Ç¤¢¤ë¡£
-\fIgetutxent\fP() ¤Ê¤É¤Î´Ø¿ô¤Ï \fIgetutent\fP() ¤Ê¤É¤ÎÊÌ̾¤È¤Ê¤Ã¤Æ¤¤¤ë¡£
-.SH Ãí°Õ
-.SS glibc ¤Ç¤ÎÃí°Õ
-¾åµ­¤Î´Ø¿ô·²¤Ï¥¹¥ì¥Ã¥É¡¦¥»¡¼¥Õ¤Ç¤Ï¤Ê¤¤¡£
-glibc ¤Ë¤Ï¥ê¥¨¥ó¥È¥é¥ó¥ÈÈÇ (reentrant) ¤¬Äɲ䵤ì¤Æ¤¤¤ë¡£
+一方、 Linux glibc では複数の \fIutmpx\fP ファイル は使われていない。
+\fIutmp\fP 構造体が十分に大きいからである。
+上記の名前に "x" が付いた関数は "x" が付いていない対応する関数の別名と
+なっている (例えば \fIgetutxent\fP() は \fIgetutent\fP() の別名である)。
+.SH 注意
+.SS "glibc での注意"
+上記の関数群はスレッド・セーフではない。 glibc にはリエントラント版 (reentrant) が追加されている。
 .sp
 .nf
-.BR "#define _GNU_SOURCE" "    /* or _SVID_SOURCE or _BSD_SOURCE */"
-.B #include <utmp.h>
+\fB#define _GNU_SOURCE\fP    /* or _SVID_SOURCE or _BSD_SOURCE;
+\&                          \fBfeature_test_macros\fP(7) 参照 */
+\fB#include <utmp.h>\fP
 .sp
-.BI "int getutent_r(struct utmp *" ubuf ", struct utmp **" ubufp );
+\fBint getutent_r(struct utmp *\fP\fIubuf\fP\fB, struct utmp **\fP\fIubufp\fP\fB);\fP
 .sp
-.BI "int getutid_r(struct utmp *" ut ,
-.BI "              struct utmp *" ubuf ", struct utmp **" ubufp );
+\fBint getutid_r(struct utmp *\fP\fIut\fP\fB,\fP
+\fB              struct utmp *\fP\fIubuf\fP\fB, struct utmp **\fP\fIubufp\fP\fB);\fP
 .sp
-.BI "int getutline_r(struct utmp *" ut ,
-.BI "                struct utmp *" ubuf ", struct utmp **" ubufp );
+\fBint getutline_r(struct utmp *\fP\fIut\fP\fB,\fP
+\fB                struct utmp *\fP\fIubuf\fP\fB, struct utmp **\fP\fIubufp\fP\fB);\fP
 .fi
 .sp
-¤³¤ì¤é¤Î´Ø¿ô¤Ï GNU ¤Ç¤Î³ÈÄ¥¤Ç¤¢¤ê¡¢ËöÈø¤Î _r ¤ò¤È¤Ã¤¿Ì¾Á°¤Î´Ø¿ô¤È
-ƱÍͤε¡Ç½¤ò»ý¤Ä¡£
-.I ubuf
-¥Ñ¥é¥á¡¼¥¿¤Ï·ë²Ì¤ò³ÊǼ¤¹¤ë¾ì½ê¤ò»ØÄꤹ¤ë¡£
-À®¸ù¤¹¤ë¤È 0 ¤òÊÖ¤·¡¢·ë²Ì¤Ø¤Î¥Ý¥¤¥ó¥¿¤ò
-.I *ubufp
-¤Ë½ñ¤­¹þ¤à¡£¥¨¥é¡¼¤Î¾ì¹ç \-1 ¤òÊÖ¤¹¡£
-¾åµ­¤Î´Ø¿ô¤ËÂбþ¤¹¤ë utmpx ÈǤϸºß¤·¤Ê¤¤
-(POSIX.1 ¤Ç¤Ï¤³¤ì¤é¤Î´Ø¿ô¤òµ¬Äꤵ¤ì¤Æ¤¤¤Ê¤¤)¡£
-.SH Îã
-°Ê²¼¤ÎÎã¤Ç¤Ï¡¢ utmp ¤Î¥ì¥³¡¼¥É¤ÎÄɲᦺï½ü¤ò¹Ô¤Ã¤Æ¤¤¤ë¡£¤³¤Î¥³¡¼¥É¤Ï¡¢
-µ¼»÷üËö (pseudo terminal) ¤«¤é¼Â¹Ô¤µ¤ì¤ë¤³¤È¤òÁÛÄꤷ¤Æ¤¤¤ë¡£
-¼ÂºÝ¤Î¥¢¥×¥ê¥±¡¼¥·¥ç¥ó¤Ç¤Ï
-.BR getpwuid (3)
-¤È
-.BR ttyname (3)
-¤ÎÌá¤êÃͤò¸¡ºº¤¹¤ë¤Ù¤­¤Ç¤¢¤ë¡£
+これらの関数は GNU での拡張であり、末尾の _r をとった名前の関数と 同様の機能を持つ。 \fIubuf\fP
+パラメータは結果を格納する場所を指定する。 成功すると 0 を返し、結果へのポインタを \fI*ubufp\fP に書き込む。エラーの場合 \-1 を返す。
+上記の関数に対応する utmpx 版は存在しない (POSIX.1 ではこれらの関数を規定されていない)。
+.SH 例
+以下の例では、 utmp のレコードの追加・削除を行っている。このコードは、 擬似端末 (pseudo terminal)
+から実行されることを想定している。 実際のアプリケーションでは \fBgetpwuid\fP(3)  と \fBttyname\fP(3)
+の戻り値を検査するべきである。
 .PP
 .nf
 #include <string.h>
@@ -283,7 +211,9 @@ main(int argc, char *argv[])
     exit(EXIT_SUCCESS);
 }
 .fi
-.SH ´ØÏ¢¹àÌÜ
-.BR getutmp (3),
-.BR utmp (5),
-.BR feature_test_macros (7)
+.SH 関連項目
+\fBgetutmp\fP(3), \fButmp\fP(5)
+.SH この文書について
+この man ページは Linux \fIman\-pages\fP プロジェクトのリリース 3.52 の一部
+である。プロジェクトの説明とバグ報告に関する情報は
+http://www.kernel.org/doc/man\-pages/ に書かれている。