]> git.kaiwu.me - nginx.git/log
nginx.git
14 years agoFastcgi: fixed padding handling on fixed-size records.
Maxim Dounin [Fri, 11 May 2012 13:14:58 +0000 (13:14 +0000)]
Fastcgi: fixed padding handling on fixed-size records.

Padding was incorrectly ignored on end request, empty stdout and stderr
fastcgi records.  This resulted in protocol desynchronization if fastcgi
application used these records with padding for some reason.

Reported by Ilia Vinokurov.

14 years agoAdded r->state reset on fastcgi/scgi/uwsgi request start.
Maxim Dounin [Fri, 11 May 2012 13:09:24 +0000 (13:09 +0000)]
Added r->state reset on fastcgi/scgi/uwsgi request start.

Failing to do so results in problems if 400 or 414 requests are
redirected to fastcgi/scgi/uwsgi upstream, as well as after invalid
headers got from upstream.  This was already fixed for proxy in r3478,
but fastcgi (the only affected protocol at that time) was missed.

Reported by Matthieu Tourne.

14 years agoAdded write event handler reset in ngx_http_named_location().
Maxim Dounin [Fri, 4 May 2012 11:35:22 +0000 (11:35 +0000)]
Added write event handler reset in ngx_http_named_location().

On internal redirects this happens via ngx_http_handler() call, which is
not called on named location redirect.  As a result incorrect write handler
remained (if previously set) and this might cause incorrect behaviour (likely
request hang).

Patch by Yichun Zhang (agentzh).

14 years agodebug_connection: added the IPv6 and UNIX-domain socket support.
Ruslan Ermilov [Sun, 29 Apr 2012 22:02:18 +0000 (22:02 +0000)]
debug_connection: added the IPv6 and UNIX-domain socket support.

14 years agoRemoved surplus condition.
Valentin Bartenev [Fri, 27 Apr 2012 10:48:42 +0000 (10:48 +0000)]
Removed surplus condition.

14 years agoAllows particular modules to handle subrequests properly.
Andrey Belov [Thu, 26 Apr 2012 13:06:27 +0000 (13:06 +0000)]
Allows particular modules to handle subrequests properly.

14 years agoFixed segmentation fault in ngx_resolver_create_name_query().
Ruslan Ermilov [Thu, 26 Apr 2012 12:58:42 +0000 (12:58 +0000)]
Fixed segmentation fault in ngx_resolver_create_name_query().

If name passed for resolution was { 0, NULL } (e.g. as a result
of name server returning CNAME pointing to ".") pointer wrapped
to (void *) -1 resulting in segmentation fault on an attempt to
dereference it.

Reported by Lanshun Zhou.

14 years agoVersion bump.
Maxim Dounin [Thu, 26 Apr 2012 11:20:29 +0000 (11:20 +0000)]
Version bump.

14 years agorelease-1.2.0 tag
Maxim Dounin [Mon, 23 Apr 2012 13:07:07 +0000 (13:07 +0000)]
release-1.2.0 tag

14 years agonginx-1.2.0-RELEASE release-1.2.0
Maxim Dounin [Mon, 23 Apr 2012 13:06:47 +0000 (13:06 +0000)]
nginx-1.2.0-RELEASE

14 years agoVersion bump.
Maxim Dounin [Mon, 23 Apr 2012 12:54:14 +0000 (12:54 +0000)]
Version bump.

14 years agoFix of "%f" format handling.
Igor Sysoev [Mon, 23 Apr 2012 11:11:32 +0000 (11:11 +0000)]
Fix of "%f" format handling.

ngx_sprintf("%.2f", 0.999) incorrectly resulted in "0.100" instead of "1.00".

14 years agoUpdate openssl used for win32 builds.
Maxim Dounin [Mon, 23 Apr 2012 11:05:21 +0000 (11:05 +0000)]
Update openssl used for win32 builds.

14 years agoProxy: added ctx checking to input filters.
Maxim Dounin [Mon, 23 Apr 2012 10:40:01 +0000 (10:40 +0000)]
Proxy: added ctx checking to input filters.

The proxy module context may be NULL in case of filter finalization
(e.g. by image_filter) followed by an internal redirect.  This needs
some better handling, but for now just check if ctx is still here.

