ライブラリ
- ビルトイン (3)
-
cgi
/ core (1) -
drb
/ acl (2) - etc (1)
- fiddle (5)
-
fiddle
/ import (1) - ipaddr (39)
-
net
/ http (9) -
net
/ imap (11) -
net
/ pop (9) -
net
/ smtp (12) - openssl (2)
- resolv (38)
- resolv-replace (1)
-
rubygems
/ security (1) -
rubygems
/ server (1) - socket (145)
- un (1)
- uri (2)
-
webrick
/ httprequest (2) -
webrick
/ server (1) -
webrick
/ utils (1)
クラス
- ACL (1)
- Addrinfo (54)
- BasicSocket (10)
-
Fiddle
:: CStruct (1) -
Fiddle
:: Pointer (1) -
Gem
:: Server (1) - IPAddr (38)
- IPSocket (4)
-
Net
:: HTTP (9) -
Net
:: IMAP :: Address (4) -
Net
:: IMAP :: Envelope (6) -
Net
:: POP3 (9) -
Net
:: SMTP (12) - Resolv (13)
-
Resolv
:: DNS (6) -
Resolv
:: DNS :: Resource :: IN :: A (2) -
Resolv
:: DNS :: Resource :: IN :: AAAA (2) -
Resolv
:: DNS :: Resource :: IN :: WKS (2) -
Resolv
:: Hosts (6) -
Resolv
:: IPv4 (4) -
Resolv
:: IPv6 (3) - Socket (34)
-
Socket
:: AncillaryData (6) -
Socket
:: Ifaddr (8) -
Socket
:: UDPSource (3) - TCPServer (2)
- UDPSocket (5)
- UNIXSocket (2)
-
URI
:: MailTo (2) -
WEBrick
:: GenericServer (1) -
WEBrick
:: HTTPRequest (2)
モジュール
-
CGI
:: QueryExtension (1) - Etc (1)
- Fiddle (4)
-
Gem
:: Security (1) - Kernel (1)
-
OpenSSL
:: SSL :: SocketForwarder (2) -
Socket
:: Constants (15) -
WEBrick
:: Utils (1)
キーワード
- & (1)
- << (1)
- <=> (1)
- == (1)
- === (1)
- >> (1)
- ACL (1)
-
AI
_ ADDRCONFIG (2) - APOP (1)
- Address (1)
- AddressRegex (1)
- Addrinfo (1)
- EADDRINUSE (1)
- EADDRNOTAVAIL (1)
-
EAI
_ ADDRFAMILY (2) - EDESTADDRREQ (1)
-
IFF
_ LIVE _ ADDR _ CHANGE (2) - IN4MASK (1)
- IN6FORMAT (1)
- IN6MASK (1)
-
INADDR
_ ALLHOSTS _ GROUP (2) -
INADDR
_ ANY (2) -
INADDR
_ BROADCAST (2) -
INADDR
_ LOOPBACK (2) -
INADDR
_ MAX _ LOCAL _ GROUP (2) -
INADDR
_ NONE (2) -
INADDR
_ UNSPEC _ GROUP (2) -
INET6
_ ADDRSTRLEN (2) -
INET
_ ADDRSTRLEN (2) - IPAddr (1)
-
IP
_ RECVDSTADDR (2) -
IP
_ SENDSRCADDR (2) - Ifaddr (1)
-
Init
_ stack (1) - Proxy (1)
-
SC
_ THREAD _ ATTR _ STACKADDR (1) -
SO
_ REUSEADDR (2) - TCPServer (1)
- accept (1)
-
accept
_ loop (1) - address (8)
- afamily (1)
-
allow
_ addr? (1) -
auth
_ only (1) - bcc (1)
- bind (3)
- broadaddr (1)
- build (2)
-
build
_ self _ signed _ cert (1) - canonname (1)
- cc (1)
- cgi (1)
- connect (3)
-
connect
_ address (1) -
connect
_ from (2) -
connect
_ nonblock (1) -
connect
_ to (2) - create (2)
-
create
_ listeners (1) -
delete
_ all (2) - dlunwrap (1)
- dlwrap (1)
-
do
_ not _ reverse _ lookup= (1) - dstaddr (1)
-
each
_ address (4) -
each
_ name (4) - eql? (1)
- family (1)
-
family
_ addrinfo (2) - flags (1)
- foreach (3)
- free (1)
- from (1)
- getaddress (5)
- getaddresses (4)
- getaddrinfo (2)
- gethostbyaddr (1)
- getifaddrs (1)
- getname (4)
- getnameinfo (1)
- getnames (4)
- getpeername (1)
- hash (1)
- host (1)
- hton (1)
- httpd (1)
- ifindex (1)
- include? (1)
- inspect (2)
-
inspect
_ sockaddr (1) - ip (1)
-
ip6
_ arpa (1) -
ip6
_ int (1) - ip? (1)
-
ip
_ address (1) -
ip
_ address _ list (1) -
ip
_ pktinfo (2) -
ip
_ port (1) -
ip
_ unpack (1) - ipaddr (1)
- ipv4? (2)
-
ipv4
_ compat (1) -
ipv4
_ compat? (1) -
ipv4
_ loopback? (1) -
ipv4
_ mapped (1) -
ipv4
_ mapped? (1) -
ipv4
_ multicast? (1) -
ipv4
_ private? (1) - ipv6? (2)
-
ipv6
_ linklocal? (1) -
ipv6
_ loopback? (1) -
ipv6
_ mc _ global? (1) -
ipv6
_ mc _ linklocal? (1) -
ipv6
_ mc _ nodelocal? (1) -
ipv6
_ mc _ orglocal? (1) -
ipv6
_ mc _ sitelocal? (1) -
ipv6
_ multicast? (1) -
ipv6
_ pktinfo (2) -
ipv6
_ pktinfo _ addr (1) -
ipv6
_ pktinfo _ ifindex (1) -
ipv6
_ sitelocal? (1) -
ipv6
_ to _ ipv4 (1) -
ipv6
_ unique _ local? (1) -
ipv6
_ unspecified? (1) -
ipv6
_ v4compat? (1) -
ipv6
_ v4mapped? (1) - listen (3)
-
local
_ address (2) - mailbox (1)
- mailfrom (1)
- mask (1)
- mask! (1)
- name (2)
- native (1)
-
net
/ http (1) - netmask (1)
- new (15)
-
new
_ ntoh (1) - ntop (1)
- open (1)
-
pack
_ sockaddr _ in (1) -
pack
_ sockaddr _ un (1) - peeraddr (4)
- pfamily (1)
- protocol (1)
-
proxy
_ address (2) -
proxy
_ address= (1) - proxyaddr (1)
-
rb
_ gc _ register _ address (1) -
rb
_ gc _ unregister _ address (1) - rcptto (1)
-
rcptto
_ list (1) - ready (1)
- realloc (1)
- recvfrom (2)
-
recvfrom
_ nonblock (2) - recvmsg (1)
-
recvmsg
_ nonblock (1) -
remote
_ addr (1) -
remote
_ address (2) -
reply
_ to (1) - reverse (1)
- route (1)
-
ruby 1
. 6 feature (1) -
rubygems
/ commands / cert _ command (1) -
rubygems
/ security (1) - send (3)
-
send
_ mail (1) - sender (1)
- sendmail (1)
- sendmsg (1)
-
sendmsg
_ nonblock (1) - set (1)
-
sockaddr
_ in (1) -
sockaddr
_ un (1) - socket (1)
- socktype (1)
- start (6)
- succ (1)
- sysaccept (1)
- tcp (1)
-
tcp
_ server _ loop (2) - to (1)
-
to
_ i (1) -
to
_ name (1) -
to
_ range (1) -
to
_ s (2) -
to
_ sockaddr (1) -
to
_ string (1) - udp (1)
- unix (1)
- unix? (1)
-
unix
_ path (1) -
unix
_ server _ loop (1) -
unpack
_ sockaddr _ in (1) -
unpack
_ sockaddr _ un (1) - | (1)
- ~ (1)
検索結果
先頭5件
- Net
:: HTTP . new(address , port = 80 , proxy _ addr = :ENV , proxy _ port = nil , proxy _ user=nil , proxy _ pass=nil) -> Net :: HTTP - Socket
:: UDPSource . new(remote _ addr , local _ addr) {|msg| . . . } -> Socket :: UDPSource - Socket
:: AncillaryData # ip _ pktinfo -> [Addrinfo , Integer , Addrinfo] - Net
:: SMTP # send _ mail(mailsrc , from _ addr , *to _ addrs) -> () - Net
:: SMTP # send _ message(mailsrc , from _ addr , *to _ addrs) -> ()
-
Net
:: HTTP . new(address , port = 80 , proxy _ addr = :ENV , proxy _ port = nil , proxy _ user=nil , proxy _ pass=nil) -> Net :: HTTP (658.0) -
新しい Net::HTTP オブジェクトを生成します。
新しい Net::HTTP オブジェクトを生成します。
proxy_addr に :ENV を指定すると自動的に環境変数 http_proxy からプロクシの URI を
取り出し利用します。この場合環境変数 http_proxy が定義されていない場合には
プロクシは利用せず直接接続します。
詳しくは URI::Generic#find_proxy を参照してください。
明示的にプロクシのホスト名とポート番号を指定してプロクシを利用することもできます。
このときには proxy_addr にホスト名もしくは IP アドレスを渡します。
このときに proxy_userを指定するとプロク... -
Socket
:: UDPSource . new(remote _ addr , local _ addr) {|msg| . . . } -> Socket :: UDPSource (643.0) -
Socket::UDPSource オブジェクトを生成します。
Socket::UDPSource オブジェクトを生成します。
このメソッドはユーザは直接使いません。Socket.udp_server_loop が
内部で用います。
@param remote_addr リモートのアドレス(Addrinfo オブジェクト)
@param local_addr ローカルのアドレス(Addrinfo オブジェクト) -
Socket
:: AncillaryData # ip _ pktinfo -> [Addrinfo , Integer , Addrinfo] (637.0) -
自身の type が IP_PKTINFO である場合、保持しているデータ (アドレス、インターフェースのインデックス、ローカルアドレス) を3要素の配列で返します。
自身の type が IP_PKTINFO である場合、保持しているデータ
(アドレス、インターフェースのインデックス、ローカルアドレス)
を3要素の配列で返します。
IP_PKTINFO は非標準的拡張であり、システムによっては使えない場合があります。
require 'socket'
addr = Addrinfo.ip("127.0.0.1")
ifindex = 0
spec_dest = Addrinfo.ip("127.0.0.1")
ancdata = Socket::AncillaryData.ip_pktinfo(addr, ifindex, spe... -
Net
:: SMTP # send _ mail(mailsrc , from _ addr , *to _ addrs) -> () (628.0) -
メールを送信します。
メールを送信します。
mailsrc をメールとして送信します。
mailsrc は each イテレータを持つ
オブジェクトならなんでも構いません(たとえば String や File)。
from_domain は送り主のメールアドレス ('...@...'のかたち) 、
to_addrs には送信先メールアドレスを文字列で渡します。
require 'net/smtp'
Net::SMTP.start('smtp.example.com') {|smtp|
smtp.send_message mail_string,
... -
Net
:: SMTP # send _ message(mailsrc , from _ addr , *to _ addrs) -> () (628.0) -
メールを送信します。
メールを送信します。
mailsrc をメールとして送信します。
mailsrc は each イテレータを持つ
オブジェクトならなんでも構いません(たとえば String や File)。
from_domain は送り主のメールアドレス ('...@...'のかたち) 、
to_addrs には送信先メールアドレスを文字列で渡します。
require 'net/smtp'
Net::SMTP.start('smtp.example.com') {|smtp|
smtp.send_message mail_string,
... -
Net
:: SMTP # sendmail(mailsrc , from _ addr , *to _ addrs) -> () (628.0) -
メールを送信します。
メールを送信します。
mailsrc をメールとして送信します。
mailsrc は each イテレータを持つ
オブジェクトならなんでも構いません(たとえば String や File)。
from_domain は送り主のメールアドレス ('...@...'のかたち) 、
to_addrs には送信先メールアドレスを文字列で渡します。
require 'net/smtp'
Net::SMTP.start('smtp.example.com') {|smtp|
smtp.send_message mail_string,
... -
Net
:: SMTP # open _ message _ stream(from _ addr , *to _ addrs) {|f| . . . . } -> () (625.0) -
メール書き込みの準備をし、書き込み先のストリームオブジェクトを ブロックに渡します。ブロック終了後、書きこんだ結果が 送られます。
メール書き込みの準備をし、書き込み先のストリームオブジェクトを
ブロックに渡します。ブロック終了後、書きこんだ結果が
送られます。
渡されるストリームオブジェクトは以下のメソッドを持っています。
* puts(str = '') strを出力して CR LFを出力
* print(str) strを出力
* printf(fmt, *args) sprintf(fmt,*args) を出力
* write(str):: str を出力して書き込んだバイト数を返す
* <<(str):: str を出力してストリームオブジェ... -
Net
:: SMTP # ready(from _ addr , *to _ addrs) {|f| . . . . } -> () (625.0) -
メール書き込みの準備をし、書き込み先のストリームオブジェクトを ブロックに渡します。ブロック終了後、書きこんだ結果が 送られます。
メール書き込みの準備をし、書き込み先のストリームオブジェクトを
ブロックに渡します。ブロック終了後、書きこんだ結果が
送られます。
渡されるストリームオブジェクトは以下のメソッドを持っています。
* puts(str = '') strを出力して CR LFを出力
* print(str) strを出力
* printf(fmt, *args) sprintf(fmt,*args) を出力
* write(str):: str を出力して書き込んだバイト数を返す
* <<(str):: str を出力してストリームオブジェ... -
Fiddle
. # free(addr) -> nil (442.0) -
指定された addr が指すメモリ領域を開放します。
指定された addr が指すメモリ領域を開放します。
必ず Fiddle.#malloc が返した整数を addr に与えなければいけません。
そうでない場合、ruby インタプリタが異常終了します。
@param addr Fiddle.#malloc で確保されたメモリ領域を指す整数を指定します。
例:
require 'fiddle'
addr = Fiddle.malloc(10)
p addr #=> 136942800
Fiddle.free(addr) -
Fiddle
. # realloc(addr , size) -> Integer (406.0) -
addr で指定したメモリ領域を size バイトにリサイズし、その領域を指す整数 を返します。
addr で指定したメモリ領域を size バイトにリサイズし、その領域を指す整数
を返します。
addr には Fiddle.#malloc で確保したメモリ領域を渡します。
また、リサイズの結果、返り値が addr と異なる場合があります。
@param addr リサイズしたいメモリアドレス整数
@param size リサイズ後のバイト数
@see Fiddle.#malloc -
Fiddle
:: CStruct . new(addr) -> Fiddle :: CStruct (388.0) -
addr のアドレスが指すメモリを構造体のアドレスとみなし、 構造体を作ります。
addr のアドレスが指すメモリを構造体のアドレスとみなし、
構造体を作ります。
C におけるキャストと似ています。
return (struct foo*)addr;
というコードと対応していると言えます。
@param addr アドレス -
Fiddle
:: Pointer . new(addr , size = 0 , free = nil) -> Fiddle :: Pointer (388.0) -
与えられた addr が指すメモリ領域を表す Pointer オブジェクトを生成して返します。
与えられた addr が指すメモリ領域を表す Pointer オブジェクトを生成して返します。
size を指定した場合、アドレス addr に確保されているメモリ領域のサイズは
size であると仮定されます。GC は free 関数を使用してメモリを解放します。
@param addr 生成する Pointer オブジェクトが指すアドレスを整数で指定します。
@param size 生成する Pointer オブジェクトが指すメモリ領域のサイズを整数で指定します。
@param free GC 時に呼ばれる free 関数を Fiddle::Function オブジェクトか
... -
Fiddle
. # dlunwrap(addr) -> object (358.0) -
指定されたアドレスの Ruby オブジェクトを返します。
指定されたアドレスの Ruby オブジェクトを返します。
@param addr Fiddle.#dlwrap が返した Ruby オブジェクトのアドレス(整数)を指定します。
例:
require 'fiddle'
s = 'abc'
p addr = Fiddle.dlwrap(s) #=> 136122440
p Fiddle.dlunwrap(addr) #=> "abc" -
Socket
:: AncillaryData . ipv6 _ pktinfo(addr , ifindex) -> Socket :: AncillaryData (358.0) -
type が IPV6_PKTINFO である AncillaryData を生成します。
type が IPV6_PKTINFO である AncillaryData を生成します。
IPV6_PKTINFO は 3542 で定義されています。
require 'socket'
addr = Addrinfo.ip("::1")
ifindex = 0
p Socket::AncillaryData.ipv6_pktinfo(addr, ifindex)
#=> #<Socket::AncillaryData: INET6 IPV6 PKTINFO ::1 ifindex:0>
@param addr アドレス(文字列もしくは Addrinfo)
@pa... -
Socket
:: AncillaryData # ipv6 _ pktinfo -> [Addrinfo , Integer] (355.0) -
自身の type が IPV6_PKTINFO である場合、保持しているデータ (アドレス、インターフェースのインデックス) を2要素の配列で返します。
自身の type が IPV6_PKTINFO である場合、保持しているデータ
(アドレス、インターフェースのインデックス)
を2要素の配列で返します。
IPV6_PKTINFO については 3542 を参照してください。
require 'socket'
addr = Addrinfo.ip("::1")
ifindex = 0
ancdata = Socket::AncillaryData.ipv6_pktinfo(addr, ifindex)
p ancdata.ipv6_pktinfo #=> [#<Addrinfo: ::1>, 0]
@see Socke... -
Gem
:: Security . build _ self _ signed _ cert(email _ addr , options = {}) -> Hash (322.0) -
与えられたメールアドレスを元にして自己署名証明書を作成します。
与えられたメールアドレスを元にして自己署名証明書を作成します。
@param email_addr メールアドレスを指定します。
@param options オプションを指定します。
@return 鍵と証明書とそれらを保存したパスを表すハッシュを返します。 -
Net
:: SMTP # mailfrom(from _ addr) -> Net :: SMTP :: Response (322.0) -
MAILFROM コマンドを送ります。
MAILFROM コマンドを送ります。
通常は Net::SMTP#send_message, Net::SMTP#open_message_stream で
MAILFROM が送られるため利用する必要はないはずです。
@param from_addr 送信元メールアドレス -
Net
:: SMTP # rcptto(to _ addr) -> Net :: SMTP :: Response (322.0) -
RCPTTO コマンドを送ります。
RCPTTO コマンドを送ります。
通常は Net::SMTP#send_message, Net::SMTP#open_message_stream で
RCPTTO が送られるため利用する必要はないはずです。
@param to_addr 送信先メールアドレス -
Net
:: POP3 . delete _ all(address , port = nil , account , password , isapop=false) -> () (319.0) -
POP セッションを開始し、サーバ上のメールを全て消去します。
POP セッションを開始し、サーバ上のメールを全て消去します。
ブロックを与えられたときは消去する前に各メールを引数としてブロックを呼びだします。
メールは Net::POPMail のインスタンスとして渡されます。
port に nil を渡すと、適当なポート(通常は110、SSL利用時には 995)を
使います。
使用例:
require 'net/pop'
Net::POP3.delete_all(addr, nil, 'YourAccount', 'YourPassword') do |m|
puts m.pop
end
@param address P... -
Net
:: POP3 . delete _ all(address , port = nil , account , password , isapop=false) {|mail| . . . . } -> () (319.0) -
POP セッションを開始し、サーバ上のメールを全て消去します。
POP セッションを開始し、サーバ上のメールを全て消去します。
ブロックを与えられたときは消去する前に各メールを引数としてブロックを呼びだします。
メールは Net::POPMail のインスタンスとして渡されます。
port に nil を渡すと、適当なポート(通常は110、SSL利用時には 995)を
使います。
使用例:
require 'net/pop'
Net::POP3.delete_all(addr, nil, 'YourAccount', 'YourPassword') do |m|
puts m.pop
end
@param address P... -
Net
:: POP3 . start(address , port = nil , account=nil , password=nil , isapop=false) -> Net :: POP3 (319.0) -
Net::POP3 オブジェクトを生成し、サーバへ接続します。
Net::POP3 オブジェクトを生成し、サーバへ接続します。
ブロックを与えない場合には生成したオブジェクトを返します。
ブロックを与えた場合には、生成した Net::POP3 オブジェクトが
ブロックに渡され、ブロックが終わったときにセッションを終了させます。
この場合返り値はブロックの返り値となります。
port に nil を渡すと、適当なポート(通常は110、SSL利用時には 995)を
使います。
以下のコードと同じ動作をします。
require 'net/pop'
Net::POP3.new(address, port, isapop).start(accou... -
Net
:: POP3 . start(address , port = nil , account=nil , password=nil , isapop=false) {|pop| . . . . } -> object (319.0) -
Net::POP3 オブジェクトを生成し、サーバへ接続します。
Net::POP3 オブジェクトを生成し、サーバへ接続します。
ブロックを与えない場合には生成したオブジェクトを返します。
ブロックを与えた場合には、生成した Net::POP3 オブジェクトが
ブロックに渡され、ブロックが終わったときにセッションを終了させます。
この場合返り値はブロックの返り値となります。
port に nil を渡すと、適当なポート(通常は110、SSL利用時には 995)を
使います。
以下のコードと同じ動作をします。
require 'net/pop'
Net::POP3.new(address, port, isapop).start(accou... -
Socket
. tcp _ server _ loop(host , port) {|sock , addr| . . . } -> () (307.0) -
TCP/IP で host:port で待ち受けるサーバ側のソケットを作成し、 新しい接続を受け入れるごとにブロックを呼び出します。
TCP/IP で host:port で待ち受けるサーバ側のソケットを作成し、
新しい接続を受け入れるごとにブロックを呼び出します。
ブロックには新しい接続を表すソケットオブジェクトと、
クライアントアドレスを表す Addrinfo オブジェクトが渡されます。
ブロックの実行が終わってもソケットは close されません。
アプリケーション側が明示的に close する必要があります。
このメソッドはブロックを逐次的に呼び出します。
つまりブロックからリターンするまで次のコネクションを受け入れません。
そのため、同時に複数のクライアントと通信したい場合は
スレッドのような並列機構を使う必... -
Socket
. tcp _ server _ loop(port) {|sock , addr| . . . } -> () (307.0) -
TCP/IP で host:port で待ち受けるサーバ側のソケットを作成し、 新しい接続を受け入れるごとにブロックを呼び出します。
TCP/IP で host:port で待ち受けるサーバ側のソケットを作成し、
新しい接続を受け入れるごとにブロックを呼び出します。
ブロックには新しい接続を表すソケットオブジェクトと、
クライアントアドレスを表す Addrinfo オブジェクトが渡されます。
ブロックの実行が終わってもソケットは close されません。
アプリケーション側が明示的に close する必要があります。
このメソッドはブロックを逐次的に呼び出します。
つまりブロックからリターンするまで次のコネクションを受け入れません。
そのため、同時に複数のクライアントと通信したい場合は
スレッドのような並列機構を使う必... -
BasicSocket
# recvmsg(maxmesglen=nil , flags=0 , maxcontrollen=nil , opts={}) -> [String , Addrinfo , Integer , *Socket :: AncillaryData] (301.0) -
recvmsg(2) を用いてメッセージを受け取ります。
recvmsg(2) を用いてメッセージを受け取ります。
このメソッドはブロックします。ノンブロッキング方式で通信したい
場合は BasicSocket#recvmsg_nonblock を用います。
maxmesglen, maxcontrollen で受け取るメッセージおよび補助データ
(Socket::AncillaryData)の最大長をバイト単位で指定します。
省略した場合は必要なだけ内部バッファを拡大して
データが切れないようにします。
flags では Socket::MSG_* という名前の定数の biwsise OR を取った
ものを渡します。
opts にはその他... -
BasicSocket
# recvmsg _ nonblock(maxmesglen=nil , flags=0 , maxcontrollen=nil , opts={}) -> [String , Addrinfo , Integer , *Socket :: AncillaryData] (301.0) -
recvmsg(2) を用いてノンブロッキング方式でメッセージを受け取ります。
recvmsg(2) を用いてノンブロッキング方式でメッセージを受け取ります。
ブロッキングの有無以外は BasicSocket#recvmsg と同じです。
詳しくはそちらを参照してください。
@param maxmesglen 受け取るメッセージの最大長
@param flags フラグ
@param maxcontrollen 受け取る補助データの最大長
@param opts ハッシュオプション -
BasicSocket
# send(mesg , flags , dest _ sockaddr = nil) -> Integer (301.0) -
ソケットを介してデータを送ります。flags に関しては send(2) を参照してください。connect していないソケット に対しては送り先である dest_sockaddr を指定する必要があります。実際に送っ たデータの長さを返します。
ソケットを介してデータを送ります。flags に関しては
send(2) を参照してください。connect していないソケット
に対しては送り先である dest_sockaddr を指定する必要があります。実際に送っ
たデータの長さを返します。
dest_sockaddr にはlib:socket#pack_string
を指定します。
データの送信に失敗した場合は例外 Errno::EXXX が発生します。
@param mesg 送信するデータを文字列で指定します。
@param flags send(2) の flags を参照してください。
@par... -
BasicSocket
# sendmsg(mesg , flags=0 , dest _ sockaddr=nil , *controls) -> Integer (301.0) -
sendmsg(2) を用いてメッセージを送ります。
sendmsg(2) を用いてメッセージを送ります。
このメソッドはブロックします。ノンブロッキング方式で通信したい
場合は BasicSocket#sendmsg_nonblock を用います。
ソケットが connection-less の場合は dest_sockaddr で
通信先のアドレスを指定しなければなりません。Socket.sockaddr_in
の返り値や Addrinfo オブジェクトを引数として渡すことができます。
controls には 補助データ(ancillary data)を渡します。
Socket::AncillaryData のインスタンスや
3要素(c... -
BasicSocket
# sendmsg _ nonblock(mesg , flags=0 , dest _ sockaddr=nil , *controls) -> Integer (301.0) -
sendmsg(2) を用いてノンブロッキング方式でメッセージを送ります。
sendmsg(2) を用いてノンブロッキング方式でメッセージを送ります。
詳しくは BasicSocket#sendmsg を見てください。
@return 送ったバイト数
@param mesg メッセージ文字列
@param flags フラグ(Socket::MSG_* という定数の bitwise OR を取ったもの)
@param dest_sockaddr 通信先のアドレス
@param controls 補助データの配列
@see BasicSocket#sendmsg -
Gem
:: Server . new(gem _ dirs , port , daemon , addresses = nil) -> Gem :: Server (301.0) -
サーバーを初期化します。
サーバーを初期化します。
@param gem_dirs Gem を格納しているディレクトリを指定します。
@param gem_dir Gem を格納しているディレクトリを指定します。
@param port リッスンするポートを指定します。
@param daemon 真を指定するとデーモンとして起動します。
@param addresses -
Net
:: HTTP . Proxy(address , port = 80) -> Class (301.0) -
Proxy 経由で http サーバに接続するためのクラスを作成し返します。
Proxy 経由で http サーバに接続するためのクラスを作成し返します。
このクラスは Net::HTTP を継承しているので Net::HTTP と全く
同じように使えます。指定されたプロクシを常に経由して http サーバ
に接続します。
address が nil のときは Net::HTTP クラスをそのまま返します。
//emlist[例1: Net::HTTP.new を使う][ruby]{
require 'net/http'
proxy_class = Net::HTTP::Proxy('proxy.example.com', 8080)
http = proxy_... -
Net
:: IMAP :: Envelope # bcc -> [Net :: IMAP :: Address] | nil (301.0) -
Bcc を Net::IMAP::Address オブジェクトの配列で返します。
Bcc を Net::IMAP::Address オブジェクトの配列で返します。
エンベロープに存在しないときは nil を返します。 -
Net
:: IMAP :: Envelope # cc -> [Net :: IMAP :: Address] | nil (301.0) -
Cc を Net::IMAP::Address オブジェクトの配列で返します。
Cc を Net::IMAP::Address オブジェクトの配列で返します。
エンベロープに存在しないときは nil を返します。 -
Net
:: IMAP :: Envelope # from -> [Net :: IMAP :: Address] | nil (301.0) -
From を Net::IMAP::Address オブジェクトの配列で返します。
From を Net::IMAP::Address オブジェクトの配列で返します。
エンベロープに存在しないときは nil を返します。 -
Net
:: IMAP :: Envelope # reply _ to -> [Net :: IMAP :: Address] | nil (301.0) -
Reply-To を Net::IMAP::Address オブジェクトの配列で返します。
Reply-To を Net::IMAP::Address オブジェクトの配列で返します。
エンベロープに存在しないときは nil を返します。 -
Net
:: IMAP :: Envelope # sender -> [Net :: IMAP :: Address] | nil (301.0) -
Sender を Net::IMAP::Address オブジェクトの配列で返します。
Sender を Net::IMAP::Address オブジェクトの配列で返します。
エンベロープに存在しないときは nil を返します。 -
Net
:: IMAP :: Envelope # to -> [Net :: IMAP :: Address] | nil (301.0) -
To を Net::IMAP::Address オブジェクトの配列で返します。
To を Net::IMAP::Address オブジェクトの配列で返します。
エンベロープに存在しないときは nil を返します。 -
Net
:: POP3 . auth _ only(address , port = nil , account , password , isapop=false) (301.0) -
POP セッションを開き、認証だけを行って接続を切ります。
POP セッションを開き、認証だけを行って接続を切ります。
主に POP before SMTP のために用意されています。
使用例:
require 'net/pop'
Net::POP3.auth_only('pop.example.com', nil, # using default port (110)
'YourAccount', 'YourPassword')
@param address POP3サーバのホスト名文字列
@param port 接続するPOP3サーバのポート番号
@param account ... -
Net
:: POP3 . foreach(address , port = nil , account , password , isapop=false) {|mail| . . . . } -> () (301.0) -
POP セッションを開始し、 サーバ上のすべてのメールを取りだし、 個々のメールを引数としてブロックを呼びだします。
POP セッションを開始し、
サーバ上のすべてのメールを取りだし、
個々のメールを引数としてブロックを呼びだします。
個々のメールは Net::POPMail のインスタンスで渡されます。
port に nil を渡すと、適当なポート(通常は110、SSL利用時には 995)を
使います。
以下のコードと同様の処理をします。
require 'net/pop'
Net::POP3.start(address, port, account, password, isapop=false) {|pop|
pop.each_mail do |m|
yield m
... -
Net
:: POP3 . new(address , port = nil , apop = false) -> Net :: POP3 (301.0) -
Net::POP3 オブジェクトを生成します。
Net::POP3 オブジェクトを生成します。
このメソッドではサーバの接続は行いません。
apop が真のときは APOP 認証を行うオブジェクトを生成します。
port に nil を渡すと、適当なポート(通常は110、SSL利用時には 995)を
使います。
@param address POP3サーバのホスト名文字列
@param port 接続するPOP3サーバのポート番号
@param apop 真の場合にはAPOPで認証します
@see Net::POP3#start -
Net
:: SMTP # rcptto _ list(to _ addrs) { . . . } -> object (301.0) -
RCPTTO コマンドを to_addrs のすべてのメールアドレスに対して送ります。
RCPTTO コマンドを to_addrs のすべてのメールアドレスに対して送ります。
コマンドを送った後、ブロックを呼び出します。
このメソッドの返り値はブロックの返り値になります。
通常は Net::SMTP#send_message, Net::SMTP#open_message_stream で
RCPTTO が送られるため利用する必要はないはずです。
@param to_addrs 送信先メールアドレスの配列 -
Net
:: SMTP . new(address , port = Net :: SMTP . default _ port) -> Net :: SMTP (301.0) -
新しい SMTP オブジェクトを生成します。 address はSMTPサーバーのFQDNで、 port は接続するポート番号です。 ただし、このメソッドではまだTCPの接続はしません。 Net::SMTP#start で接続します。
新しい SMTP オブジェクトを生成します。
address はSMTPサーバーのFQDNで、
port は接続するポート番号です。
ただし、このメソッドではまだTCPの接続はしません。
Net::SMTP#start で接続します。
オブジェクトの生成と接続を同時にしたい場合には
Net::SMTP.start を代わりに使ってください。
@param address 接続先のSMTPサーバの文字列
@param port 接続ポート番号
@see Net::SMTP.start, Net::SMTP#start -
Net
:: SMTP . start(address , port = Net :: SMTP . default _ port , helo = & # 39;localhost& # 39; , user = nil , password = nil , authtype = DEFAULT _ AUTH _ TYPE) -> Net :: SMTP (301.0) -
新しい SMTP オブジェクトを生成し、サーバに接続し、セッションを開始します。
新しい SMTP オブジェクトを生成し、サーバに接続し、セッションを開始します。
以下と同じです。
require 'net/smtp'
Net::SMTP.new(address, port).start(helo, user, password, authtype)
このメソッドにブロックを与えた場合には、新しく作られた Net::SMTP オブジェクト
を引数としてそのブロックを呼び、ブロック終了時に自動的に接続を閉じます。
ブロックを与えなかった場合には新しく作られた Net::SMTP オブジェクトが
返されます。この場合終了時に Net::SMTP#finish ... -
Net
:: SMTP . start(address , port = Net :: SMTP . default _ port , helo = & # 39;localhost& # 39; , user = nil , password = nil , authtype = DEFAULT _ AUTH _ TYPE) {|smtp| . . . . } -> object (301.0) -
新しい SMTP オブジェクトを生成し、サーバに接続し、セッションを開始します。
新しい SMTP オブジェクトを生成し、サーバに接続し、セッションを開始します。
以下と同じです。
require 'net/smtp'
Net::SMTP.new(address, port).start(helo, user, password, authtype)
このメソッドにブロックを与えた場合には、新しく作られた Net::SMTP オブジェクト
を引数としてそのブロックを呼び、ブロック終了時に自動的に接続を閉じます。
ブロックを与えなかった場合には新しく作られた Net::SMTP オブジェクトが
返されます。この場合終了時に Net::SMTP#finish ... -
Resolv
# each _ name(address) {|name| . . . } -> () (301.0) -
IP アドレス address のホスト名をルックアップし、 各ルックアップ結果のホスト名に対してブロックを評価します。
IP アドレス address のホスト名をルックアップし、
各ルックアップ結果のホスト名に対してブロックを評価します。
@param address IPアドレスを文字列で与えます。 -
Resolv
# getname(address) -> String (301.0) -
IP アドレス address のホスト名をルックアップし、 ルックアップ結果の最初のホスト名を文字列で返します。
IP アドレス address のホスト名をルックアップし、
ルックアップ結果の最初のホスト名を文字列で返します。
@param address IPアドレスを文字列で与えます。
@raise Resolv::ResolvError ルックアップに失敗したときに発生します。 -
Resolv
# getnames(address) -> [String] (301.0) -
IP アドレス address のホスト名をルックアップし、 ルックアップ結果のホスト名リストを返します。
IP アドレス address のホスト名をルックアップし、
ルックアップ結果のホスト名リストを返します。
@param address IPアドレスを文字列で与えます。 -
Resolv
. each _ name(address) {|name| . . . } -> () (301.0) -
IP アドレス address のホスト名をルックアップし、 各ルックアップ結果のホスト名に対してブロックを評価します。
IP アドレス address のホスト名をルックアップし、
各ルックアップ結果のホスト名に対してブロックを評価します。
ルックアップは /etc/hosts, DNS の順で行います。
@param address IPアドレスを文字列で与えます。 -
Resolv
. getname(address) -> String (301.0) -
IP アドレス address のホスト名をルックアップし、 ルックアップ結果の最初のホスト名を文字列で返します。
IP アドレス address のホスト名をルックアップし、
ルックアップ結果の最初のホスト名を文字列で返します。
ルックアップは /etc/hosts, DNS の順で行います。
//emlist[][ruby]{
require "resolv"
Resolv.getname("221.186.184.68") #=> "carbon.ruby-lang.org"
//}
@param address IPアドレスを文字列で与えます。
@raise Resolv::ResolvError ルックアップに失敗したときに発生します。 -
Resolv
. getnames(address) -> [String] (301.0) -
IP アドレス address のホスト名をルックアップし、 ルックアップ結果のホスト名リストを返します。
IP アドレス address のホスト名をルックアップし、
ルックアップ結果のホスト名リストを返します。
ルックアップは /etc/hosts, DNS の順で行います。
@param address IPアドレスを文字列で与えます。 -
Resolv
:: DNS # each _ name(address) {|name| . . . } -> () (301.0) -
IP アドレス address のホスト名をルックアップし、 各ルックアップ結果のホスト名に対してブロックを評価します。
IP アドレス address のホスト名をルックアップし、
各ルックアップ結果のホスト名に対してブロックを評価します。
@param address IPアドレスを文字列、 Resolv::IPv4 のインスタンス、
Resolv::IPv6 のインスタンス、のいずれか与えます。 -
Resolv
:: DNS # getname(address) -> Resolv :: DNS :: Name (301.0) -
IP アドレス address のホスト名をルックアップし、 ルックアップ結果の最初のホスト名を返します。
IP アドレス address のホスト名をルックアップし、
ルックアップ結果の最初のホスト名を返します。
@param address IPアドレスを文字列、 Resolv::IPv4 のインスタンス、
Resolv::IPv6 のインスタンス、のいずれか与えます。
@raise Resolv::ResolvError ルックアップに失敗したときに発生します。 -
Resolv
:: DNS # getnames(address) -> [Resolv :: DNS :: Name] (301.0) -
IP アドレス address のホスト名をルックアップし、 ルックアップ結果のホスト名リストを返します。
IP アドレス address のホスト名をルックアップし、
ルックアップ結果のホスト名リストを返します。
@param address IPアドレスを文字列、 Resolv::IPv4 のインスタンス、
Resolv::IPv6 のインスタンス、のいずれか与えます。 -
Resolv
:: DNS :: Resource :: IN :: A . new(address) -> Resolv :: DNS :: Resource :: IN :: A (301.0) -
Resolv::DNS::Resource::IN::A のインスタンスを 生成します。
Resolv::DNS::Resource::IN::A のインスタンスを
生成します。
@param address IPv4アドレス -
Resolv
:: DNS :: Resource :: IN :: AAAA . new(address) -> Resolv :: DNS :: Resource :: IN :: AAAA (301.0) -
Resolv::DNS::Resource::IN::AAAA のインスタンスを 生成します。
Resolv::DNS::Resource::IN::AAAA のインスタンスを
生成します。
@param address IPv6アドレス -
Resolv
:: DNS :: Resource :: IN :: WKS . new(address , protocol , bitmap) -> Resolv :: DNS :: Resource :: IN :: WKS (301.0) -
Resolv::DNS::Resource::IN::WKS のインスタンスを生成します。
Resolv::DNS::Resource::IN::WKS のインスタンスを生成します。
@param address IPv4アドレス
@param protocol IPプロトコル番号
@param bitmap ビットマップ -
Resolv
:: Hosts # each _ name(address) {|name| . . . } -> () (301.0) -
IP アドレス address のホスト名をルックアップし、 各ルックアップ結果のホスト名に対してブロックを評価します。
IP アドレス address のホスト名をルックアップし、
各ルックアップ結果のホスト名に対してブロックを評価します。
ルックアップは /etc/hosts, DNS の順で行います。
@param address IPアドレスを文字列で与えます。 -
Resolv
:: Hosts # getname(address) -> String (301.0) -
IP アドレス address のホスト名をルックアップし、 ルックアップ結果の最初のホスト名を文字列で返します。
IP アドレス address のホスト名をルックアップし、
ルックアップ結果の最初のホスト名を文字列で返します。
@param address IPアドレスを文字列で与えます。
@raise Resolv::ResolvError ルックアップに失敗したときに発生します。 -
Resolv
:: Hosts # getnames(address) -> [String] (301.0) -
IP アドレス address のホスト名をルックアップし、 ルックアップ結果のホスト名リストを返します。
IP アドレス address のホスト名をルックアップし、
ルックアップ結果のホスト名リストを返します。
@param address IPアドレスを文字列で与えます。 -
Resolv
:: IPv4 . create(address) -> Resolv :: IPv4 (301.0) -
"192.168.0.1" のように "." で区切られた IPv4 表記の文字列 address から Resolv::IPv4 のインスタンスを生成します。
"192.168.0.1" のように "." で区切られた IPv4 表記の文字列 address から
Resolv::IPv4 のインスタンスを生成します。
@param address IPv4 表記の文字列 -
Resolv
:: IPv4 . new(address) -> Resolv :: IPv4 (301.0) -
4 byte の文字列 address から Resolv::IPv4 のインスタンスを生成します。
4 byte の文字列 address から Resolv::IPv4 のインスタンスを生成します。
@param address 4 byte のバイナリ列の IPv4 のアドレス
@see Resolv::IPv4.create -
Resolv
:: IPv6 . create(address) -> Resolv :: IPv6 (301.0) -
引数 address で指定した文字列から Resolv::IPv6 のインスタンスを生成しま す。
引数 address で指定した文字列から Resolv::IPv6 のインスタンスを生成しま
す。
@param address human readable な IPv6 アドレスの文字列表現を以下のいず
れかの形式で指定します。
* 8Hex
* CompressedHex
* 6Hex4Dec
* CompressedHex4Dec -
Resolv
:: IPv6 . new(address) -> Resolv :: IPv6 (301.0) -
16 byte の文字列 address から Resolv::IPv6 のインスタンスを生成します。
16 byte の文字列 address から Resolv::IPv6 のインスタンスを生成します。
@param address IPv6アドレスを表す 16 byte の文字列(バイト列)
@see Resolv::IPv6.create -
Socket
# bind(my _ sockaddr) -> 0 (301.0) -
ソケットを my_sockaddr に結合します。bind(2) と同じ働きをします。
ソケットを my_sockaddr に結合します。bind(2)
と同じ働きをします。
@param my_sockaddr lib:socket#pack_stringもしくはAddrinfoオブジェクトを指定します。
@return 0 を返します。 -
Socket
# connect(server _ sockaddr) -> 0 (301.0) -
connect(2) でソケットを接続します。
connect(2) でソケットを接続します。
server_sockaddr は、
lib:socket#pack_string
もしくは Addrinfo オブジェクト
です。
0 を返します。
@param server_sockaddr 接続先アドレス
@raise Errno::EXXX connect(2) がエラーを報告した場合に発生します。詳しくは
man を参照してください。
たとえば IPv4 の TCP ソケットを生成し、connect で www.ruby-lang.org:80 に接続するには以下のようにします。
例:
require... -
Socket
# connect _ nonblock(server _ sockaddr) -> 0 (301.0) -
ソケットをノンブロッキングモードに設定した後、 connect(2) を呼び出します。
ソケットをノンブロッキングモードに設定した後、
connect(2) を呼び出します。
引数、返り値は Socket#connect と同じです。
connect が EINPROGRESS エラーを報告した場合、その例外(Errno::EINPROGRESS)
には IO::WaitWritable が Object#extend されます。
これを connect_nonblock をリトライするために使うことができます。
# Pull down Google's web page
require 'socket'
include Socket::Constants
... -
Socket
# recvfrom(maxlen , flags=0) -> [String , Addrinfo] (301.0) -
ソケットからデータを受け取ります。
ソケットからデータを受け取ります。
BasicSocket#recv と同様ですが、返り値として
データ文字列と相手ソケットのアドレスのペアが返されます。
flags には Socket::MSG_* という定数の bitwise OR を渡します。
詳しくは recvfrom(2) を参照してください。
@param maxlen ソケットから受けとるデータの最大値
@param flags フラグ
@raise Errno::EXXX recvfrom(2) がエラーを報告した場合に発生します。詳しくは
Errno と man を見てください。
例:
requi... -
Socket
# recvfrom _ nonblock(maxlen , flags=0) -> [String , Addrinfo] (301.0) -
ソケットをノンブロッキングモードに設定した後、 recvfrom(2) を呼び出します。
ソケットをノンブロッキングモードに設定した後、
recvfrom(2) を呼び出します。
引数、返り値は Socket#recvfrom と同じです。
recvfrom(2) がエラーになった場合、
EAGAIN, EINTR を含め例外 Errno::EXXX が発生します。
Errno::EWOULDBLOCK、Errno::EAGAIN のような待ってからリトライすることが
可能であることを意味する例外には、IO::WaitReadable が extend
されています。
@param maxlen ソケットから受けとるデータの最大値
@param flags フラグ
@rai... -
Socket
. accept _ loop(sockets) {|sock , client _ addrinfo| . . . } -> () (301.0) -
sockets でサーバソケットを受け取り、接続を待ち受け、 クライアントとの接続が確立するたびにブロックにその接続 ソケットを渡し呼び出します。
sockets でサーバソケットを受け取り、接続を待ち受け、
クライアントとの接続が確立するたびにブロックにその接続
ソケットを渡し呼び出します。
ブロックの引数はクライアントと接続したソケットオブジェクトと
Addrinfo オブジェクトです。
Socket.tcp_server_loop と同様、ブロックは
逐次的に呼び出されます。つまりブロックか終了するまで
次の接続は accept されません。
並列に通信したい場合は
スレッドのような並列実行機構を使う必要があります。
@param sockets 待ち受けたいサーバソケットの配列
@see Socket.tcp_server... -
Socket
. unix _ server _ loop(path) {|socket , client _ addrinfo| . . . } -> () (301.0) -
Unix サーバソケットを生成し、 新しい接続を受け入れるごとにブロックを呼び出します。
Unix サーバソケットを生成し、
新しい接続を受け入れるごとにブロックを呼び出します。
ブロックには新しい接続を表すソケットオブジェクトと、
クライアントアドレスを表す Addrinfo オブジェクトが渡されます。
ブロックの実行が終わってもソケットは close されません。
アプリケーション側が明示的に close する必要があります。
path という名前のファイルが既に存在するときは、
そのファイルのオーナである場合は先にそのファイルを削除してしまいます。
これは path が悪意あるユーザによって変更されない場合に限りは安全です。
つまり、 /tmp/malicious-us... -
UDPSocket
# send(mesg , flags , dest _ sockaddr=nil) -> Integer (301.0) -
4 引数の形式で UDPSocket#send 実行したとき、 パラメータ host の名前解決に resolv ライブラリを使います。
4 引数の形式で UDPSocket#send 実行したとき、
パラメータ host の名前解決に
resolv ライブラリを使います。
@param mesg 送るデータを文字列で与えます。
@param flags フラグを指定します。
@param host データを送る先のホストを指定します。
@param port データを送る先のポートを指定します。
@raise SocketError 名前解決に失敗した場合に発生します。 -
UDPSocket
# send(mesg , flags , sockaddr _ to) -> Integer (301.0) -
UDP ソケットを介してデータを送ります。
UDP ソケットを介してデータを送ります。
flags には Socket::MSG_* という定数の bitwise OR を渡します。
詳しい意味は send(2) を参照してください。
host, port の対、もしくは sockaddr_to で送り先を指定します。
送り先を省略した場合は UDPSocket#connect で接続した
先にデータを送ります。
実際に送ったデータの長さを返します。
sockaddr_to にはlib:socket#pack_string もしくは
Addrinfo オブジェクトを指定します。
host, port に関しては lib:so... -
UDPSocket
. new(address _ family=Socket :: AF _ INET) -> UDPSocket (301.0) -
新しい UDP ソケットを返します。
新しい UDP ソケットを返します。
address_family には Socket::AF_INET のような整数、:INET のような
シンボル、"INET" のような文字列を指定することができます。
require 'socket'
UDPSocket.new # => #<UDPSocket:fd 3>
UDPSocket.new(Socket::AF_INET6) # => #<UDPSocket:fd 4>
@param address_family ソケットのアドレスファミリー -
UDPSocket
. open(address _ family=Socket :: AF _ INET) -> UDPSocket (301.0) -
新しい UDP ソケットを返します。
新しい UDP ソケットを返します。
address_family には Socket::AF_INET のような整数、:INET のような
シンボル、"INET" のような文字列を指定することができます。
require 'socket'
UDPSocket.new # => #<UDPSocket:fd 3>
UDPSocket.new(Socket::AF_INET6) # => #<UDPSocket:fd 4>
@param address_family ソケットのアドレスファミリー -
WEBrick
:: GenericServer # listen(address , port) -> [TCPServer] (301.0) -
与えられたアドレスとポートで TCPServer オブジェクトを生成し listener として管理します。
与えられたアドレスとポートで TCPServer オブジェクトを生成し
listener として管理します。
@param address アドレスを文字列で指定します。
@param port listen するポートを整数で指定します。
@see WEBrick::GenericServer#listeners, TCPServer#listen -
WEBrick
:: Utils . # create _ listeners(address , port , logger = nil) -> [TCPServer] (301.0) -
与えられたアドレスとポートで TCPServer オブジェクトを生成し ます。
与えられたアドレスとポートで TCPServer オブジェクトを生成し
ます。
@param address アドレスを指定します。
@param port ポート番号を指定します。
@param logger ロガーオブジェクトを指定します。
@raise ArgumentError port を指定しなかった場合に発生します。
@see Socket.getaddrinfo, TCPServer -
void Init
_ stack(VALUE *addr) (301.0) -
-
TCPServer (145.0)
-
TCP/IP ストリーム型接続のサーバ側のソケットのクラスです。
TCP/IP ストリーム型接続のサーバ側のソケットのクラスです。
このクラスによって簡単にソケットを利用したサーバのプログラミングができます。
例えば echo サーバは以下のようになります。
require "socket"
gs = TCPServer.open(0)
socks = [gs]
addr = gs.addr
addr.shift
printf("server is on %s\n", addr.join(":"))
while true
nsock = select(socks)
next if nsock ==... -
ACL (127.0)
-
drb で用いる ACL(Access Control List)クラス。
drb で用いる ACL(Access Control List)クラス。
Access control list は "allow" と "deny" の2つからなります。
"all" や "*" という文字列は任意のアドレスにマッチします。
IPAddr が取り扱える任意のアドレス/アドレスマスクを
使うことができます。
ACLのエントリーは、以下の例に示すように、
"allow_or_deny", "addr1",
"allow_or_deny", "addr2",
:
という文字列配列で表現されます。
@see DRb.#install_acl, DRb.#st... -
net
/ http (91.0) -
汎用データ転送プロトコル HTTP を扱うライブラリです。 実装は 2616 に基きます。
汎用データ転送プロトコル HTTP を扱うライブラリです。
実装は 2616 に基きます。
=== 使用例
==== ウェブサーバからドキュメントを得る (GET)
//emlist[例1: GET して 表示するだけ][ruby]{
require 'net/http'
print Net::HTTP.get('www.example.com', '/index.html')
//}
//emlist[例2: URI を使う][ruby]{
require 'net/http'
require 'uri'
print Net::HTTP.get(URI.parse('http://w... -
IPSocket
# recvfrom(maxlen , flags = 0) -> Array (85.0) -
recv と同様にソケットからデータを受け取りますが、 戻り値は文字列と相手ソケットのアドレス (形式は IPSocket#addr 参照) のペアです。引数につ いては BasicSocket#recv と同様です。
recv と同様にソケットからデータを受け取りますが、
戻り値は文字列と相手ソケットのアドレス (形式は
IPSocket#addr 参照) のペアです。引数につ
いては BasicSocket#recv と同様です。
@param maxlen 受け取る文字列の最大の長さを指定します。
@param flags recv(2) を参照してください。
@raise IOError
@raise Errno::EXXX recvfrom(2) がエラーになった場合などに発生します。
例:
require 'socket'
s1 = UDPSocket.new
s1.b... -
BasicSocket
# getpeername -> String (73.0) -
接続の相手先のソケットの情報を取得します。sockaddr 構造体をパッ クした文字列を返します。getpeername(2) を参照してください。
接続の相手先のソケットの情報を取得します。sockaddr 構造体をパッ
クした文字列を返します。getpeername(2) を参照してください。
例:
require 'socket'
serv = TCPServer.open("", 0)
c = TCPSocket.open(*Socket.unpack_sockaddr_in(serv.getsockname).reverse)
s = serv.accept
addr = c.getpeername
p addr #=> "\002\000\267\214\177\000\000\001\... -
rubygems
/ security (73.0) -
このライブラリは暗号署名を RubyGems パッケージに使用するために使用します。
このライブラリは暗号署名を RubyGems パッケージに使用するために使用します。
=== 署名付きの Gem パッケージ
==== 目次
* 概要
* 解説
* コマンドラインオプション
* OpenSSL リファレンス
* Bugs / TODO
* 作者について
==== 概要
このライブラリは暗号署名を RubyGems パッケージに使用するために使用します。
以下のセクションでは、署名付きの Gem パッケージを作成する方法を
ステップバイステップで解説しています。
==== 解説
@todo メソッドではない
あなたが自分の Gem に署名するためには、... -
Socket
:: AncillaryData # ipv6 _ pktinfo _ ifindex -> Integer (55.0) -
自身の type が IPV6_PKTINFO である場合、保持しているデータ (アドレス、インターフェースのインデックス) のインデックスを返します。
自身の type が IPV6_PKTINFO である場合、保持しているデータ
(アドレス、インターフェースのインデックス)
のインデックスを返します。
require 'socket'
addr = Addrinfo.ip("::1")
ifindex = 0
ancdata = Socket::AncillaryData.ipv6_pktinfo(addr, ifindex)
p ancdata.ipv6_pktinfo_ifindex #=> 0
@see Socket::AncillaryData.ipv6_pktinfo,
Socket::Anc... -
ruby 1
. 6 feature (55.0) -
ruby 1.6 feature ruby version 1.6 は安定版です。この版での変更はバグ修正がメイン になります。
ruby 1.6 feature
ruby version 1.6 は安定版です。この版での変更はバグ修正がメイン
になります。
((<stable-snapshot|URL:ftp://ftp.netlab.co.jp/pub/lang/ruby/stable-snapshot.tar.gz>)) は、日々更新される安定版の最新ソースです。
== 1.6.8 (2002-12-24) -> stable-snapshot
: 2003-01-22: errno
EAGAIN と EWOULDBLOCK が同じ値のシステムで、EWOULDBLOCK がなくなっ
ていま... -
Resolv
:: IPv4 # to _ name -> Resolv :: DNS :: Name (49.0) -
"x.y.z.w.in-addr.arpa." という形のドメイン名を返します。
"x.y.z.w.in-addr.arpa." という形のドメイン名を返します。 -
BasicSocket
. do _ not _ reverse _ lookup=(bool) (37.0) -
BasicSocket#do_not_reverse_lookup の値を変更します。
BasicSocket#do_not_reverse_lookup の値を変更します。
@param bool この値が真ならアドレスからホスト名への逆引きを行わなくなります。
例:
require 'socket'
p TCPSocket.new('localhost', 'telnet').addr
TCPSocket.do_not_reverse_lookup = true
p TCPSocket.new('localhost', 'telnet').addr
=> ["AF_INET", 2253, "localhost", "127.0.0.1... -
Fiddle
. # dlwrap(obj) -> Integer (37.0) -
指定されたオブジェクト obj のアドレスを表す整数を返します。
指定されたオブジェクト obj のアドレスを表す整数を返します。
@param obj Ruby のオブジェクトを指定します。
例:
require 'fiddle'
s = 'abc'
p addr = Fiddle.dlwrap(s) #=> 136122440
p Fiddle.dlunwrap(addr) #=> "abc" -
UDPSocket
# recvfrom _ nonblock(maxlen , flags=0) -> [String , Array] (37.0) -
ソケットをノンブロッキングモードに設定した後、 recvfrom(2) でソケットからデータを受け取ります。
ソケットをノンブロッキングモードに設定した後、
recvfrom(2) でソケットからデータを受け取ります。
maxlen で受け取るデータの最大バイト数を指定します。
flags はフラグで、Socket::MSG_* の bitwise OR を渡します。
詳しくは recvfrom(2) を参照してください。
返り値はデータの文字列と送り元のアドレス情報の
2要素の配列となります。
recvfrom(2) がエラーになった場合、
Errno::EAGAIN, Errno::EINTR を含め例外 Errno::EXXX が発生します。
Errno::EWOULDBLOCK、Err... -
URI
:: MailTo . build(ary) -> URI :: MailTo (37.0) -
引数で与えられた URI 構成要素から URI::MailTo オブジェクトを生成します。 引数の正当性をチェックします。
引数で与えられた URI 構成要素から URI::MailTo オブジェクトを生成します。
引数の正当性をチェックします。
@param ary 構成要素を
[to, headers]
という文字列の配列で与えます。headers は、以下のような文字列か配列で
与えます。
"subject=subscribe&cc=addr"
[["subject", "subscribe"], ["cc", "addr"]]
@param hash 構成要素をハッシュで与えます。ハッシュのキーは :to, :headers です。ハッシュの値は ary と同様です。
@r... -
URI
:: MailTo . build(hash) -> URI :: MailTo (37.0) -
引数で与えられた URI 構成要素から URI::MailTo オブジェクトを生成します。 引数の正当性をチェックします。
引数で与えられた URI 構成要素から URI::MailTo オブジェクトを生成します。
引数の正当性をチェックします。
@param ary 構成要素を
[to, headers]
という文字列の配列で与えます。headers は、以下のような文字列か配列で
与えます。
"subject=subscribe&cc=addr"
[["subject", "subscribe"], ["cc", "addr"]]
@param hash 構成要素をハッシュで与えます。ハッシュのキーは :to, :headers です。ハッシュの値は ary と同様です。
@r... -
rubygems
/ commands / cert _ command (37.0) -
Gem パッケージの証明書や署名の設定を管理するためのライブラリです。
Gem パッケージの証明書や署名の設定を管理するためのライブラリです。
Usage: gem cert [options]
Options:
-a, --add CERT 信頼された証明書を追加します
-l, --list 信頼されている証明書の一覧を表示します
-r, --remove STRING STRING を含む証明書を削除します
-b, --build EMAIL_ADDR EMAIL_ADDR ... -
Kernel
# httpd -> () (19.0) -
WEBrick HTTP server を起動します。
WEBrick HTTP server を起動します。
ruby -run -e httpd -- [OPTION] [DocumentRoot]
--bind-address=ADDR バインドアドレスを指定します
--port=NUM ポート番号を指定します
--max-clients=MAX 同時接続数の最大値
--temp-dir=DIR 一時ディレクトリを指定します
--do-not-reverse-lookup 逆引きを無効にします
--requ... -
Net
:: POP3 . APOP(is _ apop) -> Class (19.0) -
bool が真なら Net::APOP クラス、偽なら Net::POP3 クラスを返します。
bool が真なら Net::APOP クラス、偽なら Net::POP3 クラスを返します。
使用例:
require 'net/pop'
pop = Net::POP3::APOP($isapop).new(addr, port)
pop.start(account, password) {
....
}
@param is_apop 真の場合に Net::APOP を返します。 -
TCPServer
# accept -> TCPSocket (19.0) -
クライアントからの接続要求を受け付け、接続した TCPSocket のインスタンスを返します。
クライアントからの接続要求を受け付け、接続した
TCPSocket のインスタンスを返します。
例:
require 'socket'
TCPServer.open("", 0) {|serv|
c = TCPSocket.new(*serv.addr.values_at(3,1))
s = serv.accept
c.write "foo"
p s.recv(10) #=> "foo"
} -
TCPServer
# sysaccept -> Integer (19.0) -
接続したクライアントのソケットをファイル記述子で返すことを除けば TCPServer#accept と同じです。
接続したクライアントのソケットをファイル記述子で返すことを除けば
TCPServer#accept と同じです。
例:
require 'socket'
TCPServer.open("", 0) {|serv|
c = TCPSocket.new(*serv.addr.values_at(3,1))
p serv.sysaccept #=> 6
} -
cgi (19.0)
-
CGI プログラムの支援ライブラリです。
CGI プログラムの支援ライブラリです。
CGI プロトコルの詳細については以下の文書を参照してください。
* https://tools.ietf.org/html/draft-coar-cgi-v11-03
* 3875: The Common Gateway Interface (CGI) Version 1.1
* https://www.w3.org/CGI/
=== 使用例
==== フォームフィールドの値を得る
//emlist[][ruby]{
require "cgi"
cgi = CGI.new
values = cgi['field_name'] ... -
socket (19.0)
-
socket はプロセス外部との通信 (プロセス間通信、ホスト間通信) を実現します。
socket はプロセス外部との通信 (プロセス間通信、ホスト間通信) を実現します。
=== ソケットアドレス
ソケットというのは通信路の末端です。
たとえば 1対1 の通信では、まず通信路の両端にひとつずつソケットをつくり、
それらのソケットを接続することによって通信路が確立し、相互に通信できるようになります。
この接続時に、一方のソケットにもう一方のソケットの場所を教えてやる必要がありますが、
この場所を指定するものがソケットアドレスです。
ソケットアドレスはソケットの種類によって中身が異なります。
たとえば TCP では IP アドレスとポート番号ですし、
Unix ドメインソ...