るりまサーチ

最速Rubyリファレンスマニュアル検索!
242件ヒット [1-100件を表示] (0.042秒)
トップページ > クエリ:socket[x] > クエリ:new[x] > クエリ:addr[x]

別のキーワード

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

ライブラリ

クラス

キーワード

検索結果

<< 1 2 3 > >>

Addrinfo.new(sockaddr, family=Socket::PF_UNSPEC, socktype=0, protocol=0) -> Addrinfo (29480.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 で得られるようなものでなければ
なりません。

実際には sockaddr には以下のようなもの...
...AF_INET6", 42304, "ip6-localhost", "::1"]
* ["AF_UNIX", "/tmp/sock"]
* Socket.sockaddr_in("smtp", "2001:DB8::1")
* Socket.sockaddr_in(80, "172.18.22.42")
* Socket.sockaddr_in(80, "www.ruby-lang.org")
* Socket.sockaddr_un("/tmp/sock")

配列で AF_INET/AF_INET6 を指定した場合、配...

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

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

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

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

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

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

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

...

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

require 'socket'

UDPSocket.new # => #<UDPSocket:fd 3>
UDPSocket.new(Socket::AF_INET6) # => #<UDPSocket:fd 4>...
...@param address_family ソケットのアドレスファミリー...

IPSocket#addr -> Array (29131.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...

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

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

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

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

@param family family は自動的に判定されますが、明示的に指定することもできます。

@raise ArgumentError family が Socket::AF_UNSP...
...EC の場合に発生します。

@raise ArgumentError family にサポートされていない address family を指定した場合に発生します。...

絞り込み条件を変える

BasicSocket#remote_address -> Addrinfo (17212.0)

getpeername(2) で得られたリモートアドレス情報を Addrinfo オブジェクトとして返します。

...ドレス情報を
Addr
info オブジェクトとして返します。

返されたオブジェクトの Addrinfo#protocol は 0 を
返すことに注意してください。

require 'socket'

TCPSocket.open("www.ruby-lang.org", 80) {|s|
p s.remote_address #=> #<Addrinfo: 221.186.184.68:8...
...0 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...

Socket#recvfrom(maxlen, flags=0) -> [String, Addrinfo] (17178.0)

ソケットからデータを受け取ります。

...ソケットからデータを受け取ります。

Socket
#recv と同様ですが、返り値として
データ文字列と相手ソケットのアドレスのペアが返されます。

flags には Socket::MSG_* という定数の bitwise OR を渡します。
詳しくは recvfrom(2) を参...
...見てください。
例:

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#connect_nonblock(server_sockaddr) -> 0 (17172.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.tcp_server_loop(host, port) {|sock,addr| ...} -> () (17156.0)

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

...クを呼び出します。

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

ブロックの実行が終わってもソケットは close されません。
アプリケーショ...
...けます。getaddrinfo が 0 個のアドレスを返す場合はエラー
になります。1つ以上を返した場合にそれが用いられます。

# 逐次的な echo サーバ
# 一度に一つのクライアントした取り扱えない
require 'socket'

Socket
.tcp_server_loop(1...
...注意
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 で処...

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

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

...クを呼び出します。

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

ブロックの実行が終わってもソケットは close されません。
アプリケーショ...
...けます。getaddrinfo が 0 個のアドレスを返す場合はエラー
になります。1つ以上を返した場合にそれが用いられます。

# 逐次的な echo サーバ
# 一度に一つのクライアントした取り扱えない
require 'socket'

Socket
.tcp_server_loop(1...
...注意
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 で処...

絞り込み条件を変える

<< 1 2 3 > >>