getnetent, getnetbyname, getnetbyaddr, setnetent, endnetent − ネ ッ ト ワ ー ク エ ン ト リ を 取 得 す る
#include <netdb.h>
struct netent *getnetent(void);
struct netent *getnetbyname(const char *name);
struct netent *getnetbyaddr(uint32_t net, int type);
void setnetent(int stayopen);
void endnetent(void);
getnetent() 関 数 は ネ ッ ト ワ ー ク デ ー タ ベ ー ス か ら 次 の エ ン ト リ を 読 み 込 み 、 そ の エ ン ト リ を netent 構 造 体 の 要 素 別 の フ ィ ー ル ド に 格 納 し 、 そ の 構 造 体 を 返 す 。 必 要 で あ れ ば 、 デ ー タ ベ ー ス へ の 接 続 が オ ー プ ン さ れ る 。
getnetbyname() 関 数 は 、 ネ ッ ト ワ ー ク 名 name に マ ッ チ す る エ ン ト リ を デ ー タ ベ ー ス か ら 探 し 、 そ の エ ン ト リ を 収 め た netent 構 造 体 を 返 す 。
getnetbyaddr() 関 数 は 、 type 型 の ネ ッ ト ワ ー ク 番 号 net に マ ッ チ す る エ ン ト リ を デ ー タ ベ ー ス か ら 探 し 、 そ の エ ン ト リ を 収 め た netent 構 造 体 を 返 す 。 net 引 き 数 は ホ ス ト ・ バ イ ト オ ー ダ で な け れ ば な ら な い 。
setnetent() 関 数 は デ ー タ ベ ー ス へ の 接 続 を オ ー プ ン し 、 次 の 読 み 込 み エ ン ト リ を 先 頭 の エ ン ト リ に 設 定 す る 。 stayopen が 0 で な い 場 合 、 一 つ 一 つ の getnet*() 関 数 の 呼 び 出 し 間 で デ ー タ ベ ー ス へ の 接 続 を ク ロ ー ズ し な い 。
endnetent() 関 数 は デ ー タ ベ ー ス へ の 接 続 を ク ロ ー ズ す る 。
netent 構 造 体 は <netdb.h> で 以 下 の よ う に 定 義 さ れ て い る 。
struct netent {
char *n_name; /* official network name */
char **n_aliases; /* alias list */
int n_addrtype; /* net address type */
uint32_t n_net; /* network number */ }
netent 構 造 体 の メ ン バ は 以 下 の 通 り 。
|
n_name ネ ッ ト ワ ー ク の 正 式 名 |
(official name)。
な る リ ス ト 。 リ ス ト は NULL で 終 端 さ れ る 。
ネ ッ ト
ワ ー ク 番 号 の
形 式 。 現 在 は
AF_INET の み 。 ワ ー ク 番 号 。
|