Welcome to mirror list, hosted at ThFree Co, Russian Federation.

github.com/nginx/nginx.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
path: root/src/core
diff options
context:
space:
mode:
authorIgor Sysoev <igor@sysoev.ru>2005-10-07 17:30:52 +0400
committerIgor Sysoev <igor@sysoev.ru>2005-10-07 17:30:52 +0400
commit208eed22101e987a370036fa3851ce81c088c599 (patch)
tree40f2aa55bb0415eef08415373d380577eb18561f /src/core
parent12b7a12a2d2cbf4a98a23c2d6c0c06ff588d2d70 (diff)
nginx-0.3.0-RELEASE importrelease-0.3.0
*) Change: the 10-days live time limit of worker process was eliminated. The limit was introduced because of millisecond timers overflow.
Diffstat (limited to 'src/core')
-rw-r--r--src/core/nginx.c4
-rw-r--r--src/core/nginx.h2
-rw-r--r--src/core/ngx_connection.h2
-rw-r--r--src/core/ngx_core.h5
-rw-r--r--src/core/ngx_rbtree.c7
-rw-r--r--src/core/ngx_rbtree.h22
-rw-r--r--src/core/ngx_string.c9
-rw-r--r--src/core/ngx_times.c10
-rw-r--r--src/core/ngx_times.h16
9 files changed, 40 insertions, 37 deletions
diff --git a/src/core/nginx.c b/src/core/nginx.c
index 09edae5b8..cc13f75c1 100644
--- a/src/core/nginx.c
+++ b/src/core/nginx.c
@@ -218,7 +218,7 @@ main(int argc, char *const *argv)
if (cycle == NULL) {
if (ngx_test_config) {
ngx_log_error(NGX_LOG_EMERG, log, 0,
- "the configuration file \"%s\" test failed",
+ "the configuration file %s test failed",
init_cycle.conf_file.data);
}
@@ -227,7 +227,7 @@ main(int argc, char *const *argv)
if (ngx_test_config) {
ngx_log_error(NGX_LOG_INFO, log, 0,
- "the configuration file \"%s\" was tested successfully",
+ "the configuration file %s was tested successfully",
cycle->conf_file.data);
return 0;
}
diff --git a/src/core/nginx.h b/src/core/nginx.h
index 78e731967..734c4016f 100644
--- a/src/core/nginx.h
+++ b/src/core/nginx.h
@@ -8,7 +8,7 @@
#define _NGINX_H_INCLUDED_
-#define NGINX_VER "nginx/0.2.6"
+#define NGINX_VER "nginx/0.3.0"
#define NGINX_VAR "NGINX"
#define NGX_OLDPID_EXT ".oldbin"
diff --git a/src/core/ngx_connection.h b/src/core/ngx_connection.h
index e5df4372f..ca5b05325 100644
--- a/src/core/ngx_connection.h
+++ b/src/core/ngx_connection.h
@@ -39,7 +39,7 @@ struct ngx_listening_s {
/* should be here because of the AcceptEx() preread */
size_t post_accept_buffer_size;
/* should be here because of the deferred accept */
- time_t post_accept_timeout;
+ ngx_msec_t post_accept_timeout;
ngx_listening_t *previous;
ngx_connection_t *connection;
diff --git a/src/core/ngx_core.h b/src/core/ngx_core.h
index a32733996..27058bfc2 100644
--- a/src/core/ngx_core.h
+++ b/src/core/ngx_core.h
@@ -36,6 +36,7 @@ typedef void (*ngx_connection_handler_pt)(ngx_connection_t *c);
#include <ngx_atomic.h>
+#include <ngx_rbtree.h>
#include <ngx_time.h>
#include <ngx_socket.h>
#include <ngx_errno.h>
@@ -59,7 +60,6 @@ typedef void (*ngx_connection_handler_pt)(ngx_connection_t *c);
#if (NGX_PCRE)
#include <ngx_regex.h>
#endif
-#include <ngx_rbtree.h>
#include <ngx_radix_tree.h>
#include <ngx_times.h>
#include <ngx_inet.h>
@@ -81,4 +81,7 @@ typedef void (*ngx_connection_handler_pt)(ngx_connection_t *c);
#define CRLF "\x0d\x0a"
+#define ngx_abs(value) (((value) >= 0) ? (value) : - (value))
+
+
#endif /* _NGX_CORE_H_INCLUDED_ */
diff --git a/src/core/ngx_rbtree.c b/src/core/ngx_rbtree.c
index d3bb3a573..1ebc56a3b 100644
--- a/src/core/ngx_rbtree.c
+++ b/src/core/ngx_rbtree.c
@@ -47,7 +47,12 @@ ngx_rbtree_insert(ngx_rbtree_t **root, ngx_rbtree_t *sentinel,
temp = *root;
for ( ;; ) {
- if (node->key < temp->key) {
+
+ /* node->key < temp->key */
+
+ if ((ngx_rbtree_key_int_t) node->key - (ngx_rbtree_key_int_t) temp->key
+ < 0)
+ {
if (temp->left == sentinel) {
temp->left = node;
break;
diff --git a/src/core/ngx_rbtree.h b/src/core/ngx_rbtree.h
index c8b7092ff..d6803f912 100644
--- a/src/core/ngx_rbtree.h
+++ b/src/core/ngx_rbtree.h
@@ -12,14 +12,18 @@
#include <ngx_core.h>
+typedef ngx_uint_t ngx_rbtree_key_t;
+typedef ngx_int_t ngx_rbtree_key_int_t;
+
+
typedef struct ngx_rbtree_s ngx_rbtree_t;
struct ngx_rbtree_s {
- ngx_int_t key;
- ngx_rbtree_t *left;
- ngx_rbtree_t *right;
- ngx_rbtree_t *parent;
- char color;
+ ngx_rbtree_key_t key;
+ ngx_rbtree_t *left;
+ ngx_rbtree_t *right;
+ ngx_rbtree_t *parent;
+ char color;
};
@@ -32,11 +36,11 @@ void ngx_rbtree_delete(ngx_rbtree_t **root, ngx_rbtree_t *sentinel,
static ngx_inline ngx_rbtree_t *
ngx_rbtree_min(ngx_rbtree_t *node, ngx_rbtree_t *sentinel)
{
- while (node->left != sentinel) {
- node = node->left;
- }
+ while (node->left != sentinel) {
+ node = node->left;
+ }
- return node;
+ return node;
}
diff --git a/src/core/ngx_string.c b/src/core/ngx_string.c
index 575e60e84..93449abcc 100644
--- a/src/core/ngx_string.c
+++ b/src/core/ngx_string.c
@@ -57,6 +57,7 @@ ngx_pstrdup(ngx_pool_t *pool, ngx_str_t *src)
* %[0][width][u][x|X]L int64_t/uint64_t
* %[0][width|m][u][x|X]A ngx_atomic_int_t/ngx_atomic_uint_t
* %P ngx_pid_t
+ * %M ngx_msec_t
* %r rlim_t
* %p pointer
* %V pointer to ngx_str_t
@@ -66,9 +67,6 @@ ngx_pstrdup(ngx_pool_t *pool, ngx_str_t *src)
* %c char
* %% %
*
- * TODO:
- * %M ngx_msec_t
- *
* reserved:
* %t ptrdiff_t
* %S null-teminated wchar string
@@ -222,6 +220,11 @@ ngx_vsnprintf(u_char *buf, size_t max, const char *fmt, va_list args)
sign = 1;
break;
+ case 'M':
+ ui64 = (uint64_t) va_arg(args, ngx_msec_t);
+ sign = 0;
+ break;
+
case 'z':
if (sign) {
i64 = (int64_t) va_arg(args, ssize_t);
diff --git a/src/core/ngx_times.c b/src/core/ngx_times.c
index 3b0dc3759..c806d55f8 100644
--- a/src/core/ngx_times.c
+++ b/src/core/ngx_times.c
@@ -8,11 +8,9 @@
#include <ngx_core.h>
-ngx_epoch_msec_t ngx_elapsed_msec;
-ngx_epoch_msec_t ngx_old_elapsed_msec;
-ngx_epoch_msec_t ngx_start_msec;
+ngx_msec_t ngx_current_time;
-ngx_int_t ngx_gmtoff;
+ngx_int_t ngx_gmtoff;
static ngx_tm_t ngx_cached_gmtime;
@@ -91,9 +89,7 @@ ngx_time_init(void)
ngx_gettimeofday(&tv);
- ngx_start_msec = (ngx_epoch_msec_t) tv.tv_sec * 1000 + tv.tv_usec / 1000;
- ngx_old_elapsed_msec = 0;
- ngx_elapsed_msec = 0;
+ ngx_current_time = (ngx_msec_t) tv.tv_sec * 1000 + tv.tv_usec / 1000;
#if !(NGX_WIN32)
tzset();
diff --git a/src/core/ngx_times.h b/src/core/ngx_times.h
index 2959cc4b6..bbcb41348 100644
--- a/src/core/ngx_times.h
+++ b/src/core/ngx_times.h
@@ -39,21 +39,13 @@ extern ngx_thread_volatile ngx_str_t ngx_cached_err_log_time;
extern ngx_thread_volatile ngx_str_t ngx_cached_http_time;
extern ngx_thread_volatile ngx_str_t ngx_cached_http_log_time;
-extern ngx_epoch_msec_t ngx_start_msec;
+extern ngx_int_t ngx_gmtoff;
/*
- * msecs elapsed since ngx_start_msec in the current event cycle,
- * used in ngx_event_add_timer() and ngx_event_find_timer()
+ * milliseconds elapsed since epoch and truncated to ngx_msec_t,
+ * used in event timers
*/
-extern ngx_epoch_msec_t ngx_elapsed_msec;
-
-/*
- * msecs elapsed since ngx_start_msec in the previous event cycle,
- * used in ngx_event_expire_timers()
- */
-extern ngx_epoch_msec_t ngx_old_elapsed_msec;
-
-extern ngx_int_t ngx_gmtoff;
+extern ngx_msec_t ngx_current_time;
#endif /* _NGX_TIMES_H_INCLUDED_ */