Commit Graph

2850 Commits

Author SHA1 Message Date
Igor Sysoev
05b1a8f1e3 ngx_str_set() and ngx_str_null() 2010-05-14 09:56:37 +00:00
Igor Sysoev
328df7a5cc use ngx_min() and ngx_max() 2010-05-14 09:55:33 +00:00
Igor Sysoev
5739072cfe fix segfault: ngx_http_upstream_cleanup() cleans r->cleanup,
the bug had been introduced in r3419
2010-05-14 09:22:58 +00:00
Igor Sysoev
fadd4bd25c ngx_http_split_clients_module 2010-05-14 09:02:10 +00:00
Igor Sysoev
d2b687cf3f ngx_atofp() 2010-05-14 09:01:30 +00:00
Igor Sysoev
6884183ad9 allow hash key values more than 255 bytes, it does not actually increase mean
hash element size, because due to aligning a byte after key is not used
anyway in 3/4 cases on 32-bit platforms and in 7/8 cases on 64-bit platforms
2010-05-13 12:52:45 +00:00
Igor Sysoev
980220ffaf style fix: remove blank line 2010-05-13 10:22:48 +00:00
Igor Sysoev
ff6adfd740 style fix: remove blank line 2010-05-12 15:56:54 +00:00
Igor Sysoev
50af406144 fix rounding issues in %f format 2010-05-12 13:13:11 +00:00
Igor Sysoev
503b9716c5 use double in %f format to allow %.15f precision 2010-05-12 13:12:31 +00:00
Igor Sysoev
ab4c0d3628 Zimbra IMAP server may return only 4 bytes: "+ \r\n" 2010-04-23 09:53:52 +00:00
Igor Sysoev
dce9672ca6 bump version 2010-04-23 08:14:57 +00:00
Igor Sysoev
3ec15dd090 use lstat() for WebDAV DELETE, COPY, and MOVE to handle symlinks 2010-04-22 17:15:42 +00:00
Igor Sysoev
fa7d06ee4f change processing variables accessed by SSI and perl module:
*) the indexed variables are always flushed
*) never show warning for not found variables
2010-04-22 14:02:45 +00:00
Igor Sysoev
185a5d1726 make $arg_ variables non-cacheable 2010-04-22 13:35:30 +00:00
Igor Sysoev
e003988f87 do not log misleading errno in "not a regular file" error 2010-04-21 16:01:52 +00:00
Igor Sysoev
bfc8b78f57 use non-blocking open() not to hang on FIFO files, etc. 2010-04-21 15:59:36 +00:00
Igor Sysoev
ece10ddcf5 do not store an encoded variable value as a new cached variable value 2010-04-21 14:58:21 +00:00
Igor Sysoev
6b55b4b520 fix building without HTTP cache, the bug had been introduced in r3461 2010-04-06 11:49:36 +00:00
Igor Sysoev
231856b913 bump version 2010-04-02 14:18:23 +00:00
Igor Sysoev
502252d43a MSVC8 compatibility with OpenSSL 1.0.0 2010-04-01 15:18:29 +00:00
Igor Sysoev
6bdcc58a9c revert partially r1555 and fix the error "memcached sent invalid trailer" 2010-04-01 15:16:22 +00:00
Igor Sysoev
170a54f326 escape ampersand in argument while rewrite 2010-04-01 12:45:59 +00:00
Igor Sysoev
07db3a4163 chunked_transfer_encoding 2010-04-01 10:18:00 +00:00
Igor Sysoev
569f95818b do not add a port in redirect if we listen on unix domain socket 2010-03-31 13:30:50 +00:00
Igor Sysoev
d08b65ca61 do not set file time in ngx_copy_file() if the time is -1,
this fixes an issue when file is moved across devices
2010-03-30 14:15:25 +00:00
Igor Sysoev
86f791e090 fix comments 2010-03-26 21:17:26 +00:00
Igor Sysoev
f59ae65fa4 use "rep; nop" instead of "pause" on Solaris/amd64 2010-03-26 13:38:41 +00:00
Igor Sysoev
b45498c3de fix a comment and a style fix 2010-03-26 11:27:32 +00:00
Igor Sysoev
aed1ac1e68 reset a parsing state to parse correctly an upstream response,
if 400 or 414 response has been redirected to upstream
2010-03-25 13:27:52 +00:00
Igor Sysoev
6d45d8a50d *) introduce ngx_time_sigsafe_update() to update the error log time only
*) change ngx_time_update() interface
2010-03-25 09:10:10 +00:00
Igor Sysoev
2f916a9721 *) use previously cached GMT offset value to update time from a signal handler
*) change ngx_time_update() interface since there are no notification methods
   those return time
