種類
- 定数 (40)
- インスタンスメソッド (21)
- 特異メソッド (6)
- クラス (1)
クラス
- BasicSocket (3)
- Socket (20)
-
Socket
:: AncillaryData (17) -
Socket
:: Option (7)
モジュール
-
Socket
:: Constants (20)
キーワード
-
AF
_ DATAKIT (2) -
AF
_ DLI (2) - AncillaryData (1)
-
EAI
_ NODATA (2) -
IFF
_ OVS _ DATAPATH (2) -
IP
_ HDRINCL (2) -
MSG
_ CTRUNC (2) -
MSG
_ EOF (2) -
MSG
_ EOR (2) -
MSG
_ HAVEMORE (2) -
MSG
_ OOB (2) -
MSG
_ RCVMORE (2) -
MSG
_ TRUNC (2) -
PF
_ DATAKIT (2) -
PF
_ DLI (2) -
SO
_ DONTTRUNC (2) -
SO
_ LINGER (2) -
SO
_ OOBINLINE (2) -
SO
_ WANTMORE (2) -
SO
_ WANTOOBFLAG (2) -
TCP
_ DEFER _ ACCEPT (2) - bool (1)
-
cmsg
_ is? (1) - data (2)
- family (1)
- int (3)
-
ip
_ pktinfo (2) -
ipv6
_ pktinfo (2) -
ipv6
_ pktinfo _ addr (1) -
ipv6
_ pktinfo _ ifindex (1) - level (1)
- linger (1)
- new (2)
- recvmsg (1)
-
recvmsg
_ nonblock (1) - sendmsg (1)
-
to
_ s (1) - type (1)
-
unix
_ rights (2) - unpack (1)
検索結果
先頭5件
-
Socket
:: AncillaryData # data -> String (27358.0) -
自身が保持している cmsg data (データ) を返します。
...自身が保持している cmsg data (データ) を返します。
require 'socket'
p Socket::AncillaryData.new(:INET6, :IPV6, :PKTINFO, "").type
#=> ""
@see Socket::AncillaryData.new... -
Socket
:: Option # data -> String (18310.0) -
オプションのデータ(内容)を文字列で返します。
...のデータ(内容)を文字列で返します。
内容が整数や真偽値、もしくは struct linger であることがわかっている場合には、
Socket::Option#int, Socket::Option#bool, Socket::Option#linger
を用いて
to_s は過去との互換性のために存在します。... -
Socket
:: AF _ DATAKIT -> Integer (18307.0) -
@todo datakit protocol。 Socket.open の第一引数 domain に使用します。
...@todo
datakit protocol。
Socket.open の第一引数 domain に使用します。... -
Socket
:: Constants :: AF _ DATAKIT -> Integer (18307.0) -
@todo datakit protocol。 Socket.open の第一引数 domain に使用します。
...@todo
datakit protocol。
Socket.open の第一引数 domain に使用します。... -
Socket
:: Constants :: EAI _ NODATA -> Integer (18307.0) -
No address associated with hostname
...No address associated with hostname
getaddrinfo(3), getnameinfo(3) などの
エラーコードです。
対応する Socket.getaddrinfo, Addrinfo.getaddrinfo などは
エラーを SocketError に変換するため、この定数は直接は利用しません。
@see getaddrinfo(3linux)... -
Socket
:: Constants :: IFF _ OVS _ DATAPATH (18307.0) -
device used as Open vSwitch datapath port
device used as Open vSwitch datapath port -
Socket
:: Constants :: PF _ DATAKIT -> Integer (18307.0) -
@todo datakit protocol。 Socket.open の第一引数 domain に使用します。
...@todo
datakit protocol。
Socket.open の第一引数 domain に使用します。... -
Socket
:: EAI _ NODATA -> Integer (18307.0) -
No address associated with hostname
...No address associated with hostname
getaddrinfo(3), getnameinfo(3) などの
エラーコードです。
対応する Socket.getaddrinfo, Addrinfo.getaddrinfo などは
エラーを SocketError に変換するため、この定数は直接は利用しません。
@see getaddrinfo(3linux)... -
Socket
:: IFF _ OVS _ DATAPATH (18307.0) -
device used as Open vSwitch datapath port
device used as Open vSwitch datapath port -
Socket
:: PF _ DATAKIT -> Integer (18307.0) -
@todo datakit protocol。 Socket.open の第一引数 domain に使用します。
...@todo
datakit protocol。
Socket.open の第一引数 domain に使用します。... -
Socket
:: AncillaryData (18091.0) -
BasicSocket#sendmsg や BasicSocket#recvmsg で用いる ancillary data (補助データ、制御情報) を表すクラスです。
...BasicSocket#sendmsg や BasicSocket#recvmsg
で用いる ancillary data (補助データ、制御情報)
を表すクラスです。
Socket::AncillaryData#family(socket family),
Socket::AncillaryData#level(cmsg level),
Socket::AncillaryData#type(cmsg type),
Socket::AncillaryData#data(cmsg data),... -
Socket
:: AncillaryData . new(family , cmsg _ level , cmsg _ type , cmsg _ data) -> Socket :: AncillaryData (9646.0) -
新たな Socket::AncillaryData オブジェクトを生成します。
...新たな Socket::AncillaryData オブジェクトを生成します。
family はソケットファミリーを指定します。
整数、文字列、シンボルを渡します。
* Socket::AF_INET, "AF_INET", "INET", :AF_INET, :INET
* Socket::AF_UNIX, "AF_UNIX", "UNIX", :AF_UNIX, :UNIX
*......定します。
整数、文字列、シンボルを渡します。
* 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 は補助データの......異なります。
整数、文字列、シンボルを渡します。
* 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... -
Socket
:: AncillaryData . int(family , cmsg _ level , cmsg _ type , integer) -> Socket :: AncillaryData (9307.0) -
データとして整数を保持する Socket::AncillaryData オブジェクトを生成します。
...持する
Socket::AncillaryData オブジェクトを生成します。
整数データのサイズおよびエンディアンは実行するホストによって異なります。
require 'socket'
p Socket::AncillaryData.int(:UNIX, :SOCKET, :RIGHTS, STDERR.fileno)
#=> #<Socket::AncillaryDa......ta: UNIX SOCKET RIGHTS 2>
@param family ソケットファミリー
@param cmsg_level プロトコル
@param cmsg_type 補助データの種類
@param integer データ内容
@see Socket::AncillaryData.new... -
Socket
:: AncillaryData . ip _ pktinfo(addr , ifindex , spec _ dst=addr) -> Socket :: AncillaryData (9307.0) -
type が IP_PKTINFO である AncillaryData を生成します。
...によっては使えない場合があります。
require 'socket'
addr = Addrinfo.ip("127.0.0.1")
ifindex = 0
spec_dst = Addrinfo.ip("127.0.0.1")
p Socket::AncillaryData.ip_pktinfo(addr, ifindex, spec_dst)
#=> #<Socket::AncillaryData: INET IP PKTINFO 127.0.0.1 ifindex:0 spec_dst:127.......0.0.1>
@param addr アドレス(文字列もしくは Addrinfo)
@param ifindex インターフェースのインデックス(整数)
@param spec_dst パケットのローカルアドレス(文字列もしくは Addrinfo)
@see Socket::AncillaryData#ip_pktinfo,
Socket::Constants::IP_PKTINFO... -
Socket
:: AncillaryData . ipv6 _ pktinfo(addr , ifindex) -> Socket :: AncillaryData (9307.0) -
type が IPV6_PKTINFO である AncillaryData を生成します。
...ta を生成します。
IPV6_PKTINFO は 3542 で定義されています。
require 'socket'
addr = Addrinfo.ip("::1")
ifindex = 0
p Socket::AncillaryData.ipv6_pktinfo(addr, ifindex)
#=> #<Socket::AncillaryData: INET6 IPV6 PKTINFO ::1 ifindex:0>
@param addr アドレス(文字列も......しくは Addrinfo)
@param ifindex インターフェースのインデックス(整数)
@see Socket::AncillaryData#ipv6_pktinfo,
Socket::Constants::IPV6_PKTINFO... -
Socket
:: AncillaryData . unix _ rights(*ios) -> Socket :: AncillaryData (9307.0) -
ios で指定したファイルのファイルデスクリプタを データとして持つ family=AF_UNIX, level=SOL_SOCKET, type=SCM_RIGHTS という Socket::AncillaryData オブジェクトを生成して返します。
...level=SOL_SOCKET, type=SCM_RIGHTS
という Socket::AncillaryData オブジェクトを生成して返します。
require 'socket'
p Socket::AncillaryData.unix_rights(STDERR)
#=> #<Socket::AncillaryData: UNIX SOCKET RIGHTS 2>
@param ios IO オブジェクトの配列
@see Socket::Ancillar......yData#unix_rights,
Socket::Constants::SCM_RIGHTS... -
Socket
:: AncillaryData # int -> Integer (9073.0) -
自身が保持している cmsg data (データ) を整数の形で返します。
...異なります。
require 'socket'
ancdata = Socket::AncillaryData.int(:UNIX, :SOCKET, :RIGHTS, STDERR.fileno)
p ancdata.int #=> 2
@raise TypeError cmgs data のサイズが int のバイト数と異なる場合に発生します
@see Socket::AncillaryData.new Socket::AncillaryData.int... -
Socket
:: Option # to _ s -> String (9010.0) -
オプションのデータ(内容)を文字列で返します。
...のデータ(内容)を文字列で返します。
内容が整数や真偽値、もしくは struct linger であることがわかっている場合には、
Socket::Option#int, Socket::Option#bool, Socket::Option#linger
を用いて
to_s は過去との互換性のために存在します。... -
Socket
:: AncillaryData # cmsg _ is?(level , type) -> bool (9007.0) -
自身の level と type が引数のものと一致している場合に真を返します。
...require 'socket'
ancdata = Socket::AncillaryData.new(:INET6, :IPV6, :PKTINFO, "")
ancdata.cmsg_is?(Socket::IPPROTO_IPV6, Socket::IPV6_PKTINFO) #=> true
ancdata.cmsg_is?(:IPV6, :PKTINFO) #=> true
ancdata.cmsg_is?(:IP, :PKTINFO) #=> false
ancdata.cmsg_is?(:SOCKET, :RIGHTS)......#=> false
@param level 一致を確認する cmsg_level (文字列、シンボル、整数)
@param type 一致を確認する cmsg_type (文字列、シンボル、整数)
@see Socket::AncillaryData#level, Socket::AncillaryData#type... -
Socket
:: AncillaryData # family -> Integer (9007.0) -
自身が保持している socket family を返します。
...自身が保持している socket family を返します。
require 'socket'
p Socket::AncillaryData.new(:INET6, :IPV6, :PKTINFO, "").family
#=> 10
@see Socket::AncillaryData.new... -
Socket
:: AncillaryData # ip _ pktinfo -> [Addrinfo , Integer , Addrinfo] (9007.0) -
自身の type が IP_PKTINFO である場合、保持しているデータ (アドレス、インターフェースのインデックス、ローカルアドレス) を3要素の配列で返します。
...張であり、システムによっては使えない場合があります。
require 'socket'
addr = Addrinfo.ip("127.0.0.1")
ifindex = 0
spec_dest = Addrinfo.ip("127.0.0.1")
ancdata = Socket::AncillaryData.ip_pktinfo(addr, ifindex, spec_dest)
p ancdata.ip_pktinfo
#=> [#<Addrinfo:......127.0.0.1>, 0, #<Addrinfo: 127.0.0.1>]
@raise TypeError level, type が IPPROTO_IP, IP_PKTINFO でない場合に
発生します。
@see Socket::AncillaryData.ip_pktinfo,
Socket::Constants::IP_PKTINFO... -
Socket
:: AncillaryData # ipv6 _ pktinfo -> [Addrinfo , Integer] (9007.0) -
自身の type が IPV6_PKTINFO である場合、保持しているデータ (アドレス、インターフェースのインデックス) を2要素の配列で返します。
...。
require 'socket'
addr = Addrinfo.ip("::1")
ifindex = 0
ancdata = Socket::AncillaryData.ipv6_pktinfo(addr, ifindex)
p ancdata.ipv6_pktinfo #=> [#<Addrinfo: ::1>, 0]
@see Socket::AncillaryData.ipv6_pktinfo,
Socket::AncillaryData#ipv6_pktinfo_addr,
Socket::AncillaryData#ipv......6_pktinfo_ifindex,
Socket::Constants::IPV6_PKTINFO... -
Socket
:: AncillaryData # ipv6 _ pktinfo _ addr -> Addrinfo (9007.0) -
自身の type が IPV6_PKTINFO である場合、保持しているデータ (アドレス、インターフェースのインデックス) のアドレスを返します。
...す。
require 'socket'
addr = Addrinfo.ip("::1")
ifindex = 0
ancdata = Socket::AncillaryData.ipv6_pktinfo(addr, ifindex)
p ancdata.ipv6_pktinfo_addr #=> #<Addrinfo: ::1>
@see Socket::AncillaryData.ipv6_pktinfo,
Socket::AncillaryData#ipv6_pktinfo,
Socket::AncillaryData#ipv6_... -
Socket
:: AncillaryData # ipv6 _ pktinfo _ ifindex -> Integer (9007.0) -
自身の type が IPV6_PKTINFO である場合、保持しているデータ (アドレス、インターフェースのインデックス) のインデックスを返します。
...e 'socket'
addr = Addrinfo.ip("::1")
ifindex = 0
ancdata = Socket::AncillaryData.ipv6_pktinfo(addr, ifindex)
p ancdata.ipv6_pktinfo_ifindex #=> 0
@see Socket::AncillaryData.ipv6_pktinfo,
Socket::AncillaryData#ipv6_pktinfo,
Socket::AncillaryData#ipv6_pktinfo_addr,
Socket::C... -
Socket
:: AncillaryData # level -> Integer (9007.0) -
自身が保持している cmsg level (元プロトコル) を返します。
...自身が保持している cmsg level (元プロトコル) を返します。
require 'socket'
p Socket::AncillaryData.new(:INET6, :IPV6, :PKTINFO, "").level
#=> 41
@see Socket::AncillaryData.new... -
Socket
:: AncillaryData # timestamp -> Time (9007.0) -
タイムスタンプ制御メッセージに含まれる時刻を Time オブジェクト で返します。
...以下のいずれかです。
* SOL_SOCKET/SCM_TIMESTAMP (micro second) GNU/Linux, FreeBSD, NetBSD, OpenBSD, Solaris, MacOS X
* SOL_SOCKET/SCM_TIMESTAMPNS (nano second) GNU/Linux
* SOL_SOCKET/SCM_BINTIME (2**(-64) second) FreeBSD
require 'socket'
Addrinfo.udp("127.0.0.1", 0).bind {|s......1|
Addrinfo.udp("127.0.0.1", 0).bind {|s2|
s1.setsockopt(:SOCKET, :TIMESTAMP, true)
s2.send "a", 0, s1.local_address
ctl = s1.recvmsg.last
p ctl
#=> #<Socket::AncillaryData: INET SOCKET TIMESTAMP 2009-02-24 17:35:46.775581>
t = ctl.timestamp
p t......00
p t.usec #=> 775581
p t.nsec #=> 775581000
}
}
@see Socket::Constants::SCM_TIMESTAMP,
Socket::Constants::SCM_TIMESTAMPNS,
Socket::Constants::SCM_BINTIME,
Socket::Constants::SO_TIMESTAMP,
Socket::Constants::SO_TIMESTAMPNS,
Socket::Constants::SO_BINTIME... -
Socket
:: AncillaryData # type -> Integer (9007.0) -
自身が保持している cmsg type (種類) を返します。
...自身が保持している cmsg type (種類) を返します。
require 'socket'
p Socket::AncillaryData.new(:INET6, :IPV6, :PKTINFO, "").type
#=> 2
@see Socket::AncillaryData.new... -
Socket
:: AncillaryData # unix _ rights -> [IO] | nil (9007.0) -
Unix domain socket の SCM_RIGHTS 制御メッセージに含まれる ファイルディスクリプタを IO オブジェクトの配列として返します。
...Unix domain socket の SCM_RIGHTS 制御メッセージに含まれる
ファイルディスクリプタを IO オブジェクトの配列として返します。
得られる IO オブジェクトか IO か Socket です。
この配列は Socket::AncillaryData が初期化されたときに
作......られます。例えば BasicSocket#recvmsg を :scm_rights => true
オプションを付けて呼びだし、
SCM_RIGHTS な 制御メッセージを受け取ったときに配列が作られます。
適切なオプションを指定しなかった場合は配列は生成されず、
このメ......ッドは nil を返します。
require 'socket'
# recvmsg needs :scm_rights=>true for unix_rights
s1, s2 = UNIXSocket.pair
p s1 #=> #<UNIXSocket:fd 3>
s1.sendmsg "stdin and a socket", 0, nil, Socket::AncillaryData.unix_rights(STDIN, s1)
_, _, _... -
Socket
:: Option . new(family , level , optname , data) -> Socket :: Option (328.0) -
Socket::Option オブジェクト新たに生成し返します。
...
Socket::Option オブジェクト新たに生成し返します。
family, level, optname には Socket::SOL_SOCKET のような整数の他、
文字列("SOL_SOCKET", "SOCKET")、シンボル(:SOL_SOCKET, :SOCKET)を
指定することができます。
@param family ソケットファミリー......@param optname オプションの名前
@param data データ(文字列)
@see Socket::Option.int, Socket::Option.bool, Socket::Option.linger
require 'socket'
sockopt = Socket::Option.new(:INET, :SOCKET, :KEEPALIVE, [1].pack("i"))
p sockopt #=> #<Socket::Option: INET SOCKET KEEPALIVE 1>... -
BasicSocket
# recvmsg(maxmesglen=nil , flags=0 , maxcontrollen=nil , opts={}) -> [String , Addrinfo , Integer , *Socket :: AncillaryData] (307.0) -
recvmsg(2) を用いてメッセージを受け取ります。
...ックします。ノンブロッキング方式で通信したい
場合は BasicSocket#recvmsg_nonblock を用います。
maxmesglen, maxcontrollen で受け取るメッセージおよび補助データ
(Socket::AncillaryData)の最大長をバイト単位で指定します。
省略した場合......は必要なだけ内部バッファを拡大して
データが切れないようにします。
flags では Socket::MSG_* という名前の定数の biwsise OR を取った
ものを渡します。
opts にはその他のオプションを渡します。今のところ :scm_right => bool
と......します。詳しくは Socket::AncillaryData#unix_rights
を参照してください。
返り値は配列で得られます。
返り値の配列の最初の要素は受け取ったメッセージを表す文字列です。
2番目の要素は connection-less socket の場合には送り元の... -
BasicSocket
# recvmsg _ nonblock(maxmesglen=nil , flags=0 , maxcontrollen=nil , opts={}) -> [String , Addrinfo , Integer , *Socket :: AncillaryData] (307.0) -
recvmsg(2) を用いてノンブロッキング方式でメッセージを受け取ります。
...recvmsg(2) を用いてノンブロッキング方式でメッセージを受け取ります。
ブロッキングの有無以外は BasicSocket#recvmsg と同じです。
詳しくはそちらを参照してください。
@param maxmesglen 受け取るメッセージの最大長
@param flags... -
Socket
:: AF _ DLI -> Integer (55.0) -
@todo DEC Direct data link interface。 Socket.open の第一引数 domain に使用します。
...@todo
DEC Direct data link interface。
Socket.open の第一引数 domain に使用します。... -
Socket
:: Constants :: AF _ DLI -> Integer (55.0) -
@todo DEC Direct data link interface。 Socket.open の第一引数 domain に使用します。
...@todo
DEC Direct data link interface。
Socket.open の第一引数 domain に使用します。... -
Socket
:: Constants :: IP _ HDRINCL -> Integer (55.0) -
Header is included with data。 BasicSocket#getsockopt, BasicSocket#setsockopt の第2引数(optname)に使用します。
...Header is included with data。
BasicSocket#getsockopt, BasicSocket#setsockopt
の第2引数(optname)に使用します。
@see Socket::Constants::IPPROTO_IP,
ip(4freebsd)... -
Socket
:: Constants :: MSG _ CTRUNC -> Integer (55.0) -
Control data lost before delivery。
...Control data lost before delivery。
BasicSocket#send, BasicSocket#sendmsg,
BasicSocket#recv, BasicSocket#recvmsg の
flags 引数に用います。
@see sys/socket.h(header),
send(2linux), recv(2linux),
send(2freebsd), recv(2freebsd)... -
Socket
:: Constants :: MSG _ EOF -> Integer (55.0) -
Data completes connection。
...Data completes connection。
BasicSocket#send, BasicSocket#sendmsg,
BasicSocket#recv, BasicSocket#recvmsg の
flags 引数に用います。
@see send(2freebsd)... -
Socket
:: Constants :: MSG _ EOR -> Integer (55.0) -
Data completes record。
...Data completes record。
BasicSocket#send, BasicSocket#sendmsg,
BasicSocket#recv, BasicSocket#recvmsg の
flags 引数に用います。
@see sys/socket.h(header),
send(2), sendto(2), sendmsg(2),
recv(2), recvfrom(2), recvmsg(2),
send(2linux), recv(2linux),
send(2freebsd), recv... -
Socket
:: Constants :: MSG _ HAVEMORE -> Integer (55.0) -
@todo Data ready to be read
@todo
Data ready to be read -
Socket
:: Constants :: MSG _ OOB -> Integer (55.0) -
Process out-of-band data。
...Process out-of-band data。
BasicSocket#send, BasicSocket#sendmsg,
BasicSocket#recv, BasicSocket#recvmsg の
flags 引数に用います。
@see sys/socket.h(header),
send(2), sendto(2), sendmsg(2),
recv(2), recvfrom(2), recvmsg(2),
send(2linux), recv(2linux),
send(2freebsd), r... -
Socket
:: Constants :: MSG _ RCVMORE -> Integer (55.0) -
@todo Data remains in the current packet
@todo
Data remains in the current packet -
Socket
:: Constants :: MSG _ TRUNC -> Integer (55.0) -
Data discarded before delivery。
...Data discarded before delivery。
BasicSocket#send, BasicSocket#sendmsg,
BasicSocket#recv, BasicSocket#recvmsg
の flags 引数に用います。
@see sys/socket.h(header),
send(2linux), recv(2linux),
send(2freebsd), recv(2freebsd)... -
Socket
:: Constants :: PF _ DLI -> Integer (55.0) -
@todo DEC Direct data link interface。 Socket.open の第一引数 domain に使用します。
...@todo
DEC Direct data link interface。
Socket.open の第一引数 domain に使用します。... -
Socket
:: Constants :: SO _ DONTTRUNC -> Integer (55.0) -
@todo Retain unread data
@todo
Retain unread data -
Socket
:: Constants :: SO _ LINGER -> Integer (55.0) -
Linger on close if data is present。 BasicSocket#getsockopt, BasicSocket#setsockopt の第2引数(optname)に使用します。
...Linger on close if data is present。
BasicSocket#getsockopt, BasicSocket#setsockopt
の第2引数(optname)に使用します。
@see sys/socket.h(header), getsockopt(2freebsd),
socket(7linux),Socket::Constants::SOL_SOCKET... -
Socket
:: Constants :: SO _ OOBINLINE -> Integer (55.0) -
Leave received out-of-band data in-line。 BasicSocket#getsockopt, BasicSocket#setsockopt の第2引数(optname)に使用します。
...Leave received out-of-band data in-line。
BasicSocket#getsockopt, BasicSocket#setsockopt
の第2引数(optname)に使用します。
@see sys/socket.h(header), getsockopt(2freebsd),
socket(7linux), Socket::Constants::SOL_SOCKET... -
Socket
:: Constants :: SO _ WANTMORE -> Integer (55.0) -
@todo Give a hint when more data is ready。
@todo
Give a hint when more data is ready。 -
Socket
:: Constants :: SO _ WANTOOBFLAG -> Integer (55.0) -
@todo OOB data is wanted in MSG_FLAG on receive。
@todo
OOB data is wanted in MSG_FLAG on receive。 -
Socket
:: Constants :: TCP _ DEFER _ ACCEPT -> Integer (55.0) -
Don't notify a listening socket until data is ready。 BasicSocket#getsockopt, BasicSocket#setsockopt の第2引数(optname)に使用します。
...Don't notify a listening socket until data is ready。
BasicSocket#getsockopt, BasicSocket#setsockopt
の第2引数(optname)に使用します。
@see tcp(7linux)... -
Socket
:: IP _ HDRINCL -> Integer (55.0) -
Header is included with data。 BasicSocket#getsockopt, BasicSocket#setsockopt の第2引数(optname)に使用します。
...Header is included with data。
BasicSocket#getsockopt, BasicSocket#setsockopt
の第2引数(optname)に使用します。
@see Socket::Constants::IPPROTO_IP,
ip(4freebsd)... -
Socket
:: MSG _ CTRUNC -> Integer (55.0) -
Control data lost before delivery。
...Control data lost before delivery。
BasicSocket#send, BasicSocket#sendmsg,
BasicSocket#recv, BasicSocket#recvmsg の
flags 引数に用います。
@see sys/socket.h(header),
send(2linux), recv(2linux),
send(2freebsd), recv(2freebsd)... -
Socket
:: MSG _ EOF -> Integer (55.0) -
Data completes connection。
...Data completes connection。
BasicSocket#send, BasicSocket#sendmsg,
BasicSocket#recv, BasicSocket#recvmsg の
flags 引数に用います。
@see send(2freebsd)... -
Socket
:: MSG _ EOR -> Integer (55.0) -
Data completes record。
...Data completes record。
BasicSocket#send, BasicSocket#sendmsg,
BasicSocket#recv, BasicSocket#recvmsg の
flags 引数に用います。
@see sys/socket.h(header),
send(2), sendto(2), sendmsg(2),
recv(2), recvfrom(2), recvmsg(2),
send(2linux), recv(2linux),
send(2freebsd), recv... -
Socket
:: MSG _ HAVEMORE -> Integer (55.0) -
@todo Data ready to be read
@todo
Data ready to be read -
Socket
:: MSG _ OOB -> Integer (55.0) -
Process out-of-band data。
...Process out-of-band data。
BasicSocket#send, BasicSocket#sendmsg,
BasicSocket#recv, BasicSocket#recvmsg の
flags 引数に用います。
@see sys/socket.h(header),
send(2), sendto(2), sendmsg(2),
recv(2), recvfrom(2), recvmsg(2),
send(2linux), recv(2linux),
send(2freebsd), r... -
Socket
:: MSG _ RCVMORE -> Integer (55.0) -
@todo Data remains in the current packet
@todo
Data remains in the current packet -
Socket
:: MSG _ TRUNC -> Integer (55.0) -
Data discarded before delivery。
...Data discarded before delivery。
BasicSocket#send, BasicSocket#sendmsg,
BasicSocket#recv, BasicSocket#recvmsg
の flags 引数に用います。
@see sys/socket.h(header),
send(2linux), recv(2linux),
send(2freebsd), recv(2freebsd)... -
Socket
:: Option # unpack(template) -> Array (55.0) -
data に対し String#unpack を呼び出し、その結果を返します。
data に対し String#unpack を呼び出し、その結果を返します。
このメソッドは過去との互換性のために存在します。 -
Socket
:: PF _ DLI -> Integer (55.0) -
@todo DEC Direct data link interface。 Socket.open の第一引数 domain に使用します。
...@todo
DEC Direct data link interface。
Socket.open の第一引数 domain に使用します。... -
Socket
:: SO _ DONTTRUNC -> Integer (55.0) -
@todo Retain unread data
@todo
Retain unread data -
Socket
:: SO _ LINGER -> Integer (55.0) -
Linger on close if data is present。 BasicSocket#getsockopt, BasicSocket#setsockopt の第2引数(optname)に使用します。
...Linger on close if data is present。
BasicSocket#getsockopt, BasicSocket#setsockopt
の第2引数(optname)に使用します。
@see sys/socket.h(header), getsockopt(2freebsd),
socket(7linux),Socket::Constants::SOL_SOCKET... -
Socket
:: SO _ OOBINLINE -> Integer (55.0) -
Leave received out-of-band data in-line。 BasicSocket#getsockopt, BasicSocket#setsockopt の第2引数(optname)に使用します。
...Leave received out-of-band data in-line。
BasicSocket#getsockopt, BasicSocket#setsockopt
の第2引数(optname)に使用します。
@see sys/socket.h(header), getsockopt(2freebsd),
socket(7linux), Socket::Constants::SOL_SOCKET... -
Socket
:: SO _ WANTMORE -> Integer (55.0) -
@todo Give a hint when more data is ready。
@todo
Give a hint when more data is ready。 -
Socket
:: SO _ WANTOOBFLAG -> Integer (55.0) -
@todo OOB data is wanted in MSG_FLAG on receive。
@todo
OOB data is wanted in MSG_FLAG on receive。 -
Socket
:: TCP _ DEFER _ ACCEPT -> Integer (55.0) -
Don't notify a listening socket until data is ready。 BasicSocket#getsockopt, BasicSocket#setsockopt の第2引数(optname)に使用します。
...Don't notify a listening socket until data is ready。
BasicSocket#getsockopt, BasicSocket#setsockopt
の第2引数(optname)に使用します。
@see tcp(7linux)... -
BasicSocket
# sendmsg(mesg , flags=0 , dest _ sockaddr=nil , *controls) -> Integer (43.0) -
sendmsg(2) を用いてメッセージを送ります。
...ンブロッキング方式で通信したい
場合は BasicSocket#sendmsg_nonblock を用います。
ソケットが connection-less の場合は dest_sockaddr で
通信先のアドレスを指定しなければなりません。Socket.sockaddr_in
の返り値や Addrinfo オブジェクトを......ます。
Socket::AncillaryData のインスタンスや
3要素(cmsg_level, cmsg_type, cmsg_data) の配列を用いることができます。
送ったバイト数を返します。
# UnixSocket#send_io の実装例
# use Socket::AncillaryData.
require 'socket'
ancdata = Socket::Ancill......aryData.int(:UNIX, :SOCKET, :RIGHTS, io.fileno)
sock.sendmsg("a", 0, nil, ancdata)
# use 3-element array.
ancdata = [:SOCKET, :RIGHTS, [io.fileno].pack("i!")]
sock.sendmsg("\0", 0, nil, ancdata)
@param mesg メッセージ文字列
@param flags フラグ(Socket::MSG_* という定数の... -
Socket
:: Option # bool -> bool (43.0) -
オプションのデータ(内容)を真偽値に変換して返します。
...オプションのデータ(内容)を真偽値に変換して返します。
@raise TypeError dataのバイト数が不適切である(sizeof(int)と異なる)場合に発生します
@see Socket::Option#data... -
Socket
:: Option # int -> Integer (43.0) -
オプションのデータ(内容)を整数に変換して返します。
...オプションのデータ(内容)を整数に変換して返します。
@raise TypeError dataのバイト数が不適切である(sizeof(int)と異なる)場合に発生します
@see Socket::Option#data... -
Socket
:: Option # linger -> [bool , Integer] (43.0) -
オプションが SOL_SOCKET/SO_LINGER である場合に、 オプションのデータ(内容)を真偽値と整数のペアとして返します。
...が SOL_SOCKET/SO_LINGER である場合に、
オプションのデータ(内容)を真偽値と整数のペアとして返します。
@raise TypeError dataのバイト数が不適切である(sizeof(struct linger)と異なる)場合や、
level/optname が SOL_SOCKET/SO_LINGER......でないに発生します
@see Socket::Option#data...