.\" This page was taken from the 4.4BSD-Lite CDROM (BSD license) .\" .\" @(#)getrpcent.3n 2.2 88/08/02 4.0 RPCSRC; from 1.11 88/03/14 SMI .\" .\" Japanese Version Copyright (c) 1999 HANATAKA Shinya .\" all rights reserved. .\" Translated 2000-01-11, HANATAKA Shinya .\" Updated 2008-09-19, Akihiro MOTOKI .\" .TH GETRPCENT 3 2008-08-19 "" "Linux Programmer's Manual" .SH 名前 getrpcent, getrpcbyname, getrpcbynumber, setrpcent, endrpcent \- RPC エントリを取得する .SH 書式 .nf .B #include .BI "struct rpcent *getrpcent(void);" .BI "struct rpcent *getrpcbyname(char *" name ); .BI "struct rpcent *getrpcbynumber(int " number ); .BI "void setrpcent(int " stayopen ); .BI "void endrpcent(void);" .fi .SH 説明 .LP .BR getrpcent (), .BR getrpcbyname (), .BR getrpcbynumber () はそれぞれ以下の構造体へのポインタを返す。 この構造体は RPC プログラム番号データベース の各行のフィールドを含んでいる。 .in +4n .nf struct rpcent { char *r_name; /* name of server for this RPC program */ char **r_aliases; /* alias list */ long r_number; /* RPC program number */ }; .fi .in .LP この構造体のメンバーは以下の通り。 .RS 4 .TP 12 .I r_name この RPC プログラムのサーバの名前 .TP .I r_aliases RPC プログラムの別名のリスト。ゼロで終端されている。 .TP .I r_number このサービスの RPC プログラム番号。 .RE .LP .BR getrpcent () はファイルの次のエントリを読み込む。 必要ならばデータベースへの接続がオープンされる。 .LP .BR setrpcent () はデータベースへの接続をオープンし、 次の読み込みエントリを先頭のエントリに設定する。 \fIstayopen\fP が 0 でない場合、 一つ一つの .BR getrpc* () 関数の呼び出し間でデータベースへの接続をクローズしない。 .LP .BR endrpcent () はデータベースへの接続をクローズする。 .LP .BR getrpcbyname () と .BR getrpcbynumber () はファイルの最初から一致する RPC プログラム名かプログラム番号が 見つかるか、ファイルの最後 (end-of-file) に到達するまで、順番に 探していく。 .SH 返り値 成功すると、 .BR getrpcent (), .BR getrpcbyname (), .BR getrpcbynumber () は、静的に割り当てられた .I rpcent 構造体へのポインタを返す。 EOF か エラーに遭遇した場合には NULL ポインタを返す。 .SH ファイル .TP .I /etc/rpc RPC プログラム番号データベース .SH 準拠 POSIX.1-2001 にはない。 BSD 系、Solaris や他の多くのシステムに存在する。 .SH バグ 全ての情報は静的領域に格納される。 保存するためには全てをコピーする必要がある。 .SH 関連項目 .BR getrpcent_r (3), .BR rpc (5), .BR rpcinfo (8), .BR ypserv (8)