nginx-0.0.2-2004-02-03-00:19:52 import
diff --git a/src/core/nginx.c b/src/core/nginx.c
index b436dd4..61cc53e 100644
--- a/src/core/nginx.c
+++ b/src/core/nginx.c
@@ -173,7 +173,7 @@
 
 #else
 
-    if (ccf->daemon != 0) {
+    if (!ngx_inherited && ccf->daemon != 0) {
         if (ngx_daemon(cycle->log) == NGX_ERROR) {
             return 1;
         }
@@ -356,11 +356,10 @@
                     live = 0;
                     for (i = 0; i < ngx_last_process; i++) {
 
-                        ngx_log_debug6(NGX_LOG_DEBUG_EVENT, cycle->log, 0,
+                        ngx_log_debug5(NGX_LOG_DEBUG_EVENT, cycle->log, 0,
                                        "child: " PID_T_FMT
-                                       " s:%d e:%d t:%d d:%d r:%d",
+                                       " e:%d t:%d d:%d r:%d",
                                        ngx_processes[i].pid,
-                                       ngx_processes[i].signal,
                                        ngx_processes[i].exiting,
                                        ngx_processes[i].exited,
                                        ngx_processes[i].detached,
@@ -396,13 +395,10 @@
                                                ngx_processes[ngx_last_process];
                             }
 
-                        } else if (!ngx_processes[i].detached
-                                   && (ngx_terminate || ngx_quit))
+                        } else if (ngx_processes[i].exiting
+                                   || !ngx_processes[i].detached)
                         {
                             live = 1;
-
-                        } else if (ngx_processes[i].exiting) {
-                            live = 1;
                         }
                     }
                 }
@@ -470,46 +466,29 @@
                 if (signo) {
                     for (i = 0; i < ngx_last_process; i++) {
 
-                        if (!ngx_processes[i].detached) {
-                            ngx_processes[i].signal = signo;
+                        if (ngx_processes[i].detached) {
+                            continue;
+                        }
 
-                            ngx_log_debug2(NGX_LOG_DEBUG_EVENT,
-                                           cycle->log, 0,
-                                           "signal " PID_T_FMT " %d",
-                                           ngx_processes[i].pid, signo);
+                        ngx_log_debug2(NGX_LOG_DEBUG_CORE, cycle->log, 0,
+                                       "kill (" PID_T_FMT ", %d)" ,
+                                       ngx_processes[i].pid, signo);
+
+                        if (kill(ngx_processes[i].pid, signo) == -1) {
+                            ngx_log_error(NGX_LOG_ALERT, cycle->log, ngx_errno,
+                                          "kill(%d, %d) failed",
+                                          ngx_processes[i].pid, signo);
+                            continue;
+                        }
+
+                        if (signo != ngx_signal_value(NGX_REOPEN_SIGNAL)) {
+                            ngx_processes[i].exiting = 1;
                         }
                     }
+
                     signo = 0;
                 }
 
-                for (i = 0; i < ngx_last_process; i++) {
-
-                    if (ngx_processes[i].signal == 0) {
-                        continue;
-                    }
-
-                    ngx_log_debug2(NGX_LOG_DEBUG_CORE, cycle->log, 0,
-                                   "kill (" PID_T_FMT ", %d)" ,
-                                   ngx_processes[i].pid,
-                                   ngx_processes[i].signal);
-
-                    if (kill(ngx_processes[i].pid, ngx_processes[i].signal)
-                                                                         == -1)
-                    {
-                        ngx_log_error(NGX_LOG_ALERT, cycle->log, ngx_errno,
-                                      "kill(%d, %d) failed",
-                                      ngx_processes[i].pid,
-                                      ngx_processes[i].signal);
-                        continue;
-                    }
-
-                    if (ngx_processes[i].signal
-                                        != ngx_signal_value(NGX_REOPEN_SIGNAL))
-                    {
-                        ngx_processes[i].exiting = 1;
-                    }
-                }
-
                 if (ngx_reopen || ngx_reconfigure || ngx_timer) {
                     break;
                 }
diff --git a/src/core/nginx.h b/src/core/nginx.h
index 4596fd0..99423d3 100644
--- a/src/core/nginx.h
+++ b/src/core/nginx.h
@@ -2,7 +2,7 @@
 #define _NGINX_H_INCLUDED_
 
 
-#define NGINX_VER      "nginx/0.0.1"
+#define NGINX_VER      "nginx/0.0.2"
 #define NGINX_CONF     "nginx.conf"
 #define NGINX_PID      "nginx.pid"
 #define NGINX_NEW_PID  NGINX_PID ".newbin"
diff --git a/src/core/ngx_config.h b/src/core/ngx_config.h
index 3039d58..796d7a2 100644
--- a/src/core/ngx_config.h
+++ b/src/core/ngx_config.h
@@ -2,7 +2,10 @@
 #define _NGX_CONFIG_H_INCLUDED_
 
 
-#if 0
+#include <ngx_auto_config.h>
+
+
+#if 1
 /* STUB to allocate a big ngx_connections */
 #undef  FD_SETSIZE
 #define FD_SETSIZE  5000
@@ -53,9 +56,6 @@
 #define PTR_FMT  "%08X"
 
 
-#include <ngx_auto_config.h>
-
-
 #ifndef NGX_SERVER_ROOT
 #define NGX_SERVER_ROOT   "./"
 #if 0