nginx-0.0.1-2002-12-27-19:22:50 import
diff --git a/src/core/nginx.c b/src/core/nginx.c
index 17a3d10..0a0233f 100644
--- a/src/core/nginx.c
+++ b/src/core/nginx.c
@@ -2,6 +2,7 @@
 #include <nginx.h>
 
 #include <ngx_config.h>
+
 #include <ngx_string.h>
 #include <ngx_errno.h>
 #include <ngx_time.h>
@@ -12,6 +13,7 @@
 #include <ngx_server.h>
 #include <ngx_connection.h>
 #include <ngx_listen.h>
+#include <ngx_conf_file.h>
 
 /* STUB */
 #include <ngx_http.h>
@@ -62,6 +64,7 @@
                   ngx_create_array(ngx_pool, 10, sizeof(ngx_str_t)), 1);
     conf.pool = ngx_pool;
     conf.log = &ngx_log;
+    conf.type = NGX_CORE_MODULE_TYPE;
 
     conf_file.len = sizeof("nginx.conf") - 1;
     conf_file.data = "nginx.conf";
diff --git a/src/core/ngx_config_file.c b/src/core/ngx_conf_file.c
similarity index 98%
rename from src/core/ngx_config_file.c
rename to src/core/ngx_conf_file.c
index 79d7218..6b77121 100644
--- a/src/core/ngx_config_file.c
+++ b/src/core/ngx_conf_file.c
@@ -1,7 +1,7 @@
 
 #include <ngx_config.h>
 #include <ngx_core.h>
