るりまサーチ (Ruby 3.4)

最速Rubyリファレンスマニュアル検索!
91件ヒット [1-91件を表示] (0.036秒)
トップページ > バージョン:3.4[x] > クエリ:socket[x] > 種類:特異メソッド[x]

別のキーワード

  1. socket new
  2. socket open
  3. socket tcp_server_sockets
  4. socket udp_server_sockets
  5. socket listen

検索結果

Socket.unix_server_socket(path) -> Socket (69793.0)

Unix サーバソケットを生成します。

Unix サーバソケットを生成します。

ブロックが省略されたときは、生成されたソケットが返されます。

ブロックが渡されたときは、生成されたソケットを
引数としてブロックを呼び出します。メソッドの返り値は
ブロックの評価値となります。また、ブロックの終了後に
ソケットを IO#close します。

require 'socket'

socket = Socket.unix_server_socket("/tmp/s")
p socket #=> #<Socket:fd 3>
p socket.local_address #=> #<...

Socket.tcp_server_sockets(host, port) -> [Socket] (69772.0)

TCP/IP で host:port で待ち受けるサーバ側のソケットを 作成します。

TCP/IP で host:port で待ち受けるサーバ側のソケットを
作成します。

ブロックなしの場合は、ソケットオブジェクトの配列を返します。

ブロック付きの場合は、ソケットオブジェクトをそのブロックに
渡して呼び出します。ブロック終了時にそれらのソケットを閉じます。
返り値はブロックの評価値となります。

port が 0 の場合は、実際のポート番号は動的に選ばれます。
ただし返り値のソケットはすべて同じ番号を持ちます。

require 'socket'

# tcp_server_sockets returns は2つのソケットを返す
sockets = Socke...

Socket.tcp_server_sockets(host, port) {|sockets| ...} -> object (69772.0)

TCP/IP で host:port で待ち受けるサーバ側のソケットを 作成します。

TCP/IP で host:port で待ち受けるサーバ側のソケットを
作成します。

ブロックなしの場合は、ソケットオブジェクトの配列を返します。

ブロック付きの場合は、ソケットオブジェクトをそのブロックに
渡して呼び出します。ブロック終了時にそれらのソケットを閉じます。
返り値はブロックの評価値となります。

port が 0 の場合は、実際のポート番号は動的に選ばれます。
ただし返り値のソケットはすべて同じ番号を持ちます。

require 'socket'

# tcp_server_sockets returns は2つのソケットを返す
sockets = Socke...

Socket.tcp_server_sockets(port) -> [Socket] (69772.0)

TCP/IP で host:port で待ち受けるサーバ側のソケットを 作成します。

TCP/IP で host:port で待ち受けるサーバ側のソケットを
作成します。

ブロックなしの場合は、ソケットオブジェクトの配列を返します。

ブロック付きの場合は、ソケットオブジェクトをそのブロックに
渡して呼び出します。ブロック終了時にそれらのソケットを閉じます。
返り値はブロックの評価値となります。

port が 0 の場合は、実際のポート番号は動的に選ばれます。
ただし返り値のソケットはすべて同じ番号を持ちます。

require 'socket'

# tcp_server_sockets returns は2つのソケットを返す
sockets = Socke...

Socket.tcp_server_sockets(port) {|sockets| ...} -> object (69772.0)

TCP/IP で host:port で待ち受けるサーバ側のソケットを 作成します。

TCP/IP で host:port で待ち受けるサーバ側のソケットを
作成します。

ブロックなしの場合は、ソケットオブジェクトの配列を返します。

ブロック付きの場合は、ソケットオブジェクトをそのブロックに
渡して呼び出します。ブロック終了時にそれらのソケットを閉じます。
返り値はブロックの評価値となります。

port が 0 の場合は、実際のポート番号は動的に選ばれます。
ただし返り値のソケットはすべて同じ番号を持ちます。

require 'socket'

# tcp_server_sockets returns は2つのソケットを返す
sockets = Socke...

絞り込み条件を変える

Socket.udp_server_sockets(host, port) -> [Sockets] (69658.0)

UDP で host:port を待ち受けるサーバ側のソケットを作成します。

UDP で host:port を待ち受けるサーバ側のソケットを作成します。

ブロックなしの場合は、ソケットオブジェクトの配列を返します。

ブロック付きの場合は、ソケットオブジェクトをそのブロックに
渡して呼び出します。ブロック終了時にそれらのソケットを閉じます。

port が 0 の場合は、実際のポート番号は動的に選ばれます。
ただし返り値のソケットはすべて同じ番号を持ちます。

# UDP/IP echo server
require 'socket'

