FreeBSD 日本語マニュアル検索 (jman/japropos/jwhatis)


日本語 man コマンド類 (ja-man-1.1j_5) と日本語 man ドキュメント (ja-man-doc-5.4 (5.4-RELEASE 用) など) をインストールすると、以下のような man コマンド閲覧、キーワード検索が コンソールからできるようになります。

4.11-RELEASE-K, 5.4-RELEASE-K, 5.5-RELEASE-K, 6.0-RELEASE-K から 6.4-RELEASE-K, 7.0-RELEASE-K から 7.4-RELEASE-K, 8.0-RELEASE-K から 8.4-RELEASE-K, 9.0-RELEASE-K から 9.3-RELEASE-K, 10.0-RELEASE-K から 10.3-RELEASE-K, 11.0-RELEASE-K から 11.4-RELEASE-K, 12.0-RELEASE-K, 12.1-RELEASE-K は、 プライベート版 (小金丸が編集してまとめたもの) ですが、 より多くの翻訳したファイルが含まれています。 (5.4-RELEASE-K から 6.4-RELEASE-K, 7.0-RELEASE-K から 7.4-RELEASE-K, 8.0-RELEASE-K から 8.4-RELEASE-K, 9.0-RELEASE-K から 9.3-RELEASE-K, 10.0-RELEASE-K から 10.3-RELEASE-K, 11.0-RELEASE-K から 11.4-RELEASE-K, 12.0-RELEASE-K から 12.3-RELEASE-K, 13.0-RELEASE-K から 13.2-RELEASE-K は、全翻訳済み)

13.3-STABLE-K, 15.0-CURRENT-K は現在、作成中で日々更新されています。



検索コマンド: man apropos whatis
コマンド/キーワード:
日本語マニュアル RELEASE :
セクション:
Table of Contents
名称 | ライブラリ | 書式 | 解説 | 戻り値 | エラー | 関連項目 | バグ
SCTP_SENDMSG(3)        FreeBSD ライブラリ関数マニュアル        SCTP_SENDMSG(3)

名称
     sctp_sendmsg, sctp_sendmsgx -- SCTP ソケットへメッセージを送信する

ライブラリ
     標準 C ライブラリ (libc, -lc)

書式
     #include <sys/types.h>
     #include <sys/socket.h>
     #include <netinet/sctp.h>

     ssize_t
     sctp_sendmsg(int s, const void *msg, size_t len,
         const struct sockaddr *to, socklen_t tolen, uint32_t ppid,
         uint32_t flags, uint16_t stream_no, uint32_t timetolive,
         uint32_t context);

     ssize_t
     sctp_sendmsgx(int s, const void *msg, size_t len,
         const struct sockaddr *to, int addrcnt, uint32_t ppid,
         uint32_t flags, uint16_t stream_no, uint32_t timetolive,
         uint32_t context);

