kazmax - Linux で自宅サーバー

getnetent - ライブラリコールの説明 - Linux コマンド集 一覧表

  1. 名前
  2. 書式
  3. 説明
  4. 返り値
  5. ファイル
  6. 準拠
  7. 関連項目

名前

getnetent, getnetbyname, getnetbyaddr, setnetent, endnetent - ネットワークエントリを取得する

書式

#include <netdb.h>

struct netent *getnetent(void);
struct netent *getnetbyname(const char *name);
struct netent *getnetbyaddr(long net, int type);
void setnetent(int stayopen);
void endnetent(void);

説明

getnetent ()関数はファイル /etc/networks から新しい行を読み込み、行をフィー ルドに分割した内容を収めた構造体 netent を返す。 /etc/networks は必要ならばオープンされる。

getnetbyname ()関数は ネットワーク名 name にマッチする行を /etc/networks から探し、その内容を収めた netent 構造体を返す。

getnetbyaddr ()関数はネットワーク番号 net (type 型) にマッチする行に対 応する netent 構造体を返す。

setnetent ()関数は /etc/networks ファイルをオープンして、ファイルポインタを 先頭に戻す。 stayopen が真 (1) ならば、 getnetbyname () や getnetbyaddr () などの呼び出しの間にファイルはクローズされない。

endnetent ()関数は /etc/networks をクローズする。

netent 構造体は <netdb.h> で以下のように定義されている。

struct netent {
	char	*n_name;		/* official network name */
	char	**n_aliases;		/* alias list */
	int	n_addrtype;		/* net address type */
	unsigned long int n_net;	/* network number */
}

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

n_name
ネットワークの正式名 (official name)。
n_aliases
ネットワークの別名からなる配列。 0 で終端する。
n_addrtype
ネットワーク番号の形式。現在は AF_INET のみ。
n_net
ホストのバイトオーダーで表したネットワーク番号。

返り値

getnetent (), getnetbyname (), getnetbyaddr () 関数は netent 構造体を返す。エラーが起こったり、ファイルの最後に達 した場合は NULL ポインタを返す。

ファイル

/etc/networks
ネットワークデータベースファイル

準拠

4.3BSD, POSIX.1-2001.

関連項目

  getprotoent (3),   getservent (3),  networks (5)
RFC1101