Mercurial > hg > nginx
diff src/core/ngx_conf_file.h @ 5053:004af18ddb86 stable-1.2
Merge of r4985, r4986, r4987, r4988, r4989, r5002: access_log gzip.
*) Access log: fixed redundant buffer reallocation. Previously a new
buffer was allocated for every "access_log" directive with the same
file path and "buffer=" parameters, while only one buffer per file
is used.
*) Reopening log files code moved to a separate function. The code
refactored in a way to call custom handler that can do appropriate
cleanup work (if any), like flushing buffers, finishing compress
streams, finalizing connections to log daemon, etc..
*) Access log: the "flush" parameter of the "access_log" directive.
*) Configure: added the NGX_ZLIB define. This was introduced for
conditional compilation of the code that requires the zlib library.
*) Access log: the "gzip" parameter of the "access_log" directive.
Note: this requires zlib version 1.2.0.4 or above to work.
*) The data pointer in ngx_open_file_t objects must be initialized.
Uninitialized pointer may result in arbitrary segfaults if access_log
is used without buffer and without variables in file path.
Patch by Tatsuhiko Kubo (ticket #268).
author | Maxim Dounin <mdounin@mdounin.ru> |
---|---|
date | Mon, 11 Feb 2013 14:34:00 +0000 |
parents | 43b7b9572fe1 |
children | 23a186e8ca45 |
line wrap: on
line diff
--- a/src/core/ngx_conf_file.h Mon Feb 11 13:59:08 2013 +0000 +++ b/src/core/ngx_conf_file.h Mon Feb 11 14:34:00 2013 +0000 @@ -91,17 +91,8 @@ ngx_fd_t fd; ngx_str_t name; - u_char *buffer; - u_char *pos; - u_char *last; - -#if 0 - /* e.g. append mode, error_log */ - ngx_uint_t flags; - /* e.g. reopen db file */ - ngx_uint_t (*handler)(void *data, ngx_open_file_t *file); + void (*flush)(ngx_open_file_t *file, ngx_log_t *log); void *data; -#endif };