summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorIgor Sysoev <igor@sysoev.ru>2004-11-26 09:33:59 +0000
committerIgor Sysoev <igor@sysoev.ru>2004-11-26 09:33:59 +0000
commit069899bfb5f62503122a57aeb5dc8ed492f14485 (patch)
treefd643b062444c8b07ae485e9e03d3f68530cc96c
parent6b8c4aebf072a4a3c0946f070a0c6b384b8ad8f2 (diff)
nginx-0.1.10-RELEASE importrelease-0.1.10
*) Bugfix: if the request without arguments contains "//", "/./", "/../" or "%XX" then the lost character in the request line was lost; the bug had appeared in 0.1.9. *) Bugfix: the fix in 0.1.9 for the files bigger than 2G on Linux did not work.
-rw-r--r--docs/xml/nginx/changes.xml28
-rw-r--r--src/core/nginx.h2
-rw-r--r--src/core/ngx_config.h14
-rw-r--r--src/http/ngx_http_parse.c2
-rw-r--r--src/os/unix/ngx_linux_config.h2
5 files changed, 38 insertions, 10 deletions
diff --git a/docs/xml/nginx/changes.xml b/docs/xml/nginx/changes.xml
index f460dbbac..7d2c1c247 100644
--- a/docs/xml/nginx/changes.xml
+++ b/docs/xml/nginx/changes.xml
@@ -6,6 +6,34 @@
title="nginx">
+<changes ver="0.1.10" date="26.11.2004">
+
+<change type="bugfix">
+<para lang="ru">
+если в запросе без аргументов есть "//", "/./", "/../" или "%XX",
+то терялся последний символ в строке запроса;
+ошибка появилась в 0.1.9.
+</para>
+<para lang="en">
+if the request without arguments contains "//", "/./", "/../" or "%XX"
+then the lost character in the request line was lost;
+bug appeared in 0.1.9.
+</para>
+</change>
+
+<change type="bugfix">
+<para lang="ru">
+исправление в версии 0.1.9 для файлов больше на Linux не работало.
+</para>
+<para lang="en">
+the fix in 0.1.9 for the files bigger than 2G on Linux
+did not work.
+</para>
+</change>
+
+</changes>
+
+
<changes ver="0.1.9" date="25.11.2004">
<change type="bugfix">
diff --git a/src/core/nginx.h b/src/core/nginx.h
index d737d6b63..9b61fc959 100644
--- a/src/core/nginx.h
+++ b/src/core/nginx.h
@@ -8,7 +8,7 @@
#define _NGINX_H_INCLUDED_
-#define NGINX_VER "nginx/0.1.9"
+#define NGINX_VER "nginx/0.1.10"
#define NGINX_VAR "NGINX"
#define NGX_NEWPID_EXT ".newbin"
diff --git a/src/core/ngx_config.h b/src/core/ngx_config.h
index 916b1b514..7d4463b09 100644
--- a/src/core/ngx_config.h
+++ b/src/core/ngx_config.h
@@ -11,13 +11,6 @@
#include <ngx_auto_headers.h>
-#if ((__GNU__ == 2) && (__GNUC_MINOR__ < 8))
-#define NGX_MAX_UINT32_VALUE 0xffffffffLL
-#else
-#define NGX_MAX_UINT32_VALUE 0xffffffff
-#endif
-
-
#if defined __DragonFly__ && !defined __FreeBSD__
#define __FreeBSD__ 4
#define __FreeBSD_version 480101
@@ -135,4 +128,11 @@ typedef long ngx_flag_t;
*/
+#if ((__GNU__ == 2) && (__GNUC_MINOR__ < 8))
+#define NGX_MAX_UINT32_VALUE 0xffffffffLL
+#else
+#define NGX_MAX_UINT32_VALUE 0xffffffff
+#endif
+
+
#endif /* _NGX_CONFIG_H_INCLUDED_ */
diff --git a/src/http/ngx_http_parse.c b/src/http/ngx_http_parse.c
index a4e7d8045..96ed49c74 100644
--- a/src/http/ngx_http_parse.c
+++ b/src/http/ngx_http_parse.c
@@ -686,7 +686,7 @@ ngx_int_t ngx_http_parse_complex_uri(ngx_http_request_t *r)
ch = *p++;
- while (p < r->uri_end && r->args_start == NULL) {
+ while (p <= r->uri_end && r->args_start == NULL) {
/*
* we use "ch = *p++" inside the cycle but this operation is safe
diff --git a/src/os/unix/ngx_linux_config.h b/src/os/unix/ngx_linux_config.h
index 620b59d8c..84eaf5c6a 100644
--- a/src/os/unix/ngx_linux_config.h
+++ b/src/os/unix/ngx_linux_config.h
@@ -61,7 +61,7 @@
#include <sys/sendfile.h>
#else
extern ssize_t sendfile(int s, int fd, int32_t *offset, size_t size);
-#define NGX_SENDFILE_LIMIT (NGX_MAX_UINT32_VALUE + 1)
+#define NGX_SENDFILE_LIMIT 0x80000000
#endif