Commit Graph

1142 Commits

Author SHA1 Message Date
Igor Sysoev
d6477e6c78 bump version 2007-08-15 12:58:35 +00:00
Igor Sysoev
e101338634 upstream sendfile bit was overridden by r->connection->sendfile 2007-08-14 20:44:09 +00:00
Igor Sysoev
cc07609d11 fix long loop 2007-08-14 13:35:52 +00:00
Igor Sysoev
0b72c93a69 regex in valid_referers 2007-08-12 20:06:43 +00:00
Igor Sysoev
43c3bf42db regex in server_name 2007-08-12 19:48:12 +00:00
Igor Sysoev
307ab0ded6 fix building by bcc without PCRE 2007-08-12 15:25:09 +00:00
Igor Sysoev
242d1de5d0 style fix 2007-08-12 09:00:56 +00:00
Igor Sysoev
845f6d553a ignore meaningless bits in CIDR and warn about them 2007-08-10 13:13:28 +00:00
Igor Sysoev
7a8e33993a sort upstream weights 2007-08-09 15:28:17 +00:00
Igor Sysoev
6876bcdad6 backup upstream servers 2007-08-09 13:54:33 +00:00
Igor Sysoev
031a6e2906 set default listen() backlog to 511 on all platforms except FreeBSD 2007-08-09 13:32:21 +00:00
Igor Sysoev
3625a458d9 "down" server caused endless loop 2007-08-07 12:34:20 +00:00
Igor Sysoev
fda6a08f71 omit unnecessary conditions 2007-08-07 10:56:09 +00:00
Igor Sysoev
4fbd86829b discard request body before going to keep-alive state and use lingering timeouts 2007-08-07 10:53:27 +00:00
Igor Sysoev
5aca0e4678 omit unnecessary XSRETURN_EMPTY 2007-08-06 15:40:26 +00:00
Igor Sysoev
03afa34c96 $r->discard_request_body 2007-08-06 15:38:08 +00:00
Igor Sysoev
832571f0fc rename ngx_http_discard_body() to ngx_http_discard_request_body() 2007-08-06 15:37:22 +00:00
Igor Sysoev
ce6bcc0795 block reading for level events 2007-08-06 15:31:00 +00:00
Igor Sysoev
7ab4d9cb55 rename ngx_http_block_read() and ngx_http_test_read() to ..._reading() 2007-08-06 15:22:40 +00:00
Igor Sysoev
e5d4020612 discard request body in cycle 2007-08-06 15:18:24 +00:00
Igor Sysoev
b2d3a541ea move "Expires" header code to a separate function 2007-08-01 19:32:58 +00:00
Igor Sysoev
dbc02c324b move "Cache-Control" header code to specific handler 2007-08-01 15:24:06 +00:00
Igor Sysoev
c24bed89cd style fix 2007-08-01 14:22:12 +00:00
Igor Sysoev
82b5a31e2d use header specific handler in add_handler,
"Last-Modified" header handler
2007-08-01 14:01:30 +00:00
Igor Sysoev
329a23639f bump version 2007-07-30 09:23:26 +00:00
Igor Sysoev
8889b65711 named location 2007-07-29 18:11:39 +00:00
Igor Sysoev
a1df416d65 --sysconfdir=DIR 2007-07-29 18:05:45 +00:00
Igor Sysoev
0051242013 $is_args 2007-07-29 17:56:56 +00:00
Igor Sysoev
33fa6e30bc allow to set $args 2007-07-29 17:55:37 +00:00
Igor Sysoev
d12a5718d8 fair upstream weight balancer 2007-07-28 16:04:01 +00:00
Igor Sysoev
32b787560a fix case when two directives
proxy_pass   http://backend;
    proxy_pass   https://backend;
both use one port - 80 or 443, that was defined first.
2007-07-23 12:35:21 +00:00
Igor Sysoev
5bb2112c27 style fix 2007-07-23 12:32:34 +00:00
Igor Sysoev
7dbb7c881d bump version 2007-07-23 08:12:24 +00:00
Igor Sysoev
3f70782404 escape space, etc in $memcached_key 2007-07-22 19:18:59 +00:00
Igor Sysoev
37ae8ca0e1 omit unnecessary code 2007-07-22 19:11:52 +00:00
Igor Sysoev
f36ed5991a $nginx_version 2007-07-22 13:12:16 +00:00
Igor Sysoev
8e1c997ba0 exit cycle early,
found by Coverity's Scan
2007-07-19 19:12:36 +00:00
Igor Sysoev
66a874beb2 bump version 2007-07-17 10:15:07 +00:00
Igor Sysoev
f42ed05e9c Sun Studio on sparc uses different bit order 2007-07-17 09:23:23 +00:00
Igor Sysoev
8662b6bec5 msie_refresh should escape at least '"' to prevent XSS 2007-07-13 09:37:01 +00:00
Igor Sysoev
471b92e58f dav_access uses ngx_conf_set_access_slot() 2007-07-13 08:32:12 +00:00
Igor Sysoev
fbd9b4399f proxy_store and fastcgi_store were changed,
proxy_store_access and fastcgi_store_access were added
2007-07-13 08:30:34 +00:00
Igor Sysoev
852e458014 bump version 2007-07-12 11:35:57 +00:00
Igor Sysoev
58feb53eb4 proxy_store and fastcgi_store 2007-07-12 11:19:05 +00:00
Igor Sysoev
ef6e362d4e style fix 2007-07-11 20:12:26 +00:00
Igor Sysoev
19b093f23b style fix 2007-07-11 13:06:54 +00:00
Igor Sysoev
8b0a3d2810 fix segfault when session was freed twice 2007-07-10 21:04:37 +00:00
Igor Sysoev
f53d0f3177 proxy_ignore_client_abort, fastcgi_ignore_client_abort, and so on were
broken by r1111
2007-07-10 20:53:45 +00:00
Igor Sysoev
13cf4b82c5 bump version 2007-07-09 07:09:38 +00:00
Igor Sysoev
793e08317f fix headers split in FastCGI records 2007-07-09 06:30:53 +00:00
Igor Sysoev
7797887b1d omit unnecessary conditions 2007-07-08 09:38:37 +00:00
Igor Sysoev
4d2e0f0198 when the FastCGI header was split in records,
nginx passed garbage in the header to a client
2007-07-08 09:16:36 +00:00
Igor Sysoev
28eafa574e add comment 2007-07-06 11:28:20 +00:00
Igor Sysoev
28bb279593 bump version 2007-06-17 19:27:34 +00:00
Igor Sysoev
414e94f0e9 if a subrequest was finished and SSI was in middle of SSI command parsing
and the command was a fast subrequest then the second subrequest output
was just after first subrequest output and response part of main request
between the subrequests went after the second subrequest.
2007-06-17 18:10:43 +00:00
Igor Sysoev
de278125c1 if "<!--" was on edge of buf, then ssi_sharp_state was saved in ctx->saved
and if it was not reset, then any '#' was treated as SSI command start
2007-06-17 17:54:48 +00:00
Igor Sysoev
def1e7439f if subrequest response was buffered in file, then subrequest was finalized
with 0 code, ngx_http_writer() was not set, and response part in file was lost
2007-06-17 09:29:15 +00:00
Igor Sysoev
b5f30a87c5 fix building on threaded or multiplicity interpreter perl,
the bug was introduced by previous commit
2007-06-16 09:22:37 +00:00
Igor Sysoev
2756b42db2 set worker's perl $$ 2007-06-15 12:20:23 +00:00
Igor Sysoev
89aa3079bb bump version 2007-06-14 05:48:47 +00:00
Igor Sysoev
9d8a75c525 the "www.example.*" wildcard hash support 2007-06-11 19:49:22 +00:00
Igor Sysoev
ad39e5c746 bump version 2007-06-11 19:32:29 +00:00
Igor Sysoev
8ec084b9dc bump version 2007-06-08 05:43:05 +00:00
Igor Sysoev
6d9a66078a fix building --without-http_rewrite_module, the bug was introduced in r1236 2007-06-08 05:40:59 +00:00
Igor Sysoev
84cc2cca53 style fix 2007-06-07 14:33:02 +00:00
Igor Sysoev
6c8e74bcd4 style fix 2007-06-07 12:20:34 +00:00
Igor Sysoev
35e5db1c6b namespace may be set via $memcached_key 2007-06-07 12:15:27 +00:00
Igor Sysoev
8e3151dce5 strstr() -> strchr() 2007-06-06 12:24:10 +00:00
Igor Sysoev
6633572f31 use pointer to an array instead of array for inclusive locations inside location 2007-06-05 11:42:59 +00:00
Igor Sysoev
c915106f20 optimize regex location search 2007-06-05 06:44:08 +00:00
Igor Sysoev
bf15d70e10 forbid alias inside location given by regular expression 2007-06-04 20:45:45 +00:00
Igor Sysoev
62864d1e1e fix ssl_verify_client for HTTP/0.9 2007-06-04 20:40:03 +00:00
Igor Sysoev
55a42ca586 style fix 2007-06-04 20:00:06 +00:00
Igor Sysoev
1c0e3e0dd0 bump version 2007-06-04 16:14:33 +00:00
Igor Sysoev
813296e5bb fastcgi_catch_stderr 2007-06-04 13:52:47 +00:00
Igor Sysoev
8f0c87f384 PERL_SYS_TERM() should be called once on exit only, this fixes the message
panic: MUTEX_LOCK (22) [op.c:352].
BEGIN failed--compilation aborted.
... [alert] ... perl_parse() failed: 9
Scalars leaked: 2

