]> granicus.if.org Git - apache/commitdiff
We need to ensure a conn_rec
authorJim Jagielski <jim@apache.org>
Tue, 5 Mar 2013 19:18:55 +0000 (19:18 +0000)
committerJim Jagielski <jim@apache.org>
Tue, 5 Mar 2013 19:18:55 +0000 (19:18 +0000)
git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@1452954 13f79535-47bb-0310-9956-ffa450edef68

modules/proxy/mod_proxy_websocket.c

index a77a6e3b95bbfbe43f51e419f9a734c32522875c..10ea8eca4501cca588ddcf15c0a454fcc65697d1 100644 (file)
@@ -263,6 +263,7 @@ static int proxy_websocket_handler(request_rec *r, proxy_worker *worker,
     proxy_conn_rec *backend = NULL;
     char *scheme;
     int retry;
+    conn_rec *c = r->connection;
     proxy_dir_conf *dconf = ap_get_module_config(r->per_dir_config,
                                                  &proxy_module);
     apr_pool_t *p = r->pool;
@@ -316,6 +317,12 @@ static int proxy_websocket_handler(request_rec *r, proxy_worker *worker,
             status = HTTP_SERVICE_UNAVAILABLE;
             break;
         }
+        /* Step Three: Create conn_rec */
+        if (!backend->connection) {
+            if ((status = ap_proxy_connection_create(scheme, backend,
+                                                     c, r->server)) != OK)
+                break;
+         }
 
         /* Step Three: Process the Request */
         status = ap_proxy_websocket_request(p, r, backend, origin, dconf, uri, locurl,