Mercurial > hg > nginx
comparison src/event/modules/ngx_kqueue_module.c @ 619:7a16e281c01f release-0.3.31
nginx-0.3.31-RELEASE import
*) Change: now nginx passes the malformed proxied backend responses.
*) Feature: the "listen" directives support the address in the "*:port"
form.
*) Feature: the EVFILER_TIMER support in MacOSX 10.4.
*) Workaround: for MacOSX 64-bit kernel kqueue millisecond timeout
bug.
Thanks to Andrei Nigmatulin.
*) Bugfix: if there were several "listen" directives listening one
various addresses inside one server, then server names like
"*.domain.tld" worked for first address only; the bug had appeared
in 0.3.18.
*) Bugfix: if the HTTPS protocol was used in the "proxy_pass" directive
and the request body was in temporarily file then the request was
not transferred.
*) Bugfix: perl 5.8.8 compatibility.
author | Igor Sysoev <igor@sysoev.ru> |
---|---|
date | Fri, 10 Mar 2006 12:51:52 +0000 |
parents | 4e296b7d25bf |
children | 0216fd1471f3 |
comparison
equal
deleted
inserted
replaced
618:47f8a854752e | 619:7a16e281c01f |
---|---|
488 | 488 |
489 if (timer == NGX_TIMER_INFINITE) { | 489 if (timer == NGX_TIMER_INFINITE) { |
490 tp = NULL; | 490 tp = NULL; |
491 | 491 |
492 } else { | 492 } else { |
493 | |
494 /* | |
495 * 64-bit MacOSX kernel has the bug: kernel level ts.tv_nsec is | |
496 * the int32_t while user level ts.tv_nsec is the long (64-bit), | |
497 * so on the big endian PowerPC all nanoseconds are lost. | |
498 * NGX_MACOSX_KEVENT_BUG_SHIFT on these machines is "<< 32". | |
499 */ | |
500 | |
493 ts.tv_sec = timer / 1000; | 501 ts.tv_sec = timer / 1000; |
494 ts.tv_nsec = (timer % 1000) * 1000000; | 502 ts.tv_nsec = (long) ((timer % 1000) * 1000000) |
503 NGX_MACOSX_KEVENT_BUG_SHIFT; | |
495 tp = &ts; | 504 tp = &ts; |
496 } | 505 } |
497 | 506 |
498 ngx_log_debug2(NGX_LOG_DEBUG_EVENT, cycle->log, 0, | 507 ngx_log_debug2(NGX_LOG_DEBUG_EVENT, cycle->log, 0, |
499 "kevent timer: %M, changes: %d", timer, n); | 508 "kevent timer: %M, changes: %d", timer, n); |