on threaded perl during second reconfiguration.

PERL_SYS_INIT() should be called once too.
2007-05-29 18:48:42 +00:00
Igor Sysoev
e60303cdca SNI support 2007-05-29 15:21:09 +00:00
Igor Sysoev
f44ea0bbf6 bump version 2007-05-29 12:15:04 +00:00
Igor Sysoev
a9a4672b9f bump version 2007-05-28 19:03:06 +00:00
Igor Sysoev
c02ed54c4f use stable search where it is required 2007-05-21 14:09:12 +00:00
Igor Sysoev
0687cb9d99 fix worker endless loop on 64-bit platform if 33+ backend has fall 2007-05-21 13:48:14 +00:00
Igor Sysoev
5f6989e953 style fix 2007-05-17 18:07:28 +00:00
Igor Sysoev
932b32628e bump version 2007-05-07 14:39:11 +00:00
Igor Sysoev
08d068f943 limit minimal pool size 2007-05-07 09:20:42 +00:00
Igor Sysoev
5a8bc36118 style fix 2007-05-07 08:49:15 +00:00
Igor Sysoev
c9b57dc081 sendfile_max_chunk 2007-05-07 06:33:39 +00:00
Igor Sysoev
544e9f1fd7 optimize HTTP method parsing for i386 and amd64 2007-05-07 06:27:14 +00:00
Igor Sysoev
5b1cf0d91f fix multipart ranges trailing 2007-05-06 18:15:32 +00:00
Igor Sysoev
b09c269386 style fix: change variable name 2007-05-05 06:07:11 +00:00
Igor Sysoev
d1e38e8788 fix building by msvc 2007-05-05 05:40:29 +00:00
Igor Sysoev
75c3272a1c fix segfault introduced in r1190 2007-05-02 09:02:23 +00:00
Igor Sysoev
dbdeafe6a0 fix segfault or parsing error in '<!--# if expr="$var = /" -->' 2007-05-02 08:07:37 +00:00
Igor Sysoev
9c710c0569 allow to "set" $http_, $sent_http_, and $upstream_http_ variables 2007-05-01 19:58:45 +00:00
Igor Sysoev
359561d6cc bump version 2007-04-24 06:26:56 +00:00
Igor Sysoev
29f5912635 $upstream_addr 2007-04-23 16:56:17 +00:00
Igor Sysoev
8a19bff2a5 proxy_headers_hash_max_size and proxy_headers_hash_bucket_size 2007-04-22 20:21:59 +00:00
Igor Sysoev
b4ccb9f5bd $request_time has millisecond precision 2007-04-21 07:50:19 +00:00
Igor Sysoev
6047281208 rename $r->rflush to $r->flush 2007-04-21 07:43:23 +00:00
Igor Sysoev
e548a510c4 bump version 2007-04-19 18:23:54 +00:00
Igor Sysoev
6d939760c6 style fix: remove trailing spaces 2007-04-19 18:07:39 +00:00
Igor Sysoev
4c39648150 $upstream_http_... should be uncacheable 2007-04-19 17:55:19 +00:00
Igor Sysoev
d9bb8e3894 ngx_http_sub_filter_module 2007-04-19 17:54:23 +00:00
Igor Sysoev
16eab66314 style fix: rename functions 2007-04-19 06:27:10 +00:00
Igor Sysoev
e0f866273f store the upstream states before X-Accel-Redirect to a next upstream 2007-04-18 20:23:19 +00:00
Igor Sysoev
fb958946b5 style fix: remove tabs 2007-04-18 15:21:28 +00:00
Igor Sysoev
e5e4c0000d fix segfault when
*) perl was built without multiplicity
*) when configuration was invalid
2007-04-18 11:28:11 +00:00
Igor Sysoev
de92bcccee set nginx_stash after reconfiguration in single interpreter perl 2007-04-18 09:23:35 +00:00
Igor Sysoev
2723361e76 $upstream_http_... variables 2007-04-10 07:08:06 +00:00
Igor Sysoev
da4b660274 use 60 seconds interval but not 61 seconds 2007-04-03 21:54:13 +00:00
Igor Sysoev
52a282d04b bump version 2007-04-02 10:50:18 +00:00
Igor Sysoev
7a5886052f *) introduce ngx_strchr()
*) test server_name for '/': it's common configuration error when
   trailing ';' is omitted and a next directive is treated as server_name
2007-04-02 06:27:30 +00:00
Igor Sysoev
10b9894bee style fix 2007-04-02 05:43:21 +00:00
Igor Sysoev
ceab369f44 disable $document_root variable in the "root/alias" directive 2007-04-01 09:03:14 +00:00
Igor Sysoev
24a95944a7 separate ngx_http_upstream_test_connect() and
use it in ngx_http_upstream_process_header() path too
2007-03-31 15:37:09 +00:00
Igor Sysoev
2c8f05737a flush nocachable variables before ngx_http_script_run() 2007-03-30 19:00:34 +00:00
Igor Sysoev
3e933d2919 disable TRACE method 2007-03-30 18:59:26 +00:00
Igor Sysoev
9b6548f4e4 style fix 2007-03-29 18:53:34 +00:00
Igor Sysoev
eba03e6bea the "include" support inside the "types" directive 2007-03-29 10:27:24 +00:00
Igor Sysoev
4ca98f65a5 style fix 2007-03-28 14:38:33 +00:00
Igor Sysoev
035b9c5d24 bump version 2007-03-26 14:52:52 +00:00
Igor Sysoev
7755b904ce ip_hash used wrong byte order 2007-03-23 12:52:33 +00:00
Igor Sysoev
77d7f80285 fix segfault if upstream sends trailing ";" in "charset=" 2007-03-23 11:33:47 +00:00
Igor Sysoev
e47cad4140 fix "zero size buf" if request body file is multiple of 32K and FastCGI is used 2007-03-21 13:30:24 +00:00
Igor Sysoev
65560f40c0 bump version 2007-03-19 14:58:30 +00:00
Igor Sysoev
4ddeff4956 close keep-alive connections in the shuting down processes 2007-03-19 13:20:15 +00:00
Igor Sysoev
6c7f369010 bump version 2007-03-06 12:59:58 +00:00
Igor Sysoev
bd99c49794 avoid endless loop 2007-03-06 11:02:35 +00:00
Igor Sysoev
f259a3f910 use the contemporary directives 2007-02-21 11:50:39 +00:00
Igor Sysoev
b59f369077 bump version 2007-02-19 13:42:48 +00:00
Igor Sysoev
cf72935bc3 a client address must be allocated from a connection pool
to live through the keep-alive requests
2007-02-17 21:06:47 +00:00
Igor Sysoev
5473662c94 COPY and MOVE
fix PUT and DELETE to conform to WebDAV specification
2007-02-16 12:16:25 +00:00
Igor Sysoev
d74b66c82c finalize request to allow post_action 2007-02-15 18:53:48 +00:00
Igor Sysoev
37a6905cb1 fix broken values, debug logging, and style fix 2007-02-15 15:05:26 +00:00
Igor Sysoev
e8722b8b98 optimize $http_x_forwarded_for 2007-02-15 15:04:36 +00:00
Igor Sysoev
cf815023fc fix format 2007-02-15 14:13:24 +00:00
Igor Sysoev
9d58e4bed3 if client closes a connection prematurely, then epoll (at least
in Linux 2.6.16) sends EPOLLERR|EPOLLHUP|EPOLLIN only and writer
does not know about the error
2007-02-15 10:02:34 +00:00
Igor Sysoev
7b2d87ffa0 add debug logging 2007-02-15 10:00:59 +00:00
Igor Sysoev
722231f407 ngx_strcasecmp()/ngx_strncasecmp() 2007-02-14 18:51:19 +00:00
Igor Sysoev
e5234d3e05 bump version 2007-02-12 15:37:36 +00:00
Igor Sysoev
f15b839a88 log a right subrequest 2007-02-09 13:49:14 +00:00
Igor Sysoev
f0b150faf8 fix segfault when $fastcgi_script_name is used in access_log
and there was bad request (400)
2007-02-09 11:56:23 +00:00
Igor Sysoev
e980185ee0 bump version 2007-02-05 14:49:52 +00:00
Igor Sysoev
0762f4e749 fix several ranges 2007-02-04 18:40:47 +00:00
Igor Sysoev
e31625b60e use ngx_dir_access() to enable search bits for directory 2007-01-29 12:25:44 +00:00
Igor Sysoev
e99305be7a eliminate the useless space symbol 2007-01-29 11:54:36 +00:00
Igor Sysoev
8b57df9480 log a real response error code instead of "0" 2007-01-29 11:53:23 +00:00
Igor Sysoev
92929b9799 bump version 2007-01-25 22:19:34 +00:00
Igor Sysoev
5f8e7365a1 bump version 2007-01-25 21:45:22 +00:00
Igor Sysoev
3dc4fdf4e0 $memcached_key 2007-01-25 08:45:41 +00:00
Igor Sysoev
cd5b99a045 undo "client_body_in_file_only any"
and introduce "client_body_in_file_only clean"

introduce ngx_pool_delete_file() to not break a possible third-party
ngx_pool_cleanup_file() usage that may lead to an removal of the useful files

