ネットワークインタフェース

ユーザー定義の netconfig(4) エントリ間のループ

環境変数 NETPATH にコロンで区切ったトランスポート名のリストを設定することによって、ループを制御できます。NETPATH は、次のように設定します。


NETPATH=tcp:udp

ループは、最初に tcp エントリを返し、次に udp エントリを返します。NETPATH が定義されていないと、ループは、netconfig(4) ファイル内に存在するすべての可視エントリを格納順に返します。環境変数 NETPATH を使用すると、クライアント側アプリケーションがサービスに接続しようとする順番をユーザーが定義できるだけでなく、サービスが待機できるトランスポートの数をサーバーの管理者が制限できます。

getnetpath(3NSL)setnetpath(3NSL) を使用して、ネットワークパス変数を取得したり、変更したりします。例 4-6 では、その形式と使用方法を示します。これは、getnetconfig(3NSL)setnetconfig(3NSL) のルーチンに似ています。


例 4-6 可視のトランスポート間のループ

void *handlep;
struct netconfig *nconf;

if ((handlep = setnetconfig() == (void *) NULL) {
	   nc_perror("setnetconfig");
   exit(1);
}
while (nconf = getnetconfig(handlep))
	   if (nconf->nc_flag & NC_VISIBLE)
      doit(nconf);
(void) endnetconfig(handlep);