new(family, cmsg_level, cmsg_type, cmsg_data) -> Socket::AncillaryData
[permalink][rdoc][edit]-
新たな Socket::AncillaryData オブジェクトを生成します。
family はソケットファミリーを指定します。整数、文字列、シンボルを渡します。
- Socket::AF_INET, "AF_INET", "INET", :AF_INET, :INET
- Socket::AF_UNIX, "AF_UNIX", "UNIX", :AF_UNIX, :UNIX
- など
cmsg_level にはメッセージの元となるプロトコルを指定します。整数、文字列、シンボルを渡します。
- Socket::SOL_SOCKET, "SOL_SOCKET", "SOCKET", :SOL_SOCKET and :SOCKET
- Socket::IPPROTO_IP, "IP" and :IP
- Socket::IPPROTO_IPV6, "IPV6" and :IPV6
- Socket::IPPROTO_TCP, "TCP" and :TCP
- など
cmsg_type は補助データの種類を指定します。 cmsg_level で指定したプロトコルによってこの部分の解釈は異なります。整数、文字列、シンボルを渡します。
- Socket::SCM_RIGHTS, "SCM_RIGHTS", "RIGHTS", :SCM_RIGHTS, :RIGHTS for SOL_SOCKET
- Socket::IP_RECVTTL, "RECVTTL" and :RECVTTL for IPPROTO_IP
- Socket::IPV6_PKTINFO, "PKTINFO" and :PKTINFO for IPPROTO_IPV6
- など
cmsg_data には補助データの内容となる文字列を渡します
require 'socket' p Socket::AncillaryData.new(:INET, :TCP, :NODELAY, "") #=> #<Socket::AncillaryData: INET TCP NODELAY ""> p Socket::AncillaryData.new(:INET6, :IPV6, :PKTINFO, "") #=> #<Socket::AncillaryData: INET6 IPV6 PKTINFO "">
- [PARAM] family:
- ソケットファミリー
- [PARAM] cmsg_level:
- プロトコル
- [PARAM] cmsg_type:
- 補助データの種類
- [PARAM] cmsg_data:
- データ内容