httpd-cvs mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From yla...@apache.org
Subject svn commit: r1705823 - /httpd/httpd/trunk/modules/ssl/ssl_engine_io.c
Date Tue, 29 Sep 2015 09:42:57 GMT
Author: ylavic
Date: Tue Sep 29 09:42:56 2015
New Revision: 1705823

URL: http://svn.apache.org/viewvc?rev=1705823&view=rev
Log:
mod_ssl: don't FLUSH output (blocking) on read.
This defeats deferred write (and pipelining), eg. check_pipeline() is not
expecting the pipe to be flushed under it.
So let OpenSSL >= 0.9.8m issue the flush when necessary (earlier versions
are known to not handle all the cases, so we keep flushing with those).

Modified:
    httpd/httpd/trunk/modules/ssl/ssl_engine_io.c

Modified: httpd/httpd/trunk/modules/ssl/ssl_engine_io.c
URL: http://svn.apache.org/viewvc/httpd/httpd/trunk/modules/ssl/ssl_engine_io.c?rev=1705823&r1=1705822&r2=1705823&view=diff
==============================================================================
--- httpd/httpd/trunk/modules/ssl/ssl_engine_io.c (original)
+++ httpd/httpd/trunk/modules/ssl/ssl_engine_io.c Tue Sep 29 09:42:56 2015
@@ -466,9 +466,10 @@ static int bio_filter_in_read(BIO *bio,
     }
 
     /* In theory, OpenSSL should flush as necessary, but it is known
-     * not to do so correctly in some cases; see PR 46952.
-     *
-     * Historically, this flush call was performed only for an SSLv2
+     * not to do so correctly in some cases (< 0.9.8m); see PR 46952.
+     */
+#if OPENSSL_VERSION_NUMBER < 0x0009080df
+    /* Historically, this flush call was performed only for an SSLv2
      * connection or for a proxy connection.  Calling _out_flush
      * should be very cheap in cases where it is unnecessary (and no
      * output is buffered) so the performance impact of doing it



Mime
View raw message