2010-03-13 18:08:07 +00:00
Igor Sysoev
b80f68aeda do not update time in the timer signal handler,
since localtime_r() is not Async-Signal-Safe function
2010-03-12 14:31:47 +00:00
Igor Sysoev
9eaabc69ca use sys_errlist[] in signal handler instead
of non Async-Signal-Safe strerror_r()
2010-03-12 11:15:26 +00:00
Igor Sysoev
7fa1c07896 "proxy_redirect default" may not be used if a proxy_pass uses variables 2010-03-10 14:41:49 +00:00
Igor Sysoev
931d88c7c1 fix proxy_redirect name in error message 2010-03-10 14:37:18 +00:00
Igor Sysoev
7e3fdc4e8e fix segfault if there was non cached large FastCGI stderr output before header,
the bug had been introduced in r3461
2010-03-10 13:51:47 +00:00
Igor Sysoev
1c9f74852f bump version 2010-03-10 13:49:17 +00:00
Igor Sysoev
e71f39932f add OpenSSL_add_all_algorithms(), this fixes the error
"ASN1_item_verify:unknown message digest algorithm" occurred if
client certificate is signed using sha256WithRSAEncryption
2010-03-03 16:23:14 +00:00
Igor Sysoev
1ee4b09091 make $request_method non-cacheable 2010-03-03 16:14:07 +00:00
Igor Sysoev
ff1a888caf remove code disabled since 0.1.29 version 2010-03-03 15:14:04 +00:00
Igor Sysoev
e0538991ff use a right "Location" header name, however, it did not harm,
since ngx_http_variable_sent_location() never use key name field
2010-03-03 15:08:06 +00:00
Igor Sysoev
593dec8b35 fix cached FastCGI response with large stderr output before header 2010-03-03 10:43:38 +00:00
Igor Sysoev
750a65ef84 allow HTTPS referers 2010-03-03 10:21:12 +00:00
Igor Sysoev
f953436886 compare long file names in case-insensitive mode,
the bug had been introduced in r3418
2010-03-03 10:05:54 +00:00
Igor Sysoev
416fc7aac7 Set SSL session context for "ssl_session_cache none".
This fixes a bug when client certficate is used and nginx closes connection
with the message: "SSL_GET_PREV_SESSION:session id context uninitialized".
2010-03-02 08:41:47 +00:00
Igor Sysoev
bd4b6e68af fix a geo range if the range includes two or more /16 networks
and does not begin at /16 network boundary
2010-02-25 17:26:01 +00:00
Igor Sysoev
146324618d decrease SSL handshake error level to info 2010-02-19 20:54:58 +00:00
Igor Sysoev
a11234b7c4 SSI %s timefmt has no timezone offset 2010-02-19 13:53:11 +00:00
Igor Sysoev
bc55ea07c8 use content type of the parent request in SSI stub block output
instead of default one
2010-02-19 13:42:59 +00:00
Igor Sysoev
aa9a761f88 style fix: remove tabs 2010-02-18 14:47:09 +00:00
Igor Sysoev
ded2a7c1af fix $upstream_http_ variable prefix length 2010-02-15 19:38:59 +00:00
Igor Sysoev
070f0a865b delete surplus code 2010-02-12 09:48:04 +00:00
Igor Sysoev
b87fba807e const char *fmt in ngx_conf_log_error() 2010-02-12 09:45:05 +00:00
Igor Sysoev
b43c499677 delete ngx_http_perl_cleanup_t unused since r909 2010-02-12 09:40:46 +00:00
Igor Sysoev
68813cae41 fix request counter for $r->sleep(), the bug was introduced in r3050 2010-02-12 09:32:02 +00:00
Igor Sysoev
d1311dfc71 bump version 2010-02-12 09:31:01 +00:00
Igor Sysoev
b681f7184c do not disable keepalive after POST requests for MSIE 7+ 2010-02-01 12:58:07 +00:00
Igor Sysoev
8164f329fe disable keepalive for Safari:
https://bugs.webkit.org/show_bug.cgi?id=5760
2010-02-01 12:01:01 +00:00
Igor Sysoev
4e20f24b5b delete u->cleanup mark, this fixes large values in $upstream_response_time,
the bug had been introduced in r3007
2010-01-29 16:45:14 +00:00
Igor Sysoev
10fa102e32 disable Win32 short file names 2010-01-28 14:17:51 +00:00
Igor Sysoev
77860d74a5 skip URI trailing spaces under Win32 2010-01-28 14:09:28 +00:00
Igor Sysoev
918ef947da Fix segfault when while discarding body a write event handler is called,
runs ngx_http_core_run_phases(), and starts a request processing again.
The write event has clear type and remained in a keepalive connection.
The bug was introduced in r3050.
2010-01-28 08:33:24 +00:00
Igor Sysoev
2f5bcf2d17 bump version 2010-01-28 08:22:45 +00:00
Igor Sysoev
fcaa367929 allow a chunked body for 201 responses 2010-01-11 15:14:23 +00:00
Igor Sysoev
d8be48a546 fix ngx_utf8_cpystrn(): it did not fully copy utf-8 string 2010-01-11 13:39:24 +00:00
Igor Sysoev
e4bc4a2940 named captures worked for two names only 2010-01-11 11:21:46 +00:00
Igor Sysoev
089b2fd31e add context to a resolver log 2010-01-11 11:01:02 +00:00
Igor Sysoev
280e5e7072 use "localhost" in "Host" header line, if unix socket is used in "auth_http" 2009-12-25 15:43:40 +00:00
Igor Sysoev
1651542b3a fix negative time in "Cache-Control" if "expires modified" sets time in the past 2009-12-25 15:00:08 +00:00
Igor Sysoev
9a5eabc4ac bump version 2009-12-25 14:57:10 +00:00
Igor Sysoev
e146ebd813 allow to handle 301/302 in error_page 2009-12-23 15:31:16 +00:00
Igor Sysoev
3662f36a54 fix a cached zero-length body case 2009-12-23 14:46:45 +00:00
Igor Sysoev
bd375b9566 fix typo 2009-12-23 14:22:17 +00:00
Igor Sysoev
d741a7f827 $geoip_city_continent_code, $geoip_latitude, $geoip_longitude 2009-12-22 17:33:03 +00:00
Igor Sysoev
c7c0d610cf fix the "If-None-Match" header name 2009-12-22 16:41:34 +00:00
Igor Sysoev
fb0c73b08d fix building by gcc 4.x with -O2/3/s in some Linux distributions:
dereferencing type-punned pointer will break strict-aliasing rules
2009-12-22 15:29:56 +00:00
Igor Sysoev
8c97fa9ae4 fix building by gcc 4.4 with -O2/3/s:
dereferencing pointer 'sin' does break strict-aliasing rules
2009-12-22 15:15:45 +00:00
Igor Sysoev
9cf418ea92 force image filter conversion if JPEG application data consume more than 5% 2009-12-22 13:03:49 +00:00
Igor Sysoev
ec0655c0ce style fix 2009-12-22 10:45:29 +00:00
Igor Sysoev
a9d26d2e19 fix building by gcc 4.x with -O2/3/s in some Linux distributions:
dereferencing type-punned pointer will break strict-aliasing rules
the bug has been introduced in r3065
2009-12-21 21:56:48 +00:00
Igor Sysoev
733fb74d06 fix caseless locations, the bug had been introduced in r3326 2009-12-17 14:25:46 +00:00
Igor Sysoev
8817113d95 test degradation parameters 2009-12-17 12:45:13 +00:00
Igor Sysoev
04799a6f7c fix r3331:
*) now pools are aligned to 16 bytes
*) forbidden to set non-aligned pool sizes
2009-12-17 12:25:46 +00:00
Igor Sysoev
a75362dcdb fix Win32 error message when an temporary file replaces an existent file:
return at once if ngx_win32_rename_file() was not failed
and do not try to delete already the renamed temporary file
2009-12-17 10:05:39 +00:00
Igor Sysoev
9c8fa5efe5 bump version 2009-12-16 14:59:33 +00:00
Igor Sysoev
44be39475c fix Win32 error messages when an temporary file replaces an existent file:
*) do not rename an already renamed file
*) now ngx_win32_rename_file() returns error code
*) do not log failure inside ngx_win32_rename_file()
2009-12-15 13:47:02 +00:00
Igor Sysoev
29b5a13784 default large_client_header_buffers' buffer size should be 8K as compatible
with Apache's one
2009-12-09 06:37:41 +00:00
Igor Sysoev
58b1f9e9e4 backout r3315 and test r->header_only last, since it's not actually
frequent here: 304 and HEAD responses are not set it before the filter
2009-12-07 15:41:57 +00:00
Igor Sysoev
8f7c8f3c07 fix libatomic usage on arm, cris, hppa, m68k, and sparc platforms 2009-12-07 15:32:38 +00:00
Igor Sysoev
eacd5d89b7 fix double free(), introduced in r3268 2009-12-07 15:13:46 +00:00
Igor Sysoev
6cfcef3cbf remove stale comment 2009-12-02 13:03:54 +00:00
Igor Sysoev
3bc08a51c7 bump version 2009-12-02 13:02:43 +00:00
Igor Sysoev
1cfb972e74 support "*" in gzip_types, ssi_types, etc 2009-11-30 13:15:10 +00:00
Igor Sysoev
a734e33720 chmod unix listen domain socket to 0666 2009-11-30 11:26:24 +00:00
Igor Sysoev
f8b50b9c96 log proxied HTTP/0.9 responses status as "009" 2009-11-29 20:49:29 +00:00
Igor Sysoev
601ab90cd4 fix handling cached HTTP/0.9 response 2009-11-29 20:48:01 +00:00
Igor Sysoev
a1b92a9659 fix server_name regex named captures given by "?P<...>" 2009-11-29 20:39:32 +00:00
Igor Sysoev
d5624689cb update comments 2009-11-25 18:03:59 +00:00
Igor Sysoev
bdfa3baaee fix comment 2009-11-25 17:56:53 +00:00
Igor Sysoev
213cad8e81 libatomic_ops support 2009-11-25 17:55:25 +00:00
Igor Sysoev
89d635fa5d GCC 4.1 builtin atomic operations 2009-11-25 17:34:35 +00:00
Igor Sysoev
f215028477 bump version 2009-11-25 17:04:00 +00:00
Igor Sysoev
72db760eca add NGX_PROCESS_HELPER process status 2009-11-23 15:46:21 +00:00
Igor Sysoev
8019121120 decrease SSL handshake error level to info 2009-11-23 14:09:57 +00:00
Igor Sysoev
6956db0696 fix building without PCRE, the bug had been introduced in r3326 2009-11-23 13:13:58 +00:00
Igor Sysoev
0bd426def1 bump version 2009-11-23 13:09:33 +00:00
Igor Sysoev
2952af08f1 a cache manager thread handle was overwritten by a cache loader thread handle,
this caused an exit delay, the bug had been introduced in r3023
2009-11-17 16:46:27 +00:00
Igor Sysoev
d1d7bb00a3 add comment from r2716 commit message 2009-11-17 10:31:39 +00:00
Igor Sysoev
889fa8debb use global perl variable in perl_destruct()/perl_free()
for non-mulitiplicity perl
2009-11-17 10:28:12 +00:00
Igor Sysoev
69061b73ef fix pcre allocation on Win32, the bug had been introduced in r3326 2009-11-17 10:24:45 +00:00
Igor Sysoev
25622c2f92 bump version 2009-11-17 09:59:45 +00:00
Igor Sysoev
42f5fb19ac evaluate maximum captures size on configuration phase 2009-11-16 19:11:38 +00:00
Igor Sysoev
d86a0bfed4 fix captures in "rewrite", the bug had been introduced in r3326 2009-11-16 19:10:45 +00:00
Igor Sysoev
93da565962 fix building without --with-debug, introduced in r3328 2009-11-16 16:00:52 +00:00
Igor Sysoev
57acd7b421 bump version 2009-11-16 16:00:12 +00:00
Igor Sysoev
50a94dfbd1 backout r3325: postpone filter is a body only filter 2009-11-16 13:22:10 +00:00
Igor Sysoev
a4a0541308 align to minimum of a page and a pool sizes 2009-11-16 12:50:10 +00:00
Igor Sysoev
104ff87c39 ngx_min() 2009-11-16 12:48:41 +00:00
Igor Sysoev
ece77cd5be large allocation should not be aligned to a page size 2009-11-16 12:47:44 +00:00
Igor Sysoev
3e1a05c467 add alignment in debug log 2009-11-16 12:46:05 +00:00
Igor Sysoev
4985109dba ngx_http_degradation_module 2009-11-16 12:20:00 +00:00
Igor Sysoev
c05f20ec2e regex named captures 2009-11-16 12:19:02 +00:00
Igor Sysoev
c0ae4716ec remove subrequest test in range header, chunked, and header filters: they
are run after postpone filter which sends data only in main request context
2009-11-16 12:13:17 +00:00
Igor Sysoev
6c71b88924 allow "proxy_pass http://$backend" without URI part 2009-11-15 11:36:12 +00:00
Igor Sysoev
700a779824 fix posix_fadvise() error handling 2009-11-15 09:16:58 +00:00
Igor Sysoev
b13029c57c update allocation error messages 2009-11-15 09:03:08 +00:00
Igor Sysoev
fc514f1d07 fix posix_memalign() error handling 2009-11-15 08:56:40 +00:00
Igor Sysoev
950fb268a2 ngx_regex_exec() calling optimiztion:
*) change NGX_REGEX_NO_MATCHED to PCRE_ERROR_NOMATCH
*) declare ngx_regex_exec() as #define
*) optimize SSI regex a little
2009-11-13 20:41:41 +00:00
Igor Sysoev
30870b4ab3 style fix: lcf > clcf 2009-11-13 19:59:54 +00:00
Igor Sysoev
35b7a443a1 do not log error if $r->variable was not found 2009-11-12 15:50:34 +00:00
Igor Sysoev
3d12873adb add MSIE padding for Chrome too 2009-11-12 14:24:22 +00:00
Igor Sysoev
bdc154bb73 r->chrome 2009-11-12 14:23:18 +00:00
Igor Sysoev
0338645ecf test frequent r->header_only before three response status 2009-11-12 13:44:16 +00:00
Igor Sysoev
6c49a5afcf refactor gzip_vary handling 2009-11-12 13:41:56 +00:00
Igor Sysoev
2c0b6f3e70 nginx sent gzipped responses to clients those do not support gzip,
if "gzip_static on" and "gzip_vary off"; the bug had been introduced in r3136
2009-11-11 21:12:41 +00:00
Igor Sysoev
f4992bbe14 bump version 2009-11-11 21:06:36 +00:00
Igor Sysoev
20c9f8be85 remove "Content-Encoding: gzip" in 304 response
sent by ngx_http_gzip_static_module
2009-11-11 14:32:49 +00:00
Igor Sysoev
653edd491b use ngx_resolver_alloc() instead of ngx_resolver_calloc()
since all fields are filled
2009-11-11 14:29:20 +00:00
Igor Sysoev
e79f429b4b fix resolving an empty name (".") 2009-11-11 14:27:24 +00:00
Igor Sysoev
61da56d041 fix "set_real_ip_from unix:" inheritance 2009-11-11 13:41:16 +00:00
Igor Sysoev
9eadbde324 fix building without --with-debug, introduced in r3294 2009-11-11 12:32:06 +00:00
Igor Sysoev
a993d55b0f bump version 2009-11-11 12:30:36 +00:00
Igor Sysoev
70bd187c4c disable SSL renegotiation (CVE-2009-3555) 2009-11-11 10:59:07 +00:00
Igor Sysoev
a59ba33060 *) fix resolving an empty name ("."),
*) add quotes in an error message,
*) backout r3299 in ngx_mail_smtp_handler.c
2009-11-09 19:15:11 +00:00
Igor Sysoev
70966c154f fix "PTR ." case in address resolver 2009-11-09 18:04:05 +00:00
Igor Sysoev
64bfa87e73 fix segfault in resolver:
ngx_resolve_name_done() and ngx_resolve_addr_done() did not delete
contexts from a resolver node waiting list.
2009-11-09 17:45:56 +00:00
Igor Sysoev
21accae8e5 cf->conf_file->file.name.data may be uninitialized, if an allocation failed;
found by Clang Static Analyzer
2009-11-05 17:10:48 +00:00
Igor Sysoev
8b620a8a97 delete useless statement 2009-11-05 17:09:02 +00:00
Igor Sysoev
4121aa3440 export aio presence knowledge to prevent using "aio sendfile",
if aio does not present
2009-11-05 13:12:30 +00:00
Igor Sysoev
9b67ca0e41 Fix a bug introduced in r2032: After a child process has read a terminate
message from a channel, the process tries to read the channel again.
The kernel (at least FreeBSD) may preempt the process and sends a SIGIO
signal to a master process. The master process sends a new terminate message,
the kernel switches again to the the child process, and the child process
reads the messages instead of an EAGAIN error. And this may repeat over
and over. Being that the child process can not exit the cycle and test
the termination flag set by the message handler.

