環境変数 NETPATH にコロンで区切ったトランスポート名のリストを設定することによって、ループを制御できます。NETPATH は、次のように設定します。
NETPATH=tcp:udp |
ループは、最初に tcp エントリを返し、次に udp エントリを返します。NETPATH が定義されていないと、ループは、netconfig(4) ファイル内に存在するすべての可視エントリを格納順に返します。環境変数 NETPATH を使用すると、クライアント側アプリケーションがサービスに接続しようとする順番をユーザーが定義できるだけでなく、サービスが待機できるトランスポートの数をサーバーの管理者が制限できます。
getnetpath(3NSL) と setnetpath(3NSL) を使用して、ネットワークパス変数を取得したり、変更したりします。例 4-6 では、その形式と使用方法を示します。これは、getnetconfig(3NSL) と setnetconfig(3NSL) のルーチンに似ています。
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);