summaryrefslogtreecommitdiffhomepage
AgeCommit message (Collapse)AuthorFilesLines
2013-12-18Version bump.Valentin Bartenev1-2/+2
2013-12-17release-1.5.8 tagMaxim Dounin1-0/+1
2013-12-17nginx-1.5.8-RELEASErelease-1.5.8Maxim Dounin1-0/+85
2013-12-13Resolver: lookups are case-insensitive.Ruslan Ermilov1-3/+5
2013-12-09The "ipv6=" boolean parameter of the "resolver" directive.Ruslan Ermilov2-3/+36
When set to "off", only IPv4 addresses will be resolved, and no AAAA queries are ever sent.
2013-12-09Resolver: implemented IPv6 name to address resolving.Ruslan Ermilov5-63/+433
2013-12-06Resolver: implemented IPv6 address to name resolving.Ruslan Ermilov2-80/+398
2013-12-06Changed resolver API to use ngx_addr_t.Ruslan Ermilov7-141/+229
2013-12-13Resolver: fixed indentation.Ruslan Ermilov1-20/+20
2013-12-06Core: externalized ngx_cmp_sockaddr().Ruslan Ermilov3-70/+78
It's also extended with the "cmp_port" argument to indicate whether ports should be compared as well, or only addresses.
2013-12-06Resolver: fixes in PTR processing.Ruslan Ermilov1-5/+12
Verify that class of RR is "IN". Verify that RR data length is non-zero.
2013-12-06Resolver: fixes in A processing.Ruslan Ermilov1-14/+25
Verify that class of RR is "IN". Verify that RR data length is exactly four octets. Correctly shift to the next RR if RR type is unknown.
2013-12-06Resolver: fixed response processing.Ruslan Ermilov1-6/+5
Stricten response header checks: ensure that reserved bits are zeroes, and that the opcode is "standard query". Fixed the "zero-length domain name in DNS response" condition.
2013-12-06Resolver: removed unnecessary casts.Ruslan Ermilov1-2/+2
2013-12-06Resolver: improved code readability.Ruslan Ermilov1-69/+83
Renamed ngx_resolver_query_t to ngx_resolver_hdr_t as it describes the header that is common to DNS queries and answers. Replaced the magic number 12 by the size of the header structure. The other changes are self-explanatory.
2013-12-12Trailing whitespace fix.Maxim Dounin1-1/+1
2013-12-11Use ngx_chain_get_free_buf() in pipe input filters.Valentin Bartenev3-76/+20
No functional changes.
2013-12-10SPDY: drop the "delayed" flag when finalizing connection.Valentin Bartenev1-0/+2
This flag in SPDY fake write events serves the same purposes as the "ready" flag in real events, and it must be dropped if request needs to be handled. Otherwise, it can prevent the request from finalization if ngx_http_writer() was set, which results in a connection leak. Found by Xiaochen Wang.
2013-12-09Fixed handling of UNIX-domain sockets.Ruslan Ermilov2-0/+18
When evaluating $local_port, $server_port, and $server_addr, UNIX-domain sockets were mistakenly interpreted as IPv4 sockets.
2013-12-09Core: keep the length of the local sockaddr.Ruslan Ermilov4-5/+11
2013-12-06Fixed incorrect ngx_str_set() usage, broken in c82b2e020b9f.Piotr Sikora1-1/+1
Found by Coverity Scan CID 1135525. Signed-off-by: Piotr Sikora <piotr@cloudflare.com>
2013-12-06Contrib: added vim to README.Maxim Dounin1-0/+6
2013-12-04Contrib: add vim scripts to contrib/ directory.Evan Miller3-0/+718
I've been maintaining these scripts independently for a while now, even though I'm no longer active in the community. Seems to me that contrib/ is a good long-term home for the scripts.
2013-12-06Configure: enable -Wconditional-uninitialized with clang.Ruslan Ermilov1-0/+1
2013-12-04Fixed build without SSL, broken by c82b2e020b9f.Maxim Dounin1-3/+3
2013-12-04SSL support in the uwsgi module.Maxim Dounin1-7/+197
Based on patch by Roberto De Ioris.
2013-12-03Added support for TCP_FASTOPEN supported in Linux >= 3.7.1.Mathew Rodley6-0/+78
--- auto/unix | 12 ++++++++++++ src/core/ngx_connection.c | 32 ++++++++++++++++++++++++++++++++ src/core/ngx_connection.h | 4 ++++ src/http/ngx_http.c | 4 ++++ src/http/ngx_http_core_module.c | 21 +++++++++++++++++++++ src/http/ngx_http_core_module.h | 3 +++ 6 files changed, 76 insertions(+)
2013-12-03Fixed "setfib=" on non-first listening socket.Maxim Dounin1-0/+2
2013-12-03Improved code readablity in ngx_http_upstream_init_round_robin().Vladimir Homutov1-3/+3
Changed initialization order of the peer structure in one of the cases to be in line with the rest. No functional changes.
2013-12-03Fixed null pointer dereference with $upstream_cache_last_modified.Ruslan Ermilov1-1/+2
2013-11-29Win32: fixed init_process without master process (ticket #453).Maxim Dounin1-10/+0
Init process callbacks are called by ngx_worker_thread(), there is no need to call them in ngx_single_process_cycle().
2013-11-29Upstream: skip empty cache headers.Maxim Dounin3-3/+3
Notably this fixes HTTP_IF_MODIFIED_SINCE which was always sent with cache enabled in fastcgi/scgi/uwsgi after 43ccaf8e8728.
2013-11-29SSL: fixed c->read->ready handling in ngx_ssl_recv().Maxim Dounin1-0/+5
If c->read->ready was reset, but later some data were read from a socket buffer due to a call to ngx_ssl_recv(), the c->read->ready flag should be restored if not all data were read from OpenSSL buffers (as kernel won't notify us about the data anymore). More details are available here: http://mailman.nginx.org/pipermail/nginx/2013-November/041178.html
2013-11-29Version bump.Maxim Dounin1-2/+2
2013-11-19release-1.5.7 tagMaxim Dounin1-0/+1
2013-11-19nginx-1.5.7-RELEASErelease-1.5.7Maxim Dounin1-0/+136
2013-11-19Proper backtracking after space in a request line.Ruslan Ermilov1-0/+2
2013-11-18Upstream: cache revalidation with conditional requests.Maxim Dounin8-6/+254
The following new directives are introduced: proxy_cache_revalidate, fastcgi_cache_revalidate, scgi_cache_revalidate, uwsgi_cache_revalidate. Default is off. When set to on, they enable cache revalidation using conditional requests with If-Modified-Since for expired cache items. As of now, no attempts are made to merge headers given in a 304 response during cache revalidation with headers previously stored in a cache item. Headers in a 304 response are only used to calculate new validity time of a cache item.
2013-11-11SPDY: fixed request hang with the auth request module.Valentin Bartenev1-1/+1
We should just call post_handler() when subrequest wants to read body, like it happens for HTTP since rev. f458156fd46a. An attempt to init request body for subrequests results in hang if the body was not already read.
2013-11-11Configure: call "make distclean" for libatomic.Piotr Sikora1-1/+3
Signed-off-by: Piotr Sikora <piotr@cloudflare.com>
2013-11-04Configure: call "make clean" for OpenSSL only if Makefile exists.Piotr Sikora1-1/+1
This change allows to build nginx against git checkout of OpenSSL. Signed-off-by: Piotr Sikora <piotr@cloudflare.com>
2013-10-31Win32: plugged memory leak.Maxim Dounin1-0/+2
2013-10-31Gunzip: proper error handling on gunzipping an empty response.Maxim Dounin1-3/+7
With previous code, an empty (malformed) response resulted in a request finalized without sending anything to a client.
2013-10-31Gunzip: "error" logging level on inflate() errors.Maxim Dounin1-1/+1
Errors can easily happen due to broken upstream responses, there is no need to log them at "alert" level.
2013-10-31Removed extra allocation for $sent_http_last_modified.Maxim Dounin1-2/+1
There is no need to allocate memory for "Last-Modified: " string, the variable only contains date itself.
2013-10-31Auth basic: "info" logging level on no user/password.Maxim Dounin1-1/+1
This isn't an exceptional condition and normally happens on first request from a client.
2013-10-28Gzip, gunzip: flush pending data when incoming chain is NULL.Yichun Zhang2-2/+2
2013-10-31Core: handling of getsockopt(TCP_DEFER_ACCEPT) failures.Maxim Dounin3-2/+12
Recent Linux versions started to return EOPNOTSUPP to getsockopt() calls on unix sockets, resulting in log pollution on binary upgrade. Such errors are silently ignored now.
2013-10-24Core: apply missed options to sockets added during binary upgrade.Piotr Sikora1-0/+10
The accept_filter and deferred options were not applied to sockets that were added to configuration during binary upgrade cycle. Signed-off-by: Piotr Sikora <piotr@cloudflare.com>
2013-10-21Upstream: optimize loops in ngx_http_upstream_init_round_robin().Xiaochen Wang1-8/+8