The fix disallow the master process to send a new terminate message on
SIGIO signal reception. It may send the message only on SIGALARM signal.
2009-11-04 19:41:08 +00:00
Igor Sysoev
bcc44e2549 allow to inherit unix domain sockets while online upgrade 2009-11-04 18:36:43 +00:00
Igor Sysoev
7319b92591 allow to work single "set_real_ip_from unix:" 2009-11-04 11:37:06 +00:00
Igor Sysoev
822503ea41 bump version 2009-11-04 11:20:54 +00:00
Igor Sysoev
51aa6dec4d fix segfault if there is single large_client_header_buffers
and a request line fills it completely
2009-11-03 18:12:20 +00:00
Igor Sysoev
1bc750da2f use setproctitle("%s", title) 2009-11-03 16:28:21 +00:00
Igor Sysoev
89601c0f10 fix segfault if no rules are defined, introduced in r3279 2009-11-03 16:04:07 +00:00
Igor Sysoev
cc65b0879b fix segfault in SSL if limit_rate is used 2009-11-03 15:38:33 +00:00
Igor Sysoev
956bdfc000 fix segfault if $limit_rate was logged 2009-11-03 15:05:38 +00:00
Igor Sysoev
f4b598b81b fix "if (!-x ...)" 2009-11-03 14:57:27 +00:00
Igor Sysoev
771e677674 fix directive name in error message: "set_realip_from" to "set_real_ip_from" 2009-11-03 14:41:56 +00:00
Igor Sysoev
39c9f6e487 fix directive name in error message: "realip_from" to "set_realip_from" 2009-11-03 13:45:22 +00:00
Igor Sysoev
76c941e70b IPv6 support in ngx_http_access_module 2009-11-03 13:42:45 +00:00
Igor Sysoev
4ac5ca8ae0 ngx_ptocidr() supports IPv6 2009-11-03 13:42:25 +00:00
Igor Sysoev
fd078fd6d5 make ngx_inet6_ntop() non-static 2009-11-03 12:44:55 +00:00
Igor Sysoev
612ecb7674 optimize some cycles:
*) delete surplus variable;
*) on i386/amd64 "while (n) / n--" is smaller than "while (n--)",
   because the platforms have no postfix operations
