種類
- インスタンスメソッド (220)
- 特異メソッド (33)
- 定数 (33)
- クラス (11)
- 関数 (1)
ライブラリ
-
net
/ http (22) - openssl (55)
- optparse (132)
- socket (55)
-
webrick
/ httpstatus (33)
クラス
-
OpenSSL
:: SSL :: SSLServer (44) - OptionParser (132)
- Socket (22)
- TCPServer (11)
- UNIXServer (11)
- UNIXSocket (11)
モジュール
-
Net
:: HTTPHeader (22) -
WEBrick
:: HTTPStatus (33)
キーワード
-
RC
_ INTERNAL _ SERVER _ ERROR (11) -
RC
_ MOVED _ PERMANENTLY (11) -
RC
_ SERVICE _ UNAVAILABLE (11) - SSLServer (11)
-
accept
_ nonblock (22) - each (11)
-
each
_ header (11) - new (11)
- on (132)
-
rb
_ exec _ arg _ init (1) - recvfrom (11)
-
start
_ immediately (11) -
start
_ immediately= (11) -
tcp
_ server _ loop (22)
検索結果
先頭5件
-
OpenSSL
:: SSL :: SSLServer # accept -> OpenSSL :: SSL :: SSLSocket (30307.0) -
クライアントからの接続を受け付け、接続した SSLSocket オブジェクトを返します。
...クライアントからの接続を受け付け、接続した
SSLSocket オブジェクトを返します。
OpenSSL::SSL::SSLServer#start_immediately が真ならば、
SSLSocket#accept を呼び TLS/SSL ハンドシェイクを実行してから
SSLSocket オブジェクトを返します。... -
OpenSSL
:: SSL :: SSLServer (21006.0) -
SSL サーバーのためのクラス。
...SSL サーバーのためのクラス。
TCPServer をラップするクラスで、TCPServer で接続した
ソケットを OpenSSL::SSL::SSLSocket でラップする機能を持ちます。
おおよそ TCPServer と同様のメソッドを持ちます。
基本的には SSL サーバを簡単......SSL サーバを実装することは可能です。
以下はクライアントからの入力を標準出力に出力するだけのサーバです。
require 'socket'
require 'openssl'
include OpenSSL
ctx = SSL::SSLContext.new()
ctx.cert = X509::Certificate.new(File.read('cert.......pem'))
ctx.key = PKey::RSA.new(File.read('privkey.pem'))
svr = TCPServer.new(2007)
serv = SSL::SSLServer.new(svr, ctx)
loop do
while soc = serv.accept
puts soc.read
end
end... -
Socket
. tcp _ server _ loop(host , port) {|sock , addr| . . . } -> () (18312.0) -
TCP/IP で host:port で待ち受けるサーバ側のソケットを作成し、 新しい接続を受け入れるごとにブロックを呼び出します。
...CP/IP で host:port で待ち受けるサーバ側のソケットを作成し、
新しい接続を受け入れるごとにブロックを呼び出します。
ブロックには新しい接続を表すソケットオブジェクトと、
クライアントアドレスを表す Addrinfo オブジ......ェクトが渡されます。
ブロックの実行が終わってもソケットは close されません。
アプリケーション側が明示的に close する必要があります。
このメソッドはブロックを逐次的に呼び出します。
つまりブロックからリター......めに
Addrinfo.getaddrinfo が用いられることに注意してください。
Addrinfo.getaddrinfo は複数のアドレスを返す(IPv4 と IPv6 など)
場合があり、その場合その全てが用いられます。つまり IPv4 と IPv6 の
両方を待ち受けます。getaddrinfo が... -
Socket
. tcp _ server _ loop(port) {|sock , addr| . . . } -> () (18312.0) -
TCP/IP で host:port で待ち受けるサーバ側のソケットを作成し、 新しい接続を受け入れるごとにブロックを呼び出します。
...CP/IP で host:port で待ち受けるサーバ側のソケットを作成し、
新しい接続を受け入れるごとにブロックを呼び出します。
ブロックには新しい接続を表すソケットオブジェクトと、
クライアントアドレスを表す Addrinfo オブジ......ェクトが渡されます。
ブロックの実行が終わってもソケットは close されません。
アプリケーション側が明示的に close する必要があります。
このメソッドはブロックを逐次的に呼び出します。
つまりブロックからリター......めに
Addrinfo.getaddrinfo が用いられることに注意してください。
Addrinfo.getaddrinfo は複数のアドレスを返す(IPv4 と IPv6 など)
場合があり、その場合その全てが用いられます。つまり IPv4 と IPv6 の
両方を待ち受けます。getaddrinfo が... -
UNIXServer
# accept _ nonblock -> UnixSocket (18247.0) -
ソケットをノンブロッキングモードに設定した後、 accept(2) を呼び出します。
...設定した後、
accept(2) を呼び出します。
接続した
UNIXSocket のインスタンスを返します。
accept(2) がエラーになった場合、Socket#accept と同じ例外が
発生します。
Errno::EWOULDBLOCK, Errno::EAGAIN,
Errno::ECONNABORTED, Errno::EPROTO のいずれ......itReadable が extend
されます。それを利用してリトライ可能な例外を掴まえることができます。
require 'socket'
serv = UNIXServer.new("/tmp/sock")
begin # emulate blocking accept
sock = serv.accept_nonblock
rescue IO::WaitReadable, Errno::EINTR
IO.selec......t([serv])
retry
end
# sock is an accepted socket.
@see UNIXServer#accept... -
OpenSSL
:: SSL :: SSLServer # start _ immediately=(bool) (18244.0) -
OpenSSL::SSL::SSLServer#accept で accept したらすぐに TLS/SSL ハンドシェイクを実行するかどうかを設定します。
...OpenSSL::SSL::SSLServer#accept で
accept したらすぐに TLS/SSL ハンドシェイクを実行するかどうかを設定します。
これを真に設定した場合は、OpenSSL::SSL::SSLServer#accept で
接続したソケットに対し OpenSSL::SSL::SSLSocket#accept を
呼び、ハン......ドシェイクを実行します。
デフォルトでは true です。
@param bool 設定する真偽値。
@see OpenSSL::SSL::SSLServer#start_immediately... -
TCPServer
# accept _ nonblock -> TCPSocket (18235.0) -
ソケットをノンブロッキングモードに設定した後、 accept(2) を呼び出します。
...キングモードに設定した後、
accept(2) を呼び出します。
返り値は TCPServer#accept と同じです。
accept(2) がエラーになった場合、
EAGAIN, EINTR を含め例外 Errno::EXXX が発生します。
@raise Errno::EXXX accept(2) がエラーになった場合に発... -
OpenSSL
:: SSL :: SSLServer # start _ immediately -> bool (18232.0) -
OpenSSL::SSL::SSLServer#accept で accept したらすぐに TLS/SSL ハンドシェイクを実行するかどうかを返します。
...OpenSSL::SSL::SSLServer#accept で
accept したらすぐに TLS/SSL ハンドシェイクを実行するかどうかを返します。
@see OpenSSL::SSL::SSLServer#start_immediately=... -
WEBrick
:: HTTPStatus :: RC _ INTERNAL _ SERVER _ ERROR (15300.0) -
HTTP のステータスコードを表す整数です。
...HTTP のステータスコードを表す整数です。
require 'webrick'
p WEBrick::HTTPStatus::RC_INTERNAL_SERVER_ERROR #=> 500... -
WEBrick
:: HTTPStatus :: RC _ MOVED _ PERMANENTLY (15300.0) -
HTTP のステータスコードを表す整数です。
...HTTP のステータスコードを表す整数です。
require 'webrick'
p WEBrick::HTTPStatus::RC_INTERNAL_SERVER_ERROR #=> 500...