.TH GETUTENT 3 2014\-08\-19 "" "Linux Programmer's Manual"
.SH 名前
getutent, getutid, getutline, pututline, setutent, endutent, utmpname \- utmp
-ファイルのエントリにアクセスする
+ã\83\95ã\82¡ã\82¤ã\83«ã\81®ã\82¨ã\83³ã\83\88ã\83ªã\83¼ã\81«ã\82¢ã\82¯ã\82»ã\82¹ã\81\99ã\82\8b
.SH 書式
\fB#include <utmp.h>\fP
.sp
\fButmpname\fP() を使って ファイル名の指定を行わなかった場合は、 \fI<path.h>\fP で 定義されている
\fB_PATH_UTMP\fP がファイル名とみなされる。
.PP
-\fBsetutent\fP() は、ファイルポインタを utmp ファイルの先頭に移動する。
+\fBsetutent\fP() ã\81¯ã\80\81ã\83\95ã\82¡ã\82¤ã\83«ã\83\9dã\82¤ã\83³ã\82¿ã\83¼ã\82\92 utmp ã\83\95ã\82¡ã\82¤ã\83«ã\81®å\85\88é ã\81«ç§»å\8b\95ã\81\99ã\82\8bã\80\82
一般的には、他の関数を使う前にこの関数を呼び出しておくと良いだろう。
.PP
\fBendutent\fP() は utmp ファイルをクローズする。ユーザーコードで
他の関数を使ってこのファイルにアクセスを行った時は、最後にこの関数を 呼び出すべきである。
.PP
-\fBgetutent\fP() は utmp ファイルの現在のファイル位置から一行読み込み、 行の各フィールドの内容を収めた構造体へのポインタを返す。
+\fBgetutent\fP() ã\81¯ utmp ã\83\95ã\82¡ã\82¤ã\83«ã\81®ç\8f¾å\9c¨ã\81®ã\83\95ã\82¡ã\82¤ã\83«ä½\8dç½®ã\81\8bã\82\89ä¸\80è¡\8cèªã\81¿è¾¼ã\81¿ã\80\81 è¡\8cã\81®å\90\84ã\83\95ã\82£ã\83¼ã\83«ã\83\89ã\81®å\86\85容ã\82\92å\8f\8eã\82\81ã\81\9fæ§\8bé\80 ä½\93ã\81¸ã\81®ã\83\9dã\82¤ã\83³ã\82¿ã\83¼ã\82\92è¿\94ã\81\99ã\80\82
この構造体の定義は \fButmp\fP(5) に書かれている。
.PP
\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,
+ã\81«ä¸\80è\87´ã\81\99ã\82\8bæ\9c\80å\88\9dã\81®ã\82¨ã\83³ã\83\88ã\83ªã\83¼ã\82\92æ\8e¢ã\81\99ã\80\82 \fIut\fP\->ut_type ã\81\8c \fBINIT_PROCESS\fP, \fBLOGIN_PROCESS\fP,
\fBUSER_PROCESS\fP, \fBDEAD_PROCESS\fP のいずれかなら、 \fBgetutid\fP() は \fIut_id\fP フィールドが
-\fIut\fP\->ut_id に 一致する最初のエントリを探す。
+\fIut\fP\->ut_id ã\81« ä¸\80è\87´ã\81\99ã\82\8bæ\9c\80å\88\9dã\81®ã\82¨ã\83³ã\83\88ã\83ªã\83¼ã\82\92æ\8e¢ã\81\99ã\80\82
.PP
\fBgetutline\fP() は、 utmp ファイルの現在の位置から末尾に向かって検索を行う。 \fIut_type\fP が
\fBUSER_PROCESS\fP または \fBLOGIN_PROCESS\fP で、 \fIut_line\fP フィールドが \fIut\fP\->ut_line
にマッチする最初の行を返す。
.PP
\fBpututline\fP() は \fIutmp\fP 構造体 \fIut\fP の内容を utmp ファイルに書き出す。 \fBpututline\fP() は
-\fBgetutid\fP() を用いて、新たなエントリを 挿入するのにふさわしい場所を探す。 \fIut\fP を挿入するふさわしい場所が
-見つからない場合は、新たなエントリをファイルの末尾に追加する。
+\fBgetutid\fP() ã\82\92ç\94¨ã\81\84ã\81¦ã\80\81æ\96°ã\81\9fã\81ªã\82¨ã\83³ã\83\88ã\83ªã\83¼ã\82\92 æ\8c¿å\85¥ã\81\99ã\82\8bã\81®ã\81«ã\81µã\81\95ã\82\8fã\81\97ã\81\84å ´æ\89\80ã\82\92æ\8e¢ã\81\99ã\80\82 \fIut\fP ã\82\92æ\8c¿å\85¥ã\81\99ã\82\8bã\81µã\81\95ã\82\8fã\81\97ã\81\84å ´æ\89\80ã\81\8c
+è¦\8bã\81¤ã\81\8bã\82\89ã\81ªã\81\84å ´å\90\88ã\81¯ã\80\81æ\96°ã\81\9fã\81ªã\82¨ã\83³ã\83\88ã\83ªã\83¼ã\82\92ã\83\95ã\82¡ã\82¤ã\83«ã\81®æ\9c«å°¾ã\81«è¿½å\8a ã\81\99ã\82\8bã\80\82
.SH 返り値
\fBgetutent\fP(), \fBgetutid\fP(), \fBgetutline\fP() は、成功すると \fIstruct utmp\fP
-へのポインタを返す。 失敗すると NULL を返す (レコードが見つからなかった場合も失敗となる)。 この \fIstruct utmp\fP
+ã\81¸ã\81®ã\83\9dã\82¤ã\83³ã\82¿ã\83¼ã\82\92è¿\94ã\81\99ã\80\82 失æ\95\97ã\81\99ã\82\8bã\81¨ NULL ã\82\92è¿\94ã\81\99 (ã\83¬ã\82³ã\83¼ã\83\89ã\81\8cè¦\8bã\81¤ã\81\8bã\82\89ã\81ªã\81\8bã\81£ã\81\9få ´å\90\88ã\82\82失æ\95\97ã\81¨ã\81ªã\82\8b)ã\80\82 ã\81\93ã\81® \fIstruct utmp\fP
は静的な記憶領域に確保され、次にこれらの関数を 呼び出した際に上書きされるかもしれない。
\fBpututline\fP() は成功すると \fIut\fP を返す。失敗すると NULL を返す。
.SH エラー
.TP
\fBENOMEM\fP
-メモリ不足。
+メモリー不足。
.TP
\fBESRCH\fP
レコードが見つからなかった。
なっている (例えば \fIgetutxent\fP() は \fIgetutent\fP() の別名である)。
.SH 注意
.SS "glibc での注意"
-ä¸\8aè¨\98ã\81®é\96¢æ\95°ç¾¤ã\81¯ã\82¹ã\83¬ã\83\83ã\83\89ã\83»ã\82»ã\83¼ã\83\95ã\81§ã\81¯ã\81ªã\81\84ã\80\82 glibc ã\81«ã\81¯ã\83ªã\82¨ã\83³ã\83\88ã\83©ã\83³ã\83\88ç\89\88 (reentrant) ã\81\8c追å\8a ã\81\95ã\82\8cã\81¦ã\81\84ã\82\8bã\80\82
+上記の関数群はスレッドセーフではない。 glibc にはリエントラント版 (reentrant) が追加されている。
.sp
.nf
\fB#define _GNU_SOURCE\fP /* or _SVID_SOURCE or _BSD_SOURCE;
.fi
.sp
これらの関数は GNU での拡張であり、末尾の _r をとった名前の関数と 同様の機能を持つ。 \fIubuf\fP
-ã\83\91ã\83©ã\83¡ã\83¼ã\82¿ã\81¯çµ\90æ\9e\9cã\82\92æ ¼ç´\8dã\81\99ã\82\8bå ´æ\89\80ã\82\92æ\8c\87å®\9aã\81\99ã\82\8bã\80\82 æ\88\90å\8a\9fã\81\99ã\82\8bã\81¨ 0 ã\82\92è¿\94ã\81\97ã\80\81çµ\90æ\9e\9cã\81¸ã\81®ã\83\9dã\82¤ã\83³ã\82¿を \fI*ubufp\fP に書き込む。エラーの場合 \-1 を返す。
+ã\83\91ã\83©ã\83¡ã\83¼ã\82¿ã\83¼ã\81¯çµ\90æ\9e\9cã\82\92æ ¼ç´\8dã\81\99ã\82\8bå ´æ\89\80ã\82\92æ\8c\87å®\9aã\81\99ã\82\8bã\80\82 æ\88\90å\8a\9fã\81\99ã\82\8bã\81¨ 0 ã\82\92è¿\94ã\81\97ã\80\81çµ\90æ\9e\9cã\81¸ã\81®ã\83\9dã\82¤ã\83³ã\82¿ã\83¼を \fI*ubufp\fP に書き込む。エラーの場合 \-1 を返す。
上記の関数に対応する utmpx 版は存在しない (POSIX.1 ではこれらの関数を規定されていない)。
.SH 例
以下の例では、 utmp のレコードの追加・削除を行っている。このコードは、 擬似端末 (pseudo terminal)