2009-11-02 17:12:09 +00:00
Igor Sysoev
7e4f193bb0 set_real_ip_from unix: 2009-11-02 16:46:07 +00:00
Igor Sysoev
a9aaa4a78d support IPv6 addresses in Real IP headers 2009-11-02 16:24:27 +00:00
Igor Sysoev
8b816d88a9 change ngx_parse_addr() interface 2009-11-02 16:11:06 +00:00
Igor Sysoev
72e928755b proxy_bind, fastcgi_bind, and memcached_bind 2009-11-02 15:24:02 +00:00
Igor Sysoev
1d52beba73 ngx_parse_addr() 2009-11-02 15:20:42 +00:00
Igor Sysoev
0c189c5159 rename ngx_peer_addr_t to ngx_addr_t 2009-11-02 15:14:17 +00:00
Igor Sysoev
67765e8918 use sin6_addr.s6_addr instead of "(u_char *) & .sin6_addr" 2009-11-02 14:32:46 +00:00
Igor Sysoev
0f25ed3d77 replace inet_addr() with ngx_inet_addr() 2009-11-02 13:51:10 +00:00
Igor Sysoev
47c88464eb use ngx_inet6_addr() 2009-11-02 12:58:30 +00:00
Igor Sysoev
5a76cbbbc6 ngx_inet6_addr() 2009-11-02 12:50:00 +00:00
Igor Sysoev
19811dbdde style fix 2009-11-02 12:41:56 +00:00
Igor Sysoev
61490aa6b6 delete unused field c->local_socklen 2009-11-01 19:29:49 +00:00
Igor Sysoev
9f179fe546 do not unlink unix domain socket file while online upgrade 2009-10-30 19:18:21 +00:00
Igor Sysoev
633c178a17 unlink unix domain socket file after testing 2009-10-30 19:16:50 +00:00
Igor Sysoev
44fa8877c0 fix segfaults if no listen directive was set in default server {} block:
ngx_http_add_listen() uses server's connection_pool_size and
client_header_timeout values, therefore it must be called after
the values have been merged, the bug had been introduced in r3218
2009-10-29 15:53:50 +00:00
Igor Sysoev
e856807660 style fix 2009-10-28 10:47:00 +00:00
Igor Sysoev
cadac4ec3e fix segfault if http {} block is empty, the bug had been introduced in r3218 2009-10-28 10:45:40 +00:00
Igor Sysoev
b3586d13da bump version 2009-10-28 10:31:06 +00:00
Igor Sysoev
8ffea50797 fix r3211 2009-10-26 12:00:37 +00:00
Igor Sysoev
baf8e409ba http listen unix domain sockets 2009-10-26 11:43:32 +00:00
Igor Sysoev
657b3b7f7d fix r3225 and r3227: preserve default_server bit during listen options
overwriting
2009-10-22 10:17:54 +00:00
Igor Sysoev
663e957957 do not run regex for empty host name since regex always fails in this case,
the bug had been introduced in r2196
2009-10-22 09:48:42 +00:00
Igor Sysoev
315cfa0ab3 test a duplicate listen in a server 2009-10-22 08:15:16 +00:00
Igor Sysoev
acb43232f6 fix r3225: it overrode the listen options by default server default options 2009-10-22 08:14:02 +00:00
Igor Sysoev
9826961ed4 listen default_server parameter 2009-10-21 19:18:50 +00:00
Igor Sysoev
5a95080cb6 allow to set listen options in any server 2009-10-21 19:16:38 +00:00
Igor Sysoev
ba3083bfce add listen address in error message 2009-10-21 19:13:27 +00:00
Igor Sysoev
42b72993c5 use lowcase only hostname 2009-10-21 17:04:13 +00:00
Igor Sysoev
cd8b43cde7 rename core_srv_conf fields to more understandable default_server and server 2009-10-21 16:52:10 +00:00
Igor Sysoev
f2694cb925 *) move sockaddr to the listen options
*) rename ngx_http_listen_t to ngx_http_listen_opt_t
2009-10-21 16:47:44 +00:00
Igor Sysoev
2a634f5342 fix r3218:
Initially building lists of ports, addresses, and server names had been
placed at final configuration stage, because complete set of the "listen"s
and the "server_names" were required for this operation. r3218 broke it,
because the "listen"s go usually first in configuration, and
cscf->server_names is empty at this stage, therefore no virtual names
were configured.

