summaryrefslogtreecommitdiffhomepage
path: root/src/event/ngx_event.h
diff options
context:
space:
mode:
authorIgor Sysoev <igor@sysoev.ru>2005-09-23 11:02:22 +0000
committerIgor Sysoev <igor@sysoev.ru>2005-09-23 11:02:22 +0000
commit31eb8c015d58a5b36b9578d4ee6c217e16cb776f (patch)
tree28ebccc10deba4132e05414aac1874d5013fdf58 /src/event/ngx_event.h
parentf44a1f5f579e19441db2d477a7c81d8894ba2262 (diff)
downloadnginx-release-0.2.0.tar.gz
nginx-release-0.2.0.tar.bz2
nginx-0.2.0-RELEASE importrelease-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.
Diffstat (limited to '')
-rw-r--r--src/event/ngx_event.h39
1 files changed, 24 insertions, 15 deletions
diff --git a/src/event/ngx_event.h b/src/event/ngx_event.h
index 3e93bf778..eee165e81 100644
--- a/src/event/ngx_event.h
+++ b/src/event/ngx_event.h
@@ -218,63 +218,69 @@ extern ngx_event_actions_t ngx_event_actions;
/*
- * 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_actions;
#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_event_t *wev, size_t lowat);
#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