名 前
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/ に 書 か れ て い る 。