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