]> granicus.if.org Git - apache/commitdiff
need to check return value of ssl_hook_process_connection
authorDoug MacEachern <dougm@apache.org>
Tue, 14 Aug 2001 17:03:03 +0000 (17:03 +0000)
committerDoug MacEachern <dougm@apache.org>
Tue, 14 Aug 2001 17:03:03 +0000 (17:03 +0000)
if != APR_SUCCESS the ssl connection has been shutdown
(for example client cert was revoked)
PR:
Obtained from:
Submitted by:
Reviewed by:

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

modules/ssl/ssl_engine_io.c

index 13b513d2bd167917842870bdd88edfa3db0c65a1..fc2abb8454fbd57bb75c378deed3c87dcb477afa 100644 (file)
@@ -282,8 +282,13 @@ static apr_status_t churn (SSLFilterRec *pRec,
         
         assert(n >= 0 && (apr_size_t)n == len);
 
-        ssl_hook_process_connection (pRec);
-
+        if ((ret = ssl_hook_process_connection(pRec)) != APR_SUCCESS) {
+            /* if this is the case, ssl connection has been shutdown
+             * and pRec->pssl has been freed
+             */
+            return ret;
+        }
+        
         /* pass along all of the current BIO */
         while ((n = ssl_io_hook_read(pRec->pssl,
                                      (unsigned char *)buf, sizeof(buf))) > 0)