14 years agoImage filter: compare aspect ratio more accurately during crop.
Maxim Dounin [Sat, 21 Apr 2012 19:02:21 +0000 (19:02 +0000)]
Image filter: compare aspect ratio more accurately during crop.

Previously used fixed-point calculation caused wrong code path selection
in some cases, resulting in incorrect image size.

See here for report:
http://mailman.nginx.org/pipermail/nginx-devel/2012-April/002123.html

14 years agoFixed segfault with try_files (ticket #152).
Maxim Dounin [Thu, 19 Apr 2012 15:48:03 +0000 (15:48 +0000)]
Fixed segfault with try_files (ticket #152).

The problem occured if first uri in try_files was shorter than request uri,
resulting in reserve being 0 and hence allocation skipped.  The bug was
introduced in r4584 (1.1.19).

14 years agoFixed master exit if there is no events section (ticket #150).
Maxim Dounin [Wed, 18 Apr 2012 14:47:10 +0000 (14:47 +0000)]
Fixed master exit if there is no events section (ticket #150).

Instead of checking if there is events{} section present in configuration
in init_module handler we now do the same in init_conf handler.  This
allows master process to detect incorrect configuration early and
reject it.

14 years agoDon't silently ignore the last line of configuration file that
Ruslan Ermilov [Wed, 18 Apr 2012 13:30:43 +0000 (13:30 +0000)]
Don't silently ignore the last line of configuration file that
consists solely of one unterminated token (inspired by #150).

14 years agoFixed ngx_readv_chain() to honor IOV_MAX (ticket #14).
Maxim Dounin [Tue, 17 Apr 2012 09:13:58 +0000 (09:13 +0000)]
Fixed ngx_readv_chain() to honor IOV_MAX (ticket #14).

Not using full chain passed is ok as consumers are expected to check
event's ready flag to determine if another call is needed, not the
returned size.

14 years agoIOV_MAX handling microoptimization.
Maxim Dounin [Tue, 17 Apr 2012 09:13:15 +0000 (09:13 +0000)]
IOV_MAX handling microoptimization.

We now stop on IOV_MAX iovec entries only if we are going to add new one,
i.e. next buffer can't be coalesced into last iovec.

This also fixes incorrect checks for trailer creation on FreeBSD and
Mac OS X, header.nelts was checked instead of trailer.nelts.

14 years agoFixed loop in ngx_writev_chain() and ngx_solaris_sendfilev_chain().
Maxim Dounin [Tue, 17 Apr 2012 09:10:50 +0000 (09:10 +0000)]
Fixed loop in ngx_writev_chain() and ngx_solaris_sendfilev_chain().

The "complete" flag wasn't cleared on loop iteration start, resulting in
broken behaviour if there were more than IOV_MAX buffers and first
iteration was fully completed (and hence the "complete" flag was set
to 1).

14 years agoFixed log->action after ssl handshake.
Maxim Dounin [Mon, 16 Apr 2012 13:05:20 +0000 (13:05 +0000)]
Fixed log->action after ssl handshake.

14 years agoFixed grammar in error messages.
Ruslan Ermilov [Thu, 12 Apr 2012 19:35:41 +0000 (19:35 +0000)]
Fixed grammar in error messages.

14 years agoVersion bump.
Maxim Dounin [Thu, 12 Apr 2012 16:34:59 +0000 (16:34 +0000)]
Version bump.

14 years agorelease-1.1.19 tag
Maxim Dounin [Thu, 12 Apr 2012 12:43:31 +0000 (12:43 +0000)]
release-1.1.19 tag

14 years agonginx-1.1.19-RELEASE release-1.1.19
Maxim Dounin [Thu, 12 Apr 2012 12:42:46 +0000 (12:42 +0000)]
nginx-1.1.19-RELEASE

14 years agoMp4: sanity checks cleanup.
Maxim Dounin [Thu, 12 Apr 2012 12:18:14 +0000 (12:18 +0000)]
Mp4: sanity checks cleanup.

14 years agoReduced the number of lines of code in ngx_inet_addr().
Ruslan Ermilov [Thu, 12 Apr 2012 10:20:33 +0000 (10:20 +0000)]
Reduced the number of lines of code in ngx_inet_addr().

14 years agoFixed buffer overflow when long URI is processed by "try_files" in
Ruslan Ermilov [Thu, 12 Apr 2012 09:19:14 +0000 (09:19 +0000)]
Fixed buffer overflow when long URI is processed by "try_files" in
regex location with "alias" (fixes ticket #135).

14 years agoImproved readability of the code that produces bitmask from prefix.
Ruslan Ermilov [Wed, 11 Apr 2012 17:18:15 +0000 (17:18 +0000)]
Improved readability of the code that produces bitmask from prefix.
In collaboration with Maxim Dounin.

14 years agoFixed directives inheritance.
Ruslan Ermilov [Wed, 11 Apr 2012 09:56:30 +0000 (09:56 +0000)]
Fixed directives inheritance.

14 years agoAccess module: fixed inheritance of allow/deny ipv6 rules.
Maxim Dounin [Tue, 10 Apr 2012 13:25:53 +0000 (13:25 +0000)]
Access module: fixed inheritance of allow/deny ipv6 rules.

Previous (incorrect) behaviour was to inherit ipv6 rules separately from
ipv4 ones.  Now all rules are either inherited (if there are no rules
defined at current level) or not (if there are any rules defined).

14 years agoFixed debug logging.
Igor Sysoev [Tue, 10 Apr 2012 11:28:59 +0000 (11:28 +0000)]
Fixed debug logging.

14 years agoFixed previous commit.
Igor Sysoev [Tue, 10 Apr 2012 11:27:43 +0000 (11:27 +0000)]
Fixed previous commit.

14 years agoFixed mp4 module seek.
Igor Sysoev [Tue, 10 Apr 2012 11:21:47 +0000 (11:21 +0000)]
Fixed mp4 module seek.

14 years agoFixed signed integer overflows in timer code (ticket #145).
Maxim Dounin [Fri, 6 Apr 2012 23:46:09 +0000 (23:46 +0000)]
Fixed signed integer overflows in timer code (ticket #145).

Integer overflow is undefined behaviour in C and this indeed caused
problems on Solaris/SPARC (at least in some cases).  Fix is to
subtract unsigned integers instead, and then cast result to a signed
one, which is implementation-defined behaviour and used to work.

Strictly speaking, we should compare (unsigned) result with the maximum
value of the corresponding signed integer type instead, this will be
defined behaviour.  This will require much more changes though, and
considered to be overkill for now.

14 years agoComment fixed.
Andrey Belov [Thu, 5 Apr 2012 19:49:34 +0000 (19:49 +0000)]
Comment fixed.

14 years agoStyle: the function type should be on a line by itself
Maxim Konovalov [Thu, 5 Apr 2012 15:32:43 +0000 (15:32 +0000)]
Style: the function type should be on a line by itself
preceding the function.  No functional changes.

14 years agoIn ngx_ptocidr(), check that the supplied prefix length is within
Ruslan Ermilov [Tue, 3 Apr 2012 08:22:00 +0000 (08:22 +0000)]
In ngx_ptocidr(), check that the supplied prefix length is within
the allowed range.

14 years agoFixed spelling in multiline C comments.
Ruslan Ermilov [Tue, 3 Apr 2012 07:37:31 +0000 (07:37 +0000)]
Fixed spelling in multiline C comments.

14 years agoWin32: improved ngx_mutex_init() stub (ticket #138).
Maxim Dounin [Mon, 2 Apr 2012 21:31:45 +0000 (21:31 +0000)]
Win32: improved ngx_mutex_init() stub (ticket #138).

This allows to run nginx with "master_process off" under Windows.

14 years agoWin32: fixed memory allocation for shmem name (ticket #134).
Maxim Dounin [Mon, 2 Apr 2012 21:30:58 +0000 (21:30 +0000)]
Win32: fixed memory allocation for shmem name (ticket #134).

14 years agoUpstream: reject upstreams without normal servers.
Maxim Dounin [Mon, 2 Apr 2012 21:29:35 +0000 (21:29 +0000)]
Upstream: reject upstreams without normal servers.

Such upstreams cause CPU hog later in the code as number of peers isn't
expected to be 0.  Currently this may happen either if there are only backup
servers defined in an upstream block, or if server with ipv6 address used
in an upstream block.

14 years agoVersion bump.
Maxim Dounin [Mon, 2 Apr 2012 21:28:31 +0000 (21:28 +0000)]
Version bump.

14 years agoCorrected spelling of error message (ticket #136).
Ruslan Ermilov [Thu, 29 Mar 2012 19:47:27 +0000 (19:47 +0000)]
Corrected spelling of error message (ticket #136).

14 years agorelease-1.1.18 tag
Maxim Dounin [Wed, 28 Mar 2012 13:29:55 +0000 (13:29 +0000)]
release-1.1.18 tag

14 years agonginx-1.1.18-RELEASE release-1.1.18
Maxim Dounin [Wed, 28 Mar 2012 13:29:29 +0000 (13:29 +0000)]
nginx-1.1.18-RELEASE

14 years agoFixed win32 build after realpath changes in r4559.
Maxim Dounin [Wed, 28 Mar 2012 13:04:39 +0000 (13:04 +0000)]
Fixed win32 build after realpath changes in r4559.

14 years agoConfigure: fixed msghdr.msg_control test on 64bit platforms.
Maxim Dounin [Wed, 28 Mar 2012 12:38:03 +0000 (12:38 +0000)]
Configure: fixed msghdr.msg_control test on 64bit platforms.

Broken by r4560.

14 years agoReplaced ngx_http_realip_from_t with ngx_in_cidr_t.
Ruslan Ermilov [Wed, 28 Mar 2012 09:29:09 +0000 (09:29 +0000)]
Replaced ngx_http_realip_from_t with ngx_in_cidr_t.

14 years agoFixed calculation of range boundaries.
Ruslan Ermilov [Wed, 28 Mar 2012 06:50:23 +0000 (06:50 +0000)]
Fixed calculation of range boundaries.

14 years agoXslt: parser options now set with xmlCtxtUseOptions().
Maxim Dounin [Wed, 28 Mar 2012 01:56:49 +0000 (01:56 +0000)]
Xslt: parser options now set with xmlCtxtUseOptions().

Note that "ctxt->loadsubset = 1" previously used isn't really correct as
ctxt->loadsubset is a bitfield now.  The use of xmlCtxtUseOptions() with
XML_PARSE_DTDLOAD is believed to be a better way to do the same thing.

Patch by Laurence Rowe.

14 years agoFixed more gcc46 warnings in configure tests.
Maxim Dounin [Tue, 27 Mar 2012 16:44:52 +0000 (16:44 +0000)]
Fixed more gcc46 warnings in configure tests.

Steps to reproduce:

./configure --with-cc="gcc46" --with-cc-opt="-Wall -Werror -O2"

14 years agoFixed unconditional MAX_PATH usage (ticket #22).
Maxim Dounin [Tue, 27 Mar 2012 16:42:34 +0000 (16:42 +0000)]
Fixed unconditional MAX_PATH usage (ticket #22).

POSIX doesn't require it to be defined, and Debian GNU/Hurd doesn't define
it.  Note that if there is no MAX_PATH defined we have to use realpath()
with NULL argument and free() the result.

14 years agoAdded explicit include of time.h.
Maxim Dounin [Tue, 27 Mar 2012 16:37:43 +0000 (16:37 +0000)]
Added explicit include of time.h.

Most of the systems have it included due to namespace pollution, but
relying on this is a bad idea.  Explicit include is required for at least
Debian GNU/Hurd.

14 years agoResolver: added missing sanity checking when creating name queries.
Maxim Dounin [Thu, 22 Mar 2012 11:57:18 +0000 (11:57 +0000)]
Resolver: added missing sanity checking when creating name queries.

Found by Veracode.

14 years agoWin32: added missing call to srand().
Maxim Dounin [Thu, 22 Mar 2012 10:45:08 +0000 (10:45 +0000)]
Win32: added missing call to srand().

Found by Veracode.

14 years agoAdded xslt_param and xslt_string_param directives.
Maxim Dounin [Thu, 22 Mar 2012 10:44:00 +0000 (10:44 +0000)]
Added xslt_param and xslt_string_param directives.

Based on patch by Samuel Behan.

14 years agoFixed off-by-one in xslt parameter parsing.
Maxim Dounin [Thu, 22 Mar 2012 10:43:33 +0000 (10:43 +0000)]
Fixed off-by-one in xslt parameter parsing.

The problem was introduced in 0.7.44 (r2589) during conversion to complex
values.  Previously string.len included space for terminating NUL, but
with complex values it doesn't.

14 years agoRestricted keepalive_disable safari to OS X only.
Maxim Dounin [Thu, 22 Mar 2012 10:42:27 +0000 (10:42 +0000)]
Restricted keepalive_disable safari to OS X only.

The problem doesn't affect non-Apple systems for sure, and many pretend
to be Safari now.

Prodded by Piotr Sikora.

14 years agoRemoved safari from keepalive_disable default.
Maxim Dounin [Thu, 22 Mar 2012 10:41:29 +0000 (10:41 +0000)]
Removed safari from keepalive_disable default.

The bug in question is likely already fixed (though unfortunately we have
no information available as Apple's bugtracker isn't open), and the
workaround seems to be too pessimistic for modern versions of Safari
as well as other webkit-based browsers pretending to be Safari.

14 years agoThe addition of $tcpinfo_* variables has broken the build on Linux
Ruslan Ermilov [Wed, 21 Mar 2012 15:35:05 +0000 (15:35 +0000)]
The addition of $tcpinfo_* variables has broken the build on Linux
systems with glibc versions prior to 2.7.  Fixed this by checking
the existence of "struct tcp_info" members during configuration.

14 years agoworker_cpu_affinity: cleaned up Linux implementation, added FreeBSD support.
Ruslan Ermilov [Wed, 21 Mar 2012 13:58:51 +0000 (13:58 +0000)]
worker_cpu_affinity: cleaned up Linux implementation, added FreeBSD support.

14 years agoIf we inserted "Last-Modified" in r->headers_out.headers, don't
Ruslan Ermilov [Wed, 21 Mar 2012 07:35:43 +0000 (07:35 +0000)]
If we inserted "Last-Modified" in r->headers_out.headers, don't
forget to set the r->headers_out.last_modified pointer to it.

14 years agoMinor ngx_http_headers_filter_module.c code cleanup.
Ruslan Ermilov [Wed, 21 Mar 2012 06:19:11 +0000 (06:19 +0000)]
Minor ngx_http_headers_filter_module.c code cleanup.

- Removed "hash" element from ngx_http_header_val_t which was always 1.
- Replaced NGX_HTTP_EXPIRES_* with ngx_http_expires_t enum type.
- Added prototype for ngx_http_add_header()
- Simplified ngx_http_set_last_modified().

14 years agoFor the sake of case/switch code readability, 'fall through'
Maxim Konovalov [Mon, 19 Mar 2012 14:57:29 +0000 (14:57 +0000)]
For the sake of case/switch code readability, 'fall through'
comments added.

14 years agoImplemented $tcpinfo_rtt, $tcpinfo_rttvar, $tcpinfo_snd_cwnd, and
Ruslan Ermilov [Fri, 16 Mar 2012 19:15:33 +0000 (19:15 +0000)]
Implemented $tcpinfo_rtt, $tcpinfo_rttvar, $tcpinfo_snd_cwnd, and
$tcpinfo_rcv_space variables.  Supported on Linux and FreeBSD.

14 years agoSome older OSes (notably FreeBSD 4.x) did not have %zu
Ruslan Ermilov [Fri, 16 Mar 2012 07:33:55 +0000 (07:33 +0000)]
Some older OSes (notably FreeBSD 4.x) did not have %zu
format specifier, so revert to using %d.

14 years agoFixed compilation warnings in configuration C tests.
Ruslan Ermilov [Thu, 15 Mar 2012 20:39:38 +0000 (20:39 +0000)]
Fixed compilation warnings in configuration C tests.

Based on a patch by Piotr Sikora.

14 years agoLocal variable "ngx_http_next_filter" renamed to "ngx_http_next_body_filter"
Ruslan Ermilov [Thu, 15 Mar 2012 20:08:58 +0000 (20:08 +0000)]
Local variable "ngx_http_next_filter" renamed to "ngx_http_next_body_filter"
for consistency with other modules.

14 years agoThe "error_log" directive specified in the "http", "server", and
Ruslan Ermilov [Thu, 15 Mar 2012 20:04:50 +0000 (20:04 +0000)]
The "error_log" directive specified in the "http", "server", and
"location" sections now understands the special "stderr" parameter.
It was already treated specially when specified in the main section.

14 years agoSlight optimization in ngx_http_get_variable_index().
Ruslan Ermilov [Thu, 15 Mar 2012 19:41:35 +0000 (19:41 +0000)]
Slight optimization in ngx_http_get_variable_index().

14 years ago- New variable: $connection_requests.
Ruslan Ermilov [Thu, 15 Mar 2012 19:37:32 +0000 (19:37 +0000)]
- New variable: $connection_requests.
- While here, fixed format specifier for $connection.

14 years agoVersion bump.
Maxim Dounin [Thu, 15 Mar 2012 17:43:54 +0000 (17:43 +0000)]
Version bump.

14 years agorelease-1.1.17 tag
Maxim Dounin [Thu, 15 Mar 2012 11:32:39 +0000 (11:32 +0000)]
release-1.1.17 tag

14 years agonginx-1.1.17-RELEASE release-1.1.17
Maxim Dounin [Thu, 15 Mar 2012 11:32:18 +0000 (11:32 +0000)]
nginx-1.1.17-RELEASE

14 years agoHeaders with null character are now rejected.
Maxim Dounin [Thu, 15 Mar 2012 11:27:57 +0000 (11:27 +0000)]
Headers with null character are now rejected.

Headers with NUL character aren't allowed by HTTP standard and may cause
various security problems.  They are now unconditionally rejected.

14 years agoFixed incorrect ngx_cpystrn() usage in ngx_http_*_process_header().
Maxim Dounin [Thu, 15 Mar 2012 11:27:12 +0000 (11:27 +0000)]
Fixed incorrect ngx_cpystrn() usage in ngx_http_*_process_header().

This resulted in a disclosure of previously freed memory if upstream
server returned specially crafted response, potentially exposing
sensitive information.

Reported by Matthew Daley.

14 years agoFixed ssi and perl interaction.
Maxim Dounin [Thu, 15 Mar 2012 11:23:07 +0000 (11:23 +0000)]
Fixed ssi and perl interaction.

Embedded perl module assumes there is a space for terminating NUL character,
make sure to provide it in all situations by allocating one extra byte for
value buffer.  Default ssi_value_length is reduced accordingly to
preserve 256 byte allocations.

While here, fixed another one byte value buffer overrun possible in
ssi_quoted_symbol_state.

Reported by Matthew Daley.

14 years agoUwsgi: merged r->http_version fixes from scgi module.
Maxim Dounin [Thu, 15 Mar 2012 11:21:54 +0000 (11:21 +0000)]
Uwsgi: merged r->http_version fixes from scgi module.

Fixed incorrect use of r->http_version (r4372).  Removed duplicate function
declaration (r4373).  Removed error if there is no Status header (r4374).

14 years agoUpdated OpenSSL and PCRE used for win32 builds.
Maxim Dounin [Thu, 15 Mar 2012 01:57:09 +0000 (01:57 +0000)]
Updated OpenSSL and PCRE used for win32 builds.

14 years agoMentioned the NGINX environment variable.
Ruslan Ermilov [Mon, 12 Mar 2012 12:29:56 +0000 (12:29 +0000)]
Mentioned the NGINX environment variable.

14 years agoAdded scgi_temp and uwsgi_temp to svn:ignore.
Ruslan Ermilov [Sun, 11 Mar 2012 13:33:03 +0000 (13:33 +0000)]
Added scgi_temp and uwsgi_temp to svn:ignore.

14 years ago- Applied some of the OpenBSD changes.
Ruslan Ermilov [Tue, 6 Mar 2012 06:54:48 +0000 (06:54 +0000)]
- Applied some of the OpenBSD changes.
- Expanded contractions.
- Fixed some markup.
- Updated URL of official documentation.

14 years agoWhitespace fixes.
Maxim Dounin [Mon, 5 Mar 2012 18:09:06 +0000 (18:09 +0000)]
Whitespace fixes.

14 years agoGrammar and wording fixes in CHANGES.
Maxim Dounin [Mon, 5 Mar 2012 18:08:23 +0000 (18:08 +0000)]
Grammar and wording fixes in CHANGES.

14 years agoVersion bump.
Maxim Dounin [Mon, 5 Mar 2012 18:06:15 +0000 (18:06 +0000)]
Version bump.

14 years agorelease-1.1.16 tag
Maxim Dounin [Wed, 29 Feb 2012 13:45:39 +0000 (13:45 +0000)]
release-1.1.16 tag

14 years agonginx-1.1.16-RELEASE release-1.1.16
Maxim Dounin [Wed, 29 Feb 2012 13:45:18 +0000 (13:45 +0000)]
nginx-1.1.16-RELEASE

14 years agoRaised simultaneous subrequest limit from 50 to 200.
Maxim Dounin [Tue, 28 Feb 2012 14:54:23 +0000 (14:54 +0000)]
Raised simultaneous subrequest limit from 50 to 200.

It wasn't enforced for a long time, and there are reports that people
use up to 100 simultaneous subrequests now.  As this is a safety limit
to prevent loops, it's raised accordingly.

14 years agoAdded msleep() on reload to allow new processes to start.
Maxim Dounin [Tue, 28 Feb 2012 11:40:18 +0000 (11:40 +0000)]
Added msleep() on reload to allow new processes to start.

This is expected to ensure smoother operation on reload (and with less
chance of listen queue overflows).

Prodded by Igor Sysoev.

14 years agoFixed spelling in single-line comments.
Ruslan Ermilov [Tue, 28 Feb 2012 11:31:05 +0000 (11:31 +0000)]
Fixed spelling in single-line comments.

14 years agoWorkaround for fs_size on ZFS (ticket #46).
Maxim Dounin [Tue, 28 Feb 2012 11:09:02 +0000 (11:09 +0000)]
Workaround for fs_size on ZFS (ticket #46).

ZFS reports incorrect st_blocks until file settles on disk, and this
may take a while (i.e. just after creation of a file the st_blocks value
is incorrect).  As a workaround we now use st_blocks only if
st_blocks * 512 > st_size, this should fix ZFS problems while still
preserving accuracy for other filesystems.

The problem had appeared in r3900 (1.0.1).

14 years agoFix of rbtree lookup on hash collisions.
Maxim Dounin [Mon, 27 Feb 2012 22:15:39 +0000 (22:15 +0000)]
Fix of rbtree lookup on hash collisions.

Previous code incorrectly assumed that nodes with identical keys are linked
together.  This might not be true after tree rebalance.

Patch by Lanshun Zhou.

14 years agoFixed null pointer dereference in resolver (ticket #91).
Maxim Dounin [Mon, 27 Feb 2012 16:57:02 +0000 (16:57 +0000)]
Fixed null pointer dereference in resolver (ticket #91).

The cycle->new_log.file may not be set before config parsing finished if
there are no error_log directive defined at global level.  Fix is to
copy it after config parsing.

Patch by Roman Arutyunyan.

14 years agoDisable symlinks: added the "from=" parameter to the "disable_symlinks"
Valentin Bartenev [Mon, 27 Feb 2012 16:54:10 +0000 (16:54 +0000)]
Disable symlinks: added the "from=" parameter to the "disable_symlinks"
directive.

14 years agoDisable symlinks: initialization of the "disable_symlinks" field in
Valentin Bartenev [Mon, 27 Feb 2012 16:51:28 +0000 (16:51 +0000)]
Disable symlinks: initialization of the "disable_symlinks" field in
ngx_open_file_info_t moved to a separate function.

This is preparation for the "from=" parameter implementation of the
"disable_symlinks" directive.

14 years agoDisable symlinks: added the "from" parameter support to the open file cache.
Valentin Bartenev [Mon, 27 Feb 2012 16:46:57 +0000 (16:46 +0000)]
Disable symlinks: added the "from" parameter support to the open file cache.

14 years agoConfigure: moved icc detection before gcc.
Maxim Dounin [Mon, 27 Feb 2012 16:23:44 +0000 (16:23 +0000)]
Configure: moved icc detection before gcc.

New versions of icc confuse auto/cc/name due to introduced handling
of a "icc -v":

$ icc -v
icc version 12.1.3 (gcc version 4.6.0 compatibility)
$ icc -V
Intel(R) C Compiler XE for applications running on IA-32, Version 12.1.3.293 Build 20120212
Copyright (C) 1985-2012 Intel Corporation.  All rights reserved.
FOR NON-COMMERCIAL USE ONLY

See report here:
http://mailman.nginx.org/pipermail/nginx/2012-February/032177.html

14 years agoAdded support for the 307 Temporary Redirect.
Ruslan Ermilov [Mon, 27 Feb 2012 11:43:40 +0000 (11:43 +0000)]
Added support for the 307 Temporary Redirect.