Manpages

名 前

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 プ ロ グ ラ ム 番 号 デ ー タ ベ ー ス

準 拠

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

バ グ

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

関 連 項 目

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

こ の 文 書 に つ い て

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