Now server configurations are stored in array for each address:port
to configure virtual names. Also regex captures flag is moved from
server names to core server configuration.
2009-10-21 16:27:48 +00:00
Igor Sysoev
d2d0931ed5 refactor http listen code: remove duplicate options fields 2009-10-21 08:48:04 +00:00
Igor Sysoev
79d630ac11 refactor http listen code:
*) add listen's to the global cmcf->ports array instead of server's one
*) rename ngx_http_listen_conf_t to ngx_http_listen_opt_t
2009-10-21 08:19:46 +00:00
Igor Sysoev
e418e0661c fix two previous commits: an early parallel body discarding completion
disables incomplete ngx_http_writer()
2009-10-20 11:48:28 +00:00
Igor Sysoev
9a1f0ac730 allow discarding body while a long response transfer 2009-10-19 16:13:38 +00:00
Igor Sysoev
801a35df3c restore discard body handler after ngx_http_set_writer() set it to
ngx_http_test_reading(), the bug was introduced in r3050
2009-10-19 16:12:13 +00:00
Igor Sysoev
7060e670f4 fix ngx_http_finalize_request() code after a body has been discarded 2009-10-19 16:06:57 +00:00
Igor Sysoev
11e5d7f190 prevent handling discarded body as a pipelined request 2009-10-19 14:08:35 +00:00
Igor Sysoev
2495c4d50b add lingering timeout if a response is short and a request body is being
discarded, the bug was introduced in r3050
2009-10-19 14:08:09 +00:00
Igor Sysoev
a1e36777f4 add SNI support in -V output 2009-10-19 12:35:01 +00:00
Igor Sysoev
145dcc180a fix typo 2009-10-19 12:33:09 +00:00
Igor Sysoev
550454192c ngx_http_parse_time() should support full 32-bit time 2009-10-15 13:19:34 +00:00
Igor Sysoev
5143e39b4e use ngx_uint_t instead of int,
strange to say this reduce function size by 16 bytes
2009-10-15 13:09:58 +00:00
Igor Sysoev
6a588f80c6 bump version 2009-10-15 13:01:42 +00:00
Igor Sysoev
73a9c44441 update r3201: ngx_http_random_index_module should behave consistently
in spite of the dirent.d_type presence
2009-10-14 12:39:41 +00:00
Igor Sysoev
3f438068eb ignore EACCES errors for top level directories in ngx_create_full_path() 2009-10-14 11:46:09 +00:00
Igor Sysoev
d0188e09af do not create Win32 drive letter in ngx_create_full_path() 2009-10-14 11:36:16 +00:00
Igor Sysoev
e58700d3b0 *) reset cached dirent.d_type after stat()
this fixes slash after link to a directory in ngx_http_autoindex_module;
*) use cached dirent.d_type as hint on all systems

