diff options
| author | gotoyuzo <gotoyuzo@b2dd03c8-39d4-4d8f-98ff-823fe69b080e> | 2005-03-09 10:45:42 +0000 |
|---|---|---|
| committer | gotoyuzo <gotoyuzo@b2dd03c8-39d4-4d8f-98ff-823fe69b080e> | 2005-03-09 10:45:42 +0000 |
| commit | 3e37f1a726a31323bfeedaa86e0f8a931d8b4845 (patch) | |
| tree | d8da2900eaf273ead61714a96337bcedb9a74411 /test/openssl/ssl_server.rb | |
| parent | 6f3790532eb8316f742d2a0ea4a0a8fdda5460c9 (diff) | |
| download | ruby-3e37f1a726a31323bfeedaa86e0f8a931d8b4845.tar.gz ruby-3e37f1a726a31323bfeedaa86e0f8a931d8b4845.tar.xz ruby-3e37f1a726a31323bfeedaa86e0f8a931d8b4845.zip | |
* ext/openssl/ossl_ssl.c: OpenSSL::SSL::SSLContexts suports callbacks:
- SSLContext#client_cert_cb is a Proc. it is called when a client
certificate is requested by a server and no certificate was yet
set for the SSLContext. it must return an Array which includes
OpenSSL::X509::Certificate and OpenSSL::PKey::RSA/DSA objects.
- SSLContext#tmp_dh_callback is called in key exchange with DH
algorithm. it must return an OpenSSL::PKey::DH object.
* ext/openssl/ossl_ssl.c:
(ossl_sslctx_set_ciphers): ignore the argument if it's nil.
(ossl_start_ssl, ossl_ssl_write): call rb_sys_fail if errno isn't 0.
[ruby-dev:25831]
* ext/openssl/ossl_pkey.c
(GetPrivPKeyPtr, ossl_pkey_sign): should call rb_funcall first.
(DupPrivPKeyPtr): new function.
* ext/openssl/ossl_pkey_dh.c: add default DH parameters.
* ext/openssl/ossl_pkey.h: ditto.
* ext/openssl/lib/openssl/cipher.rb: fix typo. [ruby-dev:24285]
git-svn-id: http://svn.ruby-lang.org/repos/ruby/trunk@8129 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
Diffstat (limited to 'test/openssl/ssl_server.rb')
| -rw-r--r-- | test/openssl/ssl_server.rb | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/test/openssl/ssl_server.rb b/test/openssl/ssl_server.rb index 556c28b84..6e620629c 100644 --- a/test/openssl/ssl_server.rb +++ b/test/openssl/ssl_server.rb @@ -64,7 +64,8 @@ $stdout.puts Process.pid $stdout.puts port loop do - Thread.start(ssls.accept) {|ssl| + ssl = ssls.accept rescue next + Thread.start{ q = Queue.new th = Thread.start{ ssl.write(q.shift) while true } while line = ssl.gets |
