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 */
    };

この構造体のメンバーは以下の通り。

r_name
    この RPC プログラムのサーバの名前

r_aliases
    RPC プログラムの別名のリスト。ゼロで終端されている。

r_number
    このサービスの RPC プログラム番号。

getrpcent() はファイルの次のエントリーを読み込む。必要ならばデータベースへの接続がオープンされる。

setrpcent() はデータベースへの接続をオープンし、 次の読み込みエントリーを先頭のエントリーに設定する。 stayopen が 0 でない場合、 一つ一つの getrpc*() 関数の呼び出し間でデータベースへの接続をクローズしない。

endrpcent() はデータベースへの接続をクローズする。

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

返り値
成功すると、 getrpcent(), getrpcbyname(), getrpcbynumber() は、静的に割り当てられた rpcent 構造体へのポインターを返す。 EOF か エラーに遭遇した場合には NULL を返す。

ファイル

/etc/rpc
    RPC プログラム番号データベース

属性
この節で使用されている用語の説明については、 attributes(7) を参照。
インターフェース | 属性 | 値
getrpcent(), getrpcbyname(), getrpcbynumber() | Thread safety | MT-Unsafe
setrpcent(), endrpcent() | Thread safety | MT-Safe locale

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

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

関連項目
getrpcent_r(3), rpc(5), rpcinfo(8), ypserv(8)

この文書について
この man ページは Linux man-pages プロジェクトのリリース 5.10 の一部である。プロジェクトの説明とバグ報告に関する情報は https://www.kernel.org/doc/man-pages/ に書かれている。