プログラミングインタフェース

分岐関連付け

アプリケーションは、1 対多スタイルソケットで確立された関連付けを別のソケットとファイル記述子に分岐できます。散発的なメッセージの送信側または受信側が多数あり、元の 1 対多スタイルソケットのままである必要があるアプリケーションの場合に、別のソケットとファイル記述子を使用すると便利です。アプリケーションは、大量のデータトラフィックを伝送する関連付けを別のソケット記述子に分岐します。アプリケーションは、sctp_peeloff() 呼び出しを使用して、関連付けを別のソケットに分岐します。新しいソケットは 1 対 1 スタイルソケットです。sctp_peeloff() 関数の構文は次のとおりです。

int sctp_peeloff(int sock, sctp_assoc_t id);
sock

socket() システムコールから返される元の 1 対多スタイルソケット記述子。

id

別のファイル記述子に分岐する関連付けの識別子。

sock に渡されるソケット記述子が 1 対多スタイル SCTP ソケットではない場合、sctp_peeloff() 関数は失敗して EOPTNOTSUPP を返します。id() の値が 0 である場合、または、id の値が sock パラメータに渡されるソケット記述子の関連付けの最大数より大きい場合、sctp_peeloff 関数は失敗して EINVAL を返します。sctp_peeloff() 関数が新しいユーザーファイル記述子またはファイル構造体を作成できない場合、関数は失敗して EMFILE を返します。