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