CHANGES revision 1.43
11.43Smrg$NetBSD: CHANGES,v 1.43 2020/10/15 02:19:23 mrg Exp $
21.43Smrg
31.43Smrgchanges in bozohttpd 20201014:
41.43Smrg	o  also set -D_GNU_SOURCE in Makefile.boot.  from
51.43Smrg	   hadrien.lacour@posteo.net.
61.43Smrg	o  fix array size botch (assertion, not exploitable.)  from
71.43Smrg	   martin@netbsd.org.
81.43Smrg	o  also match %2F as well as %2f.  from leah@vuxu.org.
91.42Srhialto
101.42Srhialtochanges in bozohttpd 20200912:
111.42Srhialto	o  add .m4a and .m4v file extensions.
121.41Smrg
131.41Smrgchanges in bozohttpd 20200820:
141.41Smrg	o  make this work on sun2 by reducing mmap window there.
151.41Smrg	o  fix SSL shutdown sequence.  from spz@netbsd.org.
161.41Smrg	o  add readme support to directory indexing.  from jmcneill@netbsd.org
171.41Smrg	o  add blocklist(8) support.  from jruoho@netbsd.org.
181.37Smrg
191.40Smrgchanges in bozohttpd 20190228:
201.40Smrg	o  extend timeout facility to ssl and stop servers hanging forever
211.40Smrg	   if the client never sends anything.  reported by Steffen in netbsd
221.40Smrg	   PR#50655.
231.37Smrg	o  don't display special files in the directory index.  they aren't
241.37Smrg	   served, but links to them are generated.
251.36Smrg	o  fix CGI '+' parameter handling, some error checking, and a double
261.36Smrg	   free.  from rajeev_v_pillai@yahoo.com
271.36Smrg	o  more directory indexing clean up.  from rajeev_v_pillai@yahoo.com
281.32Sleot
291.32Sleotchanges in bozohttpd 20181215:
301.34Smrg	o  fix .htpasswd bypass for authenticated users.  reported by JP,
311.32Sleot	   from leot@netbsd.org
321.32Sleot	o  avoid possible null dereference when receiving a big request that
331.32Sleot	   timeout.  reported by maya@netbsd.org, from leot@netbsd.org
341.32Sleot	o  fix handling of -T option, from leot@netbsd.org
351.32Sleot	o  cleanups and portability improvements, from maya@netbsd.org
361.33Smrg	o  change directory indexing to use html tables, from
371.31Smrg	   rajeev_v_pillai@yahoo.com
381.29Smrg
391.29Smrgchanges in bozohttpd 20181125:
401.30Smrg	o  fixes for option parsing introduced in bozohttpd 20181123
411.26Smrg
421.28Smrgchanges in bozohttpd 20181121:
431.26Smrg	o  add url remap support via .bzremap file, from martin@netbsd.org
441.26Smrg	o  handle redirections for any protocol, not just http:
451.26Smrg	o  fix a denial of service attack against header contents, which
461.27Smrg	   is now bounded at 16KiB.  reported by JP
471.27Smrg	o  reduce default timeouts, and add expand timeouts to handle the
481.27Smrg	   initial line, each header, and the total time spent
491.27Smrg	o  add -T option to expose new timeout settings
501.27Smrg	o  minor RFC fixes related to timeout handling
511.30Smrg	o  fix special file (.htpasswd, .bz*) bypass.  reported by JP
521.25Smrg
531.25Smrgchanges in bozohttpd 20170201:
541.25Smrg	o  fix an infinite loop in cgi processing
551.25Smrg	o  fixes and clean up for the testsuite
561.25Smrg	o  no longer sends encoding header for compressed formats
571.11Smrg
581.23Sagcchanges in bozohttpd 20160517:
591.25Smrg	o  add a bozo_get_version() function which returns the version number
601.23Sagc
611.22Smrgchanges in bozohttpd 20160415:
621.22Smrg	o  add search-word support for CGI
631.22Smrg	o  fix a security issue in CGI suffix handler support which would
641.22Smrg	   allow remote code execution, from shm@netbsd.org
651.22Smrg	o  -C option supports now CGI scripts only
661.22Smrg
671.21Sshmchanges in bozohttpd 20151028:
681.21Sshm	o  add CGI support for ~user translation (-E switch)
691.21Sshm	o  add redirects to ~user translation
701.21Sshm	o  fix bugs around ~user translation
711.21Sshm	o  add schema detection for absolute redirects
721.21Sshm	o  fixed few memory leaks
731.21Sshm	o  bunch of minor tweaks
741.21Sshm	o  removed -r support
751.21Sshm	o  smarter redirects 
761.21Sshm
771.20Smrgchanges in bozohttpd 20150320:
781.20Smrg	o  fix redirection handling
791.20Smrg	o  support transport stream (.ts) and video object (.vob) files
801.20Smrg	o  directory listings show correct file sizes for large files
811.20Smrg
821.19Smrgchanges in bozohttpd 20140717:
831.20Smrg	o  properly handle SSL errors
841.19Smrg
851.18Smrgchanges in bozohttpd 20140708:
861.18Smrg	o  fixes for virtual host support, from rajeev_v_pillai@yahoo.com
871.18Smrg	o  avoid printing double errors, from shm@netbsd.org
881.18Smrg	o  fix a security issue in basic HTTP authentication which would allow
891.18Smrg	   authentication to be bypassed, from shm@netbsd.org
901.18Smrg
911.15Smrgchanges in bozohttpd 20140201:
921.16Smrg	o  support .svg files
931.15Smrg	o  fix a core dump when requests timeout
941.15Smrg
951.15Smrgchanges in bozohttpd 20140102:
961.14Smrg	o  update a few content types
971.14Smrg	o  add support for directly calling lua scripts to handle
981.14Smrg	   processes, from mbalmer@netbsd.org
991.13Smrg	o  properly escape generated HTML
1001.13Smrg	o  add authentication for redirections, from martin@netbsd.org
1011.13Smrg	o  handle chained ssl certifications, from elric@netbsd.org
1021.13Smrg	o  add basic support for gzipped files, from elric@netbsd.org
1031.12Smrg	o  properly escape generated URIs
1041.12Smrg
1051.15Smrgchanges in bozohttpd 20111118:
1061.11Smrg	o  add -P <pidfile> option, from jmmv@netbsd.org
1071.11Smrg	o  avoid crashes with http basic auth, from pooka@netbsd.org
1081.11Smrg	o  add support for REDIRECT_STATUS variable, from tls@netbsd.org
1091.11Smrg	o  support .mp4 files in the default map
1101.11Smrg	o  directory indexes with files with : are now displayed properly, from
1111.11Smrg	   reed@netbsd.org
1121.11Smrg	o  allow -I option to be useful in non-inetd mode as well
1131.9Smrg
1141.15Smrgchanges in bozohttpd 20100920:
1151.9Smrg	o  properly fully disable multi-file mode for now
1161.9Smrg	o  fix the -t and -U options when used without the -e option, broken since
1171.9Smrg	   the library-ifcation
1181.9Smrg	o  be explicit that logs go to the FTP facility in syslog
1191.10Smrg	o  use scandir() with alphasort() for sorted directory lists, from moof
1201.10Smrg	o  fix a serious error in vhost handling; "Host:.." would allow access to
1211.10Smrg	   the next level directory from the virtual root directory, from seanb
1221.10Smrg	o  fix some various non standard compile time errors, from rudolf
1231.10Smrg	o  fix dynamic CGI content maps, from rudolf
1241.7Smrg
1251.15Smrgchanges in bozohttpd 20100617:
1261.7Smrg	o  fix some compile issues
1271.8Smrg	o  fix SSL mode.  from rtr
1281.8Smrg	o  fix some cgi-bin issues, as seen with cvsweb
1291.8Smrg	o  disable multi-file daemon mode for now, it breaks
1301.8Smrg	o  return 404's instead of 403's when chdir of ~user dirs fail
1311.8Smrg	o  remove "noreturn" attribute from bozo_http_error() that was
1321.8Smrg	   causing incorrect runtime behaviour
1331.6Smrg
1341.15Smrgchanges in bozohttpd 20100509:
1351.6Smrg	o  major rework and clean up of internal interfaces.  move the main
1361.30Smrg	   program into main.c, the remaining parts are useable as library
1371.6Smrg	   add bindings for lua.  by Alistair G. Crooks <agc@netbsd.org>
1381.6Smrg	o  fix http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=566325
1391.4Smrg
1401.15Smrgchanges in bozohttpd 20090522:
1411.4Smrg	o  avoid dying in daemon mode for some uncommon, but recoverable, errors
1421.4Smrg	o  close leaking file descriptors for CGI and daemon mode
1431.4Smrg	o  handle poll errors properly
1441.4Smrg	o  don't try to handle more than one request per process yet
1451.5Smrg	o  add subdirs for build "debug" and "small" versions
1461.5Smrg	o  clean up a bad merge / duplicate code
1471.5Smrg	o  make mmap() usage portable, fixes linux & ranges: support
1481.5Smrg	o  document the -f option
1491.5Smrg	o  daemon mode now serves 6 files per child
1501.3Smrg
1511.15Smrgchanges in bozohttpd 20090417:
1521.3Smrg	o  make bozohttpd internally more modular, preparing the way
1531.3Smrg	   to handle more than one request per process
1541.3Smrg	o  fix http-auth, set $REMOTE_USER not $REMOTEUSER.  also fix
1551.3Smrg	   cgi-bin with cvsweb, from Holger Weiss <holger@CIS.FU-Berlin.DE>
1561.3Smrg	o  fix an uninitialised variable use in daemon mode
1571.3Smrg	o  fix ssl mode with newer OpenSSL
1581.3Smrg	o  mmap large files in manageable sizes so we can serve any size file
1591.3Smrg	o  refactor url processing to handle query strings correctly for CGI
1601.3Smrg	   from Sergey Katsev at Coyote Point
1611.3Smrg	o  add If-Modified-Since support, from Joerg Sonnenberger
1621.3Smrg	   <joerg@netbsd.org>
1631.3Smrg	o  many more manual fixes, from NetBSD
1641.3Smrg
1651.15Smrgchanges in bozohttpd 20080303:
1661.3Smrg	o  fix some cgi header processing, from <thelsdj@gmail.com>
1671.3Smrg	o  add simple Range: header processing, from <bad@bsd.de>
1681.3Smrg	o  man page fixes, from NetBSD
1691.3Smrg	o  clean up various parts, from NetBSD
1701.3Smrg
1711.15Smrgchanges in bozohttpd 20060710:
1721.3Smrg	o  prefix some function names with "bozo"
1731.3Smrg	o  align directory indexing <hr> markers
1741.3Smrg	o  clean up some code GCC4 grumbled about
1751.1Stls
1761.15Smrgchanges in bozohttpd 20060517:
1771.1Stls	o  don't allow "/.." or "../" files
1781.1Stls	o  don't write ":80" into urls for the http port
1791.1Stls	o  fix a fd leak when fork() fails
1801.1Stls	o  make directory indexing mode not look so ugly
1811.1Stls	o  build a text version of the manual page
1821.1Stls	o  make "make clean" work properly
1831.1Stls
1841.15Smrgchanges in bozohttpd 20050410:
1851.1Stls	o  fix some off-by-one errors from <roland.illig@gmx.de>
1861.1Stls	o  properly support nph- CGI
1871.1Stls	o  make content maps case insensitive
1881.1Stls	o  fix proto header merging to include the missing comma
1891.1Stls	o  major source reorganisation; most features are in separate files now
1901.1Stls	o  new -V flag that makes unknown virtualhosts use slashdir
1911.1Stls	   from <rumble@ephemeral.org>
1921.1Stls	o  HTTP/1.x protocol headers are now properly merged for CGI
1931.1Stls
1941.15Smrgchanges in bozohttpd 20040808:
1951.1Stls	o  CGI status is now properly handled (-a flag has been removed)
1961.1Stls	o  CGI file upload support works
1971.1Stls	o  %xy translations are no longer ever applied after the first '?',
1981.1Stls	   ala RFC2396.  from lukem
1991.1Stls	o  daemon mode (-b) should no longer hang spinning forever if it
2001.1Stls	   sees no children.  from lukem
2011.1Stls	o  new .bzabsredirect file support. from <martin@netbsd.org>
2021.1Stls	o  return a 404 error if we see %00 or %2f (/)
2031.1Stls	o  don't print 2 "200" headers for CGI
2041.1Stls	o  support .torrent files
2051.1Stls
2061.15Smrgchanges in bozohttpd 20040218:
2071.1Stls	o  new .bzredirect file support for sane directory redirection
2081.1Stls	o  new -Z option that enables SSL mode, from <rtr@eterna.com.au>
2091.1Stls	o  the -C option has been changed to take two explicit options, rather
2101.1Stls	   than a single option with a space separating the suffix and the
2111.1Stls	   interpreter.  ``-C ".foo /path/to/bar"'' should now be written
2121.1Stls	   as ``-C .foo /path/to/bar''
2131.1Stls	o  the -M option has been changed like -C and no longer requires or
2141.1Stls	   supports a single argument with space-separated options
2151.1Stls	o  with -a, still print the 200 OK.  from <rtr@eterna.com.au>
2161.1Stls	o  with -r, if a .bzdirect file appears in a directory, allow direct
2171.1Stls	   access to this directory
2181.1Stls
2191.15Smrgchanges in bozohttpd 20031005:
2201.1Stls	o  fixes for basic authorisation.  from <ecu@ipv42.net>
2211.1Stls	o  always display file size in directory index mode
2221.1Stls	o  add .xbel, .xml & .xsl -> text/xml mappings.  from
2231.1Stls	   <wiz@danbala.ifoer.tuwien.ac.at>
2241.1Stls
2251.15Smrgchanges in bozohttpd 20030626:
2261.1Stls	o  fix a recent core dump when given no input
2271.1Stls	o  add new -r flag that ensures referrer is set to this host
2281.1Stls	o  fix several compile time errors with -DNO_CGIBIN_SUPPORT
2291.1Stls	o  fix some man page details. from lukem@wasabisystems.com
2301.1Stls	o  re-add a missing memset(), fixing a core dump. from lukem
2311.1Stls	o  support HTTP basic authorisation, disabled by default.  from lukem
2321.1Stls	o  print the port number in redirects and errors. from lukem
2331.1Stls	o  only syslog the basename of the program. from lukem
2341.1Stls	o  add __attribute__() format checking. from lukem
2351.1Stls	o  fix cgibin SCRIPT_NAME to have a leading /.  from zakj@nox.cx
2361.1Stls	o  simplify some code in -C to avoid a core dump.  from lukem
2371.1Stls	o  add a .css -> css/text entry to the content_map[].  from zakj@nox.cx
2381.1Stls
2391.15Smrgchanges in bozohttpd 20030409:
2401.1Stls	o  -d without DEBUG enabled only prints one warning and continues
2411.1Stls	o  one can now define the C macro SERVER_SOFTWARE when building to
2421.1Stls	   change the Server: header and CGI variable of the same name
2431.1Stls	o  add new -s flag the force logging output to stderr. from zakj@nox.cx
2441.1Stls	o  add new -a flag for CGI bin that stops bozohttpd from outputting
2451.1Stls	   any HTTP reply, the CGI program must output these.  from zakj@nox.cx
2461.1Stls	o  new REQUEST_URI and DATE_GMT environment variables for CGI.  from
2471.1Stls	   zakj@nox.cx
2481.1Stls	o  add a "Makefile.boot" that should work with any make program
2491.1Stls	o  build on linux again
2501.1Stls	o  fix core dumps when using -C
2511.1Stls
2521.15Smrgchanges in bozohttpd 20030313:
2531.1Stls	o  deprecate -r flag; make this the default and silently ignore -r now
2541.1Stls	o  add support for file extentions to call CGI programs (from lukem)
2551.1Stls	o  add dynamic support to add new content map entries, allowing both
2561.1Stls	   new file types and non /cgi-bin CGI programs to be run with the
2571.1Stls	   new -C "suffix cgihandler" and -M "suffix type encoding encoding11"
2581.1Stls	   options
2591.1Stls	o  in -b mode, set the http date after accept() returns, not before we
2601.1Stls	   call accept()
2611.1Stls	o  in -b mode, bind all addresses found not just the first one
2621.1Stls	o  unsupport old hostname API
2631.1Stls	o  in -b mode, set the SO_REUSEADDR socket option (lukem)
2641.1Stls	o  allow -x (index.html) mode to work with CGI handlers
2651.1Stls
2661.15Smrgchanges in bozohttpd 20021106:
2671.1Stls	o  add .bz2 support
2681.1Stls	o  properly escape <, > and & in error messages, partly from
2691.1Stls	   Nicolas Jombart <ecu@mariejeanne.net>
2701.1Stls	o  new -H flag to hide .* files in directory index mode
2711.1Stls	o  fix buffer reallocation when parsing a request, to avoid
2721.1Stls	   overflowing the buffer with carriage returns (\r)
2731.1Stls	o  do not decode "%XY"-style cgi-bin data beyond the "?"
2741.1Stls
2751.15Smrgchanges in bozohttpd 5.15 (20020913):
2761.1Stls	o  add .ogg support -> `application/x-ogg'
2771.1Stls	o  fix CGI requests with "/" in the query part
2781.1Stls
2791.15Smrgchanges in bozohttpd 5.14 (20020823):
2801.1Stls	o  allow -X mode to work for "/"
2811.1Stls	o  work on systems without MADV_SEQUENTIAL
2821.1Stls	o  make a local cut-down copy of "queue.h" (fixes linux & solaris
2831.1Stls	   support at the very least)
2841.1Stls	o  portability fixes for pre-ipv6 socket api systems (eg, solaris 7)
2851.1Stls	o  portability fixes for missing _PATH_DEFPATH, LOG_FTP and __progname
2861.1Stls	o  better documentation on virtual host support
2871.1Stls
2881.15Smrgchanges in bozohttpd 5.13 (20020804):
2891.1Stls	o  support .mp3 files (type audio/mpeg)
2901.1Stls	o  use stat() to find out if something is a directory, for -X mode
2911.1Stls
2921.15Smrgchanges in bozohttpd 5.12 (20020803):
2931.1Stls	o  constification
2941.1Stls	o  fixes & enhancements for directory index mode (-X)
2951.1Stls
2961.15Smrgchanges in bozohttpd 5.11 (20020730):
2971.1Stls	o  more man page fixes from Thomas Klausner
2981.1Stls	   <wiz@danbala.ifoer.tuwien.ac.at>
2991.1Stls	o  de-K&R C-ification
3001.1Stls	o  fix Date: header for daemon mode
3011.1Stls	o  fix core dump when asking for /cgi-bin/ when CGI isn't configured
3021.1Stls	o  use a valid Server: header
3031.1Stls
3041.15Smrgchanges in bozohttpd 5.10 (20020710):
3051.1Stls	- add freebsd support 
3061.1Stls	- fix a couple of header typos
3071.1Stls	- many cgi-bin fixes from lukem@netbsd.org
3081.1Stls	- add -T chrootdir and -U user, plus several minor other cleanups
3091.1Stls	with signals and return values.  from xs@kittenz.org
3101.1Stls	- add -e that does not clear the environment for -T/-U
3111.1Stls	- fix a formatting error noticed by ISIHARA Takanori <ishit@oak.dti.ne.jp>
3121.1Stls
3131.15Smrgchanges in bozohttpd 5.09 (20010922):
3141.1Stls	- add a daemon mode
3151.1Stls	- document how to use bozohttpd in netbsd inetd with more than 40 
3161.1Stls	connections per minute and also with cgibin
3171.1Stls	- man page fixes from wiz@netbsd.org
3181.1Stls
3191.15Smrgchanges in bozohttpd 5.08 (20010812):
3201.1Stls	- add directory index generation support (-X) from ad@netbsd.org
3211.1Stls	- add .pa as an alias for .pac
3221.1Stls	- make server software version configurable (RFC)
3231.1Stls
3241.15Smrgchanges in bozohttpd 5.07 (20010610):
3251.1Stls	- add .png support 
3261.1Stls	- new "-x index.html" flag to change default file
3271.1Stls	- new "-p public_html" flag to change default ~user directory
3281.1Stls	- fixes cgi-bin support and more from chuck@research.att.com
3291.1Stls	- add many new content-types, now support most common ones
3301.1Stls
3311.15Smrgchanges in bozohttpd 5.06 (20000825):
3321.33Smrg	- add IPv6 support from itojun@iijlab.net
3331.1Stls	- man page fixes from jlam@netbsd.org
3341.1Stls
3351.15Smrgchanges in bozohttpd 5.05 (20000815):
3361.1Stls	- fix a virtual host bug, from kleink@netbsd.org
3371.1Stls
3381.15Smrgchanges in bozohttpd 5.04 (20000427):
3391.1Stls	- fix virtual host support; URI takes precedence over Host:
3401.1Stls
3411.15Smrgchanges in bozohttpd 5.03 (20000427):
3421.1Stls	- fix a bug with chdir() 
3431.1Stls
3441.15Smrgchanges in bozohttpd 5.02 (20000426):
3451.1Stls	- .pac spport from simonb
3461.1Stls
3471.15Smrgchanges in bozohttpd 5.01 (20000421):
3481.1Stls	- .swf support 
3491.1Stls	- virtual hosting support 
350