--- nginx-0.5.33.orig/debian/docs +++ nginx-0.5.33/debian/docs @@ -0,0 +1 @@ +README --- nginx-0.5.33.orig/debian/nginx.1 +++ nginx-0.5.33/debian/nginx.1 @@ -0,0 +1,47 @@ +.TH "nginx" "1" "" "" "" +.SH "NAME" +nginx \- small, but very powerful and efficient web server +.br + +.br +.SH "SYNOPSIS" +\fBnginx\fR [options] +.br + +.br +.SH "DESCRIPTION" +\fBnginx\fR is a server that can be used as standalone HTTP server and as +a reverse proxy server before some Apache or another big server to reduce +load to backend servers by many concurrent HTTP\-sessions. +.br + +.br +.SH "OPTIONS" +A summary of options is included below: +.br + +.br +\fB\-c\fR +Specifies a particular configuration file for nginx to load. +.br +\fB\-v\fR +Show version of program. +.br +\fB\-t\fR +Tests nginx configuration +.br +.br + +.br +You can find further information about this webserver in http://nginx.net/docs_en.txt. +.br + +.br +.SH "AUTHORS" +\fBnginx\fR was written by Igor Sysoev. +.br + +.br +This manual page was written by Jose Parrella , +for the Debian project (but may be used by others). + --- nginx-0.5.33.orig/debian/copyright +++ nginx-0.5.33/debian/copyright @@ -0,0 +1,30 @@ +This package was debianized by Jose Parrella on +Tue, 5 Sep 2006 11:33:34 -0400. + +It was downloaded from http://nginx.net/ + +Upstream Author: Igor Sysoev + +Copyright (C) 2002-2006 Igor Sysoev + +License: + Redistribution and use in source and binary forms, with or without + modification, are permitted under the terms of the BSD License. + + THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND + ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE + IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE + ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE + FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL + DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS + OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) + HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT + LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY + OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF + SUCH DAMAGE. + +On Debian systems, the complete text of the BSD License can be +found in `/usr/share/common-licenses/BSD'. + +The Debian packaging is (C) 2006, Jose Parrella and +is licensed under the GPL, see `/usr/share/common-licenses/GPL'. --- nginx-0.5.33.orig/debian/postinst +++ nginx-0.5.33/debian/postinst @@ -0,0 +1,58 @@ +#!/bin/sh + +set -e + +case "$1" in + + configure) + + if [ -z $2 ] && [ ! -e /etc/nginx/sites-enabled/default ] ; + then + ln -s /etc/nginx/sites-available/default /etc/nginx/sites-enabled/default + fi + + ;; + + abort-upgrade|abort-remove|abort-deconfigure) + + ;; + + *) + + echo "postinst called with unknown argument \`$1'" >&2 + exit 1 + + ;; + +esac + +if [ -x "/etc/init.d/nginx" ] +then + if [ -f /var/run/nginx.pid ] && /bin/pidof /usr/sbin/nginx >/dev/null + then + echo "Trying a soft restart" + if /bin/kill -USR2 `cat /var/run/nginx.pid` 2>/dev/null + then + echo "PID IS RIGHT" + while [ ! -f /var/run/nginx.pid.oldbin ] + do + echo "WAITING" + cnt=`expr $cnt + 1` + if [ $cnt -gt 10 ] + then + echo "Nginx 'soft' update failed, doing restart"; + /bin/kill -9 `cat /var/run/nginx.pid` + invoke-rc.d nginx start + exit 0 + fi + sleep 1 + done + echo "QUIT" + /bin/kill -QUIT `cat /var/run/nginx.pid.oldbin` + fi + fi +fi + +#DEBHELPER# + +exit 0 --- nginx-0.5.33.orig/debian/control +++ nginx-0.5.33/debian/control @@ -0,0 +1,20 @@ +Source: nginx +Section: web +Priority: optional +Maintainer: Ubuntu Developers +XSBC-Original-Maintainer: Jose Parrella +Uploaders: Fabio Tranchitella +Build-Depends: debhelper (>= 5), autotools-dev, libpcre3-dev, zlib1g-dev, libssl-dev +Standards-Version: 3.7.2 + +Package: nginx +Architecture: any +Depends: ${shlibs:Depends} +Provides: httpd, httpd-cgi +Description: small, but very powerful and efficient web server + Nginx (engine x) is a web server created by Igor Sysoev and kindly provided + to the open-source community. This server can be used as standalone HTTP + server and as a reverse proxy server before some Apache or another big + server to reduce load to backend servers by many concurrent HTTP-sessions. + . + Homepage: http://nginx.net/ --- nginx-0.5.33.orig/debian/rules +++ nginx-0.5.33/debian/rules @@ -0,0 +1,77 @@ +#!/usr/bin/make -f + +CFLAGS = -Wall -g + +ifneq (,$(findstring noopt,$(DEB_BUILD_OPTIONS))) + CFLAGS += -O0 +else + CFLAGS += -O2 +endif + +config.status: + dh_testdir + +ifneq "$(wildcard /usr/share/misc/config.sub)" "" + cp -f /usr/share/misc/config.sub config.sub +endif +ifneq "$(wildcard /usr/share/misc/config.guess)" "" + cp -f /usr/share/misc/config.guess config.guess +endif + ./configure --conf-path=/etc/nginx/nginx.conf \ + --error-log-path=/var/log/nginx/error.log --pid-path=/var/run/nginx.pid \ + --lock-path=/var/lock/nginx.lock --http-log-path=/var/log/nginx/access.log \ + --http-client-body-temp-path=/var/lib/nginx/body --http-proxy-temp-path=/var/lib/nginx/proxy \ + --http-fastcgi-temp-path=/var/lib/nginx/fastcgi --with-debug --with-http_stub_status_module \ + --with-http_flv_module --with-http_ssl_module --with-http_dav_module + +build: config.status + $(MAKE) build + +build-stamp: + dh_testdir + touch $@ + +clean: + dh_testdir + dh_testroot + rm -f build-stamp + [ ! -f Makefile ] || $(MAKE) clean + +ifneq "$(wildcard /usr/share/misc/config.sub)" "" + rm -f config.sub +endif +ifneq "$(wildcard /usr/share/misc/config.guess)" "" + rm -f config.guess +endif + dh_clean + +install: + dh_testdir + dh_testroot + dh_clean -k + dh_installdirs + dh_install + +binary-indep: + +binary-arch: install + dh_testdir + dh_testroot + dh_installchangelogs CHANGES + dh_installdocs + dh_installinit -r --no-start + dh_installman debian/nginx.1 + dh_installlogrotate + dh_link + dh_strip + dh_compress + dh_fixperms + dh_installdeb + dh_shlibdeps + dh_gencontrol + dh_md5sums + dh_builddeb + +binary: binary-indep binary-arch + +.PHONY: build clean binary-indep binary-arch binary install --- nginx-0.5.33.orig/debian/watch +++ nginx-0.5.33/debian/watch @@ -0,0 +1,11 @@ +# Example watch control file for uscan +# Rename this file to "watch" and then you can run the "uscan" command +# to check for upstream updates and more. +# See uscan(1) for format + +# Compulsory line, this is a version 3 file +version=3 + +# Uncomment to examine a Webpage +# +http://sysoev.ru/nginx/ nginx-(.*)\.tar\.gz --- nginx-0.5.33.orig/debian/prerm +++ nginx-0.5.33/debian/prerm @@ -0,0 +1,34 @@ +#!/bin/sh + +set -e + +case "$1" in + + remove|remove-in-favour|deconfigure|deconfigure-in-favour) + + if [ -x /etc/init.d/nginx ]; then + if [ -x /usr/sbin/invoke-rc.d ] ; then + invoke-rc.d nginx stop + else + /etc/init.d/nginx stop + fi + fi + + ;; + + upgrade|failed-upgrade) + + ;; + + *) + + echo "prerm called with unknown argument \`$1'" >&2 + exit 1 + + ;; + +esac + +#DEBHELPER# + +exit 0 --- nginx-0.5.33.orig/debian/init.d +++ nginx-0.5.33/debian/init.d @@ -0,0 +1,62 @@ +#! /bin/sh + +### BEGIN INIT INFO +# Provides: nginx +# Required-Start: $all +# Required-Stop: $all +# Default-Start: 2 3 4 5 +# Default-Stop: 0 1 6 +# Short-Description: starts the nginx web server +# Description: starts nginx using start-stop-daemon +### END INIT INFO + +PATH=/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin +DAEMON=/usr/sbin/nginx +NAME=nginx +DESC=nginx + +test -x $DAEMON || exit 0 + +# Include nginx defaults if available +if [ -f /etc/default/nginx ] ; then + . /etc/default/nginx +fi + +set -e + +case "$1" in + start) + echo -n "Starting $DESC: " + start-stop-daemon --start --quiet --pidfile /var/run/$NAME.pid \ + --exec $DAEMON -- $DAEMON_OPTS + echo "$NAME." + ;; + stop) + echo -n "Stopping $DESC: " + start-stop-daemon --stop --quiet --pidfile /var/run/$NAME.pid \ + --exec $DAEMON + echo "$NAME." + ;; + restart|force-reload) + echo -n "Restarting $DESC: " + start-stop-daemon --stop --quiet --pidfile \ + /var/run/$NAME.pid --exec $DAEMON + sleep 1 + start-stop-daemon --start --quiet --pidfile \ + /var/run/$NAME.pid --exec $DAEMON -- $DAEMON_OPTS + echo "$NAME." + ;; + reload) + echo -n "Reloading $DESC configuration: " + start-stop-daemon --stop --signal HUP --quiet --pidfile /var/run/$NAME.pid \ + --exec $DAEMON + echo "$NAME." + ;; + *) + N=/etc/init.d/$NAME + echo "Usage: $N {start|stop|restart|reload|force-reload}" >&2 + exit 1 + ;; +esac + +exit 0 --- nginx-0.5.33.orig/debian/changelog +++ nginx-0.5.33/debian/changelog @@ -0,0 +1,124 @@ +nginx (0.5.33-1ubuntu0.2) hardy-security; urgency=low + + * SECURITY UPDATE: + - Merge r3528 from upstream repository to mitigate + potential null byte vulnerability (LP: #803720) + + -- Neal Poole Tue, 12 Jul 2011 21:41:00 -0400 + +nginx (0.5.33-1ubuntu0.1) hardy-security; urgency=low + + * SECURITY UPDATE: Buffer underflow vulnerability, which allows remote + attackers to execute arbitrary code via crafted HTTP request. (LP: #430064) + - src/http/ngx_http_parse.c patched. + - CVE-2009-2629. + + -- Andres Rodriguez Sat, 26 Sep 2009 13:10:01 -0400 + +nginx (0.5.33-1) unstable; urgency=low + + * New stable upstream release (Closes: #451173) + * nginx now provides httpd, httpd-cgi virtual packages + (Closes: #439468, #452025) + * sites-enabled/default link is now provided only on fresh + installations (Closes: #432961) + * Updated code for online upgrading of nginx (Closes: #445246) + * Reviewed maintainer scripts for correct behaviour on updates + (Closes: #452787, #435965) + * Removed debian/nginx.links and debian/preinst. + * Changing Maintainer address to bureado@debian.org. + * Welcoming Fabio Tranchitella as an nginx + uploader for Debian. Thanks for your patches. + + -- Jose Parrella Sat, 08 Dec 2007 11:27:54 -0400 + +nginx (0.5.30-1) unstable; urgency=low + + * New stable upstream release. + * Adding mime.types (and other upstream conffiles) to the package + since it was lost on 0.5.26 (Closes: #435964) + + -- Jose Parrella Sat, 04 Aug 2007 10:39:40 -0400 + +nginx (0.5.26-1) unstable; urgency=low + + * New stable upstream release. + * Updating init.d usage message. + * Installing logrotate script (Closes: #397978) + + -- Jose Parrella Sun, 17 Jun 2007 20:43:35 +0100 + +nginx (0.5.18-1) unstable; urgency=low + + * New upstream version (Closes: #420063) + * Adding DAV support (Closes: #415678) + * Adding support for sites-[available|enabled]/ (Closes: #419912) + + -- Jose Parrella Thu, 19 Apr 2007 21:50:37 -0400 + +nginx (0.5.13-1) unstable; urgency=low + + * Adding FLV support. (Closes: #411105) + * Adding SSL support. + + -- Jose Parrella Mon, 19 Feb 2007 10:30:07 -0400 + +nginx (0.5.12-2) unstable; urgency=low + + * Patching src/core/ngx_shmtx.h in order to solve FTBFS problems in + non-x86 archs (Thanks to Igor Sysoev) (Closes: #410884) + + -- Jose Parrella Wed, 14 Feb 2007 13:32:01 -0400 + +nginx (0.5.12-1) unstable; urgency=low + + * New upstream version fixes FTBFS problems in non-x86 archs + (Closes: #409878) + + -- Jose Parrella Mon, 12 Feb 2007 19:37:07 -0400 + +nginx (0.5.11-1) unstable; urgency=low + + * New upstream version. (Closes: #405983) + + -- Jose Parrella Sun, 5 Feb 2007 19:35:56 -0400 + +nginx (0.4.13-2) unstable; urgency=low + + * Fixed default installation paths for www/ files, avoiding the + default installation of index.html in /var/www (Closes: #400103) + * Alexey Besciokov provided new postinst and prerm + scripts with the ability to reload the master binary (Closes: #398009) + + -- Jose Parrella Fri, 24 Nov 2006 07:12:46 -0400 + +nginx (0.4.13-1) unstable; urgency=low + + * New upstream version + * Fixed default configuration file which made nginx to fail at + installation and purge. + + -- Jose Parrella Thu, 16 Nov 2006 22:44:33 -0400 + +nginx (0.4.12-1) unstable; urgency=low + + * New upstream version (Closes: #397969) + * nginx will now compile with debugging and status support + (Closes: #397967) + * Added configuration reload support in the init.d script + (Closes: #397980) + * Added logrotate script (Closes: #397978) + * Added debian/upstream.pl as a brief helper for new + upstream version packaging. + * Thanks to Alexey Besciokov for + suggestions, bug reports and patches. + + -- Jose Parrella Sun, 12 Nov 2006 18:31:24 -0400 + +nginx (0.4.2-1) unstable; urgency=low + + * Initial release (Closes: #386151) + * Tweaked the configuration file and the path handling for Debian. + + -- Jose Parrella Thu, 14 Sep 2006 11:40:20 -0400 + --- nginx-0.5.33.orig/debian/dirs +++ nginx-0.5.33/debian/dirs @@ -0,0 +1,7 @@ +usr/sbin +etc/nginx +etc/nginx/sites-available +etc/nginx/sites-enabled +var/log/nginx +var/lib/nginx +var/www/nginx-default --- nginx-0.5.33.orig/debian/compat +++ nginx-0.5.33/debian/compat @@ -0,0 +1 @@ +5 --- nginx-0.5.33.orig/debian/nginx.logrotate +++ nginx-0.5.33/debian/nginx.logrotate @@ -0,0 +1,13 @@ +/var/log/nginx/*.log { + daily + missingok + rotate 52 + compress + delaycompress + notifempty + create 640 root adm + sharedscripts + postrotate + [ ! -f /var/run/nginx.pid ] || kill -USR1 `cat /var/run/nginx.pid` + endscript +} --- nginx-0.5.33.orig/debian/conf/nginx.conf +++ nginx-0.5.33/debian/conf/nginx.conf @@ -0,0 +1,28 @@ +user www-data; +worker_processes 1; + +error_log /var/log/nginx/error.log; +pid /var/run/nginx.pid; + +events { + worker_connections 1024; +} + +http { + include /etc/nginx/mime.types; + default_type application/octet-stream; + + access_log /var/log/nginx/access.log; + + sendfile on; + #tcp_nopush on; + + #keepalive_timeout 0; + keepalive_timeout 65; + tcp_nodelay on; + + gzip on; + + include /etc/nginx/sites-enabled/*; + +} --- nginx-0.5.33.orig/debian/conf/mime.types +++ nginx-0.5.33/debian/conf/mime.types @@ -0,0 +1,69 @@ + +types { + text/html html htm shtml; + text/css css; + text/xml xml rss; + image/gif gif; + image/jpeg jpeg jpg; + application/x-javascript js; + application/atom+xml atom; + + text/mathml mml; + text/plain txt; + text/vnd.sun.j2me.app-descriptor jad; + text/vnd.wap.wml wml; + text/x-component htc; + + image/png png; + image/tiff tif tiff; + image/vnd.wap.wbmp wbmp; + image/x-icon ico; + image/x-jng jng; + image/x-ms-bmp bmp; + + application/java-archive jar war ear; + application/mac-binhex40 hqx; + application/msword doc; + application/pdf pdf; + application/postscript ps eps ai; + application/rtf rtf; + application/vnd.ms-excel xls; + application/vnd.ms-powerpoint ppt; + application/vnd.wap.wmlc wmlc; + application/vnd.wap.xhtml+xml xhtml; + application/x-cocoa cco; + application/x-java-archive-diff jardiff; + application/x-java-jnlp-file jnlp; + application/x-makeself run; + application/x-perl pl pm; + application/x-pilot prc pdb; + application/x-rar-compressed rar; + application/x-redhat-package-manager rpm; + application/x-sea sea; + application/x-shockwave-flash swf; + application/x-stuffit sit; + application/x-tcl tcl tk; + application/x-x509-ca-cert der pem crt; + application/x-xpinstall xpi; + application/zip zip; + + application/octet-stream bin exe dll; + application/octet-stream deb; + application/octet-stream dmg; + application/octet-stream eot; + application/octet-stream iso img; + application/octet-stream msi msp msm; + + audio/midi mid midi kar; + audio/mpeg mp3; + audio/x-realaudio ra; + + video/3gpp 3gpp 3gp; + video/mpeg mpeg mpg; + video/quicktime mov; + video/x-flv flv; + video/x-mng mng; + video/x-ms-asf asx asf; + video/x-ms-wmv wmv; + video/x-msvideo avi; +} --- nginx-0.5.33.orig/debian/conf/fastcgi_params +++ nginx-0.5.33/debian/conf/fastcgi_params @@ -0,0 +1,23 @@ + +fastcgi_param QUERY_STRING $query_string; +fastcgi_param REQUEST_METHOD $request_method; +fastcgi_param CONTENT_TYPE $content_type; +fastcgi_param CONTENT_LENGTH $content_length; + +fastcgi_param SCRIPT_NAME $fastcgi_script_name; +fastcgi_param REQUEST_URI $request_uri; +fastcgi_param DOCUMENT_URI $document_uri; +fastcgi_param DOCUMENT_ROOT $document_root; +fastcgi_param SERVER_PROTOCOL $server_protocol; + +fastcgi_param GATEWAY_INTERFACE CGI/1.1; +fastcgi_param SERVER_SOFTWARE nginx/$nginx_version; + +fastcgi_param REMOTE_ADDR $remote_addr; +fastcgi_param REMOTE_PORT $remote_port; +fastcgi_param SERVER_ADDR $server_addr; +fastcgi_param SERVER_PORT $server_port; +fastcgi_param SERVER_NAME $server_name; + +# PHP only, required if PHP was built with --enable-force-cgi-redirect +fastcgi_param REDIRECT_STATUS 200; --- nginx-0.5.33.orig/debian/conf/koi-win +++ nginx-0.5.33/debian/conf/koi-win @@ -0,0 +1,103 @@ + +charset_map koi8-r windows-1251 { + + 80 88 ; # euro + + 95 95 ; # bullet + + 9A A0 ; #   + + 9E B7 ; # · + + A3 B8 ; # small yo + A4 BA ; # small Ukrainian ye + + A6 B3 ; # small Ukrainian i + A7 BF ; # small Ukrainian yi + + AD B4 ; # small Ukrainian soft g + AE A2 ; # small Byelorussian short u + + B0 B0 ; # ° + + B3 A8 ; # capital YO + B4 AA ; # capital Ukrainian YE + + B6 B2 ; # capital Ukrainian I + B7 AF ; # capital Ukrainian YI + + B9 B9 ; # numero sign + + BD A5 ; # capital Ukrainian soft G + BE A1 ; # capital Byelorussian short U + + BF A9 ; # (C) + + C0 FE ; # small yu + C1 E0 ; # small a + C2 E1 ; # small b + C3 F6 ; # small ts + C4 E4 ; # small d + C5 E5 ; # small ye + C6 F4 ; # small f + C7 E3 ; # small g + C8 F5 ; # small kh + C9 E8 ; # small i + CA E9 ; # small j + CB EA ; # small k + CC EB ; # small l + CD EC ; # small m + CE ED ; # small n + CF EE ; # small o + + D0 EF ; # small p + D1 FF ; # small ya + D2 F0 ; # small r + D3 F1 ; # small s + D4 F2 ; # small t + D5 F3 ; # small u + D6 E6 ; # small zh + D7 E2 ; # small v + D8 FC ; # small soft sign + D9 FB ; # small y + DA E7 ; # small z + DB F8 ; # small sh + DC FD ; # small e + DD F9 ; # small shch + DE F7 ; # small ch + DF FA ; # small hard sign + + E0 DE ; # capital YU + E1 C0 ; # capital A + E2 C1 ; # capital B + E3 D6 ; # capital TS + E4 C4 ; # capital D + E5 C5 ; # capital YE + E6 D4 ; # capital F + E7 C3 ; # capital G + E8 D5 ; # capital KH + E9 C8 ; # capital I + EA C9 ; # capital J + EB CA ; # capital K + EC CB ; # capital L + ED CC ; # capital M + EE CD ; # capital N + EF CE ; # capital O + + F0 CF ; # capital P + F1 DF ; # capital YA + F2 D0 ; # capital R + F3 D1 ; # capital S + F4 D2 ; # capital T + F5 D3 ; # capital U + F6 C6 ; # capital ZH + F7 C2 ; # capital V + F8 DC ; # capital soft sign + F9 DB ; # capital Y + FA C7 ; # capital Z + FB D8 ; # capital SH + FC DD ; # capital E + FD D9 ; # capital SHCH + FE D7 ; # capital CH + FF DA ; # capital hard sign +} --- nginx-0.5.33.orig/debian/conf/win-utf +++ nginx-0.5.33/debian/conf/win-utf @@ -0,0 +1,126 @@ + +# This map is not a full windows-1251 <> utf8 map: it does not +# contain Serbian and Macedonian letters. If you need a full map, +# use contrib/unicode2nginx/win-utf map instead. + +charset_map windows-1251 utf-8 { + + 82 E2809A ; # single low-9 quotation mark + + 84 E2809E ; # double low-9 quotation mark + 85 E280A6 ; # ellipsis + 86 E280A0 ; # dagger + 87 E280A1 ; # double dagger + 88 E282AC ; # euro + 89 E280B0 ; # per mille + + 91 E28098 ; # left single quotation mark + 92 E28099 ; # right single quotation mark + 93 E2809C ; # left double quotation mark + 94 E2809D ; # right double quotation mark + 95 E280A2 ; # bullet + 96 E28093 ; # en dash + 97 E28094 ; # em dash + + 99 E284A2 ; # trade mark sign + + A0 C2A0 ; #   + A1 D18E ; # capital Byelorussian short U + A2 D19E ; # small Byelorussian short u + + A4 C2A4 ; # currency sign + A5 D290 ; # capital Ukrainian soft G + A6 C2A6 ; # borken bar + A7 C2A7 ; # section sign + A8 D081 ; # capital YO + A9 C2A9 ; # (C) + AA D084 ; # capital Ukrainian YE + AB C2AB ; # left-pointing double angle quotation mark + AC C2AC ; # not sign + AD C2AD ; # soft hypen + AE C2AE ; # (R) + AF D087 ; # capital Ukrainian YI + + B0 C2B0 ; # ° + B1 C2B1 ; # plus-minus sign + B2 D086 ; # capital Ukrainian I + B3 D196 ; # small Ukrainian i + B4 D291 ; # small Ukrainian soft g + B5 C2B5 ; # micro sign + B6 C2B6 ; # pilcrow sign + B7 C2B7 ; # · + B8 D191 ; # small yo + B9 E28496 ; # numero sign + BA D194 ; # small Ukrainian ye + BB C2BB ; # right-pointing double angle quotation mark + + BF D197 ; # small Ukrainian yi + + C0 D090 ; # capital A + C1 D091 ; # capital B + C2 D092 ; # capital V + C3 D093 ; # capital G + C4 D094 ; # capital D + C5 D095 ; # capital YE + C6 D096 ; # capital ZH + C7 D097 ; # capital Z + C8 D098 ; # capital I + C9 D099 ; # capital J + CA D09A ; # capital K + CB D09B ; # capital L + CC D09C ; # capital M + CD D09D ; # capital N + CE D09E ; # capital O + CF D09F ; # capital P + + D0 D0A0 ; # capital R + D1 D0A1 ; # capital S + D2 D0A2 ; # capital T + D3 D0A3 ; # capital U + D4 D0A4 ; # capital F + D5 D0A5 ; # capital KH + D6 D0A6 ; # capital TS + D7 D0A7 ; # capital CH + D8 D0A8 ; # capital SH + D9 D0A9 ; # capital SHCH + DA D0AA ; # capital hard sign + DB D0AB ; # capital Y + DC D0AC ; # capital soft sign + DD D0AD ; # capital E + DE D0AE ; # capital YU + DF D0AF ; # capital YA + + E0 D0B0 ; # small a + E1 D0B1 ; # small b + E2 D0B2 ; # small v + E3 D0B3 ; # small g + E4 D0B4 ; # small d + E5 D0B5 ; # small ye + E6 D0B6 ; # small zh + E7 D0B7 ; # small z + E8 D0B8 ; # small i + E9 D0B9 ; # small j + EA D0BA ; # small k + EB D0BB ; # small l + EC D0BC ; # small m + ED D0BD ; # small n + EE D0BE ; # small o + EF D0BF ; # small p + + F0 D180 ; # small r + F1 D181 ; # small s + F2 D182 ; # small t + F3 D183 ; # small u + F4 D184 ; # small f + F5 D185 ; # small kh + F6 D186 ; # small ts + F7 D187 ; # small ch + F8 D188 ; # small sh + F9 D189 ; # small shch + FA D18A ; # small hard sign + FB D18B ; # small y + FC D18C ; # small soft sign + FD D18D ; # small e + FE D18E ; # small yu + FF D18F ; # small ya +} --- nginx-0.5.33.orig/debian/conf/sites-available/default +++ nginx-0.5.33/debian/conf/sites-available/default @@ -0,0 +1,85 @@ +# You may add here your +# server { +# ... +# } +# statements for each of your virtual hosts + +server { + listen 80; + server_name localhost; + + access_log /var/log/nginx/localhost.access.log; + + location / { + root /var/www/nginx-default; + index index.html index.htm; + } + + #error_page 404 /404.html; + + # redirect server error pages to the static page /50x.html + # + error_page 500 502 503 504 /50x.html; + location = /50x.html { + root /var/www/nginx-default; + } + + # proxy the PHP scripts to Apache listening on 127.0.0.1:80 + # + #location ~ \.php$ { + #proxy_pass http://127.0.0.1; + #} + + # pass the PHP scripts to FastCGI server listening on 127.0.0.1:9000 + # + #location ~ \.php$ { + #fastcgi_pass 127.0.0.1:9000; + #fastcgi_index index.php; + #fastcgi_param SCRIPT_FILENAME /scripts$fastcgi_script_name; + #includefastcgi_params; + #} + + # deny access to .htaccess files, if Apache's document root + # concurs with nginx's one + # + #location ~ /\.ht { + #deny all; + #} +} + + +# another virtual host using mix of IP-, name-, and port-based configuration +# +#server { +#listen 8000; +#listen somename:8080; +#server_name somename alias another.alias; + +#location / { +#root html; +#index index.html index.htm; +#} +#} + + +# HTTPS server +# +#server { +#listen 443; +#server_name localhost; + +#ssl on; +#ssl_certificate cert.pem; +#ssl_certificate_key cert.key; + +#ssl_session_timeout 5m; + +#ssl_protocols SSLv2 SSLv3 TLSv1; +#ssl_ciphers ALL:!ADH:!EXPORT56:RC4+RSA:+HIGH:+MEDIUM:+LOW:+SSLv2:+EXP; +#ssl_prefer_server_ciphers on; + +#location / { +#root html; +#index index.html index.htm; +#} +#} --- nginx-0.5.33.orig/debian/conf/koi-utf +++ nginx-0.5.33/debian/conf/koi-utf @@ -0,0 +1,109 @@ + +# This map is not a full koi8-r <> utf8 map: it does not contain +# box-drawing and some other characters. Besides this map contains +# several koi8-u and Byelorussian letters which are not in koi8-r. +# If you need a full and standard map, use contrib/unicode2nginx/koi-utf +# map instead. + +charset_map koi8-r utf-8 { + + 80 E282AC ; # euro + + 95 E280A2 ; # bullet + + 9A C2A0 ; #   + + 9E C2B7 ; # · + + A3 D191 ; # small yo + A4 D194 ; # small Ukrainian ye + + A6 D196 ; # small Ukrainian i + A7 D197 ; # small Ukrainian yi + + AD D291 ; # small Ukrainian soft g + AE D19E ; # small Byelorussian short u + + B0 C2B0 ; # ° + + B3 D081 ; # capital YO + B4 D084 ; # capital Ukrainian YE + + B6 D086 ; # capital Ukrainian I + B7 D087 ; # capital Ukrainian YI + + B9 E28496 ; # numero sign + + BD D290 ; # capital Ukrainian soft G + BE D18E ; # capital Byelorussian short U + + BF C2A9 ; # (C) + + C0 D18E ; # small yu + C1 D0B0 ; # small a + C2 D0B1 ; # small b + C3 D186 ; # small ts + C4 D0B4 ; # small d + C5 D0B5 ; # small ye + C6 D184 ; # small f + C7 D0B3 ; # small g + C8 D185 ; # small kh + C9 D0B8 ; # small i + CA D0B9 ; # small j + CB D0BA ; # small k + CC D0BB ; # small l + CD D0BC ; # small m + CE D0BD ; # small n + CF D0BE ; # small o + + D0 D0BF ; # small p + D1 D18F ; # small ya + D2 D180 ; # small r + D3 D181 ; # small s + D4 D182 ; # small t + D5 D183 ; # small u + D6 D0B6 ; # small zh + D7 D0B2 ; # small v + D8 D18C ; # small soft sign + D9 D18B ; # small y + DA D0B7 ; # small z + DB D188 ; # small sh + DC D18D ; # small e + DD D189 ; # small shch + DE D187 ; # small ch + DF D18A ; # small hard sign + + E0 D0AE ; # capital YU + E1 D090 ; # capital A + E2 D091 ; # capital B + E3 D0A6 ; # capital TS + E4 D094 ; # capital D + E5 D095 ; # capital YE + E6 D0A4 ; # capital F + E7 D093 ; # capital G + E8 D0A5 ; # capital KH + E9 D098 ; # capital I + EA D099 ; # capital J + EB D09A ; # capital K + EC D09B ; # capital L + ED D09C ; # capital M + EE D09D ; # capital N + EF D09E ; # capital O + + F0 D09F ; # capital P + F1 D0AF ; # capital YA + F2 D0A0 ; # capital R + F3 D0A1 ; # capital S + F4 D0A2 ; # capital T + F5 D0A3 ; # capital U + F6 D096 ; # capital ZH + F7 D092 ; # capital V + F8 D0AC ; # capital soft sign + F9 D0AB ; # capital Y + FA D097 ; # capital Z + FB D0A8 ; # capital SH + FC D0AD ; # capital E + FD D0A9 ; # capital SHCH + FE D0A7 ; # capital CH + FF D0AA ; # capital hard sign +} --- nginx-0.5.33.orig/debian/nginx.install +++ nginx-0.5.33/debian/nginx.install @@ -0,0 +1,4 @@ +objs/nginx usr/sbin +html/* var/www/nginx-default +debian/conf/* etc/nginx + --- nginx-0.5.33.orig/debian/README.Debian +++ nginx-0.5.33/debian/README.Debian @@ -0,0 +1,12 @@ +Please note that Debian is currently based on the 0.5 branch of the +nginx webserver, since 0.6 isn't regarded as stable now. However, please +note that it should be easy to build a Debian package out of the 0.6 +branch just by copying the debian/ subdirectory from the source package. +Well, it should. + +The package didn't handle paths correctly (still), so the configure line +has grown up a bit. I've also tweaked a bit the main configuration file. +If you would like to supply patches and write or translate documentation +from russian, it will be greatly appreciated. + +Jose Parrella -- bureado@debian.org.ve --- nginx-0.5.33.orig/debian/postrm +++ nginx-0.5.33/debian/postrm @@ -0,0 +1,25 @@ +#!/bin/sh + +set -e + +case "$1" in + + purge) + + rm -rf /var/lib/nginx /var/log/nginx /etc/nginx + ;; + + remove|upgrade|failed-upgrade|abort-install|abort-upgrade|disappear) + + ;; + + *) + + echo "postrm called with unknown argument \`$1'" >&2 + exit 1 + +esac + +#DEBHELPER# + +exit 0 --- nginx-0.5.33.orig/src/http/ngx_http_upstream.c +++ nginx-0.5.33/src/http/ngx_http_upstream.c @@ -1172,10 +1172,6 @@ return; } - if (flags & NGX_HTTP_ZERO_IN_URI) { - r->zero_in_uri = 1; - } - if (r->method != NGX_HTTP_HEAD) { r->method = NGX_HTTP_GET; } --- nginx-0.5.33.orig/src/http/ngx_http_special_response.c +++ nginx-0.5.33/src/http/ngx_http_special_response.c @@ -389,18 +389,6 @@ return NGX_ERROR; } - if (r->zero_in_uri) { - for (n = 0; n < uri->len; n++) { - if (uri->data[n] == '\0') { - goto zero; - } - } - - r->zero_in_uri = 0; - } - - } else { - r->zero_in_uri = 0; } zero: --- nginx-0.5.33.orig/src/http/modules/ngx_http_flv_module.c +++ nginx-0.5.33/src/http/modules/ngx_http_flv_module.c @@ -84,11 +84,6 @@ return NGX_DECLINED; } - /* TODO: Win32 */ - if (r->zero_in_uri) { - return NGX_DECLINED; - } - rc = ngx_http_discard_body(r); if (rc != NGX_OK && rc != NGX_AGAIN) { --- nginx-0.5.33.orig/src/http/modules/ngx_http_static_module.c +++ nginx-0.5.33/src/http/modules/ngx_http_static_module.c @@ -95,11 +95,6 @@ return NGX_DECLINED; } - /* TODO: Win32 */ - if (r->zero_in_uri) { - return NGX_DECLINED; - } - rc = ngx_http_discard_body(r); if (rc != NGX_OK && rc != NGX_AGAIN) { --- nginx-0.5.33.orig/src/http/modules/ngx_http_index_module.c +++ nginx-0.5.33/src/http/modules/ngx_http_index_module.c @@ -144,11 +144,6 @@ return NGX_DECLINED; } - /* TODO: Win32 */ - if (r->zero_in_uri) { - return NGX_DECLINED; - } - log = r->connection->log; /* --- nginx-0.5.33.orig/src/http/modules/ngx_http_dav_module.c +++ nginx-0.5.33/src/http/modules/ngx_http_dav_module.c @@ -138,11 +138,6 @@ ngx_int_t rc; ngx_http_dav_loc_conf_t *dlcf; - /* TODO: Win32 */ - if (r->zero_in_uri) { - return NGX_DECLINED; - } - dlcf = ngx_http_get_module_loc_conf(r, ngx_http_dav_module); if (!(r->method & dlcf->methods)) { --- nginx-0.5.33.orig/src/http/modules/perl/ngx_http_perl_module.c +++ nginx-0.5.33/src/http/modules/perl/ngx_http_perl_module.c @@ -172,11 +172,6 @@ static ngx_int_t ngx_http_perl_handler(ngx_http_request_t *r) { - /* TODO: Win32 */ - if (r->zero_in_uri) { - return NGX_HTTP_NOT_FOUND; - } - ngx_http_perl_handle_request(r); return NGX_DONE; --- nginx-0.5.33.orig/src/http/modules/ngx_http_autoindex_module.c +++ nginx-0.5.33/src/http/modules/ngx_http_autoindex_module.c @@ -157,11 +157,6 @@ return NGX_DECLINED; } - /* TODO: Win32 */ - if (r->zero_in_uri) { - return NGX_DECLINED; - } - if (!(r->method & (NGX_HTTP_GET|NGX_HTTP_HEAD))) { return NGX_DECLINED; } --- nginx-0.5.33.orig/src/http/ngx_http_core_module.c +++ nginx-0.5.33/src/http/ngx_http_core_module.c @@ -873,7 +873,7 @@ /* no content handler was found */ - if (r->uri.data[r->uri.len - 1] == '/' && !r->zero_in_uri) { + if (r->uri.data[r->uri.len - 1] == '/') { if (ngx_http_map_uri_to_path(r, &path, &root, 0) != NULL) { ngx_log_error(NGX_LOG_ERR, r->connection->log, 0, @@ -1406,7 +1406,6 @@ ngx_log_debug2(NGX_LOG_DEBUG_HTTP, c->log, 0, "http subrequest \"%V?%V\"", uri, &sr->args); - sr->zero_in_uri = (flags & NGX_HTTP_ZERO_IN_URI) != 0; sr->subrequest_in_memory = (flags & NGX_HTTP_SUBREQUEST_IN_MEMORY) != 0; sr->unparsed_uri = r->unparsed_uri; --- nginx-0.5.33.orig/src/http/ngx_http_parse.c +++ nginx-0.5.33/src/http/ngx_http_parse.c @@ -419,8 +419,7 @@ r->plus_in_uri = 1; break; case '\0': - r->zero_in_uri = 1; - break; + return NGX_HTTP_PARSE_INVALID_REQUEST; default: state = sw_check_uri; break; @@ -477,8 +476,7 @@ r->plus_in_uri = 1; break; case '\0': - r->zero_in_uri = 1; - break; + return NGX_HTTP_PARSE_INVALID_REQUEST; } break; @@ -507,8 +505,7 @@ r->complex_uri = 1; break; case '\0': - r->zero_in_uri = 1; - break; + return NGX_HTTP_PARSE_INVALID_REQUEST; } break; @@ -1081,11 +1078,15 @@ #endif case '/': state = sw_slash; - u -= 4; - if (u < r->uri.data) { - return NGX_HTTP_PARSE_INVALID_REQUEST; - } - while (*(u - 1) != '/') { + u -= 5; + for ( ;; ) { + if (u < r->uri.data) { + return NGX_HTTP_PARSE_INVALID_REQUEST; + } + if (*u == '/') { + u++; + break; + } u--; } break; @@ -1200,7 +1201,7 @@ ch = *p++; } else if (ch == '\0') { - r->zero_in_uri = 1; + return NGX_HTTP_PARSE_INVALID_REQUEST; } state = quoted_state; @@ -1307,8 +1308,7 @@ } if (ch == '\0') { - *flags |= NGX_HTTP_ZERO_IN_URI; - continue; + goto unsafe; } if ((ch == '/' --- nginx-0.5.33.orig/src/http/ngx_http_request.h +++ nginx-0.5.33/src/http/ngx_http_request.h @@ -56,7 +56,7 @@ #define NGX_HTTP_PARSE_INVALID_HEADER 13 -#define NGX_HTTP_ZERO_IN_URI 1 +/* unused 1 */ #define NGX_HTTP_SUBREQUEST_IN_MEMORY 2 @@ -406,9 +406,6 @@ /* URI with "+" */ unsigned plus_in_uri:1; - /* URI with "\0" or "%00" */ - unsigned zero_in_uri:1; - unsigned invalid_header:1; unsigned valid_location:1;