Mercurial > hg > nginx
diff src/core/nginx.c @ 191:71ce40b3c37b
nginx-0.0.1-2003-11-19-19:26:41 import
author | Igor Sysoev <igor@sysoev.ru> |
---|---|
date | Wed, 19 Nov 2003 16:26:41 +0000 |
parents | 02a715e85df1 |
children | 2357fa41738a |
line wrap: on
line diff
--- a/src/core/nginx.c Tue Nov 18 21:34:08 2003 +0000 +++ b/src/core/nginx.c Wed Nov 19 16:26:41 2003 +0000 @@ -50,18 +50,19 @@ }; -int ngx_max_module; -ngx_os_io_t ngx_io; +int ngx_max_module; +ngx_os_io_t ngx_io; -ngx_cycle_t *ngx_cycle; -ngx_pool_t *ngx_temp_pool; -ngx_array_t ngx_old_cycles; -ngx_event_t ngx_cleaner_event; +volatile ngx_cycle_t *ngx_cycle; +ngx_array_t ngx_old_cycles; + +static ngx_pool_t *ngx_temp_pool; +static ngx_event_t ngx_cleaner_event; /* STUB NAME */ -ngx_connection_t dumb; +static ngx_connection_t dumb; -int ngx_connection_counter; +u_int ngx_connection_counter; int restart; @@ -112,17 +113,16 @@ #if !(WIN32) - ccf = (ngx_core_conf_t *) ngx_get_conf(ngx_cycle->conf_ctx, - ngx_core_module); + ccf = (ngx_core_conf_t *) ngx_get_conf(cycle->conf_ctx, ngx_core_module); if (ccf->daemon != 0) { - if (ngx_daemon(ngx_cycle->log) == NGX_ERROR) { + if (ngx_daemon(cycle->log) == NGX_ERROR) { return 1; } } - if (dup2(ngx_cycle->log->file->fd, STDERR_FILENO) == -1) { - ngx_log_error(NGX_LOG_EMERG, ngx_cycle->log, ngx_errno, + if (dup2(cycle->log->file->fd, STDERR_FILENO) == -1) { + ngx_log_error(NGX_LOG_EMERG, cycle->log, ngx_errno, "dup2(STDERR) failed"); return 1; } @@ -132,22 +132,31 @@ /* life cycle */ for ( ;; ) { - /* STUB */ ngx_cycle->log->log_level = NGX_LOG_DEBUG; + /* STUB */ cycle->log->log_level = NGX_LOG_DEBUG; + +#if 0 - /* forks */ +#if !(WIN32) + ngx_spawn_process(cycle->log); +#endif + + stub_init(cycle); +#endif + + /* TODO: forks */ ngx_init_temp_number(); for (i = 0; ngx_modules[i]; i++) { if (ngx_modules[i]->init_child) { - if (ngx_modules[i]->init_child(ngx_cycle) == NGX_ERROR) { + if (ngx_modules[i]->init_child(cycle) == NGX_ERROR) { /* fatal */ exit(1); } } } - /* threads */ + /* TODO: threads */ restart = 0; rotate = 0; @@ -155,12 +164,12 @@ for ( ;; ) { for ( ;; ) { - ngx_log_debug(ngx_cycle->log, "worker cycle"); + ngx_log_debug(cycle->log, "worker cycle"); - ngx_process_events(ngx_cycle->log); + ngx_process_events(cycle->log); if (rotate) { - ngx_log_debug(ngx_cycle->log, "rotate"); + ngx_log_debug(cycle->log, "rotate"); file = cycle->open_files.elts; for (i = 0; i < cycle->open_files.nelts; i++) { @@ -176,7 +185,7 @@ if (fd == NGX_INVALID_FILE) { ngx_log_error(NGX_LOG_EMERG, - ngx_cycle->log, ngx_errno, + cycle->log, ngx_errno, ngx_open_file_n " \"%s\" failed", file[i].name.data); continue; @@ -185,14 +194,14 @@ #if (WIN32) if (ngx_file_append_mode(fd) == NGX_ERROR) { ngx_log_error(NGX_LOG_EMERG, - ngx_cycle->log, ngx_errno, + cycle->log, ngx_errno, ngx_file_append_mode_n " \"%s\" failed", file[i].name.data); if (ngx_close_file(fd) == NGX_FILE_ERROR) { ngx_log_error(NGX_LOG_EMERG, - ngx_cycle->log, ngx_errno, + cycle->log, ngx_errno, ngx_close_file_n " \"%s\" failed", file[i].name.data); } @@ -203,7 +212,7 @@ if (ngx_close_file(file[i].fd) == NGX_FILE_ERROR) { ngx_log_error(NGX_LOG_EMERG, - ngx_cycle->log, ngx_errno, + cycle->log, ngx_errno, ngx_close_file_n " \"%s\" failed", file[i].name.data); } @@ -213,14 +222,15 @@ } if (restart) { - ngx_log_debug(ngx_cycle->log, "restart"); + ngx_log_debug(cycle->log, "restart"); break; } } - cycle = ngx_init_cycle(ngx_cycle, ngx_cycle->log); + cycle = ngx_init_cycle(cycle, cycle->log); if (cycle == NULL) { + cycle = (ngx_cycle_t*) ngx_cycle; continue; } @@ -464,8 +474,6 @@ } } - stub_init(cycle); - if (old_cycle == NULL) { return cycle; } @@ -681,11 +689,13 @@ static void ngx_clean_old_cycles(ngx_event_t *ev) { int i, n, found, live; + ngx_log_t *log; ngx_cycle_t **cycle; - ngx_temp_pool->log = ngx_cycle->log; + log = ngx_cycle->log; + ngx_temp_pool->log = log; - ngx_log_debug(ngx_cycle->log, "clean old cycles"); + ngx_log_debug(log, "clean old cycles"); live = 0; @@ -701,7 +711,7 @@ for (n = 0; n < cycle[i]->connection_n; n++) { if (cycle[i]->connections[n].fd != -1) { found = 1; - ngx_log_debug(ngx_cycle->log, "live fd: %d" _ n); + ngx_log_debug(log, "live fd: %d" _ n); break; } } @@ -711,15 +721,15 @@ continue; } - ngx_log_debug(ngx_cycle->log, "clean old cycle: %d" _ i); + ngx_log_debug(log, "clean old cycle: %d" _ i); ngx_destroy_pool(cycle[i]->pool); cycle[i] = NULL; } - ngx_log_debug(ngx_cycle->log, "old cycles status: %d" _ live); + ngx_log_debug(log, "old cycles status: %d" _ live); if (live) { - ngx_log_debug(ngx_cycle->log, "TIMER"); + ngx_log_debug(log, "TIMER"); ngx_add_timer(ev, 30000); } else {