]> granicus.if.org Git - apache/commitdiff
Exit the child main thread in make_child on child exit. This fixes a problem
authorBill Stoddard <stoddard@apache.org>
Thu, 22 Mar 2001 19:29:09 +0000 (19:29 +0000)
committerBill Stoddard <stoddard@apache.org>
Thu, 22 Mar 2001 19:29:09 +0000 (19:29 +0000)
where the child main thread was looping in make_child() forking errant processes.

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

CHANGES
server/mpm/threaded/threaded.c

diff --git a/CHANGES b/CHANGES
index b2f3846a759875e7e876e3cedc81865d370e1155..3baca728135506c4d656966d176c300feb4e5a9c 100644 (file)
--- a/CHANGES
+++ b/CHANGES
@@ -1,4 +1,7 @@
 Changes with Apache 2.0.15-dev
+  *) Fix bug in the Unix threaded.c MPM that allowed child processes
+     to fork() new child processes. 
+     [Bill Stoddard]
 
   *) Fix a major security problem with double-reverse lookup checking.  
      Previously, a client connecting over IPv4 would not be matched 
index 75bda0507fda3e25bcf76e41e50052eb4bc4c47c..c15d1cb685dc95fb7ec82528df4a0a7c6c2ebe43 100644 (file)
@@ -762,7 +762,7 @@ static int make_child(server_rec *s, int slot)
         apr_signal(SIGTERM, just_die);
         child_main(slot);
 
-       return 0;
+        exit(0);
     }
     /* else */
     ap_scoreboard_image->parent[slot].pid = pid;