Socket.udp_server_sockets(0) {|sockets|
p sockets.firs...

Socket.udp_server_sockets(host, port) {|sockets| ... } -> object (69658.0)

UDP で host:port を待ち受けるサーバ側のソケットを作成します。

UDP で host:port を待ち受けるサーバ側のソケットを作成します。

ブロックなしの場合は、ソケットオブジェクトの配列を返します。

ブロック付きの場合は、ソケットオブジェクトをそのブロックに
渡して呼び出します。ブロック終了時にそれらのソケットを閉じます。

port が 0 の場合は、実際のポート番号は動的に選ばれます。
ただし返り値のソケットはすべて同じ番号を持ちます。

# UDP/IP echo server
require 'socket'

Socket.udp_server_sockets(0) {|sockets|
p sockets.firs...

Socket.udp_server_sockets(port) -> [Sockets] (69658.0)

UDP で host:port を待ち受けるサーバ側のソケットを作成します。

UDP で host:port を待ち受けるサーバ側のソケットを作成します。

ブロックなしの場合は、ソケットオブジェクトの配列を返します。

ブロック付きの場合は、ソケットオブジェクトをそのブロックに
渡して呼び出します。ブロック終了時にそれらのソケットを閉じます。

port が 0 の場合は、実際のポート番号は動的に選ばれます。
ただし返り値のソケットはすべて同じ番号を持ちます。

# UDP/IP echo server
require 'socket'

Socket.udp_server_sockets(0) {|sockets|
p sockets.firs...

Socket.udp_server_sockets(port) {|sockets| ... } -> object (69658.0)

UDP で host:port を待ち受けるサーバ側のソケットを作成します。

UDP で host:port を待ち受けるサーバ側のソケットを作成します。

ブロックなしの場合は、ソケットオブジェクトの配列を返します。

ブロック付きの場合は、ソケットオブジェクトをそのブロックに
渡して呼び出します。ブロック終了時にそれらのソケットを閉じます。

port が 0 の場合は、実際のポート番号は動的に選ばれます。
ただし返り値のソケットはすべて同じ番号を持ちます。

# UDP/IP echo server
require 'socket'

Socket.udp_server_sockets(0) {|sockets|
p sockets.firs...

Socket.unix_server_socket(path) {|sock| ... } -> object (69493.0)

Unix サーバソケットを生成します。

Unix サーバソケットを生成します。

ブロックが省略されたときは、生成されたソケットが返されます。

ブロックが渡されたときは、生成されたソケットを
引数としてブロックを呼び出します。メソッドの返り値は
ブロックの評価値となります。また、ブロックの終了後に
ソケットを IO#close します。

require 'socket'

socket = Socket.unix_server_socket("/tmp/s")
p socket #=> #<Socket:fd 3>
p socket.local_address #=> #<...

絞り込み条件を変える

Socket.socketpair(domain, type, protocol=0) -> Array (60424.0)

相互に結合されたソケットのペアを含む2要素の配列を返します。 引数の指定は Socket.open と同じです。

相互に結合されたソケットのペアを含む2要素の配列を返します。
引数の指定は Socket.open と同じです。

@param domain Socket.open を参照してください。

@param type Socket.open を参照してください。

@param protocol Socket.open を参照してください。

@see Socket.open

Socket.getifaddrs -> [Socket::Ifaddr] (51787.0)

インターフェイスのアドレスを Socket::Ifaddr の配列で返します。

インターフェイスのアドレスを Socket::Ifaddr の配列で返します。

本メソッドはマルチキャスト通信が可能なインターフェイスを見つけるために使う事ができます。

require 'socket'

pp Socket.getifaddrs.reject {|ifaddr|
!ifaddr.addr.ip? || (ifaddr.flags & Socket::IFF_MULTICAST == 0)
}.map {|ifaddr| [ifaddr.name, ifaddr.ifindex, ifaddr.addr] }
#=> [["eth0", 2, #<...

Socket.new(domain, type, protocol=0) -> Socket (51532.0)

新しいソケットを生成します。domain、type、 protocol はインクルードファイルにある定数で指定しま す。ほとんどの定数は Socket::AF_INET のように Socket クラスの定数として定義されています。domain とtype に関しては、"AF_INET", "SOCK_STREAM" のように文字列でも指定できますが、文 字列ですべての機能を指定できる保証はありません。

新しいソケットを生成します。domain、type、
protocol はインクルードファイルにある定数で指定しま
す。ほとんどの定数は Socket::AF_INET のように
Socket クラスの定数として定義されています。domain
とtype に関しては、"AF_INET",
"SOCK_STREAM" のように文字列でも指定できますが、文
字列ですべての機能を指定できる保証はありません。

例えば、IPv4 の TCP ソケットは以下のように生成されます。

require 'socket'

s = Socket.new(Socket::AF_INET, Socket...

Socket.open(domain, type, protocol=0) -> Socket (51532.0)

新しいソケットを生成します。domain、type、 protocol はインクルードファイルにある定数で指定しま す。ほとんどの定数は Socket::AF_INET のように Socket クラスの定数として定義されています。domain とtype に関しては、"AF_INET", "SOCK_STREAM" のように文字列でも指定できますが、文 字列ですべての機能を指定できる保証はありません。

新しいソケットを生成します。domain、type、
protocol はインクルードファイルにある定数で指定しま
す。ほとんどの定数は Socket::AF_INET のように
Socket クラスの定数として定義されています。domain
とtype に関しては、"AF_INET",
"SOCK_STREAM" のように文字列でも指定できますが、文
字列ですべての機能を指定できる保証はありません。

例えば、IPv4 の TCP ソケットは以下のように生成されます。

require 'socket'

s = Socket.new(Socket::AF_INET, Socket...

Socket.gethostbyaddr(host, type = Socket::AF_INET) -> Array (51421.0)

sockaddr 構造体をパックした文字列からホスト情報を返します。 ホスト情報の構造は Socket.gethostbyname と同じです。 type には、アドレスタイプ(デフォルトは Socket::AF_INET)を指定します。

sockaddr 構造体をパックした文字列からホスト情報を返します。
ホスト情報の構造は Socket.gethostbyname と同じです。
type には、アドレスタイプ(デフォルトは
Socket::AF_INET)を指定します。

@param host ホストを文字列で指定します。

@param type アドレスタイプ(デフォルトはSocket::AF_INET)を指定します。

@raise SocketError gethostbyaddr(3) の呼び出しにエラーがあった場合に発生します。

絞り込み条件を変える

Socket.udp_server_loop_on(sockets) {|msg, msg_src| ... } -> () (51376.0)

sockets (UDP のソケット)に対し、通信を待ち受けます。

sockets (UDP のソケット)に対し、通信を待ち受けます。

Socket.udp_server_sockets の返り値がこれの引数に適切です。

ソケットからメッセージを受け取るたびにブロックを呼び出します。
ブロックに渡される引数は msg と msg_src の 2 つで、
msg は受け取ったメッセージ文字列で、 msg_src は
通信相手の Socket::UDPSource オブジェクトです。

無限ループ構造になっています。

@param sockets 通信を待ち受けるソケットの配列
@see Socket.udp_server_recv, Socket.ud...

Socket.unix_server_loop(path) {|socket, client_addrinfo| ... } -> () (51361.0)

Unix サーバソケットを生成し、 新しい接続を受け入れるごとにブロックを呼び出します。

Unix サーバソケットを生成し、
新しい接続を受け入れるごとにブロックを呼び出します。

ブロックには新しい接続を表すソケットオブジェクトと、
クライアントアドレスを表す Addrinfo オブジェクトが渡されます。

ブロックの実行が終わってもソケットは close されません。
アプリケーション側が明示的に close する必要があります。

path という名前のファイルが既に存在するときは、
そのファイルのオーナである場合は先にそのファイルを削除してしまいます。
これは path が悪意あるユーザによって変更されない場合に限りは安全です。
つまり、 /tmp/malicious-us...

Socket.accept_loop(sockets) {|sock, client_addrinfo| ...} -> () (51358.0)

sockets でサーバソケットを受け取り、接続を待ち受け、 クライアントとの接続が確立するたびにブロックにその接続 ソケットを渡し呼び出します。

sockets でサーバソケットを受け取り、接続を待ち受け、
クライアントとの接続が確立するたびにブロックにその接続
ソケットを渡し呼び出します。

ブロックの引数はクライアントと接続したソケットオブジェクトと
Addrinfo オブジェクトです。

Socket.tcp_server_loop と同様、ブロックは
逐次的に呼び出されます。つまりブロックか終了するまで
次の接続は accept されません。
並列に通信したい場合は
スレッドのような並列実行機構を使う必要があります。

@param sockets 待ち受けたいサーバソケットの配列

@see Socket.tcp_server...

Socket.udp_server_recv(sockets) {|msg, msg_src| ... } -> () (51358.0)

socketsで与えられた各 UDP ソケットからデータを読み取ります。

socketsで与えられた各 UDP ソケットからデータを読み取ります。

各ソケットからメッセージを読み取るごとにブロックを呼び出します。
ブロックに渡される引数は msg と msg_src の 2 つで、
msg は受け取ったメッセージ文字列で、 msg_src は
通信相手の Socket::UDPSource オブジェクトです。

Socket.udp_server_loop はこのメソッドの用いて以下のようにして
実装できます。

require 'socket'

udp_server_sockets(host, port) {|sockets|
loop {
...

Socket.getaddrinfo(nodename, servname, family=nil, socktype=nil, protocol=nil, flags=nil) -> Array (51346.0)

2553で定義された getaddrinfo() の機能を提供するクラスメソッド。この関数は gethostbyname() や getservbyname() の代わりとして用意されており、 IP のバージョンに依存しないプログラムを書くための標準的な API です。

2553で定義された
getaddrinfo() の機能を提供するクラスメソッド。この関数は
gethostbyname() や getservbyname() の代わりとして用意されており、
IP のバージョンに依存しないプログラムを書くための標準的な API です。

@param nodename ホスト名を指定します。 必須引数です。 (lib:socket#host_formatを参照)

@param servname サービス名を指定します。 必須引数です。 (lib:socket#service_formatを参照)

@param family アドレスファミリー。Sock...

絞り込み条件を変える

Socket.tcp(host, port, local_host=nil, local_port=nil, connect_timeout: nil) -> Socket (51346.0)

TCP/IP で host:port に接続するソケットオブジェクトを作成します。

TCP/IP で host:port に接続するソケットオブジェクトを作成します。

local_host や local_port を指定した場合、ソケットをそこにバインドします。

ブロックを渡すと、生成したソケットをそのブロックに渡し呼び出します。
ブロック終了時にソケットオブジェクトを閉じます。

@param host 接続先のホスト名
@param port 接続先のポート番号
@param local_host 接続元のホスト名
@param local_port 接続元のポート番号
@param connect_timeout タイムアウトまでの秒数
@return ブロック付...

Socket.tcp(host, port, local_host=nil, local_port=nil, connect_timeout: nil) {|socket| ... } -> object (51346.0)

TCP/IP で host:port に接続するソケットオブジェクトを作成します。

TCP/IP で host:port に接続するソケットオブジェクトを作成します。

local_host や local_port を指定した場合、ソケットをそこにバインドします。

ブロックを渡すと、生成したソケットをそのブロックに渡し呼び出します。
ブロック終了時にソケットオブジェクトを閉じます。

@param host 接続先のホスト名
@param port 接続先のポート番号
@param local_host 接続元のホスト名
@param local_port 接続元のポート番号
@param connect_timeout タイムアウトまでの秒数
@return ブロック付...

Socket.unix(path) -> Socket (51343.0)

Unix クライアントソケットを生成します。

Unix クライアントソケットを生成します。

ブロックが省略されたときは、生成されたソケットが返されます。

ブロックが渡されたときは、生成されたソケットを
引数としてブロックを呼び出します。メソッドの返り値は
ブロックの評価値となります。また、ブロックの終了後に
ソケットを IO#close します。

require 'socket'

# /tmp/sock と通信する
Socket.unix("/tmp/sock") {|sock|
t = Thread.new { IO.copy_stream(sock, STDOUT) }
IO.copy_stream...

Socket.getnameinfo(sa, flags = 0) -> Array (51274.0)

2553 で定義された getnameinfo() の機能を提供するク ラスメソッド。 gethostbyaddr() や getservbyport() の代 わりとして用意されています。IPのバージョンに依存しないプログラムを 書くための標準的なAPIです。

2553 で定義された getnameinfo() の機能を提供するク
ラスメソッド。 gethostbyaddr() や getservbyport() の代
わりとして用意されています。IPのバージョンに依存しないプログラムを
書くための標準的なAPIです。

@param sa 文字列か配列を与えます。

@param flags 省略可能な第2引数 flags には getnameinfo(3) の第7番目の引数に指定する flags に相当する Fixnum を与えます。

@return 配列を返し、その要素はアドレスとポートを表す文字列です。

@raise SocketErr...

Socket.unpack_sockaddr_in(sockaddr) -> Array (51160.0)

lib:socket#pack_stringを unpack したアドレスを返します。返される値は [port, ipaddr] の配列です。

lib:socket#pack_stringを
unpack したアドレスを返します。返される値は [port, ipaddr]
の配列です。

@param sockaddr ソケットアドレス構造体を pack した文字列lib:socket#pack_stringを指定します。

例:

require 'socket'
p Socket.unpack_sockaddr_in(Socket.sockaddr_in("echo", "localhost"))
=> [7, "127.0.0.1"]
p Socket.unpack_sockaddr_in(Socket.soc...

絞り込み条件を変える

Socket.tcp_server_loop(host, port) {|sock,addr| ...} -> () (51148.0)

TCP/IP で host:port で待ち受けるサーバ側のソケットを作成し、 新しい接続を受け入れるごとにブロックを呼び出します。

TCP/IP で host:port で待ち受けるサーバ側のソケットを作成し、
新しい接続を受け入れるごとにブロックを呼び出します。

ブロックには新しい接続を表すソケットオブジェクトと、
クライアントアドレスを表す Addrinfo オブジェクトが渡されます。

ブロックの実行が終わってもソケットは close されません。
アプリケーション側が明示的に close する必要があります。

このメソッドはブロックを逐次的に呼び出します。
つまりブロックからリターンするまで次のコネクションを受け入れません。
そのため、同時に複数のクライアントと通信したい場合は
スレッドのような並列機構を使う必...

Socket.tcp_server_loop(port) {|sock,addr| ...} -> () (51148.0)

TCP/IP で host:port で待ち受けるサーバ側のソケットを作成し、 新しい接続を受け入れるごとにブロックを呼び出します。

TCP/IP で host:port で待ち受けるサーバ側のソケットを作成し、
新しい接続を受け入れるごとにブロックを呼び出します。

ブロックには新しい接続を表すソケットオブジェクトと、
クライアントアドレスを表す Addrinfo オブジェクトが渡されます。

ブロックの実行が終わってもソケットは close されません。
アプリケーション側が明示的に close する必要があります。

このメソッドはブロックを逐次的に呼び出します。
つまりブロックからリターンするまで次のコネクションを受け入れません。
そのため、同時に複数のクライアントと通信したい場合は
スレッドのような並列機構を使う必...

Socket.gethostbyname(host) -> Array (51142.0)

ホスト名または IP アドレス(指定方法に関しては lib:socket#host_formatを参照) からホストの情報を返します。

ホスト名または IP アドレス(指定方法に関しては
lib:socket#host_formatを参照)
からホストの情報を返します。

@param host 文字列でホストを指定します。

@return ホスト情報を含んだ4要素の配列を返します。

=== 返り値のホスト情報について
ホスト情報は以下の 4 要素の配列で表現されています。

* ホスト名
* ホストの別名の配列
* ホストのアドレスタイプ (整数定数)
* ホストのアドレス

第四要素のホストのアドレスは、各アドレスタイプに対応する
C のアドレス構造体を pack した文字列として表現されています。
...

Socket.pair(domain, type, protocol=0) -> Array (51124.0)

相互に結合されたソケットのペアを含む2要素の配列を返します。 引数の指定は Socket.open と同じです。

相互に結合されたソケットのペアを含む2要素の配列を返します。
引数の指定は Socket.open と同じです。

@param domain Socket.open を参照してください。

@param type Socket.open を参照してください。

@param protocol Socket.open を参照してください。

@see Socket.open

Socket.unpack_sockaddr_un(sockaddr) -> String (51124.0)

lib:socket#pack_stringを unpack したソケットパス名を返します。

lib:socket#pack_stringを
unpack したソケットパス名を返します。

@param sockaddr ソケットアドレス構造体を pack した文字列lib:socket#pack_stringを指定します。

例:

require 'socket'
p Socket.unpack_sockaddr_un(Socket.sockaddr_un("/tmp/.X11-unix/X0"))
=> "/tmp/.X11-unix/X0"

絞り込み条件を変える

Socket.pack_sockaddr_in(port, host) -> String (51106.0)

指定したアドレスをlib:socket#pack_string で返します。port は、ポート番号を表す Fixnum あるいは、ポート 番号、サービス名を表す文字列です。

指定したアドレスをlib:socket#pack_string
で返します。port は、ポート番号を表す Fixnum あるいは、ポート
番号、サービス名を表す文字列です。

@param port ポート番号を表す Fixnum あるいは、ポート番号、サービス名を表す文字列を指定します。

@param host ホストを文字列で指定します。

@return 指定したアドレスを返します。

例:

require 'socket'
p Socket.sockaddr_in("echo", "localhost")
=> "\002\000\000\a\177\000\00...

Socket.sockaddr_in(port, host) -> String (51106.0)

指定したアドレスをlib:socket#pack_string で返します。port は、ポート番号を表す Fixnum あるいは、ポート 番号、サービス名を表す文字列です。

指定したアドレスをlib:socket#pack_string
で返します。port は、ポート番号を表す Fixnum あるいは、ポート
番号、サービス名を表す文字列です。

@param port ポート番号を表す Fixnum あるいは、ポート番号、サービス名を表す文字列を指定します。

@param host ホストを文字列で指定します。

@return 指定したアドレスを返します。

例:

require 'socket'
p Socket.sockaddr_in("echo", "localhost")
=> "\002\000\000\a\177\000\00...

Socket.pack_sockaddr_un(path) -> String (51088.0)

指定したアドレスをlib:socket#pack_string で返します。

指定したアドレスをlib:socket#pack_string
で返します。

@param path パスを文字列で指定します。

例:

require 'socket'
p Socket.sockaddr_un("/tmp/.X11-unix/X0")
=> "\001\000/tmp/.X11-unix/X0\000...."

Socket.sockaddr_un(path) -> String (51088.0)

指定したアドレスをlib:socket#pack_string で返します。

指定したアドレスをlib:socket#pack_string
で返します。

@param path パスを文字列で指定します。

例:

require 'socket'
p Socket.sockaddr_un("/tmp/.X11-unix/X0")
=> "\001\000/tmp/.X11-unix/X0\000...."

Socket.getservbyport(port, protocol_name="tcp") -> String (51076.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.gethostname -> String (51058.0)

システムの標準のホスト名を取得します。

システムの標準のホスト名を取得します。

ホストの別名やアドレスなど他の情報を得るには
Socket.getaddrinfo を使ってください。
ただし、これは不可能な場合もあります。

例:

require 'socket'

p Socket.gethostname #=> "helium.ruby-lang.org"

Socket.udp_server_loop(host, port) {|msg, msg_src| ... } -> () (51058.0)

UDP のサーバを起動して、メッセージが来るごとに ブロックを呼び出します。

UDP のサーバを起動して、メッセージが来るごとに
ブロックを呼び出します。

ブロックに渡される引数は msg と 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| ... } -> () (51058.0)

UDP のサーバを起動して、メッセージが来るごとに ブロックを呼び出します。

UDP のサーバを起動して、メッセージが来るごとに
ブロックを呼び出します。

ブロックに渡される引数は msg と msg_src の 2 つで、
msg は受け取ったメッセージ文字列で、 msg_src は
通信相手の Socket::UDPSource オブジェクトです。

@param host 割り当てるホスト名
@param port 割り当てるポート番号
@see Socket.udp_server_sockets, Socket.udp_server_loop_on

Socket.unix(path) {|sock| ... } -> object (51043.0)

Unix クライアントソケットを生成します。

Unix クライアントソケットを生成します。

ブロックが省略されたときは、生成されたソケットが返されます。

ブロックが渡されたときは、生成されたソケットを
引数としてブロックを呼び出します。メソッドの返り値は
ブロックの評価値となります。また、ブロックの終了後に
ソケットを IO#close します。

require 'socket'

# /tmp/sock と通信する
Socket.unix("/tmp/sock") {|sock|
t = Thread.new { IO.copy_stream(sock, STDOUT) }
IO.copy_stream...

Socket.getservbyname(service, proto = "tcp") -> Integer (51004.0)

service, protoに対応するポート番号を返 します。protoの省略値は"tcp"です。

service, protoに対応するポート番号を返
します。protoの省略値は"tcp"です。

@param service サービス名を文字列で指定します。例えば、"ftp", "telnet" が相当します。
@param proto プロトコル名を文字列で指定します。省略値は"tcp" です。

@return ポート番号を整数で返します。

絞り込み条件を変える

Socket.ip_address_list -> [Addrinfo] (51004.0)

ローカルの IP アドレスを配列で返します。

ローカルの IP アドレスを配列で返します。

UNIXSocket.socketpair(type=Socket::SOCK_STREAM, protocol=0) -> [UNIXSocket, UNIXSocket] (43282.0)

相互に結合された UNIX ソケットのペアを含む2要素の配列を返します。

相互に結合された UNIX ソケットのペアを含む2要素の配列を返します。

type にはソケットタイプを指定します。
Socket::SOCK_STREAM, Socket::SOCK_DGRAM, Socket::SOCK_RAW などの
整数、:STREAM, :DGRAM, :RAW などのシンボル、
"STREAM" などの文字列が渡せます。

protocol には プロトコルを指定します。0 は Unix domain でのデフォルト値が
使われます。

require 'socket'

s1, s2 = UNIXSocket.pair
s1.send "a", ...

UNIXSocket.pair(type=Socket::SOCK_STREAM, protocol=0) -> [UNIXSocket, UNIXSocket] (33982.0)

相互に結合された UNIX ソケットのペアを含む2要素の配列を返します。

相互に結合された UNIX ソケットのペアを含む2要素の配列を返します。

type にはソケットタイプを指定します。
Socket::SOCK_STREAM, Socket::SOCK_DGRAM, Socket::SOCK_RAW などの
整数、:STREAM, :DGRAM, :RAW などのシンボル、
"STREAM" などの文字列が渡せます。

protocol には プロトコルを指定します。0 は Unix domain でのデフォルト値が
使われます。

require 'socket'

s1, s2 = UNIXSocket.pair
s1.send "a", ...

Socket::AncillaryData.new(family, cmsg_level, cmsg_type, cmsg_data) -> Socket::AncillaryData (33715.0)

新たな Socket::AncillaryData オブジェクトを生成します。

新たな 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...

UDPSocket.new(address_family=Socket::AF_INET) -> UDPSocket (33664.0)

新しい UDP ソケットを返します。

新しい UDP ソケットを返します。

address_family には Socket::AF_INET のような整数、:INET のような
シンボル、"INET" のような文字列を指定することができます。

require 'socket'

UDPSocket.new # => #<UDPSocket:fd 3>
UDPSocket.new(Socket::AF_INET6) # => #<UDPSocket:fd 4>

@param address_family ソケットのアドレスファミリー

絞り込み条件を変える

UDPSocket.open(address_family=Socket::AF_INET) -> UDPSocket (33664.0)

新しい UDP ソケットを返します。

新しい UDP ソケットを返します。

address_family には Socket::AF_INET のような整数、:INET のような
シンボル、"INET" のような文字列を指定することができます。

require 'socket'

UDPSocket.new # => #<UDPSocket:fd 3>
UDPSocket.new(Socket::AF_INET6) # => #<UDPSocket:fd 4>

@param address_family ソケットのアドレスファミリー

Socket::Option.bool(family, level, optname, boolean) -> Socket::Option (33625.0)

整数をデータとして持つ Socket::Option オブジェクト新たに生成し返します。

整数をデータとして持つ Socket::Option オブジェクト新たに生成し返します。

family, level, optname には Socket::SOL_SOCKET のような整数の他、
文字列("SOL_SOCKET", "SOCKET")、シンボル(:SOL_SOCKET, :SOCKET)を
指定することができます。

@param family ソケットファミリー
@param level ソケットオプションレベル
@param optname オプションの名前
@param boolean データ(真偽値)

require 'socket'

p Socke...

Socket::Option.new(family, level, optname, data) -> Socket::Option (33607.0)

Socket::Option オブジェクト新たに生成し返します。

Socket::Option オブジェクト新たに生成し返します。

family, level, optname には Socket::SOL_SOCKET のような整数の他、
文字列("SOL_SOCKET", "SOCKET")、シンボル(:SOL_SOCKET, :SOCKET)を
指定することができます。

@param family ソケットファミリー
@param level ソケットオプションレベル
@param optname オプションの名前
@param data データ(文字列)

@see Socket::Option.int, Socket::Option.bool...

Socket::AncillaryData.unix_rights(*ios) -> Socket::AncillaryData (33511.0)

ios で指定したファイルのファイルデスクリプタを データとして持つ family=AF_UNIX, level=SOL_SOCKET, type=SCM_RIGHTS という Socket::AncillaryData オブジェクトを生成して返します。

ios で指定したファイルのファイルデスクリプタを
データとして持つ family=AF_UNIX, 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::AncillaryData#...

Socket::AncillaryData.int(family, cmsg_level, cmsg_type, integer) -> Socket::AncillaryData (33463.0)

データとして整数を保持する Socket::AncillaryData オブジェクトを生成します。

データとして整数を保持する
Socket::AncillaryData オブジェクトを生成します。

整数データのサイズおよびエンディアンは実行するホストによって異なります。

require 'socket'

p Socket::AncillaryData.int(:UNIX, :SOCKET, :RIGHTS, STDERR.fileno)
#=> #<Socket::AncillaryData: UNIX SOCKET RIGHTS 2>

@param family ソケットファミリー
@param cmsg_level プロトコル
@param cmsg_type 補...

絞り込み条件を変える

Socket::Option.int(family, level, optname, integer) -> Socket::Option (33463.0)

整数をデータとして持つ Socket::Option オブジェクト新たに生成し返します。

整数をデータとして持つ Socket::Option オブジェクト新たに生成し返します。

family, level, optname には Socket::SOL_SOCKET のような整数の他、
文字列("SOL_SOCKET", "SOCKET")、シンボル(:SOL_SOCKET, :SOCKET)を
指定することができます。

@param family ソケットファミリー
@param level ソケットオプションレベル
@param optname オプションの名前
@param integer データ(整数)

Socket::Option.linger(onoff, secs) -> Socket::Option (33403.0)

SOL_SOCKET/SO_LINGER 用の Socket::Option オブジェクト を新たに生成し返します。

SOL_SOCKET/SO_LINGER 用の Socket::Option オブジェクト
を新たに生成し返します。

@param onoff 0/1もしくは真偽値
@param secs 整数値

Socket::AncillaryData.ip_pktinfo(addr, ifindex, spec_dst=addr) -> Socket::AncillaryData (33397.0)

type が IP_PKTINFO である AncillaryData を生成します。

type が IP_PKTINFO である AncillaryData を生成します。

IP_PKTINFO は非標準的拡張であり、システムによっては使えない場合があります。

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 PK...

Socket::AncillaryData.ipv6_pktinfo(addr, ifindex) -> Socket::AncillaryData (33397.0)

type が IPV6_PKTINFO である AncillaryData を生成します。

type が IPV6_PKTINFO である AncillaryData を生成します。

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)
@pa...

Socket::UDPSource.new(remote_addr, local_addr) {|msg| ... } -> Socket::UDPSource (33373.0)

Socket::UDPSource オブジェクトを生成します。

Socket::UDPSource オブジェクトを生成します。

このメソッドはユーザは直接使いません。Socket.udp_server_loop が
内部で用います。

@param remote_addr リモートのアドレス(Addrinfo オブジェクト)
@param local_addr ローカルのアドレス(Addrinfo オブジェクト)

絞り込み条件を変える

BasicSocket.for_fd(fd) -> BasicSocket (33322.0)

ファイルディスクリプタ fd に対する新しいソケットを生成します。

ファイルディスクリプタ fd に対する新しいソケットを生成します。

返り値のクラスはどのクラスの for_fd を呼びだしたかによって決まります。
require 'socket'

BasicSocket.for_fd(fd) # BasicSocket のインスタンスを返す
TCPSocket.for_fd(fd) # TCPSocket のインスタンスを返す

@param fd ファイルディスクリプタ を指定します。

@return 任意のソケットである fd から対応するソケットクラスのインスタンスを作り、それを返します。

UNIXSocket.new(path) -> UNIXSocket (33322.0)

path で指定したパス名を用いてソケットを接続します。

path で指定したパス名を用いてソケットを接続します。

ブロックを省略すると接続したソケットを返します。

ブロックを渡した場合は、接続したソケットを引数としてそのブロックを呼びだし、
ブロック終了時にソケットを閉じます。この場合には
ブロックの評価値を返り値として返します。

@param path 接続先のパス名文字列

require 'socket'

s = UNIXSocket.new("/tmp/sock")
s.send("hello", 0)

UNIXSocket.open(path) -> UNIXSocket (33322.0)

path で指定したパス名を用いてソケットを接続します。

path で指定したパス名を用いてソケットを接続します。

ブロックを省略すると接続したソケットを返します。

ブロックを渡した場合は、接続したソケットを引数としてそのブロックを呼びだし、
ブロック終了時にソケットを閉じます。この場合には
ブロックの評価値を返り値として返します。

@param path 接続先のパス名文字列

require 'socket'

s = UNIXSocket.new("/tmp/sock")
s.send("hello", 0)

SOCKSSocket.new(host, service) -> SOCKSSocket (33304.0)

host で指定したホストの service で指定したポートと接続したソケッ トを返します。host はホスト名、またはインターネットアドレスを 示す文字列、service は /etc/services (または NIS) に登録されている サービス名かポート番号です。

host で指定したホストの service で指定したポートと接続したソケッ
トを返します。host はホスト名、またはインターネットアドレスを
示す文字列、service は /etc/services (または NIS) に登録されている
サービス名かポート番号です。

@param host ホスト名、またはインターネットアドレスを示す文字列を指定します。
@param service /etc/services (または NIS) に登録されているサービス名かポート番号です。

SOCKSSocket.open(host, service) -> SOCKSSocket (33304.0)

host で指定したホストの service で指定したポートと接続したソケッ トを返します。host はホスト名、またはインターネットアドレスを 示す文字列、service は /etc/services (または NIS) に登録されている サービス名かポート番号です。

host で指定したホストの service で指定したポートと接続したソケッ
トを返します。host はホスト名、またはインターネットアドレスを
示す文字列、service は /etc/services (または NIS) に登録されている
サービス名かポート番号です。

@param host ホスト名、またはインターネットアドレスを示す文字列を指定します。
@param service /etc/services (または NIS) に登録されているサービス名かポート番号です。

絞り込み条件を変える

TCPSocket.new(host, service, local_host=nil, local_service=nil, connect_timeout: nil) -> TCPSocket (33304.0)

host で指定したホストの service で指定したポートと接続したソケッ トを返します。host はホスト名、またはインターネットアドレスを 示す文字列、service は /etc/services (または NIS) に登録されている サービス名かポート番号です。

host で指定したホストの service で指定したポートと接続したソケッ
トを返します。host はホスト名、またはインターネットアドレスを
示す文字列、service は /etc/services (または NIS) に登録されている
サービス名かポート番号です。

引数 local_host, local_service を指定した場合、そのアドレス
に対して bind(2) します。

@param host ホスト名、またはインターネットアドレスを示す文字列を指定します。
@param service /etc/services (または N...

TCPSocket.open(host, service, local_host=nil, local_service=nil, connect_timeout: nil) -> TCPSocket (33304.0)

host で指定したホストの service で指定したポートと接続したソケッ トを返します。host はホスト名、またはインターネットアドレスを 示す文字列、service は /etc/services (または NIS) に登録されている サービス名かポート番号です。

host で指定したホストの service で指定したポートと接続したソケッ
トを返します。host はホスト名、またはインターネットアドレスを
示す文字列、service は /etc/services (または NIS) に登録されている
サービス名かポート番号です。

引数 local_host, local_service を指定した場合、そのアドレス
に対して bind(2) します。

@param host ホスト名、またはインターネットアドレスを示す文字列を指定します。
@param service /etc/services (または N...

BasicSocket.do_not_reverse_lookup -> bool (33100.0)

Socket#do_not_reverse_lookup の Socket オブジェクト生成時の デフォルト値を返します。

Socket#do_not_reverse_lookup の Socket オブジェクト生成時の
デフォルト値を返します。

この設定は大域的に作用します。

デフォルトは true です。

BasicSocket.do_not_reverse_lookup=(bool) (33022.0)

BasicSocket#do_not_reverse_lookup の値を変更します。

BasicSocket#do_not_reverse_lookup の値を変更します。

@param bool この値が真ならアドレスからホスト名への逆引きを行わなくなります。

例:

require 'socket'

p TCPSocket.new('localhost', 'telnet').addr
TCPSocket.do_not_reverse_lookup = true
p TCPSocket.new('localhost', 'telnet').addr

=> ["AF_INET", 2253, "localhost", "127.0.0.1...

IPSocket.getaddress(host) -> String (33022.0)

ホスト名からホストのアドレスを返します。ホストのアドレスは文 字列は octet decimal の文字列 (例: 127.0.0.1) です。

ホスト名からホストのアドレスを返します。ホストのアドレスは文
字列は octet decimal の文字列 (例: 127.0.0.1) です。

@param host ホスト名を文字列で指定します。

例:

require 'socket'

p IPSocket.getaddress("www.ruby-lang.org") #=> "210.163.138.100"

絞り込み条件を変える

TCPSocket.gethostbyname(host) -> Array (33022.0)

ホスト名または IP アドレス (整数または"127.0.0.1" のような文字列)からホストの情報を返します。ホスト情報は、ホ スト名、ホストの別名の配列、ホストのアドレスタイプ、ホストの アドレスを各要素とする配列です。ホストのアドレスは octet decimal の文字列 ("127.0.0.1"のような文字列) や IPv6 アドレス ("::1" のような文字列) です。

ホスト名または IP アドレス (整数または"127.0.0.1"
のような文字列)からホストの情報を返します。ホスト情報は、ホ
スト名、ホストの別名の配列、ホストのアドレスタイプ、ホストの
アドレスを各要素とする配列です。ホストのアドレスは octet
decimal の文字列 ("127.0.0.1"のような文字列) や IPv6
アドレス ("::1" のような文字列) です。

@param host ホスト名または IP アドレス (整数または"127.0.0.1" のような文字列)を指定します。

@return ホスト名、ホストの別名の配列、ホストのアドレスタイプ、ホストのアド...

UNIXSocket.new(path) {|sock| ...} -> object (33022.0)

path で指定したパス名を用いてソケットを接続します。

path で指定したパス名を用いてソケットを接続します。

ブロックを省略すると接続したソケットを返します。

ブロックを渡した場合は、接続したソケットを引数としてそのブロックを呼びだし、
ブロック終了時にソケットを閉じます。この場合には
ブロックの評価値を返り値として返します。

@param path 接続先のパス名文字列

require 'socket'

s = UNIXSocket.new("/tmp/sock")
s.send("hello", 0)

UNIXSocket.open(path) {|sock| ...} -> object (33022.0)

path で指定したパス名を用いてソケットを接続します。

path で指定したパス名を用いてソケットを接続します。

ブロックを省略すると接続したソケットを返します。

ブロックを渡した場合は、接続したソケットを引数としてそのブロックを呼びだし、
ブロック終了時にソケットを閉じます。この場合には
ブロックの評価値を返り値として返します。

@param path 接続先のパス名文字列

require 'socket'

s = UNIXSocket.new("/tmp/sock")
s.send("hello", 0)

Addrinfo.new(sockaddr, family=Socket::PF_UNSPEC, socktype=0, protocol=0) -> Addrinfo (24505.0)

新たな Addrinfo オブジェクトを返します。

新たな Addrinfo オブジェクトを返します。

sockaddr は connect(2) などで使われるパラメータで、
struct sockaddr に対応します。faimily, socktype, protocol
は socket(2) のパラメータに対応します。

sockaddr には文字列もしくは配列を指定します。
配列の場合は IPSocket#addr や UNIXSocket#addr の
値と互換でなければなりません。
文字列の場合は Socket.sockaddr_in や
Socket.unpack_sockaddr_un で得られるようなものでなければ
な...

Addrinfo.unix(path, socktype=Socket::SOCK_STREAM) -> Addrinfo (24325.0)

Unix ソケットアドレスに対応する Addrinfo オブジェクトを返します。

Unix ソケットアドレスに対応する Addrinfo オブジェクトを返します。

socktype でソケットタイプを指定します。

require 'socket'

Addrinfo.unix("/tmp/sock") #=> #<Addrinfo: /tmp/sock SOCK_STREAM>
Addrinfo.unix("/tmp/sock", :DGRAM) #=> #<Addrinfo: /tmp/sock SOCK_DGRAM>

@param path Unix ソケットのアドレス文字列
@param socktype ソケットタイプ(整数、文字...

絞り込み条件を変える

Addrinfo.getaddrinfo(nodename, service, family=nil, socktype=nil, protocol=nil, flags=0) -> [Addrinfo] (24058.0)

パラメータから複数の Addrinfo オブジェクトを生成し、その配列を返します。

パラメータから複数の Addrinfo オブジェクトを生成し、その配列を返します。

nodename (ホスト名) と service (ポート番号) を Addrinfo に変換します。
変換先は一意ではないため、複数のオブジェクトを返します。

nodename と service のどちらか一方は nil を渡すことができます
(その部分は変換されません)。

family, socktype, protocol には希望する方式のヒントを与えます。
例えば、SOCK_STREAM なソケットが必要な場合には socktype に指定します。
nil を指定した場合には制限しないことを...

TCPServer.new(host=nil, service) -> TCPServer (24040.0)

新しいサーバー接続をオープンします。service は /etc/services (または NIS) に登録されているサービ ス名かポート番号で指定します。host を指定した時は 指定したホストに対しての接続だけを受け付けます。

新しいサーバー接続をオープンします。service は
/etc/services (または NIS) に登録されているサービ
ス名かポート番号で指定します。host を指定した時は
指定したホストに対しての接続だけを受け付けます。

省略時は全てのホストへの接続要求を受け付けることになります。
new, open は内部では getaddrinfo(3) を呼び出しており、
複数のアドレス構造体が検出された場合、
最初に見つかったものを返します。
実行環境によっては IPv4, IPv6 のどちらか専用の接続になる場合がありますが、
その場合、host を省略せず明示的に指定することで、接...

TCPServer.open(host=nil, service) -> TCPServer (24040.0)

新しいサーバー接続をオープンします。service は /etc/services (または NIS) に登録されているサービ ス名かポート番号で指定します。host を指定した時は 指定したホストに対しての接続だけを受け付けます。

新しいサーバー接続をオープンします。service は
/etc/services (または NIS) に登録されているサービ
ス名かポート番号で指定します。host を指定した時は
指定したホストに対しての接続だけを受け付けます。

省略時は全てのホストへの接続要求を受け付けることになります。
new, open は内部では getaddrinfo(3) を呼び出しており、
複数のアドレス構造体が検出された場合、
最初に見つかったものを返します。
実行環境によっては IPv4, IPv6 のどちらか専用の接続になる場合がありますが、
その場合、host を省略せず明示的に指定することで、接...

Addrinfo.ip(host) -> Addrinfo (24022.0)

IP アドレスに対する Addrinfo オブジェクトを返します。

IP アドレスに対する Addrinfo オブジェクトを返します。

port, socktype, protocol は 0 で初期化されます。
つまりこの返り値はソケットを生成するには不適です。

require 'socket'

Addrinfo.ip("localhost") #=> #<Addrinfo: 127.0.0.1 (localhost)>

@param host ホスト(IP アドレスもしくはホスト名)
@see Addrinfo.new

Addrinfo.tcp(host, port) -> Addrinfo (24022.0)

TCP アドレスに対する Addrinfo オブジェクトを返します。

TCP アドレスに対する Addrinfo オブジェクトを返します。

require 'socket'

Addrinfo.tcp("localhost", "smtp")
#=> #<Addrinfo: 127.0.0.1:25 TCP (localhost:smtp)>

@param host ホスト(IP アドレスもしくはホスト名)
@param port ポート番号(整数)もしくはサービス名(文字列)

絞り込み条件を変える

Addrinfo.udp(host, port) -> Addrinfo (24022.0)

UDP アドレスに対する Addrinfo オブジェクトを返します。

UDP アドレスに対する Addrinfo オブジェクトを返します。

require 'socket'

Addrinfo.udp("localhost", "daytime")
#=> #<Addrinfo: 127.0.0.1:13 UDP (localhost:daytime)>

@param host ホスト(IP アドレスもしくはホスト名)
@param port ポート番号(整数)もしくはサービス名(文字列)

UNIXServer.new(path) -> UNIXServer (24022.0)

path で指定したパス名を用いて接続を受け付けるソケット を作成します。

path で指定したパス名を用いて接続を受け付けるソケット
を作成します。

ブロックを省略すると作成したサーバソケットを返します。

ブロックを渡した場合は、作成したソケットを引数としてそのブロックを呼びだし、
ブロック終了時にソケットを閉じます。この場合には
ブロックの評価値を返り値として返します。

@param path 接続を受け付けるパス名文字列

require 'socket'

serv = UNIXServer.new("/tmp/sock")
s = serv.accept
p s.read

UNIXServer.new(path) {|sock| ...} -> object (24022.0)

path で指定したパス名を用いて接続を受け付けるソケット を作成します。

path で指定したパス名を用いて接続を受け付けるソケット
を作成します。

ブロックを省略すると作成したサーバソケットを返します。

ブロックを渡した場合は、作成したソケットを引数としてそのブロックを呼びだし、
ブロック終了時にソケットを閉じます。この場合には
ブロックの評価値を返り値として返します。

@param path 接続を受け付けるパス名文字列

require 'socket'

serv = UNIXServer.new("/tmp/sock")
s = serv.accept
p s.read

UNIXServer.open(path) -> UNIXServer (24022.0)

path で指定したパス名を用いて接続を受け付けるソケット を作成します。

path で指定したパス名を用いて接続を受け付けるソケット
を作成します。

ブロックを省略すると作成したサーバソケットを返します。

ブロックを渡した場合は、作成したソケットを引数としてそのブロックを呼びだし、
ブロック終了時にソケットを閉じます。この場合には
ブロックの評価値を返り値として返します。

@param path 接続を受け付けるパス名文字列

require 'socket'

serv = UNIXServer.new("/tmp/sock")
s = serv.accept
p s.read

UNIXServer.open(path) {|sock| ...} -> object (24022.0)

path で指定したパス名を用いて接続を受け付けるソケット を作成します。

path で指定したパス名を用いて接続を受け付けるソケット
を作成します。

ブロックを省略すると作成したサーバソケットを返します。

ブロックを渡した場合は、作成したソケットを引数としてそのブロックを呼びだし、
ブロック終了時にソケットを閉じます。この場合には
ブロックの評価値を返り値として返します。

@param path 接続を受け付けるパス名文字列

require 'socket'

serv = UNIXServer.new("/tmp/sock")
s = serv.accept
p s.read

絞り込み条件を変える

Addrinfo.foreach(nodename, service, family=nil, socktype=nil, protocol=nil, flags=0) -> Enumerator (24004.0)

Addrinfo.getaddrinfo で得られる配列の各要素を繰り返します。

Addrinfo.getaddrinfo で得られる配列の各要素を繰り返します。

ブロックを省略した場合は Enumerator を返します。

@param nodename ノード名文字列(ホスト名もしくは IP アドレス)
@param service サービス名(文字列もしくはポート番号の整数)
@param family プロトコルファミリー(整数、文字列、シンボル、もしくは nil)
@param socktype ソケットタイプ(整数、文字列、シンボル、もしくは nil)
@param protocol プロトコル(整数、もしくは nil)
@param flags フラグ(...

Addrinfo.foreach(nodename, service, family=nil, socktype=nil, protocol=nil, flags=0) {|addrinfo| ... } -> [Addrinfo] (24004.0)

Addrinfo.getaddrinfo で得られる配列の各要素を繰り返します。

Addrinfo.getaddrinfo で得られる配列の各要素を繰り返します。

ブロックを省略した場合は Enumerator を返します。

@param nodename ノード名文字列(ホスト名もしくは IP アドレス)
@param service サービス名(文字列もしくはポート番号の整数)
@param family プロトコルファミリー(整数、文字列、シンボル、もしくは nil)
@param socktype ソケットタイプ(整数、文字列、シンボル、もしくは nil)
@param protocol プロトコル(整数、もしくは nil)
@param flags フラグ(...

File.socket?(path) -> bool (18355.0)

FileTest.#socket? と同じです。

FileTest.#socket? と同じです。

@param path パスを表す文字列か IO オブジェクトを指定します。

Net::POP3.socket_type -> Class (18307.0)

このメソッドは obsolete です。 使わないでください。

このメソッドは obsolete です。
使わないでください。

OpenSSL::SSL::SSLSocket.new(socket) -> OpenSSL::SSL::SSLSocket (9694.0)

socket をラップして SSLSocket オブジェクトを生成します。

socket をラップして SSLSocket オブジェクトを生成します。


socket には ラップする TCPSocket オブジェクトを与え、
context には SSL の設定情報を所持している
OpenSSL::SSL::SSLContext オブジェクトを与えます。

context を省略した場合は OpenSSL::SSL::SSLContext.new で
新たにコンテキストを生成してそれを用います。

@param socket ラップするソケット
@param context SSL の設定情報を持つ SSL コンテキストオブジェクト
@raise OpenSSL:...

絞り込み条件を変える

OpenSSL::SSL::SSLSocket.new(socket, context) -> OpenSSL::SSL::SSLSocket (9694.0)

socket をラップして SSLSocket オブジェクトを生成します。

socket をラップして SSLSocket オブジェクトを生成します。


socket には ラップする TCPSocket オブジェクトを与え、
context には SSL の設定情報を所持している
OpenSSL::SSL::SSLContext オブジェクトを与えます。

context を省略した場合は OpenSSL::SSL::SSLContext.new で
新たにコンテキストを生成してそれを用います。

@param socket ラップするソケット
@param context SSL の設定情報を持つ SSL コンテキストオブジェクト
@raise OpenSSL:...

SOCKSSocket.new(host, serv) -> SOCKSSocket (9304.0)

SOCKSSocket.newのパラメータ host の名前解決に resolv ライブラリを使います。

SOCKSSocket.newのパラメータ host の名前解決に resolv
ライブラリを使います。

@param host ホスト名を文字列で指定します。
@param serv ホスト名を文字列で指定します。
@raise SocketError 名前解決に失敗した場合に発生します。

TCPSocket.new(host, serv, local_host=nil, local_service=nil) -> TCPSocket (9304.0)

TCPSocket.new のパラメータ host と local_host の名前解決に resolv ライブラリを使います。

TCPSocket.new のパラメータ host と local_host
の名前解決に resolv ライブラリを使います。

@param host ホスト名、またはインターネットアドレスを示す文字列を指定します。
@param service /etc/services (または NIS) に登録されているサービス名かポート番号を指定します。
@param local_host ホスト名、またはインターネットアドレスを示す文字列を指定します。
@param local_service /etc/services (または NIS) に登録さ...

TCPSocket.open(host, serv, local_host=nil, local_service=nil) -> TCPSocket (9304.0)

TCPSocket.new のパラメータ host と local_host の名前解決に resolv ライブラリを使います。

TCPSocket.new のパラメータ host と local_host
の名前解決に resolv ライブラリを使います。

@param host ホスト名、またはインターネットアドレスを示す文字列を指定します。
@param service /etc/services (または NIS) に登録されているサービス名かポート番号を指定します。
@param local_host ホスト名、またはインターネットアドレスを示す文字列を指定します。
@param local_service /etc/services (または NIS) に登録さ...

IPAddr.new(addr = &#39;::&#39;, family = Socket::AF_UNSPEC) -> IPAddr (325.0)

新しい IPAddr オブジェクトを生成します。

新しい IPAddr オブジェクトを生成します。

@param addr 0 から IPAddr::IN6MASK までの数値を受け取ります。
また、'address', 'address/prefixlen', 'address/mask' の形式も受け付けます。
プリフィックス長やマスクが指定されると、
マスクされた IPAddr オブジェクトを返します。
IPv6 アドレスの場合は、[ ] で囲まれていてもかまいません。

@param family family は自動的に判定されます...

絞り込み条件を変える

File.ftype(filename) -> String (40.0)

ファイルのタイプを表す文字列を返します。

ファイルのタイプを表す文字列を返します。

文字列は以下のうちのいずれかです。File.lstat(filename).ftype と同じです。
シンボリックリンクに対して "link" を返します。

* "file"
* "directory"
* "characterSpecial"
* "blockSpecial"
* "fifo"
* "link"
* "socket"
* "unknown"

@param filename ファイル名を表す文字列を指定します。

@raise Errno::EXXX 情報の取得に失敗した場合に発生します。

//emlist[...