種類
- インスタンスメソッド (10)
- 特異メソッド (5)
- クラス (4)
クラス
- BasicSocket (7)
- IPSocket (2)
- TCPServer (3)
- TCPSocket (3)
キーワード
- BasicSocket (1)
- SOCKSSocket (1)
- Socket (1)
- accept (1)
-
accept
_ nonblock (1) - addr (1)
-
do
_ not _ reverse _ lookup (1) -
do
_ not _ reverse _ lookup= (1) -
for
_ fd (1) - gethostbyname (1)
- getpeername (1)
- getsockname (1)
-
local
_ address (1) - new (1)
- open (1)
- peeraddr (1)
-
remote
_ address (1) - sysaccept (1)
検索結果
先頭5件
-
TCPSocket (114025.0)
-
インターネットドメインのストリーム型ソケットのクラスです。
...をそのままサーバに転送するプログラムは以下の
ようになります。
require "socket"
port = if ARGV.size > 0 then ARGV.shift else 4444 end
print port, "\n"
s = TCPSocket.open("localhost", port)
while gets
s.write($_)
print(s.gets)
end
s.close... -
TCPSocket
. new(host , service , local _ host=nil , local _ service=nil) -> TCPSocket (63313.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) -> TCPSocket (63313.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
. gethostbyname(host) -> Array (63025.0) -
ホスト名または IP アドレス (整数または"127.0.0.1" のような文字列)からホストの情報を返します。ホスト情報は、ホ スト名、ホストの別名の配列、ホストのアドレスタイプ、ホストの アドレスを各要素とする配列です。ホストのアドレスは octet decimal の文字列 ("127.0.0.1"のような文字列) や IPv6 アドレス ("::1" のような文字列) です。
...。
@return ホスト名、ホストの別名の配列、ホストのアドレスタイプ、ホストのアドレスを各要素とする配列を返します。
例:
require 'socket'
p TCPSocket.gethostbyname("www.ruby-lang.org")
#=> ["beryllium.ruby-lang.org", [], 2, "210.163.138.100"]... -
TCPServer
# accept -> TCPSocket (376.0) -
クライアントからの接続要求を受け付け、接続した TCPSocket のインスタンスを返します。
...クライアントからの接続要求を受け付け、接続した
TCPSocket のインスタンスを返します。
例:
require 'socket'
TCPServer.open("", 0) {|serv|
c = TCPSocket.new(*serv.addr.values_at(3,1))
s = serv.accept
c.write "foo"
p s.recv(10) #=> "foo"
}... -
TCPServer
# accept _ nonblock -> TCPSocket (310.0) -
ソケットをノンブロッキングモードに設定した後、 accept(2) を呼び出します。
ソケットをノンブロッキングモードに設定した後、
accept(2) を呼び出します。
返り値は TCPServer#accept と同じです。
accept(2) がエラーになった場合、
EAGAIN, EINTR を含め例外 Errno::EXXX が発生します。
@raise Errno::EXXX accept(2) がエラーになった場合に発生します。 -
BasicSocket
. do _ not _ reverse _ lookup=(bool) (61.0) -
BasicSocket#do_not_reverse_lookup の値を変更します。
...icSocket#do_not_reverse_lookup の値を変更します。
@param bool この値が真ならアドレスからホスト名への逆引きを行わなくなります。
例:
require 'socket'
p TCPSocket.new('localhost', 'telnet').addr
TCPSocket.do_not_reverse_lookup = true
p TCPSocket.n... -
SOCKSSocket (55.0)
-
TCPSocket を SOCKS(http://www.sw.nec.co.jp/middle/socks/) 対応したクラスです。
...TCPSocket を SOCKS(http://www.sw.nec.co.jp/middle/socks/) 対応したクラスです。... -
BasicSocket
# do _ not _ reverse _ lookup -> bool (43.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
# remote _ address -> Addrinfo (43.0) -
getpeername(2) で得られたリモートアドレス情報を Addrinfo オブジェクトとして返します。
...返すことに注意してください。
require 'socket'
TCPSocket.open("www.ruby-lang.org", 80) {|s|
p s.remote_address #=> #<Addrinfo: 221.186.184.68:80 TCP>
}
TCPServer.open("127.0.0.1", 1728) {|serv|
c = TCPSocket.new("127.0.0.1", 1728)
s = serv.accept
p s.remote......_address #=> #<Addrinfo: 127.0.0.1:36504 TCP>
}
@see BasicSocket#getpeername... -
BasicSocket
. for _ fd(fd) -> BasicSocket (43.0) -
ファイルディスクリプタ fd に対する新しいソケットを生成します。
...はどのクラスの for_fd を呼びだしたかによって決まります。
require 'socket'
BasicSocket.for_fd(fd) # BasicSocket のインスタンスを返す
TCPSocket.for_fd(fd) # TCPSocket のインスタンスを返す
@param fd ファイルディスクリプタ を指定し... -
BasicSocket (25.0)
-
ソケットを表す抽象クラスです。具体的なソケット操作はサブクラスで 定義されます。
...ソケットを表す抽象クラスです。具体的なソケット操作はサブクラスで
定義されます。
例えばインターネットドメインストリームソケットの場合は
TCPSocket を用います。... -
BasicSocket
# getpeername -> String (25.0) -
接続の相手先のソケットの情報を取得します。sockaddr 構造体をパッ クした文字列を返します。getpeername(2) を参照してください。
...い。
例:
require 'socket'
serv = TCPServer.open("", 0)
c = TCPSocket.open(*Socket.unpack_sockaddr_in(serv.getsockname).reverse)
s = serv.accept
addr = c.getpeername
p addr #=> "\002\000\267\214\177\000\000\001\000\000\000\000\000\000\000\000"
p Socket.unpack_sockaddr_in(addr... -
BasicSocket
# getsockname -> String (25.0) -
ソケットの情報を取得します。sockaddr 構造体をパックした 文字列を返します。getsockname(2) を参照してください。
...ださい。
例:
require 'socket'
serv = TCPServer.open("", 0)
p serv.getsockname #=> "\002\000\236C\000\000\000\000\000\000\000\000\000\000\000\000"
p Socket.unpack_sockaddr_in(serv.getsockname) #=> [40515, "0.0.0.0"]
c = TCPSocket.open(*Socket.unpack_sockaddr_in(serv.getso... -
BasicSocket
# local _ address -> Addrinfo (25.0) -
getsockname(2) で得られたローカルアドレス情報を Addrinfo オブジェクトとして返します。
...してください。
require 'socket'
TCPSocket.open("www.ruby-lang.org", 80) {|s|
p s.local_address #=> #<Addrinfo: 192.168.0.129:36873 TCP>
}
TCPServer.open("127.0.0.1", 1512) {|serv|
p serv.local_address #=> #<Addrinfo: 127.0.0.1:1512 TCP>
}
@see BasicSocket#getsockname... -
IPSocket
# addr -> Array (25.0) -
ソケットの接続情報を表す配列を返します。配列の各要素は第1要 素が文字列 "AF_INET", "AF_INET6" など、第2要素が port 番号、第3要素がホストを表 す文字列、第4要素がホストの IP アドレスを表す文字列 (octet decimal や hexadecimal) です。
...Errno::EXXX getsockname(2) が 0 未満の値を返した場合に発生します。
例:
require 'socket'
serv = TCPServer.new("localhost", 0)
p serv.addr #=> ["AF_INET", 46102, "localhost.localdomain", "127.0.0.1"]
c = TCPSocket.new(*serv.addr.values_at(3,1))
s = serv.accept... -
IPSocket
# peeraddr -> Array (25.0) -
接続相手先ソケットの情報を表す配列を返します。配列の各要素は IPSocket#addr メソッドが返す配列 と同じです。
...表す配列を返します。配列の各要素は
IPSocket#addr メソッドが返す配列
と同じです。
@raise Errno::EXXX getpeername(2) が 0 未満の値を返した場合に発生します。
例:
require 'socket'
TCPSocket.open("localhost", "http") {|s|
p s.peeraddr #=>... -
Socket (25.0)
-
汎用ソケットクラス。
...して
Socket.new がありますが、以下のようなより便利な
メソッドがあります。
* TCP のクライアントソケット Socket.tcp TCPSocket.open
* TCP のサーバソケット Socket.tcp_server_loop,
Socket.tcp_server_sockets, TCPServer.open
* UNIX socket のクラ......イアントソケット Socket.unix UNIXSocket.open
* UNIX socket のサーバソケット Socket.unix_server_loop,
Socket.unix_server_socket, UNIXServer.open
また、クライアントソケットは Addrinfo#connect で、
サーバソケットを Addrinfo#bind や Addrinfo#listen で
作... -
TCPServer
# sysaccept -> Integer (25.0) -
接続したクライアントのソケットをファイル記述子で返すことを除けば TCPServer#accept と同じです。
...接続したクライアントのソケットをファイル記述子で返すことを除けば
TCPServer#accept と同じです。
例:
require 'socket'
TCPServer.open("", 0) {|serv|
c = TCPSocket.new(*serv.addr.values_at(3,1))
p serv.sysaccept #=> 6
}...