種類
- 定数 (24)
- 特異メソッド (8)
- インスタンスメソッド (4)
ライブラリ
- socket (36)
キーワード
-
EAI
_ OVERFLOW (1) -
IFF
_ 802 _ 1Q _ VLAN (1) -
IFF
_ LIVE _ ADDR _ CHANGE (1) -
IFF
_ MACVLAN _ PORT (1) -
IFF
_ SLAVE (1) -
IFF
_ SLAVE _ INACTIVE (1) -
IFF
_ SLAVE _ NEEDARP (1) -
IFF
_ VOLATILE (1) -
IPV6
_ HOPLIMIT (1) -
IPV6
_ LEAVE _ GROUP (1) -
IPV6
_ MULTICAST _ HOPS (1) -
IPV6
_ MULTICAST _ IF (1) -
IPV6
_ MULTICAST _ LOOP (1) -
IPV6
_ RECVHOPLIMIT (1) -
IPV6
_ RECVTCLASS (1) -
IPV6
_ TCLASS (1) -
IPV6
_ V6ONLY (1) -
IP
_ RECVSLLA (1) -
IP
_ RECVTTL (1) -
MCAST
_ LEAVE _ GROUP (1) -
MCAST
_ LEAVE _ SOURCE _ GROUP (1) -
SO
_ KEEPALIVE (1) -
SO
_ RCVLOWAT (1) -
TCP
_ KEEPINTVL (1) -
connect
_ nonblock (1) - getaddrinfo (1)
- getservbyport (1)
- ipv6only! (1)
- recvfrom (1)
-
recvfrom
_ nonblock (1) -
tcp
_ server _ loop (2) -
udp
_ server _ loop (2) -
udp
_ server _ loop _ on (1) -
unix
_ server _ loop (1)
検索結果
先頭5件
-
Socket
:: IPV6 _ V6ONLY -> Integer (54907.0) -
Only bind IPv6。 BasicSocket#getsockopt, BasicSocket#setsockopt の第2引数(optname)に使用します。
...Only bind IPv6。
BasicSocket#getsockopt, BasicSocket#setsockopt
の第2引数(optname)に使用します。
@see Socket::Constants::IPPROTO_IPV6,
netinet/in.h(header), ip6(4freebsd), ipv6(7linux),
3493... -
Socket
:: IFF _ SLAVE _ INACTIVE (54904.0) -
bonding slave not the curr. active
bonding slave not the curr. active -
Socket
# ipv6only! -> () (36670.0) -
ソケットの IPV6_V6ONLY オプションを有効にします。
ソケットの IPV6_V6ONLY オプションを有効にします。
IPV6_V6ONLY オプションが使えない場合はこのメソッドは何もしません。 -
Socket
# recvfrom _ nonblock(maxlen , flags=0) -> [String , Addrinfo] (36604.0) -
ソケットをノンブロッキングモードに設定した後、 recvfrom(2) を呼び出します。
...ソケットをノンブロッキングモードに設定した後、
recvfrom(2) を呼び出します。
引数、返り値は Socket#recvfrom と同じです。
recvfrom(2) がエラーになった場合、
EAGAIN, EINTR を含め例外 Errno::EXXX が発生します。
Errno::EWOULDBLOCK、Er... -
Socket
. tcp _ server _ loop(host , port) {|sock , addr| . . . } -> () (36604.0) -
TCP/IP で host:port で待ち受けるサーバ側のソケットを作成し、 新しい接続を受け入れるごとにブロックを呼び出します。
...それが用いられます。
# 逐次的な echo サーバ
# 一度に一つのクライアントした取り扱えない
require 'socket'
Socket.tcp_server_loop(16807) {|sock, client_addrinfo|
begin
IO.copy_stream(sock, sock)
ensure
sock.close
end
}
# ス......注意
require 'socket'
Socket.tcp_server_loop(16807) {|sock, client_addrinfo|
Thread.new {
begin
IO.copy_stream(sock, sock)
ensure
sock.close
end
}
}
内部的には Socket.tcp_server_sockets で
生成したソケットを Socket.accept_loop で処......理しています。
@param host 割り当てるホスト名
@param port 割り当てるポート番号
@see Socket.tcp_server_sockets, Socket.accept_loop... -
Socket
. tcp _ server _ loop(port) {|sock , addr| . . . } -> () (36604.0) -
TCP/IP で host:port で待ち受けるサーバ側のソケットを作成し、 新しい接続を受け入れるごとにブロックを呼び出します。
...それが用いられます。
# 逐次的な echo サーバ
# 一度に一つのクライアントした取り扱えない
require 'socket'
Socket.tcp_server_loop(16807) {|sock, client_addrinfo|
begin
IO.copy_stream(sock, sock)
ensure
sock.close
end
}
# ス......注意
require 'socket'
Socket.tcp_server_loop(16807) {|sock, client_addrinfo|
Thread.new {
begin
IO.copy_stream(sock, sock)
ensure
sock.close
end
}
}
内部的には Socket.tcp_server_sockets で
生成したソケットを Socket.accept_loop で処......理しています。
@param host 割り当てるホスト名
@param port 割り当てるポート番号
@see Socket.tcp_server_sockets, Socket.accept_loop... -
Socket
. udp _ server _ loop(host , port) {|msg , msg _ src| . . . } -> () (36604.0) -
UDP のサーバを起動して、メッセージが来るごとに ブロックを呼び出します。
...と msg_src の 2 つで、
msg は受け取ったメッセージ文字列で、 msg_src は
通信相手の Socket::UDPSource オブジェクトです。
@param host 割り当てるホスト名
@param port 割り当てるポート番号
@see Socket.udp_server_sockets, Socket.udp_server_loop_on... -
Socket
. udp _ server _ loop(port) {|msg , msg _ src| . . . } -> () (36604.0) -
UDP のサーバを起動して、メッセージが来るごとに ブロックを呼び出します。
...と msg_src の 2 つで、
msg は受け取ったメッセージ文字列で、 msg_src は
通信相手の Socket::UDPSource オブジェクトです。
@param host 割り当てるホスト名
@param port 割り当てるポート番号
@see Socket.udp_server_sockets, Socket.udp_server_loop_on... -
Socket
. udp _ server _ loop _ on(sockets) {|msg , msg _ src| . . . } -> () (36604.0) -
sockets (UDP のソケット)に対し、通信を待ち受けます。
...
sockets (UDP のソケット)に対し、通信を待ち受けます。
Socket.udp_server_sockets の返り値がこれの引数に適切です。
ソケットからメッセージを受け取るたびにブロックを呼び出します。
ブロックに渡される引数は msg と msg_src の......つで、
msg は受け取ったメッセージ文字列で、 msg_src は
通信相手の Socket::UDPSource オブジェクトです。
無限ループ構造になっています。
@param sockets 通信を待ち受けるソケットの配列
@see Socket.udp_server_recv, Socket.udp_server_loop... -
Socket
. unix _ server _ loop(path) {|socket , client _ addrinfo| . . . } -> () (36604.0) -
Unix サーバソケットを生成し、 新しい接続を受け入れるごとにブロックを呼び出します。
...全です。
つまり、 /tmp/malicious-users-directory/socket という名前のパスは
使うべきではありません。
/tmp にスティッキービットが立っている場合、/tmp/socket や
/tmp/your-private-directory/socket というパス名は安全と考えて良いでしょう... -
Socket
:: EAI _ OVERFLOW -> Integer (36604.0) -
Argument buffer overflow
...Argument buffer overflow
getaddrinfo(3), getnameinfo(3) などの
エラーコードです。
対応する Socket.getaddrinfo, Addrinfo.getaddrinfo などは
エラーを SocketError に変換するため、この定数は直接は利用しません。
@see getaddrinfo(3linux), gai_strerror(3freeb... -
Socket
:: IFF _ 802 _ 1Q _ VLAN (36604.0) -
802.1Q VLAN device
802.1Q VLAN device -
Socket
:: IFF _ LIVE _ ADDR _ CHANGE (36604.0) -
hardware address change when it's running
hardware address change when it's running -
Socket
:: IFF _ MACVLAN _ PORT (36604.0) -
device used as macvlan port
device used as macvlan port -
Socket
:: IFF _ SLAVE (36604.0) -
slave of a load balancer
slave of a load balancer -
Socket
:: IFF _ SLAVE _ NEEDARP (36604.0) -
need ARPs for validation
need ARPs for validation -
Socket
:: IFF _ VOLATILE (36604.0) -
volatile flags
volatile flags -
Socket
:: IPV6 _ HOPLIMIT -> Integer (36604.0) -
Hop limit。 BasicSocket#getsockopt, BasicSocket#setsockopt の第2引数(optname)に使用します。
...Hop limit。
BasicSocket#getsockopt, BasicSocket#setsockopt
の第2引数(optname)に使用します。
@see Socket::Constants::IPPROTO_IPV6,
ip6(4freebsd), ipv6(7linux),
3542... -
Socket
:: IPV6 _ LEAVE _ GROUP -> Integer (36604.0) -
Leave a multicast group。 BasicSocket#getsockopt, BasicSocket#setsockopt の第2引数(optname)に使用します。
...Leave a multicast group。
BasicSocket#getsockopt, BasicSocket#setsockopt
の第2引数(optname)に使用します。
@see Socket::Constants::IPPROTO_IPV6,
netinet/in.h(header), ip6(4freebsd), ipv6(7linux),
3493... -
Socket
:: IPV6 _ MULTICAST _ HOPS -> Integer (36604.0) -
IPv6 multicast hop limit。 BasicSocket#getsockopt, BasicSocket#setsockopt の第2引数(optname)に使用します。
...IPv6 multicast hop limit。
BasicSocket#getsockopt, BasicSocket#setsockopt
の第2引数(optname)に使用します。
@see Socket::Constants::IPPROTO_IPV6,
netinet/in.h(header), ip6(4freebsd), ipv6(7linux),
3493... -
Socket
:: IPV6 _ MULTICAST _ IF -> Integer (36604.0) -
IP6 multicast interface。 BasicSocket#getsockopt, BasicSocket#setsockopt の第2引数(optname)に使用します。
...IP6 multicast interface。
BasicSocket#getsockopt, BasicSocket#setsockopt
の第2引数(optname)に使用します。
@see Socket::Constants::IPPROTO_IPV6,
netinet/in.h(header), ip6(4freebsd), ipv6(7linux),
3493... -
Socket
:: IPV6 _ MULTICAST _ LOOP -> Integer (36604.0) -
IP6 multicast loopback。 BasicSocket#getsockopt, BasicSocket#setsockopt の第2引数(optname)に使用します。
...IP6 multicast loopback。
BasicSocket#getsockopt, BasicSocket#setsockopt
の第2引数(optname)に使用します。
@see Socket::Constants::IPPROTO_IPV6,
netinet/in.h(header), ip6(4freebsd), ipv6(7linux),
3493... -
Socket
:: IPV6 _ RECVHOPLIMIT -> Integer (36604.0) -
Receive hop limit with datagram。 BasicSocket#getsockopt, BasicSocket#setsockopt の第2引数(optname)に使用します。
...Receive hop limit with datagram。
BasicSocket#getsockopt, BasicSocket#setsockopt
の第2引数(optname)に使用します。
@see Socket::Constants::IPPROTO_IPV6,
3542... -
Socket
:: IPV6 _ RECVTCLASS -> Integer (36604.0) -
Receive traffic class。 BasicSocket#getsockopt, BasicSocket#setsockopt の第2引数(optname)に使用します。
...Receive traffic class。
BasicSocket#getsockopt, BasicSocket#setsockopt
の第2引数(optname)に使用します。
@see Socket::Constants::IPPROTO_IPV6,
3542... -
Socket
:: IPV6 _ TCLASS -> Integer (36604.0) -
Specify the traffic class。 BasicSocket#getsockopt, BasicSocket#setsockopt の第2引数(optname)に使用します。
...Specify the traffic class。
BasicSocket#getsockopt, BasicSocket#setsockopt
の第2引数(optname)に使用します。
@see Socket::Constants::IPPROTO_IPV6,
3542... -
Socket
:: IP _ RECVSLLA -> Integer (36604.0) -
@todo Receive link-layer address with datagrams
@todo
Receive link-layer address with datagrams -
Socket
:: IP _ RECVTTL -> Integer (36604.0) -
Receive IP TTL with datagrams。 BasicSocket#getsockopt, BasicSocket#setsockopt の第2引数(optname)に使用します。
...Receive IP TTL with datagrams。
BasicSocket#getsockopt, BasicSocket#setsockopt
の第2引数(optname)に使用します。
@see Socket::Constants::IPPROTO_IP, ip(7linux), ip(4freebsd)... -
Socket
:: MCAST _ LEAVE _ GROUP -> Integer (36604.0) -
Leave a multicast group
...Leave a multicast group
BasicSocket#getsockopt, BasicSocket#setsockopt
の第2引数(optname)に使用します。
@see Socket::Constants::IPPROTO_IP, Socket::Constants::IPPROTO_IPV6,
3678... -
Socket
:: MCAST _ LEAVE _ SOURCE _ GROUP -> Integer (36604.0) -
Leave a multicast source group
...Leave a multicast source group
BasicSocket#getsockopt, BasicSocket#setsockopt
の第2引数(optname)に使用します。
@see Socket::Constants::IPPROTO_IP, Socket::Constants::IPPROTO_IPV6,
3678... -
Socket
:: SO _ KEEPALIVE -> Integer (36604.0) -
Keep connections alive。 BasicSocket#getsockopt, BasicSocket#setsockopt の第2引数(optname)に使用します。
...Keep connections alive。
BasicSocket#getsockopt, BasicSocket#setsockopt
の第2引数(optname)に使用します。
@see sys/socket.h(header), getsockopt(2freebsd),
socket(7linux), Socket::Constants::SOL_SOCKET... -
Socket
:: SO _ RCVLOWAT -> Integer (36604.0) -
Receive low-water mark。 BasicSocket#getsockopt, BasicSocket#setsockopt の第2引数(optname)に使用します。
...Receive low-water mark。
BasicSocket#getsockopt, BasicSocket#setsockopt
の第2引数(optname)に使用します。
@see sys/socket.h(header), getsockopt(2freebsd),
socket(7linux), Socket::Constants::SOL_SOCKET... -
Socket
:: TCP _ KEEPINTVL -> Integer (36604.0) -
Time between keepalive probes。 BasicSocket#getsockopt, BasicSocket#setsockopt の第2引数(optname)に使用します。
...Time between keepalive probes。
BasicSocket#getsockopt, BasicSocket#setsockopt
の第2引数(optname)に使用します。
@see tcp(7linux)... -
Socket
# connect _ nonblock(server _ sockaddr) -> 0 (18604.0) -
ソケットをノンブロッキングモードに設定した後、 connect(2) を呼び出します。
...ソケットをノンブロッキングモードに設定した後、
connect(2) を呼び出します。
引数、返り値は Socket#connect と同じです。
connect が EINPROGRESS エラーを報告した場合、その例外(Errno::EINPROGRESS)
には IO::WaitWritable が Object#extend さ......eb page
require 'socket'
include Socket::Constants
socket = Socket.new(AF_INET, SOCK_STREAM, 0)
sockaddr = Socket.sockaddr_in(80, 'www.google.com')
begin # emulate blocking connect
socket.connect_nonblock(sockaddr)
rescue IO::WaitWritable
IO.select(nil, [socket]) # wait 3-way han......dshake completion
begin
socket.connect_nonblock(sockaddr) # check connection failure
rescue Errno::EISCONN
end
end
socket.write("GET / HTTP/1.0\r\n\r\n")
results = socket.read
@param server_sockaddr 接続先アドレス
@raise Errno::EXXX connect(2) がエラーを報告... -
Socket
# recvfrom(maxlen , flags=0) -> [String , Addrinfo] (18604.0) -
ソケットからデータを受け取ります。
...ソケットからデータを受け取ります。
Socket#recv と同様ですが、返り値として
データ文字列と相手ソケットのアドレスのペアが返されます。
flags には Socket::MSG_* という定数の bitwise OR を渡します。
詳しくは recvfrom(2) を参......。詳しくは
Errno と man を見てください。
例:
require 'socket'
s1 = Socket.new(Socket::AF_INET, Socket::SOCK_DGRAM, 0)
s2 = Socket.new(Socket::AF_INET, Socket::SOCK_DGRAM, 0)
s1.bind(Socket.sockaddr_in(0, "0.0.0.0"))
s2.send("foo", 0, s1.getsockname)
mesg, sockaddr......= s1.recvfrom(10)
p mesg #=> "foo"
p sockaddr #=> "\002\000\200r\177\000\000\001\000\000\000\000\000\000\000\000"
p Socket.unpack_sockaddr_in(sockaddr) #=> [32882, "127.0.0.1"]... -
Socket
. getservbyport(port , protocol _ name="tcp") -> String (18604.0) -
ポート番号に対応するサービスの正式名を返します。
...す。
@param port ポート番号
@param protocol_name "tcp" や "udp" などのプロトコル名
@return サービスの正式名
require 'socket'
Socket.getservbyport(80) #=> "www"
Socket.getservbyport(514, "tcp") #=> "shell"
Socket.getservbyport(514, "udp") #=> "syslog"... -
Socket
. getaddrinfo(nodename , servname , family=nil , socktype=nil , protocol=nil , flags=nil) -> Array (604.0) -
2553で定義された getaddrinfo() の機能を提供するクラスメソッド。この関数は gethostbyname() や getservbyname() の代わりとして用意されており、 IP のバージョンに依存しないプログラムを書くための標準的な API です。
...名を指定します。 必須引数です。 (lib:socket#host_formatを参照)
@param servname サービス名を指定します。 必須引数です。 (lib:socket#service_formatを参照)
@param family アドレスファミリー。Socket::Constants::AF_INET など、AF_ で始まる定数を......指定します。
@param socktype ソケットタイプ。 Socket::Constants::SOCK_STREAM など、 SOCK_ で始まる定数を指定します。
@param protocol プロトコル。Socket::Constants::IPPROTO_IP など、IPPROTO_ で始まる定数を指定します。
@param flags getaddrinfo(3)......数に指定する addrinfo 構造体の ai_flags メンバに相当する整数。 Socket::AI_PASSIVEなど。
@return 7つの要素からなるアドレス情報に関する配列を返します。
@raise SocketError getaddrinfo(3)がエラーを返したときに発生する例外です
@see Ad...