xref: /minix3/libexec/httpd/CHANGES (revision 340f5e56603e4275faeb89a9aacace41ba22d661)
1*340f5e56SDavid van Moolenbroek$eterna: CHANGES,v 1.78 2011/11/18 01:25:11 mrg Exp $
2*340f5e56SDavid van Moolenbroek
3*340f5e56SDavid van Moolenbroekchanges in bozohttpd 20150320:
4*340f5e56SDavid van Moolenbroek	o  fix redirection handling
5*340f5e56SDavid van Moolenbroek	o  support transport stream (.ts) and video object (.vob) files
6*340f5e56SDavid van Moolenbroek	o  directory listings show correct file sizes for large files
7*340f5e56SDavid van Moolenbroek
8*340f5e56SDavid van Moolenbroekchanges in bozohttpd 20140717:
9*340f5e56SDavid van Moolenbroek	o  properly handle SSL errors
10*340f5e56SDavid van Moolenbroek
11*340f5e56SDavid van Moolenbroekchanges in bozohttpd 20140708:
12*340f5e56SDavid van Moolenbroek	o  fixes for virtual host support, from rajeev_v_pillai@yahoo.com
13*340f5e56SDavid van Moolenbroek	o  avoid printing double errors, from shm@netbsd.org
14*340f5e56SDavid van Moolenbroek	o  fix a security issue in basic HTTP authentication which would allow
15*340f5e56SDavid van Moolenbroek	   authentication to be bypassed, from shm@netbsd.org
16*340f5e56SDavid van Moolenbroek
17*340f5e56SDavid van Moolenbroekchanges in bozohttpd 20140201:
18*340f5e56SDavid van Moolenbroek	o  support .svg files
19*340f5e56SDavid van Moolenbroek	o  fix a core dump when requests timeout
20*340f5e56SDavid van Moolenbroek
21*340f5e56SDavid van Moolenbroekchanges in bozohttpd 20140102:
22*340f5e56SDavid van Moolenbroek	o  update a few content types
23*340f5e56SDavid van Moolenbroek	o  add support for directly calling lua scripts to handle
24*340f5e56SDavid van Moolenbroek	   processes, from mbalmer@netbsd.org
25*340f5e56SDavid van Moolenbroek	o  properly escape generated HTML
26*340f5e56SDavid van Moolenbroek	o  add authentication for redirections, from martin@netbsd.org
27*340f5e56SDavid van Moolenbroek	o  handle chained ssl certifications, from elric@netbsd.org
28*340f5e56SDavid van Moolenbroek	o  add basic support for gzipped files, from elric@netbsd.org
29*340f5e56SDavid van Moolenbroek	o  properly escape generated URIs
30*340f5e56SDavid van Moolenbroek
31*340f5e56SDavid van Moolenbroekchanges in bozohttpd 20111118:
32*340f5e56SDavid van Moolenbroek	o  add -P <pidfile> option, from jmmv@netbsd.org
33*340f5e56SDavid van Moolenbroek	o  avoid crashes with http basic auth, from pooka@netbsd.org
34*340f5e56SDavid van Moolenbroek	o  add support for REDIRECT_STATUS variable, from tls@netbsd.org
35*340f5e56SDavid van Moolenbroek	o  support .mp4 files in the default map
36*340f5e56SDavid van Moolenbroek	o  directory indexes with files with : are now displayed properly, from
37*340f5e56SDavid van Moolenbroek	   reed@netbsd.org
38*340f5e56SDavid van Moolenbroek	o  allow -I option to be useful in non-inetd mode as well
39*340f5e56SDavid van Moolenbroek
40*340f5e56SDavid van Moolenbroekchanges in bozohttpd 20100920:
41*340f5e56SDavid van Moolenbroek	o  properly fully disable multi-file mode for now
42*340f5e56SDavid van Moolenbroek	o  fix the -t and -U options when used without the -e option, broken since
43*340f5e56SDavid van Moolenbroek	   the library-ifcation
44*340f5e56SDavid van Moolenbroek	o  be explicit that logs go to the FTP facility in syslog
45*340f5e56SDavid van Moolenbroek	o  use scandir() with alphasort() for sorted directory lists, from moof
46*340f5e56SDavid van Moolenbroek	o  fix a serious error in vhost handling; "Host:.." would allow access to
47*340f5e56SDavid van Moolenbroek	   the next level directory from the virtual root directory, from seanb
48*340f5e56SDavid van Moolenbroek	o  fix some various non standard compile time errors, from rudolf
49*340f5e56SDavid van Moolenbroek	o  fix dynamic CGI content maps, from rudolf
50*340f5e56SDavid van Moolenbroek
51*340f5e56SDavid van Moolenbroekchanges in bozohttpd 20100617:
52*340f5e56SDavid van Moolenbroek	o  fix some compile issues
53*340f5e56SDavid van Moolenbroek	o  fix SSL mode.  from rtr
54*340f5e56SDavid van Moolenbroek	o  fix some cgi-bin issues, as seen with cvsweb
55*340f5e56SDavid van Moolenbroek	o  disable multi-file daemon mode for now, it breaks
56*340f5e56SDavid van Moolenbroek	o  return 404's instead of 403's when chdir of ~user dirs fail
57*340f5e56SDavid van Moolenbroek	o  remove "noreturn" attribute from bozo_http_error() that was
58*340f5e56SDavid van Moolenbroek	   causing incorrect runtime behaviour
59*340f5e56SDavid van Moolenbroek
60*340f5e56SDavid van Moolenbroekchanges in bozohttpd 20100509:
61*340f5e56SDavid van Moolenbroek	o  major rework and clean up of internal interfaces.  move the main
62*340f5e56SDavid van Moolenbroek	   program into main.c, the remaining parts are useable as library.
63*340f5e56SDavid van Moolenbroek	   add bindings for lua.  by Alistair G. Crooks <agc@netbsd.org>
64*340f5e56SDavid van Moolenbroek	o  fix http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=566325
65*340f5e56SDavid van Moolenbroek
66*340f5e56SDavid van Moolenbroekchanges in bozohttpd 20090522:
67*340f5e56SDavid van Moolenbroek	o  avoid dying in daemon mode for some uncommon, but recoverable, errors
68*340f5e56SDavid van Moolenbroek	o  close leaking file descriptors for CGI and daemon mode
69*340f5e56SDavid van Moolenbroek	o  handle poll errors properly
70*340f5e56SDavid van Moolenbroek	o  don't try to handle more than one request per process yet
71*340f5e56SDavid van Moolenbroek	o  add subdirs for build "debug" and "small" versions
72*340f5e56SDavid van Moolenbroek	o  clean up a bad merge / duplicate code
73*340f5e56SDavid van Moolenbroek	o  make mmap() usage portable, fixes linux & ranges: support
74*340f5e56SDavid van Moolenbroek	o  document the -f option
75*340f5e56SDavid van Moolenbroek	o  daemon mode now serves 6 files per child
76*340f5e56SDavid van Moolenbroek
77*340f5e56SDavid van Moolenbroekchanges in bozohttpd 20090417:
78*340f5e56SDavid van Moolenbroek	o  make bozohttpd internally more modular, preparing the way
79*340f5e56SDavid van Moolenbroek	   to handle more than one request per process
80*340f5e56SDavid van Moolenbroek	o  fix http-auth, set $REMOTE_USER not $REMOTEUSER.  also fix
81*340f5e56SDavid van Moolenbroek	   cgi-bin with cvsweb, from Holger Weiss <holger@CIS.FU-Berlin.DE>
82*340f5e56SDavid van Moolenbroek	o  fix an uninitialised variable use in daemon mode
83*340f5e56SDavid van Moolenbroek	o  fix ssl mode with newer OpenSSL
84*340f5e56SDavid van Moolenbroek	o  mmap large files in manageable sizes so we can serve any size file
85*340f5e56SDavid van Moolenbroek	o  refactor url processing to handle query strings correctly for CGI
86*340f5e56SDavid van Moolenbroek	   from Sergey Katsev at Coyote Point
87*340f5e56SDavid van Moolenbroek	o  add If-Modified-Since support, from Joerg Sonnenberger
88*340f5e56SDavid van Moolenbroek	   <joerg@netbsd.org>
89*340f5e56SDavid van Moolenbroek	o  many more manual fixes, from NetBSD
90*340f5e56SDavid van Moolenbroek
91*340f5e56SDavid van Moolenbroekchanges in bozohttpd 20080303:
92*340f5e56SDavid van Moolenbroek	o  fix some cgi header processing, from <thelsdj@gmail.com>
93*340f5e56SDavid van Moolenbroek	o  add simple Range: header processing, from <bad@bsd.de>
94*340f5e56SDavid van Moolenbroek	o  man page fixes, from NetBSD
95*340f5e56SDavid van Moolenbroek	o  clean up various parts, from NetBSD
96*340f5e56SDavid van Moolenbroek
97*340f5e56SDavid van Moolenbroekchanges in bozohttpd 20060710:
98*340f5e56SDavid van Moolenbroek	o  prefix some function names with "bozo"
99*340f5e56SDavid van Moolenbroek	o  align directory indexing <hr> markers
100*340f5e56SDavid van Moolenbroek	o  clean up some code GCC4 grumbled about
101*340f5e56SDavid van Moolenbroek
102*340f5e56SDavid van Moolenbroekchanges in bozohttpd 20060517:
103*340f5e56SDavid van Moolenbroek	o  don't allow "/.." or "../" files
104*340f5e56SDavid van Moolenbroek	o  don't write ":80" into urls for the http port
105*340f5e56SDavid van Moolenbroek	o  fix a fd leak when fork() fails
106*340f5e56SDavid van Moolenbroek	o  make directory indexing mode not look so ugly
107*340f5e56SDavid van Moolenbroek	o  build a text version of the manual page
108*340f5e56SDavid van Moolenbroek	o  make "make clean" work properly
109*340f5e56SDavid van Moolenbroek
110*340f5e56SDavid van Moolenbroekchanges in bozohttpd 20050410:
111*340f5e56SDavid van Moolenbroek	o  fix some off-by-one errors from <roland.illig@gmx.de>
112*340f5e56SDavid van Moolenbroek	o  properly support nph- CGI
113*340f5e56SDavid van Moolenbroek	o  make content maps case insensitive
114*340f5e56SDavid van Moolenbroek	o  fix proto header merging to include the missing comma
115*340f5e56SDavid van Moolenbroek	o  major source reorganisation; most features are in separate files now
116*340f5e56SDavid van Moolenbroek	o  new -V flag that makes unknown virtualhosts use slashdir
117*340f5e56SDavid van Moolenbroek	   from <rumble@ephemeral.org>
118*340f5e56SDavid van Moolenbroek	o  HTTP/1.x protocol headers are now properly merged for CGI
119*340f5e56SDavid van Moolenbroek
120*340f5e56SDavid van Moolenbroekchanges in bozohttpd 20040808:
121*340f5e56SDavid van Moolenbroek	o  CGI status is now properly handled (-a flag has been removed)
122*340f5e56SDavid van Moolenbroek	o  CGI file upload support works
123*340f5e56SDavid van Moolenbroek	o  %xy translations are no longer ever applied after the first '?',
124*340f5e56SDavid van Moolenbroek	   ala RFC2396.  from lukem
125*340f5e56SDavid van Moolenbroek	o  daemon mode (-b) should no longer hang spinning forever if it
126*340f5e56SDavid van Moolenbroek	   sees no children.  from lukem
127*340f5e56SDavid van Moolenbroek	o  new .bzabsredirect file support. from <martin@netbsd.org>
128*340f5e56SDavid van Moolenbroek	o  return a 404 error if we see %00 or %2f (/)
129*340f5e56SDavid van Moolenbroek	o  don't print 2 "200" headers for CGI
130*340f5e56SDavid van Moolenbroek	o  support .torrent files
131*340f5e56SDavid van Moolenbroek
132*340f5e56SDavid van Moolenbroekchanges in bozohttpd 20040218:
133*340f5e56SDavid van Moolenbroek	o  new .bzredirect file support for sane directory redirection
134*340f5e56SDavid van Moolenbroek	o  new -Z option that enables SSL mode, from <rtr@eterna.com.au>
135*340f5e56SDavid van Moolenbroek	o  the -C option has been changed to take two explicit options, rather
136*340f5e56SDavid van Moolenbroek	   than a single option with a space separating the suffix and the
137*340f5e56SDavid van Moolenbroek	   interpreter.  ``-C ".foo /path/to/bar"'' should now be written
138*340f5e56SDavid van Moolenbroek	   as ``-C .foo /path/to/bar''
139*340f5e56SDavid van Moolenbroek	o  the -M option has been changed like -C and no longer requires or
140*340f5e56SDavid van Moolenbroek	   supports a single argument with space-separated options
141*340f5e56SDavid van Moolenbroek	o  with -a, still print the 200 OK.  from <rtr@eterna.com.au>
142*340f5e56SDavid van Moolenbroek	o  with -r, if a .bzdirect file appears in a directory, allow direct
143*340f5e56SDavid van Moolenbroek	   access to this directory
144*340f5e56SDavid van Moolenbroek
145*340f5e56SDavid van Moolenbroekchanges in bozohttpd 20031005:
146*340f5e56SDavid van Moolenbroek	o  fixes for basic authorisation.  from <ecu@ipv42.net>
147*340f5e56SDavid van Moolenbroek	o  always display file size in directory index mode
148*340f5e56SDavid van Moolenbroek	o  add .xbel, .xml & .xsl -> text/xml mappings.  from
149*340f5e56SDavid van Moolenbroek	   <wiz@danbala.ifoer.tuwien.ac.at>
150*340f5e56SDavid van Moolenbroek
151*340f5e56SDavid van Moolenbroekchanges in bozohttpd 20030626:
152*340f5e56SDavid van Moolenbroek	o  fix a recent core dump when given no input
153*340f5e56SDavid van Moolenbroek	o  add new -r flag that ensures referrer is set to this host
154*340f5e56SDavid van Moolenbroek	o  fix several compile time errors with -DNO_CGIBIN_SUPPORT
155*340f5e56SDavid van Moolenbroek	o  fix some man page details. from lukem@wasabisystems.com
156*340f5e56SDavid van Moolenbroek	o  re-add a missing memset(), fixing a core dump. from lukem
157*340f5e56SDavid van Moolenbroek	o  support HTTP basic authorisation, disabled by default.  from lukem
158*340f5e56SDavid van Moolenbroek	o  print the port number in redirects and errors. from lukem
159*340f5e56SDavid van Moolenbroek	o  only syslog the basename of the program. from lukem
160*340f5e56SDavid van Moolenbroek	o  add __attribute__() format checking. from lukem
161*340f5e56SDavid van Moolenbroek	o  fix cgibin SCRIPT_NAME to have a leading /.  from zakj@nox.cx
162*340f5e56SDavid van Moolenbroek	o  simplify some code in -C to avoid a core dump.  from lukem
163*340f5e56SDavid van Moolenbroek	o  add a .css -> css/text entry to the content_map[].  from zakj@nox.cx
164*340f5e56SDavid van Moolenbroek
165*340f5e56SDavid van Moolenbroekchanges in bozohttpd 20030409:
166*340f5e56SDavid van Moolenbroek	o  -d without DEBUG enabled only prints one warning and continues
167*340f5e56SDavid van Moolenbroek	o  one can now define the C macro SERVER_SOFTWARE when building to
168*340f5e56SDavid van Moolenbroek	   change the Server: header and CGI variable of the same name
169*340f5e56SDavid van Moolenbroek	o  add new -s flag the force logging output to stderr. from zakj@nox.cx
170*340f5e56SDavid van Moolenbroek	o  add new -a flag for CGI bin that stops bozohttpd from outputting
171*340f5e56SDavid van Moolenbroek	   any HTTP reply, the CGI program must output these.  from zakj@nox.cx
172*340f5e56SDavid van Moolenbroek	o  new REQUEST_URI and DATE_GMT environment variables for CGI.  from
173*340f5e56SDavid van Moolenbroek	   zakj@nox.cx
174*340f5e56SDavid van Moolenbroek	o  add a "Makefile.boot" that should work with any make program
175*340f5e56SDavid van Moolenbroek	o  build on linux again
176*340f5e56SDavid van Moolenbroek	o  fix core dumps when using -C
177*340f5e56SDavid van Moolenbroek
178*340f5e56SDavid van Moolenbroekchanges in bozohttpd 20030313:
179*340f5e56SDavid van Moolenbroek	o  deprecate -r flag; make this the default and silently ignore -r now
180*340f5e56SDavid van Moolenbroek	o  add support for file extentions to call CGI programs (from lukem)
181*340f5e56SDavid van Moolenbroek	o  add dynamic support to add new content map entries, allowing both
182*340f5e56SDavid van Moolenbroek	   new file types and non /cgi-bin CGI programs to be run with the
183*340f5e56SDavid van Moolenbroek	   new -C "suffix cgihandler" and -M "suffix type encoding encoding11"
184*340f5e56SDavid van Moolenbroek	   options
185*340f5e56SDavid van Moolenbroek	o  in -b mode, set the http date after accept() returns, not before we
186*340f5e56SDavid van Moolenbroek	   call accept()
187*340f5e56SDavid van Moolenbroek	o  in -b mode, bind all addresses found not just the first one
188*340f5e56SDavid van Moolenbroek	o  unsupport old hostname API
189*340f5e56SDavid van Moolenbroek	o  in -b mode, set the SO_REUSEADDR socket option (lukem)
190*340f5e56SDavid van Moolenbroek	o  allow -x (index.html) mode to work with CGI handlers
191*340f5e56SDavid van Moolenbroek
192*340f5e56SDavid van Moolenbroekchanges in bozohttpd 20021106:
193*340f5e56SDavid van Moolenbroek	o  add .bz2 support
194*340f5e56SDavid van Moolenbroek	o  properly escape <, > and & in error messages, partly from
195*340f5e56SDavid van Moolenbroek	   Nicolas Jombart <ecu@mariejeanne.net>
196*340f5e56SDavid van Moolenbroek	o  new -H flag to hide .* files in directory index mode
197*340f5e56SDavid van Moolenbroek	o  fix buffer reallocation when parsing a request, to avoid
198*340f5e56SDavid van Moolenbroek	   overflowing the buffer with carriage returns (\r)
199*340f5e56SDavid van Moolenbroek	o  do not decode "%XY"-style cgi-bin data beyond the "?"
200*340f5e56SDavid van Moolenbroek
201*340f5e56SDavid van Moolenbroekchanges in bozohttpd 5.15 (20020913):
202*340f5e56SDavid van Moolenbroek	o  add .ogg support -> `application/x-ogg'
203*340f5e56SDavid van Moolenbroek	o  fix CGI requests with "/" in the query part
204*340f5e56SDavid van Moolenbroek
205*340f5e56SDavid van Moolenbroekchanges in bozohttpd 5.14 (20020823):
206*340f5e56SDavid van Moolenbroek	o  allow -X mode to work for "/"
207*340f5e56SDavid van Moolenbroek	o  work on systems without MADV_SEQUENTIAL
208*340f5e56SDavid van Moolenbroek	o  make a local cut-down copy of "queue.h" (fixes linux & solaris
209*340f5e56SDavid van Moolenbroek	   support at the very least)
210*340f5e56SDavid van Moolenbroek	o  portability fixes for pre-ipv6 socket api systems (eg, solaris 7)
211*340f5e56SDavid van Moolenbroek	o  portability fixes for missing _PATH_DEFPATH, LOG_FTP and __progname
212*340f5e56SDavid van Moolenbroek	o  better documentation on virtual host support
213*340f5e56SDavid van Moolenbroek
214*340f5e56SDavid van Moolenbroekchanges in bozohttpd 5.13 (20020804):
215*340f5e56SDavid van Moolenbroek	o  support .mp3 files (type audio/mpeg)
216*340f5e56SDavid van Moolenbroek	o  use stat() to find out if something is a directory, for -X mode
217*340f5e56SDavid van Moolenbroek
218*340f5e56SDavid van Moolenbroekchanges in bozohttpd 5.12 (20020803):
219*340f5e56SDavid van Moolenbroek	o  constification
220*340f5e56SDavid van Moolenbroek	o  fixes & enhancements for directory index mode (-X)
221*340f5e56SDavid van Moolenbroek
222*340f5e56SDavid van Moolenbroekchanges in bozohttpd 5.11 (20020730):
223*340f5e56SDavid van Moolenbroek	o  more man page fixes from Thomas Klausner
224*340f5e56SDavid van Moolenbroek	   <wiz@danbala.ifoer.tuwien.ac.at>
225*340f5e56SDavid van Moolenbroek	o  de-K&R C-ification
226*340f5e56SDavid van Moolenbroek	o  fix Date: header for daemon mode
227*340f5e56SDavid van Moolenbroek	o  fix core dump when asking for /cgi-bin/ when CGI isn't configured
228*340f5e56SDavid van Moolenbroek	o  use a valid Server: header
229*340f5e56SDavid van Moolenbroek
230*340f5e56SDavid van Moolenbroekchanges in bozohttpd 5.10 (20020710):
231*340f5e56SDavid van Moolenbroek	- add freebsd support
232*340f5e56SDavid van Moolenbroek	- fix a couple of header typos
233*340f5e56SDavid van Moolenbroek	- many cgi-bin fixes from lukem@netbsd.org
234*340f5e56SDavid van Moolenbroek	- add -T chrootdir and -U user, plus several minor other cleanups
235*340f5e56SDavid van Moolenbroek	with signals and return values.  from xs@kittenz.org
236*340f5e56SDavid van Moolenbroek	- add -e that does not clear the environment for -T/-U
237*340f5e56SDavid van Moolenbroek	- fix a formatting error noticed by ISIHARA Takanori <ishit@oak.dti.ne.jp>
238*340f5e56SDavid van Moolenbroek
239*340f5e56SDavid van Moolenbroekchanges in bozohttpd 5.09 (20010922):
240*340f5e56SDavid van Moolenbroek	- add a daemon mode
241*340f5e56SDavid van Moolenbroek	- document how to use bozohttpd in netbsd inetd with more than 40
242*340f5e56SDavid van Moolenbroek	connections per minute and also with cgibin
243*340f5e56SDavid van Moolenbroek	- man page fixes from wiz@netbsd.org
244*340f5e56SDavid van Moolenbroek
245*340f5e56SDavid van Moolenbroekchanges in bozohttpd 5.08 (20010812):
246*340f5e56SDavid van Moolenbroek	- add directory index generation support (-X) from ad@netbsd.org
247*340f5e56SDavid van Moolenbroek	- add .pa as an alias for .pac
248*340f5e56SDavid van Moolenbroek	- make server software version configurable (RFC)
249*340f5e56SDavid van Moolenbroek
250*340f5e56SDavid van Moolenbroekchanges in bozohttpd 5.07 (20010610):
251*340f5e56SDavid van Moolenbroek	- add .png support
252*340f5e56SDavid van Moolenbroek	- new "-x index.html" flag to change default file
253*340f5e56SDavid van Moolenbroek	- new "-p public_html" flag to change default ~user directory
254*340f5e56SDavid van Moolenbroek	- fixes cgi-bin support and more from chuck@research.att.com
255*340f5e56SDavid van Moolenbroek	- add many new content-types, now support most common ones
256*340f5e56SDavid van Moolenbroek
257*340f5e56SDavid van Moolenbroekchanges in bozohttpd 5.06 (20000825):
258*340f5e56SDavid van Moolenbroek	- add IPv6 suppor from itojun@iijlab.net
259*340f5e56SDavid van Moolenbroek	- man page fixes from jlam@netbsd.org
260*340f5e56SDavid van Moolenbroek
261*340f5e56SDavid van Moolenbroekchanges in bozohttpd 5.05 (20000815):
262*340f5e56SDavid van Moolenbroek	- fix a virtual host bug, from kleink@netbsd.org
263*340f5e56SDavid van Moolenbroek
264*340f5e56SDavid van Moolenbroekchanges in bozohttpd 5.04 (20000427):
265*340f5e56SDavid van Moolenbroek	- fix virtual host support; URI takes precedence over Host:
266*340f5e56SDavid van Moolenbroek
267*340f5e56SDavid van Moolenbroekchanges in bozohttpd 5.03 (20000427):
268*340f5e56SDavid van Moolenbroek	- fix a bug with chdir()
269*340f5e56SDavid van Moolenbroek
270*340f5e56SDavid van Moolenbroekchanges in bozohttpd 5.02 (20000426):
271*340f5e56SDavid van Moolenbroek	- .pac spport from simonb
272*340f5e56SDavid van Moolenbroek
273*340f5e56SDavid van Moolenbroekchanges in bozohttpd 5.01 (20000421):
274*340f5e56SDavid van Moolenbroek	- .swf support
275*340f5e56SDavid van Moolenbroek	- virtual hosting support
276