るりまサーチ

最速Rubyリファレンスマニュアル検索!
44件ヒット [1-44件を表示] (0.180秒)
トップページ > クエリ:i[x] > クエリ:A[x] > クエリ:Unix[x] > クエリ:unix_rights[x]

別のキーワード

  1. socket unix
  2. socket unix_server_socket
  3. socket pf_unix
  4. socket af_unix
  5. socket unix_rights

ライブラリ

クラス

モジュール

キーワード

検索結果

Socket::AncillaryData.unix_rights(*ios) -> Socket::AncillaryData (33448.0)

ios で指定したファイルのファイルデスクリプタを データとして持つ family=AF_UNIX, level=SOL_SOCKET, type=SCM_RIGHTS という Socket::AncillaryData オブジェクトを生成して返します。

...ios で指定したファイルのファイルデスクリプタを
データとして持つ family=AF_UNIX, level=SOL_SOCKET, type=SCM_RIGHTS
という Socket::AncillaryData オブジェクトを生成して返します。

require 'socket'

p Socket::AncillaryData.unix_rights(STDERR)
#=> #<S...
...ocket::AncillaryData: UNIX SOCKET RIGHTS 2>

@param ios IO オブジェクトの配列
@see Socket::AncillaryData#unix_rights,
Socket::Constants::SCM_RIGHTS...

Socket::AncillaryData#unix_rights -> [IO] | nil (33444.0)

Unix domain socket の SCM_RIGHTS 制御メッセージに含まれる ファイルディスクリプタを IO オブジェクトの配列として返します。

...
Unix
domain socket の SCM_RIGHTS 制御メッセージに含まれる
ファイルディスクリプタを IO オブジェクトの配列として返します。

得られる IO オブジェクトか IO か Socket です。

この配列は Socket::AncillaryData が初期化されたときに
...
...ば BasicSocket#recvmsg を :scm_rights => true
オプションを付けて呼びだし、
SCM_RIGHTS な 制御メッセージを受け取ったときに配列が作られます。
適切なオプションを指定しなかった場合は配列は生成されず、
このメソッドは nil を返...
...require 'socket'

# recvmsg needs :scm_rights=>true for unix_rights
s1, s2 = UNIXSocket.pair
p s1 #=> #<UNIXSocket:fd 3>
s1.sendmsg "stdin and a socket", 0, nil, Socket::AncillaryData.unix_rights(STDIN, s1)
_, _, _, ctl = s2.recvmsg(:scm_rights=>t...

Socket::Constants::SCM_RIGHTS -> Integer (9124.0)

Access rights.

...Access rights.

Socket::AncillaryData の type として利用します。

@see Socket::AncillaryData, Socket::AncillaryData#unix_rights
BasicSocket#sendmsg, BasicSocket#recvmsg,
unix
(7linux), unix(4freebsd),
sys/socket.h(header)...

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

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

...クします。ノンブロッキング方式で通信したい
場合は BasicSocket#recvmsg_nonblock を用います。

maxmesglen, maxcontrollen で受け取るメッセージおよび補助データ
(Socket::AncillaryData)の最大長をバイト単位で指定します。
省略した場合は...
...:scm_right => bool
というオプションのみ利用できます。このオプションに
真を渡すと、 SCM_RIGHTS 制御メッセージを受け取ったときに、メッセージに含まれる
I
O オブジェクトを生成します。詳しくは Socket::AncillaryData#unix_rights
...
...itwise OR で表現されています。

残りの要素は補助データ(Socket::AncillaryData オブジェクト)です。

require 'socket'

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