delete unnecessary ngx_http_finalize_request_body()
2007-01-25 08:45:04 +00:00
Igor Sysoev
3a58cc90b5 fix "access_log off" 2007-01-24 09:15:25 +00:00
Igor Sysoev
64304df431 client_body_in_file_only any 2007-01-24 09:14:08 +00:00
Igor Sysoev
604a7d1da4 delete temporary file for incomplete small request body 2007-01-23 12:55:23 +00:00
Igor Sysoev
d0863c106d log a failure of the writing to access_log once per minute 2007-01-21 19:01:01 +00:00
Igor Sysoev
300de4fb61 allow "sendfile" in "if" context 2007-01-21 17:42:28 +00:00
Igor Sysoev
8885f8736c env 2007-01-20 19:26:48 +00:00
Igor Sysoev
354a4ef4e5 bump version 2007-01-19 19:48:48 +00:00
Igor Sysoev
36588962aa fix segfault when a request body fits in r->header_in and
the body will be written to file
2007-01-19 16:13:15 +00:00
Igor Sysoev
8ff1e3251c fix segfault when client_body_in_file_only is on, the body is not passed
to upstream, and nginx tries next upstream
2007-01-19 12:57:02 +00:00
Igor Sysoev
ae2006b2fe a non-active client connection must not closed after send timeout 2007-01-19 12:22:32 +00:00
Igor Sysoev
66f76d2f72 style and comment fix 2007-01-19 11:35:26 +00:00
Igor Sysoev
8d6de94f5b if client closes a connection prematurely, then epoll (at least
in Linux 2.6.18) sends EPOLLERR|EPOLLHUP|EPOLLIN only and writer
does not know about the error
2007-01-19 08:10:06 +00:00
Igor Sysoev
e95ea5b878 the PUTing to collection must return NGX_HTTP_BAD_REQUEST 2007-01-18 21:14:46 +00:00
Igor Sysoev
56331ba499 the "Overwrite" header line 2007-01-18 21:11:23 +00:00
Igor Sysoev
f5a359bdec add size, access, and mtime to ngx_walk_tree() 2007-01-18 21:04:31 +00:00
Igor Sysoev
da7281a6da NGX_HTTP_PRECONDITION_FAILED 2007-01-18 20:51:51 +00:00
Igor Sysoev
5fdb179a60 update nginx.xs to ngx_open_file(name, mode, create, access) 2007-01-18 20:48:03 +00:00
Igor Sysoev
50034b856c ngx_open_file(name, access, create) > ngx_open_file(name, mode, create, access) 2007-01-18 20:15:09 +00:00
Igor Sysoev
fe1cb8c3ac rename mode to access 2007-01-18 19:52:18 +00:00
Igor Sysoev
ecef14e307 style fix 2007-01-17 10:50:52 +00:00
Igor Sysoev
66af04752f fix debug logging 2007-01-16 20:43:36 +00:00
Igor Sysoev
03c9cb7afc fix comparison 2007-01-16 19:01:10 +00:00
Igor Sysoev
c326529feb bump version 2007-01-16 11:04:51 +00:00
Igor Sysoev
8488a1ce11 allow the upstream modules to send a header only 2007-01-15 17:12:43 +00:00
Igor Sysoev
4502bf57b3 add debug logging for FastCGI zero size buf alert 2007-01-15 16:00:51 +00:00
Igor Sysoev
ec3cabdcd9 ngx_strn2cmp() > ngx_memn2cmp() 2007-01-12 21:58:02 +00:00
Igor Sysoev
a1e82cca22 style fix 2007-01-12 21:57:20 +00:00
Igor Sysoev
805706a20f fix duplicate rbtree keys case 2007-01-12 20:38:17 +00:00
Igor Sysoev
6043c80639 style fix: remove tabs 2007-01-12 20:26:39 +00:00
Igor Sysoev
1279b049b4 stop rbtree search early if equal hash was found 2007-01-11 16:57:30 +00:00
Igor Sysoev
ec582de2dd test length of variable and number of connections 2007-01-11 16:50:06 +00:00
Igor Sysoev
2c32b5a1d2 fix segfault 2007-01-09 22:04:40 +00:00
Igor Sysoev
fe9a066d69 fix connection counter in subrequests 2007-01-09 20:58:41 +00:00
Igor Sysoev
36fefe3cfe fix typo 2007-01-09 20:57:49 +00:00
Igor Sysoev
e98b867409 bump version 2007-01-09 20:57:24 +00:00
Igor Sysoev
a3ec505730 do not count connection for subrequest 2007-01-09 16:26:53 +00:00
Igor Sysoev
4e77a2bb83 pass the inherited shm_zone data 2007-01-09 15:59:20 +00:00
Igor Sysoev
1691aaf290 correct an error log message 2007-01-08 18:23:38 +00:00
Igor Sysoev
2316936389 use right status code 2007-01-08 18:22:06 +00:00
Igor Sysoev
36b1edca84 undo r979 2007-01-08 18:20:03 +00:00
Igor Sysoev
eb9b9d1c95 new syntax 2007-01-07 18:52:34 +00:00
Igor Sysoev
e7b5df16ba ngx_http_realip_module must return NGX_DECLINED 2007-01-07 18:45:55 +00:00
Igor Sysoev
6eee80156f count connection once per request 2007-01-07 17:47:17 +00:00
Igor Sysoev
d5ca16cdd4 ngx_http_variable_binary_remote_addr() 2007-01-07 13:36:56 +00:00
Igor Sysoev
e6bf2be77e $binary_remote_addr 2007-01-07 13:35:08 +00:00
Igor Sysoev
ba658fc603 fix key length and alignment 2007-01-07 09:18:26 +00:00
Igor Sysoev
138e384c44 ngx_http_limit_zone_module 2007-01-06 18:52:46 +00:00
Igor Sysoev
f250a6dfba fix segfault 2007-01-06 13:01:26 +00:00
Igor Sysoev
3364dc6eb7 move the session cache callbacks to the ngx_openssl_module 2007-01-03 15:25:40 +00:00
Igor Sysoev
528cdb7c2c ssl_session_cache 2007-01-02 23:55:05 +00:00
Igor Sysoev
daf66de4a5 style fix: scf > sscf 2007-01-02 23:50:10 +00:00
Igor Sysoev
018b2a6376 style fix 2007-01-02 23:41:54 +00:00
Igor Sysoev
ebf2bbc310 ngx_ssl_get_server_conf() 2007-01-02 23:37:25 +00:00
Igor Sysoev
e974a72404 move ranges array to ngx_http_range_filter_ctx_t 2006-12-29 08:02:31 +00:00
Igor Sysoev
6fd25e105c support ranges for single memory buffer 2006-12-29 07:47:37 +00:00
Igor Sysoev
818700cfcf fix the previous commit 2006-12-29 07:01:11 +00:00
Igor Sysoev
0e8fc7a6b4 fix range in $r->sendfile 2006-12-28 20:55:25 +00:00
Igor Sysoev
c49d3ec7d4 style fix 2006-12-28 20:12:03 +00:00
Igor Sysoev
1980cc13f1 recursive DELETE 2006-12-25 12:38:44 +00:00
Igor Sysoev
d46aee8242 limit the ngx_http_index_module methods to GET, HEAD and POST 2006-12-25 12:37:04 +00:00
Igor Sysoev
26db569df0 style fix: remove trailing spaces 2006-12-24 21:07:34 +00:00
Igor Sysoev
ec810aef85 bump version 2006-12-24 18:42:26 +00:00
Igor Sysoev
17b0e8722a fix segfault 2006-12-22 13:05:07 +00:00
Igor Sysoev
4e08b9c17a fix debug log 2006-12-20 19:38:06 +00:00
Igor Sysoev
03011fa512 fix segfault when $host is used and
*) request is "GET http://host" without CR or LF, or timed out
*) request is "GET      http://host" with a large blank space
2006-12-15 10:24:57 +00:00
Igor Sysoev
c996d3250d bump version 2006-12-14 23:22:34 +00:00
Igor Sysoev
f367b11a62 fix segfault when $host is used and request is "GET http://host HTTP/1.0" 2006-12-14 22:42:52 +00:00
Igor Sysoev
55269a70cf allow "perl" inside "limit_except" 2006-12-14 22:13:33 +00:00
Igor Sysoev
acbcd9da7f DELETE may not have the "Depth" header 2006-12-14 22:12:42 +00:00
Igor Sysoev
fc99b009bc fix number of arguments 2006-12-14 22:11:52 +00:00
Igor Sysoev
6778476a66 bump version 2006-12-13 15:11:27 +00:00
Igor Sysoev
db4e43c225 fix msvc build failure 2006-12-13 15:06:46 +00:00
Igor Sysoev
b6ef94f49b $r->status 2006-12-13 13:49:56 +00:00
Igor Sysoev
5a4344f5f8 add HTTP response codes 2006-12-13 12:31:58 +00:00
Igor Sysoev
df88a81783 fix ngx_http_perl_sleep_handler() 2006-12-13 12:30:57 +00:00
Igor Sysoev
65b8a197b9 $r->variable() supports perl only variables 2006-12-12 22:06:03 +00:00
Igor Sysoev
e773324c30 $r->sleep() 2006-12-12 20:59:24 +00:00
Igor Sysoev
332efbc412 style fix 2006-12-12 20:58:41 +00:00
Igor Sysoev
7e8dd2578a fix $r->has_request_body() 2006-12-12 20:57:48 +00:00
Igor Sysoev
d1985e91f5 axe ngx_http_perl_cleanup_sv(): all SVs should be freed
by perl_free() in ngx_http_perl_cleanup_perl()
2006-12-12 20:06:04 +00:00
Igor Sysoev
e8c5dc6ff4 $r->log_error() 2006-12-12 19:33:13 +00:00
Igor Sysoev
bf3aaac7ac rewritten upstream 2006-12-12 16:46:16 +00:00
Igor Sysoev
63ba5a61b5 fix highly unlikely bug 2006-12-12 15:46:53 +00:00
Igor Sysoev
169efce947 bump version 2006-12-12 14:17:04 +00:00
Igor Sysoev
2fb2a8dbf9 upstream name was tried to resolve 2006-12-11 15:12:07 +00:00
Igor Sysoev
b8989b9694 bump version 2006-12-11 11:05:54 +00:00
Igor Sysoev
5d118d3f77 fix fastcgi and memcached upstreams 2006-12-11 08:59:30 +00:00
Igor Sysoev
cf100a7827 fix post_action for disconnected client 2006-12-11 08:31:54 +00:00
Igor Sysoev
e60b99f1d0 TCP upstreams always used the first TCP upstream with the same name 2006-12-11 08:25:03 +00:00
Igor Sysoev
a19ed3eddd fix when last htpasswd line has no CR or LF 2006-12-06 14:17:42 +00:00
Igor Sysoev
8f98581bbf the previous fix does not actually fix overflow 2006-12-06 11:33:18 +00:00
Igor Sysoev
8b6844c747 fix msec overflow 2006-12-05 20:30:05 +00:00
Igor Sysoev
67effaff99 bump version 2006-12-04 17:05:07 +00:00
Igor Sysoev
3d2fd18a39 upstream choice modules 2006-12-04 16:46:13 +00:00
Igor Sysoev
90d7bb2b13 the PERL_NO_GET_CONTEXT is actually required, see perlguts 2006-11-28 13:20:34 +00:00
Igor Sysoev
a8c54c082c axe old % log format 2006-11-27 14:46:15 +00:00
Igor Sysoev
f9ad2f1545 bump version to 0.5.0 2006-11-27 14:34:42 +00:00
Igor Sysoev
9a29d129f2 add comment 2006-11-26 16:56:41 +00:00
Igor Sysoev
36d520d686 fix segfaults in future workers those will use old configuration,
if new configuration failed
2006-11-26 15:35:02 +00:00
Igor Sysoev
f9b7db5aaa Axe several perl interpreter instances: they may be useful in currently
unsupported threaded environment, but now they complicate code:
*) perl_clone() requires at least duplicating nginx stash;
*) the multiplicity requires to re-evalute all precompiled subroutines
   and nginx stash in new interpreter context.
