クラス
- Addrinfo (7)
- BasicSocket (3)
-
Socket
:: AncillaryData (1) -
Socket
:: Option (1) -
Socket
:: UDPSource (3) - UDPSocket (6)
- UNIXServer (4)
- UNIXSocket (5)
キーワード
- accept (1)
-
accept
_ nonblock (1) - addr (1)
- bind (1)
- connect (1)
-
do
_ not _ reverse _ lookup (1) -
do
_ not _ reverse _ lookup= (1) -
ip
_ unpack (1) -
ipv4
_ multicast? (1) -
ipv6
_ multicast? (1) -
ipv6
_ unique _ local? (1) -
ipv6
_ unspecified? (1) - listen (1)
-
local
_ address (1) - path (1)
- peeraddr (1)
-
recv
_ io (1) - recvfrom (1)
-
recvfrom
_ nonblock (1) -
remote
_ address (1) - reply (1)
- send (3)
- shutdown (1)
- sysaccept (1)
- unix? (1)
-
unix
_ path (1) -
unix
_ rights (1) - unpack (1)
検索結果
先頭5件
-
BasicSocket
# do _ not _ reverse _ lookup -> bool (36610.0) -
ソケットごとのアドレスからホスト名への逆引きの設定を返します。
...きの
BasicSocket.do_not_reverse_lookup の値になります。
require 'socket'
BasicSocket.do_not_reverse_lookup = false
TCPSocket.open("www.ruby-lang.org", 80) {|sock|
p sock.do_not_reverse_lookup # => false
}
BasicSocket.do_not_reverse_lookup = true
TCPSocket.open("www.r......uby-lang.org", 80) {|sock|
p sock.do_not_reverse_lookup # => true
}
@see BasicSocket#do_not_reverse_lookup=... -
BasicSocket
# do _ not _ reverse _ lookup=(bool) (36610.0) -
アドレスからホスト名への逆引きの設定をソケットごとに設定します。
...アドレスからホスト名への逆引きの設定をソケットごとに設定します。
@param bool この値が真ならアドレスからホスト名への逆引きを行わなくなります。
@see BasicSocket#do_not_reverse_lookup... -
Socket
:: AncillaryData # unix _ rights -> [IO] | nil (36610.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
:: UDPSource # remote _ address -> Addrinfo (36610.0) -
リモート側のアドレス情報を Addrinfo オブジェクトで返します。
リモート側のアドレス情報を Addrinfo オブジェクトで返します。 -
Addrinfo
# ip _ unpack -> [String , Integer] (27610.0) -
IP アドレスとポート番号を 2 要素の配列で返します。
...IP アドレスとポート番号を 2 要素の配列で返します。
require 'socket'
Addrinfo.tcp("127.0.0.1", 80).ip_unpack #=> ["127.0.0.1", 80]
Addrinfo.tcp("::1", 80).ip_unpack #=> ["::1", 80]
@see Addrinfo#ip_address, Addrinfo#ip_port... -
Addrinfo
# unix _ path -> String (27610.0) -
Unix domain socket の path を文字列で返します。
...Unix domain socket の path を文字列で返します。
require 'socket'
Addrinfo.unix("/tmp/sock").unix_path #=> "/tmp/sock"
@raise SocketError アドレスが Unix domain socket のものでない場合に発生します... -
Addrinfo
# ipv4 _ multicast? -> bool (27310.0) -
IPv4 のマルチキャストアドレス(224.0.0.0/4)であれば真を返します。
IPv4 のマルチキャストアドレス(224.0.0.0/4)であれば真を返します。 -
Addrinfo
# ipv6 _ multicast? -> bool (27310.0) -
IPv6 のマルチキャストアドレス(ff00::/8)であれば真を返します。
IPv6 のマルチキャストアドレス(ff00::/8)であれば真を返します。 -
Addrinfo
# ipv6 _ unique _ local? -> bool (27310.0) -
IPv6 のユニークローカルアドレス(fc00::/7, 4193)であれば真を返します。
IPv6 のユニークローカルアドレス(fc00::/7, 4193)であれば真を返します。 -
Addrinfo
# ipv6 _ unspecified? -> bool (27310.0) -
IPv6 の不特定アドレス(unspecified address)(::)であれば真を返します。
IPv6 の不特定アドレス(unspecified address)(::)であれば真を返します。 -
Addrinfo
# unix? -> bool (27310.0) -
アドレスが Unix domain socket のものならば true を返します。
...アドレスが Unix domain socket のものならば true を返します。
require 'socket'
Addrinfo.tcp("127.0.0.1", 80).unix? #=> false
Addrinfo.tcp("::1", 80).unix? #=> false
Addrinfo.unix("/tmp/sock").unix? #=> true
@see Addrinfo#ip?... -
Socket
:: UDPSource # local _ address -> Addrinfo (27310.0) -
ローカル側のアドレス情報を Addrinfo オブジェクトで返します。
ローカル側のアドレス情報を Addrinfo オブジェクトで返します。 -
Socket
:: UDPSource # reply(msg) -> () (27310.0) -
msg をリモート側の端点へ送ります。
msg をリモート側の端点へ送ります。
@param msg 送るメッセージ文字列 -
UDPSocket
# recvfrom _ nonblock(maxlen , flags=0) -> [String , Array] (27310.0) -
ソケットをノンブロッキングモードに設定した後、 recvfrom(2) でソケットからデータを受け取ります。
...ットからデータを受け取ります。
maxlen で受け取るデータの最大バイト数を指定します。
flags はフラグで、Socket::MSG_* の bitwise OR を渡します。
詳しくは recvfrom(2) を参照してください。
返り値はデータの文字列と送り元の......可能であることを意味する例外には、IO::WaitReadable が extend
されています。
require 'socket'
s1 = UDPSocket.new
s1.bind("127.0.0.1", 0)
s2 = UDPSocket.new
s2.bind("127.0.0.1", 0)
s2.connect(*s1.addr.values_at(3,1))
s1.connect(*s2.addr.values_at(3,1))
s1.sen......emulate blocking recvfrom
p s2.recvfrom_nonblock(10)
#=> ["aaa", ["AF_INET", 33302, "localhost.localdomain", "127.0.0.1"]]
rescue IO::WaitReadable
IO.select([s2])
retry
end
@param maxlen 受け取るデータの最大バイト数
@param flags フラグ
@see IPSocket#recvfrom... -
UNIXSocket
# addr -> [String , String] (27310.0) -
ソケットの接続情報を表す配列を返します。配列の各要素は第1要 素が文字列 "AF_UNIX"、第2要素がパスを表す文字列です。
...す。
例:
require 'socket'
UNIXServer.open("/tmp/s") {|serv|
p serv.addr #=> ["AF_UNIX", "/tmp/s"]
}
UNIXServer.open("/tmp/s") {|serv|
c = UNIXSocket.open("/tmp/s")
p c.peeraddr #=> ["AF_UNIX", "/tmp/s"]
p c.addr #=> ["AF_UNIX", ""]
}
@see UNIXSocket#peeraddr... -
UNIXSocket
# peeraddr -> [String , String] (27310.0) -
接続相手先ソケットの情報を表す配列を返します。配列の各要素は第1要 素が文字列 "AF_UNIX"、第2要素がパスを表す文字列です。
...各要素は第1要
素が文字列 "AF_UNIX"、第2要素がパスを表す文字列です。
例:
require 'socket'
UNIXServer.open("/tmp/s") {|serv|
c = UNIXSocket.open("/tmp/s")
p c.peeraddr #=> ["AF_UNIX", "/tmp/s"]
p c.addr #=> ["AF_UNIX", ""]
}
@see UNIXSocket#addr... -
UNIXSocket
# recv _ io(klass=IO , mode=nil) -> Integer|IO|object (27310.0) -
ソケットの接続先からファイルディスクリプタを受け取ります。
...ます。
klass が nil でない場合、
klass.for_fd(fd[, mode]) が呼ばれ、その値が返されます。
例:
require 'socket'
s1, s2 = UNIXSocket.pair
s1.send_io STDOUT
io = s2.recv_io
p File.identical?(io, STDOUT) #=> true
@param klass 受け取ったファイルディ... -
UNIXSocket
# recvfrom(maxlen , flags = 0) -> [String [String , String]] (27310.0) -
recvfrom(2) を用いてソケットからメッセージを受け取ります。
...数で指定します。
flags には Socket::MSG_* という名前の定数の bitwise OR を渡します。
戻り値は文字列と相手ソケットのパスのペアです。
例:
require 'socket'
UNIXServer.open("/tmp/s") {|serv|
c = UNIXSocket.open("/tmp/s")
s = serv.accept... -
BasicSocket
# shutdown(how = Socket :: SHUT _ RDWR) -> 0 (18910.0) -
ソケットの以降の接続を終了させます。
...接続が終了します。
* Socket::SHUT_RD: それ以降の受信が拒否されます
* Socket::SHUT_WR: それ以降の送信が拒否されます
* Socket::SHUT_RDWR: それ以降の送信、受信ともに拒否されます
how を省略すると Socket::SHUT_RDWR を指定したこ......とになります。
shutdown(2) を参照してください。
@param how 接続の終了の仕方を Socket::SHUT_RD, Socket::SHUT_WR, Socket::SHUT_RDWR などで指定します。
@raise Errno::EXXX ソケットの以降の接続を終了操作が失敗した場合に発生します。
@raise... -
Socket
:: Option # unpack(template) -> Array (18610.0) -
data に対し String#unpack を呼び出し、その結果を返します。
data に対し String#unpack を呼び出し、その結果を返します。
このメソッドは過去との互換性のために存在します。 -
UNIXServer
# accept -> UnixSocket (18310.0) -
クライアントからの接続要求を accept(2)で待ち受け、接続した UNIXSocket のインスタンスを返します。
...ライアントからの接続要求を accept(2)で待ち受け、接続した
UNIXSocket のインスタンスを返します。
例:
require 'socket'
UNIXServer.open("/tmp/s") {|serv|
c = UNIXSocket.open("/tmp/s")
s = serv.accept
s.write "from server"
c.write "from client"... -
UNIXServer
# accept _ nonblock -> UnixSocket (18310.0) -
ソケットをノンブロッキングモードに設定した後、 accept(2) を呼び出します。
...ブロッキングモードに設定した後、
accept(2) を呼び出します。
接続した
UNIXSocket のインスタンスを返します。
accept(2) がエラーになった場合、Socket#accept と同じ例外が
発生します。
Errno::EWOULDBLOCK, Errno::EAGAIN,
Errno::ECONNABORTE......を掴まえることができます。
require 'socket'
serv = UNIXServer.new("/tmp/sock")
begin # emulate blocking accept
sock = serv.accept_nonblock
rescue IO::WaitReadable, Errno::EINTR
IO.select([serv])
retry
end
# sock is an accepted socket.
@see UNIXServer#accept... -
UNIXServer
# sysaccept -> Integer (18310.0) -
接続したクライアントのソケットをファイル記述子で返すことを除けば UNIXServer#accept と同じです。
...接続したクライアントのソケットをファイル記述子で返すことを除けば
UNIXServer#accept と同じです。
例:
require 'socket'
UNIXServer.open("/tmp/s") {|serv|
c = UNIXSocket.open("/tmp/s")
p serv.sysaccept #=> 6
}... -
UNIXServer
# listen(backlog) -> 0 (18010.0) -
listen(2) を実行します。 (Socket#listenと同じ)
...listen(2) を実行します。
(Socket#listenと同じ)
backlog は、クライアントからの接続要求を保留できる数です。
listen(2) が成功すれば 0 を返します。
失敗すれば 例外 Errno::EXXX が発生します。
@param backlog バックログの最大数(接... -
UDPSocket
# connect(host , port) -> 0 (9418.0) -
ソケットを host の port に connect(2) します。
...UDPSocket#send で送り先のアドレスを指定せずに
データを送ることができます(connect しなくとも送り先のアドレスを明示すれば
データを送ることができます)。
require 'socket'
u1 = UDPSocket.new
u1.bind("127.0.0.1", 4913)
u2 = UDPSocket.n... -
UDPSocket
# bind(host , port) -> 0 (9310.0) -
ソケットを host の port に bind(2) します。
...ソケットを host の port に bind(2) します。
bind したポートから Socket#recv でデータを受け取ることができます。
@param host bind するホスト名文字列
@param port bind するポート番号... -
UDPSocket
# send(mesg , flags) -> Integer (9310.0) -
UDP ソケットを介してデータを送ります。
...ります。
flags には Socket::MSG_* という定数の bitwise OR を渡します。
詳しい意味は send(2) を参照してください。
host, port の対、もしくは sockaddr_to で送り先を指定します。
送り先を省略した場合は UDPSocket#connect で接続した
先......sockaddr_to にはlib:socket#pack_string もしくは
Addrinfo オブジェクトを指定します。
host, port に関しては lib:socket#host_format、
lib:socket#service_formatを参照してください。
2 引数、3 引数の形式の場合の動作は、
BasicSocket#send と同じです... -
UDPSocket
# send(mesg , flags , host , port) -> Integer (9310.0) -
UDP ソケットを介してデータを送ります。
...ります。
flags には Socket::MSG_* という定数の bitwise OR を渡します。
詳しい意味は send(2) を参照してください。
host, port の対、もしくは sockaddr_to で送り先を指定します。
送り先を省略した場合は UDPSocket#connect で接続した
先......sockaddr_to にはlib:socket#pack_string もしくは
Addrinfo オブジェクトを指定します。
host, port に関しては lib:socket#host_format、
lib:socket#service_formatを参照してください。
2 引数、3 引数の形式の場合の動作は、
BasicSocket#send と同じです... -
UDPSocket
# send(mesg , flags , sockaddr _ to) -> Integer (9310.0) -
UDP ソケットを介してデータを送ります。
...ります。
flags には Socket::MSG_* という定数の bitwise OR を渡します。
詳しい意味は send(2) を参照してください。
host, port の対、もしくは sockaddr_to で送り先を指定します。
送り先を省略した場合は UDPSocket#connect で接続した
先......sockaddr_to にはlib:socket#pack_string もしくは
Addrinfo オブジェクトを指定します。
host, port に関しては lib:socket#host_format、
lib:socket#service_formatを参照してください。
2 引数、3 引数の形式の場合の動作は、
BasicSocket#send と同じです... -
UNIXSocket
# path -> String (9310.0) -
UNIX ソケットのパスを返します。
...UNIX ソケットのパスを返します。
クライアント側はパスを持たないため空文字列となります。
例:
require 'socket'
UNIXServer.open("/tmp/s") {|serv|
p serv.path #=> "/tmp/s"
}...