CHANGES revision 1.28
11.28Smrg$NetBSD: CHANGES,v 1.28 2018/11/21 09:37:02 mrg Exp $
21.26Smrg
31.28Smrgchanges in bozohttpd 20181121:
41.26Smrg	o  add url remap support via .bzremap file, from martin@netbsd.org
51.26Smrg	o  handle redirections for any protocol, not just http:
61.26Smrg	o  fix a denial of service attack against header contents, which
71.27Smrg	   is now bounded at 16KiB.  reported by JP
81.27Smrg	o  reduce default timeouts, and add expand timeouts to handle the
91.27Smrg	   initial line, each header, and the total time spent
101.27Smrg	o  add -T option to expose new timeout settings
111.27Smrg	o  minor RFC fixes related to timeout handling
121.28Smrg	o  fix special file (.htpasswd, .bz*) bypass.  reported by JP.
131.25Smrg
141.25Smrgchanges in bozohttpd 20170201:
151.25Smrg	o  fix an infinite loop in cgi processing
161.25Smrg	o  fixes and clean up for the testsuite
171.25Smrg	o  no longer sends encoding header for compressed formats
181.11Smrg
191.23Sagcchanges in bozohttpd 20160517:
201.25Smrg	o  add a bozo_get_version() function which returns the version number
211.23Sagc
221.22Smrgchanges in bozohttpd 20160415:
231.22Smrg	o  add search-word support for CGI
241.22Smrg	o  fix a security issue in CGI suffix handler support which would
251.22Smrg	   allow remote code execution, from shm@netbsd.org
261.22Smrg	o  -C option supports now CGI scripts only
271.22Smrg
281.21Sshmchanges in bozohttpd 20151028:
291.21Sshm	o  add CGI support for ~user translation (-E switch)
301.21Sshm	o  add redirects to ~user translation
311.21Sshm	o  fix bugs around ~user translation
321.21Sshm	o  add schema detection for absolute redirects
331.21Sshm	o  fixed few memory leaks
341.21Sshm	o  bunch of minor tweaks
351.21Sshm	o  removed -r support
361.21Sshm	o  smarter redirects 
371.21Sshm
381.20Smrgchanges in bozohttpd 20150320:
391.20Smrg	o  fix redirection handling
401.20Smrg	o  support transport stream (.ts) and video object (.vob) files
411.20Smrg	o  directory listings show correct file sizes for large files
421.20Smrg
431.19Smrgchanges in bozohttpd 20140717:
441.20Smrg	o  properly handle SSL errors
451.19Smrg
461.18Smrgchanges in bozohttpd 20140708:
471.18Smrg	o  fixes for virtual host support, from rajeev_v_pillai@yahoo.com
481.18Smrg	o  avoid printing double errors, from shm@netbsd.org
491.18Smrg	o  fix a security issue in basic HTTP authentication which would allow
501.18Smrg	   authentication to be bypassed, from shm@netbsd.org
511.18Smrg
521.15Smrgchanges in bozohttpd 20140201:
531.16Smrg	o  support .svg files
541.15Smrg	o  fix a core dump when requests timeout
551.15Smrg
561.15Smrgchanges in bozohttpd 20140102:
571.14Smrg	o  update a few content types
581.14Smrg	o  add support for directly calling lua scripts to handle
591.14Smrg	   processes, from mbalmer@netbsd.org
601.13Smrg	o  properly escape generated HTML
611.13Smrg	o  add authentication for redirections, from martin@netbsd.org
621.13Smrg	o  handle chained ssl certifications, from elric@netbsd.org
631.13Smrg	o  add basic support for gzipped files, from elric@netbsd.org
641.12Smrg	o  properly escape generated URIs
651.12Smrg
661.15Smrgchanges in bozohttpd 20111118:
671.11Smrg	o  add -P <pidfile> option, from jmmv@netbsd.org
681.11Smrg	o  avoid crashes with http basic auth, from pooka@netbsd.org
691.11Smrg	o  add support for REDIRECT_STATUS variable, from tls@netbsd.org
701.11Smrg	o  support .mp4 files in the default map
711.11Smrg	o  directory indexes with files with : are now displayed properly, from
721.11Smrg	   reed@netbsd.org
731.11Smrg	o  allow -I option to be useful in non-inetd mode as well
741.9Smrg
751.15Smrgchanges in bozohttpd 20100920:
761.9Smrg	o  properly fully disable multi-file mode for now
771.9Smrg	o  fix the -t and -U options when used without the -e option, broken since
781.9Smrg	   the library-ifcation
791.9Smrg	o  be explicit that logs go to the FTP facility in syslog
801.10Smrg	o  use scandir() with alphasort() for sorted directory lists, from moof
811.10Smrg	o  fix a serious error in vhost handling; "Host:.." would allow access to
821.10Smrg	   the next level directory from the virtual root directory, from seanb
831.10Smrg	o  fix some various non standard compile time errors, from rudolf
841.10Smrg	o  fix dynamic CGI content maps, from rudolf
851.7Smrg
861.15Smrgchanges in bozohttpd 20100617:
871.7Smrg	o  fix some compile issues
881.8Smrg	o  fix SSL mode.  from rtr
891.8Smrg	o  fix some cgi-bin issues, as seen with cvsweb
901.8Smrg	o  disable multi-file daemon mode for now, it breaks
911.8Smrg	o  return 404's instead of 403's when chdir of ~user dirs fail
921.8Smrg	o  remove "noreturn" attribute from bozo_http_error() that was
931.8Smrg	   causing incorrect runtime behaviour
941.6Smrg
951.15Smrgchanges in bozohttpd 20100509:
961.6Smrg	o  major rework and clean up of internal interfaces.  move the main
971.6Smrg	   program into main.c, the remaining parts are useable as library.
981.6Smrg	   add bindings for lua.  by Alistair G. Crooks <agc@netbsd.org>
991.6Smrg	o  fix http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=566325
1001.4Smrg
1011.15Smrgchanges in bozohttpd 20090522:
1021.4Smrg	o  avoid dying in daemon mode for some uncommon, but recoverable, errors
1031.4Smrg	o  close leaking file descriptors for CGI and daemon mode
1041.4Smrg	o  handle poll errors properly
1051.4Smrg	o  don't try to handle more than one request per process yet
1061.5Smrg	o  add subdirs for build "debug" and "small" versions
1071.5Smrg	o  clean up a bad merge / duplicate code
1081.5Smrg	o  make mmap() usage portable, fixes linux & ranges: support
1091.5Smrg	o  document the -f option
1101.5Smrg	o  daemon mode now serves 6 files per child
1111.3Smrg
1121.15Smrgchanges in bozohttpd 20090417:
1131.3Smrg	o  make bozohttpd internally more modular, preparing the way
1141.3Smrg	   to handle more than one request per process
1151.3Smrg	o  fix http-auth, set $REMOTE_USER not $REMOTEUSER.  also fix
1161.3Smrg	   cgi-bin with cvsweb, from Holger Weiss <holger@CIS.FU-Berlin.DE>
1171.3Smrg	o  fix an uninitialised variable use in daemon mode
1181.3Smrg	o  fix ssl mode with newer OpenSSL
1191.3Smrg	o  mmap large files in manageable sizes so we can serve any size file
1201.3Smrg	o  refactor url processing to handle query strings correctly for CGI
1211.3Smrg	   from Sergey Katsev at Coyote Point
1221.3Smrg	o  add If-Modified-Since support, from Joerg Sonnenberger
1231.3Smrg	   <joerg@netbsd.org>
1241.3Smrg	o  many more manual fixes, from NetBSD
1251.3Smrg
1261.15Smrgchanges in bozohttpd 20080303:
1271.3Smrg	o  fix some cgi header processing, from <thelsdj@gmail.com>
1281.3Smrg	o  add simple Range: header processing, from <bad@bsd.de>
1291.3Smrg	o  man page fixes, from NetBSD
1301.3Smrg	o  clean up various parts, from NetBSD
1311.3Smrg
1321.15Smrgchanges in bozohttpd 20060710:
1331.3Smrg	o  prefix some function names with "bozo"
1341.3Smrg	o  align directory indexing <hr> markers
1351.3Smrg	o  clean up some code GCC4 grumbled about
1361.1Stls
1371.15Smrgchanges in bozohttpd 20060517:
1381.1Stls	o  don't allow "/.." or "../" files
1391.1Stls	o  don't write ":80" into urls for the http port
1401.1Stls	o  fix a fd leak when fork() fails
1411.1Stls	o  make directory indexing mode not look so ugly
1421.1Stls	o  build a text version of the manual page
1431.1Stls	o  make "make clean" work properly
1441.1Stls
1451.15Smrgchanges in bozohttpd 20050410:
1461.1Stls	o  fix some off-by-one errors from <roland.illig@gmx.de>
1471.1Stls	o  properly support nph- CGI
1481.1Stls	o  make content maps case insensitive
1491.1Stls	o  fix proto header merging to include the missing comma
1501.1Stls	o  major source reorganisation; most features are in separate files now
1511.1Stls	o  new -V flag that makes unknown virtualhosts use slashdir
1521.1Stls	   from <rumble@ephemeral.org>
1531.1Stls	o  HTTP/1.x protocol headers are now properly merged for CGI
1541.1Stls
1551.15Smrgchanges in bozohttpd 20040808:
1561.1Stls	o  CGI status is now properly handled (-a flag has been removed)
1571.1Stls	o  CGI file upload support works
1581.1Stls	o  %xy translations are no longer ever applied after the first '?',
1591.1Stls	   ala RFC2396.  from lukem
1601.1Stls	o  daemon mode (-b) should no longer hang spinning forever if it
1611.1Stls	   sees no children.  from lukem
1621.1Stls	o  new .bzabsredirect file support. from <martin@netbsd.org>
1631.1Stls	o  return a 404 error if we see %00 or %2f (/)
1641.1Stls	o  don't print 2 "200" headers for CGI
1651.1Stls	o  support .torrent files
1661.1Stls
1671.15Smrgchanges in bozohttpd 20040218:
1681.1Stls	o  new .bzredirect file support for sane directory redirection
1691.1Stls	o  new -Z option that enables SSL mode, from <rtr@eterna.com.au>
1701.1Stls	o  the -C option has been changed to take two explicit options, rather
1711.1Stls	   than a single option with a space separating the suffix and the
1721.1Stls	   interpreter.  ``-C ".foo /path/to/bar"'' should now be written
1731.1Stls	   as ``-C .foo /path/to/bar''
1741.1Stls	o  the -M option has been changed like -C and no longer requires or
1751.1Stls	   supports a single argument with space-separated options
1761.1Stls	o  with -a, still print the 200 OK.  from <rtr@eterna.com.au>
1771.1Stls	o  with -r, if a .bzdirect file appears in a directory, allow direct
1781.1Stls	   access to this directory
1791.1Stls
1801.15Smrgchanges in bozohttpd 20031005:
1811.1Stls	o  fixes for basic authorisation.  from <ecu@ipv42.net>
1821.1Stls	o  always display file size in directory index mode
1831.1Stls	o  add .xbel, .xml & .xsl -> text/xml mappings.  from
1841.1Stls	   <wiz@danbala.ifoer.tuwien.ac.at>
1851.1Stls
1861.15Smrgchanges in bozohttpd 20030626:
1871.1Stls	o  fix a recent core dump when given no input
1881.1Stls	o  add new -r flag that ensures referrer is set to this host
1891.1Stls	o  fix several compile time errors with -DNO_CGIBIN_SUPPORT
1901.1Stls	o  fix some man page details. from lukem@wasabisystems.com
1911.1Stls	o  re-add a missing memset(), fixing a core dump. from lukem
1921.1Stls	o  support HTTP basic authorisation, disabled by default.  from lukem
1931.1Stls	o  print the port number in redirects and errors. from lukem
1941.1Stls	o  only syslog the basename of the program. from lukem
1951.1Stls	o  add __attribute__() format checking. from lukem
1961.1Stls	o  fix cgibin SCRIPT_NAME to have a leading /.  from zakj@nox.cx
1971.1Stls	o  simplify some code in -C to avoid a core dump.  from lukem
1981.1Stls	o  add a .css -> css/text entry to the content_map[].  from zakj@nox.cx
1991.1Stls
2001.15Smrgchanges in bozohttpd 20030409:
2011.1Stls	o  -d without DEBUG enabled only prints one warning and continues
2021.1Stls	o  one can now define the C macro SERVER_SOFTWARE when building to
2031.1Stls	   change the Server: header and CGI variable of the same name
2041.1Stls	o  add new -s flag the force logging output to stderr. from zakj@nox.cx
2051.1Stls	o  add new -a flag for CGI bin that stops bozohttpd from outputting
2061.1Stls	   any HTTP reply, the CGI program must output these.  from zakj@nox.cx
2071.1Stls	o  new REQUEST_URI and DATE_GMT environment variables for CGI.  from
2081.1Stls	   zakj@nox.cx
2091.1Stls	o  add a "Makefile.boot" that should work with any make program
2101.1Stls	o  build on linux again
2111.1Stls	o  fix core dumps when using -C
2121.1Stls
2131.15Smrgchanges in bozohttpd 20030313:
2141.1Stls	o  deprecate -r flag; make this the default and silently ignore -r now
2151.1Stls	o  add support for file extentions to call CGI programs (from lukem)
2161.1Stls	o  add dynamic support to add new content map entries, allowing both
2171.1Stls	   new file types and non /cgi-bin CGI programs to be run with the
2181.1Stls	   new -C "suffix cgihandler" and -M "suffix type encoding encoding11"
2191.1Stls	   options
2201.1Stls	o  in -b mode, set the http date after accept() returns, not before we
2211.1Stls	   call accept()
2221.1Stls	o  in -b mode, bind all addresses found not just the first one
2231.1Stls	o  unsupport old hostname API
2241.1Stls	o  in -b mode, set the SO_REUSEADDR socket option (lukem)
2251.1Stls	o  allow -x (index.html) mode to work with CGI handlers
2261.1Stls
2271.15Smrgchanges in bozohttpd 20021106:
2281.1Stls	o  add .bz2 support
2291.1Stls	o  properly escape <, > and & in error messages, partly from
2301.1Stls	   Nicolas Jombart <ecu@mariejeanne.net>
2311.1Stls	o  new -H flag to hide .* files in directory index mode
2321.1Stls	o  fix buffer reallocation when parsing a request, to avoid
2331.1Stls	   overflowing the buffer with carriage returns (\r)
2341.1Stls	o  do not decode "%XY"-style cgi-bin data beyond the "?"
2351.1Stls
2361.15Smrgchanges in bozohttpd 5.15 (20020913):
2371.1Stls	o  add .ogg support -> `application/x-ogg'
2381.1Stls	o  fix CGI requests with "/" in the query part
2391.1Stls
2401.15Smrgchanges in bozohttpd 5.14 (20020823):
2411.1Stls	o  allow -X mode to work for "/"
2421.1Stls	o  work on systems without MADV_SEQUENTIAL
2431.1Stls	o  make a local cut-down copy of "queue.h" (fixes linux & solaris
2441.1Stls	   support at the very least)
2451.1Stls	o  portability fixes for pre-ipv6 socket api systems (eg, solaris 7)
2461.1Stls	o  portability fixes for missing _PATH_DEFPATH, LOG_FTP and __progname
2471.1Stls	o  better documentation on virtual host support
2481.1Stls
2491.15Smrgchanges in bozohttpd 5.13 (20020804):
2501.1Stls	o  support .mp3 files (type audio/mpeg)
2511.1Stls	o  use stat() to find out if something is a directory, for -X mode
2521.1Stls
2531.15Smrgchanges in bozohttpd 5.12 (20020803):
2541.1Stls	o  constification
2551.1Stls	o  fixes & enhancements for directory index mode (-X)
2561.1Stls
2571.15Smrgchanges in bozohttpd 5.11 (20020730):
2581.1Stls	o  more man page fixes from Thomas Klausner
2591.1Stls	   <wiz@danbala.ifoer.tuwien.ac.at>
2601.1Stls	o  de-K&R C-ification
2611.1Stls	o  fix Date: header for daemon mode
2621.1Stls	o  fix core dump when asking for /cgi-bin/ when CGI isn't configured
2631.1Stls	o  use a valid Server: header
2641.1Stls
2651.15Smrgchanges in bozohttpd 5.10 (20020710):
2661.1Stls	- add freebsd support 
2671.1Stls	- fix a couple of header typos
2681.1Stls	- many cgi-bin fixes from lukem@netbsd.org
2691.1Stls	- add -T chrootdir and -U user, plus several minor other cleanups
2701.1Stls	with signals and return values.  from xs@kittenz.org
2711.1Stls	- add -e that does not clear the environment for -T/-U
2721.1Stls	- fix a formatting error noticed by ISIHARA Takanori <ishit@oak.dti.ne.jp>
2731.1Stls
2741.15Smrgchanges in bozohttpd 5.09 (20010922):
2751.1Stls	- add a daemon mode
2761.1Stls	- document how to use bozohttpd in netbsd inetd with more than 40 
2771.1Stls	connections per minute and also with cgibin
2781.1Stls	- man page fixes from wiz@netbsd.org
2791.1Stls
2801.15Smrgchanges in bozohttpd 5.08 (20010812):
2811.1Stls	- add directory index generation support (-X) from ad@netbsd.org
2821.1Stls	- add .pa as an alias for .pac
2831.1Stls	- make server software version configurable (RFC)
2841.1Stls
2851.15Smrgchanges in bozohttpd 5.07 (20010610):
2861.1Stls	- add .png support 
2871.1Stls	- new "-x index.html" flag to change default file
2881.1Stls	- new "-p public_html" flag to change default ~user directory
2891.1Stls	- fixes cgi-bin support and more from chuck@research.att.com
2901.1Stls	- add many new content-types, now support most common ones
2911.1Stls
2921.15Smrgchanges in bozohttpd 5.06 (20000825):
2931.1Stls	- add IPv6 suppor from itojun@iijlab.net
2941.1Stls	- man page fixes from jlam@netbsd.org
2951.1Stls
2961.15Smrgchanges in bozohttpd 5.05 (20000815):
2971.1Stls	- fix a virtual host bug, from kleink@netbsd.org
2981.1Stls
2991.15Smrgchanges in bozohttpd 5.04 (20000427):
3001.1Stls	- fix virtual host support; URI takes precedence over Host:
3011.1Stls
3021.15Smrgchanges in bozohttpd 5.03 (20000427):
3031.1Stls	- fix a bug with chdir() 
3041.1Stls
3051.15Smrgchanges in bozohttpd 5.02 (20000426):
3061.1Stls	- .pac spport from simonb
3071.1Stls
3081.15Smrgchanges in bozohttpd 5.01 (20000421):
3091.1Stls	- .swf support 
3101.1Stls	- virtual hosting support 
311