2006-11-26 14:35:27 +00:00
Igor Sysoev
ac6e1c1254 add debug logging 2006-11-25 23:27:34 +00:00
Igor Sysoev
fab5acdd28 fix recursive perl_set variable call 2006-11-25 23:27:06 +00:00
Igor Sysoev
b5602b113a it seems the PERL_NO_GET_CONTEXT was needed to disable warnings only 2006-11-25 23:24:24 +00:00
Igor Sysoev
e9726bf7f4 style fix 2006-11-25 23:23:27 +00:00
Igor Sysoev
446abc3b4d axe unused code 2006-11-24 13:19:13 +00:00
Igor Sysoev
95ead46111 use host part in URL 2006-11-23 20:20:23 +00:00
Igor Sysoev
eb885fafd2 fix negative upstream response time 2006-11-15 20:51:07 +00:00
Igor Sysoev
c28473eef4 bump version 2006-11-15 20:07:57 +00:00
Igor Sysoev
ae5db1d400 fix add_before_body without add_after_body 2006-11-14 13:15:08 +00:00
Igor Sysoev
58364233a6 debug log should not be under rewrite_log control 2006-11-14 12:45:03 +00:00
Igor Sysoev
8365f731bf add more WebDAV methods 2006-11-14 12:43:48 +00:00
Igor Sysoev
e927b1e58a allow proxy_pass inside limit_except 2006-11-14 12:43:14 +00:00
Igor Sysoev
81188729e6 charset could not be set for ngx_http_autoindex_module responses 2006-11-13 20:53:37 +00:00
Igor Sysoev
12c94ae212 fix big client body receiving with deferred accept() 2006-11-13 20:40:17 +00:00
Igor Sysoev
5fd6d349c8 fix subrequest limit 2006-11-02 13:48:28 +00:00
Igor Sysoev
85300c3f14 fix subrequest limit 2006-11-02 13:38:25 +00:00
Igor Sysoev
cf5836e850 bump version 2006-10-31 15:41:41 +00:00
Igor Sysoev
eccb108f5c $r->variable 2006-10-31 14:46:48 +00:00
Igor Sysoev
e9b7809178 style fix 2006-10-31 12:30:24 +00:00
Igor Sysoev
bc808a7bab style fix 2006-10-31 12:27:32 +00:00
Igor Sysoev
addd3c8676 treat '\' as special character in win32 only 2006-10-30 20:36:54 +00:00
Igor Sysoev
020ffea637 high level HTTP buffered flags should be on per-subrequest basis,
this fix a bug in SSI when a big static file is included
2006-10-30 20:25:22 +00:00
Igor Sysoev
b5c75dc88a style fix 2006-10-28 14:36:44 +00:00
Igor Sysoev
0593b63c6a undo the previous wrong commit 2006-10-28 14:32:39 +00:00
Igor Sysoev
e6d99d831c bad commit 2006-10-28 14:20:13 +00:00
Igor Sysoev
a994bd0ae2 change order 2006-10-28 13:59:56 +00:00
Igor Sysoev
0359ba8cc1 optimize the most frequent cases 2006-10-28 12:04:43 +00:00
Igor Sysoev
e23b4849b5 handle the most frequent case first 2006-10-28 10:47:11 +00:00
Igor Sysoev
a724100799 axe unused state 2006-10-28 10:42:24 +00:00
Igor Sysoev
b80a7f4318 omit "#fragment" 2006-10-28 10:15:31 +00:00
Igor Sysoev
4346bab52e we do not need the zero terminated r->uri for a long time 2006-10-28 08:45:01 +00:00
Igor Sysoev
da04d54f81 bump version 2006-10-25 16:33:40 +00:00
Igor Sysoev
62f87beb76 style fix: remove trailing spaces 2006-10-25 16:19:03 +00:00
Igor Sysoev
711dd6f79a fix alias without trailing slash 2006-10-25 15:36:11 +00:00
Igor Sysoev
297f2bb4b9 axe unused code 2006-10-25 14:13:27 +00:00
Igor Sysoev
2aeb32e564 $r->allow_ranges 2006-10-25 13:56:32 +00:00
Igor Sysoev
914bcbd671 now the "memcached_pass" directive uses ngx_parse_url() 2006-10-24 13:50:35 +00:00
Igor Sysoev
20bf47b73d now the "listen" directives use ngx_parse_url() 2006-10-24 13:06:55 +00:00
Igor Sysoev
70296c518a bump version 2006-10-23 13:50:51 +00:00
Igor Sysoev
a1e7b04a43 NULL is short way 2006-10-20 19:10:16 +00:00
Igor Sysoev
44d8bc2ff1 fix segfault if $server_addr failed 2006-10-20 19:07:50 +00:00
Igor Sysoev
c1484ffa65 downgrade gravity of getsockname() errors 2006-10-18 14:27:16 +00:00
Igor Sysoev
37188918ed style fix: remove trailing spaces 2006-10-17 16:13:49 +00:00
Igor Sysoev
bb8bbb7c0b backout r783 and add comment 2006-10-17 12:47:14 +00:00
Igor Sysoev
cab3b30e2c fix building by Debian gcc-4.1.2 amd64 2006-10-16 13:29:52 +00:00
Igor Sysoev
e5efadb60e add 255th array element 2006-10-16 11:28:33 +00:00
Igor Sysoev
9ab9f0a220 allow ranges for full flv files 2006-10-16 07:47:00 +00:00
Igor Sysoev
d54c497d97 bump version 2006-10-13 15:47:56 +00:00
Igor Sysoev
960100e371 <!--#include virtual=... set=... --> 2006-10-13 15:20:10 +00:00
Igor Sysoev
8a444aa724 check nginx.pm version 2006-10-12 19:55:15 +00:00
Igor Sysoev
d79b21d1c6 previous commit broke two modules 2006-10-12 13:56:16 +00:00
Igor Sysoev
0e5f86d871 remove r->root_length 2006-10-12 13:36:54 +00:00
Igor Sysoev
c3df798bb4 compact r->http_minor and r->http_major 2006-10-12 13:08:26 +00:00
Igor Sysoev
84b7f5ba0d fix <!--#include virtual=... wait="yes" -->
r766 did not fix the bug too
2006-10-11 14:33:38 +00:00
Igor Sysoev
d40ee41c09 fix <!--#include virtual=... wait="yes" -->
r759 did not fix the bug
2006-10-11 09:12:01 +00:00
Igor Sysoev
a33dafb110 do not send flv header for full file 2006-10-11 05:33:15 +00:00
Igor Sysoev
358ec14ce9 variable should not be found if no request body file 2006-10-11 05:32:39 +00:00
Igor Sysoev
bb49607243 $request_body_file 2006-10-10 15:50:08 +00:00
Igor Sysoev
9fcccaf66f fix <!--#include virtual=... wait="yes" --> 2006-10-10 14:30:39 +00:00
Igor Sysoev
cea316dbae not do ngx_http_upstream_finalize_request() twice 2006-10-10 13:17:58 +00:00
Igor Sysoev
e3fbaeaffe fix building introduced by previous commit 2006-10-10 13:12:13 +00:00
Igor Sysoev
52ec2c48b9 finalize nonbuffered request on timeout 2006-10-10 13:11:06 +00:00
Igor Sysoev
fc3f068bc5 style fix: remove trailing spaces 2006-10-09 15:38:59 +00:00
Igor Sysoev
b50500689a ngx_http_flv_module 2006-10-09 14:17:36 +00:00
Igor Sysoev
5ad1d4b5ef ngx_http_charset_module supports the variables 2006-10-09 14:16:36 +00:00
Igor Sysoev
aec57e2613 align hash bucket size to cache line 2006-10-09 14:03:16 +00:00
Igor Sysoev
627b8aa3bd fix hash building on unknown 64-bit platform 2006-10-06 15:06:02 +00:00
Igor Sysoev
4ee7077b51 nonexistent $sent_http_content has value of $sent_http_content_length or so 2006-10-05 15:09:26 +00:00
Igor Sysoev
daec217def $r->headers_out("Content-Length", "NNN") did not work 2006-10-05 15:05:47 +00:00
Igor Sysoev
cccc185623 after redirecting by error_page any rewrite directive will return this code,
bug introduced in r727
2006-10-03 18:06:44 +00:00
Igor Sysoev
5e05cb4a19 nginx-0.4.4-RELEASE
fix msvc build failure introduced by previous commit
2006-10-02 11:44:21 +00:00
Igor Sysoev
49c9ea0e26 $scheme variable 2006-10-02 11:07:36 +00:00
Igor Sysoev
8fd830adc0 set "Content-Length: 0" for errors handled by "return 204" 2006-10-02 10:22:51 +00:00
Igor Sysoev
8c0dec813f expires max 2006-10-02 08:53:30 +00:00
Igor Sysoev
97c7e1a986 fix: "return" always overrode "error_page" response code 2006-10-02 08:37:11 +00:00
Igor Sysoev
4c7f511364 fix segfault when zero length file is PUT 2006-10-01 07:17:01 +00:00
Igor Sysoev
c9098081e2 fix proxy_redirect with variable 2006-09-26 21:15:52 +00:00
Igor Sysoev
4c804591c1 ancient browsers support in ngx_http_browser_module 2006-09-26 12:19:34 +00:00
Igor Sysoev
94124f3983 fix msvc build failure introduced by previous commit 2006-09-25 20:04:54 +00:00
Igor Sysoev
8a3cdc00ff allowing handling 400 errors via proxy_pass 2006-09-25 17:49:49 +00:00
Igor Sysoev
586f7a5f5d disable "error_page 499 ..." 2006-09-25 17:48:34 +00:00
Igor Sysoev
ef3e5bd892 long user-agent bugfix 2006-09-25 08:56:52 +00:00
Igor Sysoev
26e95cf402 ssi did work with memcached and nonbuffered responses 2006-09-23 15:55:54 +00:00
Igor Sysoev
331d71c41e delete blank line 2006-09-23 13:02:57 +00:00
Igor Sysoev
42af0b7c62 remove startup debug logging 2006-09-18 14:36:19 +00:00
Igor Sysoev
3383ff67a5 ngx_http_browser_module 2006-09-18 12:25:07 +00:00
Igor Sysoev
fc54daadb1 backout O_NOATIME support, it requires CAP_FOWNER capability 2006-09-14 15:05:48 +00:00
Igor Sysoev
dc1e3060eb Linux O_NOATIME support 2006-09-01 05:15:56 +00:00
Igor Sysoev
acdb80aed4 fix typo 2006-08-31 10:40:45 +00:00
Igor Sysoev
da173abde0 nginx-0.4.0-RELEASE import
*) Change in internal API: the HTTP modules initialization was moved
       from the init module phase to the HTTP postconfiguration phase.

    *) Change: now the request body is not read beforehand for the
       ngx_http_perl_module: it's required to start the reading using the
       $r->has_request_body method.

    *) Feature: the ngx_http_perl_module supports the DECLINED return code.

    *) Feature: the ngx_http_dav_module supports the incoming "Date" header
       line for the PUT method.

    *) Feature: the "ssi" directive is available inside the "if" block.

    *) Bugfix: a segmentation fault occurred if there was an "index"
       directive with variables and the first index name was without
       variables; the bug had appeared in 0.1.29.