解説
     sctp_sendmsg() システムコールは、メッセージを別の SCTP 終点 (endpoint) に
     転送するために使用されます。sctp_sendmsg() は、いつでも、使用できます。ソ
     ケットが 1 対多のタイプ (SOCK_SEQPACKET) のソケットであるなら、存在しない
     アソシエーションであるアドレスへ送信する試みは、暗黙のうちに新しいアソシ
     エーションを作成します。そのようなインスタンスのデータ送信は、SCTP の 4
     つの方法のハンドシェイクの 3 番目の行程で送信されるデータをもたらします。
     ソケットが 1 対 1 のタイプ (SOCK_STREAM) のソケットであるなら、アソシエー
     ションは、(connect(2) システムコールの使用によって) 存在していなければな
     らないことに注意してください。接続されれていない 1 対 1 のソケットで
     sctp_sendmsg() または sctp_sendmsgx() を呼び出すことは、errno が ENOTCONN
     に設定され、-1 が返され、メッセージが、送信されない結果となります。

     ターゲットのアドレスは、そのサイズを tolen で指定して to で与えられます。
     メッセージ msg の長さは、len で与えられます。メッセージが基本的なプロトコ
     ルを通して不可分に渡されるには長すぎるなら、errno は、EMSGSIZE に設定され
     て -1 が返され、メッセージは、送信されません。

     配信のための失敗の兆候なしに、sctp_sendmsg(3) 呼び出しで暗黙ではありませ
     ん。局所的に検出されたエラーは、-1 の返り値によって示されます。

     転送されるメッセージを保持するための空間がソケットで利用可能でないなら、
     sctp_sendmsg(3) は、ソケットが非ブロッキング I/O モードに置かれていないな
     ら、通常、ブロックします。select(2) システムコールは、より多くのデータを
     1 対 1 のタイプ (SOCK_STREAM) のソケットに送信することが、いつ可能となる
     かを決定するために使用されます。

     ppid 引数は、スタックからピア (相手側) 終点に透過的に渡される 32 ビットの
     不透明な (サイズおよび形がわからない) 値です。それはメッセージの受信で利
     用可能となります (sctp_recvmsg(3) 参照)。スタックは、バイト順に関係なしで
     この値を渡すことに注意してください。

     flags 引数は、次の 1 つ以上を含みます:

     #define SCTP_EOF          0x0100        /* シャットダウン手順を始める */
     #define SCTP_ABORT        0x0200        /* ABORT をピアに送信する */
     #define SCTP_UNORDERED    0x0400        /* メッセージは不規則です */
     #define SCTP_ADDR_OVER    0x0800        /* 主要なアドレスを上書きする */
     #define SCTP_SENDALL      0x1000        /* これを終点に対してすべての */
                                             /* アソシエーションに送信する */
     /* 下位バイトは PR-SCTP ポリシの列挙です */
     #define SCTP_PR_SCTP_TTL  0x0001        /* PR-SCTP ベースの時間 */
     #define SCTP_PR_SCTP_BUF  0x0002        /* PR-SCTP ベースのバッファ */
     #define SCTP_PR_SCTP_RTX  0x0003        /* PR-SCTP ベースの再転送の数 */

     フラグ SCTP_EOF は、このメッセージをキューに入れ、次に、アソシエーション
     の素直なシャットダウンを始めるように SCTP スタックに命令するために使用さ
     れます。キュー中のすべての残っているデータは、アソシエーションがシャット
     ダウンされた後に送信されます。

     SCTP_ABORT は、直ちにアソシエーションを終了するために使用されます。アボー
     トが、ピアに送信され、ローカル TCB は、破壊されます。

     SCTP_UNORDERED は、送信されるメッセージには、特有の順序がなく、できるだけ
     早く、ピアアプリケーションに配信されるべきであることを指定するために使用
     されます。このフラグが欠けているとき、メッセージは、ピアストリームの順序
     に関係なく、それらが送信されるストリームの中で順番に配信されます。

     フラグ SCTP_ADDR_OVER は、特定のアドレスが使用されるべきであることを指定
     するために使用されます。通常、SCTP は、送信される主要なアドレスとして、マ
     ルチホームのピアアドレスの 1 つのみを使用します。デフォルトで、この主要な
     アドレスは、たとえ to 引数であろうとも、データを送信するために使用されま
     す。このフラグを指定することによって、ユーザは、主要なアドレスを無視する
     ように、スタックに問い合わせ、また、送信するための実際のアドレスとしてで
     はなく、アソシエーションを見つける検索メカニズムとしてのみでない指定され
     たアドレスを代わりに使用します。

     1 対多のタイプ (SOCK_SEQPACKET) のソケットのために、1 つの送信の呼び出し
     行い、ソケットがメッセージのコピーを取得する最中にすべてのアソシエーショ
     ンを持つ、便利な方法として、フラグ SCTP_SENDALL を使用することができま
     す。このメカニズムは、かなり効率的であり、送信のためのすべてのアソシエー
     ションによって共有されるデータの 1 つの実際のコピーだけを作ることに注意し
     てください。

     残りのフラグは、部分的な信頼性の拡張 (RFC3758) のために使用され、ピア終点
     がこの拡張をサポートする場合にだけ、効果的になります。このオプションは、
     ローカルな終点がデータをスキップする際にどのようなローカルなポリシを使用
     するべきであるかを指定します。これらのオプションがなにも設定されていない
     なら、データは決してスキップされません。

     SCTP_PR_SCTP_TTL は、存続期間をベースとする時間がデータに適用されているこ
     とを示すために使用されます。つぎに timetolive 引数は、データが転送される
     ことを試みられる多くのミリ秒です。多くのミリ秒が経過して、ピアがデータを
     承認していないなら、データは、スキップされ、もはや送信されません。このポ
     リシは、データがかつて送信されることさえ保証しないことに注意してくださ
     い。多量のデータがキューに入れられて混雑する場合に、最初の転送が行われる
     前に timetolive は、期限が切れるかもしれません。

     SCTP_PR_SCTP_BUF ベースのポリシは、timetolive フィールドを外向きの送信
     キューで許された合計のバイト数に変換します。その数か、またはより多くのバ
     イトがキューに入れられているなら、他のバッファベースの送信が、削除するた
     めに検索され、スキップされます。また、このポリシは、バッファベースの送信
     がキューになく、timetolive バイトによって指定された最大がキューに入れられ
     ているなら、データが決して送信されないことに注意してください。

     SCTP_PR_SCTP_RTX ポリシは、timetolive を許可する再転送のの数に変換しま
     す。このポリシは、常に最小で 1 つの送信がデータで試みられることを保証しま
     す。その後、わずか timetolive の再転送が、データをスキップする前に行われ
     ます。

     stream_no は、利用者がメッセージを送信したい SCTP ストリームです。SCTP の
     ストリームは、規則付けられたメッセージの信頼できる (または、部分的に信頼
     できる) フロー (流れ) です。context フィールドは、メッセージを送信するこ
     とができないイベントだけに使用されます。これは、その通知が有効であるな
     ら、(sctp(4) 参照) 失敗した送信が与えられるとき、スタックが保有し、ユーザ
     に与える不透明な (サイズおよび形がわからない) 値です。通常、ユーザプロセ
     スは、送信を実行することができないとき、いくつかのアプリケーション特有の
     データ構造にインデックスを付けるこの値を使用することができます。
     sctp_sendmsgx() は、引数 to で sockaddr 構造の配列を取り、いくつのアドレ
     スが配列中にあるかを指定する追加引数 addrcnt を追加することを除いて、
     sctp_sendmsg() と同じです。これによって、呼び出し側は、まるで
     sctp_connectx() がアソシエーションを設定するために呼び出されているかのよ
     うに複数のアドレスを渡すアソシエーション暗黙のうちに設定できます。

