るりまサーチ

最速Rubyリファレンスマニュアル検索!
168件ヒット [101-168件を表示] (0.102秒)
トップページ > 種類:インスタンスメソッド[x] > クエリ:p[x] > クラス:BasicSocket[x]

別のキーワード

  1. openssl p
  2. openssl p=
  3. fileutils mkdir_p
  4. dh p
  5. rsa p

ライブラリ

検索結果

<< < 1 2 >>

BasicSocket#recvmsg_nonblock(maxmesglen=nil, flags=0, maxcontrollen=nil, opts={}) -> [String, Addrinfo, Integer, *Socket::AncillaryData] (102.0)

recvmsg(2) を用いてノンブロッキング方式でメッセージを受け取ります。

...キングの有無以外は BasicSocket#recvmsg と同じです。
詳しくはそちらを参照してください。

@param maxmesglen 受け取るメッセージの最大長
@param flags フラグ
@param maxcontrollen 受け取る補助データの最大長
@param opts ハッシュオプショ...

BasicSocket#recv(maxlen, flags = 0) -> String (20.0)

ソケットからデータを受け取り、文字列として返します。 maxlen は受け取る最大の長さを指定します。 flags については recv(2) を参照してください。flags の デフォルト値は 0 です。flags の指定に必要な定数は Socket クラスで定義されています。(例: Socket::MSG_PEEK)

...G_PEEK)

内部で呼び出す recv(2) が 0 を返した場合、このメソッドは "" を返します。
この意味はソケットによって異なります。
たとえば TCP では EOF を意味しますし、
UDP では空のパケットを読み込んだことを意味します。

@par...
...

@param flags recv(2) を参照してください。

@raise IOError

@raise Errno::EXXX recvfrom(2) がエラーになった場合などに発生します。

例:

require 'socket'

s1, s2 = UNIXSocket.pair
s1.write "a"
s1.close
p
s2.recv(10, Socket::MSG_PEEK) #=> "a"
p
s2.recv(1...
...0) #=> "a"
p
s2.recv(10) #=> ""...

BasicSocket#connect_address -> Addrinfo (14.0)

ローカルマシン内で接続するのに適当なアドレスを Addrinfo オブジェクトで返します。

...トで返します。

BasicSocket
#local_address の返り値
以下の点を除いては同じものを返します。
* IPv4 の不定アドレス(0.0.0.0) は IPv4 のループバックアドレス(127.0.0.1)
に置換される
* IPv6 の不定アドレス(::) は IPv6 のループバッ...
...に置換される

BasicSocket
#local_address が接続先として不適なアドレスを返す場合は
例外 SocketError が発生します。

require 'socket'

Addrinfo.tcp("0.0.0.0", 0).listen {|serv|
p
serv.connect_address #=> #<Addrinfo: 127.0.0.1:53660 TCP>
serv.connect_ad...
...dress.connect {|c|
s, _ = serv.accept
p
[c, s] #=> [#<Socket:fd 4>, #<Socket:fd 6>]
}
}


@raise SocketError アドレスが接続に不適な場合に返します
@see BasicSocket#local_address...

BasicSocket#getsockname -> String (14.0)

ソケットの情報を取得します。sockaddr 構造体をパックした 文字列を返します。getsockname(2) を参照してください。

...t'

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.getsockname).reverse)
s = serv.accept...

BasicSocket#local_address -> Addrinfo (14.0)

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

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

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

絞り込み条件を変える

BasicSocket#remote_address -> Addrinfo (14.0)

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

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

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

require 'socket'

TCPSocket.open("www.ruby-lang.org", 80) {|s|
p
s.re...
...mote_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...
<< < 1 2 >>