/[hydra]/hydra/ChangeLog
ViewVC logotype

Annotation of /hydra/ChangeLog

Parent Directory Parent Directory | Revision Log Revision Log


Revision 1.49.2.14 - (hide annotations)
Thu Jan 9 14:32:04 2003 UTC (18 years, 6 months ago) by nmav
Branch: hydra_0_1_0_patches
Changes since 1.49.2.13: +3 -1 lines
Corrected bug in KeepAlive usage in HTTP/1.1, which made the
server to ignore the value sent by the client.

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

webmaster@linux.gr
ViewVC Help
Powered by ViewVC 1.1.26