summaryrefslogtreecommitdiffhomepage
AgeCommit message (Collapse)AuthorFilesLines
2013-10-08nginx-1.4.3-RELEASErelease-1.4.3Maxim Dounin1-0/+69
2013-09-30Mail: fixed segfault with ssl/starttls at mail{} level and no cert.Maxim Dounin1-0/+5
A configuration like "mail { starttls on; server {}}" triggered NULL pointer dereference in ngx_mail_ssl_merge_conf() as conf->file was not set.
2013-09-30Mail: fixed overrun of allocated memory (ticket #411).Maxim Dounin1-1/+0
Reported by Markus Linnala.
2013-09-20Core: fix misallocation at ngx_crypt_apr1 (ticket #412).Markus Linnala1-1/+1
Found by using auth_basic.t from mdounin nginx-tests under valgrind. ==10470== Invalid write of size 1 ==10470== at 0x43603D: ngx_crypt_to64 (ngx_crypt.c:168) ==10470== by 0x43648E: ngx_crypt (ngx_crypt.c:153) ==10470== by 0x489D8B: ngx_http_auth_basic_crypt_handler (ngx_http_auth_basic_module.c:297) ==10470== by 0x48A24A: ngx_http_auth_basic_handler (ngx_http_auth_basic_module.c:240) ==10470== by 0x44EAB9: ngx_http_core_access_phase (ngx_http_core_module.c:1121) ==10470== by 0x44A822: ngx_http_core_run_phases (ngx_http_core_module.c:895) ==10470== by 0x44A932: ngx_http_handler (ngx_http_core_module.c:878) ==10470== by 0x455EEF: ngx_http_process_request (ngx_http_request.c:1852) ==10470== by 0x456527: ngx_http_process_request_headers (ngx_http_request.c:1283) ==10470== by 0x456A91: ngx_http_process_request_line (ngx_http_request.c:964) ==10470== by 0x457097: ngx_http_wait_request_handler (ngx_http_request.c:486) ==10470== by 0x4411EE: ngx_epoll_process_events (ngx_epoll_module.c:691) ==10470== Address 0x5866fab is 0 bytes after a block of size 27 alloc'd ==10470== at 0x4A074CD: malloc (vg_replace_malloc.c:236) ==10470== by 0x43B251: ngx_alloc (ngx_alloc.c:22) ==10470== by 0x421B0D: ngx_malloc (ngx_palloc.c:119) ==10470== by 0x421B65: ngx_pnalloc (ngx_palloc.c:147) ==10470== by 0x436368: ngx_crypt (ngx_crypt.c:140) ==10470== by 0x489D8B: ngx_http_auth_basic_crypt_handler (ngx_http_auth_basic_module.c:297) ==10470== by 0x48A24A: ngx_http_auth_basic_handler (ngx_http_auth_basic_module.c:240) ==10470== by 0x44EAB9: ngx_http_core_access_phase (ngx_http_core_module.c:1121) ==10470== by 0x44A822: ngx_http_core_run_phases (ngx_http_core_module.c:895) ==10470== by 0x44A932: ngx_http_handler (ngx_http_core_module.c:878) ==10470== by 0x455EEF: ngx_http_process_request (ngx_http_request.c:1852) ==10470== by 0x456527: ngx_http_process_request_headers (ngx_http_request.c:1283) ==10470==
2013-09-04Win32: $request_time fixed.Maxim Dounin2-2/+2
On win32, time_t is 64 bits wide by default, and passing an ngx_msec_int_t argument for %T format specifier doesn't work. This doesn't manifest itself on other platforms as time_t and ngx_msec_int_t are usually of the same size.
2013-08-23Fixed try_files with empty argument (ticket #390).Maxim Dounin1-1/+3
2013-07-30Autoindex: improved ngx_de_info() error handling.Sergey Kandaurov3-2/+3
This allows to build a directory listing whenever a loop exists in symbolic link resolution of the path argument.
2013-07-30Autoindex: return NGX_ERROR on error if headers were sent.Sergey Kandaurov1-2/+2
This prevents ngx_http_finalize_request() from issuing ngx_http_special_response_handler() on a freed context.
2013-07-24SPDY: fixed segfault with "client_body_in_file_only" enabled.Valentin Bartenev1-9/+2
It is possible to send FLAG_FIN in additional empty data frame, even if it is known from the content-length header that request body is empty. And Firefox actually behaves like this (see ticket #357). To simplify code we sacrificed our microoptimization that did not work right due to missing check in the ngx_http_spdy_state_data() function for rb->buf set to NULL.
2013-10-07Version bump.Maxim Dounin1-2/+2
2013-07-17release-1.4.2 tagMaxim Dounin1-0/+1
2013-07-17nginx-1.4.2-RELEASErelease-1.4.2Maxim Dounin1-0/+81
2013-06-10Perl: fixed r->header_in("Cookie") (ticket #351).Maxim Dounin1-9/+27
It was broken by X-Forwarded-For related changes in f7fe817c92a2 (1.3.14) as hh->offset is no longer 0 for Cookie.
2013-06-04Updated zlib used for win32 builds.Maxim Dounin1-1/+1
2013-05-31Win32: accept_mutex now always disabled (ticket #362).Maxim Dounin1-0/+11
Use of accept mutex on win32 may result in a deadlock if there are multiple worker_processes configured and the mutex is grabbed by a process which can't accept connections.
2013-05-21Upstream: fixed fail_timeout and max_fails > 1.Maxim Dounin2-2/+8
Due to peer->checked always set since rev. c90801720a0c (1.3.0) by round-robin and least_conn balancers (ip_hash not affected), the code in ngx_http_upstream_free_round_robin_peer() function incorrectly reset peer->fails too often. Reported by Dmitry Popov, http://mailman.nginx.org/pipermail/nginx-devel/2013-May/003720.html
2013-05-16OCSP stapling: fix error logging of successful OCSP responses.Piotr Sikora1-3/+2
Due to a bad argument list, nginx worker would crash (SIGSEGV) while trying to log the fact that it received OCSP response with "revoked" or "unknown" certificate status. While there, fix similar (but non-crashing) error a few lines above. Signed-off-by: Piotr Sikora <piotr@cloudflare.com>
2013-04-25Removed vestiges of SVN.Ruslan Ermilov2-32/+2
2013-05-11Proxy: $proxy_internal_body_length fixed.Maxim Dounin1-1/+2
The $proxy_internal_body_length value might change during request lifetime, notably if proxy_set_body used, and use of a cached value might result in incorrect upstream requests. Patch by Lanshun Zhou.
2013-05-11Fixed build with --with-mail_ssl_module.Maxim Dounin3-6/+6
If nginx was compiled without --with-http_ssl_module, but with some other module which uses OpenSSL (e.g. --with-mail_ssl_module), insufficient preprocessor check resulted in build failure. The problem was introduced by e0a3714a36f8 (1.3.14). Reported by Roman Arutyunyan.
2013-05-11Perl: extra "return" removed.Maxim Dounin1-1/+1
2013-07-12Version bump.Maxim Dounin1-2/+2
2013-05-06release-1.4.1 tagMaxim Dounin1-0/+1
2013-05-06nginx-1.4.1-RELEASErelease-1.4.1Maxim Dounin1-0/+22
2013-05-06Fixed chunk size parsing.Maxim Dounin1-0/+4
2013-05-06Version bump.Maxim Dounin1-2/+2
2013-05-06stable-1.4 branchMaxim Dounin0-0/+0
2013-04-24release-1.4.0 tagMaxim Dounin1-0/+1
2013-04-24nginx-1.4.0-RELEASErelease-1.4.0Maxim Dounin1-0/+29
2013-04-24Version bump.Maxim Dounin1-2/+2
2013-04-23SPDY: set NGX_TCP_NODELAY_DISABLED for fake connections.Valentin Bartenev1-0/+1
This is to avoid setting the TCP_NODELAY flag on SPDY socket in ngx_http_upstream_send_response(). The latter works per request, but in SPDY case it might affect other streams in connection.
2013-04-23Perl: request body handling fixed.Maxim Dounin1-3/+36
As of 1.3.9, chunked request body may be available with r->headers_in.content_length_n <= 0. Additionally, request body may be in multiple buffers even if r->request_body_in_single_buf was requested.
2013-04-19Configure: fixed perl Makefile generation (ticket #334).Maxim Dounin2-2/+2
Dependancy tracking introduced in r5169 were not handled absolute path names properly. Absolute names might appear in CORE_DEPS if --with-openssl or --with-pcre configure arguments are used to build OpenSSL/PCRE libraries. Additionally, revert part of r5169 to set NGX_INCS from Makefile variables. Makefile variables have $ngx_include_opt in them, which might result in wrong include paths being used. As a side effect, this also restores build with --with-http_perl_module and --without-http at the same time.
2013-04-18Configure: uniformly refer to libs when searching for md5 and sha1.Ruslan Ermilov2-4/+4
2013-04-18Version bump.Ruslan Ermilov1-2/+2
2013-04-16release-1.3.16 tagMaxim Dounin1-0/+1
2013-04-16nginx-1.3.16-RELEASErelease-1.3.16Maxim Dounin1-0/+51
2013-04-16Events: backout eventport changes (r5172) for now.Maxim Dounin1-8/+0
Evenport method needs more work. Changes in r5172, while being correct, introduce various new regressions with current code.
2013-04-16Request body: only read body in main request (ticket #330).Maxim Dounin1-1/+1
Before 1.3.9 an attempt to read body in a subrequest only caused problems if body wasn't already read or discarded in a main request. Starting with 1.3.9 it might also cause problems if body was discarded by a main request before subrequest start. Fix is to just ignore attempts to read request body in a subrequest, which looks like right thing to do anyway.
2013-04-12Upstream: warn if multiple non-stackable balancers are installed.Ruslan Ermilov2-0/+10
2013-04-12Events: fixed typos in two previous commits.Valentin Bartenev2-2/+2
2013-04-12Events: handle only active events in eventport.Valentin Bartenev1-0/+8
We generate both read and write events if an error event was returned by port_getn() without POLLIN/POLLOUT, but we should not try to handle inactive events, they may even have no handler.
2013-04-12Events: protection from stale events in eventport and devpoll.Valentin Bartenev2-2/+8
Stale write event may happen if read and write events was reported both, and processing of the read event closed descriptor. In practice this might result in "sendfilev() failed (134: ..." or "writev() failed (134: ..." errors when switching to next upstream server. See report here: http://mailman.nginx.org/pipermail/nginx/2013-April/038421.html
2013-04-11Upstream: fixed $upstream_response_length without buffering.Sergey Kandaurov1-1/+1
Reported by Piotr Sikora.
2013-04-10Configure: fixed nginx.so rebuild (broken by r5145).Maxim Dounin2-3/+6
To avoid further breaks it's now done properly, all the dependencies are now passed to Makefile.PL. While here, fixed include list passed to Makefile.PL to use Makefile variables rather than a list expanded during configure.
2013-04-04Upstream: removed surplus ngx_resolve_name_done() call.Valentin Bartenev1-10/+1
It will be called in ngx_http_upstream_finalize_request().
2013-04-03Limit req: rate should be non-zero.Valentin Bartenev1-1/+1
Specifying zero rate caused division by zero when calculating delays.
2013-03-29Pass PCRE_CASELESS to pcre_compile() for caseless matching.Ruslan Ermilov1-1/+1
Previously, we sometimes passed constant value 1 that happens to match PCRE_CASELESS and thus was harmless.
2013-03-28Configure: unified nginx version computation constructs.Ruslan Ermilov2-2/+2
2013-03-28Simplified nginx version maintenance.Ruslan Ermilov2-2/+8
It's no longer necessary to update src/http/modules/perl/nginx.pm when version is bumped, as it's now derived from src/core/nginx.h.