.\" @(#)getrpcent.3n 2.2 88/08/02 4.0 RPCSRC; from 1.11 88/03/14 SMI .\" %FreeBSD: src/lib/libc/rpc/getrpcent.3,v 1.11.2.3 2001/12/14 18:33:56 ru Exp % .\" $FreeBSD$ .\" .Dd December 14, 1987 .Dt GETRPCENT 3 .Os .Sh 名称 .Nm getrpcent , .Nm getrpcbyname , .Nm getrpcbynumber , .Nm endrpcent , .Nm setrpcent .Nd RPC エントリを取得 .Sh 書式 .In rpc/rpc.h .Ft struct rpcent * .Fn getrpcent void .Ft struct rpcent * .Fn getrpcbyname "char *name" .Ft struct rpcent * .Fn getrpcbynumber "int number" .Ft void .Fn setrpcent "int stayopen" .Ft void .Fn endrpcent void .Sh 解説 .Fn getrpcent , .Fn getrpcbyname , .Fn getrpcbynumber 関数はそれぞれ、次に 示す構造体を持つオブジェクトのポインタを返します。構造体には rpc プログラム番号データベース .Pa /etc/rpc にある、行の内訳フィールドが 含まれます。 .Bd -literal struct rpcent { char *r_name; /* この rpc プログラムのサーバ名 */ char **r_aliases; /* エイリアスリスト */ long r_number; /* rpc プログラム番号 */ }; .Ed .Pp この構造体のメンバは次のとおりです。 .Bl -tag -width r_aliasesxxx .It Fa r_name この rpc プログラムのサーバ名。 .It Fa r_aliases rpc プログラムの、0 で終わる別名 (エイリアス) リスト。 .It Fa r_number このサービスの rpc プログラム番号。 .El .Pp .Fn getrpcent 関数は、必要ならばファイルをオープンして次の行を読み込みます。 .Fn setrpcent 関数はファイルをオープンしリワインドします。 .Fa stayopen フラグが 0 でなければ、 (直接呼び出しかまたは、ほかの .Fn getrpcent 関数ファミリの 1 つを介しての間接呼び出しかにかかわらず) 、 .Fn getrpcent の各呼び出しの後でネットデータベースはクローズされません。 .Pp .Fn endrpcent はファイルをクローズします。 .Pp .Fn getrpcbyname および .Fn getrpcbynumber 関数は、適合する rpc プログラム名またはプログラム番号が見付かるか、またはエンドオブファイルに 出会うまで、最初から順次ファイルを検索します。 .Sh 関連ファイル .Bl -tag -width /etc/rpc -compact .It Pa /etc/rpc .El .Sh 関連項目 .Xr rpc 5 , .Xr rpcinfo 8 , .Xr ypserv 8 .Sh 診断 .Dv EOF またはエラーの場合 .Dv NULL ポインタが返ります。 .Sh バグ すべての情報は静的領域に含まれるので、保存が必要な場合はコピー しなければなりません。