Mercurial > hg > nginx
comparison src/core/ngx_parse.c @ 663:6d5c1535bb9d release-0.3.53
nginx-0.3.53-RELEASE import
*) Change: the "add_header" directive adds the string to 204, 301, and
302 responses.
*) Feature: the "server" directive in the "upstream" context supports
the "weight" parameter.
*) Feature: the "server_name" directive supports the "*" wildcard.
*) Feature: nginx supports the request body size more than 2G.
*) Bugfix: if a client was successfully authorized using "satisfy_any
on", then anyway the message "access forbidden by rule" was written
in the log.
*) Bugfix: the "PUT" method may erroneously not create a file and
return the 409 code.
*) Bugfix: if the IMAP/POP3 backend returned an error, then nginx
continued proxying anyway.
author | Igor Sysoev <igor@sysoev.ru> |
---|---|
date | Fri, 07 Jul 2006 16:33:19 +0000 |
parents | 39b7d7b33c91 |
children | d7abb9e669e2 |
comparison
equal
deleted
inserted
replaced
662:4c15f63afe65 | 663:6d5c1535bb9d |
---|---|
42 } | 42 } |
43 | 43 |
44 size *= scale; | 44 size *= scale; |
45 | 45 |
46 return size; | 46 return size; |
47 } | |
48 | |
49 | |
50 off_t | |
51 ngx_parse_offset(ngx_str_t *line) | |
52 { | |
53 u_char last; | |
54 off_t offset; | |
55 size_t len; | |
56 ngx_int_t scale; | |
57 | |
58 len = line->len; | |
59 last = line->data[len - 1]; | |
60 | |
61 switch (last) { | |
62 case 'K': | |
63 case 'k': | |
64 len--; | |
65 scale = 1024; | |
66 break; | |
67 | |
68 case 'M': | |
69 case 'm': | |
70 len--; | |
71 scale = 1024 * 1024; | |
72 break; | |
73 | |
74 case 'G': | |
75 case 'g': | |
76 len--; | |
77 scale = 1024 * 1024 * 1024; | |
78 break; | |
79 | |
80 default: | |
81 scale = 1; | |
82 } | |
83 | |
84 offset = ngx_atoof(line->data, len); | |
85 if (offset == NGX_ERROR) { | |
86 return NGX_ERROR; | |
87 } | |
88 | |
89 offset *= scale; | |
90 | |
91 return offset; | |
47 } | 92 } |
48 | 93 |
49 | 94 |
50 ngx_int_t | 95 ngx_int_t |
51 ngx_parse_time(ngx_str_t *line, ngx_int_t sec) | 96 ngx_parse_time(ngx_str_t *line, ngx_int_t sec) |