summaryrefslogtreecommitdiffhomepage
path: root/src (follow)
AgeCommit message (Collapse)AuthorFilesLines
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
2009-11-16bump versionIgor Sysoev2-3/+3
2009-10-26merge r3185:Igor Sysoev1-1/+1
fix building by gcc45
2009-10-26merge r3162, r3183:Igor Sysoev5-9/+19
WebDAV fixes: *) check unsafe Destination *) omit '\0' from "Location" header on MKCOL request
2009-10-26merge r3079:Igor Sysoev1-0/+1
discard request body before returning 413 error, this fixes custom 413 page redirection bug introduced in r1456
2009-10-26merge r2976:Igor Sysoev1-2/+2
allow underscore in request method
2009-10-26merge r3055, r3136:Igor Sysoev2-4/+14
gzip related fixes: *) do not disable gzip for MSIE 6.0 SV1 in "gzip_disable msie6" *) nginx always sent "Vary: Accept-Encoding", if both gzip_static and gzip_vary were on
2009-10-26merge r3024, r3025, r3028, r3033, r3034, r3035, r3036:Igor Sysoev10-159/+250
allow cross device temporary files atomic copying
2009-10-26merge r3017, r3018, r3019, r3020, r3021, r3022, r3023, r3196:Igor Sysoev12-122/+241
cache management fixes: *) separate cache loader process *) use real file cache length, this fixes cache size counting for responses without "Content-Length" header and 304 responses.
2009-10-26merge r3004, r3005, r3006:Igor Sysoev2-5/+9
various header fixes: *) allow to proxy_pass_header/fastcgi_pass_header "X-Accel-Redirect", "X-Accel-Limit-Rate", "X-Accel-Buffering", and "X-Accel-Charset" *) fix handling "Last-Modified" and "Accept-Ranges" for upstream responses *) clear "Accept-Ranges" for SSI responses
2009-10-26merge r3001, r3007, r3013:Igor Sysoev6-37/+47
fix variuos segfaults: *) fix segfault if 400 or 414 errors are handled intricately *) ngx_http_upstream_create() to cleanup the previous upstream after internal redirect
2009-10-26merge r2999, r3118, r3134, r3135:Igor Sysoev1-49/+192
various image filter fixes and features: *) variables support in image_filter *) fix transparency in GIF *) fix alpha-channel transparency in PNG *) image_filter_transparency
2009-10-26merge r2995, r2996, r2997, r2998, r3003, r3141, r3210, r3211, r3232:Igor Sysoev7-104/+119
various SSL fixes and features: *) $ssl_client_verify *) "ssl_verify_client ask" was changed to "ssl_verify_client optional" *) ssl_crl *) delete OpenSSL pre-0.9.7 compatibility: the sources were not actually compatible with OpenSSL 0.9.6 since ssl_session_cache introduction *) fix memory corruption in $ssl_client_cert *) issue SNI warning instead of failure: this is too common case *) use ngx_log_error(), since OpenSSL does not set an error on the failure *) add SNI support in -V output
2009-10-26merge r2993:Igor Sysoev3-29/+132
geo module supports trusted proxies
2009-10-26merge r2986, r2992, r3032:Igor Sysoev1-0/+376
ngx_http_geoip_module
2009-10-26merge r2973, r2974, r3184, r3192, r3186, r3187:Igor Sysoev2-10/+74
various limit_req and limit_conn fixes: *) fix client write event handling in ngx_http_limit_req_module *) make limit_req to conform to the leaky bucket algorithm *) limit_req_log_level *) limit_conn_log_level
2009-10-26merge r2972, r2994, r3133, r3142, r3143, r3174, r3175, r3176:Igor Sysoev4-71/+81
various perl fixes: *) fix ngx_http_send_special() for subrequests handled by perl *) allow perl "sub{..." *) restore environ, this fixes segfault on reconfiguration failure when perl module creates new environment *) optimize error handling *) use ngx_conf_set_str_array_slot() for perl_require *) allow several perl_modules
2009-10-26merge r2920, r2934, r3116, r3119:Igor Sysoev6-21/+24
style fixes
2009-10-26merge r2903, r2911, r2912, r3002:Igor Sysoev47-71/+73
fix various failures handling
2009-10-26merge r2908:Igor Sysoev3-3/+32
limit_rate_after
2009-10-26merge r2890, r2891, r2892:Igor Sysoev3-161/+238
refactor ngx_http_charset_header_filter()
2009-10-26bump versionIgor Sysoev2-3/+3
2009-09-07merge r3047, r3048, r3049:Igor Sysoev4-5/+10
twice termination delay only after SIGALRM, otherwise many separate SIGCHLD and SIGIO signals quickly increase delay to the level when SIGKILL is sent
2009-09-07merge r3038:Igor Sysoev1-0/+6
process upstream ETag header
2009-09-07merge r3037:Igor Sysoev1-5/+5
the flags should be bit-wide only
2009-09-07merge r3076, r3077, r3080:Igor Sysoev2-21/+17
fix invalid header logging: *) fix segfault when a header starts with "\rX" and logging is set to info or debug level *) use %*s instead of %V