the issues has been introduced in r2235
2009-10-14 11:33:35 +00:00
Igor Sysoev
e7138540d6 nginx did not close log file set by --error-log-path,
the bug was introduced in r2744
2009-10-09 14:43:09 +00:00
Igor Sysoev
671236993a test comma separator in "Cache-Control" 2009-10-08 14:22:00 +00:00
Igor Sysoev
e2afcc5d2f hide cacheable Set-Cookie and P3P FastCGI response headers 2009-10-07 15:15:41 +00:00
Igor Sysoev
3bed0daced use only strong ciphers by default 2009-10-07 14:46:13 +00:00
Igor Sysoev
136dd8d1e6 use real file cache length, this fixes cache size counting for responses
without "Content-Length" header and 304 responses.
2009-10-07 12:55:58 +00:00
Igor Sysoev
9e54633645 bump version 2009-10-07 12:48:05 +00:00
Igor Sysoev
4efbd6ab36 fix r3184 2009-10-06 16:08:15 +00:00
Igor Sysoev
cf9dd76b43 disable SSLv2 and low ciphers by default 2009-10-06 14:24:53 +00:00
Igor Sysoev
280d6955e3 bump version 2009-10-06 13:52:26 +00:00
Igor Sysoev
2fb73afece limit_conn_log_level 2009-10-06 10:14:29 +00:00
Igor Sysoev
6624c62742 limit_req_log_level 2009-10-06 10:14:21 +00:00
Igor Sysoev
4ae43f965d fix building by gcc45 2009-10-06 09:46:16 +00:00
Igor Sysoev
5d4b802370 make limit_req to conform to the leaky bucket algorithm 2009-10-06 09:37:18 +00:00
Igor Sysoev
a2951910d3 omit '\0' from "Location" header on MKCOL request 2009-10-06 09:32:21 +00:00
Igor Sysoev
703f15d8a2 clear r->lingering_close to disable preventively calling
ngx_http_set_lingering_close() while request cleanup
2009-10-02 11:32:56 +00:00
Igor Sysoev
2d24d749e4 clear r->keepalive to disable preventively calling
ngx_http_set_keepalive() while request cleanup
2009-10-02 11:30:47 +00:00
Igor Sysoev
48a3131d83 update r3167: do not set r->discard_body if the body has been just discarded 2009-10-02 09:46:04 +00:00
Igor Sysoev
3266171fd4 read_ahead 2009-09-30 13:21:52 +00:00
Igor Sysoev
687b0e99ea Linux/SPARC malloc() returns an address aligned to 8. This conflicts with
our SPARC 16-byte alignment and some allocations may be done out of pool.
ngx_memalign(ngx_pagesize) fixes this issue.
2009-09-30 12:56:44 +00:00
Igor Sysoev
689064b91a log 499 instead 0, the bug was introduced in r3050 2009-09-30 12:05:08 +00:00
Igor Sysoev
13210a18f4 allow several perl_modules 2009-09-30 11:46:01 +00:00
Igor Sysoev
d9ef969e28 use ngx_conf_set_str_array_slot() for perl_require 2009-09-28 16:07:14 +00:00
Igor Sysoev
2c808cc191 optimize error handling 2009-09-28 15:57:28 +00:00
Igor Sysoev
0056d6b4aa bump version 2009-09-28 15:56:28 +00:00
Igor Sysoev
65166cfa2f fix request counter in resolver handling, the bug was introduced in r3050 2009-09-28 12:31:47 +00:00
Igor Sysoev
00e723da20 we do not need to increase request counter in this place,
the bug had appeared in r3115
2009-09-28 11:12:45 +00:00
Igor Sysoev
63bfeb9bd0 fix r3078: do not increase request counter if body has been just discarded 2009-09-26 13:24:15 +00:00
Igor Sysoev
29e7d8cc73 use parents around NGX_ATOMIC_T_LEN value 2009-09-25 20:25:47 +00:00
Igor Sysoev
48a28e2dad uniform ngx_directio_on/off() interface with other file functions 2009-09-25 14:17:28 +00:00
Igor Sysoev
38a7faadfe handle short pwrite() to log an error cause: ENOSPC, EDQUOT, or EFBIG 2009-09-25 13:55:46 +00:00
Igor Sysoev
812234e2f5 fix discarding body 2009-09-25 11:55:33 +00:00
Igor Sysoev
a552ab476e check unsafe Destination 2009-09-25 09:30:06 +00:00
Igor Sysoev
7f6d71bbc8 low ENAMETOOLONG logging level 2009-09-25 09:13:08 +00:00
Igor Sysoev
c81582ea67 fix r3155 2009-09-24 20:09:12 +00:00
Igor Sysoev
5631879c7a test incomplete WriteFile() 2009-09-24 20:05:21 +00:00
Igor Sysoev
f4d97e2472 log file name for read/write errors 2009-09-24 20:04:10 +00:00
Igor Sysoev
4bcc725f83 delete Win95 code 2009-09-24 19:55:35 +00:00
Igor Sysoev
ef2662caab fix debug log message 2009-09-24 14:47:10 +00:00
Igor Sysoev
cdaf442a2f $ssl_session_id 2009-09-24 14:45:28 +00:00
Igor Sysoev
f63a48ce7e update the previous commit: use ngx_strlow() 2009-09-24 13:23:25 +00:00
Igor Sysoev
6749e92938 $host is always in low case:
*) move low case convertation from ngx_http_find_virtual_server()
   to ngx_http_validate_host()
*) add in ngx_http_validate_host() capability to copy host name in the pool
   allocated memory
