Mercurial > hg > nginx-vendor-0-6
diff src/event/ngx_event.h @ 92:45945fa8b8ba NGINX_0_2_0
nginx 0.2.0
*) The pid-file names used during online upgrade was changed and now is
not required a manual rename operation. The old master process adds
the ".oldbin" suffix to its pid-file and executes a new binary file.
The new master process creates usual pid-file without the ".newbin"
suffix. If the master process exits, then old master process renames
back its pid-file with the ".oldbin" suffix to the pid-file without
suffix.
*) Change: the "worker_connections" directive, new name of the
"connections" directive; now the directive specifies maximum number
of connections, but not maximum socket descriptor number.
*) Feature: SSL supports the session cache inside one worker process.
*) Feature: the "satisfy_any" directive.
*) Change: the ngx_http_access_module and ngx_http_auth_basic_module do
not run for subrequests.
*) Feature: the "worker_rlimit_nofile" and "worker_rlimit_sigpending"
directives.
*) Bugfix: if all backend using in load-balancing failed after one
error, then nginx did not try do connect to them during 60 seconds.
*) Bugfix: in IMAP/POP3 command argument parsing.
Thanks to Rob Mueller.
*) Bugfix: errors while using SSL in IMAP/POP3 proxy.
*) Bugfix: errors while using SSI and gzipping.
*) Bugfix: the "Expires" and "Cache-Control" header lines were omitted
from the 304 responses.
Thanks to Alexandr Kukushkin.
author | Igor Sysoev <http://sysoev.ru> |
---|---|
date | Fri, 23 Sep 2005 00:00:00 +0400 |
parents | b55cbf18157e |
children | 45f7329b4bd0 |
line wrap: on
line diff
--- a/src/event/ngx_event.h +++ b/src/event/ngx_event.h @@ -218,63 +218,69 @@ extern ngx_event_actions_t ngx_event_a /* - * The event filter requires to read/write the whole data - + * The event filter requires to read/write the whole data: * select, poll, /dev/poll, kqueue, epoll. */ #define NGX_USE_LEVEL_EVENT 0x00000001 /* * The event filter is deleted after a notification without an additional - * syscall - select, poll, kqueue, epoll, Solaris 10's event ports. + * syscall: select, poll, kqueue, epoll, Solaris 10's event ports. */ #define NGX_USE_ONESHOT_EVENT 0x00000002 /* - * The event filter notifies only the changes and an initial level - + * The event filter notifies only the changes and an initial level: * kqueue, epoll. */ #define NGX_USE_CLEAR_EVENT 0x00000004 /* - * The event filter has kqueue features - the eof flag, errno, + * The event filter has kqueue features: the eof flag, errno, * available data, etc. */ -#define NGX_USE_KQUEUE_EVENT 0x00000008 +#define NGX_USE_KQUEUE_EVENT 0x00000008 /* - * The event filter supports low water mark - kqueue's NOTE_LOWAT. + * The event filter supports low water mark: kqueue's NOTE_LOWAT. * kqueue in FreeBSD 4.1-4.2 has no NOTE_LOWAT so we need a separate flag. */ -#define NGX_USE_LOWAT_EVENT 0x00000010 +#define NGX_USE_LOWAT_EVENT 0x00000010 /* - * The event filter requires to do i/o operation until EAGAIN - + * The event filter requires to do i/o operation until EAGAIN: * epoll, rt signals. */ -#define NGX_USE_GREEDY_EVENT 0x00000020 +#define NGX_USE_GREEDY_EVENT 0x00000020 /* - * The event filter is epoll, + * The event filter is epoll. */ #define NGX_USE_EPOLL_EVENT 0x00000040 /* - * No need to add or delete the event filters - rt signals. + * No need to add or delete the event filters: rt signals. */ #define NGX_USE_RTSIG_EVENT 0x00000080 /* - * No need to add or delete the event filters - overlapped, aio_read, + * No need to add or delete the event filters: overlapped, aio_read, * aioread, io_submit. */ #define NGX_USE_AIO_EVENT 0x00000100 /* - * Need to add socket or handle only once - i/o completion port. + * Need to add socket or handle only once: i/o completion port. * It also requires NGX_HAVE_AIO and NGX_USE_AIO_EVENT to be set. */ #define NGX_USE_IOCP_EVENT 0x00000200 +/* + * The event filter has no opaque data and requires file descriptors table: + * poll, /dev/poll, rt signals. + */ +#define NGX_USE_FD_EVENT 0x00000400 + /* @@ -391,13 +397,14 @@ extern ngx_event_actions_t ngx_event_a #define ngx_del_timer ngx_event_del_timer +extern ngx_os_io_t ngx_io; + #define ngx_recv ngx_io.recv #define ngx_recv_chain ngx_io.recv_chain #define ngx_send ngx_io.send #define ngx_send_chain ngx_io.send_chain - #define NGX_EVENT_MODULE 0x544E5645 /* "EVNT" */ #define NGX_EVENT_CONF 0x02000000 @@ -471,6 +478,7 @@ void ngx_event_accept(ngx_event_t *ev); ngx_int_t ngx_trylock_accept_mutex(ngx_cycle_t *cycle); ngx_int_t ngx_disable_accept_events(ngx_cycle_t *cycle); ngx_int_t ngx_enable_accept_events(ngx_cycle_t *cycle); +u_char *ngx_accept_log_error(ngx_log_t *log, u_char *buf, size_t len); ngx_int_t ngx_handle_read_event(ngx_event_t *rev, u_int flags); @@ -479,7 +487,8 @@ ngx_int_t ngx_handle_write_event(ngx_eve #if (NGX_WIN32) void ngx_event_acceptex(ngx_event_t *ev); -int ngx_event_post_acceptex(ngx_listening_t *ls, int n); +ngx_int_t ngx_event_post_acceptex(ngx_listening_t *ls, ngx_uint_t n); +u_char *ngx_acceptex_log_error(ngx_log_t *log, u_char *buf, size_t len); #endif