2006-08-30 10:39:17 +00:00
Igor Sysoev
3f8dc59500 nginx-0.3.61-RELEASE import
*) Change: now the "tcp_nodelay" directive is turned on by default.

    *) Feature: the "msie_refresh" directive.

    *) Feature: the "recursive_error_pages" directive.

    *) Bugfix: the "rewrite" directive returned incorrect redirect, if the
       redirect had the captured escaped symbols from original URI.
2006-08-28 16:57:48 +00:00
Igor Sysoev
5fede1e415 nginx-0.3.60-RELEASE import
*) Bugfix: a worker process may got caught in an endless loop while an
       error redirection; the bug had appeared in 0.3.59.
2006-08-18 14:17:54 +00:00
Igor Sysoev
ef31643049 nginx-0.3.59-RELEASE import
*) Feature: now is possible to do several redirection using the
       "error_page" directive.

    *) Bugfix: the "dav_access" directive did not support three parameters.

    *) Bugfix: the "error_page" directive did not changes the
       "Content-Type" header line after the "X-Accel-Redirect" was used;
       the bug had appeared in 0.3.58.
2006-08-16 13:09:33 +00:00
Igor Sysoev
08e63d46de nginx-0.3.58-RELEASE import
*) Feature: the "error_page" directive supports the variables.

    *) Change: now the procfs interface instead of sysctl is used on Linux.

    *) Change: now the "Content-Type" header line is inherited from first
       response when the "X-Accel-Redirect" was used.

    *) Bugfix: the "error_page" directive did not redirect the 413 error.

    *) Bugfix: the trailing "?" did not remove old arguments if no new
       arguments were added to a rewritten URI.

    *) Bugfix: nginx could not run on 64-bit FreeBSD 7.0-CURRENT.
2006-08-14 15:09:38 +00:00
Igor Sysoev
c55a104fcb nginx-0.3.57-RELEASE import
*) Feature: the $ssl_client_serial variable.

    *) Bugfix: in the "!-e" operator of the "if" directive.
       Thanks to Andrian Budanstov.

    *) Bugfix: while a client certificate verification nginx did not send
       to a client the required certificates information.

    *) Bugfix: the $document_root variable did not support the variables in
       the "root" directive.
2006-08-09 19:59:45 +00:00
Igor Sysoev
b71c690895 nginx-0.3.56-RELEASE import
*) Feature: the "dav_access" directive.

    *) Feature: the "if" directive supports the "-d", "!-d", "-e", "!-e",
       "-x", and "!-x" operators.

    *) Bugfix: a segmentation fault occurred if a request returned a
       redirect and some sent to client header lines were logged in the
       access log.
2006-08-04 16:04:04 +00:00
Igor Sysoev
8f1255877c nginx-0.3.55-RELEASE import
*) Feature: the "stub" parameter in the "include" SSI command.

    *) Feature: the "block" SSI command.

    *) Feature: the unicode2nginx script was added to contrib.

    *) Bugfix: if a "root" was specified by variable only, then the root
       was relative to a server prefix.

    *) Bugfix: if the request contained "//" or "/./" and escaped symbols
       after them, then the proxied request was sent unescaped.

    *) Bugfix: the $r->headers_in("Cookie") of the ngx_http_perl_module now
       returns all "Cookie" header lines.

    *) Bugfix: a segmentation fault occurred if
       "client_body_in_file_only on" was used and nginx switched to a next
       upstream.

    *) Bugfix: on some condition while reconfiguration character codes
       inside the "charset_map" may be treated invalid; the bug had
       appeared in 0.3.50.
2006-07-28 15:16:17 +00:00
Igor Sysoev
bb28b6d3a4 nginx-0.3.54-RELEASE import
*) Feature: nginx now logs the subrequest information to the error log.

    *) Feature: the "proxy_next_upstream", "fastcgi_next_upstream", and
       "memcached_next_upstream" directives support the "off" parameter.

    *) Feature: the "debug_connection" directive supports the CIDR address
       form.

    *) Bugfix: if a response of proxied server or FastCGI server was
       converted from UTF-8 or back, then it may be transferred incomplete.

    *) Bugfix: the $upstream_response_time variable had the time of the
       first request to a backend only.

    *) Bugfix: nginx could not be built on amd64 platform; the bug had
       appeared in 0.3.53.
2006-07-11 13:20:19 +00:00
Igor Sysoev
1765f47544 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.
2006-07-07 16:33:19 +00:00
Igor Sysoev
3186bf5369 nginx-0.3.52-RELEASE import
*) Change: the ngx_http_index_module behavior for the "POST /" requests
       is reverted to the 0.3.40 version state: the module now does not
       return the 405 error.

    *) Bugfix: the worker process may got caught in an endless loop if the
       limit rate was used; the bug had appeared in 0.3.37.

    *) Bugfix: ngx_http_charset_module logged "unknown charset" alert, even
       if the recoding was not needed; the bug had appeared in 0.3.50.

    *) Bugfix: if a code response of the PUT request was 409, then a
       temporary file was not removed.
