5.3.4 n_bind2

<この項の構成>
(1) 機能概要
(2) 構文
(3) 設定情報
(4) リターン情報

(1) 機能概要

VC接続で,ネットワーク端点にネットワークアドレスを結合します。このあと,指定した相手局ネットワークアドレスと一致したコネクション確立指示を,このネットワーク端点で受諾します(上位プロセス選択機能)。

n_bindを発行したqlen!=0のサーバ端点は,受信したコネクション確立指示がどんな相手局からでも受諾しますが,この関数を発行したqlen!=0のサーバ端点は,指定した相手局ネットワークアドレスと一致したコネクション確立指示だけ受諾できます。

コネクション確立指示受信時,n_bindとn_bind2のqlen!=0の両方のサーバ端点がある場合,n_bind2のネットワークアドレスとのチェックをして,一致すればn_bind2のサーバ端点に通知します。一致しなければ,n_bindのサーバ端点に通知します。

コネクション確立指示受信時,n_bind2のqlen!=0のサーバ端点が複数あり,複数のサーバが,指定した相手局ネットワークアドレスと一致する場合,どのサーバ端点に通知するかは保証できません。

qlen!=0のサーバ端点は,n_bindの場合,1個存在できます。n_bind2の場合,次のようになります。

上位プロセス選択機能を使用する場合,n_open発行時に,oflagにO_XNFNLI_MLTを設定する必要があります。

(2) 構文

#include <xnfw/niuser.h>
rcode= n_bind2(fd, req, ret);
int  rcode, fd;
struct n_bind  *req;
struct n_bind  *ret;

(3) 設定情報

(a) fd

ネットワーク端点を指定します。

(b) req

ネットワークプロトコル提供者と受諾するために必要な情報を指定します。

n_bind構造体の設定内容については,「表10-6 インタフェース構造体(n_bind)のパラメタの設定・参照(その2)」を参照してください。

addr:
相手局のネットワークアドレスを指定します。ネットワークアドレスについては,「7.1 ネットワークアドレス」を参照してください。
qlen:
処理できるコネクション確立指示の数を指定します。
qlen=0指定時,クライアントとして動作します。以後,n_connectを発行してください。
qlen!=0指定時,サーバとして動作します。以後,n_listenを発行してください。
qlen!=0のネットワーク端点は,次のようになります。
  • XNF/AS/NLI V1製品の場合
    システムで8個まで存在できます。
  • XNF/AS/NLI V2製品の場合
    システムでconfiguration文のmax_NLI_VC_serverオペランドの値まで存在できます。
    max_NLI_VC_serverオペランドの説明の詳細は,マニュアル「通信管理 XNF/AS 構成定義編」を参照してください。
(c) ret

ネットワークプロトコル提供者の受諾した情報を受け取るエリアを指定します。

retがNULLの場合,何も設定されません。

n_bind構造体の参照内容については,「表10-6 インタフェース構造体(n_bind)のパラメタの設定・参照(その2)」を参照してください。

(4) リターン情報

(a) リターンコード

0:正常終了

-1:異常終了

エラー番号がn_errnoに設定されています。エラー番号の詳細は,「9.1 エラー番号一覧」を参照してください。

(b) ret
addr:
設定されません。
qlen:
受諾された,処理できるコネクション確立指示の数が設定されます。