]> granicus.if.org Git - apache/commitdiff
check for timeout on socket read when we check for ECONNRESET and eof
authorJeff Trawick <trawick@apache.org>
Thu, 16 Aug 2001 21:11:30 +0000 (21:11 +0000)
committerJeff Trawick <trawick@apache.org>
Thu, 16 Aug 2001 21:11:30 +0000 (21:11 +0000)
previously, we'd die on an assert() (really nasty for threaded MPM) when
we hit a keepalive timeout for a browser like netscape which keeps the
connection open

git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@90244 13f79535-47bb-0310-9956-ffa450edef68

CHANGES
modules/ssl/ssl_engine_io.c

diff --git a/CHANGES b/CHANGES
index 11fde0102504294c43e75e6c6c682c9f75f6a194..94380a1dfb7c3fd91f1007ae4578644b643def28 100644 (file)
--- a/CHANGES
+++ b/CHANGES
@@ -1,5 +1,8 @@
 Changes with Apache 2.0.25-dev
 
+  *) Fix an assertion failure in mod_ssl when the keepalive timeout is  
+     reached.  [Jeff Trawick]
+
 Changes with Apache 2.0.24
 
   *) Fixed the segfaults in mod_mime introduced by hash tables in 2.0.20.
index 6dcad77ca008a21dfe57b78694b019cb305f21bb..64518103ea4bc1b75ffcc6ad7e6761ae66e17af1 100644 (file)
@@ -265,7 +265,8 @@ static apr_status_t churn (SSLFilterRec *pRec,
 
        if(len == 0) {
            /* Lazy frickin browsers just reset instead of shutting down. */
-            if(ret == APR_EOF || APR_STATUS_IS_ECONNRESET(ret)) {
+            /* also gotta handle timeout of keepalive connections */
+            if(ret == APR_EOF || APR_STATUS_IS_ECONNRESET(ret) || ret == APR_TIMEUP) {
                if(APR_BRIGADE_EMPTY(pRec->pbbPendingInput))
                    return APR_EOF;
                else