2009-09-24 13:15:50 +00:00
Igor Sysoev
e5b2d3c6b2 low default connection errors level from alert to error 2009-09-23 15:28:33 +00:00
Igor Sysoev
3749443661 bump version 2009-09-23 15:27:17 +00:00
Igor Sysoev
81fed299ce fail if file size was changed 2009-09-22 09:44:57 +00:00
Igor Sysoev
70df46f5c5 fix typo in addition_types directive name 2009-09-22 09:06:15 +00:00
Igor Sysoev
7386cf58a7 fix request counter for post_action, the bug was introduced in r3050 2009-09-21 18:34:22 +00:00
Igor Sysoev
5b6b1fda1c allow to log invalid $request in access_log always,
before it was logged only if error_log was set to info or debug level
2009-09-21 15:55:56 +00:00
Igor Sysoev
a8d3d2204f fix resolver cache rbtree comparison 2009-09-19 16:15:13 +00:00
Igor Sysoev
15c149e499 restore environ, this fixes segfault on reconfiguration failure when
perl module creates new environment
2009-09-18 09:21:14 +00:00
Igor Sysoev
2d95c3f210 fix comment 2009-09-18 09:12:40 +00:00
Igor Sysoev
c828202087 *) issue warning instead of failure: this is too common case
*) use ngx_log_error(), since OpenSSL does not set an error on the failure
2009-09-18 09:10:16 +00:00
Igor Sysoev
99651523de fix memory leak in resolver 2009-09-16 13:48:11 +00:00
Igor Sysoev
866e958c5d win32 ngx_file_info() utf8 support 2009-09-16 13:30:13 +00:00
Igor Sysoev
7e4e5e165f preserve errno while ngx_free() 2009-09-16 13:28:20 +00:00
Igor Sysoev
d1e9567425 do not pass buf with empty cached response,
this fixes "zero size buf in output" alert
2009-09-15 15:12:03 +00:00
Igor Sysoev
04c2f085f4 nginx always sent "Vary: Accept-Encoding",
if both gzip_static and gzip_vary were on
2009-09-15 11:57:29 +00:00
Igor Sysoev
4428cfc12b image_filter_transparency 2009-09-15 11:55:17 +00:00
Igor Sysoev
f1edf87d04 fix alpha-channel transparency in PNG 2009-09-15 09:47:12 +00:00
Igor Sysoev
6db93ab8ba allow perl "sub{..." 2009-09-15 09:37:16 +00:00
Igor Sysoev
e6823b5199 bump version 2009-09-15 09:36:09 +00:00
Igor Sysoev
be9d165064 test space between "~" and regex in server_name and invalid_referers 2009-09-14 09:48:48 +00:00
Igor Sysoev
97aa4c86a1 handle "/../" case more reliably 2009-09-14 07:42:01 +00:00
Igor Sysoev
12a7d493d4 fix request counter for X-Accel-Redirect, the bug was introduced in r3050 2009-09-13 13:45:32 +00:00
Igor Sysoev
84b20ca18b fix case when the output filter should add incoming buffers
while waiting on file AIO completion
2009-09-13 06:28:17 +00:00
Igor Sysoev
570608ff4a style fix 2009-09-13 06:25:54 +00:00
Igor Sysoev
79b8049de4 fix transparency in GIF 2009-09-12 09:46:28 +00:00
Igor Sysoev
96e36ef252 If .domain.com, .sub.domain.com, and .domain-some.com were defined,
then .sub.domain.com was matched by .domain.com: wildcard names hash
was built incorrectly due to sorting order issue of "." vs "-".
They were sorted as
    com.domain  com.domain-some  com.domain.sub
while they should be sorted as
    com.domain  com.domain.sub   com.domain-some
