nginx-0.0.3-2004-04-16-09:14:16 import
diff --git a/src/core/nginx.c b/src/core/nginx.c
index 5f2603c..766257c 100644
--- a/src/core/nginx.c
+++ b/src/core/nginx.c
@@ -77,8 +77,6 @@
 ngx_pid_t   ngx_new_binary;
 ngx_int_t   ngx_inherited;
 
-ngx_uint_t  ngx_test_config;
-
 
 int main(int argc, char *const *argv)
 {
@@ -146,6 +144,7 @@
     }
 
     if (ngx_test_config) {
+        ngx_log_error(NGX_LOG_INFO, cycle->log, 0, "config syntax is ok");
         return 0;
     }
 
@@ -181,7 +180,12 @@
 
 #endif
 
-    ngx_master_process_cycle(cycle, &ctx);
+    if (ngx_process == NGX_PROCESS_MASTER) {
+        ngx_master_process_cycle(cycle, &ctx);
+
+    } else {
+        ngx_single_process_cycle(cycle, &ctx);
+    }
 
     return 0;
 }
diff --git a/src/core/ngx_cycle.c b/src/core/ngx_cycle.c
index 71a0b00..94414ae 100644
--- a/src/core/ngx_cycle.c
+++ b/src/core/ngx_cycle.c
@@ -13,6 +13,8 @@
 static ngx_pool_t     *ngx_temp_pool;
 static ngx_event_t     ngx_cleaner_event;
 
+ngx_uint_t             ngx_test_config;
+
 
 /* STUB NAME */
 static ngx_connection_t  dumb;
@@ -263,7 +265,7 @@
             }
         }
 
-        if (!failed) {
+        if (!ngx_test_config && !failed) {
             if (ngx_open_listening_sockets(cycle) == NGX_ERROR) {
                 failed = 1;
             }
diff --git a/src/core/ngx_cycle.h b/src/core/ngx_cycle.h
index 3cecbc5..6588a7a 100644
--- a/src/core/ngx_cycle.h
+++ b/src/core/ngx_cycle.h
@@ -52,6 +52,7 @@
 extern volatile ngx_cycle_t  *ngx_cycle;
 extern ngx_array_t            ngx_old_cycles;
 extern ngx_module_t           ngx_core_module;
+extern ngx_uint_t             ngx_test_config;
 
 
 #endif /* _NGX_CYCLE_H_INCLUDED_ */