aboutsummaryrefslogtreecommitdiff
path: root/src/core/ngx_file.h
Commit message (Collapse)AuthorAge
* Modules compatibility: compatibility with NGX_HAVE_FILE_AIO.Maxim Dounin2016-10-10
| | | | | | With this change it is now possible to load modules compiled without the "--with-file-aio" configure option into nginx binary compiled with it, and vice versa, assuming both use the "--with-compat" option.
* Modules compatibility: compatibility with NGX_THREADS.Maxim Dounin2016-10-10
| | | | | | | With this change it is now possible to load modules compiled without the "--with-threads" configure option into nginx binary compiled with it, and vice versa (if a module does not use thread-specific functions), assuming both use the "--with-compat" option.
* Cache: cache manager limits.Dmitry Volyntsev2016-10-05
| | | | | | | | | The new parameters "manager_files", "manager_sleep" and "manager_threshold" were added to proxy_cache_path and friends. Note that ngx_path_manager_pt was changed to return ngx_msec_t instead of time_t (API change).
* Modules compatibility: cache purge fields.Maxim Dounin2016-09-29
|
* Use NGX_MAX_PATH_LEVEL where appropriate.Ruslan Ermilov2016-07-06
| | | | The macro was unused since 0.7.44.
* Threads: offloading of temp files writing to thread pools.Maxim Dounin2016-03-18
| | | | | | | | | | | | | | | | | The ngx_thread_write_chain_to_file() function introduced, which uses ngx_file_t thread_handler, thread_ctx and thread_task fields. The task context structure (ngx_thread_file_ctx_t) is the same for both reading and writing, and can be safely shared as long as operations are serialized. The task->handler field is now always set (and not only when task is allocated), as the same task can be used with different handlers. The thread_write flag is introduced in the ngx_temp_file_t structure to explicitly enable use of ngx_thread_write_chain_to_file() in ngx_write_chain_to_temp_file() when supported by caller. In collaboration with Valentin Bartenev.
* Threads: task pointer stored in ngx_file_t.Maxim Dounin2016-03-18
| | | | | | | | | | | | | | This simplifies the interface of the ngx_thread_read() function. Additionally, most of the thread operations now explicitly set file->thread_task, file->thread_handler and file->thread_ctx, to facilitate use of thread operations in other places. (Potential problems remain with sendfile in threads though - it uses file->thread_handler as set in ngx_output_chain(), and it should not be overwritten to an incompatible one.) In collaboration with Valentin Bartenev.
* Added support for offloading read() in thread pools.Valentin Bartenev2015-03-14
|
* Core: reverted prefix-based temp files (a9138c35120d).Roman Arutyunyan2015-02-02
| | | | | The use_temp_path http cache feature is now implemented using a separate temp hierarchy in cache directory. Prefix-based temp files are no longer needed.
* Core: added prefix-based temporary files.Valentin Bartenev2014-12-26
| | | | | Now, if the "path" parameter is NULL, ngx_create_temp_file() will use file->name as a predefined file path prefix.
* Fixed memory leaks in the root and auth_basic_user_file directives.Valentin Bartenev2013-08-06
| | | | | | | | If a relative path is set by variables, then the ngx_conf_full_name() function was called while processing requests, which causes allocations from the cycle pool. A new function that takes pool as an argument was introduced.
* Correct plural form for "path" in the whole source base.Andrey Belov2012-09-28
|
* Copyright updated.Maxim Konovalov2012-01-18
|
* elimination of reading cache files by cache loaderIgor Sysoev2011-07-24
|
* FreeBSD and Linux AIO supportIgor Sysoev2009-08-28
|
* *) share temporary number between workersIgor Sysoev2009-08-21
| | | | *) randomize collision offset
* allow cross device temporary files atomic copying:Igor Sysoev2009-08-12
| | | | | *) ngx_copy_file() *) delete ngx_ext_rename_file_t.log_rename_error and .rename_error fields
* cache loader processIgor Sysoev2009-08-10
|
* introduce cache manager instead of cache cleanerIgor Sysoev2009-03-30
|
* a prelimiary proxy cache supportIgor Sysoev2009-03-23
|
* use ngx_ext_rename_file() for single file MOVEIgor Sysoev2008-12-10
|
* *) handle unaligned file part for directioIgor Sysoev2008-09-05
| | | | *) disable sendfile in directio mode
* C++ compatibilityIgor Sysoev2008-03-03
|
* add declaration missed in previous commitIgor Sysoev2008-01-03
|
* ngx_create_hashed_filename() does not need ngx_file_tIgor Sysoev2007-12-17
|
* ngx_create_path_and_rename_file()Igor Sysoev2007-12-07
|
* --sysconfdir=DIRIgor Sysoev2007-07-29
|
* proxy_store and fastcgi_storeIgor Sysoev2007-07-12
|
* undo "client_body_in_file_only any"Igor Sysoev2007-01-25
| | | | | | | | | and introduce "client_body_in_file_only clean" introduce ngx_pool_delete_file() to not break a possible third-party ngx_pool_cleanup_file() usage that may lead to an removal of the useful files delete unnecessary ngx_http_finalize_request_body()
* add size, access, and mtime to ngx_walk_tree()Igor Sysoev2007-01-18
|
* rename mode to accessIgor Sysoev2007-01-18
|
* ngx_walk_tree()Igor Sysoev2006-12-25
|
* nginx-0.3.56-RELEASE importrelease-0.3.56Igor Sysoev2006-08-04
| | | | | | | | | | | *) Feature: the "dav_access" directive. *) Feature: the "if" directive supports the "-d", "!-d", "-e", "!-e", "-x", and "!-x" operators. *) Bugfix: a segmentation fault occurred if a request returned a redirect and some sent to client header lines were logged in the access log.
* nginx-0.3.40-RELEASE importrelease-0.3.40Igor Sysoev2006-04-19
| | | | | | | | *) Feature: the ngx_http_dav_module supports the MKCOL method. *) Feature: the "create_full_put_path" directive. *) Feature: the "$limit_rate" variable.
* nginx-0.3.38-RELEASE importrelease-0.3.38Igor Sysoev2006-04-14
| | | | | | | | | | | | | | | | | | | | | | | | *) Feature: the ngx_http_dav_module. *) Change: the ngx_http_perl_module optimizations. Thanks to Sergey Skvortsov. *) Feature: the ngx_http_perl_module supports the $r->request_body_file method. *) Feature: the "client_body_in_file_only" directive. *) Workaround: now on disk overflow nginx tries to write access logs once a second only. Thanks to Anton Yuzhaninov and Maxim Dounin. *) Bugfix: now the "limit_rate" directive more precisely limits rate if rate is more than 100 Kbyte/s. Thanks to ForJest. *) Bugfix: now the IMAP/POP3 proxy escapes the "\r" and "\n" symbols in login and password to pass authorization server. Thanks to Maxim Dounin.
* nginx-0.3.2-RELEASE importrelease-0.3.2Igor Sysoev2005-10-12
| | | | | | | | *) Feature: the Sun Studio 10 C compiler support. *) Feature: the "proxy_upstream_max_fails", "proxy_upstream_fail_timeout", "fastcgi_upstream_max_fails", and "fastcgi_upstream_fail_timeout" directives.
* nginx-0.1.33-RELEASE importrelease-0.1.33Igor Sysoev2005-05-23
| | | | | | | | | | | | | *) Bugfix: nginx could not be built with the --without-pcre parameter; the bug had appeared in 0.1.29. *) Bugfix: 3, 4, 7, and 8 the "proxy_set_header" directives in one level cause the bus fault on start up. *) Bugfix: the HTTP protocol was specified in the HTTPS redirects. *) Bugfix: if the "rewrite" directive used the captures inside the "if" directive, then the 500 error code was returned.
* nginx-0.1.25-RELEASE importrelease-0.1.25Igor Sysoev2005-03-19
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | *) Bugfix: nginx did run on Linux parisc. *) Feature: nginx now does not start under FreeBSD if the sysctl kern.ipc.somaxconn value is too big. *) Bugfix: if a request was internally redirected by the ngx_http_index_module module to the ngx_http_proxy_module or ngx_http_fastcgi_module modules, then the index file was not closed after request completion. *) Feature: the "proxy_pass" can be used in location with regular expression. *) Feature: the ngx_http_rewrite_filter_module module supports the condition like "if ($HTTP_USER_AGENT ~ MSIE)". *) Bugfix: nginx started too slow if the large number of addresses and text values were used in the "geo" directive. *) Change: a variable name must be declared as "$name" in the "geo" directive. The previous variant without "$" is still supported, but will be removed soon. *) Feature: the "%{VARIABLE}v" logging parameter. *) Feature: the "set $name value" directive. *) Bugfix: gcc 4.0 compatibility. *) Feature: the --with-openssl-opt=OPTIONS autoconfiguration directive.
* nginx-0.1.24-RELEASE importrelease-0.1.24Igor Sysoev2005-03-04
| | | | | | | | | | | | | | | *) Feature: the ngx_http_ssi_filter_module supports the QUERY_STRING and DOCUMENT_URI variables. *) Bugfix: the ngx_http_autoindex_module may some times return the 404 response for existent directory, if this directory was used in "alias" directive. *) Bugfix: the ngx_http_ssi_filter_module ran incorrectly for large responses. *) Bugfix: the lack of the "Referer" header line was always accounted as valid referrer.
* nginx-0.1.22-RELEASE importrelease-0.1.22Igor Sysoev2005-02-24
| | | | | | | | *) Bugfix: the ngx_http_stub_status_module showed incorrect handled connections statistics if the proxying or FastCGI server were used. *) Bugfix: the installation paths were incorrectly quoted on Linux and Solaris; the bug had appeared in 0.1.21.
* nginx-0.1.21-RELEASE importrelease-0.1.21Igor Sysoev2005-02-22
| | | | | | | | | | *) Bugfix: the ngx_http_stub_status_module showed incorrect statistics if "rtsig" method was used or if several worker process ran on SMP. *) Bugfix: nginx could not be built by the icc compiler on Linux or if the zlib-1.2.x library was building from sources. *) Bugfix: nginx could not be built on NetBSD 2.0.
* nginx-0.1.14-RELEASE importrelease-0.1.14Igor Sysoev2005-01-18
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | *) Feature: the autoconfiguration directives: --http-client-body-temp-path=PATH, --http-proxy-temp-path=PATH, and --http-fastcgi-temp-path=PATH *) Change: the directory name for the temporary files with the client request body is specified by directive client_body_temp_path, by default it is <prefix>/client_body_temp. *) Feature: the ngx_http_fastcgi_module and the directives: fastcgi_pass, fastcgi_root, fastcgi_index, fastcgi_params, fastcgi_connect_timeout, fastcgi_send_timeout, fastcgi_read_timeout, fastcgi_send_lowat, fastcgi_header_buffer_size, fastcgi_buffers, fastcgi_busy_buffers_size, fastcgi_temp_path, fastcgi_max_temp_file_size, fastcgi_temp_file_write_size, fastcgi_next_upstream, and fastcgi_x_powered_by. *) Bugfix: the "[alert] zero size buf" error; the bug had appeared in 0.1.3. *) Change: the URI must be specified after the host name in the proxy_pass directive. *) Change: the %3F symbol in the URI was considered as the argument string start. *) Feature: the unix domain sockets support in the ngx_http_proxy_module. *) Feature: the ssl_engine and ssl_ciphers directives. Thanks to Sergey Skvortsov for SSL-accelerator.
* nginx-0.1.8-RELEASE importrelease-0.1.8Igor Sysoev2004-11-20
| | | | | | | | | *) Bugfix: in the ngx_http_autoindex_module if the long file names were in the listing. *) Feature: the "^~" modifier in the location directive. *) Feature: the proxy_max_temp_file_size directive.
* nginx-0.1.3-RELEASE importrelease-0.1.3Igor Sysoev2004-10-25
| | | | | | | | | *) Feature: the ngx_http_autoindex_module and the autoindex directive. *) Feature: the proxy_set_x_url directive. *) Bugfix: proxy module may get caught in an endless loop when sendfile is not used.
* nginx-0.1.0-2004-09-29-20:00:49 import; remove years from copyrightIgor Sysoev2004-09-29
|
* nginx-0.1.0-2004-09-28-12:34:51 import; set copyright and remove unused filesIgor Sysoev2004-09-28
|
* nginx-0.0.3-2004-03-17-00:26:01 importIgor Sysoev2004-03-16
|
* nginx-0.0.2-2004-03-16-10:10:12 importIgor Sysoev2004-03-16
|
* nginx-0.0.1-2003-11-21-09:30:49 importIgor Sysoev2003-11-21
|
* nginx-0.0.1-2003-11-19-00:34:08 importIgor Sysoev2003-11-18
|