CHANGES revision 1.35
11.35Smrg$NetBSD: CHANGES,v 1.35 2019/01/17 07:34:06 mrg Exp $
21.35Smrg
31.35Smrgchanges in bozohttpd 20190116:
41.35Smrg	o  fix CGI '+' parameter handling, and a double free.  from
51.35Smrg	   rajeev_v_pillai@yahoo.com
61.32Sleot
71.32Sleotchanges in bozohttpd 20181215:
81.34Smrg	o  fix .htpasswd bypass for authenticated users.  reported by JP,
91.32Sleot	   from leot@netbsd.org
101.32Sleot	o  avoid possible null dereference when receiving a big request that
111.32Sleot	   timeout.  reported by maya@netbsd.org, from leot@netbsd.org
121.32Sleot	o  fix handling of -T option, from leot@netbsd.org
131.32Sleot	o  cleanups and portability improvements, from maya@netbsd.org
141.33Smrg	o  change directory indexing to use html tables, from
151.31Smrg	   rajeev_v_pillai@yahoo.com
161.29Smrg
171.29Smrgchanges in bozohttpd 20181125:
181.30Smrg	o  fixes for option parsing introduced in bozohttpd 20181123
191.26Smrg
201.28Smrgchanges in bozohttpd 20181121:
211.26Smrg	o  add url remap support via .bzremap file, from martin@netbsd.org
221.26Smrg	o  handle redirections for any protocol, not just http:
231.26Smrg	o  fix a denial of service attack against header contents, which
241.27Smrg	   is now bounded at 16KiB.  reported by JP
251.27Smrg	o  reduce default timeouts, and add expand timeouts to handle the
261.27Smrg	   initial line, each header, and the total time spent
271.27Smrg	o  add -T option to expose new timeout settings
281.27Smrg	o  minor RFC fixes related to timeout handling
291.30Smrg	o  fix special file (.htpasswd, .bz*) bypass.  reported by JP
301.25Smrg
311.25Smrgchanges in bozohttpd 20170201:
321.25Smrg	o  fix an infinite loop in cgi processing
331.25Smrg	o  fixes and clean up for the testsuite
341.25Smrg	o  no longer sends encoding header for compressed formats
351.11Smrg
361.23Sagcchanges in bozohttpd 20160517:
371.25Smrg	o  add a bozo_get_version() function which returns the version number
381.23Sagc
391.22Smrgchanges in bozohttpd 20160415:
401.22Smrg	o  add search-word support for CGI
411.22Smrg	o  fix a security issue in CGI suffix handler support which would
421.22Smrg	   allow remote code execution, from shm@netbsd.org
431.22Smrg	o  -C option supports now CGI scripts only
441.22Smrg
451.21Sshmchanges in bozohttpd 20151028:
461.21Sshm	o  add CGI support for ~user translation (-E switch)
471.21Sshm	o  add redirects to ~user translation
481.21Sshm	o  fix bugs around ~user translation
491.21Sshm	o  add schema detection for absolute redirects
501.21Sshm	o  fixed few memory leaks
511.21Sshm	o  bunch of minor tweaks
521.21Sshm	o  removed -r support
531.21Sshm	o  smarter redirects 
541.21Sshm
551.20Smrgchanges in bozohttpd 20150320:
561.20Smrg	o  fix redirection handling
571.20Smrg	o  support transport stream (.ts) and video object (.vob) files
581.20Smrg	o  directory listings show correct file sizes for large files
591.20Smrg
601.19Smrgchanges in bozohttpd 20140717:
611.20Smrg	o  properly handle SSL errors
621.19Smrg
631.18Smrgchanges in bozohttpd 20140708:
641.18Smrg	o  fixes for virtual host support, from rajeev_v_pillai@yahoo.com
651.18Smrg	o  avoid printing double errors, from shm@netbsd.org
661.18Smrg	o  fix a security issue in basic HTTP authentication which would allow
671.18Smrg	   authentication to be bypassed, from shm@netbsd.org
681.18Smrg
691.15Smrgchanges in bozohttpd 20140201:
701.16Smrg	o  support .svg files
711.15Smrg	o  fix a core dump when requests timeout
721.15Smrg
731.15Smrgchanges in bozohttpd 20140102:
741.14Smrg	o  update a few content types
751.14Smrg	o  add support for directly calling lua scripts to handle
761.14Smrg	   processes, from mbalmer@netbsd.org
771.13Smrg	o  properly escape generated HTML
781.13Smrg	o  add authentication for redirections, from martin@netbsd.org
791.13Smrg	o  handle chained ssl certifications, from elric@netbsd.org
801.13Smrg	o  add basic support for gzipped files, from elric@netbsd.org
811.12Smrg	o  properly escape generated URIs
821.12Smrg
831.15Smrgchanges in bozohttpd 20111118:
841.11Smrg	o  add -P <pidfile> option, from jmmv@netbsd.org
851.11Smrg	o  avoid crashes with http basic auth, from pooka@netbsd.org
861.11Smrg	o  add support for REDIRECT_STATUS variable, from tls@netbsd.org
871.11Smrg	o  support .mp4 files in the default map
881.11Smrg	o  directory indexes with files with : are now displayed properly, from
891.11Smrg	   reed@netbsd.org
901.11Smrg	o  allow -I option to be useful in non-inetd mode as well
911.9Smrg
921.15Smrgchanges in bozohttpd 20100920:
931.9Smrg	o  properly fully disable multi-file mode for now
941.9Smrg	o  fix the -t and -U options when used without the -e option, broken since
951.9Smrg	   the library-ifcation
961.9Smrg	o  be explicit that logs go to the FTP facility in syslog
971.10Smrg	o  use scandir() with alphasort() for sorted directory lists, from moof
981.10Smrg	o  fix a serious error in vhost handling; "Host:.." would allow access to
991.10Smrg	   the next level directory from the virtual root directory, from seanb
1001.10Smrg	o  fix some various non standard compile time errors, from rudolf
1011.10Smrg	o  fix dynamic CGI content maps, from rudolf
1021.7Smrg
1031.15Smrgchanges in bozohttpd 20100617:
1041.7Smrg	o  fix some compile issues
1051.8Smrg	o  fix SSL mode.  from rtr
1061.8Smrg	o  fix some cgi-bin issues, as seen with cvsweb
1071.8Smrg	o  disable multi-file daemon mode for now, it breaks
1081.8Smrg	o  return 404's instead of 403's when chdir of ~user dirs fail
1091.8Smrg	o  remove "noreturn" attribute from bozo_http_error() that was
1101.8Smrg	   causing incorrect runtime behaviour
1111.6Smrg
1121.15Smrgchanges in bozohttpd 20100509:
1131.6Smrg	o  major rework and clean up of internal interfaces.  move the main
1141.30Smrg	   program into main.c, the remaining parts are useable as library
1151.6Smrg	   add bindings for lua.  by Alistair G. Crooks <agc@netbsd.org>
1161.6Smrg	o  fix http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=566325
1171.4Smrg
1181.15Smrgchanges in bozohttpd 20090522:
1191.4Smrg	o  avoid dying in daemon mode for some uncommon, but recoverable, errors
1201.4Smrg	o  close leaking file descriptors for CGI and daemon mode
1211.4Smrg	o  handle poll errors properly
1221.4Smrg	o  don't try to handle more than one request per process yet
1231.5Smrg	o  add subdirs for build "debug" and "small" versions
1241.5Smrg	o  clean up a bad merge / duplicate code
1251.5Smrg	o  make mmap() usage portable, fixes linux & ranges: support
1261.5Smrg	o  document the -f option
1271.5Smrg	o  daemon mode now serves 6 files per child
1281.3Smrg
1291.15Smrgchanges in bozohttpd 20090417:
1301.3Smrg	o  make bozohttpd internally more modular, preparing the way
1311.3Smrg	   to handle more than one request per process
1321.3Smrg	o  fix http-auth, set $REMOTE_USER not $REMOTEUSER.  also fix
1331.3Smrg	   cgi-bin with cvsweb, from Holger Weiss <holger@CIS.FU-Berlin.DE>
1341.3Smrg	o  fix an uninitialised variable use in daemon mode
1351.3Smrg	o  fix ssl mode with newer OpenSSL
1361.3Smrg	o  mmap large files in manageable sizes so we can serve any size file
1371.3Smrg	o  refactor url processing to handle query strings correctly for CGI
1381.3Smrg	   from Sergey Katsev at Coyote Point
1391.3Smrg	o  add If-Modified-Since support, from Joerg Sonnenberger
1401.3Smrg	   <joerg@netbsd.org>
1411.3Smrg	o  many more manual fixes, from NetBSD
1421.3Smrg
1431.15Smrgchanges in bozohttpd 20080303:
1441.3Smrg	o  fix some cgi header processing, from <thelsdj@gmail.com>
1451.3Smrg	o  add simple Range: header processing, from <bad@bsd.de>
1461.3Smrg	o  man page fixes, from NetBSD
1471.3Smrg	o  clean up various parts, from NetBSD
1481.3Smrg
1491.15Smrgchanges in bozohttpd 20060710:
1501.3Smrg	o  prefix some function names with "bozo"
1511.3Smrg	o  align directory indexing <hr> markers
1521.3Smrg	o  clean up some code GCC4 grumbled about
1531.1Stls
1541.15Smrgchanges in bozohttpd 20060517:
1551.1Stls	o  don't allow "/.." or "../" files
1561.1Stls	o  don't write ":80" into urls for the http port
1571.1Stls	o  fix a fd leak when fork() fails
1581.1Stls	o  make directory indexing mode not look so ugly
1591.1Stls	o  build a text version of the manual page
1601.1Stls	o  make "make clean" work properly
1611.1Stls
1621.15Smrgchanges in bozohttpd 20050410:
1631.1Stls	o  fix some off-by-one errors from <roland.illig@gmx.de>
1641.1Stls	o  properly support nph- CGI
1651.1Stls	o  make content maps case insensitive
1661.1Stls	o  fix proto header merging to include the missing comma
1671.1Stls	o  major source reorganisation; most features are in separate files now
1681.1Stls	o  new -V flag that makes unknown virtualhosts use slashdir
1691.1Stls	   from <rumble@ephemeral.org>
1701.1Stls	o  HTTP/1.x protocol headers are now properly merged for CGI
1711.1Stls
1721.15Smrgchanges in bozohttpd 20040808:
1731.1Stls	o  CGI status is now properly handled (-a flag has been removed)
1741.1Stls	o  CGI file upload support works
1751.1Stls	o  %xy translations are no longer ever applied after the first '?',
1761.1Stls	   ala RFC2396.  from lukem
1771.1Stls	o  daemon mode (-b) should no longer hang spinning forever if it
1781.1Stls	   sees no children.  from lukem
1791.1Stls	o  new .bzabsredirect file support. from <martin@netbsd.org>
1801.1Stls	o  return a 404 error if we see %00 or %2f (/)
1811.1Stls	o  don't print 2 "200" headers for CGI
1821.1Stls	o  support .torrent files
1831.1Stls
1841.15Smrgchanges in bozohttpd 20040218:
1851.1Stls	o  new .bzredirect file support for sane directory redirection
1861.1Stls	o  new -Z option that enables SSL mode, from <rtr@eterna.com.au>
1871.1Stls	o  the -C option has been changed to take two explicit options, rather
1881.1Stls	   than a single option with a space separating the suffix and the
1891.1Stls	   interpreter.  ``-C ".foo /path/to/bar"'' should now be written
1901.1Stls	   as ``-C .foo /path/to/bar''
1911.1Stls	o  the -M option has been changed like -C and no longer requires or
1921.1Stls	   supports a single argument with space-separated options
1931.1Stls	o  with -a, still print the 200 OK.  from <rtr@eterna.com.au>
1941.1Stls	o  with -r, if a .bzdirect file appears in a directory, allow direct
1951.1Stls	   access to this directory
1961.1Stls
1971.15Smrgchanges in bozohttpd 20031005:
1981.1Stls	o  fixes for basic authorisation.  from <ecu@ipv42.net>
1991.1Stls	o  always display file size in directory index mode
2001.1Stls	o  add .xbel, .xml & .xsl -> text/xml mappings.  from
2011.1Stls	   <wiz@danbala.ifoer.tuwien.ac.at>
2021.1Stls
2031.15Smrgchanges in bozohttpd 20030626:
2041.1Stls	o  fix a recent core dump when given no input
2051.1Stls	o  add new -r flag that ensures referrer is set to this host
2061.1Stls	o  fix several compile time errors with -DNO_CGIBIN_SUPPORT
2071.1Stls	o  fix some man page details. from lukem@wasabisystems.com
2081.1Stls	o  re-add a missing memset(), fixing a core dump. from lukem
2091.1Stls	o  support HTTP basic authorisation, disabled by default.  from lukem
2101.1Stls	o  print the port number in redirects and errors. from lukem
2111.1Stls	o  only syslog the basename of the program. from lukem
2121.1Stls	o  add __attribute__() format checking. from lukem
2131.1Stls	o  fix cgibin SCRIPT_NAME to have a leading /.  from zakj@nox.cx
2141.1Stls	o  simplify some code in -C to avoid a core dump.  from lukem
2151.1Stls	o  add a .css -> css/text entry to the content_map[].  from zakj@nox.cx
2161.1Stls
2171.15Smrgchanges in bozohttpd 20030409:
2181.1Stls	o  -d without DEBUG enabled only prints one warning and continues
2191.1Stls	o  one can now define the C macro SERVER_SOFTWARE when building to
2201.1Stls	   change the Server: header and CGI variable of the same name
2211.1Stls	o  add new -s flag the force logging output to stderr. from zakj@nox.cx
2221.1Stls	o  add new -a flag for CGI bin that stops bozohttpd from outputting
2231.1Stls	   any HTTP reply, the CGI program must output these.  from zakj@nox.cx
2241.1Stls	o  new REQUEST_URI and DATE_GMT environment variables for CGI.  from
2251.1Stls	   zakj@nox.cx
2261.1Stls	o  add a "Makefile.boot" that should work with any make program
2271.1Stls	o  build on linux again
2281.1Stls	o  fix core dumps when using -C
2291.1Stls
2301.15Smrgchanges in bozohttpd 20030313:
2311.1Stls	o  deprecate -r flag; make this the default and silently ignore -r now
2321.1Stls	o  add support for file extentions to call CGI programs (from lukem)
2331.1Stls	o  add dynamic support to add new content map entries, allowing both
2341.1Stls	   new file types and non /cgi-bin CGI programs to be run with the
2351.1Stls	   new -C "suffix cgihandler" and -M "suffix type encoding encoding11"
2361.1Stls	   options
2371.1Stls	o  in -b mode, set the http date after accept() returns, not before we
2381.1Stls	   call accept()
2391.1Stls	o  in -b mode, bind all addresses found not just the first one
2401.1Stls	o  unsupport old hostname API
2411.1Stls	o  in -b mode, set the SO_REUSEADDR socket option (lukem)
2421.1Stls	o  allow -x (index.html) mode to work with CGI handlers
2431.1Stls
2441.15Smrgchanges in bozohttpd 20021106:
2451.1Stls	o  add .bz2 support
2461.1Stls	o  properly escape <, > and & in error messages, partly from
2471.1Stls	   Nicolas Jombart <ecu@mariejeanne.net>
2481.1Stls	o  new -H flag to hide .* files in directory index mode
2491.1Stls	o  fix buffer reallocation when parsing a request, to avoid
2501.1Stls	   overflowing the buffer with carriage returns (\r)
2511.1Stls	o  do not decode "%XY"-style cgi-bin data beyond the "?"
2521.1Stls
2531.15Smrgchanges in bozohttpd 5.15 (20020913):
2541.1Stls	o  add .ogg support -> `application/x-ogg'
2551.1Stls	o  fix CGI requests with "/" in the query part
2561.1Stls
2571.15Smrgchanges in bozohttpd 5.14 (20020823):
2581.1Stls	o  allow -X mode to work for "/"
2591.1Stls	o  work on systems without MADV_SEQUENTIAL
2601.1Stls	o  make a local cut-down copy of "queue.h" (fixes linux & solaris
2611.1Stls	   support at the very least)
2621.1Stls	o  portability fixes for pre-ipv6 socket api systems (eg, solaris 7)
2631.1Stls	o  portability fixes for missing _PATH_DEFPATH, LOG_FTP and __progname
2641.1Stls	o  better documentation on virtual host support
2651.1Stls
2661.15Smrgchanges in bozohttpd 5.13 (20020804):
2671.1Stls	o  support .mp3 files (type audio/mpeg)
2681.1Stls	o  use stat() to find out if something is a directory, for -X mode
2691.1Stls
2701.15Smrgchanges in bozohttpd 5.12 (20020803):
2711.1Stls	o  constification
2721.1Stls	o  fixes & enhancements for directory index mode (-X)
2731.1Stls
2741.15Smrgchanges in bozohttpd 5.11 (20020730):
2751.1Stls	o  more man page fixes from Thomas Klausner
2761.1Stls	   <wiz@danbala.ifoer.tuwien.ac.at>
2771.1Stls	o  de-K&R C-ification
2781.1Stls	o  fix Date: header for daemon mode
2791.1Stls	o  fix core dump when asking for /cgi-bin/ when CGI isn't configured
2801.1Stls	o  use a valid Server: header
2811.1Stls
2821.15Smrgchanges in bozohttpd 5.10 (20020710):
2831.1Stls	- add freebsd support 
2841.1Stls	- fix a couple of header typos
2851.1Stls	- many cgi-bin fixes from lukem@netbsd.org
2861.1Stls	- add -T chrootdir and -U user, plus several minor other cleanups
2871.1Stls	with signals and return values.  from xs@kittenz.org
2881.1Stls	- add -e that does not clear the environment for -T/-U
2891.1Stls	- fix a formatting error noticed by ISIHARA Takanori <ishit@oak.dti.ne.jp>
2901.1Stls
2911.15Smrgchanges in bozohttpd 5.09 (20010922):
2921.1Stls	- add a daemon mode
2931.1Stls	- document how to use bozohttpd in netbsd inetd with more than 40 
2941.1Stls	connections per minute and also with cgibin
2951.1Stls	- man page fixes from wiz@netbsd.org
2961.1Stls
2971.15Smrgchanges in bozohttpd 5.08 (20010812):
2981.1Stls	- add directory index generation support (-X) from ad@netbsd.org
2991.1Stls	- add .pa as an alias for .pac
3001.1Stls	- make server software version configurable (RFC)
3011.1Stls
3021.15Smrgchanges in bozohttpd 5.07 (20010610):
3031.1Stls	- add .png support 
3041.1Stls	- new "-x index.html" flag to change default file
3051.1Stls	- new "-p public_html" flag to change default ~user directory
3061.1Stls	- fixes cgi-bin support and more from chuck@research.att.com
3071.1Stls	- add many new content-types, now support most common ones
3081.1Stls
3091.15Smrgchanges in bozohttpd 5.06 (20000825):
3101.33Smrg	- add IPv6 support from itojun@iijlab.net
3111.1Stls	- man page fixes from jlam@netbsd.org
3121.1Stls
3131.15Smrgchanges in bozohttpd 5.05 (20000815):
3141.1Stls	- fix a virtual host bug, from kleink@netbsd.org
3151.1Stls
3161.15Smrgchanges in bozohttpd 5.04 (20000427):
3171.1Stls	- fix virtual host support; URI takes precedence over Host:
3181.1Stls
3191.15Smrgchanges in bozohttpd 5.03 (20000427):
3201.1Stls	- fix a bug with chdir() 
3211.1Stls
3221.15Smrgchanges in bozohttpd 5.02 (20000426):
3231.1Stls	- .pac spport from simonb
3241.1Stls
3251.15Smrgchanges in bozohttpd 5.01 (20000421):
3261.1Stls	- .swf support 
3271.1Stls	- virtual hosting support 
328