/[hydra]/hydra/ChangeLog
ViewVC logotype

Annotation of /hydra/ChangeLog

Parent Directory Parent Directory | Revision Log Revision Log


Revision 1.55 - (hide annotations)
Fri Dec 10 20:09:22 2004 UTC (19 years, 3 months ago) by nmav
Branch: MAIN
CVS Tags: hydra_0_1_7
Changes since 1.54: +3 -0 lines
Added the SSL_CLIENT_SERVER_NAME CGI variable.

1 nmav 1.55 ** Changes from 0.1.5 to 0.1.6 - 10/12/2004
2     * Added the SSL_CLIENT_SERVER_NAME CGI variable.
3    
4 nmav 1.54 ** Changes from 0.1.5 to 0.1.6 - 24/07/2004
5     * Some changes to support the new PHP REQUEST_STATUS environment
6     variable.
7     * Some fixes for gnutls.
8    
9 nmav 1.53 ** Changes from 0.1.4 to 0.1.5 - 03/04/2004
10     * Added dependency on gnutls 1.0.9
11    
12 nmav 1.52 ** Changes from 0.1.3 to 0.1.4 - 03/11/2003
13 nmav 1.51 * Better large file support (now uses the included autoconf macros)
14 nmav 1.52 * Added dependency on gnutls 0.9.5
15 nmav 1.51
16 nmav 1.50 ** Changes from 0.1.2 to 0.1.3 - 20/01/2003
17     * Added DefaultCharset configuration directive. The default
18     character set given, will be appended to all text mime types.
19     * Corrected bug in KeepAlive usage in HTTP/1.1, which made the
20     server to ignore the value sent by the client.
21     * CGIAction can now be used even if HIC CGIs are disabled.
22     * Some optimizations in HTTP header parsing.
23     * Added a more complete mime.types in examples/ contributed by
24     <voidnull@qnet.pl>.
25     * Added the MaxSSLConnections configuration directive.
26     * Two mutexes are used in accept to allow parallel accepts
27     of SSL and plain connections.
28     * Added Dependency on gnutls 0.8.0.
29    
30     ** Changes from 0.1.1 to 0.1.2 - 08/01/2003
31     * Allow running the server as root, if explicitly stated in
32     configuration file. Patch by James Harr <james@grickle.org>
33     * Better pthreads detection.
34     * Outputs to error log if non executable CGIs are found.
35     * Does not close HTTP/1.1 connections by default.
36     * The current behavour is to demand the Host header in HTTP/1.1
37     requests.
38     * Added support for CGIAction CGIs. There are just like CGIs
39     but they are not executed. They are parsed using a given program.
40     * Added init script for redhat in contrib/redhat/rc.hydra,
41     contributed by <voidnull@qnet.pl>.
42    
43     ** Changes from 0.1.0 to 0.1.1 - 17/12/2002
44     * Corrected bug in Keep-Alive mode when SSL or TLS was enabled.
45     * Fixed unexpected timeout in first connection on an idle server.
46    
47 nmav 1.49 ** Changes from 0.0.10 to 0.1.0 - 16/11/2002
48     * No changes. This is the final release by me --Nikos
49    
50 nmav 1.48 ** Changes from 0.0.9 to 0.0.10 - 08/11/2002
51 nmav 1.47 * Corrected bug in error logging.
52     * Use the TMPDIR environment variable instead of TMP to get
53     the temporary directory.
54    
55 nmav 1.46 ** Changes from 0.0.8 to 0.0.9 - 27/10/2002
56 nmav 1.42 * Long offsets are not used by default.
57     * Use of pipes instead of temporary files, if the post data sent
58     are less than PIPE_BUF.
59 nmav 1.44 * More consistent logging. The server's hostname or "unknown"
60 nmav 1.43 are prepended to the log message.
61 nmav 1.44 * Corrected redirection/aliases behaviour, to match the documented one.
62 nmav 1.45 * SSLParamsRefresh was renamed to MaintenanceInterval and is more
63     generic, since it includes some server cleanups.
64     * Added file access control lists per virtual host. Based on patch for
65     Boa by Peter Korsgaard <jacmet@sunsite.dk>
66 nmav 1.46 * Added the ability to disable HIC threads by using 0 in the
67     HICThreads configuration directive.
68     * Hydra now uses poll by default. Select is available using the --with-select
69     configure option.
70 nmav 1.42
71 nmav 1.41 ** Changes from 0.0.7 to 0.0.8 - 25/10/2002
72 nmav 1.36 * Better pthread detection.
73 nmav 1.40 * Better detection of dlopen call.
74 nmav 1.37 * Some changes to compile in gcc 2.95
75 nmav 1.40 * Added support for FreeBSD's sendfile (untested).
76 nmav 1.38 [Ported from Boa 0.94.14rc1]
77     * add new state, IOSHUFFLE, which utilizes sendfile (or
78     emulates it using the request's buffer, otherwise)
79     * make the default socket size 32K. The client_stream_size stays constant
80     at 8K, and the new 'buffer' size is 4K
81     Note also that the new code uses the "default" socket buffer size
82     it obtains with the first accept()ed socket.
83     * make default behavior be to leave stderr alone, but tie it
84     to cgilog otherwise
85 nmav 1.40 * add [optional, Linux-only] check for sendfile system call
86 nmav 1.38 * use --disable-sendfile to disable sendfile support
87     sendfile support for files > 100K is default, now.
88     It's significantly faster and easier than the alternative
89     * umask ~0770 before exec
90     * tie stdout to the access_log, unless there is no access_log,
91     in which case tie it to /dev/null
92     * use sensible defaults for umask (077) and (027 for CGI)
93     * add and document new parameters (CGILog and CGIumask)
94     * vast improvements to the cgi-test.cgi program, by Jon Nelson
95     and Landon Curt Noll.
96     * next 3 items by Don Mahurin (patches modified somewhat):
97     * pidfile patch
98     * default mime_types patch
99     * NCSA environment environment variables wrapped in
100     #ifdef USE_NCSA_CGI_ENV
101     * fix some escaping issues with the directory indexer
102     (Ulf Harnhammar)
103     * backport poll support from 0.95
104 nmav 1.36
105 nmav 1.35 ** Changes from 0.0.6 to 0.0.7 - 10/10/2002
106 nmav 1.26 * Added support for large files in 32 bit systems.
107 nmav 1.27 * Added support for SSL_* variables in CGIs.
108 nmav 1.28 * Added options in configuration file, to request and verify
109     a client certificate.
110 nmav 1.34 * The headers of HIC-CGIs are now parsed by the server.
111 nmav 1.33 * Corrected behavour in SIGHUP signal handling, to reread
112 nmav 1.29 the SSL related variables.
113 nmav 1.33 * Children and HIC threads are now killed using a signal, to avoid
114     unexpected errors, and memory leaks.
115 nmav 1.26
116 nmav 1.24 ** Changes from 0.0.5 to 0.0.6 - 03/10/2002
117 nmav 1.21 * Compatibility functions are now automatically included in hydra, if
118     they are not found by the configure script.
119 nmav 1.22 * Replaced the included scandir function, with the one in libc.
120 nmav 1.23 * Fixed code, which compiled fine with gcc 3.2, but didn't compile at
121 nmav 1.22 all, with any other compiler!
122 nmav 1.23 * Improved the MaxConnections directive semantics.
123 nmav 1.25 * Added a very primitive mime.types file in examples/ directory.
124 nmav 1.21
125 nmav 1.20 ** Changes from 0.0.4 to 0.0.5 - 02/10/2002
126 nmav 1.18 * If a requested CGI is not accesible then send 404 not found, instead
127     of trying to execute it.
128 nmav 1.19 * Corrected several stuff in HIC CGI handler. This allows Cookies,
129     POST data and Queries to work properly.
130 nmav 1.18
131 nmav 1.17 ** Changes from 0.0.3 to 0.0.4 - 30/09/2002
132 nmav 1.14 * Added support for If-Range, If-Match, If-None-Match HTTP/1.1 header
133     fields. The server also generates ETag headers for static content using
134 nmav 1.15 the last modified field of the file, and the file size. This makes
135     Hydra cache friendly.
136 nmav 1.16 * Added support for multiple HIC threads. This gives a boost to script generation
137 nmav 1.22 since they are no longer generated sequentially.
138 nmav 1.14
139 nmav 1.13 ** Changes from 0.0.2 to 0.0.3 - 28/09/2002
140 nmav 1.11 * Added support for dynamic modules that handle CGIs
141     internally (HIC). That way Hydra can run PHP.
142     * Fixes in CGI execution. CGIs that are not passed from aliasing
143     functions now properly set PATH_INFO and PATH_TRANSLATED.
144     (Needs further cleanup).
145 nmav 1.12 * Cleaned up SSL support. Now hydra can be compiled even if gnutls
146     is not available.
147 nmav 1.11
148 nmav 1.9 ** Changes from Boa/0.94.13 to Hydra/0.0.2 - 26/09/2002
149 nmav 1.2 * Added support for SSL 3.0 and TLS 1.0 protocols.
150     * Added support for multiple CPU's by making the server
151     run over a pool of threads.
152     * Changed the file caching code. The mmap() calls are cached until
153     the mmap list table is full.
154     * Added support for HTTP/1.1 ranges.
155 nmav 1.4 * Added support for hostname based virtual hosting.
156 nmav 1.5 Also changed the semantics of Alias, ScriptAlias and Redirect, to
157     take advantage of the host based virtual hosting.
158 nmav 1.3 * Added support for the TCP_CORK tcp option in linux.
159     * Cleaned up the CGI handling (gunzip, indexer are treated as CGIs)
160 nmav 1.10 * Enhanced grammar to handle 3 and 4 argument options.
161 nmav 1.7 * Added support for multiple directory indexes.
162     * Dropped support for gunzip.
163 nmav 1.8 * Use automake to create the distribution.
164 nmav 1.2
165 nmav 1.1 ** Changes from 0.94.12 to 0.94.13
166     * Change many instances of log_error_mesg + exit to DIE macro
167     * Change all instance of log_error_mesg (without exit) to WARN macro
168     * do a much better job of checking return values from malloc and
169     especially strdup.
170     * check results of calling umask and getrlimit
171     * server_s is no longer a global int
172     * check results of fork via switch instead of if (fork())
173     * check for getopt.h and include it if found
174     * remove unused #defines, and add WARN macro, and replace
175     many calls to log_error_mesg(..) with WARN macro
176     * fix bug in get_commonlog_time where time_offset calculation was
177     the opposite of what it should be ('-' and '+' were swapped)
178     * fix compatability bug with old and newer versions of flex/yacc
179     * add check for AC_FUNC_MMAP to configure.in
180     * fix really lame thinko in normalize_path, which would prepend the
181     results of earlier calls to results from later calls
182     * Add MaxConnections, a configuration directive which allows the
183     user to specify the maximum number of connections that Boa will
184     accept concurrently.
185     * add SERVER_ADDR and REQUEST_URI to environment of CGI
186     * handle SIGBUS during writes of data that has been memory mapped
187     * minor optimization in select.c that prevents DEAD requests from
188     being added to the block set
189     * fix bug in CGI environment script_name - closes sf.net bug #576725
190     * make 'status' variable local to requests.c, not local to every file
191     by forgetting to declare 'extern' in globals.h :-|
192     * make getsockname non-fatal, and do it every time because we may
193     need it for the CGI
194     * some minor refactoring optimizations in hash.c
195    
196     ** Changes from 0.94.11 to 0.94.12
197     * Renamed Changelog ChangeLog, and moved up to top-level directory
198     * Next 3 items due in part or whole thanks to
199     Liam Widdowson
200     * when printf'ing a pid type, force to int, because it could be
201     something else on other platforms. Should probably change it to
202     a long, and use that.
203     * backported chroot commandline support from 0.95
204     * backported support for strdup, strstr, alphasort, and scandir
205     from 0.95
206     * Fixed src/Makefile.in -- it didn't remove index_dir.o
207     * backport create_temporary_file from 0.95
208     (instead of using tmpnam)
209     * Allow non-standard date format 31 September 2000 23:59:59 GMT
210     Patch by Landon Curt Noll
211     * Skip whitespace before HTTP/major.minor
212     Adapted patch from Landon Curt Noll
213     * open /dev/null first thing (affects chrooting)
214     * properly handle sigalrm -- use sigalrm_flag and sigalrm_run
215     instead of handling the signal in the signal handler
216     * update manpage slightly
217     * send 400 BAD Request when resource does not start with '/'
218     * add grp.h to boa.h's includes -- remove from boa.c and config.c
219     * removed duplicate header includes from boa.c, config.c, get.c,
220     ip.c, request.c, response.c
221     * factor out creating the server socket and dropping privs
222     into create_server_socket and drop_privs
223     * type all functions in boa.c (except main) as static
224     * set umask after opening /dev/null
225     * tie stdin/stdout to /dev/null before commandline parse
226     * removed old, unused chroot code
227     * move builds_needs_escape earlier in the startup
228     * move fork later in the startup
229     * type all c_set_* as static in config.c
230     * don't bother trying to change uid/gid (or error if the
231     requested uid/gid doesn't exist) if not UID 0
232     * return more appropriate error code when foo.html gives
233     access denied, but foo.html.gz gives some other error
234     (essentially report error associated with foo.html, not foo.html.gz)
235     * send NOT Implemented when an unknown method is attempted
236     * always attempt a 32k read right before close
237     (stopgap until blackhole can be merged)
238     * allow more than 1 space in logline between method, resource,
239     and http version
240     * don't use inline functions
241     * update configure.in so that autoconf 2.50 doesn't complain (as much)
242     * properly use VPATH and srcdir according to autoconf docs
243     * change curly-braces to parentheses in Makefilein
244     * use $^ instead of manually listing the dependencies in Makefile.in
245     * remove tests section in Makefile.in
246     * write tags not TAGS in Makefile.in
247     * Add gethostbyname and inet_aton to function checks
248     * Add code from 0.95 which checks for socket in -lsocket,
249     inet_aton in -lresolv, and gethost{by}name in -lnsl
250     * Also remove broken bc-based "how big is an unsigned int" checks:
251     assume minimum of 32 bits and check in escape.c at runtime.
252     * Added new file: README.chroot.solaris, based on a
253     modified version by Liam Widdowson
254     * Add check_struct_for.m4, which allows us to check a structure
255     for a member (found at http://www.gnu.org/software/ac-archive/
256     authored by Wes Hardaker
257     * Call "aclocal -I ." to rebuild aclocal.m4
258     * Using new check-struct-for-member autoconf macro, check
259     for tm_gmtoff and tm_zone in struct tm -- useful in
260     portability tests for localtime.
261     * Also check sockaddr_in for structure sin_len so we can set
262     it properly.
263     * index_dir.c (which ends up in boa_indexer) can now be compiled
264     with USE_LOCALTIME, and if so, it will report the local time
265     using the timezone name. Otherwise it uses UTC time and UTC
266     timezone designation.
267     * fix buglet in mmap_cache.c which shows up when under
268     heavy load by many different files.
269     Found and squashed by Michal Kara
270     * normalize paths on Aliases, log files, server root, dirmaker
271     This makes sure that paths are 'absolute'
272     * don't generate DOCUMENT_ROOT or SERVER_ROOT,
273     CGIs have no business knowing that information
274     * if CGI, chdir to the cgi's root path
275     Bug found by Matt Callaway
276     * remove ChrootPath and PidFile directives from the parser
277     (they aren't used anyway)
278     * keep track of maximum file descriptor in use to optimize call
279     to select()
280     * apply IPv6 patch from Jari Korva
281     * optimize keep-alive copy data routine
282     * try to use memcpy instead of strcpy/strcat in more places (alias.c)
283     * update .depend file
284     * use fcntl + GET_FL to get a file descriptor's flags, then
285     add or remove only the bits we want to set. This prevents
286     accidentally setting or unsettings bits we don't have anything
287     to do with inadvertantly. (removed, at least temporarily.
288     Show me a system where it is needed -- LRD)
289     * make sure to call FD_ZERO when we handle a restart
290     * in read.c, don't call boa_perror on read failure -- socket is
291     dead or messed up anyway, no reason to try to write to it.
292     * explicit .SUFFIXES in Makefile.in
293     * boa.objdump target added
294     * use @MAKE_SET@ (for when $(MAKE) != "make")
295     * add -Wundef -Wwrite-strings -Wredundant-decls -Winline to GCC_FLAGS
296     * change Paul Phillips' and Larry Doolittle's emails in source
297     * add --disable-debug, --enable-profile, --with-dmalloc, and --with-efence
298     * test for failed-but-return-was-successful setuid:
299     http://www.securityfocus.com/bid/1322
300     * use _exit not exit in CGI child
301     * always place new keepalive request on blocked list, we can't be
302     sure of the state of the active list, and since enqueue places
303     things at the *front* of the list, it doesn't do us much good
304     to place the new request on the active list anyway.
305     * update some Copyright statements for 2002
306     * When comparing the uri to an alias, only compare if
307     the uri length is greater than or equal to the length of the alias
308     * in init_script_alias, make sure to check for document_root before
309     trying to use it
310     * script_name is now just a copy of the request, rather
311     than some complicated variation on the pathname
312     * change the way the CGI environment is handled.
313     Now, it is allocated at request allocation time, and exists
314     throughout the life of the structure.
315     * check memory allocations, etc.. when creating the static
316     CGI environment and when making new CGI environment variables
317     * wait until process_option_end to call unescape_uri, clean_pathname,
318     and translate_uri
319     * remove debian package information
320     * move RedHat packaging information to contrib
321     * remove tests -- they weren't usable anyway
322     * add some new hash routines, and use djb2 (a variant on a
323     hash algorithm popularized by Dan J. Bernstein)
324     * a side-effect of the new hash routines is a bugfix,
325     involving negative return values from hash routines.
326     This has been fixed.
327     * add a routine, show_hash_stats, which is called with other
328     statistical output via sigalarm
329     * remove some duplicate prototypes from config.c
330     * make simple_itoa take an unsigned int
331     * try to make NOBLOCK handling in compat.h compatible with Solaris
332     * make sure to update current_time before calling signal handlers
333     * alter primary loop to make sure that select gets called even
334     when there are requests that are not blocking, and call fdset_update
335     and process_requests (when appropriate) after signal handlers but
336     before select to make sure that blocked requests are still handled
337     by select after a sighup. (Thanks to Karl Olsen)
338     * pull select loop into select.c
339     * poll server socket once per active connection
340     * add send_r_service_unavailable and use it when appropriate
341     * state uptime in seconds at normal program termination
342     * include sys/fcntl.h if it is found by configure
343     * fix POST bug where a content-length < 0 would cause Boa to
344     consume its full share of CPU until killed
345     Bug report by Landon Curt Noll
346     * add CGIPath configuration variable
347     based upon a patch by Landon Curt Noll
348     * add function boa_atoi, which wraps atoi, but does not
349     accept negative values. Additionally, it checks to make sure
350     the converted value and the original value are the same, avoiding
351     issues like "124.3" -> "123" and "123abc" -=> "123".
352     Either a value is an int or it isn't - no middle ground.
353     * use boa_atoi to convert content-length from client.
354     * add new #define - SINGLE_POST_LIMIT_DEFAULT, which defines
355     (in bytes) the *default* single_post_limit.
356     * single_post_limit is now in bytes.
357     * when adding aliases, only "normalize" paths that start
358     with "./" - this is a departure from previous behavior
359     * add "?" to the list of characters that it is safe to leave unescaped
360     * clean up Makefile.in of no-longer-pertinent comments
361     * add send_r_bad_gateway and use it
362     * tie stderr to either cgi_log_fd or devnullfd - either way
363     make sure stderr is a valid filehandle before cgi execution
364     * cgi_env is no longer allocated, it's part of the struct now
365     * fix bug in CgiPath logic
366     * when unable to allocate memory for an environment variable, log it
367     * add clear_common_env, which de-allocates the cgi_common_env stuff
368     [NEVER USE THIS outside of a terminal signal handler!]
369     * don't be so wasteful of memory in normalize_path
370     * adapted fix for alias expansion from Brieuc Jeunhomme
371    
372     ** Changes from 0.94.10.1 to 0.94.11
373     * use LIBS in Makefile.in (which propagates from autoconf)
374     * properly free memory allocated by scandir in index_dir.c
375     * rearrange some header files and includes
376     * on reads and writes, don't check for -1, check for < 0
377     * include fix by William Meadows
378     for escape.c which fixes segfaults due to improper allocation
379     * above fix by William Meadows no longer needed;
380     escape.c and escape.h rewritten by Larry Doolittle -- requires
381     at least 32 bit words, but is correct (jdn's 1st attempt was faulty)
382    
383     ** Changes from 0.94.10 to 0.94.10.1
384     * Actually update the SERVER_VERSION in src/defines.h
385    
386     ** Changes from 0.94.9 to 0.94.10
387     * Fixes escaping rules
388     * Fixes segfault when directory_index is undefined and
389     directory needs to be generated
390     * adds dummy signal handlers for SIGUSR1 and SIGUSR2 (Closes SF #425921)
391     * Update documentation regarding mime.types (Closes Debian #69991)
392     * Make sure documentation builds (Closes Debian #110818)
393    
394     ** Changes from 0.94.8.3 to 0.94.9
395     * src/Makefile.in updated to take CFLAGS, LIBS, and LDFLAGS
396     from autoconf
397     * Update escaping rules with latest RFC
398     * unescape_uri skips fragments and also stop parsing at '?'
399     * Don't accept fd over FD_SETSIZE in request.c:get_request
400     * use backported documentation from 0.95
401     * make sure POST fd gets closed even on client cancel
402     * use backported index_dir.c from 0.95
403     * support subdirectories in ScriptAlias directories
404     * add SinglePostLimit (int, in Kilobytes) to config system
405     * check for ENOSPC on body write
406     * use environment variable TMP (or "/tmp" if not available),
407     and chdir there when boa exits.
408     * add 1-time-only hack to make a 32kB read at the end of a request
409     on POST or PUT
410     * close unused file descriptors (/dev/null in boa.c, and the
411     unused part of the pipes call in cgi.c)
412     * made Makefile.in VPATH happy
413    
414     ** Changes from 0.94.8.2 to 0.94.8.3
415     * Move unescape_uri *before* clean_pathname to prevent
416     encoding of / and .. in pathname
417     * wrap execution of GUNZIP in cgi.c with #ifdef GUNZIP
418     * stop parsing when fragment found in URL ('#')
419    
420     ** Changes from 0.94.8.1 to 0.94.8.2
421     * close pipes[1] in child and generate HTTP_REFERER environment
422     variable in cgi.c
423     * Minor changes to the Debian package
424    
425     ** Changes from 0.94.8 to 0.94.8.1
426     * Change umask call from (umask(0600)) to (umask(~0600))
427    
428     ** Changes from 0.94.7 to 0.94.8
429     * Fix major thinko in temp file permissions
430     * unlink temporary file immediately following creation
431     * implement maximum # of active connections at 10 less than RLIMIT_NOFILE
432     to avoid or eliminate crashes resulting from running out of
433     file descriptors
434     * Fix thinko in POST
435    
436     ** Changes from 0.94.6 to 0.94.7
437     * STDIN and STDOUT are now tied to /dev/null
438     * sets PATH_MAX to 2048 if not defined (for Hurd)
439     * core dumps (should never happen) would be located in /tmp
440     * alter behavior when select gets a EBADF
441     * add translation for the \" char -> &quot;
442     * remove use of sys_errlist. Use perror.
443     * better makedist.sh (still a stupid program though)
444    
445     ** Changes from 0.94.5 to 0.94.6
446     * Removed doc++ commenting
447     * Removed erroneous debugging statments
448     * Move some stuff out of config.c (read_config_file) to boa.c
449     * Altered some of fixup_server_root()
450     * Bug fix in get.c re: automatic gunzip
451     * Added some stubs for chroot code (*not* ready yet)
452    
453     ** Changes from 0.94.4 to 0.94.5
454     * Alteration of most of the comments and such for doc++ use
455     * Fixed buffer overflow in alias.c
456     * Fixed buffer underflow in util.c
457    
458     ** Changes from 0.94.3 to 0.94.4
459     * Better escaping of data to user, both for HTTP headers and HTML body
460     * Proper escaping of output in CGI example perl scripts
461    
462     ** Changes from 0.94.0 to 0.94.2
463     * Fixed obnoxious pipeline bug
464     * Fixed (sorta) a compilation/core bug for *BSD systems
465     Original code by Thomas Neumann
466     * Moved to GPLv2
467     * Changed manpage to section 8
468     * boa.sgml now references a .png file instead of evil .gif
469    
470     ** Changes from 0.93.19.2 to 0.94.0
471     * Added UseGMT to the configuration parser
472     * util.c commonlog now logs in Apache-style commonlog time format
473     * Remove SO_SNDBUF on-start message
474    
475     ** Changes from 0.93.19 to 0.93.19.2
476     * Changed to combined log (from NCSA access_log format) ala Drew Streib
477     * Altered POST cgi code to handle bug in Netscape
478     * SO_SNDBUF changes by Larry
479    
480     ** Changes from 0.93.17.2 to 0.93.19 (all 0.93.18.x changes inclusive)
481     * Update of some copyright statements for 99
482     * Replacement of sprintf with strlen/memcpy or strcpy/strcat
483     wherever possible
484     * Significant rearrangement in alias.c, minor functional differences
485     (some CGI environment variables handled differently)
486     * Removal of die function. Replace with log_err_mesg and exit.
487     * initial IPv6 stubs and support
488     * Move #include "config.h" to top of boa.h where it will do some good
489     * Stubs and functions for strstr and strdup
490     * Seperation of buffer code into it's own file
491     * Significant changes to cgi.c et al (cgi_header.c, etc...)
492     * Speed patches by removal of "extra" calls to time(): Use global variable!
493     * pipelining changes... it works now.
494     * require content-length from clients (ala rfc1945)
495     * alter body_read and body_write to work more efficiently with known content-length
496     * move read(2) part to *after* parsing...
497     * added support for additional header message in send_redirect_temp
498     * change use of NO_ZERO_FILL_LENGTH to offsetof() use
499     * Remove SO_REUSEADDR setting on each client socket, Paul Saab
500     * Avoid SO_SNDBUF setting if possible
501     * Large quantities of otherwise not-insignificant changes
502    
503     ** Changes from 0.93.17.2 to 0.93.17.3
504     * Put on-the-fly directories back in, stripped down from the 0.92 version
505     * Fixed DocumentRoot, ServerAdmin and ServerName null-value handling in
506     CGI environment generation
507     * Fixed argument order in Script* directives (bug introduced in 0.93.17.2)
508     * Got rid of MAX_CGI_VARS because it was not being used consistently, or
509     for that matter, at all, really.
510     * Added some more FASCIST_LOGGING to cgi.c
511     * Minor mmap patch by LRD for request.c
512    
513     ** Changes from 0.93.17.1 to 0.93.17.2
514     * Added "Listen" directive for server bind address, as most recently
515     suggested by David N. Welton
516     * Put virtualhost feature in, was experimental in 0.92q
517    
518     ** Changes from 0.93.16.2 to 0.93.17.1
519     * New config file parser (supposed to be more maintainable) (LRD)
520     * Support for "|command" and ":host:port" syntax for logfiles (untested) (LRD)
521    
522     ** Changes for the 0.93 version **
523     * Huge quantities of changes
524     * keepalive Bugfix in 0.93.16.2 by Jon Nelson
525     report by Craig Silverstein of Google fame.
526     * patch for config.h by Craig Silverstein
527     * fixed "Parent Directory" problem in boa_indexer for title "/"
528     (Debian bug #36165)
529     * More Craig Silverstein
530     modifications, namely:
531     ErrorLog (if omitted, print to stderr)
532     DocumentRoot (if omitted, can only server user-dir files)
533     DirectoryIndex (if omitted, always use DirectoryMaker)
534     MimeTypes (if omitted, don't load -- users can use AddType instead)
535    
536    
537     ** Changes from v0.92o to v0.92p **
538    
539     * Documented misbehavior of CGI, SIGHUP, short aliases, stale dircache.
540     * Documented how to patch signals.c for use on SunOS.
541     * Closed file descriptor leak when redirecting a bare directory URL to
542     one with an appended "/".
543     * Closed potential file descriptor leak if errors encountered generating
544     on-the-fly index.
545     * Cleaned up include file handling to be simultaneously compatible with
546     Linux, SunOS, HP-UX, and AIX.
547     * Supress message body for codes 302, 400, 403, 404, 500, and 501 if
548     incoming request is "HEAD".
549    
550     ** Changes from v0.91 to v0.92o **
551     (0.92o released 27 December, 1996)
552    
553     * Maintenance handover from Paul Phillips to Larry Doolittle
554     * Changed (char)NULL to '\0'
555     * Cleaned up signal handler prototypes in signals.c
556     * Modified handling of CGI environment variable PATH_TRANSLATED,
557     should now work the same as NCSA.
558     * More conservative buffer size in add_cgi_env()
559     * Build argv list for a CGI script according to spec
560     * Speedup process_header_line, eliminate potential memory leak
561     * Occasional spelling fixes and lint removal
562     * Added REMOTE_PORT env var for CGI scripts, to allow easy ident lookups
563     * Changed rfc822 time format
564     * Log timeouts and broken connections
565     * Fix mime suffix handling for filenames with multiple "."s
566     * Initialize conn->time_last, fixes bug with rapid-fire connections
567     * Performance tweak to req_write()
568     * Changed http_version from float to char[8]
569     * Rewrote on-the-fly directory generation; it works now
570     * Added user configurable dircache directory in boa.conf
571     * Fixed "simple" response bugs, including incorrect CGI handling
572     * Keepalive (HTTP/1.1 draft) support, mostly by Jon Nelson
573     * Close data_fd in 304 Not Modified flow of control
574     * Switch socket flags to non-blocking before cgi handoff
575     * Try to handle errno properly in the face of multiple errors
576     * Close fd's of all other transactions before cgi handoff
577     * Move real work for sighup and sigchld out of signal handler
578     * Fix free(req->cgi_env) in request.c
579     * Response message cleanup - better match to HTML-2.0 DTD
580     * Experimental Virtual Host code from Russ Nelson
581     * Expand buffer for escaped URI in init_get()
582     * SIGTERM triggers lame duck mode until all pending transactions complete
583     * Close and unlink temp file for POST in parent process
584    
585     ** Changes from v0.90 to v0.91 **
586    
587     * Cleaned up main while loop
588     * Optimized request line parsing
589     * Added state machine for header reads -- necessary to deal wtih
590     possibility of obtaining header data in multiple reads. This
591     also allows interactive use of server.
592     * Added 500/501 return codes for various conditions
593    
594     ** v0.90 **
595    
596     * Initial release
597    

webmaster@linux.gr
ViewVC Help
Powered by ViewVC 1.1.26