2006-07-03 16:49:20 +00:00
Igor Sysoev
e240762c6c nginx-0.3.51-RELEASE import
*) Bugfix: the "<" symbols might disappeared some conditions in the
       SSI; the bug had appeared in 0.3.50.
2006-06-30 12:19:32 +00:00
Igor Sysoev
ef809b86c3 nginx-0.3.50-RELEASE import
*) Change: the "proxy_redirect_errors" and "fastcgi_redirect_errors"
       directives was renamed to the "proxy_intercept_errors" and
       "fastcgi_intercept_errors" directives.

    *) Feature: the ngx_http_charset_module supports the recoding from the
       single byte encodings to the UTF-8 encoding and back.

    *) Feature: the "X-Accel-Charset" response header line is supported in
       proxy and FastCGI mode.

    *) Bugfix: the "\" escape symbol in the "\"" and "\'" pairs in the SSI
       command was removed only if the command also has the "$" symbol.

    *) Bugfix: the "<!--" string might be added on some conditions in the
       SSI after inclusion.

    *) Bugfix: if the "Content-Length: 0" header line was in response, then
       in nonbuffered proxying mode the client connection was not closed.
2006-06-28 16:00:26 +00:00
Igor Sysoev
af3b7ea9ad nginx-0.3.49-RELEASE import
*) Bugfix: in the "set" directive.

    *) Bugfix: if two or more FastCGI subrequests was in SSI, then first
       subrequest output was included instead of second and following
       subrequests.
2006-05-31 14:11:45 +00:00
Igor Sysoev
afd7ec5357 nginx-0.3.48-RELEASE import
*) Change: now the ngx_http_charset_module works for subrequests, if
       the response has no "Content-Type" header line.

    *) Bugfix: if the "proxy_pass" directive has no URI part, then the
       "proxy_redirect default" directive add the unnecessary slash in
       start of the rewritten redirect.

    *) Bugfix: the internal redirect always transform client's HTTP method
       to GET, now the transformation is made for the "X-Accel-Redirect"
       redirects only and if the method is not HEAD; the bug had appeared
       in 0.3.42.

    *) Bugfix: the ngx_http_perl_module could not be built, if the perl was
       built with the threads support; the bug had appeared in 0.3.46.
2006-05-29 17:28:12 +00:00
Igor Sysoev
6f134cc275 nginx-0.3.47-RELEASE import
*) Feature: the "upstream" directive.

    *) Change: now the "\" escape symbol in the "\"" and "\'" pairs in the
       SSI command is always removed.
2006-05-23 14:54:58 +00:00
Igor Sysoev
3338cfdfbc nginx-0.3.46-RELEASE import
*) Feature: the "proxy_hide_header", "proxy_pass_header",
       "fastcgi_hide_header", and "fastcgi_pass_header" directives.

    *) Change: the "proxy_pass_x_powered_by", "fastcgi_x_powered_by", and
       "proxy_pass_server" directives were canceled.

    *) Feature: the "X-Accel-Buffering" response header line is supported
       in proxy mode.

    *) Bugfix: the reconfiguration bug and memory leaks in the
       ngx_http_perl_module.
2006-05-11 14:43:47 +00:00
Igor Sysoev
44d872259c nginx-0.3.45-RELEASE import
*) Feature: the "ssl_verify_client", "ssl_verify_depth", and
       "ssl_client_certificate" directives.

    *) Change: the $request_method variable now returns the main request
       method.

    *) Change: the &deg; symbol codes were changed in koi-win conversion
       table.

    *) Feature: the euro and N symbols were added to koi-win conversion
       table.

    *) Bugfix: if nginx distributed the requests among several backends and
       some backend failed, then requests intended for this backend was
       directed to one live backend only instead of being distributed among
       the rest.
2006-05-06 16:28:56 +00:00
Igor Sysoev
ac72bd17d1 nginx-0.3.44-RELEASE import
*) Feature: the "wait" parameter in the "include" SSI command.

    *) Feature: the Ukrainian and Byelorussian characters were added to
       koi-win conversion table.

    *) Bugfix: in the SSI.
2006-05-04 15:32:46 +00:00
Igor Sysoev
b051817366 nginx-0.3.43-RELEASE import
*) Bugfix: in the SSI.
2006-04-26 15:21:08 +00:00
Igor Sysoev
7f7846d820 nginx-0.3.42-RELEASE import
*) Feature: the "bind" option of the "listen" directive in IMAP/POP3
       proxy.

    *) Bugfix: if the same capture in the "rewrite" directive was used more
       then once.

    *) Bugfix: the $sent_http_content_type, $sent_http_content_length,
       $sent_http_last_modified, $sent_http_connection,
       $sent_http_keep_alive, and $sent_http_transfer_encoding variables
       were not written to access log.

    *) Bugfix: the $sent_http_cache_control returned value of the single
       "Cache-Control" response header line.
2006-04-26 09:52:47 +00:00
Igor Sysoev
4ecb4d721d nginx-0.3.41-RELEASE import
*) Feature: the -v switch.

    *) Bugfix: the segmentation fault may occurred if the SSI page has
       remote subrequests.

    *) Bugfix: in FastCGI handling.

    *) Bugfix: if the perl modules path was not set using
       --with-perl_modules_path=PATH or the "perl_modules", then the
       segmentation fault was occurred.
2006-04-21 12:06:44 +00:00
Igor Sysoev
7bdb720d6a nginx-0.3.40-RELEASE import
*) Feature: the ngx_http_dav_module supports the MKCOL method.

    *) Feature: the "create_full_put_path" directive.

    *) Feature: the "$limit_rate" variable.
2006-04-19 15:30:56 +00:00
Igor Sysoev
cdf609a925 nginx-0.3.39-RELEASE import
*) Feature: the "uninitialized_variable_warn" directive; the logging
       level of the "uninitialized variable" message was lowered from
       "alert" to "warn".

    *) Feature: the "override_charset" directive.

    *) Change: now if the unknown variable is used in the "echo" and "if
       expr='$name'" SSI-commands, then the "unknown variable" message is
       not logged.

    *) Bugfix: the active connection counter increased on the exceeding of
       the connection limit specified by the "worker_connections"
       directive; the bug had appeared in 0.2.0.

    *) Bugfix: the limit rate might not work on some condition; the bug had
       appeared in 0.3.38.
2006-04-17 19:55:41 +00:00
Igor Sysoev
8a2b2fb4fb nginx-0.3.38-RELEASE import
*) Feature: the ngx_http_dav_module.

    *) Change: the ngx_http_perl_module optimizations.
       Thanks to Sergey Skvortsov.

    *) Feature: the ngx_http_perl_module supports the $r->request_body_file
       method.

    *) Feature: the "client_body_in_file_only" directive.

    *) Workaround: now on disk overflow nginx tries to write access logs
       once a second only.
       Thanks to Anton Yuzhaninov and Maxim Dounin.

    *) Bugfix: now the "limit_rate" directive more precisely limits rate if
       rate is more than 100 Kbyte/s.
       Thanks to ForJest.

    *) Bugfix: now the IMAP/POP3 proxy escapes the "\r" and "\n" symbols in
       login and password to pass authorization server.
       Thanks to Maxim Dounin.
2006-04-14 09:53:38 +00:00
Igor Sysoev
94e32ce7f8 nginx-0.3.37-RELEASE import
*) Feature: the "limit_except" directive.

    *) Feature: the "if" directive supports the "!~", "!~*", "-f", and
       "!-f" operators.

    *) Feature: the ngx_http_perl_module supports the $r->request_body
       method.

    *) Bugfix: in the ngx_http_addition_filter_module.
2006-04-07 14:08:04 +00:00
Igor Sysoev
6d16e1e1df nginx-0.3.36-RELEASE import
*) Feature: the ngx_http_addition_filter_module.

    *) Feature: the "proxy_pass" and "fastcgi_pass" directives may be used
       inside the "if" block.

    *) Feature: the "proxy_ignore_client_abort" and
       "fastcgi_ignore_client_abort" directives.

    *) Feature: the "$request_completion" variable.

    *) Feature: the ngx_http_perl_module supports the $r->request_method
       and $r->remote_addr.

    *) Feature: the ngx_http_ssi_module supports the "elif" command.

    *) Bugfix: the "\/" string in the expression of the "if" command of the
       ngx_http_ssi_module was treated incorrectly.

    *) Bugfix: in the regular expressions in the "if" command of the
       ngx_http_ssi_module.

    *) Bugfix: if the relative path was specified in the
       "client_body_temp_path", "proxy_temp_path", "fastcgi_temp_path", and
       "perl_modules" directives, then the directory was used relatively to
       a current path but not to a server prefix.
2006-04-05 13:40:54 +00:00
Igor Sysoev
6275f56129 nginx-0.3.35-RELEASE import
*) Bugfix: the accept-filter and the TCP_DEFER_ACCEPT option were set
       for first "listen" directive only; the bug had appeared in 0.3.31.

    *) Bugfix: in the "proxy_pass" directive without the URI part in a
       subrequest.
2006-03-28 12:24:47 +00:00
Igor Sysoev
455a7fcc1e nginx-0.3.34-RELEASE import
*) Feature: the "add_header" directive supports the variables.
2006-03-21 08:20:41 +00:00
Igor Sysoev
8fea885cbf nginx-0.3.33-RELEASE import
*) Feature: the "http_503" parameter of the "proxy_next_upstream" or
       "fastcgi_next_upstream" directives.

    *) Bugfix: ngx_http_perl_module did not work with inlined in the
       configuration code, if it was not started with the "sub" word.

    *) Bugfix: in the "post_action" directive.
