Ruby 1.8.7 リファレンスマニュアル > ライブラリ一覧 > socketライブラリ > Socketクラス
クラスの継承リスト: Socket < BasicSocket < IO < Enumerable < File::Constants < Object < Kernel
ソケットそのものに対するシステムコールレベルのアクセスを提供 するクラス。
Perl のソケットに対するアクセスと同レベルの機能を 提供しています。このクラスではソケットアドレスは Array#pack された文字列で指定します (socket/ソケットアドレス構造体を pack した文字列を参照)。
一般的なソケットプログラミングはより高レベルの TCPSocket クラスや TCPServer クラスを用い て行われることが多く、このクラスはあまり用いられません。
getaddrinfo(nodename, servname, family=nil, socktype=nil, protocol=nil, flags=nil) -> Array
[permalink][rdoc][RFC2553]で定義された getaddrinfo() の機能を提供するクラスメソッド。この関数は gethostbyname() や getservbyname() の代わりとして用意されており、 IP のバージョンに依存しないプログラムを書くための標準的な API です。
アドレス情報とは7つの要素からなる次の形の配列です。
必須引数の意味は以下の通りです。
残りの引数は省略可能です。
引数に指定できる定数の意味については getaddrinfo(3) を参照して下さい。
例:
p Socket.getaddrinfo(Socket.gethostname, "ftp") #=> [["AF_INET", 21, "helium.ruby-lang.org", "210.251.121.214", 2, 1, 6]] pp Socket.getaddrinfo(Socket.gethostname, nil) #=> [["AF_INET", 0, "helium.ruby-lang.org", "210.251.121.214", 2, 1, 6], # ["AF_INET", 0, "helium.ruby-lang.org", "210.251.121.214", 2, 2, 17], # ["AF_INET", 0, "helium.ruby-lang.org", "210.251.121.214", 2, 3, 0]]
gethostbyaddr(host, type = Socket::AF_INET) -> Array
[permalink][rdoc]sockaddr 構造体をパックした文字列からホスト情報を返します。 ホスト情報の構造は Socket.gethostbyname と同じです。 type には、アドレスタイプ(デフォルトは Socket::AF_INET)を指定します。
gethostbyname(host) -> Array
[permalink][rdoc]ホスト名または IP アドレス(指定方法に関しては socket/ホスト指定形式を参照) からホストの情報を返します。
ホスト情報は以下の 4 要素の配列で表現されています。
第四要素のホストのアドレスは、各アドレスタイプに対応する C のアドレス構造体を pack した文字列として表現されています。 例えばアドレスタイプが AF_INET (定数 2) ならば Socket.unpack_sockaddr_in で unpack できます。
irb(main):009:0> Socket.gethostbyname("210.251.121.214") ["helium.ruby-lang.org", ["helium"], 2, "\322\373y\326"] irb(main):009:0> Socket.unpack_sockaddr_in(Socket.gethostbyname("210.251.121.214")[3])[1] "210.251.121.214"
gethostname -> String
[permalink][rdoc]システムの標準のホスト名を取得します。
ホストの別名やアドレスなど他の情報を得るには Socket.getaddrinfo を使ってください。 ただし、これは不可能な場合もあります。
例:
p Socket.gethostname #=> "helium.ruby-lang.org"
getnameinfo(sa, flags = 0) -> Array
[permalink][rdoc][RFC2553] で定義された getnameinfo() の機能を提供するク ラスメソッド。 gethostbyaddr() や getservbyport() の代 わりとして用意されています。IPのバージョンに依存しないプログラムを 書くための標準的なAPIです。
引数 sa には文字列か配列を与えます。文字列の場合は sockaddr 構造体 のパック文字列を与えます。具体的には BasicSocket#getsockname の値が利用できます。配列を与える場合には、要素が3つの場合と4つの場合 があります。
アドレスファミリーには Socket::AF_INET 等の定数の他に文字列 で "AF_INET" もしくは "AF_INET6" もしくは nil が 指定できます。ただしIPv6が使えないようにコンパイルされている場合は "AF_INET6" は無効な指定となります。アドレスファミリーに nil を指定することは Socket::AF_UNSPEC を指定すること と等価です。
サービス、ホストの指定に関しては socket/サービス指定形式、 socket/ホスト指定形式を参照してください。
要素が3つの場合でも、ホストにはアドレスを指定できますが、要素が4つ の場合には、最後の要素を名前解決しないことが保証されます。
省略可能な第2引数 flags には getnameinfo(3) の第7番目の引数に指定する flags に相当する Fixnum を与えます。
引数flagsを構成するための定数として Socket::NI_MAXHOST、 Socket::NI_MAXSERV、 Socket::NI_NOFQDN、 Socket::NI_NUMERICHOST、 Socket::NI_NAMEREQD、 Socket::NI_NUMERICSERV、 Socket::NI_DGRAM が用意されている場合があります。
これらの定数の意味については getnameinfo(3)を参照 して下さい。
Socket.getnameinfo(Socket.sockaddr_in('21','127.0.0.1')) #=> ["localhost", "ftp"] Socket.getnameinfo([nil, 21,'127.0.0.1']) #=> ["localhost", "ftp"]
getservbyname(service, proto = "tcp") -> Fixnum
[permalink][rdoc]service, protoに対応するポート番号を返 します。protoの省略値は"tcp"です。
open(domain, type, protocol) -> Socket
[permalink][rdoc]new(domain, type, protocol) -> Socket
新しいソケットを生成します。domain、type、 protocol はインクルードファイルにある定数で指定しま す。ほとんどの定数は Socket::AF_INET のように Socket クラスの定数として定義されています。domain とtype に関しては、"AF_INET", "SOCK_STREAM" のように文字列でも指定できますが、文 字列ですべての機能を指定できる保証はありません。
例えば、IPv4 の TCP ソケットは以下のように生成されます。
s = Socket.new(Socket::AF_INET, Socket::SOCK_STREAM, 0)
なお、socket(2) の domain 引数において AF_ と PF_ のどちらの定数を使用するかについては混乱がありますが、 Stevens の「UNIX ネットワークプログラミング第2版 Vol.1」4.2節に述べられているように、 現実的にはどちらでも問題なく、また、既存のコーディング習慣として AF_ が用いられることが多いため、 ここでは AF_ を使用しています。
sockaddr_in(port, host) -> String
[permalink][rdoc]pack_sockaddr_in(port, host) -> String
指定したアドレスをsocket/ソケットアドレス構造体を pack した文字列 で返します。port は、ポート番号を表す Fixnum あるいは、ポート 番号、サービス名を表す文字列です。
例:
require 'socket' p Socket.sockaddr_in("echo", "localhost") => "\002\000\000\a\177\000\000\001\000\000\000\000\000\000\000\000" p Socket.sockaddr_in("echo", "::1") => "\n\000\000\a\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\000\000\000\000"
sockaddr_un(path) -> String
[permalink][rdoc]pack_sockaddr_un(path) -> String
指定したアドレスをsocket/ソケットアドレス構造体を pack した文字列 で返します。
例:
require 'socket' p Socket.sockaddr_un("/tmp/.X11-unix/X0") => "\001\000/tmp/.X11-unix/X0\000...."
pair(domain, type, protocol) -> Array
[permalink][rdoc]socketpair(domain, type, protocol) -> Array
相互に結合されたソケットのペアを含む2要素の配列を返します。 引数の指定は Socket.open と同じです。
[SEE_ALSO] Socket.open
unpack_sockaddr_in(sockaddr) -> Array
[permalink][rdoc]socket/ソケットアドレス構造体を pack した文字列を unpack したアドレスを返します。返される値は [port, ipaddr] の配列です。
例:
require 'socket' p Socket.unpack_sockaddr_in(Socket.sockaddr_in("echo", "localhost")) => [7, "127.0.0.1"] p Socket.unpack_sockaddr_in(Socket.sockaddr_in("echo", "::1")) => [7, "::1"]
unpack_sockaddr_un(sockaddr) -> String
[permalink][rdoc]socket/ソケットアドレス構造体を pack した文字列を unpack したソケットパス名を返します。
例:
require 'socket' p Socket.unpack_sockaddr_un(Socket.sockaddr_un("/tmp/.X11-unix/X0")) => "/tmp/.X11-unix/X0"
accept -> Array
[permalink][rdoc]新しい接続を受け付けて、新しい接続に対するソケットとアドレスの ペアを返します。accept(2) を参照。
たとえば IPv4 の TCP サーバソケットを生成し、accept でクライアントからの接続を受け付けるには以下のようにします。
例:
serv = Socket.new(Socket::AF_INET, Socket::SOCK_STREAM, 0) sockaddr = Socket.sockaddr_in(8080, "0.0.0.0") serv.bind(sockaddr) serv.listen(5) sock = serv.accept
accept_nonblock -> Array
[permalink][rdoc]ソケットをノンブロッキングモードに設定した後、 accept(2) を呼び出します。
引数、返り値は Socket#accept と同じです。
accept(2) がエラーになった場合、 EAGAIN, EINTR を含め例外 Errno::EXXX が発生します。
bind(my_sockaddr) -> 0
[permalink][rdoc]ソケットを my_sockaddr に結合します。bind(2) と同じ働きをします。
connect(server_sockaddr) -> 0
[permalink][rdoc]connect(2) でソケットを接続します。
server_sockaddr は、 socket/ソケットアドレス構造体を pack した文字列 です。
0 を返します。
たとえば IPv4 の TCP ソケットを生成し、connect で www.ruby-lang.org:80 に接続するには以下のようにします。
例:
s = Socket.new(Socket::AF_INET, Socket::SOCK_STREAM, 0) sockaddr = Socket.sockaddr_in(80, "www.ruby-lang.org") s.connect(sockaddr) s.write "GET / HTTP/1.0\r\n\r\n" print s.read
connect_nonblock(server_sockaddr) -> 0
[permalink][rdoc]ソケットをノンブロッキングモードに設定した後、 connect(2) を呼び出します。
引数、返り値は Socket#connect と同じです。
listen(backlog) -> 0
[permalink][rdoc]listen(2) と同じ働きをします。
0 を返します。
recvfrom(maxlen, flags=0) -> [String, String]
[permalink][rdoc]ソケットからデータを受け取ります。
Socket#recv と同様ですが、返り値として データ文字列と相手ソケットのアドレスのペアが返されます。
flags には Socket::MSG_* という定数の bitwise OR を渡します。 詳しくは recvfrom(2) を参照してください。
例:
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"]
recvfrom_nonblock(maxlen, flags=0) -> [String, String]
[permalink][rdoc]ソケットをノンブロッキングモードに設定した後、 recvfrom(2) を呼び出します。
引数、返り値は Socket#recvfrom と同じです。
recvfrom(2) がエラーになった場合、 EAGAIN, EINTR を含め例外 Errno::EXXX が発生します。
sysaccept -> Array
[permalink][rdoc]接続したクライアントのファイル記述子とアドレスのペアを返すことを除 けば Socket#accept と同じです。
AF_APPLETALK -> Integer
[permalink][rdoc]PF_APPLETALK -> Integer
Apple talk。 Socket.open の第一引数 domain に使用します。
[SEE_ALSO] socket(2linux), socket(2freebsd), ddp(7linux)
AF_ATM -> Integer
[permalink][rdoc]PF_ATM -> Integer
ATM。 Socket.open の第一引数 domain に使用します。
[SEE_ALSO] socket(2freebsd)
AF_AX25 -> Integer
[permalink][rdoc]PF_AX25 -> Integer
ITU-T X.25 / ISO-8208。 Socket.open の第一引数 domain に使用します。
[SEE_ALSO] socket(2linux)
AF_CCITT -> Integer
[permalink][rdoc]PF_CCITT -> Integer
[TODO]
CCITT プロトコル。 Socket.open の第一引数 domain に使用します。
AF_CHAOS -> Integer
[permalink][rdoc]PF_CHAOS -> Integer
[TODO]
MIT CHAOS プロトコル。 Socket.open の第一引数 domain に使用します。
AF_CNT -> Integer
[permalink][rdoc]PF_CNT -> Integer
[TODO]
Computer Network Technology。 Socket.open の第一引数 domain に使用します。
AF_COIP -> Integer
[permalink][rdoc]PF_COIP -> Integer
[TODO]
connection-oriented IP。 Socket.open の第一引数 domain に使用します。
AF_DATAKIT -> Integer
[permalink][rdoc]PF_DATAKIT -> Integer
[TODO]
datakit protocol。 Socket.open の第一引数 domain に使用します。
AF_DEC -> Integer
[permalink][rdoc]PF_DEC -> Integer
[TODO]
DECnet protocol。 Socket.open の第一引数 domain に使用します。
AF_DLI -> Integer
[permalink][rdoc]PF_DLI -> Integer
[TODO]
DEC Direct data link interface。 Socket.open の第一引数 domain に使用します。
AF_E164 -> Integer
[permalink][rdoc][TODO]
CCITT E.164 recommendation。 Socket.open の第一引数 domain に使用します。
AF_ECMA -> Integer
[permalink][rdoc]PF_ECMA -> Integer
[TODO]
European computer manufacturers。 Socket.open の第一引数 domain に使用します。
AF_HYLINK -> Integer
[permalink][rdoc]PF_HYLINK -> Integer
[TODO]
NSC Hyperchannel。 Socket.open の第一引数 domain に使用します。
AF_IMPLINK -> Integer
[permalink][rdoc]PF_IMPLINK -> Integer
[TODO]
ARPANET IMP。 Socket.open の第一引数 domain に使用します。
AF_INET -> Integer
[permalink][rdoc]PF_INET -> Integer
IPv4。 Socket.open の第一引数 domain に使用します。
[SEE_ALSO] sys/socket.h(header), socket(2freebsd), ip(7linux)
AF_INET6 -> Integer
[permalink][rdoc]PF_INET6 -> Integer
IPv6。 Socket.open の第一引数 domain に使用します。
[SEE_ALSO] sys/socket.h(header), socket(2freebsd), ipv6(7linux)
AF_IPX -> Integer
[permalink][rdoc]PF_IPX -> Integer
IPX(Novell Internet Packet eXchange protocol)。 Socket.open の第一引数 domain に使用します。
[SEE_ALSO] socket(3linux)
AF_ISDN -> Integer
[permalink][rdoc]PF_ISDN -> Integer
[TODO]
Integrated Services Digital Network。 Socket.open の第一引数 domain に使用します。
AF_ISO -> Integer
[permalink][rdoc]AF_OSI -> Integer
PF_ISO -> Integer
PF_OSI -> Integer
[TODO]
ISO Open Systems Interconnection protocols。 Socket.open の第一引数 domain に使用します。
AF_LAT -> Integer
[permalink][rdoc]PF_LAT -> Integer
[TODO]
Local Area Transport protocol。 Socket.open の第一引数 domain に使用します。
AF_LINK -> Integer
[permalink][rdoc]PF_LINK -> Integer
[TODO]
Link layer interface。 Socket.open の第一引数 domain に使用します。
AF_LOCAL -> Integer
[permalink][rdoc]AF_UNIX -> Integer
PF_LOCAL -> Integer
PF_UNIX -> Integer
Unix domain socket。 Socket.open の第一引数 domain に使用します。
[SEE_ALSO] sys/socket.h(header), unix(7linux)
AF_MAX -> Integer
[permalink][rdoc]対象のプラットフォーム上でのアドレスファミリーの最大の数値。
[SEE_ALSO] Socket::Constants::PF_MAX
AF_NATM -> Integer
[permalink][rdoc]PF_NATM -> Integer
[TODO]
Native ATM access。 Socket.open の第一引数 domain に使用します。
AF_NDRV -> Integer
[permalink][rdoc]PF_NDRV -> Integer
[TODO]
Network driver raw access。 Socket.open の第一引数 domain に使用します。
AF_NETBIOS -> Integer
[permalink][rdoc]PF_NETBIOS -> Integer
[TODO]
NetBIOS。 Socket.open の第一引数 domain に使用します。
AF_NETGRAPH -> Integer
[permalink][rdoc]PF_NETGRAPH -> Integer
Netgraph sockets。 Socket.open の第一引数 domain に使用します。
[SEE_ALSO] socket(2freebsd)
AF_NS -> Integer
[permalink][rdoc]PF_NS -> Integer
[TODO]
XEROX NS protocol。 Socket.open の第一引数 domain に使用します。
AF_PPP -> Integer
[permalink][rdoc]PF_PPP -> Integer
[TODO]
Point-to-Point Protocol。 Socket.open の第一引数 domain に使用します。
AF_PUP -> Integer
[permalink][rdoc]PF_PUP -> Integer
PUP(PARC Universal Packet)。 Socket.open の第一引数 domain に使用します。
[SEE_ALSO] socket(2freebsd)
AF_ROUTE -> Integer
[permalink][rdoc]PF_ROUTE -> Integer
[TODO]
Internal Routing protocol。 Socket.open の第一引数 domain に使用します。
[TODO]
AF_SIP -> Integer
[permalink][rdoc]PF_SIP -> Integer
[TODO]
Simple Internet Protocol。 Socket.open の第一引数 domain に使用します。
AF_SNA -> Integer
[permalink][rdoc]PF_SNA -> Integer
[TODO]
IBM SNA protocol。 Socket.open の第一引数 domain に使用します。
AF_SYSTEM -> Integer
[permalink][rdoc]PF_SYSTEM -> Integer
[TODO]
Socket.open の第一引数 domain に使用します。
AF_UNSPEC -> Integer
[permalink][rdoc]アドレスファミリー不定。
[SEE_ALSO] Socket.open, sys/socket.h(header)
AI_ADDRCONFIG -> Integer
[permalink][rdoc]Accept only if any address is assigned。
Socket.getaddrinfo, Addrinfo.getaddrinfo の引数 flags に渡す 定数です。
[SEE_ALSO] getaddrinfo(3)
AI_ALL -> Integer
[permalink][rdoc]Allow all addresses。
Socket.getaddrinfo, Addrinfo.getaddrinfo の引数 flags に渡す 定数です。
[SEE_ALSO] getaddrinfo(3)
AI_CANONNAME -> Integer
[permalink][rdoc]Fill in the canonical name。
Socket.getaddrinfo, Addrinfo.getaddrinfo の引数 flags に渡す 定数です。
[SEE_ALSO] getaddrinfo(3)
AI_DEFAULT -> Integer
[permalink][rdoc]Default flags for getaddrinfo。
Socket.getaddrinfo, Addrinfo.getaddrinfo の引数 flags に渡す 定数です。
[SEE_ALSO] getipnodebyname(3freebsd)
AI_MASK -> Integer
[permalink][rdoc][TODO]
AI_NUMERICHOST -> Integer
[permalink][rdoc]Prevent host name resolution。
Socket.getaddrinfo, Addrinfo.getaddrinfo の引数 flags に渡す 定数です。
[SEE_ALSO] getaddrinfo(3)
AI_PASSIVE -> Integer
[permalink][rdoc]Get address to use with bind。
Socket.getaddrinfo, Addrinfo.getaddrinfo の引数 flags に渡す 定数です。
[SEE_ALSO] getaddrinfo(3)
AI_V4MAPPED -> Integer
[permalink][rdoc]Accept IPv4-mapped IPv6 addresses。
Socket.getaddrinfo, Addrinfo.getaddrinfo の引数 flags に渡す 定数です。
[SEE_ALSO] getaddrinfo(3)
AI_V4MAPPED_CFG -> Integer
[permalink][rdoc]Accept IPv4 mapped addresses if the kernel supports it。
Socket.getaddrinfo, Addrinfo.getaddrinfo の引数 flags に渡す 定数です。
[SEE_ALSO] getipnodebyname(3freebsd)
EAI_ADDRFAMILY -> Integer
[permalink][rdoc]Address family for hostname not supported
getaddrinfo(3), getnameinfo(3) などの エラーコードです。 対応する Socket.getaddrinfo, Addrinfo.getaddrinfo などは エラーを SocketError に変換するため、この定数は直接は利用しません。
[SEE_ALSO] getaddrinfo(3linux), gai_strerror(3freebsd)
EAI_AGAIN -> Integer
[permalink][rdoc]Temporary failure in name resolution
getaddrinfo(3), getnameinfo(3) などの エラーコードです。 対応する Socket.getaddrinfo, Addrinfo.getaddrinfo などは エラーを SocketError に変換するため、この定数は直接は利用しません。
[SEE_ALSO] getaddrinfo(3linux), gai_strerror(3freebsd)
EAI_BADFLAGS -> Integer
[permalink][rdoc]Invalid flags
getaddrinfo(3), getnameinfo(3) などの エラーコードです。 対応する Socket.getaddrinfo, Addrinfo.getaddrinfo などは エラーを SocketError に変換するため、この定数は直接は利用しません。
[SEE_ALSO] getaddrinfo(3linux), gai_strerror(3freebsd)
EAI_BADHINTS -> Integer
[permalink][rdoc]Invalid value for hints
getaddrinfo(3), getnameinfo(3) などの エラーコードです。 対応する Socket.getaddrinfo, Addrinfo.getaddrinfo などは エラーを SocketError に変換するため、この定数は直接は利用しません。
EAI_FAIL -> Integer
[permalink][rdoc]Non-recoverable failure in name resolution
getaddrinfo(3), getnameinfo(3) などの エラーコードです。 対応する Socket.getaddrinfo, Addrinfo.getaddrinfo などは エラーを SocketError に変換するため、この定数は直接は利用しません。
[SEE_ALSO] getaddrinfo(3linux), gai_strerror(3freebsd)
EAI_FAMILY -> Integer
[permalink][rdoc]Address family not supported
getaddrinfo(3), getnameinfo(3) などの エラーコードです。 対応する Socket.getaddrinfo, Addrinfo.getaddrinfo などは エラーを SocketError に変換するため、この定数は直接は利用しません。
[SEE_ALSO] getaddrinfo(3linux), gai_strerror(3freebsd)
EAI_MAX -> Integer
[permalink][rdoc]EAI_* 定数の最大値。
EAI_MEMORY -> Integer
[permalink][rdoc]Memory allocation failure
getaddrinfo(3), getnameinfo(3) などの エラーコードです。 対応する Socket.getaddrinfo, Addrinfo.getaddrinfo などは エラーを SocketError に変換するため、この定数は直接は利用しません。
[SEE_ALSO] getaddrinfo(3linux), gai_strerror(3freebsd)
EAI_NODATA -> Integer
[permalink][rdoc]No address associated with hostname
getaddrinfo(3), getnameinfo(3) などの エラーコードです。 対応する Socket.getaddrinfo, Addrinfo.getaddrinfo などは エラーを SocketError に変換するため、この定数は直接は利用しません。
[SEE_ALSO] getaddrinfo(3linux)
EAI_NONAME -> Integer
[permalink][rdoc]Hostname nor servname, or not known
getaddrinfo(3), getnameinfo(3) などの エラーコードです。 対応する Socket.getaddrinfo, Addrinfo.getaddrinfo などは エラーを SocketError に変換するため、この定数は直接は利用しません。
[SEE_ALSO] getaddrinfo(3linux), gai_strerror(3freebsd)
EAI_PROTOCOL -> Integer
[permalink][rdoc]Resolved protocol is unknown
getaddrinfo(3), getnameinfo(3) などの エラーコードです。 対応する Socket.getaddrinfo, Addrinfo.getaddrinfo などは エラーを SocketError に変換するため、この定数は直接は利用しません。
[SEE_ALSO] getaddrinfo(3linux), gai_strerror(3freebsd)
EAI_SERVICE -> Integer
[permalink][rdoc]Servname not supported for socket type
getaddrinfo(3), getnameinfo(3) などの エラーコードです。 対応する Socket.getaddrinfo, Addrinfo.getaddrinfo などは エラーを SocketError に変換するため、この定数は直接は利用しません。
[SEE_ALSO] getaddrinfo(3linux), gai_strerror(3freebsd)
EAI_SOCKTYPE -> Integer
[permalink][rdoc]Socket type not supported
getaddrinfo(3), getnameinfo(3) などの エラーコードです。 対応する Socket.getaddrinfo, Addrinfo.getaddrinfo などは エラーを SocketError に変換するため、この定数は直接は利用しません。
[SEE_ALSO] getaddrinfo(3linux), gai_strerror(3freebsd)
EAI_SYSTEM -> Integer
[permalink][rdoc]System error returned in errno
getaddrinfo(3), getnameinfo(3) などの エラーコードです。 対応する Socket.getaddrinfo, Addrinfo.getaddrinfo などは エラーを適当な例外に変換するため、この定数は直接は利用しません。
[SEE_ALSO] getaddrinfo(3linux), gai_strerror(3freebsd)
INADDR_ALLHOSTS_GROUP -> Integer
[permalink][rdoc]Multicast group for all systems on this subset。 IPv4の 244.0.0.1 に対応する整数です。
[SEE_ALSO] http://www.iana.org/assignments/multicast-addresses/multicast-addresses.xml, [RFC5771]
INADDR_ANY -> Integer
[permalink][rdoc]A socket bound to INADDR_ANY receives packets from all interfaces and sends from the default IP address。 IPv4アドレスの 0.0.0.0 に対応する整数です。
[SEE_ALSO] netinet/in.h(header), ip(7linux), ip(4freebsd)
INADDR_BROADCAST -> Integer
[permalink][rdoc]The network broadcast address。 IPv4のブロードキャストアドレス 255.255.255.255 に対応する整数です。
[SEE_ALSO] netinet/in.h(header), ip(7linux), ip(4freebsd)
INADDR_LOOPBACK -> Integer
[permalink][rdoc]The loopback address。 IPv4のループバックアドレス 127.0.0.1 に対応する整数です。
[SEE_ALSO] ip(7linux), ip(4freebsd)
INADDR_MAX_LOCAL_GROUP -> Integer
[permalink][rdoc]The last local network multicast group。 IPv4の 244.0.0.255 に対応する整数です。
[SEE_ALSO] http://www.iana.org/assignments/multicast-addresses/multicast-addresses.xml, [RFC5771]
INADDR_NONE -> Integer
[permalink][rdoc]A bitmask for matching no valid IP address。 エラーを表すアドレス値です。
INADDR_UNSPEC_GROUP -> Integer
[permalink][rdoc]The reserved multicast group。 IPv4の 244.0.0.0 に対応する整数です。
[SEE_ALSO] http://www.iana.org/assignments/multicast-addresses/multicast-addresses.xml, [RFC5771]
IPPORT_RESERVED -> Integer
[permalink][rdoc]利用法が予約されているポート番号の最大値。
IPPORT_USERRESERVED -> Integer
[permalink][rdoc]ユーザが自由に利用して良いポート番号の最小値。
IPPROTO_BIP -> Integer
[permalink][rdoc][TODO]
BasicSocket#getsockopt, BasicSocket#setsockopt の level 引数に使用します。
また、Socket.open の protocol 引数に渡す利用法もあります。
IPPROTO_EGP -> Integer
[permalink][rdoc][TODO]
Exterior Gateway Protocol。 BasicSocket#getsockopt, BasicSocket#setsockopt の level 引数に使用します。
また、Socket.open の protocol 引数に渡す利用法もあります。
IPPROTO_EON -> Integer
[permalink][rdoc][TODO]
ISO cnlp。 BasicSocket#getsockopt, BasicSocket#setsockopt の level 引数に使用します。
また、Socket.open の protocol 引数に渡す利用法もあります。
IPPROTO_GGP -> Integer
[permalink][rdoc][TODO]
Gateway to Gateway Protocol。 BasicSocket#getsockopt, BasicSocket#setsockopt の level 引数に使用します。
また、Socket.open の protocol 引数に渡す利用法もあります。
IPPROTO_HELLO -> Integer
[permalink][rdoc][TODO]
"hello" routing protocol。 BasicSocket#getsockopt, BasicSocket#setsockopt の level 引数に使用します。
また、Socket.open の protocol 引数に渡す利用法もあります。
IPPROTO_ICMP -> Integer
[permalink][rdoc]Control message protocol。 BasicSocket#getsockopt, BasicSocket#setsockopt の level 引数に使用します。
また、Socket.open の protocol 引数に渡す利用法もあります。
[SEE_ALSO] netinet/in.h(header) icmp(4freebsd), icmp(7linux)
IPPROTO_IDP -> Integer
[permalink][rdoc][TODO]
XNS IDP。 BasicSocket#getsockopt, BasicSocket#setsockopt の level 引数に使用します。
また、Socket.open の protocol 引数に渡す利用法もあります。
IPPROTO_IGMP -> Integer
[permalink][rdoc][TODO]
Group Management Protocol。 BasicSocket#getsockopt, BasicSocket#setsockopt の level 引数に使用します。
また、Socket.open の protocol 引数に渡す利用法もあります。
IPPROTO_IP -> Integer
[permalink][rdoc]Internet protocol。 BasicSocket#getsockopt, BasicSocket#setsockopt の level 引数に使用します。
また、Socket.open の protocol 引数に渡す利用法もあります。
[SEE_ALSO] netinet/in.h(header) ip(4freebsd), ip(7linux)
IPPROTO_MAX -> Integer
[permalink][rdoc]IPPROTO 定数の最大値。
IPPROTO_ND -> Integer
[permalink][rdoc][TODO]
Sun net disk protocol BasicSocket#getsockopt, BasicSocket#setsockopt の level 引数に使用します。
また、Socket.open の protocol 引数に渡す利用法もあります。
IPPROTO_PUP -> Integer
[permalink][rdoc][TODO]
PARC Universal Packet protocol。 BasicSocket#getsockopt, BasicSocket#setsockopt の level 引数に使用します。
また、Socket.open の protocol 引数に渡す利用法もあります。
IPPROTO_RAW -> Integer
[permalink][rdoc]Raw IP packets protocol。 BasicSocket#getsockopt, BasicSocket#setsockopt の level 引数に使用します。
また、Socket.open の protocol 引数に渡す利用法もあります。
[SEE_ALSO] netinet/in.h(header) ip(4freebsd), raw(7linux)
IPPROTO_TCP -> Integer
[permalink][rdoc]Transmission control protocol。 BasicSocket#getsockopt, BasicSocket#setsockopt の level 引数に使用します。
また、Socket.open の protocol 引数に渡す利用法もあります。
[SEE_ALSO] netinet/in.h(header) tcp(4freebsd), tcp(7linux)
IPPROTO_TP -> Integer
[permalink][rdoc][TODO]
ISO transport protocol class 4。 BasicSocket#getsockopt, BasicSocket#setsockopt の level 引数に使用します。
また、Socket.open の protocol 引数に渡す利用法もあります。
IPPROTO_UDP -> Integer
[permalink][rdoc]User Datagram Protocol。 BasicSocket#getsockopt, BasicSocket#setsockopt の level 引数に使用します。
また、Socket.open の protocol 引数に渡す利用法もあります。
[SEE_ALSO] netinet/in.h(header) udp(4freebsd), udp(7linux)
IPPROTO_XTP -> Integer
[permalink][rdoc][TODO]
Xpress Transport Protocol。 BasicSocket#getsockopt, BasicSocket#setsockopt の level 引数に使用します。
また、Socket.open の protocol 引数に渡す利用法もあります。
IP_ADD_MEMBERSHIP -> Integer
[permalink][rdoc]Add a multicast group membership
BasicSocket#getsockopt, BasicSocket#setsockopt の第2引数(optname)に使用します。
[SEE_ALSO] Socket::Constants::IPPROTO_IP, ip(4freebsd), ip(7linux)
IP_DEFAULT_MULTICAST_LOOP -> Integer
[permalink][rdoc][TODO]
Default multicast loopback
IP_DEFAULT_MULTICAST_TTL -> Integer
[permalink][rdoc][TODO]
Default multicast TTL
IP_DROP_MEMBERSHIP -> Integer
[permalink][rdoc]Drop a multicast group membership。 BasicSocket#getsockopt, BasicSocket#setsockopt の第2引数(optname)に使用します。
[SEE_ALSO] Socket::Constants::IPPROTO_IP, ip(4freebsd), ip(7linux)
IP_HDRINCL -> Integer
[permalink][rdoc]Header is included with data。 BasicSocket#getsockopt, BasicSocket#setsockopt の第2引数(optname)に使用します。
[SEE_ALSO] Socket::Constants::IPPROTO_IP, ip(4freebsd)
IP_MAX_MEMBERSHIPS -> Integer
[permalink][rdoc]Maximum number multicast groups a socket can join。 BasicSocket#getsockopt, BasicSocket#setsockopt の第2引数(optname)に使用します。
[SEE_ALSO] Socket::Constants::IPPROTO_IP, ip(4freebsd)
IP_MULTICAST_IF -> Integer
[permalink][rdoc]IP multicast interface。 BasicSocket#getsockopt, BasicSocket#setsockopt の第2引数(optname)に使用します。
[SEE_ALSO] Socket::Constants::IPPROTO_IP, ip(4freebsd), ip(7linux)
IP_MULTICAST_LOOP -> Integer
[permalink][rdoc]IP multicast loopback。 BasicSocket#getsockopt, BasicSocket#setsockopt の第2引数(optname)に使用します。
[SEE_ALSO] Socket::Constants::IPPROTO_IP, ip(4freebsd), ip(7linux)
IP_MULTICAST_TTL -> Integer
[permalink][rdoc]IP multicast TTL。 BasicSocket#getsockopt, BasicSocket#setsockopt の第2引数(optname)に使用します。
[SEE_ALSO] Socket::Constants::IPPROTO_IP, ip(4freebsd), ip(7linux)
IP_OPTIONS -> Integer
[permalink][rdoc]IP options to be included in packets。 BasicSocket#getsockopt, BasicSocket#setsockopt の第2引数(optname)に使用します。
[SEE_ALSO] Socket::Constants::IPPROTO_IP, ip(4freebsd), ip(7linux)
IP_RECVDSTADDR -> Integer
[permalink][rdoc]Receive IP destination address with datagram。 BasicSocket#getsockopt, BasicSocket#setsockopt の第2引数(optname)に使用します。
[SEE_ALSO] Socket::Constants::IPPROTO_IP, ip(4freebsd)
IP_RECVOPTS -> Integer
[permalink][rdoc]Receive IP destination address with datagram。 BasicSocket#getsockopt, BasicSocket#setsockopt の第2引数(optname)に使用します。
[SEE_ALSO] Socket::Constants::IPPROTO_IP, ip(7linux)
IP_RECVRETOPTS -> Integer
[permalink][rdoc][TODO]
Receive all IP options for response
IP_RETOPTS -> Integer
[permalink][rdoc]IP options to be included in datagrams。 BasicSocket#getsockopt, BasicSocket#setsockopt の第2引数(optname)に使用します。
[SEE_ALSO] Socket::Constants::IPPROTO_IP, ip(7linux)
IP_TOS -> Integer
[permalink][rdoc]IP type-of-service。 BasicSocket#getsockopt, BasicSocket#setsockopt の第2引数(optname)に使用します。
[SEE_ALSO] Socket::Constants::IPPROTO_IP, ip(4freebsd), ip(7linux)
IP_TTL -> Integer
[permalink][rdoc]IP time-to-live。 BasicSocket#getsockopt, BasicSocket#setsockopt の第2引数(optname)に使用します。
[SEE_ALSO] Socket::Constants::IPPROTO_IP, ip(4freebsd), ip(7linux)
MSG_COMPAT -> Integer
[permalink][rdoc][TODO]
End of record
MSG_CTRUNC -> Integer
[permalink][rdoc]Control data lost before delivery。
BasicSocket#send, BasicSocket#sendmsg, BasicSocket#recv, BasicSocket#recvmsg の flags 引数に用います。
[SEE_ALSO] sys/socket.h(header), send(2linux), recv(2linux), send(2freebsd), recv(2freebsd),
MSG_DONTROUTE -> Integer
[permalink][rdoc]Send without using the routing tables。
BasicSocket#send, BasicSocket#sendmsg の flags 引数に用います。
[SEE_ALSO] sys/socket.h(header), send(2linux) send(2freebsd)
MSG_DONTWAIT -> Integer
[permalink][rdoc]This message should be non-blocking。
BasicSocket#send, BasicSocket#sendmsg, BasicSocket#recv, BasicSocket#recvmsg の flags 引数に用います。
[SEE_ALSO] send(2linux), recv(2linux), recv(2freebsd),
MSG_EOF -> Integer
[permalink][rdoc]Data completes connection。
BasicSocket#send, BasicSocket#sendmsg, BasicSocket#recv, BasicSocket#recvmsg の flags 引数に用います。
[SEE_ALSO] send(2freebsd)
MSG_EOR -> Integer
[permalink][rdoc]Data completes record。
BasicSocket#send, BasicSocket#sendmsg, BasicSocket#recv, BasicSocket#recvmsg の flags 引数に用います。
[SEE_ALSO] sys/socket.h(header), send(2), sendto(2), sendmsg(2), recv(2), recvfrom(2), recvmsg(2), send(2linux), recv(2linux), send(2freebsd), recv(2freebsd),
MSG_FLUSH -> Integer
[permalink][rdoc][TODO]
Start of a hold sequence. Dumps to so_temp
MSG_HAVEMORE -> Integer
[permalink][rdoc][TODO]
Data ready to be read
MSG_HOLD -> Integer
[permalink][rdoc][TODO]
Hold fragment in so_temp
MSG_OOB -> Integer
[permalink][rdoc]Process out-of-band data。
BasicSocket#send, BasicSocket#sendmsg, BasicSocket#recv, BasicSocket#recvmsg の flags 引数に用います。
[SEE_ALSO] sys/socket.h(header), send(2), sendto(2), sendmsg(2), recv(2), recvfrom(2), recvmsg(2), send(2linux), recv(2linux), send(2freebsd), recv(2freebsd),
MSG_PEEK -> Integer
[permalink][rdoc]Peek at incoming message。
BasicSocket#send, BasicSocket#sendmsg, BasicSocket#recv, BasicSocket#recvmsg の flags 引数に用います。
[SEE_ALSO] sys/socket.h(header), send(2), sendto(2), sendmsg(2), recv(2), recvfrom(2), recvmsg(2), send(2linux), recv(2linux), send(2freebsd), recv(2freebsd),
MSG_RCVMORE -> Integer
[permalink][rdoc][TODO]
Data remains in the current packet
MSG_SEND -> Integer
[permalink][rdoc][TODO]
Send the packet in so_temp
MSG_TRUNC -> Integer
[permalink][rdoc]Data discarded before delivery。
BasicSocket#send, BasicSocket#sendmsg, BasicSocket#recv, BasicSocket#recvmsg の flags 引数に用います。
[SEE_ALSO] sys/socket.h(header), send(2linux), recv(2linux), send(2freebsd), recv(2freebsd),
MSG_WAITALL -> Integer
[permalink][rdoc]Wait for full request or error
BasicSocket#recv, BasicSocket#recvmsg の flags 引数に用います。
[SEE_ALSO] sys/socket.h(header), recv(2), recvfrom(2), recvmsg(2), recv(2linux), recv(2freebsd),
NI_DGRAM -> Integer
[permalink][rdoc]The service specified is a datagram service (looks up UDP ports)。
Socket.getnameinfo, Addrinfo#getnameinfo の引数 flags に渡す 定数です。
Socket.getnameinfo([ Socket::AF_INET, 514, "127.0.0.1"], Socket::NI_DGRAM) # => ["localhost", "syslog"] Socket.getnameinfo([ Socket::AF_INET, 514, "127.0.0.1"]) # => ["localhost", "shell"]
[SEE_ALSO] getnameinfo(3)
NI_MAXHOST -> Integer
[permalink][rdoc]getnameinfo(3) で用いるホスト名文字列の最大長さ。
[SEE_ALSO] getnameinfo(3linux)
NI_MAXSERV -> Integer
[permalink][rdoc]getnameinfo(3) で用いるサービス名文字列の最大長さ。
[SEE_ALSO] getnameinfo(3linux)
NI_NAMEREQD -> Integer
[permalink][rdoc]A name is required。名前解決できなかった場合にエラーを返すことを意味します。
Socket.getnameinfo, Addrinfo#getnameinfo の引数 flags に渡す 定数です。
# ここでは 192.0.2.18 は名前解決できないアドレス Addrinfo.tcp("192.0.2.18", 514).getnameinfo() # =>["192.0.2.18", "shell"] Addrinfo.tcp("192.0.2.18", 514).getnameinfo(Socket::NI_NAMEREQD) # SocketError が発生する
[SEE_ALSO] getnameinfo(3)
NI_NOFQDN -> Integer
[permalink][rdoc]An FQDN is not required for local hosts, return only the local part.
Socket.getnameinfo, Addrinfo#getnameinfo の引数 flags に渡す 定数です。
[SEE_ALSO] getnameinfo(3)
NI_NUMERICHOST -> Integer
[permalink][rdoc]Return a numeric address.
Socket.getnameinfo, Addrinfo#getnameinfo の引数 flags に渡す 定数です。
[SEE_ALSO] getnameinfo(3)
NI_NUMERICSERV -> Integer
[permalink][rdoc]Return the service name as a digit string
Socket.getnameinfo, Addrinfo#getnameinfo の引数 flags に渡す 定数です。
[SEE_ALSO] getnameinfo(3)
PF_KEY -> Integer
[permalink][rdoc]Internal key-management function。 Socket.open の第一引数 domain に使用します。
[SEE_ALSO] socket(2freebsd)
PF_MAX -> Integer
[permalink][rdoc]プロトコルファミリーの最大数。
[SEE_ALSO] Socket::Constants::AF_MAX
PF_PIP -> Integer
[permalink][rdoc]Help Identify PIP packets。 Socket.open の第一引数 domain に使用します。
[SEE_ALSO] socket(2freebsd)
PF_RTIP -> Integer
[permalink][rdoc]Help Identify RTIP packets。 Socket.open の第一引数 domain に使用します。
[SEE_ALSO] socket(2freebsd)
PF_UNSPEC -> Integer
[permalink][rdoc]プロトコルファミリー不定。
[SEE_ALSO] Socket::Constants::AF_UNSPEC, Socket.open
PF_XTP -> Integer
[permalink][rdoc][TODO]
eXpress Transfer Protocol。
SHUT_RD -> Integer
[permalink][rdoc]BasicSocket#shutdown の how 引数に使用します。
SHUT_RDWR -> Integer
[permalink][rdoc]BasicSocket#shutdown の how 引数に使用します。
SHUT_WR -> Integer
[permalink][rdoc]BasicSocket#shutdown の how 引数に使用します。
SOCK_DGRAM -> Integer
[permalink][rdoc]データグラム通信。 Socket.open の第二引数 type に使用します。
[SEE_ALSO] socket(2), Socket.open
SOCK_PACKET -> Integer
[permalink][rdoc]デバイスレベルインターフェース。Obsoleteであり使うべきではない。 Socket.open の第二引数 type に使用します。
[SEE_ALSO] packet(7linux), Socket.open
SOCK_RAW -> Integer
[permalink][rdoc]RAW ソケット。 Socket.open の第二引数 type に使用します。
[SEE_ALSO] sys/socket.h(header), socket(2linux), raw(7linux), Socket.open
SOCK_RDM -> Integer
[permalink][rdoc]信頼性のあるデータグラム通信。 Socket.open の第二引数 type に使用します。
[SEE_ALSO] socket(2linux), Socket.open
SOCK_SEQPACKET -> Integer
[permalink][rdoc]固定最大長を持つストリーム通信。 Socket.open の第二引数 type に使用します。
[SEE_ALSO] Socket.open, socket(2), socket(2linux), socket(2freebsd)
SOCK_STREAM -> Integer
[permalink][rdoc]ストリーム通信。 Socket.open の第二引数 type に使用します。
[SEE_ALSO] Socket.open, socket(2), socket(2linux), socket(2freebsd)
SOL_ATALK -> Integer
[permalink][rdoc][TODO]
AppleTalk socket options。 BasicSocket#getsockopt, BasicSocket#setsockopt の第一引数(level)に使用します。
SOL_AX25 -> Integer
[permalink][rdoc][TODO]
AX.25 socket options。 BasicSocket#getsockopt, BasicSocket#setsockopt の第一引数(level)に使用します。
SOL_IP -> Integer
[permalink][rdoc]IP socket options。 BasicSocket#getsockopt, BasicSocket#setsockopt の第一引数(level)に使用します。
SOL_IP はポータブルではありません。 IPPROTO_IP のほうがよりポータブルです。
[SEE_ALSO] getsockopt(2), setsockopt(2), ip(7linux) Socket::Constants::IPPROTO_IP
SOL_IPX -> Integer
[permalink][rdoc][TODO]
IPX socket options。 BasicSocket#getsockopt, BasicSocket#setsockopt の第一引数(level)に使用します。
SOL_SOCKET -> Integer
[permalink][rdoc]Socket level options。 BasicSocket#getsockopt, BasicSocket#setsockopt の第一引数(level)に使用します。
[SEE_ALSO] getsockopt(2), setsockopt(2), sys/socket.h(header), socket(7linux) getsockopt(2freebsd)
SOL_TCP -> Integer
[permalink][rdoc]TCP socket options。 BasicSocket#getsockopt, BasicSocket#setsockopt の第一引数(level)に使用します。
[SEE_ALSO] Socket::Constants::IPPROTO_TCP
SOL_UDP -> Integer
[permalink][rdoc]UDP socket options。 BasicSocket#getsockopt, BasicSocket#setsockopt の第一引数(level)に使用します。
[SEE_ALSO] Socket::Constants::IPPROTO_UDP
SOPRI_BACKGROUND -> Integer
[permalink][rdoc][TODO]
Background socket priority
SOPRI_INTERACTIVE -> Integer
[permalink][rdoc][TODO]
Interactive socket priority
SOPRI_NORMAL -> Integer
[permalink][rdoc]Normal socket priority
[TODO]
SO_ACCEPTCONN -> Integer
[permalink][rdoc]Socket has had listen() called on it。 BasicSocket#getsockopt, BasicSocket#setsockopt の第2引数(optname)に使用します。
[SEE_ALSO] sys/socket.h(header), getsockopt(2freebsd), socket(7linux), Socket::Constants::SOL_SOCKET
SO_ACCEPTFILTER -> Integer
[permalink][rdoc]set accept filter on listening socket。 BasicSocket#getsockopt, BasicSocket#setsockopt の第2引数(optname)に使用します。
[SEE_ALSO] getsockopt(2freebsd), Socket::Constants::SOL_SOCKET
SO_ATTACH_FILTER -> Integer
[permalink][rdoc]Attach socket filter。 BasicSocket#getsockopt, BasicSocket#setsockopt の第2引数(optname)に使用します。
[SEE_ALSO] socket(7linux), http://git.kernel.org/?p=linux/kernel/git/torvalds/linux.git;a=blob;f=Documentation/networking/filter.txt;hb=HEAD, Socket::Constants::SOL_SOCKET
SO_BINDTODEVICE -> Integer
[permalink][rdoc]Bind this socket to a particular device。 BasicSocket#getsockopt, BasicSocket#setsockopt の第2引数(optname)に使用します。
[SEE_ALSO] socket(7linux), Socket::Constants::SOL_SOCKET
SO_BROADCAST -> Integer
[permalink][rdoc]Permit sending of broadcast messages。 BasicSocket#getsockopt, BasicSocket#setsockopt の第2引数(optname)に使用します。
[SEE_ALSO] sys/socket.h(header), getsockopt(2freebsd), socket(7linux), Socket::Constants::SOL_SOCKET
SO_DEBUG -> Integer
[permalink][rdoc]Debug info recording。 BasicSocket#getsockopt, BasicSocket#setsockopt の第2引数(optname)に使用します。
[SEE_ALSO] sys/socket.h(header), getsockopt(2freebsd), socket(7linux), Socket::Constants::SOL_SOCKET
SO_DETACH_FILTER -> Integer
[permalink][rdoc]Detach socket filter。 BasicSocket#getsockopt, BasicSocket#setsockopt の第2引数(optname)に使用します。
[SEE_ALSO] socket(7linux), http://git.kernel.org/?p=linux/kernel/git/torvalds/linux.git;a=blob;f=Documentation/networking/filter.txt;hb=HEAD, Socket::Constants::SOL_SOCKET
SO_DONTROUTE -> Integer
[permalink][rdoc]Send without using the routing tables。 BasicSocket#getsockopt, BasicSocket#setsockopt の第2引数(optname)に使用します。
[SEE_ALSO] sys/socket.h(header), getsockopt(2freebsd), socket(7linux), Socket::Constants::SOL_SOCKET
SO_DONTTRUNC -> Integer
[permalink][rdoc][TODO]
Retain unread data
SO_ERROR -> Integer
[permalink][rdoc]Get socket error status。 BasicSocket#getsockopt, BasicSocket#setsockopt の第2引数(optname)に使用します。
[SEE_ALSO] sys/socket.h(header), getsockopt(2freebsd), socket(7linux), Socket::Constants::SOL_SOCKET
SO_KEEPALIVE -> Integer
[permalink][rdoc]Keep connections alive。 BasicSocket#getsockopt, BasicSocket#setsockopt の第2引数(optname)に使用します。
[SEE_ALSO] sys/socket.h(header), getsockopt(2freebsd), socket(7linux), Socket::Constants::SOL_SOCKET
SO_LINGER -> Integer
[permalink][rdoc]Linger on close if data is present。 BasicSocket#getsockopt, BasicSocket#setsockopt の第2引数(optname)に使用します。
[SEE_ALSO] sys/socket.h(header), getsockopt(2freebsd), socket(7linux),Socket::Constants::SOL_SOCKET
SO_NKE -> Integer
[permalink][rdoc][TODO]
socket-level Network Kernel Extension。
SO_NOSIGPIPE -> Integer
[permalink][rdoc]Don't SIGPIPE on EPIPE。 BasicSocket#getsockopt, BasicSocket#setsockopt の第2引数(optname)に使用します。
[SEE_ALSO] getsockopt(2freebsd), Socket::Constants::SOL_SOCKET
SO_NO_CHECK -> Integer
[permalink][rdoc][TODO]
Disable checksums。
SO_NREAD -> Integer
[permalink][rdoc][TODO]
Get first packet byte count。
SO_OOBINLINE -> Integer
[permalink][rdoc]Leave received out-of-band data in-line。 BasicSocket#getsockopt, BasicSocket#setsockopt の第2引数(optname)に使用します。
[SEE_ALSO] sys/socket.h(header), getsockopt(2freebsd), socket(7linux), Socket::Constants::SOL_SOCKET
SO_PASSCRED -> Integer
[permalink][rdoc]Receive SCM_CREDENTIALS messages。 BasicSocket#getsockopt, BasicSocket#setsockopt の第2引数(optname)に使用します。
[SEE_ALSO] socket(7linux), unix(7linux), Socket::Constants::SOL_SOCKET
SO_PEERCRED -> Integer
[permalink][rdoc]The credentials of the foreign process connected to this socket。 BasicSocket#getsockopt, BasicSocket#setsockopt の第2引数(optname)に使用します。
[SEE_ALSO] socket(7linux), unix(7linux), socketpair(2linux), Socket::Constants::SOL_SOCKET
SO_PEERNAME -> Integer
[permalink][rdoc][TODO]
Name of the connecting user。
SO_PRIORITY -> Integer
[permalink][rdoc]The protocol-defined priority for all packets on this socket。 BasicSocket#getsockopt, BasicSocket#setsockopt の第2引数(optname)に使用します。
[SEE_ALSO] socket(7linux), ip(7linux)
SO_RCVBUF -> Integer
[permalink][rdoc]Receive buffer size。 BasicSocket#getsockopt, BasicSocket#setsockopt の第2引数(optname)に使用します。
[SEE_ALSO] sys/socket.h(header), getsockopt(2freebsd), socket(7linux), Socket::Constants::SOL_SOCKET
SO_RCVLOWAT -> Integer
[permalink][rdoc]Receive low-water mark。 BasicSocket#getsockopt, BasicSocket#setsockopt の第2引数(optname)に使用します。
[SEE_ALSO] sys/socket.h(header), getsockopt(2freebsd), socket(7linux), Socket::Constants::SOL_SOCKET
SO_RCVTIMEO -> Integer
[permalink][rdoc]Receive timeout。 BasicSocket#getsockopt, BasicSocket#setsockopt の第2引数(optname)に使用します。
[SEE_ALSO] sys/socket.h(header), getsockopt(2freebsd), socket(7linux)
SO_REUSEADDR -> Integer
[permalink][rdoc]Allow local address reuse。 BasicSocket#getsockopt, BasicSocket#setsockopt の第2引数(optname)に使用します。
[SEE_ALSO] sys/socket.h(header), getsockopt(2freebsd), socket(7linux), bind(2), Socket::Constants::SOL_SOCKET
SO_REUSEPORT -> Integer
[permalink][rdoc]Allow local address and port reuse。 BasicSocket#getsockopt, BasicSocket#setsockopt の第2引数(optname)に使用します。
[SEE_ALSO] getsockopt(2freebsd), Socket::Constants::SOL_SOCKET
SO_SECURITY_AUTHENTICATION -> Integer
[permalink][rdoc][TODO]
SO_SECURITY_ENCRYPTION_NETWORK -> Integer
[permalink][rdoc][TODO]
SO_SECURITY_ENCRYPTION_TRANSPORT -> Integer
[permalink][rdoc][TODO]
SO_SNDBUF -> Integer
[permalink][rdoc]Send buffer size。 BasicSocket#getsockopt, BasicSocket#setsockopt の第2引数(optname)に使用します。
[SEE_ALSO] sys/socket.h(header), getsockopt(2freebsd), socket(7linux), Socket::Constants::SOL_SOCKET
SO_SNDLOWAT -> Integer
[permalink][rdoc]Receive low-water mark。 BasicSocket#getsockopt, BasicSocket#setsockopt の第2引数(optname)に使用します。
[SEE_ALSO] sys/socket.h(header), getsockopt(2freebsd), socket(7linux), Socket::Constants::SOL_SOCKET
SO_SNDTIMEO -> Integer
[permalink][rdoc]Send timeout。 BasicSocket#getsockopt, BasicSocket#setsockopt の第2引数(optname)に使用します。
[SEE_ALSO] sys/socket.h(header), getsockopt(2freebsd), socket(7linux), Socket::Constants::SOL_SOCKET
SO_TIMESTAMP -> Integer
[permalink][rdoc]Receive timestamp with datagrams (timeval)。 BasicSocket#getsockopt, BasicSocket#setsockopt の第2引数(optname)に使用します。
[SEE_ALSO] getsockopt(2freebsd), socket(7linux), Socket::Constants::SOL_SOCKET Socket::AncillaryData#timestamp
SO_TYPE -> Integer
[permalink][rdoc]Get the socket type。 BasicSocket#getsockopt, BasicSocket#setsockopt の第2引数(optname)に使用します。
[SEE_ALSO] sys/socket.h(header), getsockopt(2freebsd), socket(7linux), Socket::Constants::SOL_SOCKET
SO_USELOOPBACK -> Integer
[permalink][rdoc][TODO]
Bypass hardware when possible。
SO_WANTMORE -> Integer
[permalink][rdoc][TODO]
Give a hint when more data is ready。
SO_WANTOOBFLAG -> Integer
[permalink][rdoc][TODO]
OOB data is wanted in MSG_FLAG on receive。
TCP_MAXSEG -> Integer
[permalink][rdoc]Set maximum segment size。 BasicSocket#getsockopt, BasicSocket#setsockopt の第2引数(optname)に使用します。
[SEE_ALSO] tcp(4freebsd), tcp(7linux)
TCP_NODELAY -> Integer
[permalink][rdoc]Don't delay sending to coalesce packets。 BasicSocket#getsockopt, BasicSocket#setsockopt の第2引数(optname)に使用します。
[SEE_ALSO] tcp(4freebsd), tcp(7linux), netinet/tcp.h(header)