CHANGES revision 1.14
11.11Smrg$eterna: CHANGES,v 1.78 2011/11/18 01:25:11 mrg Exp $
21.11Smrg
31.12Smrgchanges since bozohttpd 20111118:
41.14Smrg	o  update a few content types
51.14Smrg	o  add support for directly calling lua scripts to handle
61.14Smrg	   processes, from mbalmer@netbsd.org
71.13Smrg	o  properly escape generated HTML
81.13Smrg	o  add authentication for redirections, from martin@netbsd.org
91.13Smrg	o  handle chained ssl certifications, from elric@netbsd.org
101.13Smrg	o  add basic support for gzipped files, from elric@netbsd.org
111.12Smrg	o  properly escape generated URIs
121.12Smrg
131.11Smrgchanges since bozohttpd 20100920:
141.11Smrg	o  add -P <pidfile> option, from jmmv@netbsd.org
151.11Smrg	o  avoid crashes with http basic auth, from pooka@netbsd.org
161.11Smrg	o  add support for REDIRECT_STATUS variable, from tls@netbsd.org
171.11Smrg	o  support .mp4 files in the default map
181.11Smrg	o  directory indexes with files with : are now displayed properly, from
191.11Smrg	   reed@netbsd.org
201.11Smrg	o  allow -I option to be useful in non-inetd mode as well
211.9Smrg
221.9Smrgchanges since bozohttpd 20100617:
231.9Smrg	o  properly fully disable multi-file mode for now
241.9Smrg	o  fix the -t and -U options when used without the -e option, broken since
251.9Smrg	   the library-ifcation
261.9Smrg	o  be explicit that logs go to the FTP facility in syslog
271.10Smrg	o  use scandir() with alphasort() for sorted directory lists, from moof
281.10Smrg	o  fix a serious error in vhost handling; "Host:.." would allow access to
291.10Smrg	   the next level directory from the virtual root directory, from seanb
301.10Smrg	o  fix some various non standard compile time errors, from rudolf
311.10Smrg	o  fix dynamic CGI content maps, from rudolf
321.7Smrg
331.7Smrgchanges since bozohttpd 20100509:
341.7Smrg	o  fix some compile issues
351.8Smrg	o  fix SSL mode.  from rtr
361.8Smrg	o  fix some cgi-bin issues, as seen with cvsweb
371.8Smrg	o  disable multi-file daemon mode for now, it breaks
381.8Smrg	o  return 404's instead of 403's when chdir of ~user dirs fail
391.8Smrg	o  remove "noreturn" attribute from bozo_http_error() that was
401.8Smrg	   causing incorrect runtime behaviour
411.6Smrg
421.6Smrgchanges since bozohttpd 20090522:
431.6Smrg	o  major rework and clean up of internal interfaces.  move the main
441.6Smrg	   program into main.c, the remaining parts are useable as library.
451.6Smrg	   add bindings for lua.  by Alistair G. Crooks <agc@netbsd.org>
461.6Smrg	o  fix http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=566325
471.4Smrg
481.4Smrgchanges since bozohttpd 20090417:
491.4Smrg	o  avoid dying in daemon mode for some uncommon, but recoverable, errors
501.4Smrg	o  close leaking file descriptors for CGI and daemon mode
511.4Smrg	o  handle poll errors properly
521.4Smrg	o  don't try to handle more than one request per process yet
531.5Smrg	o  add subdirs for build "debug" and "small" versions
541.5Smrg	o  clean up a bad merge / duplicate code
551.5Smrg	o  make mmap() usage portable, fixes linux & ranges: support
561.5Smrg	o  document the -f option
571.5Smrg	o  daemon mode now serves 6 files per child
581.3Smrg
591.3Smrgchanges since bozohttpd 20080303:
601.3Smrg	o  make bozohttpd internally more modular, preparing the way
611.3Smrg	   to handle more than one request per process
621.3Smrg	o  fix http-auth, set $REMOTE_USER not $REMOTEUSER.  also fix
631.3Smrg	   cgi-bin with cvsweb, from Holger Weiss <holger@CIS.FU-Berlin.DE>
641.3Smrg	o  fix an uninitialised variable use in daemon mode
651.3Smrg	o  fix ssl mode with newer OpenSSL
661.3Smrg	o  mmap large files in manageable sizes so we can serve any size file
671.3Smrg	o  refactor url processing to handle query strings correctly for CGI
681.3Smrg	   from Sergey Katsev at Coyote Point
691.3Smrg	o  add If-Modified-Since support, from Joerg Sonnenberger
701.3Smrg	   <joerg@netbsd.org>
711.3Smrg	o  many more manual fixes, from NetBSD
721.3Smrg
731.3Smrgchanges since bozohttpd 20060710:
741.3Smrg	o  fix some cgi header processing, from <thelsdj@gmail.com>
751.3Smrg	o  add simple Range: header processing, from <bad@bsd.de>
761.3Smrg	o  man page fixes, from NetBSD
771.3Smrg	o  clean up various parts, from NetBSD
781.3Smrg
791.3Smrgchanges since bozohttpd 20060517:
801.3Smrg	o  prefix some function names with "bozo"
811.3Smrg	o  align directory indexing <hr> markers
821.3Smrg	o  clean up some code GCC4 grumbled about
831.1Stls
841.1Stlschanges since bozohttpd 20050410:
851.1Stls	o  don't allow "/.." or "../" files
861.1Stls	o  don't write ":80" into urls for the http port
871.1Stls	o  fix a fd leak when fork() fails
881.1Stls	o  make directory indexing mode not look so ugly
891.1Stls	o  build a text version of the manual page
901.1Stls	o  make "make clean" work properly
911.1Stls
921.1Stlschanges since bozohttpd 20040808:
931.1Stls	o  fix some off-by-one errors from <roland.illig@gmx.de>
941.1Stls	o  properly support nph- CGI
951.1Stls	o  make content maps case insensitive
961.1Stls	o  fix proto header merging to include the missing comma
971.1Stls	o  major source reorganisation; most features are in separate files now
981.1Stls	o  new -V flag that makes unknown virtualhosts use slashdir
991.1Stls	   from <rumble@ephemeral.org>
1001.1Stls	o  HTTP/1.x protocol headers are now properly merged for CGI
1011.1Stls
1021.1Stlschanges since bozohttpd 20040218:
1031.1Stls	o  CGI status is now properly handled (-a flag has been removed)
1041.1Stls	o  CGI file upload support works
1051.1Stls	o  %xy translations are no longer ever applied after the first '?',
1061.1Stls	   ala RFC2396.  from lukem
1071.1Stls	o  daemon mode (-b) should no longer hang spinning forever if it
1081.1Stls	   sees no children.  from lukem
1091.1Stls	o  new .bzabsredirect file support. from <martin@netbsd.org>
1101.1Stls	o  return a 404 error if we see %00 or %2f (/)
1111.1Stls	o  don't print 2 "200" headers for CGI
1121.1Stls	o  support .torrent files
1131.1Stls
1141.1Stlschanges since bozohttpd 20031005:
1151.1Stls	o  new .bzredirect file support for sane directory redirection
1161.1Stls	o  new -Z option that enables SSL mode, from <rtr@eterna.com.au>
1171.1Stls	o  the -C option has been changed to take two explicit options, rather
1181.1Stls	   than a single option with a space separating the suffix and the
1191.1Stls	   interpreter.  ``-C ".foo /path/to/bar"'' should now be written
1201.1Stls	   as ``-C .foo /path/to/bar''
1211.1Stls	o  the -M option has been changed like -C and no longer requires or
1221.1Stls	   supports a single argument with space-separated options
1231.1Stls	o  with -a, still print the 200 OK.  from <rtr@eterna.com.au>
1241.1Stls	o  with -r, if a .bzdirect file appears in a directory, allow direct
1251.1Stls	   access to this directory
1261.1Stls
1271.1Stlschanges since bozohttpd 20030626:
1281.1Stls	o  fixes for basic authorisation.  from <ecu@ipv42.net>
1291.1Stls	o  always display file size in directory index mode
1301.1Stls	o  add .xbel, .xml & .xsl -> text/xml mappings.  from
1311.1Stls	   <wiz@danbala.ifoer.tuwien.ac.at>
1321.1Stls
1331.1Stlschanges since bozohttpd 20030409:
1341.1Stls	o  fix a recent core dump when given no input
1351.1Stls	o  add new -r flag that ensures referrer is set to this host
1361.1Stls	o  fix several compile time errors with -DNO_CGIBIN_SUPPORT
1371.1Stls	o  fix some man page details. from lukem@wasabisystems.com
1381.1Stls	o  re-add a missing memset(), fixing a core dump. from lukem
1391.1Stls	o  support HTTP basic authorisation, disabled by default.  from lukem
1401.1Stls	o  print the port number in redirects and errors. from lukem
1411.1Stls	o  only syslog the basename of the program. from lukem
1421.1Stls	o  add __attribute__() format checking. from lukem
1431.1Stls	o  fix cgibin SCRIPT_NAME to have a leading /.  from zakj@nox.cx
1441.1Stls	o  simplify some code in -C to avoid a core dump.  from lukem
1451.1Stls	o  add a .css -> css/text entry to the content_map[].  from zakj@nox.cx
1461.1Stls
1471.1Stlschanges since bozohttpd 20030313:
1481.1Stls	o  -d without DEBUG enabled only prints one warning and continues
1491.1Stls	o  one can now define the C macro SERVER_SOFTWARE when building to
1501.1Stls	   change the Server: header and CGI variable of the same name
1511.1Stls	o  add new -s flag the force logging output to stderr. from zakj@nox.cx
1521.1Stls	o  add new -a flag for CGI bin that stops bozohttpd from outputting
1531.1Stls	   any HTTP reply, the CGI program must output these.  from zakj@nox.cx
1541.1Stls	o  new REQUEST_URI and DATE_GMT environment variables for CGI.  from
1551.1Stls	   zakj@nox.cx
1561.1Stls	o  add a "Makefile.boot" that should work with any make program
1571.1Stls	o  build on linux again
1581.1Stls	o  fix core dumps when using -C
1591.1Stls
1601.1Stlschanges since bozohttpd 20021106:
1611.1Stls	o  deprecate -r flag; make this the default and silently ignore -r now
1621.1Stls	o  add support for file extentions to call CGI programs (from lukem)
1631.1Stls	o  add dynamic support to add new content map entries, allowing both
1641.1Stls	   new file types and non /cgi-bin CGI programs to be run with the
1651.1Stls	   new -C "suffix cgihandler" and -M "suffix type encoding encoding11"
1661.1Stls	   options
1671.1Stls	o  in -b mode, set the http date after accept() returns, not before we
1681.1Stls	   call accept()
1691.1Stls	o  in -b mode, bind all addresses found not just the first one
1701.1Stls	o  unsupport old hostname API
1711.1Stls	o  in -b mode, set the SO_REUSEADDR socket option (lukem)
1721.1Stls	o  allow -x (index.html) mode to work with CGI handlers
1731.1Stls
1741.1Stlschanges since bozohttpd 5.15 (20020913):
1751.1Stls	o  add .bz2 support
1761.1Stls	o  properly escape <, > and & in error messages, partly from
1771.1Stls	   Nicolas Jombart <ecu@mariejeanne.net>
1781.1Stls	o  new -H flag to hide .* files in directory index mode
1791.1Stls	o  fix buffer reallocation when parsing a request, to avoid
1801.1Stls	   overflowing the buffer with carriage returns (\r)
1811.1Stls	o  do not decode "%XY"-style cgi-bin data beyond the "?"
1821.1Stls
1831.1Stlschanges since bozohttpd 5.14 (20020823):
1841.1Stls	o  add .ogg support -> `application/x-ogg'
1851.1Stls	o  fix CGI requests with "/" in the query part
1861.1Stls
1871.1Stlschanges since bozohttpd 5.13 (20020804):
1881.1Stls	o  allow -X mode to work for "/"
1891.1Stls	o  work on systems without MADV_SEQUENTIAL
1901.1Stls	o  make a local cut-down copy of "queue.h" (fixes linux & solaris
1911.1Stls	   support at the very least)
1921.1Stls	o  portability fixes for pre-ipv6 socket api systems (eg, solaris 7)
1931.1Stls	o  portability fixes for missing _PATH_DEFPATH, LOG_FTP and __progname
1941.1Stls	o  better documentation on virtual host support
1951.1Stls
1961.1Stlschanges since bozohttpd 5.12 (20020803):
1971.1Stls	o  support .mp3 files (type audio/mpeg)
1981.1Stls	o  use stat() to find out if something is a directory, for -X mode
1991.1Stls
2001.1Stlschanges since bozohttpd 5.11 (20020730):
2011.1Stls	o  constification
2021.1Stls	o  fixes & enhancements for directory index mode (-X)
2031.1Stls
2041.1Stlschanges since bozohttpd 5.10 (20020710):
2051.1Stls	o  more man page fixes from Thomas Klausner
2061.1Stls	   <wiz@danbala.ifoer.tuwien.ac.at>
2071.1Stls	o  de-K&R C-ification
2081.1Stls	o  fix Date: header for daemon mode
2091.1Stls	o  fix core dump when asking for /cgi-bin/ when CGI isn't configured
2101.1Stls	o  use a valid Server: header
2111.1Stls
2121.1Stlschanges since bozohttpd 5.09 (20010922):
2131.1Stls	- add freebsd support 
2141.1Stls	- fix a couple of header typos
2151.1Stls	- many cgi-bin fixes from lukem@netbsd.org
2161.1Stls	- add -T chrootdir and -U user, plus several minor other cleanups
2171.1Stls	with signals and return values.  from xs@kittenz.org
2181.1Stls	- add -e that does not clear the environment for -T/-U
2191.1Stls	- fix a formatting error noticed by ISIHARA Takanori <ishit@oak.dti.ne.jp>
2201.1Stls
2211.1Stlschanges since bozohttpd 5.08 (20010812):
2221.1Stls	- add a daemon mode
2231.1Stls	- document how to use bozohttpd in netbsd inetd with more than 40 
2241.1Stls	connections per minute and also with cgibin
2251.1Stls	- man page fixes from wiz@netbsd.org
2261.1Stls
2271.1Stlschanges since bozohttpd 5.07 (20010610):
2281.1Stls	- add directory index generation support (-X) from ad@netbsd.org
2291.1Stls	- add .pa as an alias for .pac
2301.1Stls	- make server software version configurable (RFC)
2311.1Stls
2321.1Stlschanges since bozohttpd 5.06 (20000825):
2331.1Stls	- add .png support 
2341.1Stls	- new "-x index.html" flag to change default file
2351.1Stls	- new "-p public_html" flag to change default ~user directory
2361.1Stls	- fixes cgi-bin support and more from chuck@research.att.com
2371.1Stls	- add many new content-types, now support most common ones
2381.1Stls
2391.1Stlschanges since bozohttpd 5.05 (20000815):
2401.1Stls	- add IPv6 suppor from itojun@iijlab.net
2411.1Stls	- man page fixes from jlam@netbsd.org
2421.1Stls
2431.1Stlschanges since bozohttpd 5.04 (20000427):
2441.1Stls	- fix a virtual host bug, from kleink@netbsd.org
2451.1Stls
2461.1Stlschanges since bozohttpd 5.03 (20000427):
2471.1Stls	- fix virtual host support; URI takes precedence over Host:
2481.1Stls
2491.1Stlschanges since bozohttpd 5.02 (20000426):
2501.1Stls	- fix a bug with chdir() 
2511.1Stls
2521.1Stlschanges since bozohttpd 5.01 (20000421):
2531.1Stls	- .pac spport from simonb
2541.1Stls
2551.1Stlschanges since bozohttpd 5.00 (19990519):
2561.1Stls	- .swf support 
2571.1Stls	- virtual hosting support 
2581.1Stls
259