aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorIgor Sysoev <igor@sysoev.ru>2008-01-31 15:10:45 +0000
committerIgor Sysoev <igor@sysoev.ru>2008-01-31 15:10:45 +0000
commitc20d3769bc0e22a29bf00feba829d887b948dbd4 (patch)
treef732bf15a5f2aaa1382ba22950a9e729ced3dac9
parent48b7b9bd0e6ee241ec5f6317c2ce60eb1d30607d (diff)
downloadnginx-c20d3769bc0e22a29bf00feba829d887b948dbd4.tar.gz
nginx-c20d3769bc0e22a29bf00feba829d887b948dbd4.zip
backout r1757, we really need SSL_MODE_ACCEPT_MOVING_WRITE_BUFFER
-rw-r--r--src/event/ngx_event_openssl.c7
1 files changed, 7 insertions, 0 deletions
diff --git a/src/event/ngx_event_openssl.c b/src/event/ngx_event_openssl.c
index edbb16fb8..0c8b9d8ed 100644
--- a/src/event/ngx_event_openssl.c
+++ b/src/event/ngx_event_openssl.c
@@ -187,6 +187,13 @@ ngx_ssl_create(ngx_ssl_t *ssl, ngx_uint_t protocols, void *data)
SSL_CTX_set_options(ssl->ctx, ngx_ssl_protocols[protocols >> 1]);
}
+ /*
+ * we need this option because in ngx_ssl_send_chain()
+ * we may switch to a buffered write and may copy leftover part of
+ * previously unbuffered data to our internal buffer
+ */
+ SSL_CTX_set_mode(ssl->ctx, SSL_MODE_ACCEPT_MOVING_WRITE_BUFFER);
+
SSL_CTX_set_read_ahead(ssl->ctx, 1);
return NGX_OK;