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