* ext/openssl/ossl_ssl.c: Use SSL_MODE_RELEASE_BUFFERS if available.
Thanks, Eric Wong, for providing the patch. [ Ruby 1.9 - Feature #4672 ] [ruby-core:36127] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@32198 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
This commit is contained in:
parent
914a4a025a
commit
41c517d132
@ -1,3 +1,9 @@
|
|||||||
|
Wed Jun 22 15:01:24 2011 Martin Bosslet <Martin.Bosslet@googlemail.com>
|
||||||
|
|
||||||
|
* ext/openssl/ossl_ssl.c: Use SSL_MODE_RELEASE_BUFFERS if available.
|
||||||
|
Thanks, Eric Wong, for providing the patch.
|
||||||
|
[ Ruby 1.9 - Feature #4672 ] [ruby-core:36127]
|
||||||
|
|
||||||
Wed Jun 22 14:47:53 2011 Martin Bosslet <Martin.Bosslet@googlemail.com>
|
Wed Jun 22 14:47:53 2011 Martin Bosslet <Martin.Bosslet@googlemail.com>
|
||||||
|
|
||||||
* test/openssl/test_buffering.rb
|
* test/openssl/test_buffering.rb
|
||||||
|
@ -140,12 +140,17 @@ static VALUE
|
|||||||
ossl_sslctx_s_alloc(VALUE klass)
|
ossl_sslctx_s_alloc(VALUE klass)
|
||||||
{
|
{
|
||||||
SSL_CTX *ctx;
|
SSL_CTX *ctx;
|
||||||
|
long mode = SSL_MODE_ENABLE_PARTIAL_WRITE;
|
||||||
|
|
||||||
|
#ifdef SSL_MODE_RELEASE_BUFFERS
|
||||||
|
mode |= SSL_MODE_RELEASE_BUFFERS;
|
||||||
|
#endif
|
||||||
|
|
||||||
ctx = SSL_CTX_new(SSLv23_method());
|
ctx = SSL_CTX_new(SSLv23_method());
|
||||||
if (!ctx) {
|
if (!ctx) {
|
||||||
ossl_raise(eSSLError, "SSL_CTX_new:");
|
ossl_raise(eSSLError, "SSL_CTX_new:");
|
||||||
}
|
}
|
||||||
SSL_CTX_set_mode(ctx, SSL_MODE_ENABLE_PARTIAL_WRITE);
|
SSL_CTX_set_mode(ctx, mode);
|
||||||
SSL_CTX_set_options(ctx, SSL_OP_ALL);
|
SSL_CTX_set_options(ctx, SSL_OP_ALL);
|
||||||
return Data_Wrap_Struct(klass, 0, ossl_sslctx_free, ctx);
|
return Data_Wrap_Struct(klass, 0, ossl_sslctx_free, ctx);
|
||||||
}
|
}
|
||||||
|
Loading…
x
Reference in New Issue
Block a user