るりまサーチ

最速Rubyリファレンスマニュアル検索!
36件ヒット [1-36件を表示] (0.021秒)
トップページ > クラス:BasicSocket[x] > クエリ:Socket::Option[x]

別のキーワード

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

ライブラリ

キーワード

検索結果

BasicSocket#getsockopt(level, optname) -> Socket::Option (136.0)

ソケットのオプションを取得します。getsockopt(2) を参照してください。 取得したオプションのデータを Socket::Option で返します。

...ソケットのオプションを取得します。getsockopt(2)
を参照してください。
取得したオプションのデータを Socket::Option で返します。

level, optname には Socket::SOL_SOCKET や Socket::SO_REUSEADDR
といった整数値の他、文字列("SOL_SOCKET", pref...
...@see BasicSocket#setsockopt

例:

require 'socket'

serv = Socket.tcp_server_sockets("", 0)[0]
c = serv.local_address.connect
s = serv.accept
opt = c.getsockopt(Socket::IPPROTO_TCP, Socket::TCP_NODELAY)
# c.getsockopt("TCP", "NODELAY"), なども可能
p opt #=> #<Socket::Option: IN...
...ET TCP NODELAY 0>
p opt.bool #=> false (Nagle アルゴリズム有効)
p opt.unpack("i")[0] #=> 0 (Socket::Option#unpack が互換性のために存在する)
# 整数値の場合は Socket::Option#int を用いる
p c.getsockopt(:IP, :TTL).int #=> 64...

BasicSocket#setsockopt(level, optname, optval) -> 0 (25.0)

ソケットのオプションを設定します。setsockopt(2) を参照してください。

...場合は Socket::Option で設定値を表現します。

require 'socket'

# 真偽値の場合
#setsockopt could be called like this:
sock.setsockopt(:SOCKET, :REUSEADDR, true)
sock.setsockopt(Socket::SOL_SOCKET,Socket::SO_REUSEADDR, true)
sock.setsockopt(Socket::Option.bool(:INET,...
...kopt could be called like this:
sock.setsockopt(:IP, :TTL, 255)
sock.setsockopt(Socket::IPPROTO_IP, Socket::IP_TTL, 255)
sock.setsockopt(Socket::Option.int(:INET, :IP, :TTL, 255))

# より複雑な場合
optval = IPAddr.new("224.0.0.251").hton +
IPAddr.new(Socket::INADDR_ANY, S...
...い。
@param optname setsockopt(2) の option_name を参照してください。
@param optval 設定値
@param socketoption 設定値を表す Socket::Option オブジェクト

@raise Errno::EXXX オプションの設定に失敗した場合発生します。
@see BasicSocket#getsockopt...

BasicSocket#setsockopt(socketoption) -> 0 (25.0)

ソケットのオプションを設定します。setsockopt(2) を参照してください。

...場合は Socket::Option で設定値を表現します。

require 'socket'

# 真偽値の場合
#setsockopt could be called like this:
sock.setsockopt(:SOCKET, :REUSEADDR, true)
sock.setsockopt(Socket::SOL_SOCKET,Socket::SO_REUSEADDR, true)
sock.setsockopt(Socket::Option.bool(:INET,...
...kopt could be called like this:
sock.setsockopt(:IP, :TTL, 255)
sock.setsockopt(Socket::IPPROTO_IP, Socket::IP_TTL, 255)
sock.setsockopt(Socket::Option.int(:INET, :IP, :TTL, 255))

# より複雑な場合
optval = IPAddr.new("224.0.0.251").hton +
IPAddr.new(Socket::INADDR_ANY, S...
...い。
@param optname setsockopt(2) の option_name を参照してください。
@param optval 設定値
@param socketoption 設定値を表す Socket::Option オブジェクト

@raise Errno::EXXX オプションの設定に失敗した場合発生します。
@see BasicSocket#getsockopt...