]> granicus.if.org Git - apache/commitdiff
Close a major resource leak. Everytime we had issued a
authorRyan Bloom <rbb@apache.org>
Mon, 13 Aug 2001 04:25:43 +0000 (04:25 +0000)
committerRyan Bloom <rbb@apache.org>
Mon, 13 Aug 2001 04:25:43 +0000 (04:25 +0000)
graceful restart, we leaked a socket descriptor.

The listening sockets should not be set inheritable, at least
not at this point.  We only want some of the httpd children to
inherit the socket.  Namely, those that will be actually serving
requests.  Any other child process (piped logs), should not be
inheriting the sockets.

PR: 7891

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

CHANGES
server/listen.c

diff --git a/CHANGES b/CHANGES
index 004235ddeba4d1b50f69dba830e762a6188268f4..a7b0e6b8f5435150390ab0970c4dd057f74f6e65 100644 (file)
--- a/CHANGES
+++ b/CHANGES
@@ -1,5 +1,9 @@
 Changes with Apache 2.0.24-dev
 
+  *) Close a major resource leak.  Everytime we had issued a
+     graceful restart, we leaked a socket descriptor.
+     [Ryan Bloom]
+
   *) Fix a problem with the new method code.  We need to cast
      the 1 to an apr_int64_t or it will be treated as a 32-bit
      integer, and it will wrap after being shifted 32 times.
index dc9dc7de5bc9a400ab2c6828e763a5c9786cb1b8..169c090cacb7b6f876dc6d01ceb3acbf6b8efbeb 100644 (file)
@@ -259,7 +259,6 @@ static void alloc_listener(process_rec *process, char *addr, apr_port_t port)
                      "alloc_listener: failed to get a socket for %s", addr);
         return;
     }
-    apr_socket_set_inherit(new->sd);
     new->next = ap_listeners;
     ap_listeners = new;
 }