thttpd, patches for thttpd-2.21b

1. Features

The following patches apply to original thttpd-2.21b and enhance its performance and its stability (see below development status).  Latest patch includes.

2. Patches

Please, read patch log file thttpd-2.21b-pNN-log.txt for details and bugs not fixed; see also thanks and caveats.

NEWS: 27-JUN-2005, the life-time cycle of these patches has almost reached its end (it has entered the freeze mode); p44 is the last major patch, a few minor bug-fix patches (p44b, p44c, etc.) will be released to make things stable again; the STABLE p36* patches will be maintained for a while (probably till the middle of 2006), so future p36c, p36d, p36e, p36f, etc. will be slowly released to fix or improve minor issues step by step.

NEWS: 15-JUL-2005, development of branch 1 (p33*) has been stopped.

NEWS: 28-FEB-2006, development of branch 2 (p36*) will be completely stopped within June 2006.

NEWS: 24-APR-2006, development of branch 3 (p44*) will be completely stopped within July 2006.

NEWS: 22-JUN-2006, development of branch 2 (p36*) has been stopped.

NEWS: 24-JUL-2006, development of branch 3 (p44*) has been stopped.

Q. Why did you start to release these patches ?
A. Because of many reasons but mainly because when thttpd-2.21b was downgraded to beta and left orphan in favour of thttpd-2.22-betas (followed by thttpd-2.23-betas), I decided to adopt thttpd-2.21b in order to apply quickly bug fixes and new features to it while waiting for next stable release of thttpd.

Q. Why have you maintained patches for thttpd-2.21b only ?
A. Because when thttpd-2.24 and thttpd-2.25 were released, I was too lazy to port all the new features along the fixes, etc. I had applied to thttpd-2.21b.

Q. Do you plan to maintain a web page with patches for thttpd-2.25b or later ?
A. No, I don't plan to maintain a web page with "unofficial" patches for thttpd-2.25b and later versions (I could do that, but it would not be appreciated); anyway I am willing to contribute patches and everything else is useful to new versions of thttpd by E-Mail.

Q. Will you release other major patches (pNN) for thttpd-2.21b ?
A. Hopefully NO, because it is time to ask for new official versions.

Q. Why did you split the patches into 3 branches ?
A. Well, at a certain point of the development, I started to think about the new features that had been added in some patches and when in the middle of 2005 I found a bug that affected all versions of thttpd I decided to split the patches into 3 branches (OLD, STABLE, DEVELOPEMENT) in order to maintain versions which seemed like to be stable enough to be used in Internet servers (i.e. p36*).

Q. Are there patches that belong to different branches and that have the same parameters ?
A. Yes, p36h, p44d and p44e have the same parameters, both in the command line and in the configuration file (see option -C).

Q. Which are the most stable patches ?
A. Assuming to serve static content only (by leaving EXECUTE_CGI disabled in config.h), version p36c and p36e are believed to be stable enough to be used in Internet servers (at least when USE_SENDFILE is disabled / commented), p36f, p36g, p36h and maybe p44d and p44e should be a lot better (specially with USE_SENDFILE enabled).

NOTE: patches that are believed to survive heavy Internet traffic (*), are emphasized by bold font;   this does NOT mean they are perfect !
(*)   (at least when using epoll(2) or poll(2) fdwatch pollers).

Development patches - branch 3 (optimized - development STOPPED)

Patch Name  Size (bytes)  Date
thttpd-2.21b-p44e.tar.gz   152536  24-JUL-2006
thttpd-2.21b-p44d.tar.gz   151625  02-JUN-2006
thttpd-2.21b-p44c.tar.gz   150221  28-FEB-2006
thttpd-2.21b-p44b.tar.gz   146462  27-JAN-2006
thttpd-2.21b-p44.tar.gz   145283  27-JUN-2005
thttpd-2.21b-p43.tar.gz   143054  17-JAN-2005
thttpd-2.21b-p42.tar.gz   137504  09-DEC-2004
thttpd-2.21b-p41.tar.gz   132894  12-AUG-2004
thttpd-2.21b-p40.tar.gz   127161  26-JUL-2004
thttpd-2.21b-p39.tar.gz   126400  21-JUN-2004
thttpd-2.21b-p38.tar.gz   125409  24-MAY-2004
thttpd-2.21b-p37.tar.gz   121325  26-APR-2004

Development patches - branch 2 (stable - development STOPPED)

Patch Name  Size (bytes)  Date
thttpd-2.21b-p36h.tar.gz   128050  02-JUN-2006
thttpd-2.21b-p36g.tar.gz   126557  28-FEB-2006
thttpd-2.21b-p36f.tar.gz   123150  20-FEB-2006
thttpd-2.21b-p36e.tar.gz   118534  13-JAN-2006
thttpd-2.21b-p36d.tar.gz   118123  12-SEP-2005
thttpd-2.21b-p36c.tar.gz   117008  15-JUL-2005
thttpd-2.21b-p36b.tar.gz   115756  20-JUN-2005
thttpd-2.21b-p36.tar.gz   113859  11-MAR-2004
thttpd-2.21b-p35.tar.gz   113625  01-MAR-2004
thttpd-2.21b-p34.tar.gz   109311  28-JAN-2004

Development patches - branch 1 (stale - development STOPPED)

Patch Name  Size (bytes)  Date
thttpd-2.21b-p33c.tar.gz   111707  15-JUL-2005
thttpd-2.21b-p33b.tar.gz   110544  20-JUN-2005
thttpd-2.21b-p33.tar.gz   108672  26-JAN-2004
thttpd-2.21b-p32.tar.gz   103679  25-NOV-2003
thttpd-2.21b-p31.tar.gz   99294  18-SEP-2003
thttpd-2.21b-p30.tar.gz   91901  11-AUG-2003
thttpd-2.21b-p29.tar.gz   82438  16-JUL-2003
thttpd-2.21b-p28.tar.gz   73018  25-JUN-2003
thttpd-2.21b-p27.tar.gz   59537  27-MAY-2003
thttpd-2.21b-p26.tar.gz   55094  28-APR-2003
thttpd-2.21b-p25.tar.gz   52178  10-MAR-2003
thttpd-2.21b-p24.tar.gz   48563  18-JAN-2003
thttpd-2.21b-p23.tar.gz   48475  27-NOV-2002
thttpd-2.21b-p22.tar.gz   43812  30-AUG-2002
thttpd-2.21b-p21.tar.gz   41370  26-AUG-2002
thttpd-2.21b-p20.tar.gz   38344  14-AUG-2002
thttpd-2.21b-p19.tar.gz   30896  07-AUG-2002
thttpd-2.21b-p18.tar.gz   26489  06-JUN-2002
thttpd-2.21b-p17.tar.gz   25120  29-APR-2002
thttpd-2.21b-p16.tar.gz   21090  06-APR-2002
thttpd-2.21b-p15.tar.gz   18250  25-MAR-2002
thttpd-2.21b-p14.tar.gz   15216  06-FEB-2002
thttpd-2.21b-p13.tar.gz   13888  14-JAN-2002
thttpd-2.21b-p12.tar.gz   13665  08-JAN-2002
thttpd-2.21b-p11.tar.gz   11279  02-JAN-2002
thttpd-2.21b-p10.tar.gz   11649  17-NOV-2001


Last Updated: 24-JUL-2006