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