diff options
Diffstat (limited to 'src/core')
| -rw-r--r-- | src/core/nginx.c | 6 | ||||
| -rw-r--r-- | src/core/nginx.h | 3 | ||||
| -rw-r--r-- | src/core/ngx_alloc.c | 14 | ||||
| -rw-r--r-- | src/core/ngx_config.h | 13 | ||||
| -rw-r--r-- | src/core/ngx_connection.h | 2 | ||||
| -rw-r--r-- | src/core/ngx_file.h | 10 | ||||
| -rw-r--r-- | src/core/ngx_inet.c | 18 | ||||
| -rw-r--r-- | src/core/ngx_inet.h | 8 | ||||
| -rw-r--r-- | src/core/ngx_string.h | 11 |
9 files changed, 69 insertions, 16 deletions
diff --git a/src/core/nginx.c b/src/core/nginx.c index b33ce293e..e654e7e75 100644 --- a/src/core/nginx.c +++ b/src/core/nginx.c @@ -32,6 +32,8 @@ ngx_log_t ngx_log; ngx_pool_t *ngx_pool; +int ngx_connection_counter; + ngx_array_t *ngx_listening_sockets; @@ -43,7 +45,9 @@ int main(int argc, char *const *argv) ngx_pool = ngx_create_pool(16 * 1024, &ngx_log); /* */ +#if !(WIN32) ngx_set_signals(&ngx_log); +#endif ngx_init_sockets(&ngx_log); @@ -73,6 +77,7 @@ int main(int argc, char *const *argv) return 0; } +#if !(WIN32) static void ngx_set_signals(ngx_log_t *log) { struct sigaction sa; @@ -86,6 +91,7 @@ static void ngx_set_signals(ngx_log_t *log) exit(1); } } +#endif static void ngx_open_listening_sockets(ngx_log_t *log) { diff --git a/src/core/nginx.h b/src/core/nginx.h index 30562c023..94d678fd2 100644 --- a/src/core/nginx.h +++ b/src/core/nginx.h @@ -5,4 +5,7 @@ #define NGINX_VER "nginx/0.0.1" +extern int ngx_connection_counter; + + #endif /* _NGINX_H_INCLUDED_ */ diff --git a/src/core/ngx_alloc.c b/src/core/ngx_alloc.c index 67adfcba1..36ad505b5 100644 --- a/src/core/ngx_alloc.c +++ b/src/core/ngx_alloc.c @@ -3,6 +3,7 @@ #include <ngx_errno.h> #include <ngx_log.h> +#include <ngx_string.h> #include <ngx_alloc.h> @@ -15,7 +16,7 @@ void *ngx_alloc(size_t size, ngx_log_t *log) ngx_log_error(NGX_LOG_EMERG, log, ngx_errno, "malloc() %d bytes failed", size); - ngx_log_debug(log, "malloc: %x:%d" _ p _ size); + ngx_log_debug(log, "malloc: %08x:%d" _ p _ size); return p; } @@ -52,12 +53,12 @@ void ngx_destroy_pool(ngx_pool_t *pool) ngx_pool_large_t *l; for (l = pool->large; l; l = l->next) { - ngx_log_debug(pool->log, "free: %x" _ l->alloc); + ngx_log_debug(pool->log, "free: %08x" _ l->alloc); free(l->alloc); } for (p = pool, n = pool->next; /* void */; p = n, n = n->next) { - ngx_log_debug(pool->log, "free: %x" _ p); + ngx_log_debug(pool->log, "free: %08x" _ p); free(p); if (n == NULL) @@ -74,9 +75,10 @@ void *ngx_palloc(ngx_pool_t *pool, size_t size) if (size <= NGX_MAX_ALLOC_FROM_POOL) { for (p = pool, n = pool->next; /* void */; p = n, n = n->next) { - if ((size_t) (p->end - p->last) >= size) { - m = p->last; - p->last += size; + if ((size_t) (p->end - ngx_align(p->last)) >= size) { + m = ngx_align(p->last); + p->last = ngx_align(p->last); + p->last += size ; return m; } diff --git a/src/core/ngx_config.h b/src/core/ngx_config.h index f7223fa45..09f73eb34 100644 --- a/src/core/ngx_config.h +++ b/src/core/ngx_config.h @@ -12,6 +12,13 @@ #define FD_SETSIZE 1024 +/* auto_conf */ +#define NGX_ALIGN (4 - 1) +#define NGX_ALIGN_TYPE unsigned + +#define ngx_align(p) (char *) (((NGX_ALIGN_TYPE) p + NGX_ALIGN) & ~NGX_ALIGN) + + #ifdef _WIN32 #define WIN32 1 @@ -25,9 +32,6 @@ #define ngx_inline __inline -#define ngx_memzero ZeroMemory - -#define ngx_close_socket closesocket #ifndef HAVE_INHERITED_NONBLOCK #define HAVE_INHERITED_NONBLOCK 1 @@ -66,9 +70,6 @@ #define ngx_inline inline -#define ngx_memzero bzero - -#define ngx_close_socket close #endif /* POSIX */ diff --git a/src/core/ngx_connection.h b/src/core/ngx_connection.h index b486f4be8..0ff09ffdf 100644 --- a/src/core/ngx_connection.h +++ b/src/core/ngx_connection.h @@ -44,6 +44,8 @@ struct ngx_connection_s { ngx_hunk_t *buffer; unsigned int post_accept_timeout; + int number; + unsigned unexpected_eof:1; }; diff --git a/src/core/ngx_file.h b/src/core/ngx_file.h index 0d6838686..d32c89bcd 100644 --- a/src/core/ngx_file.h +++ b/src/core/ngx_file.h @@ -4,12 +4,18 @@ #include <ngx_files.h> #include <ngx_log.h> +#include <ngx_string.h> typedef struct ngx_file_s ngx_file_t; struct ngx_file_s { - ngx_fd_t fd; - ngx_log_t *log; + ngx_fd_t fd; + ngx_str_t name; + ngx_file_info_t info; + + ngx_log_t *log; + + unsigned info_valid:1; }; diff --git a/src/core/ngx_inet.c b/src/core/ngx_inet.c new file mode 100644 index 000000000..aba990b41 --- /dev/null +++ b/src/core/ngx_inet.c @@ -0,0 +1,18 @@ + +#include <ngx_config.h> +#include <ngx_string.h> +#include <ngx_inet.h> + + +size_t ngx_inet_ntop(int family, char *addr, char *text, size_t len) +{ + if (family != AF_INET) + return 0; + + return ngx_snprintf(text, len > INET_ADDRSTRLEN ? INET_ADDRSTRLEN : len, + "%u.%u.%u.%u", + (unsigned char) addr[0], + (unsigned char) addr[1], + (unsigned char) addr[2], + (unsigned char) addr[3]); +} diff --git a/src/core/ngx_inet.h b/src/core/ngx_inet.h new file mode 100644 index 000000000..0766d1fac --- /dev/null +++ b/src/core/ngx_inet.h @@ -0,0 +1,8 @@ +#ifndef _NGX_INET_H_INCLUDED_ +#define _NGX_INET_H_INCLUDED_ + + +size_t ngx_inet_ntop(int family, char *addr, char *text, size_t len); + + +#endif /* _NGX_INET_H_INCLUDED_ */ diff --git a/src/core/ngx_string.h b/src/core/ngx_string.h index de9b14bb1..ddfdaccee 100644 --- a/src/core/ngx_string.h +++ b/src/core/ngx_string.h @@ -6,17 +6,24 @@ typedef struct { - int len; - char *data; + size_t len; + char *data; } ngx_str_t; #if (WIN32) + +#define ngx_memzero ZeroMemory + +#define strcasecmp stricmp + #define ngx_snprintf _snprintf #define ngx_vsnprintf _vsnprintf #else +#define ngx_memzero bzero + #define ngx_snprintf snprintf #define ngx_vsnprintf vsnprintf |
