nginx-0.0.3-2004-03-26-19:13:01 import
diff --git a/src/http/ngx_http_request.h b/src/http/ngx_http_request.h
index ad1afd9..e86034e 100644
--- a/src/http/ngx_http_request.h
+++ b/src/http/ngx_http_request.h
@@ -228,7 +228,7 @@
ngx_temp_file_t *temp_file;
ngx_chain_t *request_hunks;
ngx_hunk_t *request_body_hunk;
- size_t request_body_len;
+ size_t remaining_body_len;
void (*request_body_handler) (void *data);
void *data;
diff --git a/src/http/ngx_http_request_body.c b/src/http/ngx_http_request_body.c
index 99ac8aa..f6be9cf 100644
--- a/src/http/ngx_http_request_body.c
+++ b/src/http/ngx_http_request_body.c
@@ -19,6 +19,9 @@
size = r->header_in->last - r->header_in->pos;
if (size) {
+
+ /* there is the pre-read part of the request body */
+
ngx_test_null(h, ngx_calloc_hunk(r->pool), NGX_ERROR);
h->type = NGX_HUNK_IN_MEMORY|NGX_HUNK_TEMP;
@@ -28,19 +31,23 @@
ngx_alloc_link_and_set_hunk(r->request_hunks, h, r->pool, NGX_ERROR);
if (size >= r->headers_in.content_length_n) {
- r->header_in->pos += r->headers_in.content_length_n;
+ /* the whole request body was pre-read */
+
+ r->header_in->pos += r->headers_in.content_length_n;
return NGX_OK;
}
r->header_in->pos = r->header_in->last;
}
- r->request_body_len = r->headers_in.content_length_n - size;
- if (r->request_body_len < request_buffer_size + (request_buffer_size >> 2))
+ r->remaining_body_len = r->headers_in.content_length_n - size;
+
+ if (r->remaining_body_len
+ < request_buffer_size + (request_buffer_size >> 2))
{
- size = r->request_body_len;
+ size = r->remaining_body_len;
} else {
size = request_buffer_size;
@@ -116,8 +123,8 @@
size = r->request_body_hunk->end - r->request_body_hunk->last;
- if (size > r->request_body_len) {
- size = r->request_body_len;
+ if (size > r->remaining_body_len) {
+ size = r->remaining_body_len;
}
n = ngx_recv(c, r->request_body_hunk->last, size);
@@ -147,9 +154,9 @@
}
r->request_body_hunk->last += n;
- r->request_body_len -= n;
+ r->remaining_body_len -= n;
- if (r->request_body_len == 0) {
+ if (r->remaining_body_len == 0) {
break;
}
@@ -160,9 +167,9 @@
ngx_log_debug1(NGX_LOG_DEBUG_HTTP, c->log, 0,
"http client request body left " SIZE_T_FMT,
- r->request_body_len);
+ r->remaining_body_len);
- if (r->request_body_len) {
+ if (r->remaining_body_len) {
return NGX_AGAIN;
}