]> granicus.if.org Git - apache/commitdiff
This gets perchild compiling and serving pages again. It does NOT
authorRyan Bloom <rbb@apache.org>
Wed, 19 Dec 2001 17:50:38 +0000 (17:50 +0000)
committerRyan Bloom <rbb@apache.org>
Wed, 19 Dec 2001 17:50:38 +0000 (17:50 +0000)
pass file descriptors yet.  That is a much bigger project.

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

server/mpm/experimental/perchild/mpm.h
server/mpm/experimental/perchild/perchild.c
server/mpm/perchild/mpm.h
server/mpm/perchild/perchild.c

index 646a6aeae388ecf2d77450a23d145411fd9a5723..7c407230003a87a06faa93a73613b614e9159155 100644 (file)
@@ -78,7 +78,7 @@
 #define AP_MPM_WANT_SET_ACCEPT_LOCK_MECH
 
 #define MPM_SYNC_CHILD_TABLE()
-#define MPM_CHILD_PID(i) (ap_child_table[i].pid)
+#define MPM_CHILD_PID(i) (ap_scoreboard_image->parent[i].pid)
 #define MPM_NOTE_CHILD_KILLED(i) (MPM_CHILD_PID(i) = 0)
 
 /* Table of child status */
index 8cb0f84c1c401acdeb01c4d6f9322a83a1819cf4..b3cd5cde8b783fbb72cbb00dc93c1f415a4ec38d 100644 (file)
@@ -1452,7 +1452,7 @@ static void perchild_pre_config(apr_pool_t *p, apr_pool_t *plog, apr_pool_t *pte
 
 static int pass_request(request_rec *r)
 {
-    apr_socket_t *thesock = r->connection->client_socket;
+    apr_socket_t *thesock = ap_get_module_config(r->connection->conn_config, &core_module);
     struct msghdr msg;
     struct cmsghdr *cmsg;
     int sfd;
@@ -1582,7 +1582,7 @@ static int perchild_post_read(request_rec *r)
         apr_os_sock_put(&csd, &thread_socket_table[thread_num], 
                         r->connection->pool);
         ap_sock_disable_nagle(csd);
-        r->connection->client_socket = csd;
+        ap_set_module_config(r->connection->conn_config, &core_module, csd);
         return OK;
     }
     else {
index 646a6aeae388ecf2d77450a23d145411fd9a5723..7c407230003a87a06faa93a73613b614e9159155 100644 (file)
@@ -78,7 +78,7 @@
 #define AP_MPM_WANT_SET_ACCEPT_LOCK_MECH
 
 #define MPM_SYNC_CHILD_TABLE()
-#define MPM_CHILD_PID(i) (ap_child_table[i].pid)
+#define MPM_CHILD_PID(i) (ap_scoreboard_image->parent[i].pid)
 #define MPM_NOTE_CHILD_KILLED(i) (MPM_CHILD_PID(i) = 0)
 
 /* Table of child status */
index 8cb0f84c1c401acdeb01c4d6f9322a83a1819cf4..b3cd5cde8b783fbb72cbb00dc93c1f415a4ec38d 100644 (file)
@@ -1452,7 +1452,7 @@ static void perchild_pre_config(apr_pool_t *p, apr_pool_t *plog, apr_pool_t *pte
 
 static int pass_request(request_rec *r)
 {
-    apr_socket_t *thesock = r->connection->client_socket;
+    apr_socket_t *thesock = ap_get_module_config(r->connection->conn_config, &core_module);
     struct msghdr msg;
     struct cmsghdr *cmsg;
     int sfd;
@@ -1582,7 +1582,7 @@ static int perchild_post_read(request_rec *r)
         apr_os_sock_put(&csd, &thread_socket_table[thread_num], 
                         r->connection->pool);
         ap_sock_disable_nagle(csd);
-        r->connection->client_socket = csd;
+        ap_set_module_config(r->connection->conn_config, &core_module, csd);
         return OK;
     }
     else {