Mercurial > hg > nginx-vendor-0-5
comparison src/event/ngx_event.h @ 324:7cf404023f50 NGINX_0_5_32
nginx 0.5.32
*) Change: now nginx tries to set the "worker_priority",
"worker_rlimit_nofile", "worker_rlimit_core", and
"worker_rlimit_sigpending" without super-user privileges.
*) Change: now nginx escapes space and "%" in request to a mail proxy
authentication server.
*) Change: now nginx escapes "%" in $memcached_key variable.
*) Change: the special make target "upgrade1" was defined for online
upgrade of 0.1.x versions.
*) Feature: the "add_header Last-Modified ..." directive changes the
"Last-Modified" response header line.
*) Feature: the mail proxy supports AUTHENTICATE in IMAP mode.
Thanks to Maxim Dounin.
*) Feature: the mail proxy supports STARTTLS in SMTP mode.
Thanks to Maxim Dounin.
*) Bugfix: nginx did not close directory file on HEAD request if
autoindex was used.
Thanks to Arkadiusz Patyk.
*) Bugfix: the "proxy_hide_header" and "fastcgi_hide_header" directives
did not hide response header lines whose name was longer than 32
characters.
Thanks to Manlio Perillo.
*) Bugfix: active connection counter always increased if mail proxy was
used.
*) Bugfix: if backend returned response header only using non-buffered
proxy, then nginx closed backend connection on timeout.
*) Bugfix: nginx did not support several "Connection" request header
lines.
*) Bugfix: a charset set by the "charset" directive was not appended to
the "Content-Type" header set by $r->send_http_header().
*) Bugfix: a segmentation fault might occur in worker process if
/dev/poll method was used.
*) Bugfix: nginx did not work on FreeBSD/sparc64.
*) Bugfix: a segmentation fault occurred in worker process if invalid
address was set in the "auth_http" directive.
*) Bugfix: now nginx uses default listen backlog value 511 on all
platforms except FreeBSD.
Thanks to Jiang Hong.
*) Bugfix: now Solaris sendfilev() is not used to transfer the client
request body to FastCGI-server via the unix domain socket.
*) Bugfix: if the same host without specified port was used as backend
for HTTP and HTTPS, then nginx used only one port - 80 or 443.
*) Bugfix: the "proxy_ignore_client_abort" and
"fastcgi_ignore_client_abort" directives did not work; bug appeared
in 0.5.13.
author | Igor Sysoev <http://sysoev.ru> |
---|---|
date | Mon, 24 Sep 2007 00:00:00 +0400 |
parents | c982febb7588 |
children | f70f2f565fe0 |
comparison
equal
deleted
inserted
replaced
323:85aeb2da6e4c | 324:7cf404023f50 |
---|---|
39 | 39 |
40 unsigned write:1; | 40 unsigned write:1; |
41 | 41 |
42 unsigned accept:1; | 42 unsigned accept:1; |
43 | 43 |
44 /* used to detect the stale events in kqueue, rt signals and epoll */ | 44 /* used to detect the stale events in kqueue, rtsig, and epoll */ |
45 unsigned instance:1; | 45 unsigned instance:1; |
46 | 46 |
47 /* | 47 /* |
48 * the event was passed or would be passed to a kernel; | 48 * the event was passed or would be passed to a kernel; |
49 * in aio mode - operation was posted. | 49 * in aio mode - operation was posted. |
245 * kqueue in FreeBSD 4.1-4.2 has no NOTE_LOWAT so we need a separate flag. | 245 * kqueue in FreeBSD 4.1-4.2 has no NOTE_LOWAT so we need a separate flag. |
246 */ | 246 */ |
247 #define NGX_USE_LOWAT_EVENT 0x00000010 | 247 #define NGX_USE_LOWAT_EVENT 0x00000010 |
248 | 248 |
249 /* | 249 /* |
250 * The event filter requires to do i/o operation until EAGAIN: | 250 * The event filter requires to do i/o operation until EAGAIN: epoll, rtsig. |
251 * epoll, rt signals. | |
252 */ | 251 */ |
253 #define NGX_USE_GREEDY_EVENT 0x00000020 | 252 #define NGX_USE_GREEDY_EVENT 0x00000020 |
254 | 253 |
255 /* | 254 /* |
256 * The event filter is epoll. | 255 * The event filter is epoll. |
257 */ | 256 */ |
258 #define NGX_USE_EPOLL_EVENT 0x00000040 | 257 #define NGX_USE_EPOLL_EVENT 0x00000040 |
259 | 258 |
260 /* | 259 /* |
261 * No need to add or delete the event filters: rt signals. | 260 * No need to add or delete the event filters: rtsig. |
262 */ | 261 */ |
263 #define NGX_USE_RTSIG_EVENT 0x00000080 | 262 #define NGX_USE_RTSIG_EVENT 0x00000080 |
264 | 263 |
265 /* | 264 /* |
266 * No need to add or delete the event filters: overlapped, aio_read, | 265 * No need to add or delete the event filters: overlapped, aio_read, |
274 */ | 273 */ |
275 #define NGX_USE_IOCP_EVENT 0x00000200 | 274 #define NGX_USE_IOCP_EVENT 0x00000200 |
276 | 275 |
277 /* | 276 /* |
278 * The event filter has no opaque data and requires file descriptors table: | 277 * The event filter has no opaque data and requires file descriptors table: |
279 * poll, /dev/poll, rt signals. | 278 * poll, /dev/poll, rtsig. |
280 */ | 279 */ |
281 #define NGX_USE_FD_EVENT 0x00000400 | 280 #define NGX_USE_FD_EVENT 0x00000400 |
282 | 281 |
283 /* | 282 /* |
284 * The event module handles periodic or absolute timer event by itself: | 283 * The event module handles periodic or absolute timer event by itself: |
285 * kqueue in FreeBSD 4.4 and NetBSD 2.0, Solaris 10's event ports. | 284 * kqueue in FreeBSD 4.4, NetBSD 2.0, and MacOSX 10.4, Solaris 10's event ports. |
286 */ | 285 */ |
287 #define NGX_USE_TIMER_EVENT 0x00000800 | 286 #define NGX_USE_TIMER_EVENT 0x00000800 |
288 | 287 |
289 /* | 288 /* |
290 * All event filters on file descriptor are deleted after a notification: | 289 * All event filters on file descriptor are deleted after a notification: |
291 * Solaris 10's event ports. | 290 * Solaris 10's event ports. |
292 */ | 291 */ |
293 #define NGX_USE_EVENTPORT_EVENT 0x00001000 | 292 #define NGX_USE_EVENTPORT_EVENT 0x00001000 |
294 | 293 |
295 | 294 |
296 | 295 |
297 /* | 296 /* |
298 * The event filter is deleted before the closing file. | 297 * The event filter is deleted just before the closing file. |
299 * Has no meaning for select, poll, kqueue, epoll. | 298 * Has no meaning for select and poll. |
300 * /dev/poll: we need to flush POLLREMOVE event before closing file | 299 * kqueue, epoll, rtsig, eventport: allows to avoid explicit delete, |
301 */ | 300 * because filter automatically is deleted |
302 | 301 * on file close, |
302 * | |
303 * /dev/poll: we need to flush POLLREMOVE event | |
304 * before closing file. | |
305 */ | |
303 #define NGX_CLOSE_EVENT 1 | 306 #define NGX_CLOSE_EVENT 1 |
307 | |
308 /* | |
309 * disable temporarily event filter, this may avoid locks | |
310 * in kernel malloc()/free(): kqueue. | |
311 */ | |
304 #define NGX_DISABLE_EVENT 2 | 312 #define NGX_DISABLE_EVENT 2 |
305 | 313 |
306 | 314 |
307 /* these flags have a meaning only for kqueue */ | 315 /* these flags have a meaning only for kqueue */ |
308 #define NGX_LOWAT_EVENT 0 | 316 #define NGX_LOWAT_EVENT 0 |