]> granicus.if.org Git - apache/commitdiff
in proxy mode we need to SSL_connect rather than SSL_accept in
authorDoug MacEachern <dougm@apache.org>
Fri, 29 Mar 2002 07:22:43 +0000 (07:22 +0000)
committerDoug MacEachern <dougm@apache.org>
Fri, 29 Mar 2002 07:22:43 +0000 (07:22 +0000)
ssl_hook_process_connection.

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

modules/ssl/mod_ssl.c

index 3f007f8aa8d5bc82ded884b29a74c92100a9f679..8fa47580b1b07b35bcaafd65daf48756ca38eb7f 100644 (file)
@@ -364,6 +364,17 @@ int ssl_hook_process_connection(SSLFilterRec *filter)
     long verify_result;
 
     if (!SSL_is_init_finished(filter->pssl)) {
+        if (sslconn->is_proxy) {
+            if ((n = SSL_connect(filter->pssl)) <= 0) {
+                ssl_log(c->base_server,
+                        SSL_LOG_ERROR|SSL_ADD_SSLERR|SSL_ADD_ERRNO,
+                        "SSL Proxy connect failed");
+                return ssl_abort(filter, c);
+            }
+
+            return APR_SUCCESS;
+        }
+
         if ((n = SSL_accept(filter->pssl)) <= 0) {
             err = SSL_get_error(filter->pssl, n);