2006-03-15 09:53:04 +00:00
Igor Sysoev
e50caa8eee nginx-0.3.32-RELEASE import
*) Bugfix: the debug logging on startup and reconfiguration time was
       removed; the bug had appeared in 0.3.31.
2006-03-11 06:40:30 +00:00
Igor Sysoev
13c68741f2 nginx-0.3.31-RELEASE import
*) Change: now nginx passes the malformed proxied backend responses.

    *) Feature: the "listen" directives support the address in the "*:port"
       form.

    *) Feature: the EVFILER_TIMER support in MacOSX 10.4.

    *) Workaround: for MacOSX 64-bit kernel kqueue millisecond timeout
       bug.
       Thanks to Andrei Nigmatulin.

    *) Bugfix: if there were several "listen" directives listening one
       various addresses inside one server, then server names like
       "*.domain.tld" worked for first address only; the bug had appeared
       in 0.3.18.

    *) Bugfix: if the HTTPS protocol was used in the "proxy_pass" directive
       and the request body was in temporarily file then the request was
       not transferred.

    *) Bugfix: perl 5.8.8 compatibility.
2006-03-10 12:51:52 +00:00
Igor Sysoev
cce886c71d nginx-0.3.30-RELEASE import
*) Change: the ECONNABORTED error log level was changed to "error" from
       "crit".

    *) Bugfix: the ngx_http_perl_module could not be build without the
       ngx_http_ssi_filter_module.

    *) Bugfix: nginx could not be built on i386 platform, if the PIC was
       used; the bug had appeared in 0.3.27.
2006-02-22 19:41:39 +00:00
Igor Sysoev
69d73da629 nginx-0.3.29-RELEASE import
*) Feature: now nginx uses less memory, if PHP in FastCGI mode sends
       many warnings before the response.

    *) Bugfix: the "Transfer-Encoding: chunked" header line was issued in
       the 204 responses for the HTTP/1.1 requests.

    *) Bugfix: nginx returned the 502 response, if the complete response
       header lines were transferred in a separate FastCGI records.

    *) Bugfix: if the proxied URI was specified in the "post_action"
       directive, then it ran only after a successful completion of a
       request.
2006-02-20 16:48:17 +00:00
Igor Sysoev
c2807ecf45 nginx-0.3.28-RELEASE import
*) Feature: the "restrict_host_names" directive was canceled.

    *) Feature: the --with-cpu-opt=ppc64 configuration parameter.

    *) Bugfix: on some condition the proxied connection with a client was
       terminated prematurely.
       Thanks to Vladimir Shutoff.

    *) Bugfix: the "X-Accel-Limit-Rate" header line was not taken into
       account if the request was redirected using the "X-Accel-Redirect"
       header line.

    *) Bugfix: the "post_action" directive ran only after a successful
       completion of a request.

    *) Bugfix: the proxied response body generated by the "post_action"
       directive was transferred to a client.
2006-02-16 15:26:46 +00:00
Igor Sysoev
ffe714403d nginx-0.3.27-RELEASE import
*) Change: the "variables_hash_max_size" and
       "variables_hash_bucket_size" directives.

    *) Feature: the $body_bytes_sent variable can be used not only in the
       "log_format" directive.

    *) Feature: the $ssl_protocol and $ssl_cipher variables.

    *) Feature: the cache line size detection for widespread CPUs at start
       time.

    *) Feature: now the "accept_mutex" directive is supported using
       fcntl(2) on platforms different from i386, amd64, sparc64, and ppc.

    *) Feature: the "lock_file" directive and the --with-lock-path=PATH
       autoconfiguration directive.

    *) Bugfix: if the HTTPS protocol was used in the "proxy_pass" directive
       then the requests with the body was not transferred.
2006-02-08 15:33:12 +00:00
Igor Sysoev
8290d287b4 nginx-0.3.26-RELEASE import
*) Change: the "optimize_host_names" directive was renamed to the
       "optimize_server_names".

    *) Bugfix: if in the "proxy_pass" directive was no the URI part, then
       the main request URI was transferred to a backend while proxying the
       SSI subrequest.
2006-02-03 12:58:48 +00:00
Igor Sysoev
9e58019dc2 nginx-0.3.24-RELEASE import
*) Workaround: for bug in FreeBSD kqueue.

    *) Bugfix: now a response generated by the "post_action" directive is
       not transferred to a client.

    *) Bugfix: the memory leaks were occurring if many log files were used.

    *) Bugfix: the first "proxy_redirect" directive was working inside one
       location.

    *) Bugfix: on 64-bit platforms segmentation fault may occurred on start
       if the many names were used in the "server_name" directives; the bug
       had appeared in 0.3.18.
2006-02-01 18:22:15 +00:00
Igor Sysoev
3430346840 nginx-0.3.23-RELEASE import
*) Feature: the "optimize_host_names" directive.

    *) Bugfix: in using of the variables in the "path" and "alias"
       directives.

    *) Bugfix: the ngx_http_perl_module was incorrectly built on Linux and
       Solaris.
2006-01-24 16:08:27 +00:00
Igor Sysoev
ae33d014ad nginx-0.3.22-RELEASE import
*) Feature: the ngx_http_perl_module supports the $r->args and
       $r->unescape methods.

    *) Feature: the method $r->query_string of ngx_http_perl_module was
       canceled.

    *) Bugfix: segmentation fault was occurred if the "none" or "blocked"
       values was specified in the "valid_referers" directive; the bug had
       appeared in 0.3.18.
2006-01-17 20:04:32 +00:00
Igor Sysoev
9bf11aa193 nginx-0.3.21-RELEASE import
*) Feature: the ngx_http_perl_module.

    *) Change: the "valid_referers" directive allows the referreres without
       URI part.
2006-01-16 14:56:53 +00:00
Igor Sysoev
df3254aa49 nginx-0.3.20-RELEASE import
*) Bugfix: in SSI handling.

    *) Bugfix: the ngx_http_memcached_module did not support the keys in
       the "/usr?args" form.
2006-01-11 15:26:57 +00:00
Igor Sysoev
3ca233ee5c nginx-0.3.19-RELEASE import
*) Feature: the "path" and "alias" directives support the variables.

    *) Change: now the "valid_referers" directive again checks the URI part.

    *) Bugfix: in SSI handling.
2005-12-28 14:23:52 +00:00
Igor Sysoev
305a9d83cf nginx-0.3.18-RELEASE import
*) Feature: the "server_names" directive supports the ".domain.tld"
       names.

    *) Feature: the "server_names" directive uses the hash for the
       "*.domain.tld" names and more effective hash for usual names.

    *) Change: the "server_names_hash_max_size" and
       "server_names_hash_bucket_size" directives.

    *) Change: the "server_names_hash" and "server_names_hash_threshold"
       directives were canceled.

    *) Feature: the "valid_referers" directive uses the hash site names.

    *) Change: now the "valid_referers" directive checks the site names
       only without the URI part.

    *) Bugfix: some ".domain.tld" names incorrectly processed by the
       ngx_http_map_module.

    *) Bugfix: segmentation fault was occurred if configuration file did
       not exist; the bug had appeared in 0.3.12.

    *) Bugfix: on 64-bit platforms segmentation fault may occurred on
       start; the bug had appeared in 0.3.16.
2005-12-26 17:07:48 +00:00
Igor Sysoev
43f279dc9c nginx-0.3.17-RELEASE import
*) Change: now on Linux configure checks the presence of epoll and
       sendfile64() in kernel.

    *) Feature: the "map" directive supports domain names in the
       ".domain.tld" form.

    *) Bugfix: the timeouts were not used in SSL handshake; the bug had
       appeared in 0.2.4.

    *) Bugfix: in the HTTPS protocol in the "proxy_pass" directive.

    *) Bugfix: when the HTTPS protocol was used in the "proxy_pass"
       directive the port 80 was used by default.
2005-12-18 16:02:44 +00:00
Igor Sysoev
2402502c2f nginx-0.3.16-RELEASE import
*) Feature: the ngx_http_map_module.

    *) Feature: the "types_hash_max_size" and "types_hash_bucket_size"
       directives.

    *) Feature: the "ssi_value_length" directive.

    *) Feature: the "worker_rlimit_core" directive.

    *) Workaround: the connection number in logs was always 1 if nginx was
       built by the icc 8.1 or 9.0 compilers with optimization for
       Pentium 4.

    *) Bugfix: the "config timefmt" SSI command set incorrect time format.

    *) Bugfix: nginx did not close connection to IMAP/POP3 backend for the
       SSL connections; the bug had appeared in 0.3.13.
       Thanks to Rob Mueller.

    *) Bugfix: segmentation fault may occurred in at SSL shutdown; the bug
       had appeared in 0.3.13.
2005-12-16 15:07:08 +00:00
Igor Sysoev
cdc463042b nginx-0.3.15-RELEASE import
*) Feature: the new 444 code of the "return" directive to close
       connection.

    *) Feature: the "so_keepalive" directive in IMAP/POP3 proxy.

    *) Bugfix: if there are unclosed connection nginx now calls abort()
       only on gracefull quit and active "debug_points" directive.
2005-12-07 14:51:31 +00:00
Igor Sysoev
2334060587 nginx-0.3.14-RELEASE import
*) Bugfix: in the 304 response the body was transferred; the bug had
       appeared in 0.3.13.
