GETRPCENT(3) | Linux Programmer's Manual | GETRPCENT(3) |
getrpcent, getrpcbyname, getrpcbynumber, setrpcent, endrpcent - RPC エントリーを取得する
#include <netdb.h> struct rpcent *getrpcent(void); struct rpcent *getrpcbyname(const char *name); struct rpcent *getrpcbynumber(int number); void setrpcent(int stayopen); void endrpcent(void);
getrpcent(), getrpcbyname(), getrpcbynumber()
はそれぞれ以下の構造体へのポインターを返す。
この構造体は RPC
プログラム番号データベース
の各行のフィールドを含んでいる。
struct rpcent {
char *r_name; /* name of server for this RPC program */
char **r_aliases; /* alias list */
long r_number; /* RPC program number */ };
この構造体のメンバーは以下の通り。
getrpcent() はファイルの次のエントリーを読み込む。必要ならばデータベースへの接続がオープンされる。
setrpcent() はデータベースへの接続をオープンし、 次の読み込みエントリーを先頭のエントリーに設定する。 stayopen が 0 でない場合、 一つ一つの getrpc*() 関数の呼び出し間でデータベースへの接続をクローズしない。
endrpcent() はデータベースへの接続をクローズする。
getrpcbyname() と getrpcbynumber() はファイルの最初から一致する RPC プログラム名かプログラム番号が 見つかるか、ファイルの最後 (end-of-file) に到達するまで、順番に 探していく。
成功すると、 getrpcent(), getrpcbyname(), getrpcbynumber() は、静的に割り当てられた rpcent 構造体へのポインターを返す。 EOF か エラーに遭遇した場合には NULL を返す。
POSIX.1-2001 にはない。 BSD 系、Solaris や他の多くのシステムに存在する。
全ての情報は静的領域に格納される。 保存するためには全てをコピーする必要がある。
この man ページは Linux man-pages プロジェクトのリリース 3.79 の一部 である。プロジェクトの説明とバグ報告に関する情報は http://www.kernel.org/doc/man-pages/ に書かれている。
2014-05-28 |