るりまサーチ

最速Rubyリファレンスマニュアル検索!
84件ヒット [1-84件を表示] (0.022秒)

別のキーワード

  1. unixsocket open
  2. unixsocket new
  3. socket unixsocket
  4. unixsocket pair

ライブラリ

クラス

キーワード

検索結果

UNIXSocket#addr -> [String, String] (27125.0)

ソケットの接続情報を表す配列を返します。配列の各要素は第1要 素が文字列 "AF_UNIX"、第2要素がパスを表す文字列です。

...す。
例:

require 'socket'

UNIXServer.open("/tmp/s") {|serv|
p serv.addr #=> ["AF_UNIX", "/tmp/s"]
}

UNIXServer.open("/tmp/s") {|serv|
c = UNIXSocket.open("/tmp/s")
p c.peeraddr #=> ["AF_UNIX", "/tmp/s"]
p c.addr #=> ["AF_UNIX", ""]
}

@see UNIXSocket#peeraddr...

UNIXSocket#peeraddr -> [String, String] (15124.0)

接続相手先ソケットの情報を表す配列を返します。配列の各要素は第1要 素が文字列 "AF_UNIX"、第2要素がパスを表す文字列です。

...各要素は第1要
素が文字列 "AF_UNIX"、第2要素がパスを表す文字列です。

例:

require 'socket'

UNIXServer.open("/tmp/s") {|serv|
c = UNIXSocket.open("/tmp/s")
p c.peeraddr #=> ["AF_UNIX", "/tmp/s"]
p c.addr #=> ["AF_UNIX", ""]
}

@see UNIXSocket#addr...

Addrinfo.new(sockaddr, family=Socket::PF_UNSPEC, socktype=0, protocol=0) -> Addrinfo (3218.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 には以下のようなものが...
...T6", 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 を指定した場合、配列の4...

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

recvmsg(2) を用いてメッセージを受け取ります。

...は受け取ったメッセージを表す文字列です。

2番目の要素は connection-less socket の場合には送り元の
アドレスが Addrinfo オブジェクトとして含まれています。
TCP のような connection-oriented socket の場合は
何が含まれているかはプ...
...残りの要素は補助データ(Socket::AncillaryData オブジェクト)です。

require 'socket'

# UnixSocket#recv_io を recvmsg で実装する例
mesg, sender_sockaddr, rflags, *controls = sock.recvmsg(:scm_rights=>true)
controls.each {|ancdata|
if ancdata.cmsg_is?(:SOCKET,...

BasicSocket#sendmsg(mesg, flags=0, dest_sockaddr=nil, *controls) -> Integer (106.0)

sendmsg(2) を用いてメッセージを送ります。

...t#sendmsg_nonblock を用います。

ソケットが connection-less の場合は dest_sockaddr
通信先のアドレスを指定しなければなりません。Socket.sockaddr_in
の返り値や Addrinfo オブジェクトを引数として渡すことができます。

controls には 補...
...ンスや
3要素(cmsg_level, cmsg_type, cmsg_data) の配列を用いることができます。

送ったバイト数を返します。

# UnixSocket#send_io の実装例
# use Socket::AncillaryData.
require 'socket'

ancdata = Socket::AncillaryData.int(:UNIX, :SOCKET, :RIGHTS, io.fileno)...
...o].pack("i!")]
sock.sendmsg("\0", 0, nil, ancdata)


@param mesg メッセージ文字列
@param flags フラグ(Socket::MSG_* という定数の bitwise OR を取ったもの)
@param dest_sockaddr 通信先のアドレス
@param controls 補助データの配列
@see BasicSocket#sendmsg_nonblock...

絞り込み条件を変える

ruby 1.6 feature (36.0)

ruby 1.6 feature ruby version 1.6 は安定版です。この版での変更はバグ修正がメイン になります。

...: can't dump anonymous class #<Class 0lx401ab980> (ArgumentError)
from -:1
ruby 1.6.5 (2001-10-05) [i586-linux]

: UNIXSocket#addr

UNIXSocket
#addr がゴミを返していました(BSD の場合?)。
((<ruby-bugs-ja:PR#85>))

# server
require 'socket'...
...k("/tmp/sss")
sock = UNIXServer.new("/tmp/sss").accept

# client
require 'socket'
sock = UNIXSocket.new("/tmp/sss").addr

=> ["AF_UNIX", "\031((\306\031(\010"]

=> ["AF_UNIX", ""]

: ???
((<ruby-talk:21722>))

class Ptr...
...r 例外を起こすようになりました

ENV['HOME'] = nil
ENV['LOGDIR'] = nil
Dir.chdir
=> -:3:in `chdir': Bad address (Errno::EFAULT)
from -:3
ruby 1.6.4 (2001-08-26) [i586-linux]
=> -:3:in `chdir': HOME/LOGDIR not set (Argume...

socket (12.0)

socket はプロセス外部との通信 (プロセス間通信、ホスト間通信) を実現します。

...ルを指すパス名です。

ソケットアドレスを取り扱うための便利で高水準なクラスとして Addrinfo があります。

IPSocket および UNIXSocket 以下のクラス階層では、
わざわざソケットアドレスという形式にまとめなくてもよいよう...
...によるIPアドレス(文字列) (例: "127.0.0.1")
* 空文字列 (""), 文字列 "<any>" - INADDR_ANYに相当
* 文字列 "::" - IN6ADDR_ANY_INIT に相当
* 文字列 "<broadcast>" - INADDR_BROADCASTに相当
* IPアドレスを表す 32bit の整数 (例: 0x7f000001)

====[a:service_f...
...とは、C 言語の構造体 struct sockaddr_in (IPv4)
や struct sockaddr_un (Unix ドメイン)を指します。
Socket クラスなどソケットの低レベルインタフェースで利用されます。

Socket.pack_sockaddr_in,
Socket.unpack_sockaddr_in といったメソッドにより、...