名前


getrpcent, getrpcbyname, getrpcbynumber - RPC エントリを取得する

書式


#include <netdb.h>

struct rpcent *getrpcent()

struct rpcent *getrpcbyname(name) char *name;

struct rpcent *getrpcbynumber(number) int number;

setrpcent(stayopen) int stayopen;

endrpcent()

説明


getrpcent(), getrpcbyname(), getrpcbynumber() はそれぞれ以下の構造体へのポインターを返す。 この構造体は rpc プログラム番号データベース /etc/rpc の各行のフィールドを含んでいる。

struct  rpcent {         char    *r_name;        /* name of server for this rpc program */         char    **r_aliases;    /* alias list */         long    r_number;       /* rpc program number */ };

この構造体のメンバーは:

r_name この rpc プログラムのサーバの名前
r_aliases rpc プログラムの別名のリスト。ゼロで終端されている。
r_number このサービスの rpc プログラム番号。

getrpcent() はファイルの次の行を読み込む。もし必要ならばファイルをオープンする。

setrpcent() はファイルをオープンして巻戻す。 stayopen フラグがゼロでなければ getrpcent() の呼び出しの後にネット・データベースはクローズされない。 (直接または間接的に他の “getrpc” 呼び出しどれかから呼び出される。)

endrpcent はファイルをクローズする。

getrpcbyname() と getrpcbynumber() はファイルの最初から一致する rpc プログラム名かプログラム番号が 見つかるか、ファイルの最後(end-of-file)に到達するまで、順番に 探していく。

返り値


EOF か エラーに遭遇した場合には NULL ポインターを返す。

ファイル


/etc/rpc

準拠


POSIX.1-2001 にはない。 BSD 系、Solaris や他の多くのシステムに存在する。

バグ


全ての情報は静的領域に格納される。 保存するためには全てをコピーする必要がある。

関連項目


rpc(5), rpcinfo(8), ypserv(8)

openSUSE Logo

コンテンツ