戻り値
     呼び出しは、送信された文字数を返し、エラーが発生したなら、-1 を返します。

エラー
     sctp_sendmsg() システムコールは、次の場合に失敗します:

     [EBADF]            無効の記述子が、指定されました。

     [ENOTSOCK]         引数 s が、ソケットではありません。

     [EFAULT]           無効のユーザ空間のアドレスが、引数に指定されました。

     [EMSGSIZE]         ソケットは、メッセージが不可分に送信されることを必要と
                        し、送信されるメッセージのサイズで、これは不可能となり
                        ます。

     [EAGAIN]           ソケットは、非ブロッキングとマークされ、要求された操作
                        は、ブロックされます。

     [ENOBUFS]          システムは、内部のバッファを割り付けることができません
                        でした。バッファが利用可能になるとき、操作は成功するか
                        もしれません。

     [ENOBUFS]          ネットワークインタフェースの出力キューが、満杯でした。
                        一般的に、これは、インタフェースが、送信することを停止
                        しましたが、一時的な輻輳によって引き起こされるかもしれ
                        ないことを示します。

     [EHOSTUNREACH]     リモートホストが、到達不可能でした。

     [ENOTCONN]         1 対 1 のスタイルのソケットでは、アソシエーションは、
                        存在しません。

     [ECONNRESET]       ユーザが、データをピアに送信することを試みていた間に、
                        スタックによってアボートを受信しました。

     [ENOENT]           1 対多のスタイルのルソケットでは、アドレスは、指定され
                        ないので、アソシエーションを、位置づけることができない
                        か、または SCTP_ABORT フラグは、存在しないアソシエー
                        ションで指定されました。

     [EPIPE]            ソケットは、それ以上データを送信することができません
                        (SBS_CANTSENDMORE は、ソケットで設定されています)。こ
                        れは、ソケットが接続されていなくて、1 対 1 のスタイル
                        のソケットであることを通常意味します。

関連項目
     connect(2), getsockopt(2), recv(2), select(2), sendmsg(2), socket(2),
     write(2), sctp_connectx(3), sctp(4)

バグ
     1 対多のスタイルのソケットでは、sctp_sendmsg() または sctp_sendmsgx()
     は、1 つの終点で複数のアソシエーションがあるので、書き込みでの選択は、1
     対 1 のスタイルのソケットのためだけに動作します。

FreeBSD 11.2                   December 15, 2006                  FreeBSD 11.2

Table of Contents

FreeBSD マニュアル検索