summaryrefslogtreecommitdiffhomepage
path: root/src (follow)
AgeCommit message (Collapse)AuthorFilesLines
2010-06-07merge r3528:Igor Sysoev13-78/+17
remove r->zero_in_uri
2010-06-07merge r3518, r3527:Igor Sysoev6-4/+107
cache related fixes: *) do not cache response if it has "no-store" or "private" in "Cache-Control" header *) proxy_no_cache and fastcgi_no_cache
2010-06-07merge r3502:Igor Sysoev3-7/+14
use lstat() for WebDAV DELETE, COPY, and MOVE to handle symlinks
2010-06-07merge r3498, r3499:Igor Sysoev5-3/+12
opening files fixes: *) use non-blocking open() not to hang on FIFO files, etc. *) do not log misleading errno in "not a regular file" error
2010-06-07merge r3489, r3493:Igor Sysoev1-0/+3
*) MSVC8 compatibility with OpenSSL 1.0.0 *) fix building OpenSSL-1.0.0 on 64-bit Linux: make installs the libraries in lib64 directory and build nginx/Windows against OpenSSL-0.9.8n
2010-06-07merge r3487, r3525:Igor Sysoev2-9/+6
rewrite fixes: *) escape ampersand in argument while rewrite *) autodetect redirect if URI is rewritten to a string starting with $scheme
2010-06-07merge r3488:Igor Sysoev1-3/+8
revert partially r1555 and fix the error "memcached sent invalid trailer"
2010-06-07merge r3482:Igor Sysoev1-4/+6
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-06-07merge r3515:Igor Sysoev1-2/+0
fix segfault: ngx_http_upstream_cleanup() cleans r->cleanup, the bug had been introduced in r3426
2010-06-07merge r3478:Igor Sysoev1-0/+2
reset a parsing state to parse correctly an upstream response, if 400 or 414 response has been redirected to upstream
2010-06-07merge r3473, r3474, r3385, r3386, r3537:Igor Sysoev19-53/+129
signal processing stability: *) use sys_errlist[] in signal handler instead of non Async-Signal-Safe strerror_r() *) do not update time in the timer signal handler, since localtime_r() is not Async-Signal-Safe function *) 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 *) introduce ngx_time_sigsafe_update() to update the error log time only *) change ngx_time_update() interface
2010-06-07merge r3464, r3500, r3501:Igor Sysoev4-16/+10
*) make $request_method non-cacheable *) make $arg_ variables non-cacheable *) change processing variables accessed by SSI and perl module: *) the indexed variables are always flushed *) never show warning for not found variables
2010-06-07merge r3460:Igor Sysoev1-8/+17
allow HTTPS referers
2010-06-07merge r3459, r3571:Igor Sysoev4-5/+24
Win32 fixes: *) compare long file names in case-insensitive mode, the bug had been introduced in r3436 *) test default NTFS stream "::$DATA"
2010-06-07merge r3456, r3458, r3465:Igor Sysoev2-2/+10
SSL fixes: *) decrease SSL handshake error level to info *) 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". *) 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-06-07merge r3457:Igor Sysoev1-1/+1
fix a geo range if the range includes two or more /16 networks and does not begin at /16 network boundary
2010-06-07merge r3454, r3455, r3486, r3496, r3519, r3523:Igor Sysoev3-18/+18
SSI fixes: *) use content type of the parent request in SSI stub block output instead of default one *) SSI %s timefmt has no timezone offset *) change ngx_http_ssi_filter and ngx_http_charset_filter order *) do not store an encoded variable value as a new cached variable value *) fix SSI include stub for valid empty responses *) allow to use $uid_got in SSI and perl module
2010-06-07merge r3452, r3462, r3471, r3472:Igor Sysoev3-5/+12
fix miscellaneous name bugs: *) fix $upstream_http_ variable prefix length *) use a right "Location" header name, however, it did not harm, since ngx_http_variable_sent_location() never use key name field *) fix proxy_redirect name in error message *) "proxy_redirect default" may not be used if a proxy_pass uses variables
2010-06-07merge r3451, r3506:Igor Sysoev2-3/+1
mail related fixes: *) delete surplus code *) Zimbra IMAP server may return only 4 bytes: "+ \r\n"
2010-06-07merge r3412, r3485:Igor Sysoev3-2/+21
*) allow a chunked body for 201 responses *) chunked_transfer_encoding
2010-06-07merge r3399:Igor Sysoev1-27/+79
$geoip_city_continent_code, $geoip_latitude, $geoip_longitude
2010-06-07merge r3394, r3395:Igor Sysoev1-12/+32
force image filter conversion if JPEG application data consume more than 5%
2010-06-07merge r3318, r3449:Igor Sysoev2-9/+0
perl related fixes: *) do not log error if $r->variable was not found *) delete ngx_http_perl_cleanup_t unused since r909
2010-06-04merge r3316, r3317, r3420, r3421, r3453:Igor Sysoev4-18/+36
browsers related fixes: *) add MSIE padding for Chrome too *) disable keepalive for Safari: https://bugs.webkit.org/show_bug.cgi?id=5760 *) do not disable keepalive after POST requests for MSIE 7+
2010-06-04bump versionIgor Sysoev2-3/+3
2010-02-01merge r3406:Igor Sysoev1-1/+1
fix negative time in "Cache-Control" if "expires modified" sets time in the past
2010-02-01merge r3351, r3352:Igor Sysoev1-15/+16
perl exit fixes: *) use global perl variable in perl_destruct()/perl_free() for non-mulitiplicity perl *) add comment from r2716 commit message
2010-02-01merge r3309, r3314, r3315, r3380:Igor Sysoev6-18/+40
gzip headers related fixes: *) remove "Content-Encoding: gzip" in 304 response sent by ngx_http_gzip_static_module *) refactor gzip_vary handling *) test r->header_only last, since it's not actually frequent here: 304 and HEAD responses are not set it before the filter
2010-02-01merge r3294, r3305:Igor Sysoev1-2/+12
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.
2010-02-01merge r3137, r3198, r3199, r3353, r3370, r3371, r3398, r3399:Igor Sysoev6-13/+61
cache related fixes: *) do not pass buf with empty cached response, this fixes "zero size buf in output" alert *) hide cacheable Set-Cookie and P3P FastCGI response headers *) test comma separator in "Cache-Control" *) a cache manager thread handle was overwritten by a cache loader thread handle, this caused an exit delay, the bug had been introduced in r3248 *) fix handling cached HTTP/0.9 response *) log proxied HTTP/0.9 responses status as "009" *) fix the "If-None-Match" header name *) fix a cached zero-length body case
2010-02-01merge r3286:Igor Sysoev1-1/+1
use setproctitle("%s", title)
2010-02-01merge r3283, r3284:Igor Sysoev2-4/+27
fix segfault if $limit_rate was logged fix segfault in SSL if limit_rate is used
2010-02-01merge r3282:Igor Sysoev1-1/+1
fix "if (!-x ...)"
2010-02-01merge r3138, r3139, r3157, r3158, r3159, r3164, r3165,Igor Sysoev7-174/+173
r3202, r3203, r3383, r3388, r3417, r3418: Win32 (mostly) and some Unix file related fixes: *) preserve errno while ngx_free() *) win32 ngx_file_info() utf8 support *) delete Win95 code *) log file name for read/write errors *) test incomplete WriteFile() *) handle short pwrite() to log an error cause: ENOSPC, EDQUOT, or EFBIG *) uniform ngx_directio_on/off() interface with other file functions *) do not create Win32 drive letter in ngx_create_full_path() *) ignore EACCES errors for top level directories in ngx_create_full_path() *) 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() *) 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 *) skip URI trailing spaces under Win32 *) disable Win32 short file names
2010-02-01merge r3208, r3209:Igor Sysoev1-12/+16
ngx_http_parse_time() fixes: *) use ngx_uint_t instead of int, strange to say this reduce function size by 16 bytes *) ngx_http_parse_time() should support full 32-bit time
2010-02-01merge r3201, r3204, r3411:Igor Sysoev6-22/+18
ngx_http_autoindex_module fixes: *) 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 *) fix ngx_utf8_cpystrn(): it did not fully copy utf-8 string
2010-02-01merge r3200:Igor Sysoev1-0/+7
nginx did not close log file set by --error-log-path, the bug was introduced in r2744
2010-02-01merge r3163, r3213:Igor Sysoev1-5/+7
*) fix discarding body *) prevent handling discarded body as a pipelined request
2010-02-01merge r3155, r3156, r3160, r969, r3191, r3197, r3358:Igor Sysoev4-9/+47
SSL fixes: *) $ssl_session_id *) allow "make clean" for OpenSSL, the bug was introduced in r2874 *) disable SSLv2 and use only strong ciphers by default *) decrease SSL handshake error level to info
2010-02-01merge r3148, r3152, r3161:Igor Sysoev5-11/+14
error processing fixes: *) fail if file size was changed *) low default connection errors level from alert to error *) low ENAMETOOLONG logging level
2010-02-01merge r3147:Igor Sysoev1-1/+1
fix typo in addition_types directive name
2010-02-01merge r3153, r3154, r3288, r3382:Igor Sysoev2-47/+71
request header processing fixes: *) $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 *) fix segfault if there is single large_client_header_buffers and a request line fills it completely *) default large_client_header_buffers' buffer size should be 8K as compatible with Apache's one
2010-02-01merge r3039, r3145:Igor Sysoev2-3/+46
access_log fixes: *) strict testing "access_log off" *) allow to log invalid $request in access_log always, before it was logged only if error_log was set to info or debug level
2010-02-01merge r2990, r3324, r3384, r3419:Igor Sysoev3-21/+27
various proxy/FastCGI fixes: *) do auto redirect for proxy_pass/fastcgi_pass with variables *) allow "proxy_pass http://$backend" without URI part *) add conf/fastcgi.conf *) delete u->cleanup mark, this fixes large values in $upstream_response_time, the bug had been introduced in r3246
2010-02-01bump versionIgor Sysoev2-3/+3
2009-11-16r3301 merge:Igor Sysoev2-0/+41
disable SSL renegotiation (CVE-2009-3555)
2009-11-16r3141 merge:Igor Sysoev1-2/+6
fix posix_memalign() error handling
2009-11-16r3313 merge:Igor Sysoev1-1/+7
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 r3250
2009-11-16r3140, r3144, r3298, r3299, r3300, r3307, r3308 merge:Igor Sysoev2-16/+23
resolver fixes: *) fix memory leak in resolver *) fix resolver cache rbtree comparison *) fix segfault in resolver: ngx_resolve_name_done() and ngx_resolve_addr_done() did not delete contexts from a resolver node waiting list. *) fix "PTR ." case in address resolver *) add quotes in an error message, *) fix resolving an empty name (".") *) use ngx_resolver_alloc() instead of ngx_resolver_calloc() since all fields are filled
2009-11-16r3117, r3123, r3229 merge:Igor Sysoev7-4/+47
server name related merges: *) 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 *) test space between "~" and regex in server_name and invalid_referers *) do not run regex for empty host name since regex always fails in this case, the bug had been introduced in r2196