Mercurial > hg > nginx-vendor-0-7
view auto/os/features @ 130:82d695e3d662 NGINX_0_3_12
nginx 0.3.12
*) Security: if nginx was built with the ngx_http_realip_module and the
"satisfy_any on" directive was used, then access and authorization
directives did not work. The ngx_http_realip_module was not built
and is not built by default.
*) Change: the "$time_gmt" variable name was changed to "$time_local".
*) Change: the "proxy_header_buffer_size" and
"fastcgi_header_buffer_size" directives was renamed to the
"proxy_buffer_size" and "fastcgi_buffer_size" directives.
*) Feature: the ngx_http_memcached_module.
*) Feature: the "proxy_buffering" directive.
*) Bugfix: the changes in accept mutex handling when the "rtsig" method
was used; bug appeared in 0.3.0.
*) Bugfix: if the client sent the "Transfer-Encoding: chunked" header
line, then nginx returns the 411 error.
*) Bugfix: if the "auth_basic" directive was inherited from the http
level, then the realm in the "WWW-Authenticate" header line was
without the "Basic realm" text.
*) Bugfix: if the "combined" format was explicitly specified in the
"access_log" directive, then the empty lines was written to the log;
bug appeared in 0.3.8.
*) Bugfix: nginx did not run on the sparc platform under any OS except
Solaris.
*) Bugfix: now it is not necessary to place space between the quoted
string and closing bracket in the "if" directive.
author | Igor Sysoev <http://sysoev.ru> |
---|---|
date | Sat, 26 Nov 2005 00:00:00 +0300 |
parents | df17fbafec8f |
children | 3314be145cb9 |
line wrap: on
line source
# Copyright (C) Igor Sysoev NGX_USER=${NGX_USER:-nobody} if [ -z "$NGX_GROUP" -a $NGX_USER = nobody ] ; then if grep nobody /etc/group 2>&1 >/dev/null; then echo "checking for nobody group ... found" NGX_GROUP=nobody else echo "checking for nobody group ... not found" if grep nogroup /etc/group 2>&1 >/dev/null; then echo "checking for nogroup group ... found" NGX_GROUP=nogroup else echo "checking for nogroup group ... not found" NGX_GROUP=nobody fi fi else NGX_GROUP=$NGX_USER fi ngx_feature="poll()" ngx_feature_name= ngx_feature_run=no ngx_feature_incs="#include <poll.h>" ngx_feature_libs= ngx_feature_test="int n, dp; struct pollfd pl; dp = 0; pl.fd = 0; pl.events = 0; pl.revents = 0; n = poll(&pl, 1, 0)" . auto/feature if [ $ngx_found = no ]; then EVENT_POLL=NONE fi ngx_feature="/dev/poll" ngx_feature_name="NGX_HAVE_DEVPOLL" ngx_feature_run=no ngx_feature_incs="#include <sys/devpoll.h>" ngx_feature_libs= ngx_feature_test="int n, dp; struct dvpoll dvp; dp = 0; dvp.dp_fds = NULL; dvp.dp_nfds = 0; dvp.dp_timeout = 0; n = ioctl(dp, DP_POLL, &dvp)" . auto/feature if [ $ngx_found = yes ]; then CORE_SRCS="$CORE_SRCS $DEVPOLL_SRCS" EVENT_MODULES="$EVENT_MODULES $DEVPOLL_MODULE" EVENT_FOUND=YES fi if test -z "$NGX_KQUEUE_CHECKED"; then ngx_feature="kqueue" ngx_feature_name="NGX_HAVE_KQUEUE" ngx_feature_run=no ngx_feature_incs="#include <sys/event.h>" ngx_feature_libs= ngx_feature_test="int kq; kq = kqueue()" . auto/feature if [ $ngx_found = yes ]; then have=NGX_HAVE_CLEAR_EVENT . auto/have EVENT_MODULES="$EVENT_MODULES $KQUEUE_MODULE" CORE_SRCS="$CORE_SRCS $KQUEUE_SRCS" EVENT_FOUND=YES ngx_feature="kqueue's NOTE_LOWAT" ngx_feature_name="NGX_HAVE_LOWAT_EVENT" ngx_feature_run=no ngx_feature_incs="#include <sys/event.h>" ngx_feature_libs= ngx_feature_test="struct kevent kev; kev.fflags = NOTE_LOWAT;" . auto/feature fi fi if [ "$NGX_SYSTEM" = "NetBSD" ]; then have=NGX_HAVE_TIMER_EVENT . auto/have echo " + kqueue's EVFILT_TIMER found" # NetBSD 2.0 incompatibly defines kevent.udata as "intptr_t" cat << END >> $NGX_AUTO_CONFIG_H #define NGX_KQUEUE_UDATA_T END else cat << END >> $NGX_AUTO_CONFIG_H #define NGX_KQUEUE_UDATA_T (void *) END fi ngx_feature="crypt()" ngx_feature_name= ngx_feature_run=no ngx_feature_incs= ngx_feature_libs= ngx_feature_test="crypt(\"test\", \"salt\");" . auto/feature if [ $ngx_found = no ]; then ngx_feature="crypt() in libcrypt" ngx_feature_libs=-lcrypt . auto/feature if [ $ngx_found = yes ]; then CRYPT_LIB="-lcrypt" fi fi