2005-12-05 16:59:05 +00:00
Igor Sysoev
d3283ff922 nginx-0.3.13-RELEASE import
*) Feature: the IMAP/POP3 proxy supports STARTTLS and STLS.

    *) Bugfix: the IMAP/POP3 proxy did not work with the select, poll, and
       /dev/poll methods.

    *) Bugfix: in SSI handling.

    *) Bugfix: now Solaris sendfilev() is not used to transfer the client
       request body to FastCGI-server via the unix domain socket.

    *) Bugfix: the "auth_basic" directive did not disable the
       authorization; the bug had appeared in 0.3.11.
2005-12-05 13:18:09 +00:00
Igor Sysoev
c31a9bb5e3 nginx-0.3.12-RELEASE import
*) Security: if nginx was built with the ngx_http_realip_module and the
       "satisfy_any on" directive was used, then access and authorization
       directives did not work. The ngx_http_realip_module was not built
       and is not built by default.

    *) Change: the "$time_gmt" variable name was changed to "$time_local".

    *) Change: the "proxy_header_buffer_size" and
       "fastcgi_header_buffer_size" directives was renamed to the
       "proxy_buffer_size" and "fastcgi_buffer_size" directives.

    *) Feature: the ngx_http_memcached_module.

    *) Feature: the "proxy_buffering" directive.

    *) Bugfix: the changes in accept mutex handling when the "rtsig" method
       was used; the bug had appeared in 0.3.0.

    *) Bugfix: if the client sent the "Transfer-Encoding: chunked" header
       line, then nginx returns the 411 error.

    *) Bugfix: if the "auth_basic" directive was inherited from the http
       level, then the realm in the "WWW-Authenticate" header line was
       without the "Basic realm" text.

    *) Bugfix: if the "combined" format was explicitly specified in the
       "access_log" directive, then the empty lines was written to the log;
       the bug had appeared in 0.3.8.

    *) Bugfix: nginx did not run on the sparc platform under any OS except
       Solaris.

    *) Bugfix: now it is not necessary to place space between the quoted
       string and closing bracket in the "if" directive.
2005-11-26 10:11:11 +00:00
Igor Sysoev
b141f2b631 nginx-0.3.11-RELEASE import
*) Bugfix: nginx did not pass the client request headers and body while
       proxying; the bug had appeared in 0.3.10.
2005-11-15 14:49:57 +00:00
Igor Sysoev
0e5dc5cff6 nginx-0.3.10-RELEASE import
*) Change: the "valid_referers" directive and the "$invalid_referer"
       variable were moved to the new ngx_http_referer_module from the
       ngx_http_rewrite_module.

    *) Change: the "$apache_bytes_sent" variable name was changed to
       "$body_bytes_sent".

    *) Feature: the "$sent_http_..." variables.

    *) Feature: the "if" directive supports the "=" and "!=" operations.

    *) Feature: the "proxy_pass" directive supports the HTTPS protocol.

    *) Feature: the "proxy_set_body" directive.

    *) Feature: the "post_action" directive.

    *) Feature: the ngx_http_empty_gif_module.

    *) Feature: the "worker_cpu_affinity" directive for Linux.

    *) Bugfix: the "rewrite" directive did not unescape URI part in
       redirect, now it is unescaped except the %00-%25 and %7F-%FF
       characters.

    *) Bugfix: nginx could not be built by the icc 9.0 compiler.

    *) Bugfix: if the SSI was enabled for zero size static file, then the
       chunked response was encoded incorrectly.
2005-11-15 13:30:52 +00:00
Igor Sysoev
3fc6f64bd2 nginx-0.3.9-RELEASE import
*) Bugfix: nginx considered URI as unsafe if two any symbols was
       between two slashes; the bug had appeared in 0.3.8.
2005-11-10 07:44:53 +00:00
Igor Sysoev
09c684b2d5 nginx-0.3.8-RELEASE import
*) Security: nginx now checks URI got from a backend in
       "X-Accel-Redirect" header line or in SSI file for the "/../" paths
       and zeroes.

    *) Change: nginx now does not treat the empty user name in the
       "Authorization" header line as valid one.

    *) Feature: the "ssl_session_timeout" directives of the
       ngx_http_ssl_module and ngx_imap_ssl_module.

    *) Feature: the "auth_http_header" directive of the
       ngx_imap_auth_http_module.

    *) Feature: the "add_header" directive.

    *) Feature: the ngx_http_realip_module.

    *) Feature: the new variables to use in the "log_format" directive:
       $bytes_sent, $apache_bytes_sent, $status, $time_gmt, $uri,
       $request_time, $request_length, $upstream_status,
       $upstream_response_time, $gzip_ratio, $uid_got, $uid_set,
       $connection, $pipe, and $msec. The parameters in the "%name" form
       will be canceled soon.

    *) Change: now the false variable values in the "if" directive are the
       empty string "" and string starting with "0".

    *) Bugfix: while using proxied or FastCGI-server nginx may leave
       connections and temporary files with client requests in open state.

    *) Bugfix: the worker processes did not flush the buffered logs on
       graceful exit.

    *) Bugfix: if the request URI was changes by the "rewrite" directive
       and the request was proxied in location given by regular expression,
       then the incorrect request was transferred to backend; the bug had
       appeared in 0.2.6.

    *) Bugfix: the "expires" directive did not remove the previous
       "Expires" header.

    *) Bugfix: nginx may stop to accept requests if the "rtsig" method and
       several worker processes were used.

    *) Bugfix: the "\"" and "\'" escape symbols were incorrectly handled in
       SSI commands.

    *) Bugfix: if the response was ended just after the SSI command and
       gzipping was used, then the response did not transferred complete or
       did not transferred at all.
2005-11-09 17:25:55 +00:00
Igor Sysoev
697d1aea0c nginx-0.3.7-RELEASE import
*) Feature: the "access_log" supports the "buffer=" parameter.

    *) Bugfix: nginx could not be built on platforms different from i386,
       amd64, sparc, and ppc; the bug had appeared in 0.3.2.
2005-10-27 15:46:13 +00:00
Igor Sysoev
9ac946bcc9 nginx-0.3.6-RELEASE import
*) Change: now the IMAP/POP3 proxy do not send the empty login to
       authorization server.

    *) Feature: the "log_format" supports the variables in the $name form.

    *) Bugfix: if at least in one server was no the "listen" directive,
       then nginx did not listen on the 80 port; the bug had appeared in
       0.3.3.

    *) Bugfix: if the URI part is omitted in "proxy_pass" directive, the
       the 80 port was always used.
2005-10-24 15:09:41 +00:00
Igor Sysoev
055951dc96 nginx-0.3.5-RELEASE import
*) Bugfix: the segmentation fault may occurred if the IMAP/POP3 login
       was changed by authorization server; the bug had appeared in 0.2.2.

    *) Bugfix: the accept mutex did not work and all connections were
       handled by one process; the bug had appeared in 0.3.3.

    *) Bugfix: the timeout did not work if the "rtsig" method and the
       "timer_resolution" directive were used.
2005-10-21 19:12:18 +00:00
Igor Sysoev
c2068d08f0 nginx-0.3.3-RELEASE import
*) Change: the "bl" and "af" parameters of the "listen" directive was
       renamed to the "backlog" and "accept_filter".

    *) Feature: the "rcvbuf" and "sndbuf" parameters of the "listen"
       directive.

    *) Change: the "$msec" log parameter does not require now the
       additional the gettimeofday() system call.

    *) Feature: the -t switch now tests the "listen" directives.

    *) Bugfix: if the invalid address was specified in the "listen"
       directive, then after the -HUP signal nginx left an open socket in
       the CLOSED state.

    *) Bugfix: the mime type may be incorrectly set to default value for
       index file with variable in the name; the bug had appeared in 0.3.0.

    *) Feature: the "timer_resolution" directive.

    *) Feature: the millisecond "$upstream_response_time" log parameter.

    *) Bugfix: a temporary file with client request body now is removed
       just after the response header was transferred to a client.

    *) Bugfix: OpenSSL 0.9.6 compatibility.

    *) Bugfix: the SSL certificate and key file paths could not be relative.

    *) Bugfix: the "ssl_prefer_server_ciphers" directive did not work in
       the ngx_imap_ssl_module.

    *) Bugfix: the "ssl_protocols" directive allowed to specify the single
       protocol only.
2005-10-19 12:33:58 +00:00
Igor Sysoev
784522377e nginx-0.3.2-RELEASE import
*) Feature: the Sun Studio 10 C compiler support.

    *) Feature: the "proxy_upstream_max_fails",
       "proxy_upstream_fail_timeout", "fastcgi_upstream_max_fails", and
       "fastcgi_upstream_fail_timeout" directives.
2005-10-12 13:50:36 +00:00
Igor Sysoev
1bfa7bc78a nginx-0.3.1-RELEASE import
*) Bugfix: the segmentation fault occurred when the signal queue
       overflowed if the "rtsig" method was used; the bug had appeared in
       0.2.0.

    *) Change: correct handling of the "\\", "\"", "\'", and "\$" pairs in
       SSI.
2005-10-10 12:59:41 +00:00
Igor Sysoev
208eed2210 nginx-0.3.0-RELEASE import
*) Change: the 10-days live time limit of worker process was
       eliminated. The limit was introduced because of millisecond timers
       overflow.
2005-10-07 13:30:52 +00:00