for correct hash building
2009-09-12 09:28:37 +00:00
Igor Sysoev
e0f1d0afcc style fix 2009-09-11 13:57:50 +00:00
Igor Sysoev
526f36aab8 fix request counter for rewrite or internal redirection cycle,
the bug was introduced in r3050
2009-09-10 16:34:09 +00:00
Igor Sysoev
3e751480b2 increase request counter before an upstream cleanup because the cleanup
decreases the counter via ngx_http_finalize_request(r, NGX_DONE),
the bug was introduced in r3050
2009-09-08 11:37:50 +00:00
Igor Sysoev
4d4b2a1b40 fix request counter handling in perl module for $r->internal_redirect()
and $r->has_request_body(), the bug was introduced in r3050
2009-09-08 11:33:32 +00:00
Igor Sysoev
9963b19f69 do not pass incoming buf chain twice if data are ready,
the bug was introduced in r3072
2009-09-07 12:10:07 +00:00
Igor Sysoev
d0afc39841 bump version 2009-09-07 12:08:58 +00:00
Igor Sysoev
28debb2191 fix the previous commit 2009-09-04 18:51:17 +00:00
Igor Sysoev
78fd825c1e preload just a single byte to avoid testing file overrun 2009-09-04 16:59:23 +00:00
Igor Sysoev
8013a83067 clean cache updating state if a response has uncacheable code or
cache prohibitive headers
2009-09-04 09:57:38 +00:00
Igor Sysoev
7d71c80b16 fix request counter handling for perl handler, introduced in r3050 2009-09-04 09:54:16 +00:00
Igor Sysoev
f0e12845a5 log offset passed to sendfile() 2009-09-04 09:53:09 +00:00
Igor Sysoev
2052077b93 small optimization 2009-09-04 09:50:58 +00:00
Igor Sysoev
63494b4c79 discrease slightly ngx_http_parse_header_line() size:
this line is not required for LF, however, this case is very seldom
2009-09-02 07:02:49 +00:00
Igor Sysoev
21e3e05eb1 discard request body before returning 413 error,
this fixes custom 413 page redirection bug introduced in r1456
2009-09-01 12:47:34 +00:00
Igor Sysoev
b4cc2fc0d7 fix request counter handling while discarding body, introduced in r3050 2009-09-01 12:40:27 +00:00
Igor Sysoev
56f06e69df use %*s instead of %V 2009-09-01 12:35:52 +00:00
Igor Sysoev
2e9ea35fd7 fix segfault when a header starts with "\rX"
and logging is set to info or debug level
2009-09-01 12:32:37 +00:00
Igor Sysoev
f13a2507ae bump version 2009-09-01 12:07:00 +00:00
Igor Sysoev
9f9054df82 retry aio sendfile if data are ready 2009-08-31 14:00:16 +00:00
Igor Sysoev
06bb9d294a fix building on FreeBSD without --with-file-aio 2009-08-31 13:51:13 +00:00
Igor Sysoev
c76ba2b2c5 bump version 2009-08-31 13:50:37 +00:00
Igor Sysoev
fb30a18045 fix request counter handling for try_files, introduced in r3050 2009-08-31 11:21:04 +00:00
Igor Sysoev
bfff03406d aio sendfile 2009-08-30 09:52:39 +00:00
Igor Sysoev
ddda411d14 *) ngx_http_ephemeral
*) use preallocated terminal_posted_request
2009-08-30 09:47:11 +00:00
Igor Sysoev
8c491a77bc refactor EAGAIN/EINTR processing 2009-08-30 09:42:29 +00:00
Igor Sysoev
d11fa717f0 use local variable and fix debug log message 2009-08-29 18:42:31 +00:00
Igor Sysoev
61b09e59d7 fix request counter for memcached, introduced in r3050 2009-08-29 18:40:28 +00:00
Igor Sysoev
cfb6888d87 bump version 2009-08-29 18:39:32 +00:00
Igor Sysoev
6ef7e772a9 fix build by msvc, introduced in r3054 2009-08-28 11:46:12 +00:00
Igor Sysoev
8b8e995eb8 do not create cache key in AIO invocation 2009-08-28 11:23:50 +00:00
Igor Sysoev
a39d4e1aee fix sending a cached file using AIO 2009-08-28 11:22:27 +00:00
Igor Sysoev
aa4200b551 do not disable gzip for MSIE 6.0 SV1 in "gzip_disable msie6" 2009-08-28 08:19:02 +00:00
Igor Sysoev
6fb506a215 directio_alignment 2009-08-28 08:15:55 +00:00
Igor Sysoev
a962506498 FreeBSD and Linux AIO support 2009-08-28 08:12:35 +00:00
Igor Sysoev
1163af9fae style fix 2009-08-28 07:50:45 +00:00
Igor Sysoev
5297d456d8 axe r->connection->destroyed testing 2009-08-26 16:14:57 +00:00
Igor Sysoev
b603dd4b43 request reference counter 2009-08-26 16:04:05 +00:00
Igor Sysoev
450659e62a twice termination delay only after SIGALRM, otherwise many separate SIGCHLD
and SIGIO signals quickly increase delay to the level when SIGKILL is sent
2009-08-26 15:12:28 +00:00
Igor Sysoev
31f6c5c55d style fix 2009-08-26 15:09:09 +00:00
Igor Sysoev
9262c6138e fix typo 2009-08-26 15:03:53 +00:00
Igor Sysoev
764c5eca29 ignore SIGSYS 2009-08-26 05:19:57 +00:00
Igor Sysoev
b71610eb09 *) move small declarations in appropriate places and delete the surplus
header files
*) delete insignificant comments
2009-08-25 09:09:13 +00:00
Igor Sysoev
8e7e69e351 style fix 2009-08-25 09:06:21 +00:00
Igor Sysoev
79fb302daf bump version 2009-08-25 08:47:58 +00:00
Igor Sysoev
a79f8a5655 strict testing "access_log off" 2009-08-23 17:06:33 +00:00
Igor Sysoev
5374610ace process upstream ETag header 2009-08-23 16:10:39 +00:00
Igor Sysoev
f4f7d5e5f4 the flags should be bit-wide only 2009-08-23 12:58:41 +00:00
Igor Sysoev
3a58935936 *) share temporary number between workers
*) randomize collision offset
2009-08-21 09:06:35 +00:00
Igor Sysoev
f95847d0ba test EXDEV after path creation 2009-08-20 15:53:57 +00:00
Igor Sysoev
0ddc1978ee fix copy failure logging and stale files removal, introduced in r3025 2009-08-20 13:41:32 +00:00
Igor Sysoev
9db33c9234 fix copy destination name length, introduced in r3025 2009-08-20 13:37:26 +00:00
Igor Sysoev
0f00b0a801 fix memory leak if GeoIP City database was used 2009-08-19 17:44:33 +00:00
Igor Sysoev
42e49ba1ef bump version 2009-08-19 09:09:12 +00:00
Igor Sysoev
aa4bba5298 fix building on 64-bit platforms, introduced in r3025 2009-08-13 13:48:41 +00:00
Igor Sysoev
c287a9811e fix debug point for left open sockets 2009-08-13 08:40:25 +00:00
Igor Sysoev
45ec56bdca refactor fastcgi stderr handling 2009-08-12 14:38:44 +00:00
Igor Sysoev
b7a09c5523 allow cross device temporary files atomic copying:
*) ngx_copy_file()
*) delete ngx_ext_rename_file_t.log_rename_error and .rename_error fields
2009-08-12 12:05:33 +00:00
Igor Sysoev
c9538c069f NGX_ENOPATH 2009-08-11 14:25:04 +00:00
Igor Sysoev
98ab9ce988 win32 cache loader support 2009-08-11 08:14:43 +00:00
Igor Sysoev
e9d8858da5 style fix 2009-08-11 07:55:39 +00:00
Igor Sysoev
703aab0b72 unlock incompletely loaded cache 2009-08-10 15:57:42 +00:00
Igor Sysoev
632a1922fa delete mistaken sleep in the previous commit 2009-08-10 14:45:52 +00:00
Igor Sysoev
4413fad0db cache loader process 2009-08-10 13:27:14 +00:00
Igor Sysoev
3210b282f5 test cache path levels while reconfiguration 2009-08-10 13:18:40 +00:00
Igor Sysoev
07b280a29f introduce NGX_PROCESS_JUST_SPAWN and change field name accordingly 2009-08-10 13:07:15 +00:00
Igor Sysoev
fe8726404c bump version 2009-08-10 12:49:06 +00:00
Igor Sysoev
22fc3e656e fix segfault introduced in r3007 2009-08-07 13:16:42 +00:00
Igor Sysoev
ccefc4f0aa fix a garbage in a split fastcgi header 2009-08-04 12:19:17 +00:00
Igor Sysoev
1b52828cd9 continue to parse available fastcgi record after a split header,
this fixes the erroneous message "upstream prematurely closed connection
while reading response header from upstream"
2009-08-04 11:51:10 +00:00