EN JA
SCTP_OPT_INFO(3)
SCTP_OPT_INFO(3) FreeBSD Library Functions Manual SCTP_OPT_INFO(3)

名称

sctp_opt_infoSCTP ソケット情報を取得する

ライブラリ

Standard C Library (libc, -lc)

書式

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

int
sctp_opt_info( int sd, sctp_assoc_t id, int opt, void *arg, socklen_t *size);

解説

sctp_opt_info() 呼び出しは、関連付け識別がオペレーティングシステムに渡される必要がある、特定の getsockopt() データを得るためにマルチ OS コンパチブルメソッドを提供します。 FreeBSD に関して、 FreeBSD には、 getsockopt() 呼び出しでオペレーティングシステムに情報を渡す能力があるので、直接 getsockopt() を使用できます。他のオペレーティングシステムには、この能力がないかもしれません。複数のオペレーティングシステムで移植性のあるコードを書きたい人々のために、次の SCTP ソケットオプションに対して、この呼び出しを使用するべきです。

SCTP_RTOINFO

SCTP_ASSOCINFO

SCTP_PRIMARY_ADDR

SCTP_PEER_ADDR_PARAMS

SCTP_DEFAULT_SEND_PARAM

SCTP_MAX_SEG

SCTP_AUTH_ACTIVE_KEY

SCTP_DELAYED_SACK

SCTP_MAX_BURST

SCTP_CONTEXT

SCTP_EVENT

SCTP_DEFAULT_SNDINFO

SCTP_DEFAULT_PRINFO

SCTP_STATUS

SCTP_GET_PEER_ADDR_INFO

SCTP_PEER_AUTH_CHUNKS

SCTP_LOCAL_AUTH_CHUNKS

戻り値

呼び出しは、成功すれば 0 を、失敗すれば-1 を返します。

エラー

sctp_opt_info() 関数は、次のエラーを返すかもしれません:
[ EINVAL]
引数 arg 値が不正でした。
[ EOPNOTSUPP]
引数 opt が、上記にリストされた SCTP ソケットオプションの 1 つではありませんでした。
[ EBADF]
引数 s が、有効な記述子ではありません。
[ ENOTSOCK]
引数 s が、ソケットではありません。

関連項目

getsockopt(2), sctp(4)

バグ

SCTP_MAX_BURST ソケットオプションの arg に使用される構造体が、FreeBSD 9.0 以降で変更されたので、 opt として SCTP_MAX_BURST を使用することは、FreeBSD 9.0 以降でのみサポートされます。
June 18, 2011 FreeBSD