-#include <ngx_config_file.h>
+#include <ngx_conf_file.h>
 
 
 static int argument_number[] = {
@@ -75,7 +75,9 @@
         name = (ngx_str_t *) cf->args->elts;
 
         for (i = 0; ngx_modules[i]; i++) {
-            if (cf->type != ngx_modules[i]->type) {
+            if (ngx_modules[i]->type != NULL
+                && ngx_modules[i]->type != cf->type)
+            {
                 continue;
             }
 
@@ -88,7 +90,9 @@
                 if (name->len == cmd->name.len
                     && ngx_strcmp(name->data, cmd->name.data) == 0)
                 {
+
 ngx_log_debug(cf->log, "command '%s'" _ cmd->name.data);
+
                     cmd->set(cf, cmd, NULL);
                 }
 
diff --git a/src/core/ngx_config_file.h b/src/core/ngx_conf_file.h
similarity index 76%
rename from src/core/ngx_config_file.h
rename to src/core/ngx_conf_file.h
index 97a4d2a..cab61a3 100644
--- a/src/core/ngx_config_file.h
+++ b/src/core/ngx_conf_file.h
@@ -1,5 +1,5 @@
-#ifndef _NGX_HTTP_CONFIG_FILE_H_INCLUDED_
-#define _NGX_HTTP_CONFIG_FILE_H_INCLUDED_
+#ifndef _NGX_HTTP_CONF_FILE_H_INCLUDED_
+#define _NGX_HTTP_CONF_FILE_H_INCLUDED_
 
 
 #include <ngx_config.h>
@@ -12,21 +12,25 @@
 #include <ngx_array.h>
 
 
-#define NGX_CONF_NOARGS    1
-#define NGX_CONF_TAKE1     2
-#define NGX_CONF_TAKE2     4
+#define NGX_CONF_NOARGS      1
+#define NGX_CONF_TAKE1       2
+#define NGX_CONF_TAKE2       4
+#define NGX_CONF_ARGS_NUMBER 0x0ffff
+#define NGX_CONF_ANY         0x10000
+#define NGX_CONF_BLOCK       0x20000
 
-#define NGX_CONF_ANY       0x10000
-#define NGX_CONF_BLOCK     0x20000
 
-#define NGX_CONF_UNSET    -1
+#define NGX_CONF_UNSET       -1
 
 
+#define NGX_CONF_ERROR       (char *) -1
+
 #define NGX_CONF_BLOCK_DONE  1
 #define NGX_CONF_FILE_DONE   2
 
 
-#define NGX_CONF_ERROR       (char *) -1
+#define NGX_CORE_MODULE_TYPE 0x45524f43  /* "CORE" */
+
 
 typedef struct ngx_conf_s  ngx_conf_t;
 
@@ -80,4 +84,4 @@
 extern ngx_module_t *ngx_modules[];
 
 
-#endif _NGX_HTTP_CONFIG_FILE_H_INCLUDED_
+#endif _NGX_HTTP_CONF_FILE_H_INCLUDED_
diff --git a/src/core/ngx_modules.c b/src/core/ngx_modules.c
index ad9372b..e07c4e6 100644
--- a/src/core/ngx_modules.c
+++ b/src/core/ngx_modules.c
@@ -1,7 +1,7 @@
 
 #include <ngx_config.h>
 
-#include <ngx_config_file.h>
+#include <ngx_conf_file.h>
 
 
 extern ngx_module_t  ngx_http_header_filter_module;
diff --git a/src/http/modules/ngx_http_index_handler.c b/src/http/modules/ngx_http_index_handler.c
index faddd74..a858237 100644
--- a/src/http/modules/ngx_http_index_handler.c
+++ b/src/http/modules/ngx_http_index_handler.c
@@ -1,10 +1,12 @@
 
 #include <ngx_config.h>
+
 #include <ngx_core.h>
 #include <ngx_errno.h>
 #include <ngx_string.h>
 #include <ngx_files.h>
-#include <ngx_config_file.h>
+#include <ngx_conf_file.h>
+
 #include <ngx_http.h>
 #include <ngx_http_config.h>
 #include <ngx_http_index_handler.h>
diff --git a/src/http/ngx_http.h b/src/http/ngx_http.h
index b6bcfe7..4d41bf2 100644
--- a/src/http/ngx_http.h
+++ b/src/http/ngx_http.h
@@ -3,13 +3,14 @@
 
 
 #include <ngx_config.h>
+
 #include <ngx_types.h>
 #include <ngx_string.h>
 #include <ngx_table.h>
 #include <ngx_hunk.h>
 #include <ngx_files.h>
 #include <ngx_connection.h>
-#include <ngx_config_file.h>
+#include <ngx_conf_file.h>
 
 
 #define NGX_HTTP_VERSION_10       1000
diff --git a/src/http/ngx_http_config.c b/src/http/ngx_http_config.c
index eb09d57..205b41b 100644
--- a/src/http/ngx_http_config.c
+++ b/src/http/ngx_http_config.c
@@ -1,7 +1,13 @@
 
+/* TODO:
+    ngx_http_conf_ctx_t   ctx; on stack or in pool ? */
+
+
 #include <ngx_config.h>
+
 #include <ngx_core.h>
-#include <ngx_config_file.h>
+#include <ngx_conf_file.h>
+
 #include <ngx_http.h>
 #include <ngx_http_core.h>
 #include <ngx_http_config.h>
@@ -38,10 +44,11 @@
 ngx_module_t  ngx_http_module = {
     NULL,                                  /* module context */
     ngx_http_commands,                     /* module directives */
-    0,                                     /* module type */
+    NGX_CORE_MODULE_TYPE,                  /* module type */
     NULL                                   /* init module */
 };
 
+
 static ngx_command_t  ngx_http_core_commands[] = {
 
     {ngx_string("server"),
@@ -83,7 +90,7 @@
 {
     int  i;
     ngx_http_module_t    *module;
-    ngx_http_conf_ctx_t  *ctx;
+    ngx_http_conf_ctx_t   ctx;
 
     for (i = 0; ngx_modules[i]; i++) {
         if (ngx_modules[i]->type != NGX_HTTP_MODULE_TYPE) {
@@ -98,9 +105,9 @@
                   ngx_pcalloc(cf->pool, sizeof(void *) * ngx_http_max_module),
                   NGX_CONF_ERROR);
 
-    ctx->srv_conf = NULL;
-    ctx->loc_conf = null_loc_conf;
-    ctx->locations = NULL;
+    ctx.srv_conf = NULL;
+    ctx.loc_conf = null_loc_conf;
+    ctx.locations = NULL;
 
     for (i = 0; ngx_modules[i]; i++) {
         if (ngx_modules[i]->type != NGX_HTTP_MODULE_TYPE) {
@@ -116,7 +123,7 @@
         }
     }
 
-    cf->ctx = ctx;
+    cf->ctx = &ctx;
     cf->type = NGX_HTTP_MODULE_TYPE;
     return ngx_conf_parse(cf, NULL);
 }
diff --git a/src/http/ngx_http_core.c b/src/http/ngx_http_core.c
index 848dd8e..30d8329 100644
--- a/src/http/ngx_http_core.c
+++ b/src/http/ngx_http_core.c
@@ -1,7 +1,9 @@
 
 #include <ngx_config.h>
+
 #include <ngx_core.h>
-#include <ngx_config_file.h>
+#include <ngx_conf_file.h>
+
 #include <ngx_http.h>
 #include <ngx_http_core.h>
 #include <ngx_http_config.h>
diff --git a/src/http/ngx_http_header_filter.c b/src/http/ngx_http_header_filter.c
index aab4e52..3e85677 100644
--- a/src/http/ngx_http_header_filter.c
+++ b/src/http/ngx_http_header_filter.c
@@ -2,11 +2,13 @@
 #include <nginx.h>
 
 #include <ngx_config.h>
+
 #include <ngx_core.h>
 #include <ngx_string.h>
 #include <ngx_table.h>
 #include <ngx_hunk.h>
-#include <ngx_config_file.h>
+#include <ngx_conf_file.h>
+
 #include <ngx_http.h>
 #include <ngx_http_write_filter.h>
 
diff --git a/src/http/ngx_http_output_filter.c b/src/http/ngx_http_output_filter.c
index f195845..345a4f1 100644
--- a/src/http/ngx_http_output_filter.c
+++ b/src/http/ngx_http_output_filter.c
@@ -1,10 +1,12 @@
 
 #include <ngx_config.h>
+
 #include <ngx_core.h>
 #include <ngx_files.h>
 #include <ngx_string.h>
 #include <ngx_hunk.h>
-#include <ngx_config_file.h>
+#include <ngx_conf_file.h>
+
 #include <ngx_http.h>
 #include <ngx_http_config.h>
 #include <ngx_http_output_filter.h>
diff --git a/src/http/ngx_http_output_filter.h b/src/http/ngx_http_output_filter.h
index f409b54..d8df958 100644
--- a/src/http/ngx_http_output_filter.h
+++ b/src/http/ngx_http_output_filter.h
@@ -3,6 +3,7 @@
 
 
 #include <ngx_hunk.h>
+#include <ngx_conf_file.h>
 #include <ngx_http.h>
 
 
diff --git a/src/http/ngx_http_write_filter.c b/src/http/ngx_http_write_filter.c
index c4321c7..45f6887 100644
--- a/src/http/ngx_http_write_filter.c
+++ b/src/http/ngx_http_write_filter.c
@@ -1,8 +1,12 @@
 
 #include <ngx_config.h>
+
 #include <ngx_core.h>
 #include <ngx_hunk.h>
+#include <ngx_conf_file.h>
+
 #include <ngx_event_write.h>
+
 #include <ngx_http.h>
 #include <ngx_http_config.h>
 #include <ngx_http_write_filter.h>