1
0
Fork 0
mirror of https://github.com/ruby/ruby.git synced 2022-11-09 12:17:21 -05:00
ruby--ruby/ext/openssl
normal 280f732215 openssl: accept moving write buffer for write_nonblock
By setting the SSL_MODE_ACCEPT_MOVING_WRITE_BUFFER flag.
This flag was introduced at the same time as
SSL_MODE_ENABLE_PARTIAL_WRITE in OpenSSL 0.9.4 and makes usage
with non-blocking sockets much easier.

Before this, a Rubyist would need to remember the exact object
which failed to write and reuse it later when the socket became
writable again.  This causes problems when the buffer is given
by another layer of the application (e.g. a buffer is given
by a Rack middleware or application to a Rack web server).

* ext/openssl/ossl_ssl.c (ossl_sslctx_s_alloc):
  enable SSL_MODE_ACCEPT_MOVING_WRITE_BUFFER by default
  [Bug #12126]

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@54466 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2016-03-31 20:33:55 +00:00
..
lib * ext/openssl/lib/openssl/pkey.rb: Added 2048 bit DH parameter. 2016-01-16 07:51:24 +00:00
depend
deprecation.rb
extconf.rb openssl: fix build when NPN is disabled by OpenSSL 2016-03-25 04:38:13 +00:00
openssl_missing.c
openssl_missing.h
ossl.c openssl: fix examples [ci skip] 2016-01-09 14:15:49 +00:00
ossl.h
ossl_asn1.c
ossl_asn1.h
ossl_bio.c prefer rb_syserr_fail 2015-12-23 08:57:48 +00:00
ossl_bio.h
ossl_bn.c
ossl_bn.h
ossl_cipher.c
ossl_cipher.h
ossl_config.c
ossl_config.h
ossl_digest.c
ossl_digest.h
ossl_engine.c
ossl_engine.h
ossl_hmac.c
ossl_hmac.h
ossl_ns_spki.c
ossl_ns_spki.h
ossl_ocsp.c
ossl_ocsp.h
ossl_pkcs5.c
ossl_pkcs5.h
ossl_pkcs7.c
ossl_pkcs7.h
ossl_pkcs12.c
ossl_pkcs12.h
ossl_pkey.c Fix typo on OpenSSL::PKey doc [ci skip] 2016-02-02 23:25:40 +00:00
ossl_pkey.h
ossl_pkey_dh.c
ossl_pkey_dsa.c
ossl_pkey_ec.c
ossl_pkey_rsa.c
ossl_rand.c
ossl_rand.h
ossl_ssl.c openssl: accept moving write buffer for write_nonblock 2016-03-31 20:33:55 +00:00
ossl_ssl.h
ossl_ssl_session.c
ossl_version.h
ossl_x509.c
ossl_x509.h
ossl_x509attr.c
ossl_x509cert.c
ossl_x509crl.c
ossl_x509ext.c
ossl_x509name.c
ossl_x509req.c
ossl_x509revoked.c
ossl_x509store.c
ruby_missing.h