CHANGES revision c10fe96ac7d024918e26af6c8ba5470273b75bb2
fa9e4066f08beec538e775443c5be79dd423fcabahrensChanges with Apache 2.0.33-dev
fa9e4066f08beec538e775443c5be79dd423fcabahrens *) Merged in changes to mod_ssl up through 2.8.7-1.3.23.
fa9e4066f08beec538e775443c5be79dd423fcabahrens [Ralf S. Engelschall, Cliff Woolley]
ea8dc4b6d2251b437950c0056bc626b311c73c27eschrock *) mod-include: make it handle flush'es and fix the 'false-alarm'
fa9e4066f08beec538e775443c5be79dd423fcabahrens [Justin Everkrantz, Brian Pane, Ian Holsman]
fa9e4066f08beec538e775443c5be79dd423fcabahrens *) ap_get_*_filter_handle() functions to allow 3rd party modules
fa9e4066f08beec538e775443c5be79dd423fcabahrens to lookup filter handles so they can bypass the filter name
fa9e4066f08beec538e775443c5be79dd423fcabahrens lookup when adding filters to a request (via ap_add_*_filter_handle())
fa9e4066f08beec538e775443c5be79dd423fcabahrens [Ryan Morgan <rmorgan@covalent.net>]
fa9e4066f08beec538e775443c5be79dd423fcabahrens *) Fix for multiple file buckets on Win32, where the first file
fa9e4066f08beec538e775443c5be79dd423fcabahrens bucket would cause the immediate closure of the socket on any
fa9e4066f08beec538e775443c5be79dd423fcabahrens non-keepalive requests. [Ryan Morgan <rmorgan@covalent.net>]
fa9e4066f08beec538e775443c5be79dd423fcabahrens *) Correct Win32 failure of mmap of a segment beyond start of the
fa9e4066f08beec538e775443c5be79dd423fcabahrens file; fixes large SSL and similar transfers. [William Rowe]
8d18220deb04ec7b12410cd90deb4d45e66d49bfMark J Musante *) Implement apr_proc_detach changes and allow -DNO_DETACH in the
daec38ecb4fb5e73e4ca9e99be84f6b8c50c02faJoe Stein multi-process mode to not "daemonize" while detaching from the
9dc3941c735ef88de46e850f745aa556d3a071a5Sašo Kiselkov controlling terminal. This is necessary for Apache to work with
c3d26abc9ee97b4f60233556aadeb57e0bd30bb9Matthew Ahrens process-management tools like AIX's "System Resource Controller"
fa9e4066f08beec538e775443c5be79dd423fcabahrens as well as Dan Bernstein's "daemontools".
fa9e4066f08beec538e775443c5be79dd423fcabahrens [Jos Backus <josb@cncdsl.com>, Aaron Bannert]
fa9e4066f08beec538e775443c5be79dd423fcabahrens *) Convert mod_auth_digest to use the new apr_global_mutex_t
fa9e4066f08beec538e775443c5be79dd423fcabahrens type. [Aaron Bannert]
fa9e4066f08beec538e775443c5be79dd423fcabahrens *) fix bug in mod-include where it wouldn't send a unmatched
fa9e4066f08beec538e775443c5be79dd423fcabahrens part if it was at the end of a bucket [Ian Holsman]
0713e232b7712cd27d99e1e935ebb8d5de61c57dGeorge Wilson *) worker MPM: Improve logging of errors with the interface between
2e4c998613148111f2fc5371085331ffb39122ffGeorge Wilson the listener thread and worker threads. [Jeff Trawick]
0f7643c7376dd69a08acbfc9d1d7d548b10c846aGeorge Wilson *) Some browsers ignore cookies that have been merged into a
0f7643c7376dd69a08acbfc9d1d7d548b10c846aGeorge Wilson single Set-Cookie header. Set-Cookie and Set-Cookie2 headers
09c9d376e8ccb8fbba74f33cc268964464092b62George Wilson are now unmerged in the http proxy before being sent to the
13506d1eefbbc37e2f12a0528831d9f6d4c361d7maybee client. [Graham Leggett]
13506d1eefbbc37e2f12a0528831d9f6d4c361d7maybee *) Fix a problem with proxy where each entry of a duplicated
16a4a8074274d2d7cc408589cf6359f4a378c861George Wilson header such as Set-Cookie would overwrite and obliterate the
16a4a8074274d2d7cc408589cf6359f4a378c861George Wilson previous value of the header, resulting in multiple header
16a4a8074274d2d7cc408589cf6359f4a378c861George Wilson values (like cookies) going missing.
8363e80ae72609660f6090766ca8c2c18aa53f0cGeorge Wilson [Graham Leggett, Joshua Slive]
16a4a8074274d2d7cc408589cf6359f4a378c861George Wilson *) Add the server-limit and thread-limit values to the scoreboard
16a4a8074274d2d7cc408589cf6359f4a378c861George Wilson for the sake of third-party applications.
16a4a8074274d2d7cc408589cf6359f4a378c861George Wilson [Adam Sussman <myddryn@vishnu.vidya.com>]
2a104a5236475eb73aa41eaaf3ed9f3ccbe0ca55Alex Reece *) Fix segfault when proxy recieves an invalid HTTP response [Ian Holsman]
b1be2892dd07cf9a97d47ad06334cdc879196aafMatthew Ahrens *) OS/390: Get make install to properly copy DSO modules.
2a104a5236475eb73aa41eaaf3ed9f3ccbe0ca55Alex Reece [Jeff Trawick]
2a104a5236475eb73aa41eaaf3ed9f3ccbe0ca55Alex Reece *) Win32: Fix bug in mod_status with displaying "Restart Time"
2a104a5236475eb73aa41eaaf3ed9f3ccbe0ca55Alex Reece and "Server uptime".
2a104a5236475eb73aa41eaaf3ed9f3ccbe0ca55Alex Reece [Bill Stoddard]
2a104a5236475eb73aa41eaaf3ed9f3ccbe0ca55Alex Reece *) Fix IPv6 name-based virtual hosts. [Jeff Trawick]
2a104a5236475eb73aa41eaaf3ed9f3ccbe0ca55Alex Reece *) Introduce AddOutputFilterByType directive. [Justin Erenkrantz]
2a104a5236475eb73aa41eaaf3ed9f3ccbe0ca55Alex Reece *) Fix DEBUG_CGI support in mod_cgi. PR 9670, 9671.
22e30981d82a0b6dc89253596ededafae8655e00George Wilson [David MacKenzie <djm@pix.net>]
22e30981d82a0b6dc89253596ededafae8655e00George Wilson *) Fix incorrect check for script_in in mod_cgi. PR 9669.
2e4c998613148111f2fc5371085331ffb39122ffGeorge Wilson [David MacKenzie <djm@pix.net>]
22e30981d82a0b6dc89253596ededafae8655e00George Wilson *) Fix segfault and display error when SSLMutex file can not be
22e30981d82a0b6dc89253596ededafae8655e00George Wilson created. [Adam Sussman <myddryn@vishnu.vidya.com>]
22e30981d82a0b6dc89253596ededafae8655e00George Wilson *) Add reference counting to mod_mem_cache cache objects to
22e30981d82a0b6dc89253596ededafae8655e00George Wilson better manage removing objects from the cache.
22e30981d82a0b6dc89253596ededafae8655e00George Wilson [Bill Stoddard]
22e30981d82a0b6dc89253596ededafae8655e00George Wilson *) Change the verbage on the ScoreBoardFile in our default configs.
22e30981d82a0b6dc89253596ededafae8655e00George Wilson Also change the default to be commented out (unspecified) so we
09c9d376e8ccb8fbba74f33cc268964464092b62George Wilson get anonymous shared memory by default. [Aaron Bannert]
2e4c998613148111f2fc5371085331ffb39122ffGeorge Wilson *) Implement new ScoreBoardFile directive logic. This affects how
2e4c998613148111f2fc5371085331ffb39122ffGeorge Wilson we create the scoreboard's shared memory segment. If the directive
2e4c998613148111f2fc5371085331ffb39122ffGeorge Wilson is present, a name-based segment is created. If the directive is
2e4c998613148111f2fc5371085331ffb39122ffGeorge Wilson not present, first an anonymous segment is created, and if that
2e4c998613148111f2fc5371085331ffb39122ffGeorge Wilson fails, a name-based segment is created from a file of the name
2e4c998613148111f2fc5371085331ffb39122ffGeorge Wilson DEFAULT_SCOREBOARD. This gives third-party applications the
2e4c998613148111f2fc5371085331ffb39122ffGeorge Wilson ability to access our scoreboard. [Aaron Bannert]
2e4c998613148111f2fc5371085331ffb39122ffGeorge Wilson *) Allow mod_deflate to work with non-GET requests and properly send
2e4c998613148111f2fc5371085331ffb39122ffGeorge Wilson Content-Lengths. [Sander Striker <striker@apache.org>]
2e4c998613148111f2fc5371085331ffb39122ffGeorge Wilson *) Fix ap_directory_merge() to correctly merge configs when there is
2e4c998613148111f2fc5371085331ffb39122ffGeorge Wilson no <Directory /> block. [Justin Erenkrantz, William Rowe]
2e4c998613148111f2fc5371085331ffb39122ffGeorge Wilson *) Remove spurious debug messsages that are normal under HTTP
2e4c998613148111f2fc5371085331ffb39122ffGeorge Wilson keep-alive logic. [Jeff Trawick, Justin Erenkrantz]
0713e232b7712cd27d99e1e935ebb8d5de61c57dGeorge Wilson *) Fix a bug in mod_cgid that would prevent proper shutdown death
b24ab6762772a3f6a89393947930c7fa61306783Jeff Bonwick of the cgid process. [Aaron Bannert]
0713e232b7712cd27d99e1e935ebb8d5de61c57dGeorge Wilson *) Add signal handling back in to the worker MPM for the one_process
0713e232b7712cd27d99e1e935ebb8d5de61c57dGeorge Wilson (-X, -DDEBUG, -DONE_PROCESS) case. [Aaron Bannert]
0713e232b7712cd27d99e1e935ebb8d5de61c57dGeorge Wilson *) Performance: Reuse per-connection transaction pools in the
0713e232b7712cd27d99e1e935ebb8d5de61c57dGeorge Wilson worker MPM, rather than destroying and recreating them. [Brian Pane]
d6e555bdd793b8bc8fe57d5f12c3d69c813d0661George Wilson *) Remove all signals from the worker MPM's child process. Instead,
d6e555bdd793b8bc8fe57d5f12c3d69c813d0661George Wilson the parent uses the Pipe of Death for all communication with the
80eb36f241abf8c076119fb4c49a55fd61ebc710George Wilson child processes. [Ryan Bloom]
d6e555bdd793b8bc8fe57d5f12c3d69c813d0661George WilsonChanges with Apache 2.0.32
b515258426fed6c7311fd3f1dea697cfbd4085c6Matthew Ahrens *) mod_negotiation: ForceLanguagePriority now uses 'Prefer' as the
d6e555bdd793b8bc8fe57d5f12c3d69c813d0661George Wilson default if the directive is not specified. This mirrors older
d6e555bdd793b8bc8fe57d5f12c3d69c813d0661George Wilson behavior without changes to the httpd.conf. [William Rowe]
d6e555bdd793b8bc8fe57d5f12c3d69c813d0661George Wilson *) Win32: solve the win32 service problems in 2.0.31-alpha, by fixing
8363e80ae72609660f6090766ca8c2c18aa53f0cGeorge Wilson the service, mpm and logging code, and bugs in apr_file_open_stderr
d6e555bdd793b8bc8fe57d5f12c3d69c813d0661George Wilson and apr_file_dup2 functions. Win2K/XP services have no handles
d6e555bdd793b8bc8fe57d5f12c3d69c813d0661George Wilson associated for stdin/out/err, which caused unpredictable behavior
80eb36f241abf8c076119fb4c49a55fd61ebc710George Wilson in the prior release. [William Rowe, Bill Stoddard]
80eb36f241abf8c076119fb4c49a55fd61ebc710George Wilson *) Win32: simplify the Application Event Log messages, since there isn't
80eb36f241abf8c076119fb4c49a55fd61ebc710George Wilson likely to be 'more information in the error log' before an error log
80eb36f241abf8c076119fb4c49a55fd61ebc710George Wilson has been opened. [William Rowe]
80eb36f241abf8c076119fb4c49a55fd61ebc710George Wilson *) Win32: substantial cleanup to the mpm_winnt code for legibility and
80eb36f241abf8c076119fb4c49a55fd61ebc710George Wilson to follow the program flow of other MPMs. [Ryan Bloom, William Rowe]
0713e232b7712cd27d99e1e935ebb8d5de61c57dGeorge Wilson *) Win32: apache -k shutdown now behaves like apache -k stop.
80eb36f241abf8c076119fb4c49a55fd61ebc710George Wilson [Bill Stoddard]
80eb36f241abf8c076119fb4c49a55fd61ebc710George Wilson *) Fix prefork to not kill the parent if a child hits a resource shortage
80eb36f241abf8c076119fb4c49a55fd61ebc710George Wilson on accept(). [Greg Ames]
0713e232b7712cd27d99e1e935ebb8d5de61c57dGeorge Wilson *) Fix seg faults that occur when what should be the httpd request line
0713e232b7712cd27d99e1e935ebb8d5de61c57dGeorge Wilson starts with \r\n followed by garbage. [Greg Ames]
0713e232b7712cd27d99e1e935ebb8d5de61c57dGeorge Wilson *) Allow statically linked support binaries with the new
d6e555bdd793b8bc8fe57d5f12c3d69c813d0661George Wilson --enable-static-support flag, and enable this behavior in
0713e232b7712cd27d99e1e935ebb8d5de61c57dGeorge Wilson the binbuild script. Also add a new --enable-static-htdbm
0713e232b7712cd27d99e1e935ebb8d5de61c57dGeorge Wilson flag. [Aaron Bannert]
0713e232b7712cd27d99e1e935ebb8d5de61c57dGeorge Wilson *) Allow mod_autoindex to serve symlinks if permitted and attempt to
0713e232b7712cd27d99e1e935ebb8d5de61c57dGeorge Wilson do only one stat() call when generating the directory listings.
0713e232b7712cd27d99e1e935ebb8d5de61c57dGeorge Wilson [Justin Erenkrantz]
0713e232b7712cd27d99e1e935ebb8d5de61c57dGeorge Wilson *) Fix resolve_symlink to save the original symlink name if known.
0713e232b7712cd27d99e1e935ebb8d5de61c57dGeorge Wilson [Justin Erenkrantz]
0713e232b7712cd27d99e1e935ebb8d5de61c57dGeorge Wilson *) Be a bit more sane with regard to CanonicalNames. If the user has
2e4c998613148111f2fc5371085331ffb39122ffGeorge Wilson specified they want to use the CanonicalName, but they have not
2e4c998613148111f2fc5371085331ffb39122ffGeorge Wilson configured a port with the ServerName, then use the same port that
2e4c998613148111f2fc5371085331ffb39122ffGeorge Wilson the original request used. [Ryan Bloom and Ken Coar]
2e4c998613148111f2fc5371085331ffb39122ffGeorge Wilson *) In core_input_filter, check for an empty brigade after
2e4c998613148111f2fc5371085331ffb39122ffGeorge Wilson APR_BRIGADE_NORMALIZE(). Otherwise, we can get segfaults if a
2e4c998613148111f2fc5371085331ffb39122ffGeorge Wilson client says it will post some data but we get FIN before any
2e4c998613148111f2fc5371085331ffb39122ffGeorge Wilson data arrives. [Jeff Trawick]
2e4c998613148111f2fc5371085331ffb39122ffGeorge Wilson *) Not being able to bind to the socket is a fatal error. We should
2e4c998613148111f2fc5371085331ffb39122ffGeorge Wilson print an error to the console, and return a non-zero status code.
0713e232b7712cd27d99e1e935ebb8d5de61c57dGeorge Wilson With these changes, all of the Unix MPMs do that correctly.
8363e80ae72609660f6090766ca8c2c18aa53f0cGeorge Wilson *) suexec: Allow HTTPS and SSL_* environment variables to be passed
8363e80ae72609660f6090766ca8c2c18aa53f0cGeorge Wilson through to CGI scripts. PR 9163
8363e80ae72609660f6090766ca8c2c18aa53f0cGeorge Wilson [Brian Reid <breid@customlogic.com>,
8363e80ae72609660f6090766ca8c2c18aa53f0cGeorge Wilson Zvi Har'El <rl@math.technion.ac.il>]
8363e80ae72609660f6090766ca8c2c18aa53f0cGeorge Wilson *) binbuild.sh: Make sure that we use the expat from our source
8363e80ae72609660f6090766ca8c2c18aa53f0cGeorge Wilson tree so that there aren't any surprises on the target machine.
8363e80ae72609660f6090766ca8c2c18aa53f0cGeorge Wilson [Jeff Trawick]
8363e80ae72609660f6090766ca8c2c18aa53f0cGeorge Wilson *) mod_cgid: Add retry logic for when the daemon can't fork fast
8363e80ae72609660f6090766ca8c2c18aa53f0cGeorge Wilson enough to keep up with new requests. Start using
8363e80ae72609660f6090766ca8c2c18aa53f0cGeorge Wilson HTTP_SERVER_UNAVAILABLE instead of HTTP_INTERNAL_SERVER_ERROR
8363e80ae72609660f6090766ca8c2c18aa53f0cGeorge Wilson when we can't talk to the daemon. [Jeff Trawick]
8363e80ae72609660f6090766ca8c2c18aa53f0cGeorge Wilson *) apxs: LTFLAGS envvar can override default libtool options. Try
8363e80ae72609660f6090766ca8c2c18aa53f0cGeorge Wilson "LTFLAGS=' ' apxs -c mod_foo.c" to see what libtool does under
8363e80ae72609660f6090766ca8c2c18aa53f0cGeorge Wilson the covers. [Jeff Trawick]
8363e80ae72609660f6090766ca8c2c18aa53f0cGeorge Wilson *) The Location: response header field, used for external
8363e80ae72609660f6090766ca8c2c18aa53f0cGeorge Wilson redirect, *must* be an absoluteURI. The Redirect directive
8363e80ae72609660f6090766ca8c2c18aa53f0cGeorge Wilson tested for that, but RedirectMatch didn't -- it would allow
8363e80ae72609660f6090766ca8c2c18aa53f0cGeorge Wilson almost anything through. Now it will try to turn an abs_path
8363e80ae72609660f6090766ca8c2c18aa53f0cGeorge Wilson into an absoluteURI, but it will correctly varf like Redirect
8363e80ae72609660f6090766ca8c2c18aa53f0cGeorge Wilson if the final redirection target isn't an absoluteURI. [Ken Coar]
8363e80ae72609660f6090766ca8c2c18aa53f0cGeorge WilsonChanges with Apache 2.0.31
8363e80ae72609660f6090766ca8c2c18aa53f0cGeorge Wilson *) Create the scoreboard (in the parent) in a global pool context,
8363e80ae72609660f6090766ca8c2c18aa53f0cGeorge Wilson so it survives graceful restarts. This fixes a SEGV during
8363e80ae72609660f6090766ca8c2c18aa53f0cGeorge Wilson graceful restarts. [Aaron Bannert]
8363e80ae72609660f6090766ca8c2c18aa53f0cGeorge Wilson *) Add a timeout option to the proxy code 'ProxyTimeout'
0713e232b7712cd27d99e1e935ebb8d5de61c57dGeorge Wilson [Ian Holsman]
fa9e4066f08beec538e775443c5be79dd423fcabahrens *) FTP directory listings are now always retrieved in ASCII mode.
fa9e4066f08beec538e775443c5be79dd423fcabahrens The FTP proxy properly escapes URI's and HTML in the generated
fa9e4066f08beec538e775443c5be79dd423fcabahrens listing, and escapes the path components when talking to the FTP
fa9e4066f08beec538e775443c5be79dd423fcabahrens server. It is now possible to browse the root directory by using
fa9e4066f08beec538e775443c5be79dd423fcabahrens a url like: ftp://user@host/%2f/ (ported from apache_1.3.24)
0713e232b7712cd27d99e1e935ebb8d5de61c57dGeorge Wilson Also, the last path component may contain wildcard characters
fa9e4066f08beec538e775443c5be79dd423fcabahrens '*' and '?', and if they do, a directory listing is created instead
fa9e4066f08beec538e775443c5be79dd423fcabahrens of a file retrieval. Example: ftp://user@host/httpd/server/*.c
fa9e4066f08beec538e775443c5be79dd423fcabahrens [Martin Kraemer]
fa9e4066f08beec538e775443c5be79dd423fcabahrens *) Added single-listener unserialized accept support to the
88ecc943b4eb72f7c4fbbd8435997b85ef171fc3George Wilson worker MPM [Brian Pane]
d6e555bdd793b8bc8fe57d5f12c3d69c813d0661George Wilson *) New Directive for mod_proxy: 'ProxyPreserveHost'. This passes
0f7643c7376dd69a08acbfc9d1d7d548b10c846aGeorge Wilson the incoming host header through to the proxied server
0f7643c7376dd69a08acbfc9d1d7d548b10c846aGeorge Wilson [Geoff <g.russell@ieee.org>]
fa9e4066f08beec538e775443c5be79dd423fcabahrens *) New Directive Option for ProxyPass. It now can block a location
fa9e4066f08beec538e775443c5be79dd423fcabahrens from being proxied [Jukka Pihl <jukka.pihl@entirem.com>]
fa9e4066f08beec538e775443c5be79dd423fcabahrens *) Don't let the default handler try to serve a raw directory. At
fa9e4066f08beec538e775443c5be79dd423fcabahrens best you get gibberish. Much worse things can happen depending
fa9e4066f08beec538e775443c5be79dd423fcabahrens on the OS. [Jeff Trawick]
a15215608b8bd90f714f6db21ee623b584607cb6Jeff Bonwick *) Change the pre_config hook to return a value. Modules can now emit
a15215608b8bd90f714f6db21ee623b584607cb6Jeff Bonwick an error message and then cause the server to quit gracefully during
a15215608b8bd90f714f6db21ee623b584607cb6Jeff Bonwick startup. This required a bump to the MMN. [Aaron Bannert]
fa9e4066f08beec538e775443c5be79dd423fcabahrens *) Fix some unix socket descriptor leaks in the handler side of
0f7643c7376dd69a08acbfc9d1d7d548b10c846aGeorge Wilson mod_cgid (the part that runs in the server process). Whack a
0f7643c7376dd69a08acbfc9d1d7d548b10c846aGeorge Wilson silly "close(-1)" in the handler too. [Jeff Trawick]
fa9e4066f08beec538e775443c5be79dd423fcabahrens *) Change the pre_mpm hook to return a value, so that scoreboard
fa9e4066f08beec538e775443c5be79dd423fcabahrens init errors percolate up to code that knows how to exit
88ecc943b4eb72f7c4fbbd8435997b85ef171fc3George Wilson cleanly. This required a bump to the MMN. [Jeff Trawick]
88ecc943b4eb72f7c4fbbd8435997b85ef171fc3George Wilson *) Add the socket back to the conn_rec and remove the create_connection
88ecc943b4eb72f7c4fbbd8435997b85ef171fc3George Wilson hook. The create_connection hook had a design flaw that did not
88ecc943b4eb72f7c4fbbd8435997b85ef171fc3George Wilson allow creating connections based on vhost info. [Bill Stoddard]
88ecc943b4eb72f7c4fbbd8435997b85ef171fc3George Wilson *) Fixed PATH_INFO and QUERY_STRING from mod_negotiation results.
88ecc943b4eb72f7c4fbbd8435997b85ef171fc3George Wilson Resolves the common case of using negotation to resolve the request
88ecc943b4eb72f7c4fbbd8435997b85ef171fc3George Wilson /script/foo for /script.cgi/foo. [William Rowe]
88ecc943b4eb72f7c4fbbd8435997b85ef171fc3George Wilson *) Added new functions ap_add_(input|output)_filter_handle to
88ecc943b4eb72f7c4fbbd8435997b85ef171fc3George Wilson allow modules to bypass the usual filter name lookup when
88ecc943b4eb72f7c4fbbd8435997b85ef171fc3George Wilson adding hard-coded filters to a request [Brian Pane]
88ecc943b4eb72f7c4fbbd8435997b85ef171fc3George Wilson *) caching should now work on subrequests (still very experimental)
88ecc943b4eb72f7c4fbbd8435997b85ef171fc3George Wilson [Ian Holsman]
88ecc943b4eb72f7c4fbbd8435997b85ef171fc3George Wilson *) The Win32 mpm_winnt now has a shared scoreboard. [William Rowe]
88ecc943b4eb72f7c4fbbd8435997b85ef171fc3George Wilson *) Change ap_get_brigade prototype to use apr_off_t instead of apr_off_t*.
88ecc943b4eb72f7c4fbbd8435997b85ef171fc3George Wilson [Justin Erenkrantz]
88ecc943b4eb72f7c4fbbd8435997b85ef171fc3George Wilson *) Refactor ap_rgetline so that it does not use an internal brigade.
88ecc943b4eb72f7c4fbbd8435997b85ef171fc3George Wilson Change ap_rgetline's prototype to return errors. [Justin Erenkrantz]
88ecc943b4eb72f7c4fbbd8435997b85ef171fc3George Wilson *) Remove mod_auth_db. [Justin Erenkrantz]
b24ab6762772a3f6a89393947930c7fa61306783Jeff Bonwick *) Do not install unnecessary pcre headers like config.h and internal.h.
b24ab6762772a3f6a89393947930c7fa61306783Jeff Bonwick [Joe Orton <joe@manyfish.co.uk>]
b24ab6762772a3f6a89393947930c7fa61306783Jeff Bonwick *) Change in quick_hanlder behavior for subrequests. it now passes DONE
b24ab6762772a3f6a89393947930c7fa61306783Jeff Bonwick (as it does for a normal request). quick_handled sub-requests now work
b24ab6762772a3f6a89393947930c7fa61306783Jeff Bonwick in mod-include [Ian Holsman]
b24ab6762772a3f6a89393947930c7fa61306783Jeff Bonwick *) Change SUBREQ_CORE so that it is a 'HTTP_HEADER' filter instead of
b24ab6762772a3f6a89393947930c7fa61306783Jeff Bonwick 'CONTENT' one, as it needs to run AFTER all content headers
b24ab6762772a3f6a89393947930c7fa61306783Jeff Bonwick *) Rename BeOS MPM directive RequestsPerThread to MaxRequestsPerThread.
b24ab6762772a3f6a89393947930c7fa61306783Jeff Bonwick [Lars Eilebrecht]
b24ab6762772a3f6a89393947930c7fa61306783Jeff Bonwick *) Split out blocking from the mode in the input filters.
b24ab6762772a3f6a89393947930c7fa61306783Jeff Bonwick [Justin Erenkrantz]
b24ab6762772a3f6a89393947930c7fa61306783Jeff Bonwick *) Fix a segfault in mod_include. [Justin Erenkrantz, Jeff Trawick]
b24ab6762772a3f6a89393947930c7fa61306783Jeff Bonwick *) Cause Win32 to capture all child-worker process errors in
b24ab6762772a3f6a89393947930c7fa61306783Jeff Bonwick Apache to the main server error log, until the child can
b24ab6762772a3f6a89393947930c7fa61306783Jeff Bonwick open its own error logs. [William Rowe]
b24ab6762772a3f6a89393947930c7fa61306783Jeff Bonwick *) HPUX 11.*: Do not kill the child process when accept()
b24ab6762772a3f6a89393947930c7fa61306783Jeff Bonwick returns ENOBUFS on HPUX 11.*. (ported from a 1.3 patch
b24ab6762772a3f6a89393947930c7fa61306783Jeff Bonwick by [madhusudan_mathihalli@hp.com])
b24ab6762772a3f6a89393947930c7fa61306783Jeff Bonwick [Bill Stoddard]
b24ab6762772a3f6a89393947930c7fa61306783Jeff Bonwick *) Fix a problem in the parsing of the <Proxy foo> directive.
b24ab6762772a3f6a89393947930c7fa61306783Jeff Bonwick [Jeff Trawick]
b24ab6762772a3f6a89393947930c7fa61306783Jeff Bonwick *) rewrite of mod_ssl input filter for better performance and less
b24ab6762772a3f6a89393947930c7fa61306783Jeff Bonwick memory usage [Doug MacEachern]
2e4c998613148111f2fc5371085331ffb39122ffGeorge Wilson *) allow quick_handler to be run on subrequests. [Ian Holsman]
2e4c998613148111f2fc5371085331ffb39122ffGeorge Wilson *) mod_dav now asks its provider to place content directly into the
2e4c998613148111f2fc5371085331ffb39122ffGeorge Wilson filter stack when handling a GET request. The mod_dav/provider
2e4c998613148111f2fc5371085331ffb39122ffGeorge Wilson API has changed, so providers need to be updated. [Greg Stein]
2e4c998613148111f2fc5371085331ffb39122ffGeorge Wilson *) Clear the output socket descriptor in unixd_accept() to make sure
2e4c998613148111f2fc5371085331ffb39122ffGeorge Wilson we don't supply a bogus socket to the caller if the accept fails.
2e4c998613148111f2fc5371085331ffb39122ffGeorge Wilson This caused problems with the worker MPM, which tried to process
2e4c998613148111f2fc5371085331ffb39122ffGeorge Wilson the returned socket if it was non-NULL. [Brian Pane]
2e4c998613148111f2fc5371085331ffb39122ffGeorge Wilson *) Move a check for an empty brigade to the start of core input filter
2e4c998613148111f2fc5371085331ffb39122ffGeorge Wilson to avoid segfaults. [Justin Erenkrantz, Jeff Trawick]
2e4c998613148111f2fc5371085331ffb39122ffGeorge Wilson *) Add FileETag directive to allow configurable control of what
2e4c998613148111f2fc5371085331ffb39122ffGeorge Wilson data are used to form ETag values for file-based URIs. MMN
2e4c998613148111f2fc5371085331ffb39122ffGeorge Wilson bumped to 20020111 because of fields added to the end of
2e4c998613148111f2fc5371085331ffb39122ffGeorge Wilson the core_dir_config structure. [Ken Coar]
2e4c998613148111f2fc5371085331ffb39122ffGeorge Wilson *) Fix a segfault in mod_rewrite's logging code caused by passing the
2e4c998613148111f2fc5371085331ffb39122ffGeorge Wilson wrong config to ap_get_remote_host(). [Jeff Trawick]
2e4c998613148111f2fc5371085331ffb39122ffGeorge Wilson *) Allow mod_cgid to work from a binary distribution install by
2e4c998613148111f2fc5371085331ffb39122ffGeorge Wilson using 755 for the permissions on the log directory instead of
2e4c998613148111f2fc5371085331ffb39122ffGeorge Wilson 750. [Jeff Trawick]
2e4c998613148111f2fc5371085331ffb39122ffGeorge Wilson *) Fixed a segfault that happened during graceful shutdown (or when
2e4c998613148111f2fc5371085331ffb39122ffGeorge Wilson the httpd ran out of file descriptors) with the worker MPM [Brian Pane]
2e4c998613148111f2fc5371085331ffb39122ffGeorge Wilson *) Split all Win32 modules [excluding the core components mod_core,
2e4c998613148111f2fc5371085331ffb39122ffGeorge Wilson mod_so, mod_win32 and the winnt mpm] into individual loadable
2e4c998613148111f2fc5371085331ffb39122ffGeorge Wilson modules, so the administrator may individually disable the former
2e4c998613148111f2fc5371085331ffb39122ffGeorge Wilson compiled-in modules by simply commenting out their LoadModule
2e4c998613148111f2fc5371085331ffb39122ffGeorge Wilson directives. [William Rowe]
2e4c998613148111f2fc5371085331ffb39122ffGeorge Wilson *) Saved Win32 module authors and porters many future headaches, by
2e4c998613148111f2fc5371085331ffb39122ffGeorge Wilson duplicating the appropriate .h files such as os.h into the include
2e4c998613148111f2fc5371085331ffb39122ffGeorge Wilson directory, including in the build tree. [William Rowe]
2e4c998613148111f2fc5371085331ffb39122ffGeorge Wilson *) mod_ssl adjustments to help with using toolkits other than OpenSSL:
2e4c998613148111f2fc5371085331ffb39122ffGeorge Wilson Use SSL functions/macros instead of directly dereferencing SSL
2e4c998613148111f2fc5371085331ffb39122ffGeorge Wilson structures wherever possible.
2e4c998613148111f2fc5371085331ffb39122ffGeorge Wilson Add type-casts for the cases where functions return a generic pointer.
2e4c998613148111f2fc5371085331ffb39122ffGeorge Wilson Add $SSL/include to configure search path.
2e4c998613148111f2fc5371085331ffb39122ffGeorge Wilson [Madhusudan Mathihalli <madhusudan_mathihalli@hp.com>]
2e4c998613148111f2fc5371085331ffb39122ffGeorge Wilson *) Moved several pointers out of the shared Scoreboard so it is
2e4c998613148111f2fc5371085331ffb39122ffGeorge Wilson more portable, and will present the vhost name across server
2e4c998613148111f2fc5371085331ffb39122ffGeorge Wilson generation restarts. [William Rowe]
2e4c998613148111f2fc5371085331ffb39122ffGeorge Wilson *) Fix SSLPassPhraseDialog exec: and SSLRandomSeed exec:
2e4c998613148111f2fc5371085331ffb39122ffGeorge Wilson [Doug MacEachern]
2e4c998613148111f2fc5371085331ffb39122ffGeorge WilsonChanges with Apache 2.0.30
2e4c998613148111f2fc5371085331ffb39122ffGeorge Wilson *) Fix the main bug for FreeBSD and threaded MPM's. There are
2e4c998613148111f2fc5371085331ffb39122ffGeorge Wilson still issues (see STATUS) but at least the server will now
2e4c998613148111f2fc5371085331ffb39122ffGeorge Wilson run without crashing the machine.
2e4c998613148111f2fc5371085331ffb39122ffGeorge Wilson [David Reid, Aaron Bannert, Justin Erenkrantz]
2e4c998613148111f2fc5371085331ffb39122ffGeorge Wilson *) Fix a typo in mod_deflate's m4 config section.
2e4c998613148111f2fc5371085331ffb39122ffGeorge Wilson [albert chin (china@thewrittenword.com)]
2e4c998613148111f2fc5371085331ffb39122ffGeorge Wilson *) Fix a couple of mod_proxy problems forwarding HTTP connections
2e4c998613148111f2fc5371085331ffb39122ffGeorge Wilson and handling CONNECT:
2e4c998613148111f2fc5371085331ffb39122ffGeorge Wilson (1) PR #9190 Proxy failed to connect to IPv6 hosts.
2e4c998613148111f2fc5371085331ffb39122ffGeorge Wilson (2) Proxy failed to connect when the first IP address returned by
2e4c998613148111f2fc5371085331ffb39122ffGeorge Wilson the resolver was unreachable but a secondary IP address was.
2e4c998613148111f2fc5371085331ffb39122ffGeorge Wilson [Jeff Trawick]
2e4c998613148111f2fc5371085331ffb39122ffGeorge Wilson *) Fix the module identifer as shown in the docs for various core
2e4c998613148111f2fc5371085331ffb39122ffGeorge Wilson modules (e.g., the identifer for mod_log_config was previously
2e4c998613148111f2fc5371085331ffb39122ffGeorge Wilson listed as config_log_module). PR #9338
2e4c998613148111f2fc5371085331ffb39122ffGeorge Wilson [James Watson <ap2bug@sowega.org>]
2e4c998613148111f2fc5371085331ffb39122ffGeorge Wilson *) Fix LimitRequestBody directive by placing it in the HTTP
2e4c998613148111f2fc5371085331ffb39122ffGeorge Wilson filter. [Justin Erenkrantz]
2e4c998613148111f2fc5371085331ffb39122ffGeorge Wilson *) Fix mod_proxy seg fault when the proxied server returns
2e4c998613148111f2fc5371085331ffb39122ffGeorge Wilson an HTTP/0.9 response or a bogus status line.
2e4c998613148111f2fc5371085331ffb39122ffGeorge Wilson [Adam Sussman]
2e4c998613148111f2fc5371085331ffb39122ffGeorge Wilson *) Prevent mod_proxy from truncating one character off the
2e4c998613148111f2fc5371085331ffb39122ffGeorge Wilson end of the status line returned from the proxied server.
2e4c998613148111f2fc5371085331ffb39122ffGeorge Wilson [Adam Sussman, Bill Stoddard]
2e4c998613148111f2fc5371085331ffb39122ffGeorge Wilson *) Eliminate loop in ap_proxy_string_read().
2e4c998613148111f2fc5371085331ffb39122ffGeorge Wilson [Adam Sussman, Bill Stoddard]
2e4c998613148111f2fc5371085331ffb39122ffGeorge Wilson *) Provide $0..$9 results from mod_include regex parsing.
2e4c998613148111f2fc5371085331ffb39122ffGeorge Wilson [William Rowe]
2e4c998613148111f2fc5371085331ffb39122ffGeorge Wilson *) Allow mod-include to look for alternate start & end tags [Ian Holsman]
2e4c998613148111f2fc5371085331ffb39122ffGeorge Wilson *) Introduced the ForceLanguagePriority directive, to prevent
2e4c998613148111f2fc5371085331ffb39122ffGeorge Wilson returning MULTIPLE_CHOICES or NONE_ACCEPTABLE in some cases,
2e4c998613148111f2fc5371085331ffb39122ffGeorge Wilson when using Multiviews. [William Rowe]
2e4c998613148111f2fc5371085331ffb39122ffGeorge Wilson *) Fix a problem which prevented mod_cgid and suexec from working
2e4c998613148111f2fc5371085331ffb39122ffGeorge Wilson together reliably [Greg Ames]
2e4c998613148111f2fc5371085331ffb39122ffGeorge Wilson *) Remove the call to exit() from within mod_auth_digest's post_config
2e4c998613148111f2fc5371085331ffb39122ffGeorge Wilson phase. [Aaron Bannert]
2e4c998613148111f2fc5371085331ffb39122ffGeorge Wilson *) Fix a problem in mod_auth_digest that could potentially cause
2e4c998613148111f2fc5371085331ffb39122ffGeorge Wilson problems with initialized static data on a system that uses DSOs.
2e4c998613148111f2fc5371085331ffb39122ffGeorge Wilson [Aaron Bannert]
2e4c998613148111f2fc5371085331ffb39122ffGeorge Wilson *) Fix a segfault in the worker MPM that could happen during
c39a2aae1e2c439d156021edfc20910dad7f9891George Wilson child process exits. [Brian Pane, Aaron Bannert]
c39a2aae1e2c439d156021edfc20910dad7f9891George Wilson *) Allow mod_auth_dbm to handle multiple DBM types [Ian Holsman]
c39a2aae1e2c439d156021edfc20910dad7f9891George Wilson *) Fix matching of vhosts by ip address so we find IPv4
c39a2aae1e2c439d156021edfc20910dad7f9891George Wilson vhost address when target address is v4-mapped form of
c39a2aae1e2c439d156021edfc20910dad7f9891George Wilson that address. [Jeff Trawick]
2e4c998613148111f2fc5371085331ffb39122ffGeorge Wilson *) More performance tweaks to the BNDM string-search algorithm
2e4c998613148111f2fc5371085331ffb39122ffGeorge Wilson used to find "<!--#" tokens in mod_include [Brian Pane]
2e4c998613148111f2fc5371085331ffb39122ffGeorge Wilson *) Miscellaneous small performance fixes: optimized away various
fa9e4066f08beec538e775443c5be79dd423fcabahrens string copy operations and removed large temp buffers from
fa9e4066f08beec538e775443c5be79dd423fcabahrens the stack [Brian Pane]
fa9e4066f08beec538e775443c5be79dd423fcabahrens *) Fixed startup segfault that occurred when a VirtualHost
fa9e4066f08beec538e775443c5be79dd423fcabahrens directive had a port but no address [Brian Pane]
fa9e4066f08beec538e775443c5be79dd423fcabahrens *) Allow htdbm to work with multiple DBM types [Ian Holsman]
fa9e4066f08beec538e775443c5be79dd423fcabahrens *) Win32: Made change to apr_sendfile() to return APR_ENOTIMPL
fa9e4066f08beec538e775443c5be79dd423fcabahrens if oslevel < WINNT. This should fix several problems reported
fa9e4066f08beec538e775443c5be79dd423fcabahrens Against 2.0.28 on Windows 98 [Bill Stoddard]
fa9e4066f08beec538e775443c5be79dd423fcabahrens *) Win32: Fix bug that could cause CGI scripts with QUERY_STRINGS
fa9e4066f08beec538e775443c5be79dd423fcabahrens to fail. [Bill Stoddard]
fa9e4066f08beec538e775443c5be79dd423fcabahrens *) Change core code to allow an MPM to set hard thread/server
0713e232b7712cd27d99e1e935ebb8d5de61c57dGeorge Wilson limits at startup. prefork, worker, and perchild MPMs now have
fa9e4066f08beec538e775443c5be79dd423fcabahrens directives to set these limits. [Jeff Trawick]
fa9e4066f08beec538e775443c5be79dd423fcabahrens *) Win32: The async AcceptEx() event should be autoreset upon
fa9e4066f08beec538e775443c5be79dd423fcabahrens successful completion of a wait (WaitForSingleObject). This
fa9e4066f08beec538e775443c5be79dd423fcabahrens eliminates a number of spurious
fa9e4066f08beec538e775443c5be79dd423fcabahrens setsockopt(SO_UPDATE_ACCEPT_CONTEXT) failed." messages.
fa9e4066f08beec538e775443c5be79dd423fcabahrens [Bill Stoddard]
8363e80ae72609660f6090766ca8c2c18aa53f0cGeorge Wilson *) Move any load library path environment variables out of
8363e80ae72609660f6090766ca8c2c18aa53f0cGeorge Wilson apachectl and into a separate environment variable file which
8363e80ae72609660f6090766ca8c2c18aa53f0cGeorge Wilson can be more easily tailored by the admin. The environment
8363e80ae72609660f6090766ca8c2c18aa53f0cGeorge Wilson variable file as built by Apache may have additional system-
8363e80ae72609660f6090766ca8c2c18aa53f0cGeorge Wilson specific settings. For example, on OS/390 we tailor the heap
8363e80ae72609660f6090766ca8c2c18aa53f0cGeorge Wilson settings to allow lots of threads. [Jeff Trawick]
8363e80ae72609660f6090766ca8c2c18aa53f0cGeorge Wilson *) Use the new APR pool code to reduce pool-related lock
8363e80ae72609660f6090766ca8c2c18aa53f0cGeorge Wilson contention in the worker MPM. [Sander Striker]
8363e80ae72609660f6090766ca8c2c18aa53f0cGeorge Wilson *) The POD no longer assumes the child is listening on 127.0.0.1
8363e80ae72609660f6090766ca8c2c18aa53f0cGeorge Wilson and now pulls the first hostname in the list of listeners to
8363e80ae72609660f6090766ca8c2c18aa53f0cGeorge Wilson perform the dummy connect on. This fixes a bug when the user
8363e80ae72609660f6090766ca8c2c18aa53f0cGeorge Wilson had configured the Listen directive for an IP other than
8363e80ae72609660f6090766ca8c2c18aa53f0cGeorge Wilson 127.0.0.1. This would result in undead children and error
8363e80ae72609660f6090766ca8c2c18aa53f0cGeorge Wilson messages such as "Connection refused: connect to listener".
8363e80ae72609660f6090766ca8c2c18aa53f0cGeorge Wilson [Aaron Bannert]
8363e80ae72609660f6090766ca8c2c18aa53f0cGeorge Wilson *) The worker MPM now respects the LockFile setting, needed to
8363e80ae72609660f6090766ca8c2c18aa53f0cGeorge Wilson avoid locking problems with NFS. [Jeff Trawick]
8363e80ae72609660f6090766ca8c2c18aa53f0cGeorge Wilson *) Fix segfault when worker MPM receives SIGHUP.
8363e80ae72609660f6090766ca8c2c18aa53f0cGeorge Wilson [Ian Holsman, Aaron Bannert, Justin Erenkrantz]
8363e80ae72609660f6090766ca8c2c18aa53f0cGeorge Wilson *) Fix bug that could potentially prevent the perchild MPM from
8363e80ae72609660f6090766ca8c2c18aa53f0cGeorge Wilson working with more than one vhost/uid. [Aaron Bannert]
8363e80ae72609660f6090766ca8c2c18aa53f0cGeorge Wilson *) Change make install and apxs -i processing of DSO modules to
8363e80ae72609660f6090766ca8c2c18aa53f0cGeorge Wilson perform special handling on platforms where libtool doesn't install
8363e80ae72609660f6090766ca8c2c18aa53f0cGeorge Wilson mod_foo.so. This fixes some wonkiness on HP-UX, Tru64, and AIX
8363e80ae72609660f6090766ca8c2c18aa53f0cGeorge Wilson which prevented standard LoadModule statements from working.
8363e80ae72609660f6090766ca8c2c18aa53f0cGeorge Wilson [Jeff Trawick]
8363e80ae72609660f6090766ca8c2c18aa53f0cGeorge Wilson *) Whenever mod_so is enabled (not just when there are DSOs for
8363e80ae72609660f6090766ca8c2c18aa53f0cGeorge Wilson our modules), do whatever special magic is required for compiling/
8363e80ae72609660f6090766ca8c2c18aa53f0cGeorge Wilson loading third-party modules. This allows third-party DSOs to
8363e80ae72609660f6090766ca8c2c18aa53f0cGeorge Wilson be used on an AIX build when there were no built-in modules
8363e80ae72609660f6090766ca8c2c18aa53f0cGeorge Wilson built as DSOs. (This should help on OS/390 and BeOS as well.)
8363e80ae72609660f6090766ca8c2c18aa53f0cGeorge Wilson [Jeff Trawick]
8363e80ae72609660f6090766ca8c2c18aa53f0cGeorge Wilson *) Allow apxs to be used to build DSOs on AIX without requiring the
8363e80ae72609660f6090766ca8c2c18aa53f0cGeorge Wilson user to hard-code the list of import files. (This should help
8363e80ae72609660f6090766ca8c2c18aa53f0cGeorge Wilson on OS/390 and BeOS as well.) [Jeff Trawick]
8363e80ae72609660f6090766ca8c2c18aa53f0cGeorge Wilson *) Resolved segfault in mod_isapi when configuring with ISAPICacheFile.
8363e80ae72609660f6090766ca8c2c18aa53f0cGeorge Wilson PR 8563, 8919 [William Rowe]
8363e80ae72609660f6090766ca8c2c18aa53f0cGeorge Wilson *) Get binary builds working when libapr and libaprutil are built
8363e80ae72609660f6090766ca8c2c18aa53f0cGeorge Wilson shared [Greg Ames]
22e30981d82a0b6dc89253596ededafae8655e00George Wilson *) Get shared builds of libapr and libaprutil, as well as Apache DSOs,
22e30981d82a0b6dc89253596ededafae8655e00George Wilson working on AIX. [Aaron Bannert, Dick Dunbar <RLDunbar@pacbell.net>,
22e30981d82a0b6dc89253596ededafae8655e00George Wilson Gary Hook <ghook@us.ibm.com>, Victor Orlikowski, Jeff Trawick]
0f7643c7376dd69a08acbfc9d1d7d548b10c846aGeorge Wilson *) Fix the handling of SSI directives in which the ">" of the
0f7643c7376dd69a08acbfc9d1d7d548b10c846aGeorge Wilson terminating "-->" is the last byte in a file [Brian Pane]
22e30981d82a0b6dc89253596ededafae8655e00George Wilson *) Add back in the "suEXEC mechanism enabled (wrapper: /path/to/suexec)"
22e30981d82a0b6dc89253596ededafae8655e00George Wilson message that we had back in apache-1.3 and still have scattered
22e30981d82a0b6dc89253596ededafae8655e00George Wilson throughout our docs. [Aaron Bannert]
22e30981d82a0b6dc89253596ededafae8655e00George Wilson *) Prevent the Win32 port from continuing after encountering an
22e30981d82a0b6dc89253596ededafae8655e00George Wilson error in the command line args to apache. [William Rowe]
22e30981d82a0b6dc89253596ededafae8655e00George Wilson *) On a error in the proxy, make it write a line to the error log
0f7643c7376dd69a08acbfc9d1d7d548b10c846aGeorge Wilson [Ian Holsman]
22e30981d82a0b6dc89253596ededafae8655e00George Wilson *) Various mod_ssl performance improvements [Doug MacEachern]
22e30981d82a0b6dc89253596ededafae8655e00George WilsonChanges with Apache 2.0.29
0f7643c7376dd69a08acbfc9d1d7d548b10c846aGeorge Wilson *) Add buffering in core_output_filter to ensure that long
22e30981d82a0b6dc89253596ededafae8655e00George Wilson lists of small buckets don't cause small packet writes.
22e30981d82a0b6dc89253596ededafae8655e00George Wilson [Brian Pane, Ryan Bloom]
22e30981d82a0b6dc89253596ededafae8655e00George Wilson *) Fix the installation target to make sure that the manual is
0f7643c7376dd69a08acbfc9d1d7d548b10c846aGeorge Wilson installed in the correct location.
0f7643c7376dd69a08acbfc9d1d7d548b10c846aGeorge Wilson [Yoshifumi Hiramatsu <hiramatu@boreas.dti.ne.jp> and
0f7643c7376dd69a08acbfc9d1d7d548b10c846aGeorge Wilson Gomez Henri <hgomez@slib.fr>]
0f7643c7376dd69a08acbfc9d1d7d548b10c846aGeorge Wilson *) Fix the cmd command for mod_include. When we are processing
0f7643c7376dd69a08acbfc9d1d7d548b10c846aGeorge Wilson a cmd command, we do not want to use the r->filename to set
0f7643c7376dd69a08acbfc9d1d7d548b10c846aGeorge Wilson the command name. The command comes from the SSI tag. To do this,
0f7643c7376dd69a08acbfc9d1d7d548b10c846aGeorge Wilson I added a variable to the function that builds the command line
0f7643c7376dd69a08acbfc9d1d7d548b10c846aGeorge Wilson in mod_cgi. This allows the include_cmd function to specify
0f7643c7376dd69a08acbfc9d1d7d548b10c846aGeorge Wilson the command line itself. [Ryan Bloom]
0f7643c7376dd69a08acbfc9d1d7d548b10c846aGeorge Wilson *) Change open_logs hook to return a value, allowing you
0f7643c7376dd69a08acbfc9d1d7d548b10c846aGeorge Wilson to flag a error while opening logs
0f7643c7376dd69a08acbfc9d1d7d548b10c846aGeorge Wilson [Ian Holsman, Doug MacEachern]
0f7643c7376dd69a08acbfc9d1d7d548b10c846aGeorge Wilson *) Change post_config hook to return a value, allowing you
0f7643c7376dd69a08acbfc9d1d7d548b10c846aGeorge Wilson to flag a error post config
0f7643c7376dd69a08acbfc9d1d7d548b10c846aGeorge Wilson [Ian Holsman, Jeff Trawick]
0f7643c7376dd69a08acbfc9d1d7d548b10c846aGeorge Wilson *) Allow SUEXEC_BIN (the path to the suexec binary that is
2e4c998613148111f2fc5371085331ffb39122ffGeorge Wilson hard-coded into the server) to be specified to the configure
2e4c998613148111f2fc5371085331ffb39122ffGeorge Wilson script by the --with-suexec-bin parameter. [Aaron Bannert]
2e4c998613148111f2fc5371085331ffb39122ffGeorge Wilson *) Fix segv in worker MPM following accept on pipe-of-death
0f7643c7376dd69a08acbfc9d1d7d548b10c846aGeorge Wilson *) Add mod_deflate to experimental.
0f7643c7376dd69a08acbfc9d1d7d548b10c846aGeorge Wilson [Ian Holsman, Justin Erenkrantz]
2e4c998613148111f2fc5371085331ffb39122ffGeorge Wilson *) Bail out at configure time if an invalid MPM was specified.
22e30981d82a0b6dc89253596ededafae8655e00George Wilson [jean-frederic clere <jfrederic.clere@fujitsu-siemens.com>]
22e30981d82a0b6dc89253596ededafae8655e00George Wilson *) Prevent segv in ap_note_basic_auth_failure() when no AuthName is
22e30981d82a0b6dc89253596ededafae8655e00George Wilson configured [John Sterling <sterling@covalent.net>]
22e30981d82a0b6dc89253596ededafae8655e00George Wilson *) Fix apxs to use sbindir. [Henri Gomez <hgomez@slib.fr>]
22e30981d82a0b6dc89253596ededafae8655e00George Wilson *) Fix a problem with IPv6 vhosts. PR #8118 [Jeff Trawick]
22e30981d82a0b6dc89253596ededafae8655e00George Wilson *) Optimization for the BNDM string-search function in
22e30981d82a0b6dc89253596ededafae8655e00George Wilson mod_include. [Brian Pane]
22e30981d82a0b6dc89253596ededafae8655e00George Wilson *) Fixed the behavior of the XBitHack directive.
22e30981d82a0b6dc89253596ededafae8655e00George Wilson [Taketo Kabe <kabe@sra-tohoku.co.jp>, Cliff Woolley] PR#8804
22e30981d82a0b6dc89253596ededafae8655e00George Wilson *) The threaded MPM for Unix has been removed. Use the worker
22e30981d82a0b6dc89253596ededafae8655e00George Wilson MPM instead. [various]
22e30981d82a0b6dc89253596ededafae8655e00George Wilson *) APR-ize the resolver logic in mod_unique_id. This fixes a bug
22e30981d82a0b6dc89253596ededafae8655e00George Wilson in logging the error from a failed DNS lookup. [Jeff Trawick]
2e4c998613148111f2fc5371085331ffb39122ffGeorge Wilson *) Added the missing macros AP_INIT_TAKE13 and AP_INIT_TAKE123.
22e30981d82a0b6dc89253596ededafae8655e00George Wilson [Cliff Woolley]
22e30981d82a0b6dc89253596ededafae8655e00George Wilson *) Get mod_cgid killed when a MPM exits due to a fatal error.
fa9e4066f08beec538e775443c5be79dd423fcabahrens [Jeff Trawick]
fa9e4066f08beec538e775443c5be79dd423fcabahrens *) Fix a file descriptor leak in mod_include. When we include a
fa9e4066f08beec538e775443c5be79dd423fcabahrens file, we use a sub-request, but we didn't destroy the sub-request
fa9e4066f08beec538e775443c5be79dd423fcabahrens immediately, instead we waited until the original request was
fa9e4066f08beec538e775443c5be79dd423fcabahrens done. This patch closes the sub-request as soon as the data is
fa9e4066f08beec538e775443c5be79dd423fcabahrens done being generated. [Brian Pane <bpane@pacbell.net>]
fa9e4066f08beec538e775443c5be79dd423fcabahrens *) Allow modules that add sockets to the ap_listeners list to
fa9e4066f08beec538e775443c5be79dd423fcabahrens define the function that should be used to accept on that
a15215608b8bd90f714f6db21ee623b584607cb6Jeff Bonwick socket. Each MPM can define their own function to use for
a15215608b8bd90f714f6db21ee623b584607cb6Jeff Bonwick the accept function with the MPM_ACCEPT_FUNC macro. This
0f7643c7376dd69a08acbfc9d1d7d548b10c846aGeorge Wilson also abstracts out all of the Unix accept error handling
0f7643c7376dd69a08acbfc9d1d7d548b10c846aGeorge Wilson logic, which has become out of synch across Unix MPMs.
be082110c08433beadb738ad3be035a73d995ea8George Wilson *) Fix a bug which would cause the response headers to be omitted
0713e232b7712cd27d99e1e935ebb8d5de61c57dGeorge Wilson when sending a negotiated ErrorDocument because the required
0713e232b7712cd27d99e1e935ebb8d5de61c57dGeorge Wilson filters were attached to the wrong request_rec.
fa9e4066f08beec538e775443c5be79dd423fcabahrens [John Sterling <sterling@covalent.net>]
fa9e4066f08beec538e775443c5be79dd423fcabahrens *) Remove commas from the end of the macros that define
fa9e4066f08beec538e775443c5be79dd423fcabahrens directives that are used by MPMs. Prior to this patch,
fa9e4066f08beec538e775443c5be79dd423fcabahrens you would use these macros without commas, which was unlike
fa9e4066f08beec538e775443c5be79dd423fcabahrens the macros for any other directives. Now, the caller provides
a15215608b8bd90f714f6db21ee623b584607cb6Jeff Bonwick the comma rather than the macro providing it. This makes
a15215608b8bd90f714f6db21ee623b584607cb6Jeff Bonwick the macros look more like the rest of the directives.
a33cae9802e94744efee12a7a77c89360645eae8Tim Haley [Ryan Bloom and Cliff Woolley]
a33cae9802e94744efee12a7a77c89360645eae8Tim Haley *) Add 'redirect-carefully' environment option to disable sending
a33cae9802e94744efee12a7a77c89360645eae8Tim Haley redirects under special circumstances. This is helpful for
a33cae9802e94744efee12a7a77c89360645eae8Tim Haley Microsoft's WebFolders when accessing a directory resource via
a33cae9802e94744efee12a7a77c89360645eae8Tim Haley DAV methods. [Justin Erenkrantz]
be082110c08433beadb738ad3be035a73d995ea8George Wilson *) Begin to abstract out the underlying transport layer.
fa9e4066f08beec538e775443c5be79dd423fcabahrens The first step is to remove the socket from the conn_rec,
fa9e4066f08beec538e775443c5be79dd423fcabahrens the server now lives in a context that is passed to the
0f7643c7376dd69a08acbfc9d1d7d548b10c846aGeorge Wilson core's input and output filters. This forces us to be very
fa9e4066f08beec538e775443c5be79dd423fcabahrens careful when adding calls that use the socket directly,
fa9e4066f08beec538e775443c5be79dd423fcabahrens because the socket isn't available in most locations.
fa9e4066f08beec538e775443c5be79dd423fcabahrens [Ryan Bloom]
a15215608b8bd90f714f6db21ee623b584607cb6Jeff Bonwick *) Really reset the MaxClients value in worker and threaded
a15215608b8bd90f714f6db21ee623b584607cb6Jeff Bonwick when the configured value is not a multiple of the number
a15215608b8bd90f714f6db21ee623b584607cb6Jeff Bonwick of threads per child. We said we did previously but we
a15215608b8bd90f714f6db21ee623b584607cb6Jeff Bonwick forgot to. [Jeff Trawick]
a15215608b8bd90f714f6db21ee623b584607cb6Jeff Bonwick *) Add Debian layout. [Daniel Stone <daniel@sfarc.net>]
a15215608b8bd90f714f6db21ee623b584607cb6Jeff Bonwick *) If shared modules are requested and mod_so is not available,
a15215608b8bd90f714f6db21ee623b584607cb6Jeff Bonwick produce a fatal config-time error. [Justin Erenkrantz]
a15215608b8bd90f714f6db21ee623b584607cb6Jeff Bonwick *) Improve http2env's performance by cutting the work it has to
a15215608b8bd90f714f6db21ee623b584607cb6Jeff Bonwick do. [Brian Pane <bpane@pacbell.net>]
a15215608b8bd90f714f6db21ee623b584607cb6Jeff Bonwick *) use new 'apr_hash_merge' function in mod_mime (performance fix)
a15215608b8bd90f714f6db21ee623b584607cb6Jeff Bonwick [Brian Pane <bpane@pacbell.net>]
22e30981d82a0b6dc89253596ededafae8655e00George WilsonChanges with Apache 2.0.28
a15215608b8bd90f714f6db21ee623b584607cb6Jeff Bonwick *) Fix infinite loop in mod_cgid.c.
a15215608b8bd90f714f6db21ee623b584607cb6Jeff Bonwick [Dale Ghent <daleg@elemental.org>, Brian Pane <bpane@pacbell.net>]
a15215608b8bd90f714f6db21ee623b584607cb6Jeff Bonwick *) When no port is given in a "ServerName host" directive, the
a15215608b8bd90f714f6db21ee623b584607cb6Jeff Bonwick server_rec->port is now set to zero, not 80. That allows for
a15215608b8bd90f714f6db21ee623b584607cb6Jeff Bonwick run-time deduction of the correct server port (depending on
a15215608b8bd90f714f6db21ee623b584607cb6Jeff Bonwick SSL/plain, and depending also on the current setting of
a15215608b8bd90f714f6db21ee623b584607cb6Jeff Bonwick UseCanonicalName). This change makes redirections
a15215608b8bd90f714f6db21ee623b584607cb6Jeff Bonwick work, even with https:// connections. As in Apache-1.3, the
a15215608b8bd90f714f6db21ee623b584607cb6Jeff Bonwick connection's actual port number is never used, only the ServerName
a15215608b8bd90f714f6db21ee623b584607cb6Jeff Bonwick setting or the client's Host: setting. Documentation updated
a15215608b8bd90f714f6db21ee623b584607cb6Jeff Bonwick to reflect the change. [Martin Kraemer]
a15215608b8bd90f714f6db21ee623b584607cb6Jeff Bonwick *) Add a '%{note-name}e' argument to mod-headers, which works in
a15215608b8bd90f714f6db21ee623b584607cb6Jeff Bonwick the same way as mod_log_confg. [Ian Holsman]
a15215608b8bd90f714f6db21ee623b584607cb6Jeff Bonwick *) Fix the spelling of the AP_MPMQ_MIN_SPARE_DAEMONS and
a15215608b8bd90f714f6db21ee623b584607cb6Jeff Bonwick AP_MPMQ_MAX_REQUESTS_DAEMON macros in ap_mpm.h and all standard
a15215608b8bd90f714f6db21ee623b584607cb6Jeff Bonwick MPMs. [Cliff Woolley]
a15215608b8bd90f714f6db21ee623b584607cb6Jeff Bonwick *) Introduce htdbm, a user management utility for db/dbm authorization
a15215608b8bd90f714f6db21ee623b584607cb6Jeff Bonwick databases. [Mladen Turk <mturk@mappingsoft.com>]
a15215608b8bd90f714f6db21ee623b584607cb6Jeff Bonwick *) Optimize usage of strlen and strcat in ap_directory_walk.
a15215608b8bd90f714f6db21ee623b584607cb6Jeff Bonwick [Brian Pane <bpane@pacbell.net>]
a15215608b8bd90f714f6db21ee623b584607cb6Jeff BonwickChanges with Apache 2.0.27
a15215608b8bd90f714f6db21ee623b584607cb6Jeff Bonwick *) Introduce an Apache mod_ssl initial configuration template
0713e232b7712cd27d99e1e935ebb8d5de61c57dGeorge Wilson (ssl.conf, generated from ssl-std.conf). [Ralf S. Engelschall]
0713e232b7712cd27d99e1e935ebb8d5de61c57dGeorge Wilson *) Fixed a memory leak in the getline parsing code that could
a15215608b8bd90f714f6db21ee623b584607cb6Jeff Bonwick be triggered by arbitrarily large header lines. Requests
a15215608b8bd90f714f6db21ee623b584607cb6Jeff Bonwick from the core input filter for single lines are now limited
a15215608b8bd90f714f6db21ee623b584607cb6Jeff Bonwick to HUGE_STRING_LEN (8192 bytes). [Aaron Bannert]
a15215608b8bd90f714f6db21ee623b584607cb6Jeff Bonwick *) Fix a truncation bug in how we print the port on the Via: header.
a15215608b8bd90f714f6db21ee623b584607cb6Jeff Bonwick The routine that prints the Via: header now takes a length for
a15215608b8bd90f714f6db21ee623b584607cb6Jeff Bonwick the port string. [Zvi Har'El <rl@math.technion.ac.il>]
a15215608b8bd90f714f6db21ee623b584607cb6Jeff Bonwick *) Some syntax errors in mod_mime_magic's magic file can result
a15215608b8bd90f714f6db21ee623b584607cb6Jeff Bonwick in a 500 error, which previously was unlogged. Now we log the
a15215608b8bd90f714f6db21ee623b584607cb6Jeff Bonwick error. [Jeff Trawick]
a15215608b8bd90f714f6db21ee623b584607cb6Jeff Bonwick *) Add the support/checkgid helper app, which checks the run-time
a15215608b8bd90f714f6db21ee623b584607cb6Jeff Bonwick validity of group identifiers usable in the Group directive.
0f7643c7376dd69a08acbfc9d1d7d548b10c846aGeorge Wilson *) Various --enable-so options have been fixed: --enable-so is
0f7643c7376dd69a08acbfc9d1d7d548b10c846aGeorge Wilson treated as "static"; explicit --enable-so=shared issues an error;
0f7643c7376dd69a08acbfc9d1d7d548b10c846aGeorge Wilson and explicit --enable-so fails with error on systems without
0f7643c7376dd69a08acbfc9d1d7d548b10c846aGeorge Wilson APR_HAS_DSO. [Aaron Bannert]
0f7643c7376dd69a08acbfc9d1d7d548b10c846aGeorge Wilson *) Fix a segfault in the core input filter when the client socket
0f7643c7376dd69a08acbfc9d1d7d548b10c846aGeorge Wilson gets disconnected unexpectedly. [Cliff Woolley]
2e4c998613148111f2fc5371085331ffb39122ffGeorge Wilson *) Fix the reporting for child processes that die. This removes
2e4c998613148111f2fc5371085331ffb39122ffGeorge Wilson all of the non-portable W* macros from Apache.
2e4c998613148111f2fc5371085331ffb39122ffGeorge Wilson [Jeff Trawick and Ryan Bloom]
2e4c998613148111f2fc5371085331ffb39122ffGeorge Wilson *) Win32: Track and display "Parent Server Generation:" in
2e4c998613148111f2fc5371085331ffb39122ffGeorge Wilson mod_status output. The generation will be bumped at
2e4c998613148111f2fc5371085331ffb39122ffGeorge Wilson server graceful restart, when the child process exits
2e4c998613148111f2fc5371085331ffb39122ffGeorge Wilson by hitting MaxRequestsPerChild or if the child
2e4c998613148111f2fc5371085331ffb39122ffGeorge Wilson process exits abnormally. [Bill Stoddard]
2e4c998613148111f2fc5371085331ffb39122ffGeorge Wilson *) Win32: Fix problem where MaxRequestsPerChild directive was
2e4c998613148111f2fc5371085331ffb39122ffGeorge Wilson not being picked up in favor of the default. Enable
2e4c998613148111f2fc5371085331ffb39122ffGeorge Wilson the parent to start up a new child process immediately upon
2e4c998613148111f2fc5371085331ffb39122ffGeorge Wilson the old child starting shutdown.
2e4c998613148111f2fc5371085331ffb39122ffGeorge Wilson [Bill Stoddard]
2e4c998613148111f2fc5371085331ffb39122ffGeorge Wilson *) Fix some bungling of the remote port in rfc1413.c so that
2e4c998613148111f2fc5371085331ffb39122ffGeorge Wilson IdentityCheck retrieves the proper user id instead of failing
2e4c998613148111f2fc5371085331ffb39122ffGeorge Wilson and thus always returning "nobody."
2e4c998613148111f2fc5371085331ffb39122ffGeorge Wilson [Dick Streefland <Dick.Streefland@xs4all.nl>]
2e4c998613148111f2fc5371085331ffb39122ffGeorge Wilson *) Introduced thread saftey for mod_rewrite's internal cache.
2e4c998613148111f2fc5371085331ffb39122ffGeorge Wilson [Brian Pane <bpane@pacbell.net>]
2e4c998613148111f2fc5371085331ffb39122ffGeorge Wilson *) Simplified mod_env's directives to behave as most directives are
2e4c998613148111f2fc5371085331ffb39122ffGeorge Wilson expected, in that UnsetEnv will not unset a SetEnv and PassEnv
2e4c998613148111f2fc5371085331ffb39122ffGeorge Wilson directive following that UnsetEnv within the same container.
2e4c998613148111f2fc5371085331ffb39122ffGeorge Wilson Also provides a runtime startup warning if a PassEnv configured
2e4c998613148111f2fc5371085331ffb39122ffGeorge Wilson environment value is undefined. [William Rowe]
2e4c998613148111f2fc5371085331ffb39122ffGeorge Wilson *) The worker MPM is now completely ported to APR's new lock API. It
2e4c998613148111f2fc5371085331ffb39122ffGeorge Wilson uses native APR types for thread mutexes, cross-process mutexes,
2e4c998613148111f2fc5371085331ffb39122ffGeorge Wilson and condition variables. [Aaron Bannert]
2e4c998613148111f2fc5371085331ffb39122ffGeorge Wilson *) Sync up documentation to remove all references to the now deprecated
2e4c998613148111f2fc5371085331ffb39122ffGeorge Wilson Port directive. [Justin Erenkrantz]
2e4c998613148111f2fc5371085331ffb39122ffGeorge Wilson *) Moved all ldap modules from the core to httpd-ldap sub-project
ecc2d604e885a75cc75e647b5641af99d5a6f4a6bonwick *) Exit when we can't listen on any of the configured ports. This
2e4c998613148111f2fc5371085331ffb39122ffGeorge Wilson is the same behavior as 1.3, and it avoids having the MPMs to
2e4c998613148111f2fc5371085331ffb39122ffGeorge Wilson deal with bogus ap_listen_rec structures. [Jeff Trawick]
2e4c998613148111f2fc5371085331ffb39122ffGeorge Wilson *) Cleanup the proxy code that creates a request to the origin
2e4c998613148111f2fc5371085331ffb39122ffGeorge Wilson server. This change adds an optional hook, which allows modules
2e4c998613148111f2fc5371085331ffb39122ffGeorge Wilson to gain control while the request is created if the proxy module
2e4c998613148111f2fc5371085331ffb39122ffGeorge Wilson is loaded. The purpose of this hook is to allow modules to add
2e4c998613148111f2fc5371085331ffb39122ffGeorge Wilson input and/or output filters to the request to the origin. While
2e4c998613148111f2fc5371085331ffb39122ffGeorge Wilson I was at it, I made the core use this hook, so that proxy request
2e4c998613148111f2fc5371085331ffb39122ffGeorge Wilson creation uses some of the code from the core. This can still be
2e4c998613148111f2fc5371085331ffb39122ffGeorge Wilson greatly improved, but this is a good start. [Ryan Bloom]
2e4c998613148111f2fc5371085331ffb39122ffGeorge WilsonChanges with Apache 2.0.26
2e4c998613148111f2fc5371085331ffb39122ffGeorge Wilson *) Port the MaxClients changes from the worker MPM to the threaded
2e4c998613148111f2fc5371085331ffb39122ffGeorge Wilson MPM. [Ryan Bloom]
2e4c998613148111f2fc5371085331ffb39122ffGeorge Wilson *) Fix mod_proxy so that it handles chunked transfer-encoding and works
2e4c998613148111f2fc5371085331ffb39122ffGeorge Wilson with the new input filtering system. [Justin Erenkrantz]
2e4c998613148111f2fc5371085331ffb39122ffGeorge Wilson *) Introduce the MultiviewsMatch directive, to allow the operator
fa9e4066f08beec538e775443c5be79dd423fcabahrens to be flexible in recognizing Handlers and Filters filename
2e4c998613148111f2fc5371085331ffb39122ffGeorge Wilson extensions as part of the Multiviews matching logic, strict with
2e4c998613148111f2fc5371085331ffb39122ffGeorge Wilson MultiviewsMatch NegotiatedOnly to accept only filename extentions
2e4c998613148111f2fc5371085331ffb39122ffGeorge Wilson that designate negotiated parameters, (content type, charset, etc.)
2e4c998613148111f2fc5371085331ffb39122ffGeorge Wilson or MultiviewsAll for the 1.3 behavior of matching any files, even
2e4c998613148111f2fc5371085331ffb39122ffGeorge Wilson if they have unregistered extensions. [William Rowe]
2e4c998613148111f2fc5371085331ffb39122ffGeorge Wilson *) Fixed the configure script to add a LoadModule directive to
fa9e4066f08beec538e775443c5be79dd423fcabahrens the default httpd.conf for any module that was compiled
2e4c998613148111f2fc5371085331ffb39122ffGeorge Wilson as a DSO. [Aaron Bannert <aaron@clove.org>]
2e4c998613148111f2fc5371085331ffb39122ffGeorge Wilson *) rewrite mod_ssl input filtering to work with the new input filtering
2e4c998613148111f2fc5371085331ffb39122ffGeorge Wilson system. [Justin Erenkrantz]
2e4c998613148111f2fc5371085331ffb39122ffGeorge Wilson *) prefork: Don't segfault when we are able to listen on some but
2e4c998613148111f2fc5371085331ffb39122ffGeorge Wilson not all of the configured ports. [Jeff Trawick]
2e4c998613148111f2fc5371085331ffb39122ffGeorge Wilson *) Build mod_so even if no core modules are built shared.
2e4c998613148111f2fc5371085331ffb39122ffGeorge Wilson [Aaron Bannert <aaron@clove.org>]
2e4c998613148111f2fc5371085331ffb39122ffGeorge Wilson *) Introduce ap_directory_walk rewrite (with further optimizations
2e4c998613148111f2fc5371085331ffb39122ffGeorge Wilson required) to adapt to the ap_process_request_internal() changes.
2e4c998613148111f2fc5371085331ffb39122ffGeorge Wilson Optimized so subrequests and redirects now reuse previous section
2e4c998613148111f2fc5371085331ffb39122ffGeorge Wilson merges, until we mismatch with the original directory_walk, and
2e4c998613148111f2fc5371085331ffb39122ffGeorge Wilson precomputed r->finfo results will cause directory_walk to skip
2e4c998613148111f2fc5371085331ffb39122ffGeorge Wilson the most expensive phases of the function. [William Rowe]
2e4c998613148111f2fc5371085331ffb39122ffGeorge Wilson *) Allow ApacheMonitor to connect to and control Apache on other
fa9e4066f08beec538e775443c5be79dd423fcabahrens WinNT/2K machines. [Mladen Turk <mturk@mappingsoft.com>]
fa9e4066f08beec538e775443c5be79dd423fcabahrens *) Remove the Port directive. In it's place, the Listen directive
fa9e4066f08beec538e775443c5be79dd423fcabahrens is now a required directive, which tells Apache what port to
2e4c998613148111f2fc5371085331ffb39122ffGeorge Wilson listen on. The ServerName directive has also been extended
2e4c998613148111f2fc5371085331ffb39122ffGeorge Wilson to accept an optional port. If the port is specified to the
2e4c998613148111f2fc5371085331ffb39122ffGeorge Wilson ServerName, the server will report that port whenever it
2e4c998613148111f2fc5371085331ffb39122ffGeorge Wilson reports the port that it is listening on. This change was
fa9e4066f08beec538e775443c5be79dd423fcabahrens made to ease configuration errors that stem from having a Port
fa9e4066f08beec538e775443c5be79dd423fcabahrens directive, and a Listen directive. In that situation, the server
ecc2d604e885a75cc75e647b5641af99d5a6f4a6bonwick would only listen to the port specified by the Listen command,
fa9e4066f08beec538e775443c5be79dd423fcabahrens which caused a lot of confusion to users. [Ryan Bloom]
2e4c998613148111f2fc5371085331ffb39122ffGeorge Wilson *) Added mod_mime_magic, mod_unique_id and mod_vhost_alias to the Win32
2e4c998613148111f2fc5371085331ffb39122ffGeorge Wilson build, as loadable modules. [William Rowe]
2e4c998613148111f2fc5371085331ffb39122ffGeorge Wilson *) Fix --enable-mods-shared processing. If most is specified,
fa9e4066f08beec538e775443c5be79dd423fcabahrens then all modules that can be compiled as shared modules are.
fa9e4066f08beec538e775443c5be79dd423fcabahrens [Aaron Bannert <aaron@clove.org>]
fa9e4066f08beec538e775443c5be79dd423fcabahrens *) Update the mime.types file to map video/vnd.mpegurl to mxu
fa9e4066f08beec538e775443c5be79dd423fcabahrens and add commonly used audio/x-mpegurl for m3u extensions.
fa9e4066f08beec538e775443c5be79dd423fcabahrens [Heiko Recktenwald <uzs106@uni-bonn.de>, Lars Eilebrecht]
ecc2d604e885a75cc75e647b5641af99d5a6f4a6bonwick *) Eliminate the depreciated r->content_language, in favor of the array
fa9e4066f08beec538e775443c5be79dd423fcabahrens r->content_languages introduced many years ago. Module authors must
fa9e4066f08beec538e775443c5be79dd423fcabahrens substantially overhaul their modules, so this needs to be upgraded
5f5f7a6f9c8e9c1587a54e690556d756ec67558cahrens if the module still relied on backwards-brokeness. [William Rowe]
2e4c998613148111f2fc5371085331ffb39122ffGeorge Wilson *) Allow configure help strings to work with autoconf 2.50+ and 2.13.
5f5f7a6f9c8e9c1587a54e690556d756ec67558cahrens [Justin Erenkrantz]
ecc2d604e885a75cc75e647b5641af99d5a6f4a6bonwick *) Rewrite the input filtering mechanisms to consolidate and reorganize
ecc2d604e885a75cc75e647b5641af99d5a6f4a6bonwick code. In short, core_input_filter does something now and
fa9e4066f08beec538e775443c5be79dd423fcabahrens ap_http_filter is now only concerned with HTTP. [Justin Erenkrantz]
fa9e4066f08beec538e775443c5be79dd423fcabahrens *) Update the Win32 build to re-absorb mod_proxy and family.
fa9e4066f08beec538e775443c5be79dd423fcabahrens [William Rowe]
fa9e4066f08beec538e775443c5be79dd423fcabahrens *) Resolved the build failure on Win32 using MSVC 5.0 (without the
fa9e4066f08beec538e775443c5be79dd423fcabahrens current SDK.) [William Rowe]
2e4c998613148111f2fc5371085331ffb39122ffGeorge Wilson *) Some style changes to the code that does ProxyErrorOverride. Fixed
2e4c998613148111f2fc5371085331ffb39122ffGeorge Wilson config merge behaviour. [Graham Leggett]
2e4c998613148111f2fc5371085331ffb39122ffGeorge Wilson *) Allow support programs to be compiled against a static version
2e4c998613148111f2fc5371085331ffb39122ffGeorge Wilson of libapr. This allows the smaller support programs to be
2e4c998613148111f2fc5371085331ffb39122ffGeorge Wilson relocated. [Aaron Bannert <aaron@clove.org>]
2e4c998613148111f2fc5371085331ffb39122ffGeorge Wilson *) Update the mime.types file to the registered media types as
2e4c998613148111f2fc5371085331ffb39122ffGeorge Wilson of 2001-09-25, and add mapping for xsl extension [Mark Cox]
2e4c998613148111f2fc5371085331ffb39122ffGeorge Wilson *) Fix MaxClients in the Worker MPM, so that it specifies the maximum
2e4c998613148111f2fc5371085331ffb39122ffGeorge Wilson number of clients that can connect at the same time, instead of
2e4c998613148111f2fc5371085331ffb39122ffGeorge Wilson specifying the maximum number of child processes.
2e4c998613148111f2fc5371085331ffb39122ffGeorge Wilson [Aaron Bannert <aaron@clove.org>]
2e4c998613148111f2fc5371085331ffb39122ffGeorge Wilson *) Switch proc_pthread AcceptMutex configuration directive to pthread to
2e4c998613148111f2fc5371085331ffb39122ffGeorge Wilson be consistent with 1.3. [Justin Erenkrantz]
2e4c998613148111f2fc5371085331ffb39122ffGeorge Wilson *) Cache apr_explode_localtime() value for 15 seconds.
2e4c998613148111f2fc5371085331ffb39122ffGeorge Wilson [Brian Pane <bpane@pacbell.net>]
2e4c998613148111f2fc5371085331ffb39122ffGeorge Wilson *) Fix mod_include to not return ETag or Last-Modified headers.
2e4c998613148111f2fc5371085331ffb39122ffGeorge Wilson [Ian Holsman <ianh@cnet.com>]
2e4c998613148111f2fc5371085331ffb39122ffGeorge Wilson *) Fix worker MPM's scoreboard logic. [Aaron Bannert <aaron@clove.org>]
2e4c998613148111f2fc5371085331ffb39122ffGeorge Wilson *) Eliminate the wasteful run-time conversion of method names from strings
2e4c998613148111f2fc5371085331ffb39122ffGeorge Wilson to numbers in places where the methods are known at compile time.
2e4c998613148111f2fc5371085331ffb39122ffGeorge Wilson [Brian Pane <bpane@pacbell.net>]
2e4c998613148111f2fc5371085331ffb39122ffGeorge Wilson *) Turn the worker MPM's queue into a LIFO. This may
2e4c998613148111f2fc5371085331ffb39122ffGeorge Wilson improve cache-hit performance under some conditions.
22e30981d82a0b6dc89253596ededafae8655e00George Wilson [Aaron Bannert <aaron@clove.org>]
2e4c998613148111f2fc5371085331ffb39122ffGeorge Wilson *) Switch back to SIGUSR1 for graceful restarts on all platforms that
2e4c998613148111f2fc5371085331ffb39122ffGeorge Wilson support it. [Justin Erenkrantz]
0f7643c7376dd69a08acbfc9d1d7d548b10c846aGeorge Wilson *) Cleanup the worker MPM. We no longer re-use transaction
0f7643c7376dd69a08acbfc9d1d7d548b10c846aGeorge Wilson pools. This incurs less overhead than shuffling the pools
0f7643c7376dd69a08acbfc9d1d7d548b10c846aGeorge Wilson around so that they can be re-used. Remove one of the
0f7643c7376dd69a08acbfc9d1d7d548b10c846aGeorge Wilson queue's condition variables. We just redefined the API to
22e30981d82a0b6dc89253596ededafae8655e00George Wilson state that you can't try to add more stuff than you allocated
22e30981d82a0b6dc89253596ededafae8655e00George Wilson segments for. [Aaron Bannert <aaron@clove.org>]
0f7643c7376dd69a08acbfc9d1d7d548b10c846aGeorge Wilson *) Fix SSL VPATH builds [Cody Sherr <csherr@covalent.net>]
0f7643c7376dd69a08acbfc9d1d7d548b10c846aGeorge Wilson *) Fixed persistent connections when a request contains a body.
22e30981d82a0b6dc89253596ededafae8655e00George Wilson *) mod_dav uses a new API to speak to the backend provider for dead
0f7643c7376dd69a08acbfc9d1d7d548b10c846aGeorge Wilson property management. [Greg Stein]
0f7643c7376dd69a08acbfc9d1d7d548b10c846aGeorge Wilson *) Remove the Win32 script-processing exception from mod_cgi, and
2e4c998613148111f2fc5371085331ffb39122ffGeorge Wilson roll build_command_line/build_argv_list into a unified, overrideable
22e30981d82a0b6dc89253596ededafae8655e00George Wilson ap_cgi_build_command optional function. [William Rowe]
0f7643c7376dd69a08acbfc9d1d7d548b10c846aGeorge Wilson *) Rewrite find_start_sequence to use a better search algorithm
0f7643c7376dd69a08acbfc9d1d7d548b10c846aGeorge Wilson to find the start tag. [Justin Erenkrantz]
0f7643c7376dd69a08acbfc9d1d7d548b10c846aGeorge Wilson *) Fix a seg fault in mod_include. When we are generating an
0f7643c7376dd69a08acbfc9d1d7d548b10c846aGeorge Wilson internal redirect, we must set r->uri to "", not a bogus
0f7643c7376dd69a08acbfc9d1d7d548b10c846aGeorge Wilson string, and not NULL. [Ryan Bloom]
0f7643c7376dd69a08acbfc9d1d7d548b10c846aGeorge Wilson *) Optimized location_walk, so subrequests, redirects and second passes
0f7643c7376dd69a08acbfc9d1d7d548b10c846aGeorge Wilson now reuse previous section merges on a <Location > by <Location >
0f7643c7376dd69a08acbfc9d1d7d548b10c846aGeorge Wilson basis, until we mismatch with the original location_walk.
0f7643c7376dd69a08acbfc9d1d7d548b10c846aGeorge Wilson [William Rowe]
0f7643c7376dd69a08acbfc9d1d7d548b10c846aGeorge Wilson *) Back out the 1.45 change to util_script.c. This change made
0f7643c7376dd69a08acbfc9d1d7d548b10c846aGeorge Wilson us set the environment variable REQUEST_URI to the redirected
0f7643c7376dd69a08acbfc9d1d7d548b10c846aGeorge Wilson URI, instead of the originally requested URI.
0f7643c7376dd69a08acbfc9d1d7d548b10c846aGeorge Wilson [Taketo Kabe <kabe@sra-tohoku.co.jp>]
0f7643c7376dd69a08acbfc9d1d7d548b10c846aGeorge Wilson *) Make mod_include do lazy evaluation of potentially expensive to
0f7643c7376dd69a08acbfc9d1d7d548b10c846aGeorge Wilson compute variables. [Brian Pane <bpane@pacbell.net>]
0f7643c7376dd69a08acbfc9d1d7d548b10c846aGeorge Wilson *) Fix logging of bytes sent for HEAD requests. %b and %B should
0f7643c7376dd69a08acbfc9d1d7d548b10c846aGeorge Wilson log either - or 0, before this patch, they were both logging
0f7643c7376dd69a08acbfc9d1d7d548b10c846aGeorge Wilson the file size. [Taketo Kabe <kabe@sra-tohoku.co.jp>]
0f7643c7376dd69a08acbfc9d1d7d548b10c846aGeorge Wilson *) Make mod_include check for BYTE_CHECK_THRESHOLD per bucket rather
0f7643c7376dd69a08acbfc9d1d7d548b10c846aGeorge Wilson than per character. [Brian Pane <bpane@pacbell.net>]
0f7643c7376dd69a08acbfc9d1d7d548b10c846aGeorge Wilson *) Normalize the primary request, redirects and sub-requests to
0f7643c7376dd69a08acbfc9d1d7d548b10c846aGeorge Wilson run the same ap_process_request_internal for consistency in
0f7643c7376dd69a08acbfc9d1d7d548b10c846aGeorge Wilson robustness, behavior and security. [William Rowe]
0f7643c7376dd69a08acbfc9d1d7d548b10c846aGeorge Wilson *) Fix a segfault with mod_include when r->path_info is not set
0f7643c7376dd69a08acbfc9d1d7d548b10c846aGeorge Wilson (which is the case with mod_proxy). [Ian Holsman <ianh@cnet.com>]
0f7643c7376dd69a08acbfc9d1d7d548b10c846aGeorge Wilson *) Add -X functionality back. This indicates to all MPMs and any other
0f7643c7376dd69a08acbfc9d1d7d548b10c846aGeorge Wilson part of Apache that it should run in "debug" mode. [Justin Erenkrantz]
0f7643c7376dd69a08acbfc9d1d7d548b10c846aGeorge Wilson *) Some initial support for the cygwin platform [prefork only].
0f7643c7376dd69a08acbfc9d1d7d548b10c846aGeorge Wilson This is not to be confused with support for the WinNT/Win32
0f7643c7376dd69a08acbfc9d1d7d548b10c846aGeorge Wilson platform, which is the recommended configuration for native
0f7643c7376dd69a08acbfc9d1d7d548b10c846aGeorge Wilson Win32 users. The cygwin platform support is recommended for
0f7643c7376dd69a08acbfc9d1d7d548b10c846aGeorge Wilson cygwin platform users. [Stipe Tolj <tolj@wapme-systems.de>]
0f7643c7376dd69a08acbfc9d1d7d548b10c846aGeorge Wilson *) Changed syntax of Set{Input|Output}Filter. The list of filters
0f7643c7376dd69a08acbfc9d1d7d548b10c846aGeorge Wilson must be semicolon delimited (if more than one filter is given.)
0f7643c7376dd69a08acbfc9d1d7d548b10c846aGeorge Wilson The Set{Input|Output}Filter directive now overrides a parent
0f7643c7376dd69a08acbfc9d1d7d548b10c846aGeorge Wilson container's directive (e.g. SetInputFilter in <Directory /web/foo>
0f7643c7376dd69a08acbfc9d1d7d548b10c846aGeorge Wilson will override any SetInputFilter directive in <Directory /web>.)
0f7643c7376dd69a08acbfc9d1d7d548b10c846aGeorge Wilson This new syntax is more consistent with Add{Input|Output}Filter
0f7643c7376dd69a08acbfc9d1d7d548b10c846aGeorge Wilson directives defined in mod_mime. Also cures a bug in prior releases
0f7643c7376dd69a08acbfc9d1d7d548b10c846aGeorge Wilson where the Set{Input|Output}Filter directive would corrupt the
0f7643c7376dd69a08acbfc9d1d7d548b10c846aGeorge Wilson global configuration if the multiple directives were nested.
0f7643c7376dd69a08acbfc9d1d7d548b10c846aGeorge Wilson [William Rowe]
0f7643c7376dd69a08acbfc9d1d7d548b10c846aGeorge Wilson *) Cured what's ailed mime for quite some time. If an AddSomething
0f7643c7376dd69a08acbfc9d1d7d548b10c846aGeorge Wilson was given in the configuration (Language, Charset, Handler or
0f7643c7376dd69a08acbfc9d1d7d548b10c846aGeorge Wilson Encoding) Apache would set the content type as given by AddType,
0f7643c7376dd69a08acbfc9d1d7d548b10c846aGeorge Wilson but refused to check the mime.types file if AddType wasn't given
0f7643c7376dd69a08acbfc9d1d7d548b10c846aGeorge Wilson for that specific extension. Setting the AddHandler for .html
0f7643c7376dd69a08acbfc9d1d7d548b10c846aGeorge Wilson without setting the AddType text/html html would cause Apache to
0f7643c7376dd69a08acbfc9d1d7d548b10c846aGeorge Wilson use the default content type. [William Rowe]
0f7643c7376dd69a08acbfc9d1d7d548b10c846aGeorge Wilson *) Added some bulletproofing to memory allocation in the LDAP cache
0f7643c7376dd69a08acbfc9d1d7d548b10c846aGeorge Wilson code. [Graham Leggett]
0f7643c7376dd69a08acbfc9d1d7d548b10c846aGeorge WilsonChanges with Apache 2.0.25
0f7643c7376dd69a08acbfc9d1d7d548b10c846aGeorge Wilson *) Move the installed /manual directory out of the /htdocs/ tree, so
0f7643c7376dd69a08acbfc9d1d7d548b10c846aGeorge Wilson that it can be kept more independently from the remaining document
0f7643c7376dd69a08acbfc9d1d7d548b10c846aGeorge Wilson root. The "Alias /manual ..." already allowed for easy projection
0f7643c7376dd69a08acbfc9d1d7d548b10c846aGeorge Wilson into existing private document trees. [Martin Kraemer]
22e30981d82a0b6dc89253596ededafae8655e00George Wilson *) Add specified user attributes to the environment when using
22e30981d82a0b6dc89253596ededafae8655e00George Wilson mod_auth_ldap. This allows you to use mod_include to embed specified
80eb36f241abf8c076119fb4c49a55fd61ebc710George Wilson user attributes in a page like so:
80eb36f241abf8c076119fb4c49a55fd61ebc710George Wilson Hello <!--#echo var="AUTHENTICATE_CN"-->, how are you?
0713e232b7712cd27d99e1e935ebb8d5de61c57dGeorge Wilson [Graham Leggett]
80eb36f241abf8c076119fb4c49a55fd61ebc710George Wilson *) Fix a performance problem with the worker MPM. We now create
0713e232b7712cd27d99e1e935ebb8d5de61c57dGeorge Wilson transaction pools once, and re-use them for each connection.
0713e232b7712cd27d99e1e935ebb8d5de61c57dGeorge Wilson [Aaron Bannert <aaron@clove.org>]
0713e232b7712cd27d99e1e935ebb8d5de61c57dGeorge Wilson *) Modfied mod_mime to prevent mod_negotation from serving a multiview
0713e232b7712cd27d99e1e935ebb8d5de61c57dGeorge Wilson of a 'handler' or 'filter', so that any filename extension that does
80eb36f241abf8c076119fb4c49a55fd61ebc710George Wilson not contribute to the negotiated metadata can't be served without
0713e232b7712cd27d99e1e935ebb8d5de61c57dGeorge Wilson an explicit request. E.g., if the .Z extension is associated with
80eb36f241abf8c076119fb4c49a55fd61ebc710George Wilson an unzip filter, the user request somefile.Z.html, mod_negotiation
0713e232b7712cd27d99e1e935ebb8d5de61c57dGeorge Wilson won't serve it. It can serve somefile.Z.html when somefile.Z is
0713e232b7712cd27d99e1e935ebb8d5de61c57dGeorge Wilson requested, since the .Z extension is explictly requested, if the
0713e232b7712cd27d99e1e935ebb8d5de61c57dGeorge Wilson .html extension is associated with ContentType text/html.
0713e232b7712cd27d99e1e935ebb8d5de61c57dGeorge Wilson [William Rowe]
0713e232b7712cd27d99e1e935ebb8d5de61c57dGeorge Wilson *) Introduce the AddInputFilter filter[;filter...] ext [ext...]
80eb36f241abf8c076119fb4c49a55fd61ebc710George Wilson and corresponding AddOutputFilter syntax, to insert one or more
0713e232b7712cd27d99e1e935ebb8d5de61c57dGeorge Wilson filters by mod_mime filename extension processing.
80eb36f241abf8c076119fb4c49a55fd61ebc710George Wilson [William Rowe]
0713e232b7712cd27d99e1e935ebb8d5de61c57dGeorge Wilson *) Fix a growing connection pool in core_output_filter() for
80eb36f241abf8c076119fb4c49a55fd61ebc710George Wilson keepalive requests. [Jeff Trawick]
0713e232b7712cd27d99e1e935ebb8d5de61c57dGeorge Wilson *) Moved split_and_pass_pretag_buckets back to being a
80eb36f241abf8c076119fb4c49a55fd61ebc710George Wilson macro at Ryans's request. Removed the return from it
80eb36f241abf8c076119fb4c49a55fd61ebc710George Wilson by setting and returning a return code instead. Updated
80eb36f241abf8c076119fb4c49a55fd61ebc710George Wilson the code to check the return code from the macro and
80eb36f241abf8c076119fb4c49a55fd61ebc710George Wilson do the right thing. [Paul J. Reder]
ecc2d604e885a75cc75e647b5641af99d5a6f4a6bonwick *) Fix a segfault when a numeric value was received for Host:.
0713e232b7712cd27d99e1e935ebb8d5de61c57dGeorge Wilson [Jeff Trawick]
ecc2d604e885a75cc75e647b5641af99d5a6f4a6bonwick *) Add a function ap_remove_input_filter. This is to match
0713e232b7712cd27d99e1e935ebb8d5de61c57dGeorge Wilson up with ap_remove_output_filter. [Ryan Bloom]
ecc2d604e885a75cc75e647b5641af99d5a6f4a6bonwick *) Clean up location_walk, so that this step performs a minimum
0713e232b7712cd27d99e1e935ebb8d5de61c57dGeorge Wilson amount of redundant effort (it must be run twice, but it will no
ecc2d604e885a75cc75e647b5641af99d5a6f4a6bonwick longer reparse all <Location > blocks when the request uri
0713e232b7712cd27d99e1e935ebb8d5de61c57dGeorge Wilson hadn't changed.) [William Rowe]
ecc2d604e885a75cc75e647b5641af99d5a6f4a6bonwick *) Eliminate proxy: (and all other 'special') processing from the
0713e232b7712cd27d99e1e935ebb8d5de61c57dGeorge Wilson ap_directory_walk() phase. Modules that want to use special
0713e232b7712cd27d99e1e935ebb8d5de61c57dGeorge Wilson walk logic should refer to the mod_proxy map_to_location example,
d6e555bdd793b8bc8fe57d5f12c3d69c813d0661George Wilson with it's proxy_walk and proxysection implementation. This makes
d6e555bdd793b8bc8fe57d5f12c3d69c813d0661George Wilson either directory_walk flavor much more legible, since that phase
0713e232b7712cd27d99e1e935ebb8d5de61c57dGeorge Wilson only runs against real <Directory > blocks.
0713e232b7712cd27d99e1e935ebb8d5de61c57dGeorge Wilson [William Rowe]
d6e555bdd793b8bc8fe57d5f12c3d69c813d0661George Wilson *) Fix a security problem in mod_include which would allow
0713e232b7712cd27d99e1e935ebb8d5de61c57dGeorge Wilson an SSI document to be passed to the client unparsed.
d6e555bdd793b8bc8fe57d5f12c3d69c813d0661George Wilson [Cliff Woolley, Brian Pane]
80eb36f241abf8c076119fb4c49a55fd61ebc710George Wilson *) Introduce the map_to_storage hook, which allows modules to bypass
0713e232b7712cd27d99e1e935ebb8d5de61c57dGeorge Wilson the directory_walk and file_walk for non-file requests. TRACE
0713e232b7712cd27d99e1e935ebb8d5de61c57dGeorge Wilson shortcut moved to http_protocol.c as APR_HOOK_MIDDLE, and the
0713e232b7712cd27d99e1e935ebb8d5de61c57dGeorge Wilson directory_walk/file_walk happen as APR_HOOK_VERY_LAST in core.c.
80eb36f241abf8c076119fb4c49a55fd61ebc710George Wilson [William Rowe]
d6e555bdd793b8bc8fe57d5f12c3d69c813d0661George Wilson *) Add the ability for mod_include to add the INCLUDES filter
d6e555bdd793b8bc8fe57d5f12c3d69c813d0661George Wilson if the file is configured for the server-parsed handler.
d6e555bdd793b8bc8fe57d5f12c3d69c813d0661George Wilson This makes the configuration for .shtml files much easier
0713e232b7712cd27d99e1e935ebb8d5de61c57dGeorge Wilson to understand, and allows mod_include to honor Apache 1.3
d6e555bdd793b8bc8fe57d5f12c3d69c813d0661George Wilson config files. Based on Doug MacEachern's patch to PHP
0713e232b7712cd27d99e1e935ebb8d5de61c57dGeorge Wilson to do the same thing. [Ryan Bloom]
0713e232b7712cd27d99e1e935ebb8d5de61c57dGeorge Wilson *) force OpenSSL to ignore process local-caching and to always
0713e232b7712cd27d99e1e935ebb8d5de61c57dGeorge Wilson get/set/delete sessions using mod_ssl's callbacks
0713e232b7712cd27d99e1e935ebb8d5de61c57dGeorge Wilson [Madhusudan Mathihalli <madhusudan_mathihalli@hp.com>,
0713e232b7712cd27d99e1e935ebb8d5de61c57dGeorge Wilson Geoff Thorpe <geoff@geoffthorpe.net>]
ecc2d604e885a75cc75e647b5641af99d5a6f4a6bonwick *) Make the worker MPM shutdown and restart cleanly. This also
ecc2d604e885a75cc75e647b5641af99d5a6f4a6bonwick cleans up some race conditions, and gets the worker using
0713e232b7712cd27d99e1e935ebb8d5de61c57dGeorge Wilson pools more cleanly. [Aaron Bannert <aaron@clove.org>]
0713e232b7712cd27d99e1e935ebb8d5de61c57dGeorge Wilson *) Implement CRYPTO_set_locking_callback() in terms of apr_lock
0713e232b7712cd27d99e1e935ebb8d5de61c57dGeorge Wilson [Madhusudan Mathihalli <madhusudan_mathihalli@hp.com>]
0713e232b7712cd27d99e1e935ebb8d5de61c57dGeorge Wilson *) Fix for mod_include. Ryan's patch to check error
0713e232b7712cd27d99e1e935ebb8d5de61c57dGeorge Wilson codes put a return in the wrong place. Also, the
ecc2d604e885a75cc75e647b5641af99d5a6f4a6bonwick include handler return code wasn't being checked.
ecc2d604e885a75cc75e647b5641af99d5a6f4a6bonwick I don't like macros with returns, so I converted
ecc2d604e885a75cc75e647b5641af99d5a6f4a6bonwick SPLIT_AND_PASS_PRETAG_BUCKETS into a function.
0713e232b7712cd27d99e1e935ebb8d5de61c57dGeorge Wilson [Paul J. Reder <rederpj@raleigh.ibm.com>]
0713e232b7712cd27d99e1e935ebb8d5de61c57dGeorge Wilson *) fix segv in mod_mime if no AddTypes are configured
0713e232b7712cd27d99e1e935ebb8d5de61c57dGeorge Wilson [John Sterling <sterling@covalent.net>]
0713e232b7712cd27d99e1e935ebb8d5de61c57dGeorge Wilson *) Enable ssl client authentication at SSL_accept time
0713e232b7712cd27d99e1e935ebb8d5de61c57dGeorge Wilson [Madhusudan Mathihalli <madhusudan_mathihalli@hp.com>]
0713e232b7712cd27d99e1e935ebb8d5de61c57dGeorge Wilson *) Fix a segfault in mod_include when the original request has no
0713e232b7712cd27d99e1e935ebb8d5de61c57dGeorge Wilson associated filename (e.g., we're filtering the error document for
0713e232b7712cd27d99e1e935ebb8d5de61c57dGeorge Wilson a bad URI). [Jeff Trawick]
0713e232b7712cd27d99e1e935ebb8d5de61c57dGeorge Wilson *) Fix a storage leak (a strdup() call) in mod_mime_magic. [Jeff Trawick]
0713e232b7712cd27d99e1e935ebb8d5de61c57dGeorge Wilson *) The prefork and OS/2 MPMs are overwriting the pid file when a second copy
ecc2d604e885a75cc75e647b5641af99d5a6f4a6bonwick of httpd is started and shuts down due to socket conflict. Moving the
ecc2d604e885a75cc75e647b5641af99d5a6f4a6bonwick call to ap_log_pid solves the problem.
0713e232b7712cd27d99e1e935ebb8d5de61c57dGeorge Wilson *) Changed the late-1.3 log_config substitution %c to %X, to log the
0713e232b7712cd27d99e1e935ebb8d5de61c57dGeorge Wilson status of the closed connection, as it conflicts with the far more
0713e232b7712cd27d99e1e935ebb8d5de61c57dGeorge Wilson common, historical ssl logging directive %...{var}c. [William Rowe]
0713e232b7712cd27d99e1e935ebb8d5de61c57dGeorge Wilson *) Added the common error/ tree to the build/install targets
0713e232b7712cd27d99e1e935ebb8d5de61c57dGeorge Wilson (similar to the common icons/ tree) for the multi-language error
0713e232b7712cd27d99e1e935ebb8d5de61c57dGeorge Wilson messages that Lars committed earlier. [William Rowe]
0713e232b7712cd27d99e1e935ebb8d5de61c57dGeorge Wilson *) Added a multi process, multi threaded OS/2 MPM mpmt_os2. [Brian Havard]
0713e232b7712cd27d99e1e935ebb8d5de61c57dGeorge Wilson *) Added a default commented-out mod_ldap and mod_auth_ldap
0713e232b7712cd27d99e1e935ebb8d5de61c57dGeorge Wilson configuration to httpd-std.conf and httpd-win.conf
0713e232b7712cd27d99e1e935ebb8d5de61c57dGeorge Wilson [Graham Leggett]
80eb36f241abf8c076119fb4c49a55fd61ebc710George Wilson *) Added documentation for mod_ldap and mod_auth_ldap.
d6e555bdd793b8bc8fe57d5f12c3d69c813d0661George Wilson [Graham Leggett]
0713e232b7712cd27d99e1e935ebb8d5de61c57dGeorge Wilson *) Enabled negative caching on attribute comparisons in the LDAP cache.
d6e555bdd793b8bc8fe57d5f12c3d69c813d0661George Wilson Fixed a problem where the default cache TTL was set in milliseconds
0713e232b7712cd27d99e1e935ebb8d5de61c57dGeorge Wilson not microseconds causing the cache to time out almost immediately.
0713e232b7712cd27d99e1e935ebb8d5de61c57dGeorge Wilson [Graham Leggett]
0713e232b7712cd27d99e1e935ebb8d5de61c57dGeorge Wilson *) Fixed all the #if APR_HAS_SHARED_MEMORY checks within the LDAP
d6e555bdd793b8bc8fe57d5f12c3d69c813d0661George Wilson module code to follow APR. [Graham Leggett]
0713e232b7712cd27d99e1e935ebb8d5de61c57dGeorge Wilson *) Fixed LDAP cleanup on graceful restarts. LDAP connections are now
0713e232b7712cd27d99e1e935ebb8d5de61c57dGeorge Wilson cleaned up when the connection pool pool is cleaned up.
0713e232b7712cd27d99e1e935ebb8d5de61c57dGeorge Wilson [Graham Leggett]
8363e80ae72609660f6090766ca8c2c18aa53f0cGeorge Wilson *) Fix a minor issue with Jeff Trawick's mod_include
0713e232b7712cd27d99e1e935ebb8d5de61c57dGeorge Wilson patch. Without this patch, the code will just allocate
8363e80ae72609660f6090766ca8c2c18aa53f0cGeorge Wilson more bytes in get_combined_directive than are needed.
8363e80ae72609660f6090766ca8c2c18aa53f0cGeorge Wilson *) Added the LDAP authentication module mod_auth_ldap.
8363e80ae72609660f6090766ca8c2c18aa53f0cGeorge Wilson [Dave Carrigan <dave@rudedog.org>, Graham Leggett]
8363e80ae72609660f6090766ca8c2c18aa53f0cGeorge Wilson *) Added the LDAP cache and connection pooling module mod_ldap.
8363e80ae72609660f6090766ca8c2c18aa53f0cGeorge Wilson [Dave Carrigan <dave@rudedog.org>, Graham Leggett]
0713e232b7712cd27d99e1e935ebb8d5de61c57dGeorge Wilson *) Fix --enable-modules=all breakage with mod_auth_db and mod_auth_digest
0713e232b7712cd27d99e1e935ebb8d5de61c57dGeorge Wilson by allowing a module to disable itself if its prerequisites are not
8363e80ae72609660f6090766ca8c2c18aa53f0cGeorge Wilson met. [Justin Erenkrantz]
0713e232b7712cd27d99e1e935ebb8d5de61c57dGeorge WilsonChanges with Apache 2.0.24
0713e232b7712cd27d99e1e935ebb8d5de61c57dGeorge Wilson *) Fix a couple of issues in mod_include when the tag appeared at
0713e232b7712cd27d99e1e935ebb8d5de61c57dGeorge Wilson offsets near 8192 in the file being parsed. [Jeff Trawick]
0713e232b7712cd27d99e1e935ebb8d5de61c57dGeorge Wilson *) Fix an assertion failure in mod_ssl when the keepalive timeout is
0713e232b7712cd27d99e1e935ebb8d5de61c57dGeorge Wilson reached. [Jeff Trawick]
0713e232b7712cd27d99e1e935ebb8d5de61c57dGeorge Wilson *) Numerous improvements to the Win32 build system. Introduced command line
0713e232b7712cd27d99e1e935ebb8d5de61c57dGeorge Wilson builds without requiring .mak files for MSVC 6.0 and later versions.
8363e80ae72609660f6090766ca8c2c18aa53f0cGeorge Wilson Improved .dsp file compatibility for both Visual Studio 5.0 and 6.0 users.
0713e232b7712cd27d99e1e935ebb8d5de61c57dGeorge Wilson [William Rowe]
0713e232b7712cd27d99e1e935ebb8d5de61c57dGeorge Wilson *) Assorted corrections and improvements to the winnt_mpm startup code. Better
0713e232b7712cd27d99e1e935ebb8d5de61c57dGeorge Wilson reporting of uninstalled services and other error conditions, and changed the
0713e232b7712cd27d99e1e935ebb8d5de61c57dGeorge Wilson default service name to Apache2. [William Rowe]
0713e232b7712cd27d99e1e935ebb8d5de61c57dGeorge Wilson *) Numerous improvements to the Win32 ApacheMonitor utility, including winnt_mpm
0713e232b7712cd27d99e1e935ebb8d5de61c57dGeorge Wilson compatibility with existing Apache 1.3 Win32 Apache management utilites.
0713e232b7712cd27d99e1e935ebb8d5de61c57dGeorge Wilson [Mladen Turk <mturk@mappingsoft.com>, William Rowe]
0713e232b7712cd27d99e1e935ebb8d5de61c57dGeorge Wilson *) Fixed the segfaults in mod_mime introduced by hash tables in 2.0.20.
0713e232b7712cd27d99e1e935ebb8d5de61c57dGeorge Wilson [William Rowe, Greg Ames]
0713e232b7712cd27d99e1e935ebb8d5de61c57dGeorge Wilson *) Rounded out the mod_mime Add/Remove pairs by adding RemoveLanguage
0713e232b7712cd27d99e1e935ebb8d5de61c57dGeorge Wilson and RemoveCharset directives. [William Rowe]
0713e232b7712cd27d99e1e935ebb8d5de61c57dGeorge Wilson *) The Unix MPMs other than perchild now allow child server
0713e232b7712cd27d99e1e935ebb8d5de61c57dGeorge Wilson processes to use the accept mutex when starting as root and
0713e232b7712cd27d99e1e935ebb8d5de61c57dGeorge Wilson using SysV sems for the accept mutex. Previously, this
0713e232b7712cd27d99e1e935ebb8d5de61c57dGeorge Wilson combination would lead to fatal errors in the child server
d6e555bdd793b8bc8fe57d5f12c3d69c813d0661George Wilson processes. perchild can't use SysV sems because of security
d6e555bdd793b8bc8fe57d5f12c3d69c813d0661George Wilson issues. [Jeff Trawick, Greg Ames]
80eb36f241abf8c076119fb4c49a55fd61ebc710George Wilson *) Added Win32 revision stamp resources to all http binaries
80eb36f241abf8c076119fb4c49a55fd61ebc710George Wilson (including modules/ and support/ tools.) PR7322 [William Rowe]
80eb36f241abf8c076119fb4c49a55fd61ebc710George Wilson *) Fix ap_rvprintf to support more than 4K of data at one time.
80eb36f241abf8c076119fb4c49a55fd61ebc710George Wilson [Cody Sherr <csherr@covalent.net>]
d6e555bdd793b8bc8fe57d5f12c3d69c813d0661George Wilson *) We have always used the obsolete/deprecated Netscape syntax
0713e232b7712cd27d99e1e935ebb8d5de61c57dGeorge Wilson for our tracking cookies; now the CookieStyle directive
0713e232b7712cd27d99e1e935ebb8d5de61c57dGeorge Wilson allows the Webmaster to choose the Netscape, RFC2109, or
0713e232b7712cd27d99e1e935ebb8d5de61c57dGeorge Wilson RFC2965 format. The new CookieDomain directive allows the
0713e232b7712cd27d99e1e935ebb8d5de61c57dGeorge Wilson setting of the cookie's Domain= attribute, too. PR #s 5006,
0713e232b7712cd27d99e1e935ebb8d5de61c57dGeorge Wilson 5023, 5920, 6140 [Ken Coar]
0713e232b7712cd27d99e1e935ebb8d5de61c57dGeorge Wilson *) Tweak server/Makefile so that the rules for generating exports.c
80eb36f241abf8c076119fb4c49a55fd61ebc710George Wilson are compatible with make utilities which don't expand wildcards
bf16b11e8deb633dd6c4296d46e92399d1582df4Matthew Ahrens in a dependency list (e.g., OS/390 make, certain levels of GNU
0713e232b7712cd27d99e1e935ebb8d5de61c57dGeorge Wilson make). [Jeff Trawick]
80eb36f241abf8c076119fb4c49a55fd61ebc710George Wilson *) Install the SSL headers. [John Sterling <sterling@covalent.net>]
d6e555bdd793b8bc8fe57d5f12c3d69c813d0661George Wilson *) Begin to sanitize the MPM configuration directives. Now, all
0713e232b7712cd27d99e1e935ebb8d5de61c57dGeorge Wilson MPMs use the same functions for all common MPM directives. This
2e4c998613148111f2fc5371085331ffb39122ffGeorge Wilson should make it easier to catch all bugs in these directives once.
80eb36f241abf8c076119fb4c49a55fd61ebc710George Wilson [Cody Sherr <csherr@covalent.net>]
80eb36f241abf8c076119fb4c49a55fd61ebc710George Wilson *) Close a major resource leak. Every time we had issued a
80eb36f241abf8c076119fb4c49a55fd61ebc710George Wilson graceful restart, we leaked a socket descriptor.
80eb36f241abf8c076119fb4c49a55fd61ebc710George Wilson *) Fix a problem with the new method code. We need to cast
80eb36f241abf8c076119fb4c49a55fd61ebc710George Wilson the 1 to an apr_int64_t or it will be treated as a 32-bit
80eb36f241abf8c076119fb4c49a55fd61ebc710George Wilson integer, and it will wrap after being shifted 32 times.
80eb36f241abf8c076119fb4c49a55fd61ebc710George Wilson [Cody Sherr <csherr@covalent.net> and Ryan Morgan <rmorgan@covalent.net>]
0713e232b7712cd27d99e1e935ebb8d5de61c57dGeorge Wilson *) Fix a bug in mod_expires. Previous to this patch, if you
d6e555bdd793b8bc8fe57d5f12c3d69c813d0661George Wilson told mod_expires to add 604800 seconds to the last-modified
0713e232b7712cd27d99e1e935ebb8d5de61c57dGeorge Wilson time, it actually added 604800 usec's to the last-modified time,
0713e232b7712cd27d99e1e935ebb8d5de61c57dGeorge Wilson so that when looking at the response it looked like nothing
0713e232b7712cd27d99e1e935ebb8d5de61c57dGeorge Wilson had been done. The root of the problem was that we always compute
0713e232b7712cd27d99e1e935ebb8d5de61c57dGeorge Wilson time in usec's, but we ask users to input sec's. This means we
0713e232b7712cd27d99e1e935ebb8d5de61c57dGeorge Wilson need to convert to usec's before using those values.
d6e555bdd793b8bc8fe57d5f12c3d69c813d0661George Wilson *) The worker MPM now handles shutdown and restart requests. It
bf16b11e8deb633dd6c4296d46e92399d1582df4Matthew Ahrens definitely isn't perfect, but we do stop the servers correctly.
0713e232b7712cd27d99e1e935ebb8d5de61c57dGeorge Wilson The biggest problem right now is that SIGHUP causes the server to
0713e232b7712cd27d99e1e935ebb8d5de61c57dGeorge Wilson just die. [Ryan Bloom]
0713e232b7712cd27d99e1e935ebb8d5de61c57dGeorge WilsonChanges with Apache 2.0.23
0713e232b7712cd27d99e1e935ebb8d5de61c57dGeorge Wilson *) Use the prefork MPM by default on Unix. [various]
d6e555bdd793b8bc8fe57d5f12c3d69c813d0661George Wilson *) Added a systray icon monitor application for Win32.
d6e555bdd793b8bc8fe57d5f12c3d69c813d0661George Wilson [Mladen Turk <mturk@mappingsoft.com>]
d6e555bdd793b8bc8fe57d5f12c3d69c813d0661George Wilson *) mod_rewrite: Fix the line ending on some non-Unix systems for
d6e555bdd793b8bc8fe57d5f12c3d69c813d0661George Wilson messages written to the rewrite log.
d6e555bdd793b8bc8fe57d5f12c3d69c813d0661George Wilson [Richard Labennett <rlabenn@us.ibm.com>]
d6e555bdd793b8bc8fe57d5f12c3d69c813d0661George Wilson *) All mod_autoindex query parsing is now quietly quashed with the
d6e555bdd793b8bc8fe57d5f12c3d69c813d0661George Wilson IndexOption IgnoreClient. The IndexOption SuppressColumnSorting
d6e555bdd793b8bc8fe57d5f12c3d69c813d0661George Wilson still drops the column sort <a href>'s for the column headers, but
0713e232b7712cd27d99e1e935ebb8d5de61c57dGeorge Wilson IgnoreClient is required to ignore these Query options entirely.
d6e555bdd793b8bc8fe57d5f12c3d69c813d0661George Wilson [William Rowe]
d6e555bdd793b8bc8fe57d5f12c3d69c813d0661George Wilson *) Introduced new mod_autoindex query argument parsing for F=[0|1|2]
d6e555bdd793b8bc8fe57d5f12c3d69c813d0661George Wilson to allow the client to select plain, FancyIndexing or HTMLTable
d6e555bdd793b8bc8fe57d5f12c3d69c813d0661George Wilson formatting, V=[0|1] to inhibit or enable version sorting, and
d6e555bdd793b8bc8fe57d5f12c3d69c813d0661George Wilson P=pattern to return only specific files. The old Query Arguments
0713e232b7712cd27d99e1e935ebb8d5de61c57dGeorge Wilson were reorganized as C=f for sorting column 'f' (same N, D, S, or M
2e4c998613148111f2fc5371085331ffb39122ffGeorge Wilson as before), and O=A|D for ordering ascending or descending.
80eb36f241abf8c076119fb4c49a55fd61ebc710George Wilson [William Rowe]
80eb36f241abf8c076119fb4c49a55fd61ebc710George Wilson *) Fixed an error in mod_include's directive parsing routines which
80eb36f241abf8c076119fb4c49a55fd61ebc710George Wilson caused #if, #elif, and #else expressions containing backslashes
0713e232b7712cd27d99e1e935ebb8d5de61c57dGeorge Wilson to be improperly evaluated. [Cliff Woolley]
0713e232b7712cd27d99e1e935ebb8d5de61c57dGeorge Wilson *) Introduced new mod_autoindex IndexOptions flags: SuppressIcon to
0713e232b7712cd27d99e1e935ebb8d5de61c57dGeorge Wilson drop the icon column, SuppressRules to drop the <hr> elements,
0713e232b7712cd27d99e1e935ebb8d5de61c57dGeorge Wilson and HTMLTable to create rudimentary HTML table listings (implies
80eb36f241abf8c076119fb4c49a55fd61ebc710George Wilson FancyIndexing). [William Rowe]
80eb36f241abf8c076119fb4c49a55fd61ebc710George Wilson *) Re-introduced the mod_autoindex IndexOptions flag TrackModified
0713e232b7712cd27d99e1e935ebb8d5de61c57dGeorge Wilson from Apache 1.3.15. This is needed for two reasons, first, given
80eb36f241abf8c076119fb4c49a55fd61ebc710George Wilson multiple machines within a server farm, ETags and Last-Modified
0713e232b7712cd27d99e1e935ebb8d5de61c57dGeorge Wilson stamps won't correspond from machine to machine, and second, many
0713e232b7712cd27d99e1e935ebb8d5de61c57dGeorge Wilson Unixes don't capture changes to the date or time stamp of existing
0713e232b7712cd27d99e1e935ebb8d5de61c57dGeorge Wilson files, since these don't modify the dirent itself. [William Rowe]
80eb36f241abf8c076119fb4c49a55fd61ebc710George Wilson *) Re-introduced the mod_autoindex IndexOptions flag FoldersFirst
80eb36f241abf8c076119fb4c49a55fd61ebc710George Wilson and DirectoryWidth options from Apache 1.3.10.
0713e232b7712cd27d99e1e935ebb8d5de61c57dGeorge Wilson [William Rowe, Ken Coar]
80eb36f241abf8c076119fb4c49a55fd61ebc710George Wilson *) Eliminated FancyIndexing directive, deprecated early in Apache
0713e232b7712cd27d99e1e935ebb8d5de61c57dGeorge Wilson 1.3 by the IndexOptions FancyIndexing syntax. [William Rowe]
0713e232b7712cd27d99e1e935ebb8d5de61c57dGeorge Wilson *) mod_autoindex now excludes any file names that would result in
0713e232b7712cd27d99e1e935ebb8d5de61c57dGeorge Wilson an error, other than a success or redirect. Also optimized
80eb36f241abf8c076119fb4c49a55fd61ebc710George Wilson the parent directory, always included except in the URI '/'.
0713e232b7712cd27d99e1e935ebb8d5de61c57dGeorge Wilson [William Rowe]
0713e232b7712cd27d99e1e935ebb8d5de61c57dGeorge Wilson *) Refactored mod_negotiation and mod_mime to help mod_dir accept
80eb36f241abf8c076119fb4c49a55fd61ebc710George Wilson negotiated index pages, and prevent the server from defaulting
0713e232b7712cd27d99e1e935ebb8d5de61c57dGeorge Wilson to an autoindex of the directory. mod_negotiation will now die
0713e232b7712cd27d99e1e935ebb8d5de61c57dGeorge Wilson with a 500 Internal Error if it could match some filenames
80eb36f241abf8c076119fb4c49a55fd61ebc710George Wilson (e.g. for mod_dir) but none can be served. mod_negotation now
0713e232b7712cd27d99e1e935ebb8d5de61c57dGeorge Wilson refuses to serve any file with an extention that mod_mime doesn't
0713e232b7712cd27d99e1e935ebb8d5de61c57dGeorge Wilson recognize, and wasn't part of the request. [William Rowe]
0713e232b7712cd27d99e1e935ebb8d5de61c57dGeorge Wilson *) Eliminate mod_cgi's handling of .exe files without the .exe file
80eb36f241abf8c076119fb4c49a55fd61ebc710George Wilson extension. This is already handled by multiviews, if the admin
80eb36f241abf8c076119fb4c49a55fd61ebc710George Wilson wishes to AddHandler .exe or define a content type handler and
80eb36f241abf8c076119fb4c49a55fd61ebc710George Wilson associate .exe files with that content type. Multiviews must be
0713e232b7712cd27d99e1e935ebb8d5de61c57dGeorge Wilson enabled to allow these to be served. [William Rowe]
80eb36f241abf8c076119fb4c49a55fd61ebc710George Wilson *) Speed up the server's response to a spike in incoming workload
80eb36f241abf8c076119fb4c49a55fd61ebc710George Wilson or restarts by assigning empty scoreboard slots to new processes
0713e232b7712cd27d99e1e935ebb8d5de61c57dGeorge Wilson when they are available. [Greg Ames]
0713e232b7712cd27d99e1e935ebb8d5de61c57dGeorge Wilson *) Add a handler to mod_includes.c. This handler is designed to
0713e232b7712cd27d99e1e935ebb8d5de61c57dGeorge Wilson implement the XbitHack directive. This can't be done with a
0713e232b7712cd27d99e1e935ebb8d5de61c57dGeorge Wilson fixup, because we need to check the content-type, which is
0713e232b7712cd27d99e1e935ebb8d5de61c57dGeorge Wilson only available in the handler phase. [Ryan Bloom]
0713e232b7712cd27d99e1e935ebb8d5de61c57dGeorge Wilson *) Make the includes filter check return codes from filters lower in
0713e232b7712cd27d99e1e935ebb8d5de61c57dGeorge Wilson the filter chain. If a lower level filter returns an error, then
0713e232b7712cd27d99e1e935ebb8d5de61c57dGeorge Wilson the request needs to stop immediately. This allows mod_include to
0713e232b7712cd27d99e1e935ebb8d5de61c57dGeorge Wilson stop parsing data once a lower filter recognizes an error.
8d18220deb04ec7b12410cd90deb4d45e66d49bfMark J Musante *) Add the ability to extend the methods that Apache understands
8d18220deb04ec7b12410cd90deb4d45e66d49bfMark J Musante and have those methods <limit>able in the httpd.conf. It uses
80eb36f241abf8c076119fb4c49a55fd61ebc710George Wilson the same bit mask/shifted offset as the original HTTP methods
0713e232b7712cd27d99e1e935ebb8d5de61c57dGeorge Wilson such as M_GET or M_POST, but expands the total bits from an int to
80eb36f241abf8c076119fb4c49a55fd61ebc710George Wilson an ap_int64_t to handle more bits for new request methods than
0713e232b7712cd27d99e1e935ebb8d5de61c57dGeorge Wilson an int provides. [Cody Sherr <csherr@covalent.net>]
0713e232b7712cd27d99e1e935ebb8d5de61c57dGeorge Wilson *) Fix broken mod_mime behavior in merging its arguments. Possible
bf16b11e8deb633dd6c4296d46e92399d1582df4Matthew Ahrens cause of unexplicable crashes introduced in 2.0.20. [William Rowe]
0713e232b7712cd27d99e1e935ebb8d5de61c57dGeorge Wilson *) Solve many mod_ssl porting issues (too many to detail) with
80eb36f241abf8c076119fb4c49a55fd61ebc710George Wilson help from the whole team, but most notably [Ralf S. Engelschall,
0713e232b7712cd27d99e1e935ebb8d5de61c57dGeorge Wilson Madhusudan Mathihalli <madhusudan_mathihalli@hp.com>,
0713e232b7712cd27d99e1e935ebb8d5de61c57dGeorge Wilson Doug MacEachern, William Rowe, Cliff Woolley]
80eb36f241abf8c076119fb4c49a55fd61ebc710George Wilson *) More stall fixes for the threaded & worker mpm's.
80eb36f241abf8c076119fb4c49a55fd61ebc710George Wilson Make mod_status output more accurate. Don't
80eb36f241abf8c076119fb4c49a55fd61ebc710George Wilson count workers in processes which aren't actively
0713e232b7712cd27d99e1e935ebb8d5de61c57dGeorge Wilson serving requests. [Greg Ames]
80eb36f241abf8c076119fb4c49a55fd61ebc710George Wilson *) Win32: Get SSI exec cgi tag working. [Bill Stoddard]
0713e232b7712cd27d99e1e935ebb8d5de61c57dGeorge Wilson *) Add a single listener/multiple worker MPM. This MPM is
0713e232b7712cd27d99e1e935ebb8d5de61c57dGeorge Wilson definately not fully correct, but it allows us to solve many
80eb36f241abf8c076119fb4c49a55fd61ebc710George Wilson of the problems that exist in the threaded MPM. This is a
0713e232b7712cd27d99e1e935ebb8d5de61c57dGeorge Wilson modified version of the threaded MPM. [Ryan Bloom]
8d18220deb04ec7b12410cd90deb4d45e66d49bfMark J Musante *) Improve content generation throughout Apache, providing closer
0713e232b7712cd27d99e1e935ebb8d5de61c57dGeorge Wilson compliance with HTML 3.2, HTML 4.01 Transitional and XHTML 1.0
0713e232b7712cd27d99e1e935ebb8d5de61c57dGeorge Wilson Transitional specifications. [William Rowe]
0713e232b7712cd27d99e1e935ebb8d5de61c57dGeorge WilsonChanges with Apache 2.0.22
80eb36f241abf8c076119fb4c49a55fd61ebc710George Wilson *) Fix a problem where the threaded MPM stalls after restarts or
0713e232b7712cd27d99e1e935ebb8d5de61c57dGeorge Wilson segfaults. Also prevent multiple active processes from using
0713e232b7712cd27d99e1e935ebb8d5de61c57dGeorge Wilson the same scoreboard slot. [Greg Ames]
80eb36f241abf8c076119fb4c49a55fd61ebc710George Wilson *) Apache/Win32 now fills in the service description with Apache's
80eb36f241abf8c076119fb4c49a55fd61ebc710George Wilson server version string, including loaded and advertised modules.
80eb36f241abf8c076119fb4c49a55fd61ebc710George Wilson [William Rowe]
0713e232b7712cd27d99e1e935ebb8d5de61c57dGeorge Wilson *) Improved support for the Win32 build, to recover gracefully from
2e4c998613148111f2fc5371085331ffb39122ffGeorge Wilson missing apr or apr-util directories or the awk interpreter,
ecc2d604e885a75cc75e647b5641af99d5a6f4a6bonwick create the proper cgi-bin examples, including a test-cgi.bat, and
ecc2d604e885a75cc75e647b5641af99d5a6f4a6bonwick fix the perl shebang line for printenv.pl, when installing from
0713e232b7712cd27d99e1e935ebb8d5de61c57dGeorge Wilson the build environment. [William Rowe]
fa9e4066f08beec538e775443c5be79dd423fcabahrens *) Fix a segfault in threaded.c caused by passing uninitialized
fa9e4066f08beec538e775443c5be79dd423fcabahrens apr_thread_t * to apr_thread_join(). [Jeff Trawick]
fa9e4066f08beec538e775443c5be79dd423fcabahrens *) Use new APR number conversion functions to reduce CPU consumption
fa9e4066f08beec538e775443c5be79dd423fcabahrens when setting the content length, and in mod_log_config.
0713e232b7712cd27d99e1e935ebb8d5de61c57dGeorge Wilson *) Fix problem reported by Taketo Kabe <kabe@sra-tohoku.co.jp>
0713e232b7712cd27d99e1e935ebb8d5de61c57dGeorge Wilson where HEAD response headers were being repeated twice for
0713e232b7712cd27d99e1e935ebb8d5de61c57dGeorge Wilson files greater than 32K bytes (4*AP_MIN_BYTES_TO_WRITE). This
0713e232b7712cd27d99e1e935ebb8d5de61c57dGeorge Wilson problem in the http_header filter was exposed by the recent rewrite
0713e232b7712cd27d99e1e935ebb8d5de61c57dGeorge Wilson of the content_length filter. [Taketo Kabe, Bill Stoddard]
0713e232b7712cd27d99e1e935ebb8d5de61c57dGeorge Wilson *) Fix seg faults in mod_status with ExtendedStatus enabled, after
0713e232b7712cd27d99e1e935ebb8d5de61c57dGeorge Wilson restarts. A garbage pointer to a vhost's server_rec from the
0713e232b7712cd27d99e1e935ebb8d5de61c57dGeorge Wilson previous generation was being left around under certain
0713e232b7712cd27d99e1e935ebb8d5de61c57dGeorge Wilson conditions. [Greg Ames]
0713e232b7712cd27d99e1e935ebb8d5de61c57dGeorge Wilson *) Fix a cosmetic problem with mod_include. Non-existant SSI vars
0713e232b7712cd27d99e1e935ebb8d5de61c57dGeorge Wilson used to appear as '(none', without the closing paren.
0713e232b7712cd27d99e1e935ebb8d5de61c57dGeorge Wilson [G�nter Knauf <eflash@gmx.net>]
0713e232b7712cd27d99e1e935ebb8d5de61c57dGeorge Wilson *) Improve the exports generating awk script. In the past, we had
0713e232b7712cd27d99e1e935ebb8d5de61c57dGeorge Wilson work around problems in the awk script by avoiding some #if and
8363e80ae72609660f6090766ca8c2c18aa53f0cGeorge Wilson #ifdefs. This has bitten us many times in generating the exports.c
0713e232b7712cd27d99e1e935ebb8d5de61c57dGeorge Wilson file. This improvement allows corrects the header file parsing.
0713e232b7712cd27d99e1e935ebb8d5de61c57dGeorge Wilson [Sander Striker <striker@apache.org>]
0713e232b7712cd27d99e1e935ebb8d5de61c57dGeorge WilsonChanges with Apache 2.0.21
0713e232b7712cd27d99e1e935ebb8d5de61c57dGeorge Wilson *) Resolve the Win32 htpasswd bug, where a file that existed would be
0713e232b7712cd27d99e1e935ebb8d5de61c57dGeorge Wilson overwritten, regardless of the -c flag.
0713e232b7712cd27d99e1e935ebb8d5de61c57dGeorge Wilson [William Rowe, Mladen Turk <mladen.turk@mail.inet.hr>]
0713e232b7712cd27d99e1e935ebb8d5de61c57dGeorge Wilson *) Introduce connection sub-pools into ab. Truncating the lifetime
0713e232b7712cd27d99e1e935ebb8d5de61c57dGeorge Wilson of these allocations means that ab no longer perpetually grows
0713e232b7712cd27d99e1e935ebb8d5de61c57dGeorge Wilson its working set, running out of memory on large request attempts.
0713e232b7712cd27d99e1e935ebb8d5de61c57dGeorge Wilson [William Rowe]
0713e232b7712cd27d99e1e935ebb8d5de61c57dGeorge Wilson *) Make scoreboard creation a hook. This allows management
0713e232b7712cd27d99e1e935ebb8d5de61c57dGeorge Wilson modules to have access to the scoreboard at the time that it is
0713e232b7712cd27d99e1e935ebb8d5de61c57dGeorge Wilson created, and at every restart request.
8363e80ae72609660f6090766ca8c2c18aa53f0cGeorge Wilson [Cody Sherr <csherr@covalent.net>]
0713e232b7712cd27d99e1e935ebb8d5de61c57dGeorge Wilson *) Changed AP_MPMQ_MAX_DAEMONS to refer to MaxClients and
8363e80ae72609660f6090766ca8c2c18aa53f0cGeorge Wilson added an AP_MPMQ_MAX_DAEMON_USED to refer to the highest
8363e80ae72609660f6090766ca8c2c18aa53f0cGeorge Wilson daemon index actually used in the scoreboard. I also
8363e80ae72609660f6090766ca8c2c18aa53f0cGeorge Wilson updated the pertinent calls. [Paul J. Reder]
0713e232b7712cd27d99e1e935ebb8d5de61c57dGeorge Wilson *) Win32: Prevent listening sockets from being inherited by
0713e232b7712cd27d99e1e935ebb8d5de61c57dGeorge Wilson the Apache child process, CGI scripts, rotatelog process
0713e232b7712cd27d99e1e935ebb8d5de61c57dGeorge Wilson etc. If the Apache child process segfaults, any processes
0713e232b7712cd27d99e1e935ebb8d5de61c57dGeorge Wilson that the child started are not reaped. Prior to this fix,
8363e80ae72609660f6090766ca8c2c18aa53f0cGeorge Wilson these processes inherited the listening sockets which sometimes
0713e232b7712cd27d99e1e935ebb8d5de61c57dGeorge Wilson prevented the restarted Apache child process from accepting
0713e232b7712cd27d99e1e935ebb8d5de61c57dGeorge Wilson connections (ie, the server would hang).
0713e232b7712cd27d99e1e935ebb8d5de61c57dGeorge Wilson [Bill Stoddard]
0713e232b7712cd27d99e1e935ebb8d5de61c57dGeorge Wilson *) Provide vhost and request strings when ExtendedStatus is on.
0713e232b7712cd27d99e1e935ebb8d5de61c57dGeorge Wilson *) Fix some issues with the pod and prefork: check the pod *after*
0713e232b7712cd27d99e1e935ebb8d5de61c57dGeorge Wilson processing a connection so that a server processing a time-
0713e232b7712cd27d99e1e935ebb8d5de61c57dGeorge Wilson consuming request bails out as soon as practical; when the
0713e232b7712cd27d99e1e935ebb8d5de61c57dGeorge Wilson parent process wakes up a server process via connect(), use an
0713e232b7712cd27d99e1e935ebb8d5de61c57dGeorge Wilson APR timeout on the connect() so that we don't hang for a long
8363e80ae72609660f6090766ca8c2c18aa53f0cGeorge Wilson time if there aren't server processes around to do accept().
0713e232b7712cd27d99e1e935ebb8d5de61c57dGeorge Wilson [Jeff Trawick, Greg Ames]
1e9bd7ec42f2d3bf854c2da35310901194833267Prakash Surya *) Performance improvement to mod_mime.c. find_ct() in mod_mime,
1e9bd7ec42f2d3bf854c2da35310901194833267Prakash Surya spends a lot of time in apr_table_get calls. Using the default
1e9bd7ec42f2d3bf854c2da35310901194833267Prakash Surya httpd.conf, the tables for languages and charsets are somewhat
fa9e4066f08beec538e775443c5be79dd423fcabahrens large, so the time spent scanning them on each request is
fa9e4066f08beec538e775443c5be79dd423fcabahrens significant. Replacing the tables with hash tables provides
0713e232b7712cd27d99e1e935ebb8d5de61c57dGeorge Wilson a nice speedup. [Brian Pane <bpane@pacbell.net>]
1e9bd7ec42f2d3bf854c2da35310901194833267Prakash Surya *) Add two functions to allow modules to access random parts of the
fa9e4066f08beec538e775443c5be79dd423fcabahrens scoreboard. This allows modules compiled for one MPM to access the
1e9bd7ec42f2d3bf854c2da35310901194833267Prakash Surya scoreboard, even if it the server was compiled for another MPM.
1e9bd7ec42f2d3bf854c2da35310901194833267Prakash Surya [Harrie Hazewinkel <harrie@covalent.net>]
1e9bd7ec42f2d3bf854c2da35310901194833267Prakash SuryaChanges with Apache 2.0.20
1e9bd7ec42f2d3bf854c2da35310901194833267Prakash Surya *) Fix problem in content-length filter where the filter would
fa9e4066f08beec538e775443c5be79dd423fcabahrens buffer all the output from a CGI before sending any bytes
0713e232b7712cd27d99e1e935ebb8d5de61c57dGeorge Wilson down the filter stack to the network. This problem would cause
0713e232b7712cd27d99e1e935ebb8d5de61c57dGeorge Wilson significant memory consumption if the CGIs generated
0713e232b7712cd27d99e1e935ebb8d5de61c57dGeorge Wilson lots of bytes. [Bill Stoddard]
0713e232b7712cd27d99e1e935ebb8d5de61c57dGeorge Wilson *) Get non-blocking CGI pipe reads working with the bucket brigades.
1e9bd7ec42f2d3bf854c2da35310901194833267Prakash Surya [Bill Stoddard]
1e9bd7ec42f2d3bf854c2da35310901194833267Prakash Surya *) Fix seg fault on Windows when serving files cached with mod_file_cache.
1e9bd7ec42f2d3bf854c2da35310901194833267Prakash Surya [Bill Stoddard]
1e9bd7ec42f2d3bf854c2da35310901194833267Prakash Surya *) Fix a bug in the threaded MPM that would cause it to kill off all
1e9bd7ec42f2d3bf854c2da35310901194833267Prakash Surya workers immediately after starting if the number of workers started
1e9bd7ec42f2d3bf854c2da35310901194833267Prakash Surya was above a certain threshold. [Ryan Bloom, Bill Stoddard]
0713e232b7712cd27d99e1e935ebb8d5de61c57dGeorge WilsonChanges with Apache 2.0.19
ecc2d604e885a75cc75e647b5641af99d5a6f4a6bonwick *) Fix problem with threaded MPM. The problem was that if each child
0713e232b7712cd27d99e1e935ebb8d5de61c57dGeorge Wilson process was busy serving a single long-lived request and the server
0713e232b7712cd27d99e1e935ebb8d5de61c57dGeorge Wilson was sent a graceful restart signal, the server would stop serving
ecc2d604e885a75cc75e647b5641af99d5a6f4a6bonwick requests. This would happen because each child process would wait to
ecc2d604e885a75cc75e647b5641af99d5a6f4a6bonwick die until the last thread was done, and the parent wouldn't spawn any
ecc2d604e885a75cc75e647b5641af99d5a6f4a6bonwick new children until a process died. Now, the parent looks at the fact
ecc2d604e885a75cc75e647b5641af99d5a6f4a6bonwick that the children are dying gracefully, and starts new children.
1e9bd7ec42f2d3bf854c2da35310901194833267Prakash Surya Those new children only start enough threads to compliment the number
1e9bd7ec42f2d3bf854c2da35310901194833267Prakash Surya of threads in the other child process that shares the same spot in
fa9e4066f08beec538e775443c5be79dd423fcabahrens the scoreboard. In this way, we make sure to never go over
8363e80ae72609660f6090766ca8c2c18aa53f0cGeorge Wilson MaxClients. [Ryan Bloom]
fa9e4066f08beec538e775443c5be79dd423fcabahrens *) modified mod_negotiation and mod_autoindex to speed up by almost a
fa9e4066f08beec538e775443c5be79dd423fcabahrens factor of two on apr_dir_read()-enhanced platforms, such as Win32
fa9e4066f08beec538e775443c5be79dd423fcabahrens and OS2, by calling ap_sub_request_lookup_dirent() with the results
fa9e4066f08beec538e775443c5be79dd423fcabahrens already provided by apr_dir_read(). [William Rowe]
8363e80ae72609660f6090766ca8c2c18aa53f0cGeorge Wilson *) mod_file_cache is now more robust to filtering and serves requests
8363e80ae72609660f6090766ca8c2c18aa53f0cGeorge Wilson slightly more efficiently. [Cliff Woolley]
fa9e4066f08beec538e775443c5be79dd423fcabahrens *) Fix problem handling FLUSH bucket in the chunked encoding filter.
ecc2d604e885a75cc75e647b5641af99d5a6f4a6bonwick Module was calling ap_rwrite() followed by ap_rflush() but the
1e9bd7ec42f2d3bf854c2da35310901194833267Prakash Surya served content was not being displayed in the browser. Inspection
ecc2d604e885a75cc75e647b5641af99d5a6f4a6bonwick of the output stream revealed that the first data chunk was
0713e232b7712cd27d99e1e935ebb8d5de61c57dGeorge Wilson missing the trailing CRLF required by the RFC. [Bill Stoddard]
8363e80ae72609660f6090766ca8c2c18aa53f0cGeorge Wilson *) apxs no longer generates ap_send_http_header() in the example handler
0713e232b7712cd27d99e1e935ebb8d5de61c57dGeorge Wilson *) Fix an ab problem which could cause a divide-by-zero exception
1e9bd7ec42f2d3bf854c2da35310901194833267Prakash Surya with certain invocations (e.g., ab -k -c 6 -n 100 localhost/).
1e9bd7ec42f2d3bf854c2da35310901194833267Prakash Surya [Ian Holsman <ianh@cnet.com>]
1e9bd7ec42f2d3bf854c2da35310901194833267Prakash Surya *) Solve case-insensitive platforms' confusion about negotiated
0713e232b7712cd27d99e1e935ebb8d5de61c57dGeorge Wilson filenames, allowing files of differnt case to match in choosing
0713e232b7712cd27d99e1e935ebb8d5de61c57dGeorge Wilson the document to serve. [William Rowe]
ecc2d604e885a75cc75e647b5641af99d5a6f4a6bonwick *) Fix brokenness when ThreadsPerChild is higher than the built-in
1e9bd7ec42f2d3bf854c2da35310901194833267Prakash Surya limit. We left ap_threads_per_child at the higher value which
fa9e4066f08beec538e775443c5be79dd423fcabahrens led to segfaults when doing certain scoreboard operations.
fa9e4066f08beec538e775443c5be79dd423fcabahrens [Jeff Trawick]
1e9bd7ec42f2d3bf854c2da35310901194833267Prakash Surya *) Fix seg faults and/or missing output from mod_include. The
1e9bd7ec42f2d3bf854c2da35310901194833267Prakash Surya default_handler was using the subrequest pool for files and
fa9e4066f08beec538e775443c5be79dd423fcabahrens MMAPs, even though the associated APR structures typically
fa9e4066f08beec538e775443c5be79dd423fcabahrens live longer than the subrequest. [Greg Ames]
fa9e4066f08beec538e775443c5be79dd423fcabahrens *) Extend mod_setenvif to support specifying regular expressions
fa9e4066f08beec538e775443c5be79dd423fcabahrens on the SetEnvIf (and SetEnvIfNoCase) directive attribute field.
fa9e4066f08beec538e775443c5be79dd423fcabahrens Example: SetEnvIf ^TS* [a-z].* HAVE_TS
fa9e4066f08beec538e775443c5be79dd423fcabahrens will cause HAVE_TS to be set if any of the request headers begins
fa9e4066f08beec538e775443c5be79dd423fcabahrens with "TS" and has a value that begins with any character in the
fa9e4066f08beec538e775443c5be79dd423fcabahrens set [a-z]. [Bill Stoddard]
0713e232b7712cd27d99e1e935ebb8d5de61c57dGeorge Wilson *) httpd children now re-bind themselves to a random CPU on
0713e232b7712cd27d99e1e935ebb8d5de61c57dGeorge Wilson multiprocessor systems on AIX via bindprocessor() in 2.0.
0713e232b7712cd27d99e1e935ebb8d5de61c57dGeorge Wilson [Victor J. Orlikowski]
0713e232b7712cd27d99e1e935ebb8d5de61c57dGeorge Wilson *) Fix htdigest. It would go into a loop in getline when adding
0713e232b7712cd27d99e1e935ebb8d5de61c57dGeorge Wilson a second user. [Bill Stoddard]
fa9e4066f08beec538e775443c5be79dd423fcabahrens *) Win32 platforms now fully support mod_userdir options. [Will Rowe]
0713e232b7712cd27d99e1e935ebb8d5de61c57dGeorge Wilson *) Automatically generate httpd.exp for AIX.
0713e232b7712cd27d99e1e935ebb8d5de61c57dGeorge Wilson DSOs now work again on AIX in 2.0
fa9e4066f08beec538e775443c5be79dd423fcabahrens [Victor J. Orlikowski]
16a4a8074274d2d7cc408589cf6359f4a378c861George Wilson *) Add a new request hook, error_log. This phase allows modules
0713e232b7712cd27d99e1e935ebb8d5de61c57dGeorge Wilson to act on the error log string _after_ it has been written
16a4a8074274d2d7cc408589cf6359f4a378c861George Wilson to the error log. The goal for this hook is to allow monitoring
468c413a79615e77179e8d98f22a7e513a8135bdTim Haley modules to send the error string to the monitoring agent.
fa9e4066f08beec538e775443c5be79dd423fcabahrens *) Modify mod_echo to make it use filters for input and output.
0713e232b7712cd27d99e1e935ebb8d5de61c57dGeorge Wilson [Ryan Morgan <rmorgan@covalent.net>]
fa9e4066f08beec538e775443c5be79dd423fcabahrens *) Extend mod_headers to support conditional driven Header
fa9e4066f08beec538e775443c5be79dd423fcabahrens add, append and set. Use SetEnvIf to set an envar and conditionally
fa9e4066f08beec538e775443c5be79dd423fcabahrens add/append/set headers based on this envar thusly:
2e4c998613148111f2fc5371085331ffb39122ffGeorge Wilson SetEnvIf TSMyHeader value HAVE_TSMyHeader
2e4c998613148111f2fc5371085331ffb39122ffGeorge Wilson Header add MyHeader "%t %D" env=HAVE_TSMyHeader
2e4c998613148111f2fc5371085331ffb39122ffGeorge Wilson If the request contains header "TSMyHeader: value" then header
2e4c998613148111f2fc5371085331ffb39122ffGeorge Wilson MyHeader: "t=xxxxxxxxxx D=yyyy" will be sent on the response.
2e4c998613148111f2fc5371085331ffb39122ffGeorge Wilson [Bill Stoddard]
2e4c998613148111f2fc5371085331ffb39122ffGeorge Wilson *) Extend mod_headers to support using format specifiers on Header
2e4c998613148111f2fc5371085331ffb39122ffGeorge Wilson add, append and set header values. Two format specifiers are supported:
2e4c998613148111f2fc5371085331ffb39122ffGeorge Wilson %t - reports, in UTC microseconds since the epoch, when the
2e4c998613148111f2fc5371085331ffb39122ffGeorge Wilson request was received.
2e4c998613148111f2fc5371085331ffb39122ffGeorge Wilson %D - reports the time, in microseconds, between when the request was
0713e232b7712cd27d99e1e935ebb8d5de61c57dGeorge Wilson received and the response sent.
2e4c998613148111f2fc5371085331ffb39122ffGeorge Wilson Header add MyHeader "This request served in %D microseconds. %t"
2e4c998613148111f2fc5371085331ffb39122ffGeorge Wilson results in a header being added to the response that looks like this:
2e4c998613148111f2fc5371085331ffb39122ffGeorge Wilson MyHeader: This request served in D=5438 microseconds. t=991424704447256
2e4c998613148111f2fc5371085331ffb39122ffGeorge Wilson [Bill Stoddard]
2e4c998613148111f2fc5371085331ffb39122ffGeorge Wilson *) Fix reset_filter(). We need to be careful how we remove filters.
2e4c998613148111f2fc5371085331ffb39122ffGeorge Wilson If we set r->output_filters to NULL, we also have to reset the
2e4c998613148111f2fc5371085331ffb39122ffGeorge Wilson connection's filters. [John Sterling]
2e4c998613148111f2fc5371085331ffb39122ffGeorge Wilson *) Optimise reset_filter() in http_protocol.c. [Greg Stein]
2e4c998613148111f2fc5371085331ffb39122ffGeorge Wilson *) Add a check to ap_die() to make sure the filter stack is sane and
2e4c998613148111f2fc5371085331ffb39122ffGeorge Wilson contains the correct basic filters when an error occurs. This fixes
2e4c998613148111f2fc5371085331ffb39122ffGeorge Wilson a problem where headers are not being sent on error. [John Sterling]
2e4c998613148111f2fc5371085331ffb39122ffGeorge Wilson *) New Header directive 'echo' option. "Header echo regex" will
2e4c998613148111f2fc5371085331ffb39122ffGeorge Wilson cause any headers received on the request that match regex to be
2e4c998613148111f2fc5371085331ffb39122ffGeorge Wilson echoed to (included in) the response headers.
2e4c998613148111f2fc5371085331ffb39122ffGeorge Wilson [Bill Stoddard]
2e4c998613148111f2fc5371085331ffb39122ffGeorge Wilson *) include/ap_compat.h tested and set APR_COMPAT_H instead of AP_COMPAT_H.
2e4c998613148111f2fc5371085331ffb39122ffGeorge Wilson This prevented the inclusion of apr_compat.h. PR #7773
2e4c998613148111f2fc5371085331ffb39122ffGeorge Wilson [Oleg Broytmann <phd@phd.pp.ru>]
2e4c998613148111f2fc5371085331ffb39122ffGeorge Wilson *) Moved util_uri to the apr-util library. This required a bunch of
0713e232b7712cd27d99e1e935ebb8d5de61c57dGeorge Wilson apr_name changes for the uri utility functions. [Justin Erenkrantz]
8363e80ae72609660f6090766ca8c2c18aa53f0cGeorge Wilson *) Move the addition of default AP_HTTP_HTTP_HEADER filters to the
0713e232b7712cd27d99e1e935ebb8d5de61c57dGeorge Wilson insert_filter phase so that other filters are not bypassed by default.
2e4c998613148111f2fc5371085331ffb39122ffGeorge Wilson [Graham Leggett]
2e4c998613148111f2fc5371085331ffb39122ffGeorge Wilson *) Reimplement mod_headers as an output filter. mod_headers can now
2e4c998613148111f2fc5371085331ffb39122ffGeorge Wilson add custom headers to inbound requests using the RequestHeader directive
2e4c998613148111f2fc5371085331ffb39122ffGeorge Wilson and to responses using the same old Header directive. [Graham Leggett]
8363e80ae72609660f6090766ca8c2c18aa53f0cGeorge WilsonChanges with Apache 2.0.18
8363e80ae72609660f6090766ca8c2c18aa53f0cGeorge Wilson *) Fix command-line processing so that if a bad argument is specified
8363e80ae72609660f6090766ca8c2c18aa53f0cGeorge Wilson Apache will exit. [Jeff Trawick]
0713e232b7712cd27d99e1e935ebb8d5de61c57dGeorge Wilson *) Change the make targets and rules to be consistent in all of the
2e4c998613148111f2fc5371085331ffb39122ffGeorge Wilson Apache-owned source trees. [Roy Fielding]
0713e232b7712cd27d99e1e935ebb8d5de61c57dGeorge Wilson *) Fix processing of the TRACE method. Previously we passed bogus
8363e80ae72609660f6090766ca8c2c18aa53f0cGeorge Wilson parms to form_header_field() and it overlaid some vhost structures,
8363e80ae72609660f6090766ca8c2c18aa53f0cGeorge Wilson resulting in a segfault in check_hostalias().
8363e80ae72609660f6090766ca8c2c18aa53f0cGeorge Wilson [Greg Ames, Jeff Trawick]
2e4c998613148111f2fc5371085331ffb39122ffGeorge Wilson *) Win32: Add support for reliable piped logs. If the logging process
2e4c998613148111f2fc5371085331ffb39122ffGeorge Wilson goes down, Apache will automatically restart it. This function has
8363e80ae72609660f6090766ca8c2c18aa53f0cGeorge Wilson been part of Apache on Unix/Linux/BSD since the early v1.3 releases.
2e4c998613148111f2fc5371085331ffb39122ffGeorge Wilson [Bill Stoddard]
2e4c998613148111f2fc5371085331ffb39122ffGeorge Wilson *) Do not start piped log processes during the config file
2e4c998613148111f2fc5371085331ffb39122ffGeorge Wilson preflight. This change also circumvents a problem on
0713e232b7712cd27d99e1e935ebb8d5de61c57dGeorge Wilson Windows where the rotatelog processes created during preflight
0713e232b7712cd27d99e1e935ebb8d5de61c57dGeorge Wilson was not getting cleaned up properly.
b1be2892dd07cf9a97d47ad06334cdc879196aafMatthew Ahrens [Bill Stoddard]
b1be2892dd07cf9a97d47ad06334cdc879196aafMatthew Ahrens *) add "Request Phase Participation" info to mod_info
b1be2892dd07cf9a97d47ad06334cdc879196aafMatthew Ahrens [Doug MacEachern]
b1be2892dd07cf9a97d47ad06334cdc879196aafMatthew Ahrens *) Make first phase changes to the scoreboard data structures in
8363e80ae72609660f6090766ca8c2c18aa53f0cGeorge Wilson preparation for the rewriting of the scoreboard per my posted
8363e80ae72609660f6090766ca8c2c18aa53f0cGeorge Wilson design notes. [Paul J. Reder]
0713e232b7712cd27d99e1e935ebb8d5de61c57dGeorge Wilson *) Fix httpd's definition of LTFLAGS to be consistent with that of apr
2e4c998613148111f2fc5371085331ffb39122ffGeorge Wilson and apr-util, allow it to be overridden by the configure command-line
2e4c998613148111f2fc5371085331ffb39122ffGeorge Wilson (default="--silent") and introduce LT_LDFLAGS to replace what we were
2e4c998613148111f2fc5371085331ffb39122ffGeorge Wilson formerly abusing as LTFLAGS. [Roy Fielding]
2e4c998613148111f2fc5371085331ffb39122ffGeorge Wilson *) Clean up the reporting of incorrect closing container tags.
2e4c998613148111f2fc5371085331ffb39122ffGeorge Wilson [Barrie Slaymaker <barries@slaysys.com>]
0713e232b7712cd27d99e1e935ebb8d5de61c57dGeorge Wilson *) Simplify the configure process by moving all libtool stuff to APR
0713e232b7712cd27d99e1e935ebb8d5de61c57dGeorge Wilson and moving hints.m4 inline. [Roy Fielding]
2e4c998613148111f2fc5371085331ffb39122ffGeorge Wilson *) Add the AP_DECLARE()/AP_CORE_DECLARE macros on the return types
2e4c998613148111f2fc5371085331ffb39122ffGeorge Wilson of functions used by mod_proxy for export in the DLL
2e4c998613148111f2fc5371085331ffb39122ffGeorge Wilson [Ian Holsman <IanH@cnet.com>]
2e4c998613148111f2fc5371085331ffb39122ffGeorge Wilson *) Prevent a hang when a cgi handled by mod_cgid tries to read a
0713e232b7712cd27d99e1e935ebb8d5de61c57dGeorge Wilson request body from its stdin but no reqest body is being written to
2e4c998613148111f2fc5371085331ffb39122ffGeorge Wilson the cgi. [Jeff Trawick]
2e4c998613148111f2fc5371085331ffb39122ffGeorge Wilson *) mod_log_config: %c connection status incorrectly logged
2e4c998613148111f2fc5371085331ffb39122ffGeorge Wilson as "-" (non-keepalive) when MaxKeepAliveRequests is set to 0.
8363e80ae72609660f6090766ca8c2c18aa53f0cGeorge Wilson [Bill Stoddard]
0713e232b7712cd27d99e1e935ebb8d5de61c57dGeorge Wilson *) Get mod_cern_meta working under Windows
ecc2d604e885a75cc75e647b5641af99d5a6f4a6bonwick [Bill Stoddard]
2e4c998613148111f2fc5371085331ffb39122ffGeorge Wilson *) Create Files, and thus MMAPs, out of the request pool, not the
2e4c998613148111f2fc5371085331ffb39122ffGeorge Wilson connection pool. This solves a small resource leak that had us
2e4c998613148111f2fc5371085331ffb39122ffGeorge Wilson not closing files until a connection was closed. In order to do
2e4c998613148111f2fc5371085331ffb39122ffGeorge Wilson this, at the end of the core_output_filter, we loop through the
ecc2d604e885a75cc75e647b5641af99d5a6f4a6bonwick brigade and convert any data we have into a single HEAP bucket
8363e80ae72609660f6090766ca8c2c18aa53f0cGeorge Wilson that we know will survive clearing the request_rec.
ecc2d604e885a75cc75e647b5641af99d5a6f4a6bonwick [Ryan Bloom, Justin Erenkrantz <jerenkrantz@ebuilt.com>,
44cd46cadd9aab751dae6a4023c1cb5bf316d274billm Cliff Woolley]
ecc2d604e885a75cc75e647b5641af99d5a6f4a6bonwick *) Completely revamp configure so that it preserves the standard make
ecc2d604e885a75cc75e647b5641af99d5a6f4a6bonwick variables CPPFLAGS, CFLAGS, CXXFLAGS, LDFLAGS and LIBS by moving
ecc2d604e885a75cc75e647b5641af99d5a6f4a6bonwick the configure additions to EXTRA_* variables. Also, allow the user
8363e80ae72609660f6090766ca8c2c18aa53f0cGeorge Wilson to specify NOTEST_* values for all of the above, which eliminates the
9eb57f7f3fbb970d4b9b89dcd5ecf543fe2414d5George Wilson need for THREAD_CPPFLAGS, THREAD_CFLAGS, and OPTIM. Fix the setting
ecc2d604e885a75cc75e647b5641af99d5a6f4a6bonwick of INCLUDES and EXTRA_INCLUDES. Check flags as they are added to
ecc2d604e885a75cc75e647b5641af99d5a6f4a6bonwick avoid pointless duplications. Fix the order in which flags are given
ecc2d604e885a75cc75e647b5641af99d5a6f4a6bonwick on the compile and link lines. Remove obsolete macros APR_DOEXTRA,
0713e232b7712cd27d99e1e935ebb8d5de61c57dGeorge Wilson AC_ADD_LIBRARY, AC_CHECK_DEFINE, APACHE_PASSTHRU, and APACHE_ONCE.
2e4c998613148111f2fc5371085331ffb39122ffGeorge Wilson Added APR_SAVE_THE_ENVIRONMENT and APR_RESTORE_THE_ENVIRONMENT macros.
2e4c998613148111f2fc5371085331ffb39122ffGeorge Wilson Renamed AC_TYPE_RLIM_T macro to APACHE_TYPE_RLIM_T. [Roy Fielding]
2e4c998613148111f2fc5371085331ffb39122ffGeorge Wilson *) Get mod_tls to compile/work better on Windows. PR #7612
2e4c998613148111f2fc5371085331ffb39122ffGeorge Wilson [Bernhard Schrenk <b.schrenk@improx.com>]
2e4c998613148111f2fc5371085331ffb39122ffGeorge Wilson *) Fix shutdown/restart hangs in the threaded MPM.
2e4c998613148111f2fc5371085331ffb39122ffGeorge Wilson [Jeff Trawick, Greg Ames, Ryan Bloom]
2e4c998613148111f2fc5371085331ffb39122ffGeorge Wilson *) Removed the keptalive boolean from conn_rec because it is now only
2e4c998613148111f2fc5371085331ffb39122ffGeorge Wilson used by a single routine and can be replaced by a local variable.
2e4c998613148111f2fc5371085331ffb39122ffGeorge Wilson [Greg Stein, Ryan Bloom, Roy Fielding]
2e4c998613148111f2fc5371085331ffb39122ffGeorge Wilson *) Patch prefork to put enough of the signal processing back in so that
2e4c998613148111f2fc5371085331ffb39122ffGeorge Wilson signals are all handled properly now. The previous patch fixed the
2e4c998613148111f2fc5371085331ffb39122ffGeorge Wilson deadlock race condition, but broke the user directed signal handling.
2e4c998613148111f2fc5371085331ffb39122ffGeorge Wilson This fixes it to work the way it did before my previous prefork patch
2e4c998613148111f2fc5371085331ffb39122ffGeorge Wilson (primarily, SIGTERM is now working).
2e4c998613148111f2fc5371085331ffb39122ffGeorge Wilson *) Change how input filters decide how much data is returned to the
2e4c998613148111f2fc5371085331ffb39122ffGeorge Wilson higher filter. We used to use a field in the conn_rec, with this
2e4c998613148111f2fc5371085331ffb39122ffGeorge Wilson change, we use an argument to ap_get_brigade to determine how much
ecc2d604e885a75cc75e647b5641af99d5a6f4a6bonwick data is retrieved. [Ryan Bloom]
ecc2d604e885a75cc75e647b5641af99d5a6f4a6bonwick *) Fix seg fault at start-up introduced by Ryan's change to enable
ecc2d604e885a75cc75e647b5641af99d5a6f4a6bonwick modules to specify their own logging tags. mod_log_config
ecc2d604e885a75cc75e647b5641af99d5a6f4a6bonwick registers an optional function, ap_register_log_handler().
ecc2d604e885a75cc75e647b5641af99d5a6f4a6bonwick ap_register_log_handler() was being called by http_core before
ecc2d604e885a75cc75e647b5641af99d5a6f4a6bonwick the directive hash table was created. This patch creates the
ecc2d604e885a75cc75e647b5641af99d5a6f4a6bonwick directive hash table before ap_register_log_handler() is
ecc2d604e885a75cc75e647b5641af99d5a6f4a6bonwick registered as an optional function.
ecc2d604e885a75cc75e647b5641af99d5a6f4a6bonwick [jean-frederic clere <jfrederic.clere@fujitsu-siemens.com>]
2e4c998613148111f2fc5371085331ffb39122ffGeorge Wilson *) Add ap_set_int_slot() function
2e4c998613148111f2fc5371085331ffb39122ffGeorge Wilson [John K. Sterling <sterling@covalent.net>]
2e4c998613148111f2fc5371085331ffb39122ffGeorge Wilson *) Under certain circumstances, Apache did not supply the
80eb36f241abf8c076119fb4c49a55fd61ebc710George Wilson right response headers when requiring authentication.
2e4c998613148111f2fc5371085331ffb39122ffGeorge Wilson [Gertjan van Wingerde <Gertjan.van.Wingerde@cmg.nl>] PR#7114
2e4c998613148111f2fc5371085331ffb39122ffGeorge Wilson (This is a port of the change that went into Apache 1.3.19.)
2e4c998613148111f2fc5371085331ffb39122ffGeorge Wilson *) Allow modules to specify their own logging tags. This basically
2e4c998613148111f2fc5371085331ffb39122ffGeorge Wilson allows a module to tell mod_log_config that when %x is encountered
2e4c998613148111f2fc5371085331ffb39122ffGeorge Wilson a specific function should be called. Currently, x can be any single
2e4c998613148111f2fc5371085331ffb39122ffGeorge Wilson character. It may be more useful to make this a string at some point.
80eb36f241abf8c076119fb4c49a55fd61ebc710George WilsonChanges with Apache 2.0.17
8363e80ae72609660f6090766ca8c2c18aa53f0cGeorge Wilson *) If a higher-level filter handles the the byterange aspects of a
8363e80ae72609660f6090766ca8c2c18aa53f0cGeorge Wilson request, then the byterange filter should not try to redo the
8363e80ae72609660f6090766ca8c2c18aa53f0cGeorge Wilson work. The most common case of this happening, is a byterange
8363e80ae72609660f6090766ca8c2c18aa53f0cGeorge Wilson request going through the proxy, and the origin server handles
8363e80ae72609660f6090766ca8c2c18aa53f0cGeorge Wilson the byterange request. The proxy should ignore it.
8363e80ae72609660f6090766ca8c2c18aa53f0cGeorge Wilson [Graham Leggett <minfrin@sharp.fm>]
8363e80ae72609660f6090766ca8c2c18aa53f0cGeorge Wilson *) Changed the threaded mpm to have child_main join to each of the
8363e80ae72609660f6090766ca8c2c18aa53f0cGeorge Wilson worker threads to make sure the kids are all gone before child_main
8363e80ae72609660f6090766ca8c2c18aa53f0cGeorge Wilson exits after a signal (cleanup from perform_idle_server_maintenance).
8363e80ae72609660f6090766ca8c2c18aa53f0cGeorge Wilson This is an extension of Ryans recent commit to make the child_main
8363e80ae72609660f6090766ca8c2c18aa53f0cGeorge Wilson the signal thread.
8363e80ae72609660f6090766ca8c2c18aa53f0cGeorge Wilson *) Add more options to the ap_mpm_query function. This also allows MPMs to
8363e80ae72609660f6090766ca8c2c18aa53f0cGeorge Wilson report if their threads are dynamic or static. Finally, this also
8363e80ae72609660f6090766ca8c2c18aa53f0cGeorge Wilson implements a new API, ap_show_mpm, which returns the MPM that was
8363e80ae72609660f6090766ca8c2c18aa53f0cGeorge Wilson required into the core. [Harrie Hazewinkel <harrie@covalent.net>]
8363e80ae72609660f6090766ca8c2c18aa53f0cGeorge Wilson *) Do not install the binaries from the support directory twice.
8363e80ae72609660f6090766ca8c2c18aa53f0cGeorge Wilson [jun-ichiro hagino <itojun@iijlab.net>]
8363e80ae72609660f6090766ca8c2c18aa53f0cGeorge Wilson *) The ap_f* functions should flush data to the filter that is passed
8363e80ae72609660f6090766ca8c2c18aa53f0cGeorge Wilson in, not the the filter after the one passed in.
8363e80ae72609660f6090766ca8c2c18aa53f0cGeorge Wilson [Ryan Morgan <rmorgan@covalent.net>]
8363e80ae72609660f6090766ca8c2c18aa53f0cGeorge Wilson *) Make ab work again by changing its native types to apr types and formats.
8363e80ae72609660f6090766ca8c2c18aa53f0cGeorge Wilson [Justin Erenkrantz <jerenkrantz@ebuilt.com>]
8363e80ae72609660f6090766ca8c2c18aa53f0cGeorge Wilson *) Move the byterange filter and all of the supporting functions back
8363e80ae72609660f6090766ca8c2c18aa53f0cGeorge Wilson to the HTTP module. The byterange filter turned out to be very
8363e80ae72609660f6090766ca8c2c18aa53f0cGeorge Wilson HTTP specific, and it belongs in the HTTP module. [Greg Stein]
8363e80ae72609660f6090766ca8c2c18aa53f0cGeorge Wilson *) Make clean, distclean, and extraclean consistently according to the
8363e80ae72609660f6090766ca8c2c18aa53f0cGeorge Wilson Gnu makefile guidelines. [Justin Erenkrantz <jerenkrantz@ebuilt.com>]
8363e80ae72609660f6090766ca8c2c18aa53f0cGeorge Wilson *) Fix errors in the renaming of the apr_threadattr_detach_xxx functions.
8363e80ae72609660f6090766ca8c2c18aa53f0cGeorge Wilson This may have been causing problems stopping processes in the threaded
8363e80ae72609660f6090766ca8c2c18aa53f0cGeorge Wilson mpm's. [Greg Ames]
8363e80ae72609660f6090766ca8c2c18aa53f0cGeorge Wilson *) Fix content-length in mod_negotiation to a long int representation.
8363e80ae72609660f6090766ca8c2c18aa53f0cGeorge Wilson [William Rowe]
8363e80ae72609660f6090766ca8c2c18aa53f0cGeorge Wilson *) Remove BindAddress from the default config file.
8363e80ae72609660f6090766ca8c2c18aa53f0cGeorge Wilson [giles@nemeton.com.au]
8363e80ae72609660f6090766ca8c2c18aa53f0cGeorge Wilson *) Allow module authors to add a module to their Apache build using
8363e80ae72609660f6090766ca8c2c18aa53f0cGeorge Wilson --with-module, without re-running buildconf. The syntax is:
8363e80ae72609660f6090766ca8c2c18aa53f0cGeorge Wilson --with-module=module_type:/path/to/module.c
8363e80ae72609660f6090766ca8c2c18aa53f0cGeorge Wilson The configure script will copy the module.c file to
8363e80ae72609660f6090766ca8c2c18aa53f0cGeorge Wilson modules/module_type, and it will be added to the relevant Makefiles.
8363e80ae72609660f6090766ca8c2c18aa53f0cGeorge Wilson currently, this only works for static modules. [Ryan Bloom]
8363e80ae72609660f6090766ca8c2c18aa53f0cGeorge Wilson *) Changes required to make prefork clean up idle children properly.
8363e80ae72609660f6090766ca8c2c18aa53f0cGeorge Wilson There was a window during which a starting worker deadlocks when
8363e80ae72609660f6090766ca8c2c18aa53f0cGeorge Wilson an idle cleanup arrives before it completes init. Apache then keeps
8363e80ae72609660f6090766ca8c2c18aa53f0cGeorge Wilson trying to cleanup the same deadlocked worker forever (until higher
8363e80ae72609660f6090766ca8c2c18aa53f0cGeorge Wilson pids come along, but it still will never reduce below the deadlocked
8363e80ae72609660f6090766ca8c2c18aa53f0cGeorge Wilson pid). Thus the number of children would not reduce to the correct
8363e80ae72609660f6090766ca8c2c18aa53f0cGeorge Wilson idle level. [Paul J. Reder]
8363e80ae72609660f6090766ca8c2c18aa53f0cGeorge WilsonChanges with Apache 2.0.16
8363e80ae72609660f6090766ca8c2c18aa53f0cGeorge Wilson *) Change the default installation directory to /usr/local/apache2,
8363e80ae72609660f6090766ca8c2c18aa53f0cGeorge Wilson as now defined by the "Apache" layout in config.layout. [Marc Slemko]
8363e80ae72609660f6090766ca8c2c18aa53f0cGeorge Wilson *) OS/2: Added support for building loadable modules as OS/2 DLLs.
8363e80ae72609660f6090766ca8c2c18aa53f0cGeorge Wilson [Brian Havard]
8363e80ae72609660f6090766ca8c2c18aa53f0cGeorge Wilson *) Get MaxRequestsPerChild working with the Windows MPM.
8363e80ae72609660f6090766ca8c2c18aa53f0cGeorge Wilson [Bill Stoddard]
8363e80ae72609660f6090766ca8c2c18aa53f0cGeorge Wilson *) Make generic hooks to work, with mod_generic_hook_import/export
8363e80ae72609660f6090766ca8c2c18aa53f0cGeorge Wilson experimental modules. [Ben Laurie, Will Rowe]
8363e80ae72609660f6090766ca8c2c18aa53f0cGeorge Wilson *) Fix segfaults for configuration file syntax errors such as
8363e80ae72609660f6090766ca8c2c18aa53f0cGeorge Wilson "<Directory>" followed by "</Directory" and
8363e80ae72609660f6090766ca8c2c18aa53f0cGeorge Wilson "<Directory>" followed by "</Directoryz>". [Jeff Trawick]
8363e80ae72609660f6090766ca8c2c18aa53f0cGeorge Wilson *) Cleanup the --enable-layout option of configure. This makes
8363e80ae72609660f6090766ca8c2c18aa53f0cGeorge Wilson us use a consistent location for the config.layout file, and it
8363e80ae72609660f6090766ca8c2c18aa53f0cGeorge Wilson makes configure more portable.
8363e80ae72609660f6090766ca8c2c18aa53f0cGeorge Wilson [jun-ichiro hagino <itojun@iijlab.net>]
8363e80ae72609660f6090766ca8c2c18aa53f0cGeorge Wilson *) Changes to 'ab'; fixed int overrun's, added statistics, output in
8363e80ae72609660f6090766ca8c2c18aa53f0cGeorge Wilson csv/gnuplot format, rudimentary ssl support and various other tweaks
8363e80ae72609660f6090766ca8c2c18aa53f0cGeorge Wilson to make results more true to what is measured. The upshot of this it
8363e80ae72609660f6090766ca8c2c18aa53f0cGeorge Wilson turns out that 'ab' has often underreported the true performance of
8363e80ae72609660f6090766ca8c2c18aa53f0cGeorge Wilson apache. Often by a order of magnitude :-) See talk/paper of Sander
8363e80ae72609660f6090766ca8c2c18aa53f0cGeorge Wilson Temme <sctemme@covalent.net> at April ApacheCon 2001 for details.
8363e80ae72609660f6090766ca8c2c18aa53f0cGeorge Wilson [Dirk-Willem van Gulik]
8363e80ae72609660f6090766ca8c2c18aa53f0cGeorge Wilson *) Clean up mod_cgid's temporary request pool. Besides fixing a
8363e80ae72609660f6090766ca8c2c18aa53f0cGeorge Wilson storage leak this ensures that some unnecessary pipes are closed.
8363e80ae72609660f6090766ca8c2c18aa53f0cGeorge Wilson [Jeff Trawick]
8363e80ae72609660f6090766ca8c2c18aa53f0cGeorge Wilson *) Performance: Add quick_handler hook. This hook is called at the
8363e80ae72609660f6090766ca8c2c18aa53f0cGeorge Wilson very beginning of the request processing before location_walk,
8363e80ae72609660f6090766ca8c2c18aa53f0cGeorge Wilson translate_name, etc. This hook is useful for URI keyed content
8363e80ae72609660f6090766ca8c2c18aa53f0cGeorge Wilson caches like Mike Abbott's Quick Shortcut Cache.
8363e80ae72609660f6090766ca8c2c18aa53f0cGeorge Wilson [Bill Stoddard]
8363e80ae72609660f6090766ca8c2c18aa53f0cGeorge Wilson *) top_module global variable renamed to ap_top_module [Perl]
8363e80ae72609660f6090766ca8c2c18aa53f0cGeorge Wilson *) Move ap_set_last_modified to the core. This is a potentially
8363e80ae72609660f6090766ca8c2c18aa53f0cGeorge Wilson controversial change, because this is kind of HTTP specific. However
8363e80ae72609660f6090766ca8c2c18aa53f0cGeorge Wilson many protocols should be able to take advantage of this kind of
8363e80ae72609660f6090766ca8c2c18aa53f0cGeorge Wilson information. I expect that headers will need one more layer of
8363e80ae72609660f6090766ca8c2c18aa53f0cGeorge Wilson indirection for multi-protocol work, but this is a small step in
8363e80ae72609660f6090766ca8c2c18aa53f0cGeorge Wilson the right direction. [Ryan Bloom]
8363e80ae72609660f6090766ca8c2c18aa53f0cGeorge Wilson *) Enable mod_status by default. This matches what Apache 1.3 does.
8363e80ae72609660f6090766ca8c2c18aa53f0cGeorge Wilson *) Add a ScriptSock directive to the default config file. This is
8363e80ae72609660f6090766ca8c2c18aa53f0cGeorge Wilson only enabled when mod_cgid is used.
8363e80ae72609660f6090766ca8c2c18aa53f0cGeorge Wilson [Taketo Kabe <kabe@sra-tohoku.co.jp>]
8363e80ae72609660f6090766ca8c2c18aa53f0cGeorge WilsonChanges with Apache 2.0.15
8363e80ae72609660f6090766ca8c2c18aa53f0cGeorge Wilson *) Untangled the buildconf script and eliminated the need for build's
8363e80ae72609660f6090766ca8c2c18aa53f0cGeorge Wilson aclocal.m4, generated_lists, build.mk, build2.mk, and a host of other
8363e80ae72609660f6090766ca8c2c18aa53f0cGeorge Wilson libtool muck that is now under srclib/apr/build. [Roy Fielding]
8363e80ae72609660f6090766ca8c2c18aa53f0cGeorge Wilson *) Win32: Don't accept more connections than we have worker threads
8363e80ae72609660f6090766ca8c2c18aa53f0cGeorge Wilson [Bill Stoddard]
8363e80ae72609660f6090766ca8c2c18aa53f0cGeorge Wilson *) Fix bug in the Unix threaded.c MPM that allowed child processes
8363e80ae72609660f6090766ca8c2c18aa53f0cGeorge Wilson to fork() new child processes.
8363e80ae72609660f6090766ca8c2c18aa53f0cGeorge Wilson [Bill Stoddard]
8363e80ae72609660f6090766ca8c2c18aa53f0cGeorge Wilson *) Fix a major security problem with double-reverse lookup checking.
8363e80ae72609660f6090766ca8c2c18aa53f0cGeorge Wilson Previously, a client connecting over IPv4 would not be matched
8363e80ae72609660f6090766ca8c2c18aa53f0cGeorge Wilson properly when the server had an IPv6 listening socket. PR #7407
8363e80ae72609660f6090766ca8c2c18aa53f0cGeorge Wilson [Taketo Kabe <kiabe@sra-tohoku.co.jp>]
8363e80ae72609660f6090766ca8c2c18aa53f0cGeorge Wilson *) Change the way the beos MPM handles polling to allow it to stop and
8363e80ae72609660f6090766ca8c2c18aa53f0cGeorge Wilson restart. Problem was the sockets being polled were being reset by
8363e80ae72609660f6090766ca8c2c18aa53f0cGeorge Wilson the select call, so once it had accepted a connection it was no
8363e80ae72609660f6090766ca8c2c18aa53f0cGeorge Wilson longer listening on the UDP socket we use for shutdown instructions.
8363e80ae72609660f6090766ca8c2c18aa53f0cGeorge Wilson APR needs to be altered, patch on it's way. [David Reid]
8363e80ae72609660f6090766ca8c2c18aa53f0cGeorge Wilson *) Empty out the brigade shared by ap_getline()/ap_get_client_block()
8363e80ae72609660f6090766ca8c2c18aa53f0cGeorge Wilson on error exit from ap_getline(). Some other code got upset because
8363e80ae72609660f6090766ca8c2c18aa53f0cGeorge Wilson the wrong data was in the brigade. [Greg Ames, Jeff Trawick]
8363e80ae72609660f6090766ca8c2c18aa53f0cGeorge Wilson *) Handle ap_discard_request_body() being called more than once.
8363e80ae72609660f6090766ca8c2c18aa53f0cGeorge Wilson [Greg Ames, Jeff Trawick]
8363e80ae72609660f6090766ca8c2c18aa53f0cGeorge Wilson *) Get rid of an inadvertent close of file descriptor 2 in
8363e80ae72609660f6090766ca8c2c18aa53f0cGeorge Wilson mod_mime_magic. [Greg Ames, Jeff Trawick]
8363e80ae72609660f6090766ca8c2c18aa53f0cGeorge Wilson *) Add a hook, create_request. This hook allows modules to modify
8363e80ae72609660f6090766ca8c2c18aa53f0cGeorge Wilson a request while it is being created. This hook is called for all
8363e80ae72609660f6090766ca8c2c18aa53f0cGeorge Wilson request_rec's, main request, sub request, and internal redirect.
8363e80ae72609660f6090766ca8c2c18aa53f0cGeorge Wilson When this hook is called, the the r->main, r->prev, r->next
8363e80ae72609660f6090766ca8c2c18aa53f0cGeorge Wilson pointers have been set, so modules can determine what kind of
8363e80ae72609660f6090766ca8c2c18aa53f0cGeorge Wilson request this is. [Ryan Bloom]
8363e80ae72609660f6090766ca8c2c18aa53f0cGeorge Wilson *) Cleanup the build process a bit more. The Apache configure
8363e80ae72609660f6090766ca8c2c18aa53f0cGeorge Wilson script no longer creates its own helper scripts, it just
8363e80ae72609660f6090766ca8c2c18aa53f0cGeorge Wilson [jean-frederic clere <jfrederic.clere@fujitsu-siemens.com>]
8363e80ae72609660f6090766ca8c2c18aa53f0cGeorge Wilson *) Stop the forced downgrade of the connection to HTTP/1.0 for
8363e80ae72609660f6090766ca8c2c18aa53f0cGeorge Wilson proxy requests. [Graham Leggett]
8363e80ae72609660f6090766ca8c2c18aa53f0cGeorge Wilson *) Avoid using sscanf to determine the HTTP protocol number in
8363e80ae72609660f6090766ca8c2c18aa53f0cGeorge Wilson the common case because sscanf is a performance hog. From
8363e80ae72609660f6090766ca8c2c18aa53f0cGeorge Wilson Mike Abbot's Accelerating Apache patch number 6.
8363e80ae72609660f6090766ca8c2c18aa53f0cGeorge Wilson [Mike Abbot <mja@trudge.engr.sgi.com>, Bill Stoddard]
8363e80ae72609660f6090766ca8c2c18aa53f0cGeorge Wilson *) Fix a security exposure in mod_access. Previously when IPv6
8363e80ae72609660f6090766ca8c2c18aa53f0cGeorge Wilson listening sockets were used, allow/deny-from-IPv4-address rules
8363e80ae72609660f6090766ca8c2c18aa53f0cGeorge Wilson were not evaluated properly (PR #7407). Also, add the ability to
8363e80ae72609660f6090766ca8c2c18aa53f0cGeorge Wilson specify IPv6 address strings with optional prefix length on Allow
8363e80ae72609660f6090766ca8c2c18aa53f0cGeorge Wilson and Deny. [Jeff Trawick]
8363e80ae72609660f6090766ca8c2c18aa53f0cGeorge Wilson *) Enhance rotatelogs so that a UTC offset can be specified, and
8363e80ae72609660f6090766ca8c2c18aa53f0cGeorge Wilson the logfile name can be formatted using strftime(3). (Brought
8363e80ae72609660f6090766ca8c2c18aa53f0cGeorge Wilson forward from 1.3.) [Ken Coar]
8363e80ae72609660f6090766ca8c2c18aa53f0cGeorge Wilson *) Reimplement the Windows MPM (mpm_winnt.c) to eliminate calling
8363e80ae72609660f6090766ca8c2c18aa53f0cGeorge Wilson DuplicateHandle on an IOCompletionPort (a practice which
8363e80ae72609660f6090766ca8c2c18aa53f0cGeorge Wilson MS "discourages"). The new model does not rely on associating
8363e80ae72609660f6090766ca8c2c18aa53f0cGeorge Wilson the completion port with the listening sockets, thus the
8363e80ae72609660f6090766ca8c2c18aa53f0cGeorge Wilson completion port can be completely managed within the child
8363e80ae72609660f6090766ca8c2c18aa53f0cGeorge Wilson process. A dedicated thread accepts connections off the network,
8363e80ae72609660f6090766ca8c2c18aa53f0cGeorge Wilson then calls PostQueuedCompletionStatus() to wake up worker
8363e80ae72609660f6090766ca8c2c18aa53f0cGeorge Wilson threads blocked on the completion port.
8363e80ae72609660f6090766ca8c2c18aa53f0cGeorge Wilson [Bill Stoddard]
8363e80ae72609660f6090766ca8c2c18aa53f0cGeorge Wilson *) Bring forward the --suexec-umask option which allows the
8363e80ae72609660f6090766ca8c2c18aa53f0cGeorge Wilson builder to preset the umask for suexec processes. [Ken Coar]
8363e80ae72609660f6090766ca8c2c18aa53f0cGeorge Wilson *) Add a -V flag to suexec, which causes it to display the
8363e80ae72609660f6090766ca8c2c18aa53f0cGeorge Wilson compile-time settings with which it was built. (Only
8363e80ae72609660f6090766ca8c2c18aa53f0cGeorge Wilson usable by root or the AP_HTTPD_USER username.) [Ken Coar]
8363e80ae72609660f6090766ca8c2c18aa53f0cGeorge Wilson *) Mod_include should always unset the content-length if the file is
8363e80ae72609660f6090766ca8c2c18aa53f0cGeorge Wilson going to be passed through send_parsed_content. There is no to
8363e80ae72609660f6090766ca8c2c18aa53f0cGeorge Wilson determine if the content will change before actually scanning the
8363e80ae72609660f6090766ca8c2c18aa53f0cGeorge Wilson entire content. It is far safer to just remove the C-L as long
8363e80ae72609660f6090766ca8c2c18aa53f0cGeorge Wilson as we are scanning it. [Ryan Bloom]
ecc2d604e885a75cc75e647b5641af99d5a6f4a6bonwick *) Make sure Apache sends WWW-Authenticate during a reverse proxy
ecc2d604e885a75cc75e647b5641af99d5a6f4a6bonwick request and not Proxy-Authenticate.
ecc2d604e885a75cc75e647b5641af99d5a6f4a6bonwick [Graham Leggett <minfrin@sharp.fm>]
ecc2d604e885a75cc75e647b5641af99d5a6f4a6bonwickChanges with Apache 2.0.14
ecc2d604e885a75cc75e647b5641af99d5a6f4a6bonwick *) Fix content-length computation. We ONLY compute a content-length if
44cd46cadd9aab751dae6a4023c1cb5bf316d274billm We are not in a 1.1 request and we cannot chunk, and this is a keepalive
0713e232b7712cd27d99e1e935ebb8d5de61c57dGeorge Wilson or we already have all the data. [Ryan Bloom]
0713e232b7712cd27d99e1e935ebb8d5de61c57dGeorge Wilson *) Report unbounded containers in the config file. Previously, a typo
0713e232b7712cd27d99e1e935ebb8d5de61c57dGeorge Wilson in the </container> directive could result in the rest of the config
468c413a79615e77179e8d98f22a7e513a8135bdTim Haley file being silently ignored, with undesired defaults used.
468c413a79615e77179e8d98f22a7e513a8135bdTim Haley [Jeff Trawick]
ecc2d604e885a75cc75e647b5641af99d5a6f4a6bonwick *) Make the old_write filter use the ap_f* functions for the buffering.
ecc2d604e885a75cc75e647b5641af99d5a6f4a6bonwick *) Move more code from the http module into the core server. This
44cd46cadd9aab751dae6a4023c1cb5bf316d274billm is core code, basically the default handler, the default input
ecc2d604e885a75cc75e647b5641af99d5a6f4a6bonwick and output filters, and all of the core configuration directives.
0713e232b7712cd27d99e1e935ebb8d5de61c57dGeorge Wilson All of this code is required in order for the server to work, with or
44cd46cadd9aab751dae6a4023c1cb5bf316d274billm without HTTP. The server is closer to working without the HTTP
ecc2d604e885a75cc75e647b5641af99d5a6f4a6bonwick module, although there is still more to do. [Ryan Bloom]
ecc2d604e885a75cc75e647b5641af99d5a6f4a6bonwick *) Fix a number of SGI compile warnings throughout the server. Fix some
ecc2d604e885a75cc75e647b5641af99d5a6f4a6bonwick bad parameters to apr_bucket_read(). Fix a bad statement in
ecc2d604e885a75cc75e647b5641af99d5a6f4a6bonwick ap_method_in_list(). For the mod_rewrite cache use apr_time_t
8363e80ae72609660f6090766ca8c2c18aa53f0cGeorge Wilson consistently; we were mixing apr_time_t and time_t in invalid ways
ecc2d604e885a75cc75e647b5641af99d5a6f4a6bonwick before. In load_file(), call apr_dso_error() instead of
8363e80ae72609660f6090766ca8c2c18aa53f0cGeorge Wilson apr_strerror() so that we get a more specific string on some platforms.
8363e80ae72609660f6090766ca8c2c18aa53f0cGeorge Wilson PR #6980 [Jeff Trawick]
5f5f7a6f9c8e9c1587a54e690556d756ec67558cahrens *) Allow modules to query the MPM about it's execution profile. This
5f5f7a6f9c8e9c1587a54e690556d756ec67558cahrens query API can and should be extended in the future, but for now,
5f5f7a6f9c8e9c1587a54e690556d756ec67558cahrens max_daemons, and threading or forking is a very good start.
5f5f7a6f9c8e9c1587a54e690556d756ec67558cahrens [Jon Travis <jtravis@covalent.net>]
8363e80ae72609660f6090766ca8c2c18aa53f0cGeorge Wilson *) Modify mod_include to send blocks of data no larger than 9k.
8363e80ae72609660f6090766ca8c2c18aa53f0cGeorge Wilson Without this, mod_include will wait until the whole file is parsed,
8363e80ae72609660f6090766ca8c2c18aa53f0cGeorge Wilson or the first tag is found to send any data to the client.
8363e80ae72609660f6090766ca8c2c18aa53f0cGeorge Wilson [Paul J. Reder <rederpj@raleigh.ibm.com>]
44cd46cadd9aab751dae6a4023c1cb5bf316d274billm *) Fix mod_info, so that <Directory> and <Location> directives are
ecc2d604e885a75cc75e647b5641af99d5a6f4a6bonwick not displayed twice when displaying the current configuration.
ecc2d604e885a75cc75e647b5641af99d5a6f4a6bonwick [Ryan Morgan <rmorgan@covalent.net>]
8363e80ae72609660f6090766ca8c2c18aa53f0cGeorge Wilson *) Add config directives to override DEFAULT_ERROR_MSG and
8363e80ae72609660f6090766ca8c2c18aa53f0cGeorge Wilson DEFAULT_TIME_FORMAT. This was sent in as PR 6193.
8363e80ae72609660f6090766ca8c2c18aa53f0cGeorge Wilson [Dan Rench <drench@xnet.com>]
8363e80ae72609660f6090766ca8c2c18aa53f0cGeorge Wilson *) Get mod_info building and loading on Win32. [William Rowe]
8363e80ae72609660f6090766ca8c2c18aa53f0cGeorge Wilson *) Begin to move protocol independant functions out of mod_http. The goal
8363e80ae72609660f6090766ca8c2c18aa53f0cGeorge Wilson is to have only functions that are HTTP specific in the http directory.
8363e80ae72609660f6090766ca8c2c18aa53f0cGeorge WilsonChanges with Apache 2.0.13
8363e80ae72609660f6090766ca8c2c18aa53f0cGeorge Wilson *) Don't assume that there will always be multiple calls to the byterange
8363e80ae72609660f6090766ca8c2c18aa53f0cGeorge Wilson filter. It is possible that we will need to do byteranges with only
8363e80ae72609660f6090766ca8c2c18aa53f0cGeorge Wilson one call to the filter. [Ryan Morgan <rmorgan@covalent.net>]
8363e80ae72609660f6090766ca8c2c18aa53f0cGeorge Wilson *) Move the error_bucket definition from the http module to the
8363e80ae72609660f6090766ca8c2c18aa53f0cGeorge Wilson core server. Every protocol will need this ability, not just
8363e80ae72609660f6090766ca8c2c18aa53f0cGeorge Wilson HTTP. [Ryan Bloom]
8363e80ae72609660f6090766ca8c2c18aa53f0cGeorge WilsonChanges with Apache 2.0.12
8363e80ae72609660f6090766ca8c2c18aa53f0cGeorge Wilson *) Modify mod_file_cache to save pre-formatted strings for
8363e80ae72609660f6090766ca8c2c18aa53f0cGeorge Wilson content-length and last-modified headers for performance.
8363e80ae72609660f6090766ca8c2c18aa53f0cGeorge Wilson [Mike Abbot <mja@trudge.engr.sgi.com>]
8363e80ae72609660f6090766ca8c2c18aa53f0cGeorge Wilson *) Namespace protect IOBUFSIZ since it is exposed in the API.
8363e80ae72609660f6090766ca8c2c18aa53f0cGeorge Wilson [Jon Travis <jtravis@covalent.net>]
8363e80ae72609660f6090766ca8c2c18aa53f0cGeorge Wilson *) Use "Basic" authentication instead of "basic" in ab, as the spec
8363e80ae72609660f6090766ca8c2c18aa53f0cGeorge Wilson says we should. [Andre Breiler <andre.breiler@rd.bbc.co.uk>]
0713e232b7712cd27d99e1e935ebb8d5de61c57dGeorge Wilson *) Fix a seg fault in mod_userdir.c. We used to use the pw structure
0713e232b7712cd27d99e1e935ebb8d5de61c57dGeorge Wilson without ever filling it out. This fixes PR 7271.
0713e232b7712cd27d99e1e935ebb8d5de61c57dGeorge Wilson [Taketo Kabe <kabe@sra-tohoku.co.jp> and
0713e232b7712cd27d99e1e935ebb8d5de61c57dGeorge Wilson Cliff Woolley <cliffwoolley@yahoo.com>]
30beaff42d8240ebf5386e8b7a14e3d137a1631fGeorge Wilson *) Add a couple of GCC attribute tags to printf style functions.
30beaff42d8240ebf5386e8b7a14e3d137a1631fGeorge Wilson [Jon Travis <jtravis@covalent.net>]
0713e232b7712cd27d99e1e935ebb8d5de61c57dGeorge Wilson *) Add the correct language tag for interoperation with the Taiwanese
0713e232b7712cd27d99e1e935ebb8d5de61c57dGeorge Wilson versions of MSIE and Netscape. [Clive Lin <clive@CirX.ORG>] PR#7142
8363e80ae72609660f6090766ca8c2c18aa53f0cGeorge Wilson *) Migrate the perchild MPM to use the new apr signal child, and
0713e232b7712cd27d99e1e935ebb8d5de61c57dGeorge Wilson APR thread functions. [Ryan Bloom]
0713e232b7712cd27d99e1e935ebb8d5de61c57dGeorge Wilson *) Close one copy of the CGI's stdout before creating the new process.
0713e232b7712cd27d99e1e935ebb8d5de61c57dGeorge Wilson The CGI will still have stdout, because we have already dup'ed it.
0713e232b7712cd27d99e1e935ebb8d5de61c57dGeorge Wilson This keeps Apache from waiting forever to send the results of a CGI
0713e232b7712cd27d99e1e935ebb8d5de61c57dGeorge Wilson process that has forked a long-lived child process.
0713e232b7712cd27d99e1e935ebb8d5de61c57dGeorge Wilson [Taketo Kabe <kabe@sra-tohoku.co.jp>]
0713e232b7712cd27d99e1e935ebb8d5de61c57dGeorge Wilson *) Remove the rest of the pthreads functions from the threaded MPM.
0713e232b7712cd27d99e1e935ebb8d5de61c57dGeorge Wilson This requires the APR support for a signal thread that was just
0713e232b7712cd27d99e1e935ebb8d5de61c57dGeorge Wilson added. [Ryan Bloom]
0713e232b7712cd27d99e1e935ebb8d5de61c57dGeorge Wilson *) Make mod_dir use a fixup for sending a redirect to the browser.
0713e232b7712cd27d99e1e935ebb8d5de61c57dGeorge Wilson Before this, we were using a handler, which doesn't make much
0713e232b7712cd27d99e1e935ebb8d5de61c57dGeorge Wilson sense, because the handler wasn't generating any data, it would
0713e232b7712cd27d99e1e935ebb8d5de61c57dGeorge Wilson either return a redirect error code, or DECLINED. This fits the
30beaff42d8240ebf5386e8b7a14e3d137a1631fGeorge Wilson current hooks better. [Ryan Morgan <rmorgan@covalent.net>]
30beaff42d8240ebf5386e8b7a14e3d137a1631fGeorge Wilson *) Make the threaded MPM use APR threads instead of pthreads.
2e4c998613148111f2fc5371085331ffb39122ffGeorge Wilson *) Get mod_tls to the point where it actually appears to work in all cases.
2e4c998613148111f2fc5371085331ffb39122ffGeorge Wilson *) implement --enable-modules and --enable-mods-shared for "all" and
2e4c998613148111f2fc5371085331ffb39122ffGeorge Wilson "most". [Greg Stein]
2e4c998613148111f2fc5371085331ffb39122ffGeorge Wilson *) Move the threaded MPM to use APR locks instead of pthread locks.
0713e232b7712cd27d99e1e935ebb8d5de61c57dGeorge Wilson *) Rename mpmt_pthread to threaded. This is more in line with the
0713e232b7712cd27d99e1e935ebb8d5de61c57dGeorge Wilson fact that mpmt_pthread shouldn't be using pthreads directly, and
0713e232b7712cd27d99e1e935ebb8d5de61c57dGeorge Wilson it is a smaller name that doesn't tie into anything.
0713e232b7712cd27d99e1e935ebb8d5de61c57dGeorge Wilson *) Rename the module structures so that the exported symbol matches
0713e232b7712cd27d99e1e935ebb8d5de61c57dGeorge Wilson the file name, and it is easier to automate the installation
16a4a8074274d2d7cc408589cf6359f4a378c861George Wilson process (generating LoadModule directives from the module filenames).
0713e232b7712cd27d99e1e935ebb8d5de61c57dGeorge Wilson [Martin Kraemer]
0713e232b7712cd27d99e1e935ebb8d5de61c57dGeorge Wilson *) Remove the coalesce filter. With the ap_f* functions, this filter
16a4a8074274d2d7cc408589cf6359f4a378c861George Wilson is no longer needed. [Ryan Bloom]
0713e232b7712cd27d99e1e935ebb8d5de61c57dGeorge WilsonChanges with Apache 2.0.11
16a4a8074274d2d7cc408589cf6359f4a378c861George Wilson *) Remove the dexter MPM. Perchild is the same basic idea, but it has the
0713e232b7712cd27d99e1e935ebb8d5de61c57dGeorge Wilson added feature of allowing a uid/gid per child process. If no
0713e232b7712cd27d99e1e935ebb8d5de61c57dGeorge Wilson uid/gid is specified, then Perchild behaves exactly like dexter.
2a104a5236475eb73aa41eaaf3ed9f3ccbe0ca55Alex Reece *) Get perchild building again. [Ryan Bloom]
16a4a8074274d2d7cc408589cf6359f4a378c861George Wilson *) Don't disable threads just because we are using the prefork MPM.
0713e232b7712cd27d99e1e935ebb8d5de61c57dGeorge Wilson If somebody wants to compile without threads, they must now add
0713e232b7712cd27d99e1e935ebb8d5de61c57dGeorge Wilson --disable-threads to the configure command line. [Ryan Bloom]
16a4a8074274d2d7cc408589cf6359f4a378c861George Wilson *) Begin to move the calls to update_child_status into common code, so
16a4a8074274d2d7cc408589cf6359f4a378c861George Wilson that each individual MPM does not need to update the scoreboard itself.
16a4a8074274d2d7cc408589cf6359f4a378c861George Wilson *) Allow mod_tls to compile under Unix boxes where openssl has been
2a104a5236475eb73aa41eaaf3ed9f3ccbe0ca55Alex Reece installed to the system include files.
2a104a5236475eb73aa41eaaf3ed9f3ccbe0ca55Alex Reece [Gomez Henri <new-httpd@slib.fr>]
2a104a5236475eb73aa41eaaf3ed9f3ccbe0ca55Alex Reece *) Cleanup the mod_tls configure process. This should remove any need
2a104a5236475eb73aa41eaaf3ed9f3ccbe0ca55Alex Reece to hand-edit any files. We require OpenSSL 0.9.6 or later, but
2a104a5236475eb73aa41eaaf3ed9f3ccbe0ca55Alex Reece configure doesn't check that yet. [Ryan Bloom]
16a4a8074274d2d7cc408589cf6359f4a378c861George Wilson *) Add a very early prototype of SSL support (in mod_tls.c). It is
16a4a8074274d2d7cc408589cf6359f4a378c861George Wilson vital that you read modules/tls/README before attempting to build
16a4a8074274d2d7cc408589cf6359f4a378c861George Wilson it. [Ben Laurie]
0713e232b7712cd27d99e1e935ebb8d5de61c57dGeorge Wilson *) Fix a potential seg fault on all platforms. David Reid fixed this
2a104a5236475eb73aa41eaaf3ed9f3ccbe0ca55Alex Reece on BEOS, but the problem could happen anywhere, so we don't want
2a104a5236475eb73aa41eaaf3ed9f3ccbe0ca55Alex Reece to #ifdef it. [Cliff Woolley <cliffwoolley@yahoo.com>]
16a4a8074274d2d7cc408589cf6359f4a378c861George Wilson *) Add new LogFormat directive, %D, to log time it takes to serve a
16a4a8074274d2d7cc408589cf6359f4a378c861George Wilson request in microseconds. [Bill Stoddard]
16a4a8074274d2d7cc408589cf6359f4a378c861George Wilson *) Change AddInputFilter and AddOutputFilter to SetInputFilter and
16a4a8074274d2d7cc408589cf6359f4a378c861George Wilson SetOutputFilter. This corresponds nicely with the other Set
0713e232b7712cd27d99e1e935ebb8d5de61c57dGeorge Wilson directives, which operate on containers while the Add* directives
2e4c998613148111f2fc5371085331ffb39122ffGeorge Wilson tend to work directly on extensions. [Ryan Bloom]
2e4c998613148111f2fc5371085331ffb39122ffGeorge Wilson *) Cleanup the header handling a bit. This uses the apr_brigade_*
16a4a8074274d2d7cc408589cf6359f4a378c861George Wilson functions for the buffering so that we don't need to compute
0713e232b7712cd27d99e1e935ebb8d5de61c57dGeorge Wilson the length of the headers before we actually create the header
2e4c998613148111f2fc5371085331ffb39122ffGeorge Wilson buffer. [Ryan Bloom]
16a4a8074274d2d7cc408589cf6359f4a378c861George Wilson *) Allow filters to buffer data using the ap_f* functions. These have
16a4a8074274d2d7cc408589cf6359f4a378c861George Wilson become macros that resolve directly to apr_brigade_*.
16a4a8074274d2d7cc408589cf6359f4a378c861George Wilson *) Get the Unix MPM's to do a graceful restart again. If we are going
16a4a8074274d2d7cc408589cf6359f4a378c861George Wilson to register a cleanup with ap_cleanup_scoreboard, then we have to
16a4a8074274d2d7cc408589cf6359f4a378c861George Wilson kill the cleanup with the same function, and that function can't be
0713e232b7712cd27d99e1e935ebb8d5de61c57dGeorge Wilson static. [Ryan Bloom]
16a4a8074274d2d7cc408589cf6359f4a378c861George Wilson *) Install all required header files. Without these, it was not
16a4a8074274d2d7cc408589cf6359f4a378c861George Wilson possible to compile some modules outside of the server.
2a104a5236475eb73aa41eaaf3ed9f3ccbe0ca55Alex Reece [Ryan Bloom]
2a104a5236475eb73aa41eaaf3ed9f3ccbe0ca55Alex Reece *) Fix the AliasMatch directive in Apache 2.0. When we brought a patch
2a104a5236475eb73aa41eaaf3ed9f3ccbe0ca55Alex Reece forward from 1.3 to 2.0, we missed a single line, which broke regex
2a104a5236475eb73aa41eaaf3ed9f3ccbe0ca55Alex Reece aliases. [Ryan Bloom]
2a104a5236475eb73aa41eaaf3ed9f3ccbe0ca55Alex Reece *) We have a poor abstraction in the protocol. This is a temporary
2a104a5236475eb73aa41eaaf3ed9f3ccbe0ca55Alex Reece hack to fix the bug, but it will need to be fixed for real. If
2a104a5236475eb73aa41eaaf3ed9f3ccbe0ca55Alex Reece we find an error while sending out a custom error response, we back
16a4a8074274d2d7cc408589cf6359f4a378c861George Wilson up to the first non-OK request and send the data. Then, when we send
16a4a8074274d2d7cc408589cf6359f4a378c861George Wilson the EOS from finalize_request_protocol, we go to the last request,
16a4a8074274d2d7cc408589cf6359f4a378c861George Wilson to ensure that we aren't sending an EOS to a request that has already
16a4a8074274d2d7cc408589cf6359f4a378c861George Wilson received one. Because the data is sent on a different request than
16a4a8074274d2d7cc408589cf6359f4a378c861George Wilson the EOS, the error text never gets sent down the filter stack. This
0713e232b7712cd27d99e1e935ebb8d5de61c57dGeorge Wilson fixes the problem by finding the last request, and sending the data
16a4a8074274d2d7cc408589cf6359f4a378c861George Wilson with that request. [Ryan Bloom]
16a4a8074274d2d7cc408589cf6359f4a378c861George Wilson *) Make the server status page show the correct restart time, and
16a4a8074274d2d7cc408589cf6359f4a378c861George Wilson thus the proper uptime. [Ryan Bloom]
0713e232b7712cd27d99e1e935ebb8d5de61c57dGeorge Wilson *) Move the CGI creation logic from mod_include to mod_cgi(d). This
0713e232b7712cd27d99e1e935ebb8d5de61c57dGeorge Wilson should reduce the amount of duplicate code that is required to
0713e232b7712cd27d99e1e935ebb8d5de61c57dGeorge Wilson create CGI processes.
16a4a8074274d2d7cc408589cf6359f4a378c861George Wilson [Paul J. Reder <rederpj@raleigh.ibm.com>]
16a4a8074274d2d7cc408589cf6359f4a378c861George Wilson *) ap_new_connection() closes the socket and returns NULL if a socket
0713e232b7712cd27d99e1e935ebb8d5de61c57dGeorge Wilson call fails. Usually this is due to a connection which has been
16a4a8074274d2d7cc408589cf6359f4a378c861George Wilson reset. [Jeff Trawick]
daec38ecb4fb5e73e4ca9e99be84f6b8c50c02faJoe Stein *) Move the Apache version information out of httpd.h and into release.h.
daec38ecb4fb5e73e4ca9e99be84f6b8c50c02faJoe Stein This is in preparation for the first tag with the new tag and release
daec38ecb4fb5e73e4ca9e99be84f6b8c50c02faJoe Stein system. [Ryan Bloom]
daec38ecb4fb5e73e4ca9e99be84f6b8c50c02faJoe Stein *) Begin restructuring scoreboard code to enable adding back in
2e4c998613148111f2fc5371085331ffb39122ffGeorge Wilson the ability to use IPC other than shared memory.
2e4c998613148111f2fc5371085331ffb39122ffGeorge Wilson Get mod_status working on Windows again. [Bill Stoddard]
16a4a8074274d2d7cc408589cf6359f4a378c861George Wilson *) Make mod_status work with 2.0. This will work for prefork,
16a4a8074274d2d7cc408589cf6359f4a378c861George Wilson mpmt_pthread, and dexter. [Ryan Bloom]
16a4a8074274d2d7cc408589cf6359f4a378c861George Wilson *) Correct a typo in httpd.conf.
16a4a8074274d2d7cc408589cf6359f4a378c861George Wilson [Kunihiro Tanaka <tanaka@apache.or.jp>] PR#7154
0713e232b7712cd27d99e1e935ebb8d5de61c57dGeorge Wilson *) Really fix mod_rewrite map lookups this time. [Tony Finch]
0713e232b7712cd27d99e1e935ebb8d5de61c57dGeorge Wilson *) Get the correct IP address if ServerName isn't set and we can't
0713e232b7712cd27d99e1e935ebb8d5de61c57dGeorge Wilson find a fully-qualified domain name at startup.
16a4a8074274d2d7cc408589cf6359f4a378c861George Wilson PR#7170 [Danek Duvall <dduvall@eng.sun.com>]
0713e232b7712cd27d99e1e935ebb8d5de61c57dGeorge Wilson *) Make mod_cgid work with SuExec. [Ryan Bloom]
0713e232b7712cd27d99e1e935ebb8d5de61c57dGeorge Wilson *) Adopt apr user/group name features for mod_rewrite. Eliminates some
16a4a8074274d2d7cc408589cf6359f4a378c861George Wilson 'extra' stat's for user/group since they should never occur, and now
0713e232b7712cd27d99e1e935ebb8d5de61c57dGeorge Wilson resolves the SCRIPT_USER and SCRIPT_GROUP, including on WinNT NTFS
16a4a8074274d2d7cc408589cf6359f4a378c861George Wilson volumes. [William Rowe]
0713e232b7712cd27d99e1e935ebb8d5de61c57dGeorge Wilson *) Adopt apr features to simplify mod_includes. This changes the
0713e232b7712cd27d99e1e935ebb8d5de61c57dGeorge Wilson behavior of the USER_NAME variable, unknown uid's are now reported
0713e232b7712cd27d99e1e935ebb8d5de61c57dGeorge Wilson as USER_NAME="<unknown>" rather than the old user#000 result.
16a4a8074274d2d7cc408589cf6359f4a378c861George Wilson WinNT now resolves USER_NAME on NTFS volumes. [William Rowe]
0713e232b7712cd27d99e1e935ebb8d5de61c57dGeorge Wilson *) Adopt apr features for simplifing mod_userdir, and accept the new
0713e232b7712cd27d99e1e935ebb8d5de61c57dGeorge Wilson Win32/OS2 exceptions without hiccuping. [William Rowe]
16a4a8074274d2d7cc408589cf6359f4a378c861George Wilson *) Replace configure --with-optim option by using and saving the
16a4a8074274d2d7cc408589cf6359f4a378c861George Wilson environment variable OPTIM instead. This is needed because configure
16a4a8074274d2d7cc408589cf6359f4a378c861George Wilson options do not support multiple flags separated by spaces.
16a4a8074274d2d7cc408589cf6359f4a378c861George Wilson [Roy Fielding]
16a4a8074274d2d7cc408589cf6359f4a378c861George Wilson *) Fix some byterange handling. If we get a byte range that looks like
16a4a8074274d2d7cc408589cf6359f4a378c861George Wilson "-999999" where that is past the end of the file, we should return
0713e232b7712cd27d99e1e935ebb8d5de61c57dGeorge Wilson a PARTIAL CONTENT status code, and return the whole file as one big
16a4a8074274d2d7cc408589cf6359f4a378c861George Wilson byterange. This matches the 1.3 handling now. [Ryan Bloom]
0713e232b7712cd27d99e1e935ebb8d5de61c57dGeorge Wilson *) Make the error bucket a real meta-data bucket. This means that the
16a4a8074274d2d7cc408589cf6359f4a378c861George Wilson bucket length is 0, and a read returns NULL data. If one of these
16a4a8074274d2d7cc408589cf6359f4a378c861George Wilson buckets is passed down after the headers are sent, this data will
0713e232b7712cd27d99e1e935ebb8d5de61c57dGeorge Wilson just be ignored. [Greg Stein]
16a4a8074274d2d7cc408589cf6359f4a378c861George Wilson *) The prefork MPM wasn't killing child processes correctly if a restart
16a4a8074274d2d7cc408589cf6359f4a378c861George Wilson signal was received while the process was serving a request. The child
8363e80ae72609660f6090766ca8c2c18aa53f0cGeorge Wilson process would become the equivalent of a second parent process. If
16a4a8074274d2d7cc408589cf6359f4a378c861George Wilson we break out of the accept loop, then we need to do die after cleaning
0713e232b7712cd27d99e1e935ebb8d5de61c57dGeorge Wilson up after ourselves. [Ryan Bloom]
0713e232b7712cd27d99e1e935ebb8d5de61c57dGeorge Wilson *) Change the Prefork MPM to use SIGWINCH instead of SIGUSR1 for graceful
0713e232b7712cd27d99e1e935ebb8d5de61c57dGeorge Wilson restarts. [Ryan Bloom]
16a4a8074274d2d7cc408589cf6359f4a378c861George Wilson *) Modify the apr_stat/lstat/getfileinfo calls within apache to use
16a4a8074274d2d7cc408589cf6359f4a378c861George Wilson the most optimal APR_FINFO_wanted bits. This spares Win32 from
0713e232b7712cd27d99e1e935ebb8d5de61c57dGeorge Wilson performing very expensive owner, group and permission lookups
0713e232b7712cd27d99e1e935ebb8d5de61c57dGeorge Wilson and allows the server to function until these apr_finfo_t fields
0713e232b7712cd27d99e1e935ebb8d5de61c57dGeorge Wilson are implemented under Win32. [William Rowe]
0713e232b7712cd27d99e1e935ebb8d5de61c57dGeorge Wilson *) Support for typedsafe optional functions - that is functions exported by
0713e232b7712cd27d99e1e935ebb8d5de61c57dGeorge Wilson optional modules, which, therefore, may or may not be present, depending
16a4a8074274d2d7cc408589cf6359f4a378c861George Wilson on configuration. See the experimental modules mod_optional_fn_{ex,im}port
16a4a8074274d2d7cc408589cf6359f4a378c861George Wilson for sample code. [Ben Laurie]
fa9e4066f08beec538e775443c5be79dd423fcabahrens *) filters can now report an HTTP error to the server. This is done
fa9e4066f08beec538e775443c5be79dd423fcabahrens by sending a brigade where the first bucket is an error_bucket.
fa9e4066f08beec538e775443c5be79dd423fcabahrens This bucket is a simple bucket that stores an HTTP error and
fa9e4066f08beec538e775443c5be79dd423fcabahrens a string. Currently the string is not used, but it may be needed
fa9e4066f08beec538e775443c5be79dd423fcabahrens to output an error log. The http_header_filter will find this
0713e232b7712cd27d99e1e935ebb8d5de61c57dGeorge Wilson bucket, and output the error text, and then return
0713e232b7712cd27d99e1e935ebb8d5de61c57dGeorge Wilson AP_FILTER_ERROR, which informs the server that the error web page
fa9e4066f08beec538e775443c5be79dd423fcabahrens has already been sent. [Ryan Bloom]
0713e232b7712cd27d99e1e935ebb8d5de61c57dGeorge Wilson *) If we get an error, then we should remove all filters except for
0713e232b7712cd27d99e1e935ebb8d5de61c57dGeorge Wilson those critical to serving a web page. This fixes a bug, where
0713e232b7712cd27d99e1e935ebb8d5de61c57dGeorge Wilson error pages were going through the byterange filter, even though
0713e232b7712cd27d99e1e935ebb8d5de61c57dGeorge Wilson that made no sense. [Ryan Bloom]
0713e232b7712cd27d99e1e935ebb8d5de61c57dGeorge Wilson *) Relax the syntax checking of Host: headers in order to support
fa9e4066f08beec538e775443c5be79dd423fcabahrens iDNS. PR#6635 [Tony Finch]
88ecc943b4eb72f7c4fbbd8435997b85ef171fc3George Wilson *) Cleanup the byterange filter to use the apr_brigade_partition
16a4a8074274d2d7cc408589cf6359f4a378c861George Wilson and apr_bucket_copy functions. This removes a lot of very messy
16a4a8074274d2d7cc408589cf6359f4a378c861George Wilson code, and hopefully makes this filter more stable.
0713e232b7712cd27d99e1e935ebb8d5de61c57dGeorge Wilson *) Remove AddModule and ClearModuleList directives. Both of these
16a4a8074274d2d7cc408589cf6359f4a378c861George Wilson directives were used to ensure that modules could be enabled
16a4a8074274d2d7cc408589cf6359f4a378c861George Wilson in the correct order. That requirement is now gone, because
16a4a8074274d2d7cc408589cf6359f4a378c861George Wilson we use hooks to ensure that modules are in the correct order.
0713e232b7712cd27d99e1e935ebb8d5de61c57dGeorge Wilson *) When SuExec is specified, we need to add it to the list of
16a4a8074274d2d7cc408589cf6359f4a378c861George Wilson targets to be built. If we don't, then any changes to the
2e4c998613148111f2fc5371085331ffb39122ffGeorge Wilson configuration won't affect SuExec, unless 'make suexec' is
2e4c998613148111f2fc5371085331ffb39122ffGeorge Wilson specifically run. [Ryan Bloom]
2e4c998613148111f2fc5371085331ffb39122ffGeorge Wilson *) Cleaned out open_file from mod_file_cache, as apr now accepts
2e4c998613148111f2fc5371085331ffb39122ffGeorge Wilson the APR_XTHREAD argument to open a file for consumption by
0713e232b7712cd27d99e1e935ebb8d5de61c57dGeorge Wilson parallel threads on win32. [William Rowe]
2e4c998613148111f2fc5371085331ffb39122ffGeorge Wilson *) Correct a bug in determining when we follow symlinks. The code
468c413a79615e77179e8d98f22a7e513a8135bdTim Haley expected a stat -1 result, not an apr_status_t positive error.
fa9e4066f08beec538e775443c5be79dd423fcabahrens Also check if the APR_FINFO_USER fields are valid before we
ecc2d604e885a75cc75e647b5641af99d5a6f4a6bonwick follow the link. [William Rowe]
0713e232b7712cd27d99e1e935ebb8d5de61c57dGeorge Wilson *) Move initgroupgs, ap_uname2id and ap_gname2id from util.c to
0713e232b7712cd27d99e1e935ebb8d5de61c57dGeorge Wilson mpm_common.c. These functions are only valid on some platforms,
0713e232b7712cd27d99e1e935ebb8d5de61c57dGeorge Wilson so they should not be in the main-line code. [Ryan Bloom]
0713e232b7712cd27d99e1e935ebb8d5de61c57dGeorge Wilson *) Remove ap_chdir_file(). This function is not thread-safe,
0713e232b7712cd27d99e1e935ebb8d5de61c57dGeorge Wilson and nobody is currently using it. [Ryan Bloom]
468c413a79615e77179e8d98f22a7e513a8135bdTim Haley *) Do not try to run make depend if there are no .c files in the
468c413a79615e77179e8d98f22a7e513a8135bdTim Haley current directory, doing so makes `make depend` fail.
fa9e4066f08beec538e775443c5be79dd423fcabahrens [Ryan Bloom]
0713e232b7712cd27d99e1e935ebb8d5de61c57dGeorge Wilson *) Update highperformance.conf to work with either prefork or
0713e232b7712cd27d99e1e935ebb8d5de61c57dGeorge Wilson pthreads mpms. [Greg Ames]
0713e232b7712cd27d99e1e935ebb8d5de61c57dGeorge Wilson *) Stop checking to see if this is a pipelined request if we know
0713e232b7712cd27d99e1e935ebb8d5de61c57dGeorge Wilson for a fact that it isn't. Basically, if r->connection->keepalive == 0.
0713e232b7712cd27d99e1e935ebb8d5de61c57dGeorge Wilson This keeps us from making an extra read call when serving a 1.0
0713e232b7712cd27d99e1e935ebb8d5de61c57dGeorge Wilson request. [Ryan Bloom and Greg Stein]
0713e232b7712cd27d99e1e935ebb8d5de61c57dGeorge Wilson *) Fix the handling of variable expansion look-ahead in mod_rewrite,
ecc2d604e885a75cc75e647b5641af99d5a6f4a6bonwick i.e. syntax like %{LA-U:REMOTE_USER}, and also fix the parsing of
fa9e4066f08beec538e775443c5be79dd423fcabahrens more complicated nested RewriteMap lookups. PR#7087 [Tony Finch]
468c413a79615e77179e8d98f22a7e513a8135bdTim Haley *) Fix the RFC number mentioned when complaining about a missing
b1be2892dd07cf9a97d47ad06334cdc879196aafMatthew Ahrens Host: header. PR#7079 [Alexey Toptygin <alexeyt@wam.umd.edu>]
b1be2892dd07cf9a97d47ad06334cdc879196aafMatthew Ahrens *) Fix an endless loop in ab which occurred when ab was posting
b1be2892dd07cf9a97d47ad06334cdc879196aafMatthew Ahrens and the server dropped the connection unexpectedly.
b1be2892dd07cf9a97d47ad06334cdc879196aafMatthew Ahrens [Jeff Trawick]
b1be2892dd07cf9a97d47ad06334cdc879196aafMatthew Ahrens *) Fix a segfault while handling request bodies in ap_http_filter().
b1be2892dd07cf9a97d47ad06334cdc879196aafMatthew Ahrens This problem has been seen with mod_dav usage as well as with
b1be2892dd07cf9a97d47ad06334cdc879196aafMatthew Ahrens requests where the body was just being discarded. [Jeff Trawick]
16a4a8074274d2d7cc408589cf6359f4a378c861George Wilson *) Some adjustment on the handling and automatic setting (via
16a4a8074274d2d7cc408589cf6359f4a378c861George Wilson hints.m4) of various compilation flags (eg: CFLAGS). Also,
16a4a8074274d2d7cc408589cf6359f4a378c861George Wilson add the capability to specify flags (NOTEST_CFLAGS and
0713e232b7712cd27d99e1e935ebb8d5de61c57dGeorge Wilson NOTEST_LDFLAGS) which are used to compile Apache, but
0713e232b7712cd27d99e1e935ebb8d5de61c57dGeorge Wilson not used during the configuration process. Useful for
16a4a8074274d2d7cc408589cf6359f4a378c861George Wilson flags like "-Werror". [Jim Jagielski]
0713e232b7712cd27d99e1e935ebb8d5de61c57dGeorge Wilson *) Stop using environment variables to force debug mode or
0713e232b7712cd27d99e1e935ebb8d5de61c57dGeorge Wilson no detach. We now use the -D command line argument to
0713e232b7712cd27d99e1e935ebb8d5de61c57dGeorge Wilson specify the correct mode. -DONE_PROCESS and -DNO_DETACH.
0713e232b7712cd27d99e1e935ebb8d5de61c57dGeorge Wilson [Greg Stein, Ryan Bloom]
0713e232b7712cd27d99e1e935ebb8d5de61c57dGeorge Wilson *) Change handlers to use hooks. [Ben Laurie]
0713e232b7712cd27d99e1e935ebb8d5de61c57dGeorge Wilson *) Stop returning copies of filenames from both apr_file_t and
0713e232b7712cd27d99e1e935ebb8d5de61c57dGeorge Wilson apr_dir_t. We pstrdup the filenames that we store in the
8363e80ae72609660f6090766ca8c2c18aa53f0cGeorge Wilson actual structures, so we don't need to pstrdup the strings again.
8363e80ae72609660f6090766ca8c2c18aa53f0cGeorge Wilson *) mod_cgi: Fix some problems where the wrong error value was being
8363e80ae72609660f6090766ca8c2c18aa53f0cGeorge Wilson traced. [Jeff Trawick]
8363e80ae72609660f6090766ca8c2c18aa53f0cGeorge Wilson *) EBCDIC: Fix some missing ASCII conversion on some protocol data.
0713e232b7712cd27d99e1e935ebb8d5de61c57dGeorge Wilson [Jeff Trawick]
8363e80ae72609660f6090766ca8c2c18aa53f0cGeorge Wilson *) Add generic hooks. [Ben Laurie]
8363e80ae72609660f6090766ca8c2c18aa53f0cGeorge Wilson *) Use a real pool to dup the error log descriptor. [Ryan Bloom]
8363e80ae72609660f6090766ca8c2c18aa53f0cGeorge Wilson *) Fix a segfault caused by mod_ext_filter when the external filter
8363e80ae72609660f6090766ca8c2c18aa53f0cGeorge Wilson program does not exist. [Jeff Trawick]
8363e80ae72609660f6090766ca8c2c18aa53f0cGeorge Wilson *) Fix an output truncation error when on an HTTP >= 1.0 request an
8363e80ae72609660f6090766ca8c2c18aa53f0cGeorge Wilson object of size between DEFAULT_BUCKET_SIZE and AP_MIN_BYTES_TO_WRITE
8363e80ae72609660f6090766ca8c2c18aa53f0cGeorge Wilson was served through mod_charset_lite (or anything else that would
8363e80ae72609660f6090766ca8c2c18aa53f0cGeorge Wilson create a transient bucket in this size range). ap_bucket_make_heap()
8363e80ae72609660f6090766ca8c2c18aa53f0cGeorge Wilson silently failed (fixed), transient_setaside() discovered it, but
0713e232b7712cd27d99e1e935ebb8d5de61c57dGeorge Wilson ap_save_brigade() ignored it (fixed). [Jeff Trawick]
8363e80ae72609660f6090766ca8c2c18aa53f0cGeorge Wilson *) Ignore \r\n or \n when using PEEK mode for input filters. The problem
8363e80ae72609660f6090766ca8c2c18aa53f0cGeorge Wilson is that some browsers send extra lines at the end of POST requests, and
8363e80ae72609660f6090766ca8c2c18aa53f0cGeorge Wilson we don't want to delay sending data back to the user just because the
8363e80ae72609660f6090766ca8c2c18aa53f0cGeorge Wilson browser isn't well behaved. [Ryan Bloom]
8363e80ae72609660f6090766ca8c2c18aa53f0cGeorge Wilson *) Get SuEXEC working again. We can't send absolute paths to suExec
8363e80ae72609660f6090766ca8c2c18aa53f0cGeorge Wilson because it refuses to execute those programs. SuEXEC also wasn't
8363e80ae72609660f6090766ca8c2c18aa53f0cGeorge Wilson always recognizing configuration changes made using the autoconf
8363e80ae72609660f6090766ca8c2c18aa53f0cGeorge Wilson setup. [Ryan Bloom]
2e4c998613148111f2fc5371085331ffb39122ffGeorge Wilson *) Allow the buildconf process to find the config.m4 files in the correct
2e4c998613148111f2fc5371085331ffb39122ffGeorge Wilson order. Basically, we can now name config.m4 files as config\d\d.m4,
fa9e4066f08beec538e775443c5be79dd423fcabahrens and we will sort them correctly when inserting them into the build
16a4a8074274d2d7cc408589cf6359f4a378c861George Wilson process. [Ryan Bloom]
0713e232b7712cd27d99e1e935ebb8d5de61c57dGeorge Wilson *) Get mod_cgid to use apr calls for creating the actual CGI process.
0713e232b7712cd27d99e1e935ebb8d5de61c57dGeorge Wilson This also allows mod_cgid to use ap_os_create_priviledged_process,
16a4a8074274d2d7cc408589cf6359f4a378c861George Wilson thus allowing for SuExec execution from mod_cgid. Currently, we do
16a4a8074274d2d7cc408589cf6359f4a378c861George Wilson not support everything that standard SuExec supports, but at least
16a4a8074274d2d7cc408589cf6359f4a378c861George Wilson it works minimally now. [Ryan Bloom]
16a4a8074274d2d7cc408589cf6359f4a378c861George Wilson *) Allow SuExec to be configured from the ./configure command line.
2e4c998613148111f2fc5371085331ffb39122ffGeorge Wilson *) Update some of the docs in README and INSTALL to reflect some of
fa9e4066f08beec538e775443c5be79dd423fcabahrens the changes in Apache 2.0 [Cliff Woolley <cliffwoolley@yahoo.com>]
8363e80ae72609660f6090766ca8c2c18aa53f0cGeorge Wilson *) If we get EAGAIN returned from the call to apr_sendfile, then we
0713e232b7712cd27d99e1e935ebb8d5de61c57dGeorge Wilson need to call sendfile again. This gets us serving large files
fa9e4066f08beec538e775443c5be79dd423fcabahrens such as apache_2.0a9.tar.gz on FreeBSD again. [Ryan Bloom]
fa9e4066f08beec538e775443c5be79dd423fcabahrens *) Get the support programs building cleanly again.
0713e232b7712cd27d99e1e935ebb8d5de61c57dGeorge Wilson [Cliff Woolley <cliffwoolley@yahoo.com>]
0713e232b7712cd27d99e1e935ebb8d5de61c57dGeorge Wilson *) The Apache/Win32 Apache.exe and dll's now live in bin. The
0713e232b7712cd27d99e1e935ebb8d5de61c57dGeorge Wilson current directory logic now backs up over bin/ to determine the
0713e232b7712cd27d99e1e935ebb8d5de61c57dGeorge Wilson server root from the Apache.exe path.
fa9e4066f08beec538e775443c5be79dd423fcabahrens *) Apache/Win32 now follows the standard conventions of mod_foo.so
fa9e4066f08beec538e775443c5be79dd423fcabahrens loadable modules, dynamic libs are all named libfoo.dll, and the
fa9e4066f08beec538e775443c5be79dd423fcabahrens makefile.win populates the include, lib and libexec directories.
fa9e4066f08beec538e775443c5be79dd423fcabahrens *) Apache is now IPv6-capable. On systems where APR supports IPv6,
fa9e4066f08beec538e775443c5be79dd423fcabahrens Apache gets IPv6 listening sockets by default. Additionally, the
fa9e4066f08beec538e775443c5be79dd423fcabahrens Listen, NameVirtualHost, and <VirtualHost> directives support IPv6
fa9e4066f08beec538e775443c5be79dd423fcabahrens numeric address strings (e.g., "Listen [fe80::1]:8080").
fa9e4066f08beec538e775443c5be79dd423fcabahrens [Jeff Trawick]
ecc2d604e885a75cc75e647b5641af99d5a6f4a6bonwick *) Modify the install directory layout. Modules are now installed in
8363e80ae72609660f6090766ca8c2c18aa53f0cGeorge Wilson modules/. Shared libraries should be installed in libraries/, but
0713e232b7712cd27d99e1e935ebb8d5de61c57dGeorge Wilson we don't have any of those on Unix yet. All install directories
0713e232b7712cd27d99e1e935ebb8d5de61c57dGeorge Wilson are modifyable at configure time. [Ryan Bloom]
8363e80ae72609660f6090766ca8c2c18aa53f0cGeorge Wilson *) Install all header files in the same directory on Unix. [Ryan Bloom]
88ecc943b4eb72f7c4fbbd8435997b85ef171fc3George Wilson *) Get the functions in server/linked into the server, regardless of
88ecc943b4eb72f7c4fbbd8435997b85ef171fc3George Wilson which modules linked into the server. This uses the same hack
fa9e4066f08beec538e775443c5be79dd423fcabahrens for Apache that we use for APR and apr-util to ensure all of the
fa9e4066f08beec538e775443c5be79dd423fcabahrens necessary functions are linked. As a part of thise, the CHARSET_EBCDIC
ecc2d604e885a75cc75e647b5641af99d5a6f4a6bonwick was renamed to AP_CHARSET_EBCDIC for namespace protection, and to make
ecc2d604e885a75cc75e647b5641af99d5a6f4a6bonwick the scripts a bit easier.
ecc2d604e885a75cc75e647b5641af99d5a6f4a6bonwick *) Rework the RFC1413 handling to make it thread-safe, use a timeout
0713e232b7712cd27d99e1e935ebb8d5de61c57dGeorge Wilson on the query, and remove IPv4 dependencies. [Jeff Trawick]
0713e232b7712cd27d99e1e935ebb8d5de61c57dGeorge Wilson *) Get all of the auth modules to the point that they will install and
0713e232b7712cd27d99e1e935ebb8d5de61c57dGeorge Wilson be loadable into the server. Our new build/install mechanism expects
0713e232b7712cd27d99e1e935ebb8d5de61c57dGeorge Wilson that all modules will have a common name format. The auth modules
0713e232b7712cd27d99e1e935ebb8d5de61c57dGeorge Wilson didn't use that format, so we didn't install them properly.
0713e232b7712cd27d99e1e935ebb8d5de61c57dGeorge Wilson *) API routines ap_pgethostbyname() and ap_pduphostent() are no longer
fa9e4066f08beec538e775443c5be79dd423fcabahrens available. Use apr_getaddrinfo() instead. [Jeff Trawick]
16a4a8074274d2d7cc408589cf6359f4a378c861George Wilson *) Get "NameVirtualHost *" working in 2.0. [Ryan Bloom]
16a4a8074274d2d7cc408589cf6359f4a378c861George Wilson *) Return HTTP_RANGE_NOT_SATISFIABLE if the every range requested starts
0713e232b7712cd27d99e1e935ebb8d5de61c57dGeorge Wilson after the end of the response. [Ryan Bloom]
0713e232b7712cd27d99e1e935ebb8d5de61c57dGeorge Wilson *) Get byterange requests working with responses that do not have a
468c413a79615e77179e8d98f22a7e513a8135bdTim Haley content-length. Because of the way byterange requests work, we have to
0713e232b7712cd27d99e1e935ebb8d5de61c57dGeorge Wilson have all of the data before we can actually do the byterange, so we
fa9e4066f08beec538e775443c5be79dd423fcabahrens can compute the content-length in the byterange filter.
fa9e4066f08beec538e775443c5be79dd423fcabahrens [Ryan Bloom]
0713e232b7712cd27d99e1e935ebb8d5de61c57dGeorge Wilson *) Get exe CGI's working again on Windows.
0713e232b7712cd27d99e1e935ebb8d5de61c57dGeorge Wilson [Allan Edwards]
8363e80ae72609660f6090766ca8c2c18aa53f0cGeorge Wilson *) Get mod_cgid and mod_rewrite to work as DSOs by changing the way
8363e80ae72609660f6090766ca8c2c18aa53f0cGeorge Wilson they keep track of whether or not their post config hook has been
8363e80ae72609660f6090766ca8c2c18aa53f0cGeorge Wilson called before. Instead of a static variable (which is replaced when
8363e80ae72609660f6090766ca8c2c18aa53f0cGeorge Wilson the DSO is loaded a second time), use userdata in the process pool.
8363e80ae72609660f6090766ca8c2c18aa53f0cGeorge Wilson [Jeff Trawick]
0713e232b7712cd27d99e1e935ebb8d5de61c57dGeorge WilsonChanges with Apache 2.0a9
8363e80ae72609660f6090766ca8c2c18aa53f0cGeorge Wilson *) Win32 now requires perl to complete the final install step for users
8363e80ae72609660f6090766ca8c2c18aa53f0cGeorge Wilson to build + install on Win32. Makefile.win now rewrites @@ServerRoot@
8363e80ae72609660f6090766ca8c2c18aa53f0cGeorge Wilson and installs the conf, htdocs and htdocs/manual directories.
8363e80ae72609660f6090766ca8c2c18aa53f0cGeorge Wilson [William Rowe]
468c413a79615e77179e8d98f22a7e513a8135bdTim Haley *) Make mod_include use a hash table to associate directive tags with
b24ab6762772a3f6a89393947930c7fa61306783Jeff Bonwick functions. This allows modules to implement their own SSI tags easily.
fa9e4066f08beec538e775443c5be79dd423fcabahrens The idea is simple enough, a module can insert it's own tag and function
0713e232b7712cd27d99e1e935ebb8d5de61c57dGeorge Wilson combination into a hash table provided by mod_include. While mod_include
0713e232b7712cd27d99e1e935ebb8d5de61c57dGeorge Wilson parses an SSI file, when it encounters a tag in the file, it does a
fa9e4066f08beec538e775443c5be79dd423fcabahrens hash lookup to find the function that implements that tag, and passes
ecc2d604e885a75cc75e647b5641af99d5a6f4a6bonwick all of the relevant data to the function. That function is then
0713e232b7712cd27d99e1e935ebb8d5de61c57dGeorge Wilson responsible for processing the tag and handing the remaining data back
ecc2d604e885a75cc75e647b5641af99d5a6f4a6bonwick to mod_include for further processing.
ecc2d604e885a75cc75e647b5641af99d5a6f4a6bonwick [Paul J. Reder <rederpj@raleigh.ibm.com>]
9eb57f7f3fbb970d4b9b89dcd5ecf543fe2414d5George Wilson *) Get rid of ap_new_apr_connection(). ap_new_connection() now has
9eb57f7f3fbb970d4b9b89dcd5ecf543fe2414d5George Wilson fewer parameters: the local and remote socket addresses were removed
0713e232b7712cd27d99e1e935ebb8d5de61c57dGeorge Wilson from the parameter list because all required information is available
0713e232b7712cd27d99e1e935ebb8d5de61c57dGeorge Wilson via the APR socket. [Jeff Trawick]
0713e232b7712cd27d99e1e935ebb8d5de61c57dGeorge Wilson *) Distribution directory structure reorganized to reflect a
9eb57f7f3fbb970d4b9b89dcd5ecf543fe2414d5George Wilson normal source distribution with external install targets.
0713e232b7712cd27d99e1e935ebb8d5de61c57dGeorge Wilson [Roy Fielding]
8363e80ae72609660f6090766ca8c2c18aa53f0cGeorge Wilson *) The MPMs that need multiple segments of shared memory now create
8363e80ae72609660f6090766ca8c2c18aa53f0cGeorge Wilson two apr_shmem_t variables, one for each shared memory allocation.
8363e80ae72609660f6090766ca8c2c18aa53f0cGeorge Wilson the problem is that we can't determine how much memory will be required
8363e80ae72609660f6090766ca8c2c18aa53f0cGeorge Wilson for shared memory allocations once we try to allocate more than one
8363e80ae72609660f6090766ca8c2c18aa53f0cGeorge Wilson variable. The MM code automatically aligns the shared memory allocations,
8363e80ae72609660f6090766ca8c2c18aa53f0cGeorge Wilson so we end up needing to pad the amount of shared memory we want based
fa9e4066f08beec538e775443c5be79dd423fcabahrens on how many variables will be allocated out of the shared memory segment.
0713e232b7712cd27d99e1e935ebb8d5de61c57dGeorge Wilson It is just easier to create a second apr_shmem_t variable, and two
fa9e4066f08beec538e775443c5be79dd423fcabahrens shmem memory blocks.
468c413a79615e77179e8d98f22a7e513a8135bdTim Haley [Ryan Bloom]
0713e232b7712cd27d99e1e935ebb8d5de61c57dGeorge Wilson *) Cleanup the export list a bit. This creates a single unified list of
468c413a79615e77179e8d98f22a7e513a8135bdTim Haley functions exported by APR. The export list is generated at configure
468c413a79615e77179e8d98f22a7e513a8135bdTim Haley time, and that list is then used to generate the exports.c file.
468c413a79615e77179e8d98f22a7e513a8135bdTim Haley Because of the way the export list is generated, we only export those
468c413a79615e77179e8d98f22a7e513a8135bdTim Haley functions that are valid on the platform we are building on.
468c413a79615e77179e8d98f22a7e513a8135bdTim Haley [Ryan Bloom]
468c413a79615e77179e8d98f22a7e513a8135bdTim Haley *) Enable logging the cookie with mod_log_config
468c413a79615e77179e8d98f22a7e513a8135bdTim Haley [Sander van Zoest <sander@covalent.net>]
8363e80ae72609660f6090766ca8c2c18aa53f0cGeorge Wilson *) Fix a segfault in mod_info when it reaches the end of the configuration.
8363e80ae72609660f6090766ca8c2c18aa53f0cGeorge Wilson [Jeff Trawick]
8363e80ae72609660f6090766ca8c2c18aa53f0cGeorge Wilson *) Added lib/aputil/ as a placeholder for utility functions which are not
8363e80ae72609660f6090766ca8c2c18aa53f0cGeorge Wilson specific to the Apache HTTP Server (but do not make sense with APR).
8363e80ae72609660f6090766ca8c2c18aa53f0cGeorge Wilson The first utility is "apu_dbm": a set of functions to work with DBM
8363e80ae72609660f6090766ca8c2c18aa53f0cGeorge Wilson files. This first version can be compiled for SDBM or GDBM databases.
8363e80ae72609660f6090766ca8c2c18aa53f0cGeorge Wilson *) Complete re-write of mod_include. This makes mod_include a filter that
8363e80ae72609660f6090766ca8c2c18aa53f0cGeorge Wilson uses buckets directly. This has now served the FAQ correctly.
0713e232b7712cd27d99e1e935ebb8d5de61c57dGeorge Wilson [Paul Reder <rederpj@raleigh.ibm.com>]
0713e232b7712cd27d99e1e935ebb8d5de61c57dGeorge Wilson *) Allow modules to specify the first filter in a sub_request when
0713e232b7712cd27d99e1e935ebb8d5de61c57dGeorge Wilson making the sub_request. This keeps modules from having to change the
fa9e4066f08beec538e775443c5be79dd423fcabahrens output_filter immediately after creating the sub-request, and therefore
0713e232b7712cd27d99e1e935ebb8d5de61c57dGeorge Wilson skip the sub_req_output_filter. [Ryan Bloom]
fa9e4066f08beec538e775443c5be79dd423fcabahrens *) Update ab to accept URLs with IPv6 literal address strings (in the
fa9e4066f08beec538e775443c5be79dd423fcabahrens format described in RFC 2732), and to build Host header fields in
ecc2d604e885a75cc75e647b5641af99d5a6f4a6bonwick the same format. This allows IPv6 literal address strings to be
fa9e4066f08beec538e775443c5be79dd423fcabahrens used with ab. This support has been tested against Apache 1.3 with
fa9e4066f08beec538e775443c5be79dd423fcabahrens the KAME patch, but Apache 2.0 does not yet work with this format
80eb36f241abf8c076119fb4c49a55fd61ebc710George Wilson of the Host header field. [Jeff Trawick]
80eb36f241abf8c076119fb4c49a55fd61ebc710George Wilson *) Accomodate an out-of-space condition in the piped logs and the
22e30981d82a0b6dc89253596ededafae8655e00George Wilson rotatelogs.c code, and no longer churn log processes for this
2e4c998613148111f2fc5371085331ffb39122ffGeorge Wilson condition. [Victor J. Orlikowski]
80eb36f241abf8c076119fb4c49a55fd61ebc710George Wilson *) Add support for partial writes with apr_sendfile() to core_output_filter.
0713e232b7712cd27d99e1e935ebb8d5de61c57dGeorge WilsonChanges with Apache 2.0a8
80eb36f241abf8c076119fb4c49a55fd61ebc710George Wilson *) Add a directive to mod_mime so that filters can be associated with
44cd46cadd9aab751dae6a4023c1cb5bf316d274billm a given mime-type.
44cd46cadd9aab751dae6a4023c1cb5bf316d274billm [Ryan Bloom]
44cd46cadd9aab751dae6a4023c1cb5bf316d274billm *) Get multi-views working again. We were setting the path_info
44cd46cadd9aab751dae6a4023c1cb5bf316d274billm field incorrectly if we couldn't find the specified file.
44cd46cadd9aab751dae6a4023c1cb5bf316d274billm *) Fix 304 processing. The core should never try to send the headers
44cd46cadd9aab751dae6a4023c1cb5bf316d274billm down the filter stack. Always, just setup the table in the request
44cd46cadd9aab751dae6a4023c1cb5bf316d274billm record, and let the header filter convert it to data that is ready
44cd46cadd9aab751dae6a4023c1cb5bf316d274billm for the network.
44cd46cadd9aab751dae6a4023c1cb5bf316d274billm [Ryan Bloom]
44cd46cadd9aab751dae6a4023c1cb5bf316d274billm *) More fixes for the proxy. There are still bugs in the proxy code,
44cd46cadd9aab751dae6a4023c1cb5bf316d274billm but this has now proxied www.yahoo.com and www.ntrnet.net (my ISP)
44cd46cadd9aab751dae6a4023c1cb5bf316d274billm successfully.
44cd46cadd9aab751dae6a4023c1cb5bf316d274billm [Ryan Bloom]
8363e80ae72609660f6090766ca8c2c18aa53f0cGeorge Wilson *) Fix params for apr_getaddrinfo() call in connect proxy handler.
8363e80ae72609660f6090766ca8c2c18aa53f0cGeorge Wilson [Chuck Murcko]
8363e80ae72609660f6090766ca8c2c18aa53f0cGeorge Wilson *) APR: Add new apr_getopt_long function to handle long options.
8363e80ae72609660f6090766ca8c2c18aa53f0cGeorge Wilson [B. W. Fitzpatrick <fitz@red-bean.com>]
8363e80ae72609660f6090766ca8c2c18aa53f0cGeorge Wilson *) APR: Change apr_connect() to take apr_sockaddr_t instead of hostname.
8363e80ae72609660f6090766ca8c2c18aa53f0cGeorge Wilson Add generic apr_create_socket(). Add apr_getaddrinfo() for doing
8363e80ae72609660f6090766ca8c2c18aa53f0cGeorge Wilson hostname resolution/address string parsing and building
8363e80ae72609660f6090766ca8c2c18aa53f0cGeorge Wilson apr_sockaddr_t. Add apr_get_sockaddr() for getting the address
8363e80ae72609660f6090766ca8c2c18aa53f0cGeorge Wilson of one of the apr_sockaddr_t structures for a socket. Change
8363e80ae72609660f6090766ca8c2c18aa53f0cGeorge Wilson apr_bind() to take apr_sockaddr_t. [David Reid and Jeff Trawick]
8363e80ae72609660f6090766ca8c2c18aa53f0cGeorge Wilson *) Remove the BUFF from the HTTP proxy. This is still a bit ugly, but
8363e80ae72609660f6090766ca8c2c18aa53f0cGeorge Wilson I have proxied pages with it, cleanup will commence soon.
8363e80ae72609660f6090766ca8c2c18aa53f0cGeorge Wilson *) Make the proxy work with filters. This isn't perfect, because we
8363e80ae72609660f6090766ca8c2c18aa53f0cGeorge Wilson aren't dealing with the headers properly. [Ryan Bloom]
8363e80ae72609660f6090766ca8c2c18aa53f0cGeorge Wilson *) Do not send a content-length iff the C-L is 0 and this is a head
8363e80ae72609660f6090766ca8c2c18aa53f0cGeorge Wilson request. [Ryan Bloom]
8363e80ae72609660f6090766ca8c2c18aa53f0cGeorge Wilson *) Make cgi-bin work as a regular directory when using mod_vhost_alias
8363e80ae72609660f6090766ca8c2c18aa53f0cGeorge Wilson with no VirtualScriptAlias directives. PR#6829 [Tony Finch]
8363e80ae72609660f6090766ca8c2c18aa53f0cGeorge Wilson *) Remove BUFF from the PROXY connect handling. [Ryan Bloom]
8363e80ae72609660f6090766ca8c2c18aa53f0cGeorge Wilson *) Get the default_handler to stop trying to deal with HEAD requests.
8363e80ae72609660f6090766ca8c2c18aa53f0cGeorge Wilson The idea is to let the content-length filter compute the C-L before
8363e80ae72609660f6090766ca8c2c18aa53f0cGeorge Wilson we try to send the data. If we can get the C-L correctly, then we
8363e80ae72609660f6090766ca8c2c18aa53f0cGeorge Wilson should send it in the HEAD response.
8363e80ae72609660f6090766ca8c2c18aa53f0cGeorge Wilson *) The Header filter can now determine if a body should be sent based
8363e80ae72609660f6090766ca8c2c18aa53f0cGeorge Wilson on r->header_only. The general idea of this is that if we delay
8363e80ae72609660f6090766ca8c2c18aa53f0cGeorge Wilson deciding to send the body, then we might be able to compute the
8363e80ae72609660f6090766ca8c2c18aa53f0cGeorge Wilson content-length correctly, which will help caching proxies to cache
8363e80ae72609660f6090766ca8c2c18aa53f0cGeorge Wilson our data better. Any handler that doesn't want to try to compute
8363e80ae72609660f6090766ca8c2c18aa53f0cGeorge Wilson the content-length can just send an EOS bucket without data and
8363e80ae72609660f6090766ca8c2c18aa53f0cGeorge Wilson everything will just work.
8363e80ae72609660f6090766ca8c2c18aa53f0cGeorge Wilson *) Add the referer to the error log if one is available.
8363e80ae72609660f6090766ca8c2c18aa53f0cGeorge Wilson [Markus Gyger <mgyger@itr.ch>]
8363e80ae72609660f6090766ca8c2c18aa53f0cGeorge Wilson *) Mod_info.c has now been ported to Apache 2.0. As a part of this
8363e80ae72609660f6090766ca8c2c18aa53f0cGeorge Wilson change, the root of the configuration tree has been exposed to modules
8363e80ae72609660f6090766ca8c2c18aa53f0cGeorge Wilson as ap_conftree.
8363e80ae72609660f6090766ca8c2c18aa53f0cGeorge Wilson [Ryan Morgan <rmorgan@covalent.net>]
8363e80ae72609660f6090766ca8c2c18aa53f0cGeorge Wilson *) Get the core_output_filter to use the bucket interface directly.
8363e80ae72609660f6090766ca8c2c18aa53f0cGeorge Wilson This keeps us from calling the content-length filter multiple times
8363e80ae72609660f6090766ca8c2c18aa53f0cGeorge Wilson for a simple static request.
8363e80ae72609660f6090766ca8c2c18aa53f0cGeorge Wilson *) We are sending the content-type correctly now.
8363e80ae72609660f6090766ca8c2c18aa53f0cGeorge Wilson [Ryan Bloom and Will Rowe]
8363e80ae72609660f6090766ca8c2c18aa53f0cGeorge Wilson *) APR on FreeBSD: Fix a bug in apr_sendfile() which caused us to report
8363e80ae72609660f6090766ca8c2c18aa53f0cGeorge Wilson a bogus bytes-sent value when the only thing being sent was trailers
8363e80ae72609660f6090766ca8c2c18aa53f0cGeorge Wilson and writev() returned an error (or EAGAIN). [Jeff Trawick]
8363e80ae72609660f6090766ca8c2c18aa53f0cGeorge Wilson *) Get SINGLE_LISTEN_UNSERIALIZED_ACCEPT working again. This uses the
8363e80ae72609660f6090766ca8c2c18aa53f0cGeorge Wilson hints file to determine which platforms define
8363e80ae72609660f6090766ca8c2c18aa53f0cGeorge Wilson SINGLE_LISTEN_UNSERIALIZED_ACCEPT.
8363e80ae72609660f6090766ca8c2c18aa53f0cGeorge Wilson *) APR: add apr_get_home_directory() [Jeff Trawick]
8363e80ae72609660f6090766ca8c2c18aa53f0cGeorge Wilson *) Initial import of 1.3-current mod_proxy. [Chuck Murcko]
8363e80ae72609660f6090766ca8c2c18aa53f0cGeorge Wilson *) Not all platforms have INADDR_NONE defined by default. Apache
8363e80ae72609660f6090766ca8c2c18aa53f0cGeorge Wilson used to make this check and define INADDR_NONE if appropriate,
8363e80ae72609660f6090766ca8c2c18aa53f0cGeorge Wilson but APR needs the check too, and I suspect other applications will
8363e80ae72609660f6090766ca8c2c18aa53f0cGeorge Wilson as well. APR now defines APR_INADDR_NONE, which is always a valid
8363e80ae72609660f6090766ca8c2c18aa53f0cGeorge Wilson value on all platforms.
8363e80ae72609660f6090766ca8c2c18aa53f0cGeorge Wilson [Branko �ibej <brane@xbc.nu>]
8363e80ae72609660f6090766ca8c2c18aa53f0cGeorge Wilson *) Destroy the pthread mutex in lock_intra_cleanup() for PR#6824.
8363e80ae72609660f6090766ca8c2c18aa53f0cGeorge Wilson [Shuichi Kitaguchi <ki@hh.iij4u.or.jp>]
8363e80ae72609660f6090766ca8c2c18aa53f0cGeorge Wilson *) Relax the syntax checking of Host: headers in order to support
8363e80ae72609660f6090766ca8c2c18aa53f0cGeorge Wilson iDNS. PR#6635 [Tony Finch]
8363e80ae72609660f6090766ca8c2c18aa53f0cGeorge Wilson *) When reading from file buckets we convert to an MMAP if it makes
8363e80ae72609660f6090766ca8c2c18aa53f0cGeorge Wilson sense. This also simplifies the default handler because the
8363e80ae72609660f6090766ca8c2c18aa53f0cGeorge Wilson default handler no longer needs to try to create MMAPs.
8363e80ae72609660f6090766ca8c2c18aa53f0cGeorge Wilson *) BUFF has been removed from the main server. The BUFF code will remain
8363e80ae72609660f6090766ca8c2c18aa53f0cGeorge Wilson in the code until it has been purged from the proxy module as well.
8363e80ae72609660f6090766ca8c2c18aa53f0cGeorge Wilson *) Byteranges have been completely re-written to be a filter. This
8363e80ae72609660f6090766ca8c2c18aa53f0cGeorge Wilson has been tested, and I believe it is working correctly, but it could
8363e80ae72609660f6090766ca8c2c18aa53f0cGeorge Wilson doesn't work for the Adobe Acrobat plug-in. The output almost matches
8363e80ae72609660f6090766ca8c2c18aa53f0cGeorge Wilson the output from 1.3, the only difference being that 1.3 includes
8363e80ae72609660f6090766ca8c2c18aa53f0cGeorge Wilson a content-length in the response, and this does not.
8363e80ae72609660f6090766ca8c2c18aa53f0cGeorge Wilson *) APR read/write functions and bucket read functions now operate
8363e80ae72609660f6090766ca8c2c18aa53f0cGeorge Wilson on unsigned integers, instead of signed ones. It doesn't make
8363e80ae72609660f6090766ca8c2c18aa53f0cGeorge Wilson any sense to use signed ints, because we return the error codes,
8363e80ae72609660f6090766ca8c2c18aa53f0cGeorge Wilson so if we have an error we should report 0 bytes read or written.
0f7643c7376dd69a08acbfc9d1d7d548b10c846aGeorge Wilson *) Always compute the content length, whether it is sent or not.
0f7643c7376dd69a08acbfc9d1d7d548b10c846aGeorge Wilson The reason for this, is that it allows us to correctly report
0f7643c7376dd69a08acbfc9d1d7d548b10c846aGeorge Wilson the bytes_sent when logging the request. This also simplifies
0f7643c7376dd69a08acbfc9d1d7d548b10c846aGeorge Wilson content-length filter a bit, and fixes the actual byte-reporing
0f7643c7376dd69a08acbfc9d1d7d548b10c846aGeorge Wilson *) Remove AP_END_OF_BRIGADE definition. This does not signify what
0f7643c7376dd69a08acbfc9d1d7d548b10c846aGeorge Wilson it says, because it was only used by EOS and FLUSH buckets. Since
0f7643c7376dd69a08acbfc9d1d7d548b10c846aGeorge Wilson neither of those are required at the end of a brigade, this was
0f7643c7376dd69a08acbfc9d1d7d548b10c846aGeorge Wilson really signifying FLUSH_THE_DATA, but that can be determined better
0f7643c7376dd69a08acbfc9d1d7d548b10c846aGeorge Wilson by checking AP_BUCKET_IS_EOS() or AP_BUCKET_IS_FLUSH. EOS and FLUSH
0f7643c7376dd69a08acbfc9d1d7d548b10c846aGeorge Wilson buckets now return a length of 0, which is actually the amount of data
0f7643c7376dd69a08acbfc9d1d7d548b10c846aGeorge Wilson read, so they make more sense.
0f7643c7376dd69a08acbfc9d1d7d548b10c846aGeorge Wilson *) Allow the core_output_filter to save some data past the end of a
0f7643c7376dd69a08acbfc9d1d7d548b10c846aGeorge Wilson request. If we get an EOS bucket, we only send the data if it
0f7643c7376dd69a08acbfc9d1d7d548b10c846aGeorge Wilson makes sense to send it. This allows us to pipeline request
0f7643c7376dd69a08acbfc9d1d7d548b10c846aGeorge Wilson responses. As a part of this, we also need to allocate mmap
0f7643c7376dd69a08acbfc9d1d7d548b10c846aGeorge Wilson buckets out of the connection pool, not the request pool. This
0f7643c7376dd69a08acbfc9d1d7d548b10c846aGeorge Wilson allows the mmap to outlive the request.
0f7643c7376dd69a08acbfc9d1d7d548b10c846aGeorge Wilson *) Make blocking and non-blocking bucket reads work correctly for
0f7643c7376dd69a08acbfc9d1d7d548b10c846aGeorge Wilson sockets and pipes. These are the only bucket types that should
0f7643c7376dd69a08acbfc9d1d7d548b10c846aGeorge Wilson have non-blocking reads, because the other bucket types should
0f7643c7376dd69a08acbfc9d1d7d548b10c846aGeorge Wilson ALWAYS be able to return something immediately.
0f7643c7376dd69a08acbfc9d1d7d548b10c846aGeorge Wilson *) In the Apache/Win32 console window, accept Ctrl+C to stop the
0f7643c7376dd69a08acbfc9d1d7d548b10c846aGeorge Wilson server, but use Ctrl+Break to initiate a graceful restart
0f7643c7376dd69a08acbfc9d1d7d548b10c846aGeorge Wilson instead of duplicating behavior. [John Sterling]
0f7643c7376dd69a08acbfc9d1d7d548b10c846aGeorge Wilson *) Patch mod_autoindex to set the Last-Modified header based on
0f7643c7376dd69a08acbfc9d1d7d548b10c846aGeorge Wilson the directory's mtime, and add the ETag header. [William Rowe]
0f7643c7376dd69a08acbfc9d1d7d548b10c846aGeorge Wilson *) Merge the 1.3 patch to add support for logging query string in
0f7643c7376dd69a08acbfc9d1d7d548b10c846aGeorge Wilson such a way that "%m %U%q %H" is the same as "%r".
0f7643c7376dd69a08acbfc9d1d7d548b10c846aGeorge Wilson [Bill Stoddard]
0f7643c7376dd69a08acbfc9d1d7d548b10c846aGeorge Wilson *) Port three log methods from mod_log_config 1.3 to 2.0:
0f7643c7376dd69a08acbfc9d1d7d548b10c846aGeorge Wilson CLF compliant '-' byte count, method and protocol.
0f7643c7376dd69a08acbfc9d1d7d548b10c846aGeorge Wilson [Bill Stoddard]
0f7643c7376dd69a08acbfc9d1d7d548b10c846aGeorge Wilson *) Add a new LogFormat directive, %c, that will log connection
0f7643c7376dd69a08acbfc9d1d7d548b10c846aGeorge Wilson status at the end of the response as follows:
0f7643c7376dd69a08acbfc9d1d7d548b10c846aGeorge Wilson 'X' - connection aborted before the response completed.
44cd46cadd9aab751dae6a4023c1cb5bf316d274billm '+' - connection may be kept-alive by the server.
8363e80ae72609660f6090766ca8c2c18aa53f0cGeorge Wilson '-' - connection will be closed by the server.
8363e80ae72609660f6090766ca8c2c18aa53f0cGeorge Wilson [Bill Stoddard]
8363e80ae72609660f6090766ca8c2c18aa53f0cGeorge Wilson *) Expand APR for WinNT to fully accept and return utf-8 encoded
8363e80ae72609660f6090766ca8c2c18aa53f0cGeorge Wilson Unicode file names and paths for Win32, and tag the Content-Type
8363e80ae72609660f6090766ca8c2c18aa53f0cGeorge Wilson from mod_autoindex to reflect that charset if the the feature
8363e80ae72609660f6090766ca8c2c18aa53f0cGeorge Wilson macro APR_HAS_UNICODE_FS is true. [William Rowe]
8363e80ae72609660f6090766ca8c2c18aa53f0cGeorge Wilson *) Compute the content length (and add appropriate header field) for
8363e80ae72609660f6090766ca8c2c18aa53f0cGeorge Wilson the response when no content length is available and we can't use
8363e80ae72609660f6090766ca8c2c18aa53f0cGeorge Wilson chunked encoding. [Jeff Trawick]
8363e80ae72609660f6090766ca8c2c18aa53f0cGeorge Wilson *) Changed ap_discard_request_body() to use REQUEST_CHUNKED_DECHUNK,
8363e80ae72609660f6090766ca8c2c18aa53f0cGeorge Wilson so that content input filters get dechunked data when using
8363e80ae72609660f6090766ca8c2c18aa53f0cGeorge Wilson the default handler. Also removed REQUEST_CHUNKED_PASS.
8363e80ae72609660f6090766ca8c2c18aa53f0cGeorge Wilson [Sascha Schumann]
8363e80ae72609660f6090766ca8c2c18aa53f0cGeorge Wilson *) Add mod_ext_filter as an experimental module. This module allows
8363e80ae72609660f6090766ca8c2c18aa53f0cGeorge Wilson the administrator to use external programs as filters. Currently,
8363e80ae72609660f6090766ca8c2c18aa53f0cGeorge Wilson only filtering of output is supported. [Jeff Trawick]
8363e80ae72609660f6090766ca8c2c18aa53f0cGeorge Wilson *) Most Apache functions work on EBCDIC machines again, as protocol
8363e80ae72609660f6090766ca8c2c18aa53f0cGeorge Wilson data is now translated (again). [Jeff Trawick]
8363e80ae72609660f6090766ca8c2c18aa53f0cGeorge Wilson *) Introduce ap_xlate_proto_{to|from}_ascii() to clean up some of
8363e80ae72609660f6090766ca8c2c18aa53f0cGeorge Wilson the EBCDIC support. They are noops on ASCII machines, so this
8363e80ae72609660f6090766ca8c2c18aa53f0cGeorge Wilson type of translation doesn't have to be surrounded by #ifdef
8363e80ae72609660f6090766ca8c2c18aa53f0cGeorge Wilson CHARSET_EBCDIC. [Jeff Trawick]
8363e80ae72609660f6090766ca8c2c18aa53f0cGeorge Wilson *) Fix mod_include. tag commands work again, and the server will
8363e80ae72609660f6090766ca8c2c18aa53f0cGeorge Wilson send the FAQ again. This also allows mod_include to set aside
8363e80ae72609660f6090766ca8c2c18aa53f0cGeorge Wilson buckets that include partial buckets.
8363e80ae72609660f6090766ca8c2c18aa53f0cGeorge Wilson [Ryan Bloom and David Reid]
8363e80ae72609660f6090766ca8c2c18aa53f0cGeorge Wilson *) Add suexec support back. [Manoj Kasichainula]
8363e80ae72609660f6090766ca8c2c18aa53f0cGeorge Wilson *) Lingering close now uses the socket directly instead of using
8363e80ae72609660f6090766ca8c2c18aa53f0cGeorge Wilson BUFF. This has been tested, but since all we can tell is that it
8363e80ae72609660f6090766ca8c2c18aa53f0cGeorge Wilson doesn't fail, this needs to be really hacked on.
fa9e4066f08beec538e775443c5be79dd423fcabahrens [Ryan Bloom]
ecc2d604e885a75cc75e647b5641af99d5a6f4a6bonwick *) Allow filters to modify headers and have those headers be sent to
44cd46cadd9aab751dae6a4023c1cb5bf316d274billm the client. The idea is that we have an http_header filter that
44cd46cadd9aab751dae6a4023c1cb5bf316d274billm actually sends the headers to the network. This removes the need
44cd46cadd9aab751dae6a4023c1cb5bf316d274billm for the BUFF to send headers.
44cd46cadd9aab751dae6a4023c1cb5bf316d274billm [Ryan Bloom]
d6e555bdd793b8bc8fe57d5f12c3d69c813d0661George Wilson *) Charset translation: mod_charset_lite handles translation of
d6e555bdd793b8bc8fe57d5f12c3d69c813d0661George Wilson request bodies. Get rid of the xlate version of ap_md5_digest()
44cd46cadd9aab751dae6a4023c1cb5bf316d274billm since we don't compute digests of filtered (e.g., translated)
d6e555bdd793b8bc8fe57d5f12c3d69c813d0661George Wilson response bodies this way anymore. (Note that we don't do it at
d6e555bdd793b8bc8fe57d5f12c3d69c813d0661George Wilson all at the present; somebody needs to write a filter to do so.)
d6e555bdd793b8bc8fe57d5f12c3d69c813d0661George Wilson [Jeff Trawick]
8363e80ae72609660f6090766ca8c2c18aa53f0cGeorge Wilson *) Input filters and ap_get_brigade() now have a input mode parameter
8363e80ae72609660f6090766ca8c2c18aa53f0cGeorge Wilson (blocking, non-blocking, peek) instead of a length parameter.
d6e555bdd793b8bc8fe57d5f12c3d69c813d0661George Wilson *) Update the mime.types file to the registered media types as
8363e80ae72609660f6090766ca8c2c18aa53f0cGeorge Wilson of 2000-10-19. PR#6613 [Carsten Klapp <carsten.klapp@home.net>,
ecc2d604e885a75cc75e647b5641af99d5a6f4a6bonwick *) Namespace protect some macros declared in ap_config.h
8363e80ae72609660f6090766ca8c2c18aa53f0cGeorge Wilson *) Support HTTP header line folding with input filtering.
8363e80ae72609660f6090766ca8c2c18aa53f0cGeorge Wilson *) Mod_include works again. This should still be re-written, but at
8363e80ae72609660f6090766ca8c2c18aa53f0cGeorge Wilson least now we can serve an SHTML page again.
8363e80ae72609660f6090766ca8c2c18aa53f0cGeorge Wilson *) Begin to remove BUFF from the core. Currently, we keep a pointer
8363e80ae72609660f6090766ca8c2c18aa53f0cGeorge Wilson to both the BUFF and the socket in the conn_rec. Functions that
8363e80ae72609660f6090766ca8c2c18aa53f0cGeorge Wilson want to use the BUFF can, functions that want to use the socket,
8363e80ae72609660f6090766ca8c2c18aa53f0cGeorge Wilson can. They point to the same place.
8363e80ae72609660f6090766ca8c2c18aa53f0cGeorge Wilson *) apr_psprintf doesn't understand %lld as a format. Make it %ld.
8363e80ae72609660f6090766ca8c2c18aa53f0cGeorge Wilson [Tomas "�gren" <stric@ing.umu.se>]
8363e80ae72609660f6090766ca8c2c18aa53f0cGeorge Wilson *) APR pipes on Unix and Win32 are now cleaned up automatically when the
8363e80ae72609660f6090766ca8c2c18aa53f0cGeorge Wilson associated pool goes away. (APR pipes on OS/2 were already had this
8363e80ae72609660f6090766ca8c2c18aa53f0cGeorge Wilson logic.) This resolvs a fatal file descriptor leak with CGIs.
8363e80ae72609660f6090766ca8c2c18aa53f0cGeorge Wilson [Jeff Trawick]
8363e80ae72609660f6090766ca8c2c18aa53f0cGeorge Wilson *) The final line of the config file was not being read if there was
44cd46cadd9aab751dae6a4023c1cb5bf316d274billm no \n at the end of it. This was caused by apr_fgets returning
03f8c366886542ed249a15d755ae78ea4e775d9dGeorge Wilson APR_EOF even though we had read valid data. This is solved by
03f8c366886542ed249a15d755ae78ea4e775d9dGeorge Wilson making cfg_getline check the buff that was returned from apr_fgets.
03f8c366886542ed249a15d755ae78ea4e775d9dGeorge Wilson If apr_fgets return APR_EOF, but there was data in the buf, then we
03f8c366886542ed249a15d755ae78ea4e775d9dGeorge Wilson return the buf, otherwise we return NULL.
03f8c366886542ed249a15d755ae78ea4e775d9dGeorge Wilson *) Piped logs work again in the 2.0 series.
44cd46cadd9aab751dae6a4023c1cb5bf316d274billm *) Restore functionality broken by the mod_rewrite security fix:
44cd46cadd9aab751dae6a4023c1cb5bf316d274billm rewrite map lookup keys and default values are now expanded
44cd46cadd9aab751dae6a4023c1cb5bf316d274billm so that the lookup can depend on the requested URI etc.
0713e232b7712cd27d99e1e935ebb8d5de61c57dGeorge Wilson PR #6671 [Tony Finch]
44cd46cadd9aab751dae6a4023c1cb5bf316d274billm *) Tighten up the syntax checking of Host: headers to fix a
8363e80ae72609660f6090766ca8c2c18aa53f0cGeorge Wilson security bug in some mass virtual hosting configurations
44cd46cadd9aab751dae6a4023c1cb5bf316d274billm that can allow a remote attacker to retrieve some files
44cd46cadd9aab751dae6a4023c1cb5bf316d274billm on the system that should be inaccessible. [Tony Finch]
8363e80ae72609660f6090766ca8c2c18aa53f0cGeorge Wilson *) Add a pool bucket type. This bucket is used for data allocated out
44cd46cadd9aab751dae6a4023c1cb5bf316d274billm of a pool. If the pool is cleaned before the bucket is destroyed, then
44cd46cadd9aab751dae6a4023c1cb5bf316d274billm the data is converted to a heap bucket, allowing it to survive the
ecc2d604e885a75cc75e647b5641af99d5a6f4a6bonwick death of the pool.
ecc2d604e885a75cc75e647b5641af99d5a6f4a6bonwick [Ryan Bloom]
8363e80ae72609660f6090766ca8c2c18aa53f0cGeorge Wilson *) Add a flush bucket. This allows modules to signal that the filters
44cd46cadd9aab751dae6a4023c1cb5bf316d274billm should all flush whatever data they currently have. There is no way
8363e80ae72609660f6090766ca8c2c18aa53f0cGeorge Wilson to actually force them to do this, so if a filter ignores this bucket,
8363e80ae72609660f6090766ca8c2c18aa53f0cGeorge Wilson that's life, but at least we can try with this.
22e30981d82a0b6dc89253596ededafae8655e00George Wilson *) Add an output filter for sub-requests. This filter just strips the
22e30981d82a0b6dc89253596ededafae8655e00George Wilson EOS bucket so that we don't confuse the main request's core output
aeb1c1b609b02f03e8e7448beb88384ebc713525gw filter by sending multiple EOS buckets. This change also makes sub
aeb1c1b609b02f03e8e7448beb88384ebc713525gw requests start to send EOS buckets when they are finished.
aeb1c1b609b02f03e8e7448beb88384ebc713525gw [Ryan Bloom]
8363e80ae72609660f6090766ca8c2c18aa53f0cGeorge Wilson *) Make ap_bucket_(read|destroy|split|setaside) into macros. Also
8363e80ae72609660f6090766ca8c2c18aa53f0cGeorge Wilson makes ap_bucket_destroy a return void, which is okay because it
8363e80ae72609660f6090766ca8c2c18aa53f0cGeorge Wilson used to always return APR_SUCCESS, and nobody ever checked its
aeb1c1b609b02f03e8e7448beb88384ebc713525gw return value anyway.
8363e80ae72609660f6090766ca8c2c18aa53f0cGeorge Wilson [Cliff Woolley <cliffwoolley@yahoo.com>]
aeb1c1b609b02f03e8e7448beb88384ebc713525gw *) Remove the index into the bucket-type table from the buckets
aeb1c1b609b02f03e8e7448beb88384ebc713525gw structure. This has now been replaced with a pointer to the
aeb1c1b609b02f03e8e7448beb88384ebc713525gw bucket_type. Also add some macros to test the bucket-type.
44cd46cadd9aab751dae6a4023c1cb5bf316d274billm [Ryan Bloom]
44cd46cadd9aab751dae6a4023c1cb5bf316d274billm *) Renamed all MODULE_EXPORT symbols to AP_MODULE_DECLARE and all symbols
5f5f7a6f9c8e9c1587a54e690556d756ec67558cahrens for CORE_EXPORT to AP_CORE_DECLARE (namespace protecting the wrapper)
44cd46cadd9aab751dae6a4023c1cb5bf316d274billm and retitled API_EXPORT as AP_DECLARE and APR_EXPORT as APR_DECLARE.
44cd46cadd9aab751dae6a4023c1cb5bf316d274billm All _VAR_ flavors changes to _DATA to be absolutely clear.
44cd46cadd9aab751dae6a4023c1cb5bf316d274billm [William Rowe]
09c9d376e8ccb8fbba74f33cc268964464092b62George Wilson *) Add support for /, //, //servername and //server/sharename
fa9e4066f08beec538e775443c5be79dd423fcabahrens parsing of <Directory> blocks under Win32 and OS2.
fa9e4066f08beec538e775443c5be79dd423fcabahrens [Tim Costello, William Rowe, Brian Harvard]
8363e80ae72609660f6090766ca8c2c18aa53f0cGeorge Wilson *) Remove the function pointers from the ap_bucket type. They have been
8363e80ae72609660f6090766ca8c2c18aa53f0cGeorge Wilson replaced with a global table. Modules are allowed to register bucket
8363e80ae72609660f6090766ca8c2c18aa53f0cGeorge Wilson types and use then use those buckets.
8363e80ae72609660f6090766ca8c2c18aa53f0cGeorge Wilson *) mod_cgid: In the handler, shut down the Unix socket (only for write)
8363e80ae72609660f6090766ca8c2c18aa53f0cGeorge Wilson once we finish writing the request body to the cgi child process;
8363e80ae72609660f6090766ca8c2c18aa53f0cGeorge Wilson otherwise, the client doesn't hit EOF on stdin. Small request bodies
8363e80ae72609660f6090766ca8c2c18aa53f0cGeorge Wilson worked without this change (for reasons I don't understand), but large
8363e80ae72609660f6090766ca8c2c18aa53f0cGeorge Wilson ones didn't. [Jeff Trawick]
8363e80ae72609660f6090766ca8c2c18aa53f0cGeorge Wilson *) Remove file bucket specific information from the ap_bucket type.
8363e80ae72609660f6090766ca8c2c18aa53f0cGeorge Wilson This has been moved to a file_bucket specific type that hangs off
8363e80ae72609660f6090766ca8c2c18aa53f0cGeorge Wilson the data pointer in the ap_bucket type.
03f8c366886542ed249a15d755ae78ea4e775d9dGeorge Wilson *) Input filtering now has a third argument. This is the amount of data
03f8c366886542ed249a15d755ae78ea4e775d9dGeorge Wilson to read from lower filters. This argument can be -1, 0, or a positive
03f8c366886542ed249a15d755ae78ea4e775d9dGeorge Wilson number. -1 means give me all the data you have, I'll deal with it and
03f8c366886542ed249a15d755ae78ea4e775d9dGeorge Wilson let you know if I need more. 0 means give me one line and one line
03f8c366886542ed249a15d755ae78ea4e775d9dGeorge Wilson only. A positive number means I want no more than this much data.
8363e80ae72609660f6090766ca8c2c18aa53f0cGeorge Wilson Currently, only 0 and a positive number are implemented. This allows
8363e80ae72609660f6090766ca8c2c18aa53f0cGeorge Wilson us to remove the remaining field from the conn_rec structure, which
03f8c366886542ed249a15d755ae78ea4e775d9dGeorge Wilson has also been done.
03f8c366886542ed249a15d755ae78ea4e775d9dGeorge Wilson *) Big cleanup of the input filtering. The goal is that http_filter
8363e80ae72609660f6090766ca8c2c18aa53f0cGeorge Wilson understands two conditions, headers and body. It knows where it is
8363e80ae72609660f6090766ca8c2c18aa53f0cGeorge Wilson based on c->remaining. If c->remaining is 0, then we are in headers,
8363e80ae72609660f6090766ca8c2c18aa53f0cGeorge Wilson and http_filter returns a line at a time. If it is not 0, then we are
8363e80ae72609660f6090766ca8c2c18aa53f0cGeorge Wilson in body, and http_filter returns raw data, but only up to c->remaining
8363e80ae72609660f6090766ca8c2c18aa53f0cGeorge Wilson bytes. It can return less, but never more.
8363e80ae72609660f6090766ca8c2c18aa53f0cGeorge Wilson [Greg Ames, Ryan Bloom, Jeff Trawick]
8363e80ae72609660f6090766ca8c2c18aa53f0cGeorge Wilson *) mod_cgi: Write all of the request body to the child, not just what
8363e80ae72609660f6090766ca8c2c18aa53f0cGeorge Wilson the kernel would accept on the first write. [Jeff Trawick]
8363e80ae72609660f6090766ca8c2c18aa53f0cGeorge Wilson *) Back out the change that moved the brigade from the core_output_filters
8363e80ae72609660f6090766ca8c2c18aa53f0cGeorge Wilson ctx to the conn_rec. Since all requests over a given connection
8363e80ae72609660f6090766ca8c2c18aa53f0cGeorge Wilson go through the same core_output_filter, the ctx pointer has the
8363e80ae72609660f6090766ca8c2c18aa53f0cGeorge Wilson correct lifetime.
8363e80ae72609660f6090766ca8c2c18aa53f0cGeorge Wilson *) Fix another bug in the send_the_file() read/write loop. A partial
8363e80ae72609660f6090766ca8c2c18aa53f0cGeorge Wilson send by apr_send would cause unsent data in the read buffer to
8363e80ae72609660f6090766ca8c2c18aa53f0cGeorge Wilson get clobbered. Complete making send_the_file handle partial
8363e80ae72609660f6090766ca8c2c18aa53f0cGeorge Wilson writes to the network.
8363e80ae72609660f6090766ca8c2c18aa53f0cGeorge Wilson [Bill Stoddard]
8363e80ae72609660f6090766ca8c2c18aa53f0cGeorge Wilson *) Fix a couple of type fixes to allow compilation on AIX again
8363e80ae72609660f6090766ca8c2c18aa53f0cGeorge Wilson [Victor J. Orlikowski <v.j.orlikowski@gte.net>]
8363e80ae72609660f6090766ca8c2c18aa53f0cGeorge Wilson *) Fix bug in send_the_file() which causes offset to be ignored
8363e80ae72609660f6090766ca8c2c18aa53f0cGeorge Wilson if there are no headers to send.
8363e80ae72609660f6090766ca8c2c18aa53f0cGeorge Wilson [Bill Stoddard]
8363e80ae72609660f6090766ca8c2c18aa53f0cGeorge Wilson *) Handle APR_ENOTIMPL returned from apr_sendfile in the core
8363e80ae72609660f6090766ca8c2c18aa53f0cGeorge Wilson filter. Useful for supporting Windows 9* with a binary
8363e80ae72609660f6090766ca8c2c18aa53f0cGeorge Wilson compiled on Windows NT.
8363e80ae72609660f6090766ca8c2c18aa53f0cGeorge Wilson [Bill Stoddard]
8363e80ae72609660f6090766ca8c2c18aa53f0cGeorge WilsonChanges with Apache 2.0a7
8363e80ae72609660f6090766ca8c2c18aa53f0cGeorge Wilson *) Reimplement core_output_filter to buffer/save bucket brigades
8363e80ae72609660f6090766ca8c2c18aa53f0cGeorge Wilson across multiple calls to the core_filter. The brigade will be
8363e80ae72609660f6090766ca8c2c18aa53f0cGeorge Wilson sent when either MIN_BYTES_TO_SEND or MAX_IOVEC_TO_WRITE
8363e80ae72609660f6090766ca8c2c18aa53f0cGeorge Wilson thresholds are hit or the EOS bucket is received.
ecc2d604e885a75cc75e647b5641af99d5a6f4a6bonwick [Bill Stoddard]
8363e80ae72609660f6090766ca8c2c18aa53f0cGeorge Wilson *) Create experimental filter (buffer_filter) that coalesces bytes
8363e80ae72609660f6090766ca8c2c18aa53f0cGeorge Wilson into one large buffer before invoking the next filter in the
8363e80ae72609660f6090766ca8c2c18aa53f0cGeorge Wilson chain. This filter is particularly useful with the current
8363e80ae72609660f6090766ca8c2c18aa53f0cGeorge Wilson implementation of mod_autoindex when it inserted above the
8363e80ae72609660f6090766ca8c2c18aa53f0cGeorge Wilson chunk_filter. mod_autoindex generates a lot of brigades that
8363e80ae72609660f6090766ca8c2c18aa53f0cGeorge Wilson containing buckets holding just a few bytes each. The
fa9e4066f08beec538e775443c5be79dd423fcabahrens buffer_filter coalesces these buckets into a single large bucket.
fa9e4066f08beec538e775443c5be79dd423fcabahrens [Bill Stoddard]
8363e80ae72609660f6090766ca8c2c18aa53f0cGeorge Wilson *) Add apr_sendfile() support into the core_output_filter.
8363e80ae72609660f6090766ca8c2c18aa53f0cGeorge Wilson [Bill Stoddard]
fa9e4066f08beec538e775443c5be79dd423fcabahrens *) Add apr_sendv() support into the core_output_filter.
8363e80ae72609660f6090766ca8c2c18aa53f0cGeorge Wilson [Bill Stoddard]
8363e80ae72609660f6090766ca8c2c18aa53f0cGeorge Wilson *) Fix mod_log_config so that it compiles cleanly with BUFFERED_LOGS
8363e80ae72609660f6090766ca8c2c18aa53f0cGeorge Wilson [Mike Abbott <mja@sgi.com>]
8363e80ae72609660f6090766ca8c2c18aa53f0cGeorge Wilson *) Remove ap_send_fb. This is no longer used in Apache, and it doesn't
ecc2d604e885a75cc75e647b5641af99d5a6f4a6bonwick make much sense, because Apache uses buckets instead of BUFFs now.
ecc2d604e885a75cc75e647b5641af99d5a6f4a6bonwick *) send_the_file now falls back to a read/write loop on platforms that
8363e80ae72609660f6090766ca8c2c18aa53f0cGeorge Wilson do not have sendfile.
8363e80ae72609660f6090766ca8c2c18aa53f0cGeorge Wilson [Ryan Bloom and Brian Havard]
8363e80ae72609660f6090766ca8c2c18aa53f0cGeorge Wilson *) Install apachectl correctly, and substitute the proper values so
8363e80ae72609660f6090766ca8c2c18aa53f0cGeorge Wilson that it works again. [Ryan Bloom]
8363e80ae72609660f6090766ca8c2c18aa53f0cGeorge Wilson *) Better(??) handle platforms that lack sendfile().
8363e80ae72609660f6090766ca8c2c18aa53f0cGeorge Wilson [Jim Jagielski]
8363e80ae72609660f6090766ca8c2c18aa53f0cGeorge Wilson *) APR now has UUID generation/formatting/parsing support.
8363e80ae72609660f6090766ca8c2c18aa53f0cGeorge Wilson *) Begin the http_filter. This is an input filter that understands
8363e80ae72609660f6090766ca8c2c18aa53f0cGeorge Wilson the absolute basic amount required to parse an HTTP Request. The
8363e80ae72609660f6090766ca8c2c18aa53f0cGeorge Wilson goal is to be able to split headers from request body before passing
8363e80ae72609660f6090766ca8c2c18aa53f0cGeorge Wilson the data back to the other filters.
8363e80ae72609660f6090766ca8c2c18aa53f0cGeorge Wilson *) Bring forward from 1.3.13 the config directory implementation
8363e80ae72609660f6090766ca8c2c18aa53f0cGeorge Wilson [Jim Jagielski]
8363e80ae72609660f6090766ca8c2c18aa53f0cGeorge Wilson *) install apxs if it is created
44cd46cadd9aab751dae6a4023c1cb5bf316d274billm [Ryan Bloom]
fa9e4066f08beec538e775443c5be79dd423fcabahrens *) Added APR_IS_STATUS_condition test macros to eliminate canonical error
8363e80ae72609660f6090766ca8c2c18aa53f0cGeorge Wilson conversions. [William Rowe]
8363e80ae72609660f6090766ca8c2c18aa53f0cGeorge Wilson *) Now that we have ap_add_input_filter(), rename ap_add_filter() to
8363e80ae72609660f6090766ca8c2c18aa53f0cGeorge Wilson ap_add_output_filter(). [Jeff Trawick]
8363e80ae72609660f6090766ca8c2c18aa53f0cGeorge Wilson *) Multiple build and configuration fixes
8363e80ae72609660f6090766ca8c2c18aa53f0cGeorge Wilson Build process:
fa9e4066f08beec538e775443c5be79dd423fcabahrens -add datadir and localstatedir substitutions
fa9e4066f08beec538e775443c5be79dd423fcabahrens -fix layout name
fa9e4066f08beec538e775443c5be79dd423fcabahrens -fix logfilename misspelling
44cd46cadd9aab751dae6a4023c1cb5bf316d274billm -fix evaluation of installation dir variables and
8654d0253136055bd4cc2423d87378e8a37f2eb5perrin -replace $foobar by $(foobar) to be usefull in the makefile
8363e80ae72609660f6090766ca8c2c18aa53f0cGeorge Wilson Cross compile:
fa9e4066f08beec538e775443c5be79dd423fcabahrens -add rules for cross-compiling in rules.mk. Okay, rule to check for
fa9e4066f08beec538e775443c5be79dd423fcabahrens $CC_FOR_BUILD is still missing
8363e80ae72609660f6090766ca8c2c18aa53f0cGeorge Wilson -use CHECK_TOOL instead of CHECK_PROG for ranlib
fa9e4066f08beec538e775443c5be79dd423fcabahrens -add missing "AR=@AR@" to severaly Makefile.in's
d80c45e0f58fa434ba37259ea2e2b12e0380c19abonwick -cache result for "struct rlimit"
d80c45e0f58fa434ba37259ea2e2b12e0380c19abonwick -compile all helper programs with native and cross compiler
e05725b117836db173257fae43fb0746eb857fb5bonwick and use the native version to generate header file
e05725b117836db173257fae43fb0746eb857fb5bonwick ["R�diger" Kuhlmann <Tadu@gmx.de>]
8363e80ae72609660f6090766ca8c2c18aa53f0cGeorge Wilson *) Prepare our autoconf setup for autoconf 2.14a and for cross-
be6fd75a69ae679453d9cda5bff3326111e6d1caMatthew Ahrens ["R�diger" Kuhlmann <Tadu@gmx.de>]
e05725b117836db173257fae43fb0746eb857fb5bonwick *) Fix a bug where a client which only sends \n to delimit header
fa9e4066f08beec538e775443c5be79dd423fcabahrens lines (netcat) gets a strange looking HTTP_NOT_IMPLEMENTED
fa9e4066f08beec538e775443c5be79dd423fcabahrens message. Start working on ebcdic co-existance with input
fa9e4066f08beec538e775443c5be79dd423fcabahrens [William Rowe, Greg Ames]
44cd46cadd9aab751dae6a4023c1cb5bf316d274billm *) If mod_so is enabled in the server always create libexec, even
67bd71c6cc629bab3aa0d595c624a667f1574254perrin if there are no modules installed in this directory. This is a
67bd71c6cc629bab3aa0d595c624a667f1574254perrin requirement for APXS to work correctly.
67bd71c6cc629bab3aa0d595c624a667f1574254perrin [Ryan Bloom]
44cd46cadd9aab751dae6a4023c1cb5bf316d274billm *) Connection oriented output filters are now stored in the
44cd46cadd9aab751dae6a4023c1cb5bf316d274billm conn_rec instead of the request_rec. This allows us to add the
44cd46cadd9aab751dae6a4023c1cb5bf316d274billm output filter in the pre-connection phase instead of the
44cd46cadd9aab751dae6a4023c1cb5bf316d274billm post_read_request phase, which keeps us from trying to write an
44cd46cadd9aab751dae6a4023c1cb5bf316d274billm error page before we have a filter to write to the network.
44cd46cadd9aab751dae6a4023c1cb5bf316d274billm [Ryan Bloom, Jeff Trawick, and Greg Ames]
44cd46cadd9aab751dae6a4023c1cb5bf316d274billm *) Cleaning up an mmap bucket no longer deletes the mmap. An
44cd46cadd9aab751dae6a4023c1cb5bf316d274billm mmap can be used across multiple buckets (default_handler with
44cd46cadd9aab751dae6a4023c1cb5bf316d274billm byte ranges, mod_file_cache, mod_mmap_static), so cleanup of
44cd46cadd9aab751dae6a4023c1cb5bf316d274billm the mmap itself can't be associated with the bucket.
fa9e4066f08beec538e775443c5be79dd423fcabahrens [Jeff Trawick]
44cd46cadd9aab751dae6a4023c1cb5bf316d274billm *) Add .dll caching directive ISAPICacheFile to mod_isapi.
88ecc943b4eb72f7c4fbbd8435997b85ef171fc3George Wilson [William Rowe]
88ecc943b4eb72f7c4fbbd8435997b85ef171fc3George Wilson *) Radical surgery to improve mod_isapi support under Win32.
88ecc943b4eb72f7c4fbbd8435997b85ef171fc3George Wilson Includes a number of newer ServerSupportFunction calls, support
88ecc943b4eb72f7c4fbbd8435997b85ef171fc3George Wilson for ReadClient (in order to retrieve POSTs greater than 48KB),
88ecc943b4eb72f7c4fbbd8435997b85ef171fc3George Wilson and general bug fixes to more reliably load ISAPI .dll's and
a15215608b8bd90f714f6db21ee623b584607cb6Jeff Bonwick prevent leaking handle resources. Note: There are still
67bd71c6cc629bab3aa0d595c624a667f1574254perrin discrepancies between IIS's and Apache's ServerVariables, and
88ecc943b4eb72f7c4fbbd8435997b85ef171fc3George Wilson async calls are still not supported. Additional warnings are
88ecc943b4eb72f7c4fbbd8435997b85ef171fc3George Wilson logged to facilitate debugging of unsupported ISAPI calls.
88ecc943b4eb72f7c4fbbd8435997b85ef171fc3George Wilson [William Rowe]
88ecc943b4eb72f7c4fbbd8435997b85ef171fc3George Wilson *) Add input filtering to Apache. The basic idea for the input
88ecc943b4eb72f7c4fbbd8435997b85ef171fc3George Wilson filters is the same as the ideas for output filters. The biggest
88ecc943b4eb72f7c4fbbd8435997b85ef171fc3George Wilson difference is that instead of calling ap_pass_brigade, ap_get_brigade
44cd46cadd9aab751dae6a4023c1cb5bf316d274billm should be called, and the order of execution for the filter itself is
44cd46cadd9aab751dae6a4023c1cb5bf316d274billm different. When writing an output filter, a brigade is passed in,
44cd46cadd9aab751dae6a4023c1cb5bf316d274billm and filters operate directly on that brigade, when done, they call
44cd46cadd9aab751dae6a4023c1cb5bf316d274billm ap_pass_brigade. Input filters are the exact opposite. Because input
44cd46cadd9aab751dae6a4023c1cb5bf316d274billm is not a push operation, filters first call ap_get_brigade. When this
44cd46cadd9aab751dae6a4023c1cb5bf316d274billm function returns, the input filter will be left with a valid brigade.
44cd46cadd9aab751dae6a4023c1cb5bf316d274billm The input filter should then operate on the brigade, and return.
8654d0253136055bd4cc2423d87378e8a37f2eb5perrin [Ryan Bloom]
a15215608b8bd90f714f6db21ee623b584607cb6Jeff Bonwick *) Fix building on BSD/OS using its native make. The build system
8654d0253136055bd4cc2423d87378e8a37f2eb5perrin falls back to the BSD .include directive on that host platform.
a15215608b8bd90f714f6db21ee623b584607cb6Jeff Bonwick [Sascha Schumann]
8654d0253136055bd4cc2423d87378e8a37f2eb5perrin *) Expand dbmmanage to allow -d -m -s -p options for Crypt, MD5,
8654d0253136055bd4cc2423d87378e8a37f2eb5perrin SHA1 and plaintext password encodings. Make feature tests a
44cd46cadd9aab751dae6a4023c1cb5bf316d274billm bit more flexible. [William Rowe]
8363e80ae72609660f6090766ca8c2c18aa53f0cGeorge Wilson *) Charset translation: mod_charset_lite handles output content
8363e80ae72609660f6090766ca8c2c18aa53f0cGeorge Wilson translation in a filter. mod_charset_lite no longer ignores
a15215608b8bd90f714f6db21ee623b584607cb6Jeff Bonwick subrequests. A bunch of cruft related to BUFF's support for
fa9e4066f08beec538e775443c5be79dd423fcabahrens translating request and response bodies was removed.
8ad4d6dd86f5bc65fb3afa566c8133f3bac21648Jeff Bonwick [Jeff Trawick]
e14bb3258d05c1b1077e2db7cf77088924e56919Jeff Bonwick *) Move the addition of the CORE filter to the post_read_request
0a4e9518a44f226be6d39383330b5b1792d2f184gw hook in http_core.c. This removes the need to add the filter in
8363e80ae72609660f6090766ca8c2c18aa53f0cGeorge Wilson multiple places and allows for an SSL module to be added much
8ad4d6dd86f5bc65fb3afa566c8133f3bac21648Jeff Bonwick simpler. [Ryan Bloom]
8ad4d6dd86f5bc65fb3afa566c8133f3bac21648Jeff Bonwick *) Fix a security problem that affects certain configurations of
8ad4d6dd86f5bc65fb3afa566c8133f3bac21648Jeff Bonwick mod_rewrite. If the result of a RewriteRule is a filename that
8ad4d6dd86f5bc65fb3afa566c8133f3bac21648Jeff Bonwick contains expansion specifiers, especially regexp backreferences
8ad4d6dd86f5bc65fb3afa566c8133f3bac21648Jeff Bonwick $0..$9 and %0..%9, then it may be possible for an attacker to
22e30981d82a0b6dc89253596ededafae8655e00George Wilson access any file on the web server. [Tony Finch]
22e30981d82a0b6dc89253596ededafae8655e00George Wilson *) Fix a bug where errors that are detected during early request parsing
0f7643c7376dd69a08acbfc9d1d7d548b10c846aGeorge Wilson don't produce visible HTTP error messages at the browser, because
0f7643c7376dd69a08acbfc9d1d7d548b10c846aGeorge Wilson the core_filter wasn't present. [Greg Ames]
22e30981d82a0b6dc89253596ededafae8655e00George Wilson *) Provide apr_socklen_t as a portability aid.
22e30981d82a0b6dc89253596ededafae8655e00George Wilson [Victor J. Orlikowski]
0f7643c7376dd69a08acbfc9d1d7d548b10c846aGeorge Wilson *) Overhaul of dbmmanage to allow a groups arg (as in Apache 1.2)
0f7643c7376dd69a08acbfc9d1d7d548b10c846aGeorge Wilson as well as a comment arg to the add, adduser and update cmds.
0f7643c7376dd69a08acbfc9d1d7d548b10c846aGeorge Wilson update allows the user to clear or preserve pw/groups/comment.
22e30981d82a0b6dc89253596ededafae8655e00George Wilson Fixed a bug in dbmmanage that prevented the check option from
8363e80ae72609660f6090766ca8c2c18aa53f0cGeorge Wilson parsing a password followed by :group... text. Corrected the
8363e80ae72609660f6090766ca8c2c18aa53f0cGeorge Wilson seed calcualation for Win32 systems, and added -lsdbm support.
8363e80ae72609660f6090766ca8c2c18aa53f0cGeorge Wilson [William Rowe]
8363e80ae72609660f6090766ca8c2c18aa53f0cGeorge Wilson *) Configured mod_auth_dbm to compile with sdbmlib under Win32.
8ad4d6dd86f5bc65fb3afa566c8133f3bac21648Jeff Bonwick [William Rowe]
0f7643c7376dd69a08acbfc9d1d7d548b10c846aGeorge Wilson *) Avoid a segfault when parsing .htaccess files. An
0a4e9518a44f226be6d39383330b5b1792d2f184gw uninitialized tree pointer was passed to ap_build_config().
8363e80ae72609660f6090766ca8c2c18aa53f0cGeorge Wilson [Jeff Trawick]
8363e80ae72609660f6090766ca8c2c18aa53f0cGeorge Wilson *) Change the way that inet_addr & inet_network are checked for
0a4e9518a44f226be6d39383330b5b1792d2f184gw in APR's configure process to allow BeOS BONE to correctly
0a4e9518a44f226be6d39383330b5b1792d2f184gw find them. With this change BeOS BONE now builds from source
0a4e9518a44f226be6d39383330b5b1792d2f184gw with no problems. [David Reid]
8363e80ae72609660f6090766ca8c2c18aa53f0cGeorge Wilson *) Fix a bug in apr_create_process() for Unix. The NULL signifying
8363e80ae72609660f6090766ca8c2c18aa53f0cGeorge Wilson the end of the parameters to execve() was stored in the wrong
0a4e9518a44f226be6d39383330b5b1792d2f184gw location, overlaying the storage beyond the newargs[] array and
0a4e9518a44f226be6d39383330b5b1792d2f184gw also passing uninitialized storage to execve(), which would
44cd46cadd9aab751dae6a4023c1cb5bf316d274billm sometimes fail with EFAULT. [Jeff Trawick]
8654d0253136055bd4cc2423d87378e8a37f2eb5perrin *) Fix a bug parsing configuration file containers. With a sequence
8363e80ae72609660f6090766ca8c2c18aa53f0cGeorge Wilson like this in the config file
8363e80ae72609660f6090766ca8c2c18aa53f0cGeorge Wilson the second container would be terminated at the blank line due to
8363e80ae72609660f6090766ca8c2c18aa53f0cGeorge Wilson sediment in the buffer from reading the prior </IfModule> and an
8363e80ae72609660f6090766ca8c2c18aa53f0cGeorge Wilson error message would be generated for the real </IfModule> for the
44cd46cadd9aab751dae6a4023c1cb5bf316d274billm second container. Also due to this problem, any two characters
8363e80ae72609660f6090766ca8c2c18aa53f0cGeorge Wilson could be used for "</" in the close of a container.
fa9e4066f08beec538e775443c5be79dd423fcabahrens [Jeff Trawick]
8363e80ae72609660f6090766ca8c2c18aa53f0cGeorge Wilson *) ap_add_filter prototype changed to remove the ctx pointer. The
0f7643c7376dd69a08acbfc9d1d7d548b10c846aGeorge Wilson pointer still remains in the filter structure, but it can not be
0f7643c7376dd69a08acbfc9d1d7d548b10c846aGeorge Wilson a part of the ap_add_filter prototype. The reason is that when
44cd46cadd9aab751dae6a4023c1cb5bf316d274billm the core uses AddFilter to add a filter to the stack it doesn't
fa9e4066f08beec538e775443c5be79dd423fcabahrens know how to allocate the ctx pointer, or even how much memory should
fa9e4066f08beec538e775443c5be79dd423fcabahrens be allocated. The filters will have to be responsible for allocating
fa9e4066f08beec538e775443c5be79dd423fcabahrens the ctx memory when they need it.
fa9e4066f08beec538e775443c5be79dd423fcabahrens [Ryan Bloom]
fa9e4066f08beec538e775443c5be79dd423fcabahrens *) Add an AddFilter directive. This directive takes a list of filters
2e4c998613148111f2fc5371085331ffb39122ffGeorge Wilson that should be activated for the requested resource.
fa9e4066f08beec538e775443c5be79dd423fcabahrens [Ryan Bloom]
fa9e4066f08beec538e775443c5be79dd423fcabahrens *) apr_snprintf(): Get quad format strings working on OS/390 (and perhaps
09c9d376e8ccb8fbba74f33cc268964464092b62George Wilson some other platforms). [Jeff Trawick]
fa9e4066f08beec538e775443c5be79dd423fcabahrens *) Modify mod_include to be a filter. Currently, it has only been tested
fa9e4066f08beec538e775443c5be79dd423fcabahrens on actual files, but it should work for CGI scripts too.
09c9d376e8ccb8fbba74f33cc268964464092b62George Wilson *) apr_putc(), apr_puts() for Unix: handle buffered files and interrupted
09c9d376e8ccb8fbba74f33cc268964464092b62George Wilson writes. apr_flush() for Unix: handle interrupted writes.
09c9d376e8ccb8fbba74f33cc268964464092b62George Wilson [Jeff Trawick]
09c9d376e8ccb8fbba74f33cc268964464092b62George Wilson *) NameVirtualHost can now take "*" as an argument instead of
09c9d376e8ccb8fbba74f33cc268964464092b62George Wilson an IP address. This allows you to create a purely name-based
09c9d376e8ccb8fbba74f33cc268964464092b62George Wilson virtual hosting server that does not have any IP addresses in
09c9d376e8ccb8fbba74f33cc268964464092b62George Wilson the configuration file and which ignores the local address
09c9d376e8ccb8fbba74f33cc268964464092b62George Wilson of any connections. PR #5595, PR #4455 [Tony Finch]
b24ab6762772a3f6a89393947930c7fa61306783Jeff Bonwick *) Fix some compile warnings in mod_mmap_static.c
09c9d376e8ccb8fbba74f33cc268964464092b62George Wilson [Mike Abbott <mja@sgi.com>]
2e4c998613148111f2fc5371085331ffb39122ffGeorge Wilson *) Fix chunking problem with CGI scripts. The general problem was that
fa9e4066f08beec538e775443c5be79dd423fcabahrens the CGI modules were adding an EOS bucket and then the core added an
fa9e4066f08beec538e775443c5be79dd423fcabahrens EOS bucket. The chunking filter finalizes the chunked response when it
b24ab6762772a3f6a89393947930c7fa61306783Jeff Bonwick encounters an EOS bucket. Because two EOS buckets were sent, we
fa9e4066f08beec538e775443c5be79dd423fcabahrens finalized the response twice. The fix is to make sure we only send one
fa9e4066f08beec538e775443c5be79dd423fcabahrens EOS, by utilizing a flag in the request_rec.
b24ab6762772a3f6a89393947930c7fa61306783Jeff Bonwick [Ryan Bloom]
fa9e4066f08beec538e775443c5be79dd423fcabahrens *) apr_put_os_file() now sets up the unget byte appropriately on Unix
44cd46cadd9aab751dae6a4023c1cb5bf316d274billm and Win32. Previously, the first read from an apr_file_t set up via
44cd46cadd9aab751dae6a4023c1cb5bf316d274billm apr_put_os_file() would return a '\0'. [Jeff Trawick]
44cd46cadd9aab751dae6a4023c1cb5bf316d274billm *) Mod_cgid now creates a single element bucket brigade, with a pipe
fa9e4066f08beec538e775443c5be79dd423fcabahrens bucket, instead of using BUFF's and ap_r*.
fa9e4066f08beec538e775443c5be79dd423fcabahrens [Ryan Bloom]
0a4e9518a44f226be6d39383330b5b1792d2f184gw *) APRVARS.in no longer overwrites the EXTRA_LIBS variable.
fa9e4066f08beec538e775443c5be79dd423fcabahrens [Mike Abbott <mja@sgi.com>]
fa9e4066f08beec538e775443c5be79dd423fcabahrens *) Remove ap_bopenf from buff code. This required modifying the file_cache
fa9e4066f08beec538e775443c5be79dd423fcabahrens code to use APR file's directly instead of going through BUFFs.
8363e80ae72609660f6090766ca8c2c18aa53f0cGeorge Wilson *) Fix compile break on some platforms for mod_mime_magic.c
8363e80ae72609660f6090766ca8c2c18aa53f0cGeorge Wilson [John K. Sterling <sterling@covalent.net>]
8ad4d6dd86f5bc65fb3afa566c8133f3bac21648Jeff Bonwick *) Fix merging of AddDefaultCharset directive.
8ad4d6dd86f5bc65fb3afa566c8133f3bac21648Jeff Bonwick PR #5872 (1.3) [Jun Kuriyama <kuriyama@imgsrc.co.jp>]
44cd46cadd9aab751dae6a4023c1cb5bf316d274billm *) Minor revamp of the rlimit sections of code. We now test
fa9e4066f08beec538e775443c5be79dd423fcabahrens explicitly for setrlimit and getrlimit. Also, unixd_set_rlimit()
8363e80ae72609660f6090766ca8c2c18aa53f0cGeorge Wilson is now "available" even if the platform doesn't support
be6fd75a69ae679453d9cda5bff3326111e6d1caMatthew Ahrens the rlimit family (it's just a noop though). [Jim Jagielski]
fa9e4066f08beec538e775443c5be79dd423fcabahrens *) Migrate the pre-selection of which MPM to use for specific
fa9e4066f08beec538e775443c5be79dd423fcabahrens platforms to hints.m4, which contains (or should contain)
fa9e4066f08beec538e775443c5be79dd423fcabahrens all platform specific "hints". [Jim Jagielski]
fa9e4066f08beec538e775443c5be79dd423fcabahrens *) Remove IOLs from Apache. With filtering, IOLs are no longer necessary
d80c45e0f58fa434ba37259ea2e2b12e0380c19abonwick [Ryan Bloom]
fa9e4066f08beec538e775443c5be79dd423fcabahrens *) Add tables with non-string/binary values to APR.
fa9e4066f08beec538e775443c5be79dd423fcabahrens *) Fix some bad calls to ap_log_rerror() in mod_rewrite.
fa9e4066f08beec538e775443c5be79dd423fcabahrens [Jeff Trawick]
fa9e4066f08beec538e775443c5be79dd423fcabahrens *) Update PCRE to version 3.2. [Ryan Bloom]
d80c45e0f58fa434ba37259ea2e2b12e0380c19abonwick *) Change the way buckets' destroy functions are called so that
fa9e4066f08beec538e775443c5be79dd423fcabahrens they can be more directly used when changing the type of a
fa9e4066f08beec538e775443c5be79dd423fcabahrens bucket in place. [Tony Finch]
d80c45e0f58fa434ba37259ea2e2b12e0380c19abonwick *) Add generic support for reference-counting the resources used by
d80c45e0f58fa434ba37259ea2e2b12e0380c19abonwick buckets, and alter the HEAP and MMAP buckets to use it. Change
d80c45e0f58fa434ba37259ea2e2b12e0380c19abonwick the way buckets are initialised to support changing the type of
d80c45e0f58fa434ba37259ea2e2b12e0380c19abonwick buckets in place, and use it when setting aside TRANSIENT buckets.
fa9e4066f08beec538e775443c5be79dd423fcabahrens Change the implementation of TRANSIENT buckets so that it can be
fa9e4066f08beec538e775443c5be79dd423fcabahrens mostly shared with IMMORTAL buckets, which are now implemented.
fa9e4066f08beec538e775443c5be79dd423fcabahrens [Tony Finch]
fa9e4066f08beec538e775443c5be79dd423fcabahrensChanges with Apache 2.0a6
fa9e4066f08beec538e775443c5be79dd423fcabahrens *) Add support to Apache and APR for dsos on OS/390. [Greg Ames]
fa9e4066f08beec538e775443c5be79dd423fcabahrens *) Add a chunking filter to Apache. This brings us one step closer
fa9e4066f08beec538e775443c5be79dd423fcabahrens to removing BUFF. [Ryan Bloom]
ecc2d604e885a75cc75e647b5641af99d5a6f4a6bonwick *) ap_add_filter now adds filters in a LIFO fashion. The first filter
0713e232b7712cd27d99e1e935ebb8d5de61c57dGeorge Wilson added to the stack is the last filter to be called. [Ryan Bloom]
0713e232b7712cd27d99e1e935ebb8d5de61c57dGeorge Wilson *) Apache 2.0 has been completely documented using Scandoc. The
0713e232b7712cd27d99e1e935ebb8d5de61c57dGeorge Wilson docs can be generated by running 'make docs'. [Ryan Bloom]
0713e232b7712cd27d99e1e935ebb8d5de61c57dGeorge Wilson *) Add filtered I/O to Apache. This is based on bucket brigades,
0713e232b7712cd27d99e1e935ebb8d5de61c57dGeorge Wilson Currently the buckets still use BUFF under the covers, but that
0713e232b7712cd27d99e1e935ebb8d5de61c57dGeorge Wilson should change quickly. The only currently written filter is the
0713e232b7712cd27d99e1e935ebb8d5de61c57dGeorge Wilson core filter which just calls ap_bwrite. [The Apache Group]
0713e232b7712cd27d99e1e935ebb8d5de61c57dGeorge Wilson *) APR locks on Unix: Let APR_LOCKALL locks work when APR isn't
8363e80ae72609660f6090766ca8c2c18aa53f0cGeorge Wilson built with thread support. [Jeff Trawick]
0713e232b7712cd27d99e1e935ebb8d5de61c57dGeorge Wilson *) Abort configuration if --with-layout was specified and there's
ecc2d604e885a75cc75e647b5641af99d5a6f4a6bonwick no layout definition file. [Ken Coar]
0713e232b7712cd27d99e1e935ebb8d5de61c57dGeorge Wilson *) Add support for '--with-port=n' option to configure. [Ken Coar]
fa9e4066f08beec538e775443c5be79dd423fcabahrens *) Add support for extension methods for the Allow response header
fa9e4066f08beec538e775443c5be79dd423fcabahrens field, and an API routine for accessing r->allowed and the
fa9e4066f08beec538e775443c5be79dd423fcabahrens list of extension methods in a unified manner. [Ken Coar]
d80c45e0f58fa434ba37259ea2e2b12e0380c19abonwick *) mod_cern_meta: fix broken file reading loop in scan_meta_file().
d80c45e0f58fa434ba37259ea2e2b12e0380c19abonwick [Rob Simonson <simo@us.ibm.com>]
d80c45e0f58fa434ba37259ea2e2b12e0380c19abonwick *) Get xlate builds working again. The apr renaming in 2.0a5 broke
d80c45e0f58fa434ba37259ea2e2b12e0380c19abonwick APACHE_XLATE builds. [Jeff Trawick]
d80c45e0f58fa434ba37259ea2e2b12e0380c19abonwick *) A configuration file parsing problem was fixed. When the
d80c45e0f58fa434ba37259ea2e2b12e0380c19abonwick configuration file started with an IfModule/IfDefine container,
d80c45e0f58fa434ba37259ea2e2b12e0380c19abonwick only the last statement in the container would be retained.
d80c45e0f58fa434ba37259ea2e2b12e0380c19abonwick [Jeff Trawick]
d80c45e0f58fa434ba37259ea2e2b12e0380c19abonwickChanges with Apache 2.0a5
d80c45e0f58fa434ba37259ea2e2b12e0380c19abonwick *) Perchild is serving pages after passing them to different child
b24ab6762772a3f6a89393947930c7fa61306783Jeff Bonwick processes. There are still a lot of bugs, but this does work. I
d80c45e0f58fa434ba37259ea2e2b12e0380c19abonwick have made requests against the same installation of Apache, and had
d80c45e0f58fa434ba37259ea2e2b12e0380c19abonwick different servers use different user IDs to serve the responses.
d80c45e0f58fa434ba37259ea2e2b12e0380c19abonwick This change moves to using socketpair instead of an AF_UNIX socket.
d80c45e0f58fa434ba37259ea2e2b12e0380c19abonwick [Ryan Bloom]
be6fd75a69ae679453d9cda5bff3326111e6d1caMatthew Ahrens *) Perchild MPM still doesn't work perfectly, but it is serving pages.
d80c45e0f58fa434ba37259ea2e2b12e0380c19abonwick It can't seem to pass between child processes yet, but I think we
d80c45e0f58fa434ba37259ea2e2b12e0380c19abonwick are closer now than before. This moves us back to using Unix
d80c45e0f58fa434ba37259ea2e2b12e0380c19abonwick Domain Sockets. [Ryan Bloom]
d80c45e0f58fa434ba37259ea2e2b12e0380c19abonwick *) libapr functions and types renamed with apr_ prefix.
0713e232b7712cd27d99e1e935ebb8d5de61c57dGeorge Wilson *) Fix problems with APR sockaddr handling on Win32. It didn't always
09c9d376e8ccb8fbba74f33cc268964464092b62George Wilson return the right information on the local socket address.
b24ab6762772a3f6a89393947930c7fa61306783Jeff Bonwick [Gregory Nicholls <gnicholls@level8.com>]
be6fd75a69ae679453d9cda5bff3326111e6d1caMatthew Ahrens *) ap_recv() on Win32: Set bytes-read to 0 on error.
b24ab6762772a3f6a89393947930c7fa61306783Jeff Bonwick [Gregory Nicholls <gnicholls@level8.com>]
d80c45e0f58fa434ba37259ea2e2b12e0380c19abonwick *) Add an option to not detach from the controlling terminal without
d80c45e0f58fa434ba37259ea2e2b12e0380c19abonwick going into single process mode. This allows for much easier
d80c45e0f58fa434ba37259ea2e2b12e0380c19abonwick debugging of the process startup code. [Ryan Bloom]
0713e232b7712cd27d99e1e935ebb8d5de61c57dGeorge Wilson *) ab: don't use perror() to report the failure of an APR function.
0713e232b7712cd27d99e1e935ebb8d5de61c57dGeorge Wilson [Jeff Trawick]
0713e232b7712cd27d99e1e935ebb8d5de61c57dGeorge Wilson *) Make dexter, mpmt_pthread, and perchild MPMs not destroy the
0713e232b7712cd27d99e1e935ebb8d5de61c57dGeorge Wilson scoreboard on graceful restarts.
e14bb3258d05c1b1077e2db7cf77088924e56919Jeff Bonwick [Ryan Bloom]
0713e232b7712cd27d99e1e935ebb8d5de61c57dGeorge Wilson *) Fix segfault/SIGSEGV when running gzip from mod_mime_magic.c.
e14bb3258d05c1b1077e2db7cf77088924e56919Jeff Bonwick An invalid ap_proc_t was passed to ap_create_process().
0713e232b7712cd27d99e1e935ebb8d5de61c57dGeorge Wilson [Jeff Trawick]
d80c45e0f58fa434ba37259ea2e2b12e0380c19abonwick *) Allow modules to register filters. Those filters are still
d80c45e0f58fa434ba37259ea2e2b12e0380c19abonwick never called, but this is a step in the right direction.
d80c45e0f58fa434ba37259ea2e2b12e0380c19abonwick [Ryan Bloom and Greg Stein]
d80c45e0f58fa434ba37259ea2e2b12e0380c19abonwick *) Register the mod_cgid daemon process for cleanup so that it is
d80c45e0f58fa434ba37259ea2e2b12e0380c19abonwick killed at termination if it does not die when the parent gets
0f7643c7376dd69a08acbfc9d1d7d548b10c846aGeorge Wilson SIGTERM. This change is to fix occasional problems where the
0f7643c7376dd69a08acbfc9d1d7d548b10c846aGeorge Wilson process stays around. Bugs in similar logic in mod_rewrite and
0f7643c7376dd69a08acbfc9d1d7d548b10c846aGeorge Wilson mod_include were also fixed. [Jeff Trawick]
0f7643c7376dd69a08acbfc9d1d7d548b10c846aGeorge Wilson *) Fix a bug in the time handling. Basically, we were imploding a time
0f7643c7376dd69a08acbfc9d1d7d548b10c846aGeorge Wilson in ap_parseHTTPdate, but it had bogus data in the exploded time format.
0f7643c7376dd69a08acbfc9d1d7d548b10c846aGeorge Wilson Namely, tm_usec and tm_gmtoff were not filled out. ap_implode_time
0f7643c7376dd69a08acbfc9d1d7d548b10c846aGeorge Wilson uses those two fields to adjust the time value. Because of the HTTP
0f7643c7376dd69a08acbfc9d1d7d548b10c846aGeorge Wilson spec, both of those values can be zero'ed out safely. This fixes
0f7643c7376dd69a08acbfc9d1d7d548b10c846aGeorge Wilson the bug correctly. [Ryan Bloom]
0f7643c7376dd69a08acbfc9d1d7d548b10c846aGeorge Wilson *) Fix a couple of place in the Windows code where the wrong error
0f7643c7376dd69a08acbfc9d1d7d548b10c846aGeorge Wilson code was being returned. [Gregory Nicholls <gnicholls@level8.com>]
0f7643c7376dd69a08acbfc9d1d7d548b10c846aGeorge Wilson *) Fix POOL_DEBUG (at least for prefork mpm). [Dean Gaudet]
0f7643c7376dd69a08acbfc9d1d7d548b10c846aGeorge Wilson *) Added the APR_EOL_STR macro for platform dependent differences in
0f7643c7376dd69a08acbfc9d1d7d548b10c846aGeorge Wilson logfiles and other raw text (such as all APR files). Fixes logfiles
0f7643c7376dd69a08acbfc9d1d7d548b10c846aGeorge Wilson not terminated with cr/lf sequences in Win32. [William Rowe]
0f7643c7376dd69a08acbfc9d1d7d548b10c846aGeorge Wilson *) Move all strings functions in APR to src/lib/apr/strings and create
0f7643c7376dd69a08acbfc9d1d7d548b10c846aGeorge Wilson apr_strings.h for the prototypes. [Ryan Bloom]
0f7643c7376dd69a08acbfc9d1d7d548b10c846aGeorge Wilson *) APR lock fixes: when using SysV sems, flock(), or fcntl(), be sure
0f7643c7376dd69a08acbfc9d1d7d548b10c846aGeorge Wilson to repeat the syscall until we stop getting EINTR. I noticed a
0f7643c7376dd69a08acbfc9d1d7d548b10c846aGeorge Wilson related problem at termination (SIGTERM) on FreeBSD when using
0f7643c7376dd69a08acbfc9d1d7d548b10c846aGeorge Wilson fcntl(). Apache 1.3 had these new loops too. Also, make the flock()
0f7643c7376dd69a08acbfc9d1d7d548b10c846aGeorge Wilson implementation work properly with child init. Previously, ap_lock()
0f7643c7376dd69a08acbfc9d1d7d548b10c846aGeorge Wilson was essentially a no-op because all children were using different
0f7643c7376dd69a08acbfc9d1d7d548b10c846aGeorge Wilson locks and thus nobody ever blocked. [Jeff Trawick]
0f7643c7376dd69a08acbfc9d1d7d548b10c846aGeorge Wilson *) The htdocs/ tree has been moved out of the CVS source tree into
0f7643c7376dd69a08acbfc9d1d7d548b10c846aGeorge Wilson a separate area for easier development. This has NO EFFECT on
0f7643c7376dd69a08acbfc9d1d7d548b10c846aGeorge Wilson end-users or Apache installations. [Ken Coar]
0f7643c7376dd69a08acbfc9d1d7d548b10c846aGeorge Wilson *) Integrate the mod_dav module for WebDAV protocol handling. This
0f7643c7376dd69a08acbfc9d1d7d548b10c846aGeorge Wilson adds the dav and dav_fs modules, the SDBM library, and additional
0f7643c7376dd69a08acbfc9d1d7d548b10c846aGeorge Wilson XML handling utilities. [Greg Stein]
0f7643c7376dd69a08acbfc9d1d7d548b10c846aGeorge Wilson *) Clean out obsolete names (from httpd.h) for the HTTP Status Codes
0f7643c7376dd69a08acbfc9d1d7d548b10c846aGeorge Wilson *) Update the lib/expat-lite/ library (bring forward changes from
0f7643c7376dd69a08acbfc9d1d7d548b10c846aGeorge Wilson the Apache 1.3 repository). [Greg Stein]
0f7643c7376dd69a08acbfc9d1d7d548b10c846aGeorge Wilson *) If sizeof(long long) == sizeof(long), then prefer long in APR
0f7643c7376dd69a08acbfc9d1d7d548b10c846aGeorge Wilson configure.in. [Dave Hill <ddhill@zk3.dec.com>]
d80c45e0f58fa434ba37259ea2e2b12e0380c19abonwick *) Add ap_sendfile for Tru64 Unix. Also, add an error message for
8654d0253136055bd4cc2423d87378e8a37f2eb5perrin machines where sendfile is detected, but nobody has written ap_sendfile.
8363e80ae72609660f6090766ca8c2c18aa53f0cGeorge Wilson [Dave Hill <ddhill@zk3.dec.com>]
d80c45e0f58fa434ba37259ea2e2b12e0380c19abonwick *) Compile fixes in mod_mmap_static. [Victor J. Orlikowski]
d80c45e0f58fa434ba37259ea2e2b12e0380c19abonwick *) ab would start up more connections than needed, then quit when the
d80c45e0f58fa434ba37259ea2e2b12e0380c19abonwick desired number were finished. Also fixed a logic error involving
d80c45e0f58fa434ba37259ea2e2b12e0380c19abonwick ab keepalives. [Victor J. Orlikowski]
b24ab6762772a3f6a89393947930c7fa61306783Jeff Bonwick *) WinNT: Implement non-blocking pipes with timeouts to communicate
e14bb3258d05c1b1077e2db7cf77088924e56919Jeff Bonwick with CGIs. Apache 2.0a4 had non-blocking pipes but without
e14bb3258d05c1b1077e2db7cf77088924e56919Jeff Bonwick timeouts (i.e, if a timeout was specified, the pipe reverted to
e14bb3258d05c1b1077e2db7cf77088924e56919Jeff Bonwick a full blocking pipe). Now the behaviour is more in line with
e14bb3258d05c1b1077e2db7cf77088924e56919Jeff Bonwick Unix non-blocking pipes.
e14bb3258d05c1b1077e2db7cf77088924e56919Jeff Bonwick [Bill Stoddard]
e14bb3258d05c1b1077e2db7cf77088924e56919Jeff Bonwick *) WinNT: Implement accept socket reuse. Using mod_file_cache to
8654d0253136055bd4cc2423d87378e8a37f2eb5perrin cache open file handles along with accept socket reuse enables
d80c45e0f58fa434ba37259ea2e2b12e0380c19abonwick Apache 2.0 to serve non-keepalive requests for static files at
d80c45e0f58fa434ba37259ea2e2b12e0380c19abonwick 3x the rate of Apache 1.3.(e.g, Apache 1.3 will serve 400 rps
d80c45e0f58fa434ba37259ea2e2b12e0380c19abonwick and Apache 2.0 will serve almost 1200 rps on my system).
8363e80ae72609660f6090766ca8c2c18aa53f0cGeorge Wilson [Bill Stoddard]
e14bb3258d05c1b1077e2db7cf77088924e56919Jeff Bonwick *) Merge mod_mmap_static function into mod_file_cache. mod_file_cache
8654d0253136055bd4cc2423d87378e8a37f2eb5perrin supports two config directives, mmapfile (same behavious as
8363e80ae72609660f6090766ca8c2c18aa53f0cGeorge Wilson mod_mmap_static) and cachefile. Use the cachefile directive
0713e232b7712cd27d99e1e935ebb8d5de61c57dGeorge Wilson to cache open file handles. This directive only works on systems
d80c45e0f58fa434ba37259ea2e2b12e0380c19abonwick that have implemented the ap_sendfile API. cachefile works today
d80c45e0f58fa434ba37259ea2e2b12e0380c19abonwick on Windows NT, but has not been tested on any flavors of Unix.
0f7643c7376dd69a08acbfc9d1d7d548b10c846aGeorge Wilson [Bill Stoddard]
d80c45e0f58fa434ba37259ea2e2b12e0380c19abonwick *) Cleanup the configuration. With the last few changes the
d80c45e0f58fa434ba37259ea2e2b12e0380c19abonwick configuration process automatically:
e14bb3258d05c1b1077e2db7cf77088924e56919Jeff Bonwick inherits information about how to build from APR. Allowing
d80c45e0f58fa434ba37259ea2e2b12e0380c19abonwick APR to inform Apache that it should or should not use -ldl
0f7643c7376dd69a08acbfc9d1d7d548b10c846aGeorge Wilson Detects which mod_cgi should be used mod_cgi or mod_cgid,
0f7643c7376dd69a08acbfc9d1d7d548b10c846aGeorge Wilson based on the threading model
0f7643c7376dd69a08acbfc9d1d7d548b10c846aGeorge Wilson Apache calls APR's configure process before finishing it's
0f7643c7376dd69a08acbfc9d1d7d548b10c846aGeorge Wilson configuration processing, allowing for more information flow
0f7643c7376dd69a08acbfc9d1d7d548b10c846aGeorge Wilson between the two.
d80c45e0f58fa434ba37259ea2e2b12e0380c19abonwick [Ryan Bloom]
d80c45e0f58fa434ba37259ea2e2b12e0380c19abonwick *) Change Unix and Win32 ap_setsockopt() so that APR_SO_NONBLOCK
d80c45e0f58fa434ba37259ea2e2b12e0380c19abonwick with non-zero argument makes the socket non-blocking. BeOS and
d80c45e0f58fa434ba37259ea2e2b12e0380c19abonwick OS/2 already worked this way. [Jeff Trawick]
e14bb3258d05c1b1077e2db7cf77088924e56919Jeff Bonwick *) ap_close() now calls ap_flush() for buffered files, so write
b24ab6762772a3f6a89393947930c7fa61306783Jeff Bonwick operations work a whole lot better on buffered files.
e14bb3258d05c1b1077e2db7cf77088924e56919Jeff Bonwick [Jeff Trawick]
d80c45e0f58fa434ba37259ea2e2b12e0380c19abonwick *) Fix error messages issued from MPMs which explain where to change
d80c45e0f58fa434ba37259ea2e2b12e0380c19abonwick compiled-in limits (e.g., ThreadsPerChild, MaxClients, StartTreads).
d80c45e0f58fa434ba37259ea2e2b12e0380c19abonwick [Greg Ames]
d80c45e0f58fa434ba37259ea2e2b12e0380c19abonwick *) ap_create_pipe() now leaves pipes in blocking state. (This helps
d80c45e0f58fa434ba37259ea2e2b12e0380c19abonwick reduce the number of syscalls on Unix.) ap_set_pipe_timeout() is
d80c45e0f58fa434ba37259ea2e2b12e0380c19abonwick now the way that the blocking state of a pipe is manipulated.
d80c45e0f58fa434ba37259ea2e2b12e0380c19abonwick ap_block_pipe() is gone. [Jeff Trawick]
b24ab6762772a3f6a89393947930c7fa61306783Jeff Bonwick *) Correct the problem where the only local host name that the IP stack
e14bb3258d05c1b1077e2db7cf77088924e56919Jeff Bonwick can discover are 'undotted' private names. If no fully qualified
e14bb3258d05c1b1077e2db7cf77088924e56919Jeff Bonwick domain name can be identified, the default ServerName will be set to
d80c45e0f58fa434ba37259ea2e2b12e0380c19abonwick the machine's IP address string. A warning is always provided if the
e14bb3258d05c1b1077e2db7cf77088924e56919Jeff Bonwick ServerName not specified, but assumed. Solves PR6215 [William Rowe]
e14bb3258d05c1b1077e2db7cf77088924e56919Jeff Bonwick *) Repair problems with config file processing which caused segfault
e14bb3258d05c1b1077e2db7cf77088924e56919Jeff Bonwick at init when virtual hosts were defined and which caused ServerName to
d80c45e0f58fa434ba37259ea2e2b12e0380c19abonwick be ignored when there was no valid DNS setup. [Jeff Trawick]
d80c45e0f58fa434ba37259ea2e2b12e0380c19abonwick *) Removed pointless ap_is_aborted macro function. [Roy Fielding]
d80c45e0f58fa434ba37259ea2e2b12e0380c19abonwick *) Add ap_sendfile implementation for AIX
d80c45e0f58fa434ba37259ea2e2b12e0380c19abonwick [Victor J. Orlikowski]
e14bb3258d05c1b1077e2db7cf77088924e56919Jeff Bonwick *) Repair C++ compatibility in ap_config.h, apr_file_io.h,
d80c45e0f58fa434ba37259ea2e2b12e0380c19abonwick [Tyler J. Brooks <tylerjbrooks@home.com>, Jeff Trawick]
e14bb3258d05c1b1077e2db7cf77088924e56919Jeff Bonwick *) Bring the allocation and pool debugging code back into a working
e14bb3258d05c1b1077e2db7cf77088924e56919Jeff Bonwick state. This will need to be tested as so far it's only been used on
e14bb3258d05c1b1077e2db7cf77088924e56919Jeff Bonwick BeOS. [David Reid]
e14bb3258d05c1b1077e2db7cf77088924e56919Jeff Bonwick *) Change configuration command setup to be properly typesafe when in
e14bb3258d05c1b1077e2db7cf77088924e56919Jeff Bonwick maintainer mode. Note that this requires a compiler that can initialise
e14bb3258d05c1b1077e2db7cf77088924e56919Jeff Bonwick unions. [Ben Laurie]
e14bb3258d05c1b1077e2db7cf77088924e56919Jeff Bonwick *) Turn on buffering for config file reads. Part of this was to
e14bb3258d05c1b1077e2db7cf77088924e56919Jeff Bonwick repair buffered I/O support in Unix and implement buffered
e14bb3258d05c1b1077e2db7cf77088924e56919Jeff Bonwick ap_fgets() for all platforms. [Brian Havard, Jeff Trawick]
d80c45e0f58fa434ba37259ea2e2b12e0380c19abonwick *) Win32: Fix problem where UTC offset was not being set correctly
e14bb3258d05c1b1077e2db7cf77088924e56919Jeff Bonwick in the access log. Problem reported on news group by Jerry Baker.
e14bb3258d05c1b1077e2db7cf77088924e56919Jeff Bonwick [Bill Stoddard]
e14bb3258d05c1b1077e2db7cf77088924e56919Jeff Bonwick *) Fix segfault when reporting this type of syntax error:
e14bb3258d05c1b1077e2db7cf77088924e56919Jeff Bonwick "</container> without matching <container> section", where
d80c45e0f58fa434ba37259ea2e2b12e0380c19abonwick container is VirtualHost or Directory or whatever.
e14bb3258d05c1b1077e2db7cf77088924e56919Jeff Bonwick [Jeff Trawick]
3b2aab18808792cbd248a12f1edf139b89833c13Matthew Ahrens *) Prevent the source code for CGIs from being revealed when using
3b2aab18808792cbd248a12f1edf139b89833c13Matthew Ahrens mod_vhost_alias and the CGI directory is under the document root
3b2aab18808792cbd248a12f1edf139b89833c13Matthew Ahrens and a user makes a request like http://www.example.com//cgi-bin/cgi
3b2aab18808792cbd248a12f1edf139b89833c13Matthew Ahrens as reported in <news:960999105.344321@ernani.logica.co.uk>
3b2aab18808792cbd248a12f1edf139b89833c13Matthew Ahrens *) Add support for the new Beos NetwOrking Environment (BONE)
0713e232b7712cd27d99e1e935ebb8d5de61c57dGeorge Wilson *) xlate: ap_xlate_conv_buffer() now tells the caller when the
0713e232b7712cd27d99e1e935ebb8d5de61c57dGeorge Wilson final input char is incomplete; ap_bwrite_xlate() now handles
0713e232b7712cd27d99e1e935ebb8d5de61c57dGeorge Wilson incomplete final input chars. [Jeff Trawick]
0713e232b7712cd27d99e1e935ebb8d5de61c57dGeorge Wilson *) Yet another update to saferead/halfduplex stuff -- need to ensure
3b2aab18808792cbd248a12f1edf139b89833c13Matthew Ahrens that a bhalfduplex call occurs before logging or else DNS and
0713e232b7712cd27d99e1e935ebb8d5de61c57dGeorge Wilson such can delay the last packet of the response. [Dean Gaudet]
3b2aab18808792cbd248a12f1edf139b89833c13Matthew Ahrens *) Some syscall reduction in APR on unix -- don't seek when setting
3b2aab18808792cbd248a12f1edf139b89833c13Matthew Ahrens up an mmap; and don't fcntl() more than once per socket.
0713e232b7712cd27d99e1e935ebb8d5de61c57dGeorge Wilson [Dean Gaudet]
0713e232b7712cd27d99e1e935ebb8d5de61c57dGeorge Wilson *) When mod_cgid is started as root, the cgi daemon now switches
3b2aab18808792cbd248a12f1edf139b89833c13Matthew Ahrens to the configured User/Group (like other httpd processes)
3b2aab18808792cbd248a12f1edf139b89833c13Matthew Ahrens instead of continuing as root. [Jeff Trawick]
if the len was negative. Use <sys/un.h> for struct sockaddr_un
doesn't seem to have a problem but /bin/sh on Solaris does.
ContentDigest enabled and we can't/don't mmap the file.
related bugs, and changed shmem/locking to use apr API. Shared-mem
would be errors generating ap_config_auto.h later in the configure
*) Organize http_main.c as independent code, such that no code or
in 1.3's ebcdic.c. [Jeff Trawick]
buffer if the implementation knows how to use it (i.e., if L_tmpnam
*) Configure creates config.nice now containing your configure
options. Syntax: ./config.nice [--more-options]
*) Fix mm's memcpy/memset macros, pointer arithmetic was broken.
*) The ab program in the src/support directory is now portable using
*) Finished move of ap_md5 routines to apr_md5. Removed ap_md5.h.
Apache.dsw created to bring together all the pieces. Create new file
os/win32/BaseAddr.ref to define module base addresses (to prevent
*) More FAQs and answers from comp.infosystems.www.servers.unix.
fix up from Apache 1.3. #include'ing "ap_mpm.h" fixes up an
we can use ReadFileScatter and WriteFileGather in readwrite.c.
fixes to mod_so.c.
Makefile.win includes the same user interface as the old
*) Put in Korean and Norwegian index.html pages (2.0 and 1.3)
config file. E.g. 'ServerAdmin ${POSTMASTER}'. As commited
it does this on a line by line basis; i.e. if the envvar
ErrorDocument XXX /local/uri
ErrorDocument XXX http://valid/url
*) Changed 'CacheNegotiatedDocs' from its present/not-present
done with --with-module=/path/to/module. Modules can only be added
*) Enable Apache to use sendfile/TransmitFile API
*) Make file I/O and network I/O writev/sendv APIs consistent.
bytes_read/bytes_written is always valid (never -1). Plus
some fixes to buff.c to correct problems introduced by the
*) buff.c has been converted to no longer use errno.
automatically for developers from src/Configure.
*) Fixed building of src/support/htpasswd.c
*) Moved mod_auth_digest.c from experimental to standard. [Roy Fielding]
*) Support line-continuation feature in config.option file and
*) Implement WINNT Win32 MPM from original Win32 code in http_main.c
(per default used the config.option file).
calling order to be specified on a per-hook/per-module basis.
*) os/unix/unixd.[ch]: detach, setuid, setgid, stuff which will be common
*) mpm_prefork: throw away all the alarm/timeout crud; and clean up the
of alloc.c for now. [Dean Gaudet]
based on IP/port. [Ben Laurie]
*) I/O layering and BUFF revamp. See docs/buff.txt. [Dean Gaudet]
docs/initial_blurb.txt. [Dean Gaudet]
an absolute path to the ./libexec directory where the libhttp.ep file
routines are now called ap_base64* and are 'plain' (i.e., no
pool access or anything clever). Inside util.c the routines acting
*) Fixed assumption of absolute paths in binbuild.sh. [Tony Finch]
src/support/httpd.exp. [Bill Stoddard, Randy Terbush]
*) Make ap_sha1.c compile for EBCDIC platforms: replace remaining LONG
*) PORT: Improved compilation and DSO support on Sequent DYNIX/ptx.
*) Local struct mmap in http_core.c conflicted with system structure
*) Added updated mod_digest as modules/experimental/mod_auth_digest.
*) CIDR addresses such as a.b.c.d/24 where d != 0 weren't handled
*) RewriteLock/RewriteMap didn't work properly with virtual hosts.
*) PORT: Support for compaq/tandem/com.
Netscape servers. See support/SHA1 for more information.
Caused the separation of ap_md5.c into md5, sha1 and a general
ap_checkpass.c with just a validate_passwd routine. Added a
couple of flags to support/htpasswd. Some reuse of the to64()
with ASCII/EBCDIC conversions in "ident" query.
are combined, and duplicate tokens (e.g., "Vary: host, host" or
install the DSO; useful for editing httpd.conf with apxs. Fix
create duplicate LoadModule/AddModule entries; apxs can now be
used to re- enable/disable a module. [Wilfredo Sanchez]
Win 95 users may need to update their TCP/IP stack to pick up
Winsock 2. (See http://www.microsoft.com/windows95/downloads/)
error.log when CGI scripts fail. This makes Apache on Win32
*) Fix `make r' test procedure in src/regex/: ap_isprint was not found.
*) Add DSO support for DGUX 4.x using gcc. Tested on x86 platforms.
*) Add the new mass-vhost module (mod_vhost_alias.c) developed and
parent/child process management code.
*) Fix ndbm.h include problems with brain-dead glibc >= 2.1 which
has ndbm.h in a non-standard db1/ subdir. PR#4431, PR#4528
*) Determine AP_BYTE_ORDER for ap_config_auto.h and already
content-types are "text/html;parameters". PR#4524 [Ken Coar]
*void. When the OS/platform/compiler supports quads, ap_snprintf()
*) Add RULE_EXPAT, the src/lib/ directory structure, and a modified copy
(e.g., HTTP/0.9 or HTTP/1.1) of the request. [Ken Coar]
*) Switch to /bin/sh5 in APACI on Ultrix and friends to avoid problems with
their brain-dead /bin/sh. [Ralf S. Engelschall] PR#4372
*) mod_include's fsize/flastmod should allow only relative paths, just
*) Add iconsdir, htdocsdir, and cgidir to config.layout.
*) Fix minor but annoying bug with the test for Configuration.tmpl
in unix/os.c, and don't install the dyld error handlers, which
*) Add functionality to the install-bindist.sh script created by
binbuild.sh to use tar when copying distribution files to the
install-bindist.sh now detects the local perl5 path to install
src/modules/proxy_util.c where a NULL filepointer and
have assurance about how string manipulators (e.g., tr) will
*) Add "opt" (SysV-style) layout to config.layout. [Raymond S Brand
*) Fix number of bytes copied by read_connection() in src/support/ab.c
*) Make sure RewriteLock can be used only in the global context, (i.e.
uncompress/gzip, but those tools sometimes do not produce
*) PORT: deal with UTS compiler error in http_protocol.c
binary (e.g., image file) in the first place.
*) support/htpasswd now permits the password to be specified on the
apache -n apache1 -i -f c:/httpd.conf
Installs apache as service 'apache1' and associates c:/httpd.conf
Installs apache as service 'apache2'. httpd.conf is located under
the default server root (/apache/conf/httpd.conf).
apache -n apache3 -i -d c:/program files/apache
c:/program files/apache.
*) Correct the signed/unsigned character handling for the MD5 routines;
*) OS/2: Rework CGI handling to use spawn*() instead of fork/exec, achieving
*) proxy ftp: instead of using the hardwired string "text/plain" as
<Directory proxy:ftp://some.host>
DefaultType gargle/blurb
*) Be more smart in APACI's configure script when determining the UID/GID
the number of fork()s from one/request to just the odd one an hour.
*) Added proxy, auth and header support to src/support/ab.c. Added a
README file to src/support/
*) Fix sed-substitutions in `make install': path elements like `httpd/conf'
(for instance from an APACI configure --sysconfdir=/etc/httpd/conf
*) PORT: Add support for FreeBSD 4.x [Ralf S. Engelschall]
the reboot prompt (which is only given if MSVCRT.DLL system
*) WIN32: Apache.exe now contains an icon. [Paul Sutton]
*) Using APACI, the main config file (usually httpd.conf) was
*) Move the directive `ExtendedStatus' in httpd.conf-dist-win _after_ the
DSO/DLL section because it's a directive from mod_status and isn't
against libap.a and use its ap_snprintf() instead of sprintf() to avoid
*) Add Apple's Mac OS X Server Layout "Rhapsody" to config.layout.
*) Add cgidir, htdocsdir, iconsdir variables to Makefile.tmpl in order
*) Use proper pid_t type for saving PIDs in alloc.c. [John Bley]
in http_core.c. [John Bley, Roy Fielding]
*) src/support/: The ApacheBench benchmark program was overhauled by
*) Added -S option to install.sh so that options can be passed to
is *not* given in the argument list; i.e., the logical negation
*) Win32: Add global symbols missing from ApacheCore.def. [Carl Olsen]
to util.c for parsing an HTTP header field value to extract the next
code different from 500. This allows the proxy to, e.g., return
as "com.name" to be served. [Paul Sutton] PR#3769.
make subtasking easier on the OSD/POSIX mainframe environment.
ap_compat.h. [David White <david@persimmon.com>] PR#3725
*) Make NDBM file suffix determination for mod_rewrite more accurate, i.e.
*) Let src/Configure be aware of CFLAGS options starting with plus
signs as it's the case for the HP/UX compiler.
and this makes its functions available to things in src/support.
*) WIN32: Created new makefiles Makefile_win32.txt (normal build)
and Makefile_win32_debug.txt (debug build) that work on Win95.
nmake /f Makefile_win32.txt # compiles normal build
nmake /f Makefile_win32.txt install # compiles and installs
nmake /f Makefile_win32.txt clean # removes compiled junk
nmake /f Makefile_win32_debug.txt # compiles debug build
nmake /f Makefile_win32_debug.txt install
nmake /f Makefile_win32_debug.txt clean
*) Small fix for mod_env.html: The module was documented as to be _not_
*) Instead of fixing a bug in the generation procedure for config.status (a
making sure the src/support/ tools are _forced_ to be build last (they
*) Fix installation procedure: Now that os-inline.c is actually used (a
recently fixed bug prevented this) we need to also install os-include.c
`escape' and `unescape' were added which can be used to escape/unescape
to/from hex-encodings in URLs parts (this is especially useful in
*) Major overhaul of mod_negotiation.c, part 2.
- added ap_array_pstrcat() to alloc.c for efficient concatenation
*) Major overhaul of mod_negotiation.c, part 1.
revision (draft-ietf-http-v11-spec-rev-06.txt).
e.g. no feature negotiation). Removed old experimental version.
negotiation results are consistent across backup/restores and mirrors
*) RFC2396 allows the syntax http://host:/path (with no port number)
*) When modules update/modify the file name in the configfile_t structure,
*) The hashbang emulation code in ap_execve.c would interpret
#!/hashbang/scripts correctly, but failed to fall back to a
o fixed auto-suffix handling now that config.layout exists.
config.layout and every path now can be marked this way (not only the
SINGLE_LISTEN_UNSERIALIZED_ACCEPT to NetBSD/OpenBSD section
of ap_config.h to allow serialized accept for multiport listens.
*) PORT: Fixed a misplaced #endif for NetBSD/OpenBSD section
of ap_config.h that would skip several defines if DEFAULT_GROUP
strcasecmp, so allow it in ap_config.h. [Amiel Lee Yee] PR#3247
*) Fix ordering of definitions in ap_config.h so that ap_inline is
*) Make generation of src/Configuration.apaci more robust: It failed to
another (e.g. cgi vs. fastcgi). We now check for mod_XXX, libXXX and even
*) In src/Configure remove the SERVER_SUBVERSION support (already deprecated
*) Allow special options -Wc,xxx and -Wl,xxx on APXS compile/link command.
IS to the compiler/linker command. [Ralf S. Engelschall]
config.layout. Custom layouts are possible by using FILE:ID as the
The config.layout file consists of <Layout ID>..</Layout> sections
extension (e.g., .fr, .de) can be labelled as being some other
*) mod_include.c:handle_perl() now properly tests for OPT_INCNOEXEC
*) Updated mime.types to reflect current Internet media types
Improved mod_actions.c so that it can use any of the methods
defined in httpd.h. Added ap_method_number_of(method) for
*) Fix problems with handling of UNC names (e.g., \\host\path)
*) Move a typedef to fix compile problems on Linux with 1.x kernels.
*) http_config.c would respond with 501 (Method Not Implemented) if a
should have been a 500 response. Likewise, mod_proxy.c would responsd
on-the-fly/batch permute the order of two modules (mod_foo and mod_bar)
mod_foo with the begin of the module list, i.e. it `moves' the module to
which permutes mod_foo with the end of the module list, i.e. it `moves'
on container start lines (e.g., it wouldn't spot
*) Fix Berkeley-DB/2.x support in mod_auth_db: The data structures were not
httpd.conf-dist* files. The srm and access files now contain
only comments, and httpd.conf has all the combined contents in
*) PORT: DSO/ELF support for FreeBSD 3.0.
*) Fix http://localhost/ hints in top-level INSTALL document.
ap_config.h. [Brian Havard]
*) PORT: Add Pyramid DC/OSx support to configuration mechanism.
*) PORT: Fix sys/resource.h handling for Amdahl's UTS 2.1
*) Correct comment in mod_log_config.c about its internals.
handle the creation of modules.c [Jim Jagielski]
and to avoid problems under platforms where only version 2.x is present.
*) Remove redundant substitutions in top-level Makefile.tmpl.
platforms where `nogroup' exists in /etc/group. [Ralf S. Engelschall]
the possibility to override it manually via APACI or src/Configuration.
existance of the file under /usr/include, too.
*) Fix possible buffer overflow situation in suexec.c.
*) Fix documentation of ProxyPass/ProxyPassReverse according to the
in /home/user, not in /, therefore clicking on "../" in the
dump core for replies with invalid headers (e.g., duplicate
plop gmon.out profile data for each child [Doug MacEachern]
config.status script to be immune against arguments with whitespaces.
script `buildinfo.sh' which is both more flexible and already proofed to
*) Make ab.c again pass ``gcc -Wall -Wshadow -Wpointer-arith -Wcast-align
*) Remove bad reference to non-existing SERVER_VERSION in mod_rewrite.html
*) Bump up MAX_ENV_FLAGS in mod_rewrite.h from the too conservatice limit of
variables in one RewriteRule and had to patch mod_rewrite.h for every
*) Make sure the config.status file is not overridden when just
See include/ap_mmn.h for more details. [Randy Terbush]
*) Cleanup of the PrintPath/PrintPathOS2 helper functions. Avoid
following the same idea as "MSVC vs WIN32". Additionally the src/os/emx/
directory was renamed to src/os/os2/ for consistency.
linking the DSOs, i.e. PIC libs and shared libs. Currently the rule is
*) Add correct `model' MIME types from RFC2077 to mime.types file.
*) Fixed examples in mod_rewrite.html document.
*) Update the mod_rewrite.html document to correctly reflect the situation
Makefile.tmpl: The umask+cp approach didn't work as expected (especially
*) Fix `distclean' and `clean' targets in src/Makefile.tmpl to have same
src/helper/mkdir.sh script. [Ralf S. Engelschall]
`search' entries in /etc/resolv.conf.
INSTALL file because a lot of users don't read htdocs/manual/dso.html
[Knut A.Syed <Knut.Syed@nhh.no>] PR#2674
(compilers complained) and the .so.V.R.P filename extension was adjusted
*) Disable the incorrect entry for application/msword in the
*) Fix broken RANLIB handling in src/Configure (the entry from
src/Configuration.tmpl was ignored) and additionally force RANLIB to
*) Autogenerate some HAVE_XXXXX_H defines in conf_auto.h (determined via
TestCompile) instead of defining them manually in conf.h based on less
OS-type and/or OS-version identifiers to discover whether a system header
required by HTML 3.2 and later) to mod_mime_magic's conf/magic.
*) Add Dynamic Shared Object (DSO) support for SCO5 (OpenServer 5.0.x).
*) Fix the Guess-DSO-flags-from-Perl stuff in src/Configure: "perl" was
*) PORT: remove broken test for MAP_FILE in http_main.c.
*) PORT: Change support/apachectl to use "kill -0 $pid" to test if the
but case-insensitive platforms). New #define for this added to conf.h
*) Enable DSO support for OpenBSD in general, not only for 2.x, because it
also works for OpenBSD 1.x. [Ralf S. Engelschall]
of a config.status script (as GNU Autoconf does) which remembers the used
*) Correct initialization of variable `allowed_globals' in http_main.c
multipart/x-mixed-replace;boundary=ThisRandomString.
modules/xxx/Makefile's to avoid problems with SVR4 Make under "full-DSO"
<Directory /> section of the default access.conf-dist
*) Fix symbol export list (src/support/httpd.exp) after recent
solved by another helper script findprg.sh which searches for Perl and
*) Remove the system() call from htpasswd.c, which eliminates a system
dependancy. ["M.D.Parker" <mdpc@netcom.com>] PR#2332
*) PORT: helpers/GuessOS updates for various versions for NCR SVR4.
*) Fix recently introduced Win32 child spawning code in mod_rewrite.c which
configure and src/Configure depend on this.
*) Changes usage of perror/fprintf to stderr to more proper ap_log_error
*) PORT: QNX needed a #include <sys/mman.h>; and now it uses flock
spawn_child was obsoleted and moved to compat.h
*) Fix src/support/httpd.exp (DSO export file which is currently only
``RewriteRule ^myscript$ - [T=application/x-httpd-cgi]'' This was often
*) Fix discrepancy in proxy_ftp.c which was causing failures when
*) Support for the NCR MP/RAS 3.0
*) The LDFLAGS_SHLIB_EXPORT variable of src/Configuration[.tmpl] was
not retrieved in src/Configure and thus was not useable.
- SUBDIRS is now generated in src/Makefile only and not in
Makefile.config because it is a local define for this location.
- update the "depend" targets in Makefile.tmpl files to use $(OSDIR), too.
- replaced SHLIB_OBJS/SHLIBS_OBJ consistently with OBJS_PIC because OBJS
- replaced ugly xx-so.o/xx.so-o hack with a clean and consistent usage
of xxx.lo as GNU libtool does with its PIC objects
- reduce local complexity in modules Makefile.tmpl by moving the last
*) WIN32: Make Win32 work again after the /dev/null DoS fix.
*) When opening "configuration" files (like httpd.conf, htaccess
and htpasswd), Apache will not allow them to be non-/dev/null
necessary. Long-term fix is to either serialize the chdir/spawn combo
htdocs/manual/suexec.html document before using the suexec-related
and htdocs/manual/suexec.html documents.
UID/GID and safe PATH, too.
- overhauled mkshadow.sh script: now its more IFS-safe and approx. twice
*) Add a note to httpd.conf-dist that apache will on some systems fail
and not the original statically list from modules.c
confusion with the next point and reduces the Makefile.tmpl complexity
6. The modules.c generation was extended to now contain two
of loading/linking (we use load=link+load & link=activate instead of
*) Fix the generated mod_xxx.c from "apxs -g -f xxx" after the
*) Add a comment to mod_example.c showing the format of a FLAG command
places in the code (e.g. DATE_GMT). PR#1551
*) get/set_module_config are trivial enough to be better off inline. Worth
*) Fix off-by-one error in ap_proxy_date_canon() in proxy_util.c
*) Fix debug log messages for BS2000/OSD: instead of logging the whole
*) Make sure the referer_log and agent_log entries in the default httpd.conf
*) WIN32: Make roots of filesystems (e.g. c:/) work. [Ben Laurie]
from mod_so.c to Configure because first it needs $PLAT etc. and second
AIX variants should work fine, too. Even AIX 3.x should work). This is
which we put into a os/unix/os-dso-aix.c file.
*) Fix two bugs in select() handling in http_main.c.
side-effect this reduces some subdir fiddling in configure+Makefile.tmpl.
"make root=/tmp/apache install" for rolling the package without bristling
*) Workaround braindead AWK's when generating ap_config.h: The split() and
*) Fix DEBUG_CGI situation in mod_cgi.c [David MacKenzie] PR#2114
*) Make sure that "make install" doesn't overwrite the `mime.types' and
*) PORT: Dynamic Shared Object (DSO) support for OpenBSD 2.x
variables) to avoid side-effects in "src/Configure" when the user
*) Provide backward compatibility from some old src/Configuration.tmpl
*) NeXT required strdup() in support/logresolve.c
ap_snprintf, and ap_psprintf). See include/ap.h for docs.
*) Because /usr/local/apache is the default prefix the ``configure
to `char *' under OSF1 and FreeBSD 2.x where it is defined this way
*) PORT: Make sure some AWK's don't fail in src/Configure with "string too
long" errors when generating the MODULES entry for src/Makefile
*) Make sure src/Configure doesn't complain about the old directory
/usr/local/etc/httpd/ when APACI is used. [Lars Eilebrecht]
*) Adding DSO support for the HP/UX platform by emulating the dlopen-style
interface via the similar but proprietary HP/UX shl_xxx-style system
APACI Makefile.tmpl "install" target more robust for sensible UnixWare
- Apache provided general functions (e.g., ap_cpystrn)
- Public API functions (e.g., palloc, bgets)
cross-object usage) but should be (e.g., new_connection)
For backward source compatibility a new header file named compat.h was
dummy.so file (containing dummy references to all global symbols) the
Placing the Apache core code itself into a DSO library named libhttpd.so.
where we perhaps exploit this libhttpd.so mechanism for providing nifty
inside the src subtree (i.e. for non-APACI users). Following GNU Makefile
to the mak/dsp files. [Alexei Kosut]
*) Add documentation file and src/Configuration.tmpl entry for the
*) Now src/Configure uses a fallback strategy for the shared object support
and installation of the support tools from the src/support/ area.
dynamic shared object (DSO) mechanism [mod_so.c]. The trick here is that
Apache C header files (PREFIX/include) and the new APXS tool
(SBINDIR/apxs). The intend is to provide a handy tool for third-party
modules, from trivial ones (single mod_foo.c) to complex ones (like PHP3
*) Modify the log directives in httpd.conf-dist files to use CustomLog
script and a corresponding top-level "Makefile.tmpl" file. The goal is
the old src/Configure stuff in batch and additionally installs the
routines. Use this to replace http_bprintf.c. Add new routines
is necessary on at least Solaris where the /etc/rc?.d scripts
http://.../cgi-bin/...?http%3A%2F%2F... references) [Martin Kraemer]
the mod_proxy.html and corrected the hyperlink to it in the
new_features_1.3.html document. [Ralf S. Engelschall] PR#1348
*) Fix a bug in the src/helpers/fp2rp script and make it a little bit
*) Add the new ApacheBench program "ab" to src/support/: This is derived
*) src/include/ap_config.h now wraps it's #define's with #ifndef/#endif's
*) [PORT] For A/UX change the OS-#define for -DAUX to -DAUX3.
the ugly export kludge, makes the one-liner file mod_mime.h obsolete, and
*) util.c cleanup and speedup. [Dean Gaudet]
modules as shared objects. Especially Solaris 2.x, SunOS 4.1, IRIX and
*) The Configure script now generates src/include/ap_config.h which
"http://host" url is treated as if a similar "Host:" header had been
supplied. This change was made to support future HTTP/1.x protocols
*) API: Cleanup of code in http_vhost.c, and remove vhost matching
*) API: A new source module main/util_uri.c; It contains a routine
user; /* user name, as in http://user:passwd@host:port/ */
password; /* password, as in http://user:passwd@host:port/ */
a username can contain when trying to expand it via /etc/passwd.
*) Hide Proxy-Authorization from CGI/SSI/etc just like Authorization is
reads fail. ["M.D.Parker" <mdpc@netcom.com>] PR#1827
*) Source file dependencies in Makefile.tmpl files throughout the
htdocs/manual/known_client_problems.html are in the default
(like mod_dld for Win32). This replaces mod_dld.c. Use SharedModule
header files are in the src/include directory. The -Imain -Iap
and mod_rewrite) have not been moved to src/include; nor have
calls that use too small an initial guess, see alloc.c.
because the key/value is a constant, or the value has been built
Note that it is easy to get code subtly wrong if you pass a key/value
safe thing to do is to pass key/values which are in the pool of
i.e. if the table is part of a subrequest, a value from the main
usage, enabled by defining POOL_DEBUG. See alloc.c for more details.
*) API: "typedef array_header table" removed from alloc.h, folks should
HAVE_MMAP/SHMGET #defines strictly are informational that the
Unixware 1.x appears to have the same SIGHUP bug as solaris does with
*) PORT: A/UX can handle single-listen accepts without mutex
*) suexec errors now include the errno/description. [Marc Slemko] PR#1543
*) Some const declarations in mod_imap.c that were added for debugging
*) The src/main/*.h header files have had #ifndef wrappers added to
multiple paths (e.g., in .c files as well as other .h files).
src/ap/ap.h, to ease their use in non-httpd applications. [Ken Coar]
set with SetEnv/BrowserMatch and similar directives.
(the Siemens BS2000/OSD family) in the POSIX subsystem
Located in libap.a. [Jim Jagielski]
alloc.c (affects win32 only). [Ben Hyde]
server itself (like the src/support tools). [Ken Coar]
It also wouldn't handle "AddIconByType (TXT,/icons/text.gif text/*"
htdocs/manual/misc/known_client_problems.html#257th-byte) can happen
can be used by items in src/support among other things.
(e.g., <Directory>) where they're invalid. [Martin Kraemer]
for fgetc() and fgets() on SunOS 4.x. [Martin Kraemer, Ben Hyde]
subdirectory htdocs/manual/vhost/. [Lars Eilebrecht <sfx@unix-ag.org>]
[M.D.Parker] PR#1352
*) Inherit a bugfix to fnmatch.c from FreeBSD sources.
breaking on some systems. [Bhaba R.Misra <system@vt.edu>] PR#1368
*) A mild SIGTERM/SIGALRM race condition was eliminated.
*) Warn user that default path has changed if /usr/local/etc/httpd
*) PORT: On AIX 1.x files can't be named '@', fix the proxy cache
Document this a bit more in src/PORTING. [Dean Gaudet] PR#467
*) WIN32: Make index.html and friends work under Win95. [Ben Laurie]
*) Default pathname has been changed everywhere to /usr/local/apache
*) PORT: UnixWare 2.x requires -lgen for syslog.
[M.D.Parker <mdpc@netcom.com>] PR#1284
*) New support tool: src/support/split-logfile, a sample Perl script which
*) Makefile.tmpl was not using $CFLAGS in the link phase.
*) Add debugging code to alloc.c. Defining ALLOC_DEBUG provides a
Purify. See main/alloc.c for more details. [Dean Gaudet]
be used for whatever reason is appropriate (i.e. format() warnings
gcc >= 2.7.x (so that we have fewer support issues with older
Also removed the auto-generated link to www.apache.org that was the
*) suexec.c wouldn't build without -DLOG_EXEC. [Jason A. Dour]
*) Fixed error in proxy_util.c when looping through multiple host IP
buffered writes -- that is, it will buffer up to PIPE_BUF (i.e. 4k)
*) API: New register_other_child() API (see http_main.h) which allows
*) API: New piped_log API (see http_log.h) which implements piped logs,
Some things (like RewriteMaps) were checked/performed even if they
*) Removal of mod_auth_msql.c from the distribution. There are many
http://modules.apache.org/ It would be nice to offer a generic
Makefile on the fly based on Makefile.tmpl and Configuration.
*) support/httpd_monitor is no longer distributed because the
the headers/contents of the request. It does not run during subrequests
USE_xxx_SERIALIZED_ACCEPT in conf.h. xxx is FCNTL for fcntl(),
- Linux 2.x uses flock instead of fcntl
- Solaris 2.x uses pthreads
*) PORT: The semantics of accept/select make it very desirable to use
Modules can be dropped into modules/extra, or in their own
modules/standard. All other source code is in main. OS-specific
match "/home/a/andrew/public_html", now it only matches things
/dev/tty, etc.)
and cidr syntax (i.e. 10.1.0.0/16). PR#762
Apache would omit the chunk header/footer on the next block. Cleaned
e.g. when max_requests_per_child is reached, etc.
*) PORT: QNX mmap() support for faster/more reliable scoreboard handling.
setting. The define MAX_SPAWN_RATE can be used to raise/lower
in a language that by default does buffering (e.g. perl) this
*) PORT: Allow for use of n32bit libraries under IRIX 6.x
*) PORT: Linux: Attempt to detect glibc based systems and include crypt.h
*) PORT: QNX doesn't have initgroups() which support/suexec.c uses.
rect /url.hrm 10 20 30 40
braindead SunOS 4.1.x, allow env variables to be set even on rules with
i.e. now mod_rewrite no longer has a shared copyright. Instead is is
See http_config.h for more details. [Dean Gaudet]
LoadModule/LoadFile directives. Note that module DLLs must be
Module autoindex_module mod_autoindex.o
*) popendir/pclosedir created to properly protect directory scanning.
*) Makefile.nt added - to build all the bits from the command line:
nmake -f Makefile.nt
httpd.h. [Dean Gaudet]
the SFIO library calls sfread/sfwrite if B_SFIO is defined at
*) Turn off chunked encoding after sending terminating chunk/footer
*) SECURITY: When a client connects to a particular port/addr, and
actually be reached via that port/addr. [Ed Korthof <ed@organic.com>]
*) Support virtual hosts with wildcard port and/or multiple ports
and mod_include.c. [Dean Gaudet]
Also removed the auto-generated link to www.apache.org that was the
htdocs/manual/misc/known_client_problems.html#257th-byte) can happen
*) #ifdef wrap a few #defines in httpd.h to make life easier on
*) Fix MPE compilation error in mod_usertrack.c. [Mark Bixby]
should consider comparing against src/modules/standard/mod_include.c
*) suexec.c wouldn't build without -DLOG_EXEC. [Jason A. Dour]
minus WIN32/NT stuff, but plus copyright removement.
under Solaris 2.x (up through 2.5.1). It has been fixed.
lockfile in any location. It previously defaulted to /usr/tmp/htlock.
*) Add a placeholder in modules/Makefile to avoid errors with certain
*) USE_FLOCK_SERIALIZED_ACCEPT is now default for FreeBSD, A/UX, and
redirect flag, e.g. R=permanent, the permanent status was lost.
*) PORT: Support for Maxion/OS SVR4.2 Real Time Unix. [no name given] PR#383
*) PORT: fix problem compiling http_bprintf.c with gcc under SCO
*) Fixed open timestamp fd in proxy_cache.c [Chuck Murcko]
directive and the DEFAULT_TYPE symbol in httpd.h. Changed the value
of DEFAULT_TYPE to match the documented default (text/plain).
*) In mod_proxy.c, check return values for proxy_host2addr() when reading
the connection (e.g., when user presses Stop). Apache will now stop
*) Rearrange Configuration.tmpl so that mod_rewrite has higher priority
htdocs/manual/stopping.html for details on stopping and
*) The default handler now logs invalid methods or URIs (i.e. PUT on an
buffer or write inside buff.c or fread'ing from a CGI's output,
*) Use /bin/sh5 on ULTRIX. [P. Alejandro Lopez-Valencia] PR#369
*) Add UnixWare compile/install instructions. [Chuck Murcko]
*) Add macro for memmove to conf.h for SUNOS4. [Marc Slemko]
*) More signed/unsigned port fixes. [Dean Gaudet]
*) suexec.c doesn't close the log file, allowing CGIs to continue writing
*) Improved generation of modules/Makefile to be more generic for
*) Fixed overlaying of request/sub-request notes and headers in
*) Port to UXP/DS(V20) [Toshiaki Nomura <nom@yk.fujitsu.co.jp>]
*) changed status check mask in proxy_http.c from "HTTP/#.# ### *" to
- Changed send_dir() to remove user/passwd from displayed URL.
select/accept and keep-alive requests, fixed several bugs regarding
*) Tweak byteserving code (e.g. serving PDF files) to work around
Emit Content-Length header when sending multipart/byteranges.
*) Port to HI-UX/WE2. [Nick Maclaren]
regex/regcomp.c since that file also used a NEXT define.
*) Portability Fix: NeXT lacks unistd.h so we wrap it's inclusion
*) Remove mod_fastcgi.c from the distribution. This module appears
continue to be easily available at http://www.fastcgi.com/
*) Fixed bug in modules/Makefile that wouldn't allow building in more
- execution restricted to UID/GID > 100
*) Replace references to make in Makefile.tmpl with $(MAKE).
*) Add ProxyBlock directive w/IP address caching. Add IP address
*) Remove requirement for ResourceConfig/AccessConfig if not using
2. initgroups() on Linux 2.0.x clobbers gr->grid.
*) Reset timeout while reading via get_client_block() in mod_cgi.c
*) Add the ability to pass different Makefile.tmpl files to Configure
*) proxy_http.c bugfixes: [Chuck Murcko]
1) fixes possible NULL pointer reference w/NoCache
*) mod_include.c bugfixes:
*) Added definitions for S_IWGRP and S_IWOTH to conf.h [Ben Laurie]
http_protocol.c [Roy Fielding]
*) Replaced use of index() in mod_expires.c with more appropriate
*) In helpers/CutRule, replaced "cut" invocation with "awk" invocation
*) Updated helpers/GuessOS for ...
SCO UnixWare 2.1.1 (requires a separate set of #defines in conf.h)
and fixed something in helpers/PrintPath [Ben Laurie]
*) Not listed. See <http://www.apache.org/docs/new_features_1_2.html>
*) mod_env now turned on by default in Configuration.tmpl.
b) truncated hostnames/ip address in the logs
*) Not listed. See <http://www.apache.org/docs/new_features_1_1.html>
*) Internal redirects which occur in mod_dir.c now preserve the
*) Fix for POSIX compliance in waiting for processes in alloc.c.
which works similar to PidFile (in httpd.conf) [Rob Hartill]
*) Include sys/resource.h in the correct place for SunOS4 [Sameer Parekh]
*) the pstrcat call in mod_cookies.c didn't have an ending NULL,
*) Add strerror function to util.c for SunOS4 [Randy Terbush]
*) patch to get Apache compiled on UnixWare 2.x, recommended as
a temporary measure, pending rewrite of rfc931.c. [Chuck Murcko]
*) past changes to http_config.c to only use the
*) Remove uses of MAX_STRING_LEN/HUGE_STRING_LEN from several routines.
and the server provider uses relative links; as file.html
*) Not listed. See <http://www.apache.org/docs/new_features_1_0.html>
*) Fixed potential FILE* leak in http_main.c [Ben Laurie]
*) Eliminated some bogus Linux-only #defines in conf.h [Aram Mirzadeh]
*) Nuked bogus #define in httpd.h [David Robinson]
*) gcc -Wall no longer complains about an unused variable when util.c
*) Rationalize handling of BSD in conf.h and elsewhere [Randy Terbush,
*) Suppress -Wall warning by casting const away in util.c [Aram Mirzadeh]
subprocesses, including the SIGTERM/pause/SIGKILL routine, until
causing certain extremely marginal cases (e.g., ScriptAlias of a
*particular* index.html file) to fail. [David Robinson]
*) Cleaned up compiler warning from mod_access.c [Robert Thau]
*) Cleaned up comments in mod_cgi.c [Robert Thau]
"/path/to/some/link/" follows the link. [Thau, Fielding]
*) Doesn't reset DirectoryIndex to 'index.html' when
*) Clarified init code and nuked bogus warning in mod_access.c
*) Corrected several directives in sample srm.conf
*) Fixed ScriptAlias/Alias interaction by moving ScriptAlias handling to
mod_alias.c, merging it almost completely with handling of Alias, and
using a special file created for the purpose in /usr/tmp, and
which try to print out the last-modified date). [Eric Hagberg/Robert
*) <!--exec cgi="/some/uri/here"--> always treats the item named by the
*) POST to CGI works on A/UX [Jim Jagielski]
it seems to work well enough without it (even in a 10 hits/sec
workout), and the overhead for the locking under A/UX is
*) Fixed portability problems with mod_cookies.c [Cliff Skolnick]
*) Further de-Berklize mod_cookies.c; change the bogus #include. [Brian
Behlendorf/Eric Hagberg]
*) More improvements to default Configuration for A/UX [Jim Jagielski]
*) SunOS lib-function prototypes in conf.h conditionalized on __GNUC__,
*) Scoreboard file (/tmp/htstatus.*) no longer publically writable.
properly. (One-line fix to http_protocol.c).
*) Corrected cgi-src/Makefile entry for new imagemap script. [Alexei Kosut]
*) Nuked Shambhala name from src/README; had already cleaned it out
*) Set config file locations properly if not set in httpd.conf
*) Fixed mod_imap.c --- relative paths with base_uri referer don't
be nice if mod_dir.c was robust enough to handle that, but for now,
/tmp/htstatus.*, on which each process has an independent file
*) Moved FCNTL_SERIALIZED_ACCEPT defines into conf.h (that's what
*) Incidental code cleanups in http_main.c --- stop dragging
*) Fixed auth_name-related typos in http_core.c [Brian Behlendorf]
Also, fixed auth typo in http_protocol.c unmasked by this fix.
*) Reordered modules in modules.c so that Redirect takes priority
the same SIGTERM/pause/SIGKILL routine used to ding an errant CGI
*) Fixed silly typo in http_main.c which was suddenly fatal in HP-UX.
*) mod_core.c --- default_type returns DEFAULT_TYPE (the compile-time
memory area every time). Fix is in mod_dir.c. [Paul Sutton]
*) Changes to http_main.c --- root server no longer plays silly
*) mod_dir.c bug fixes: ReadmeName and HeaderName
*) http_request.c now calls unescape_url() more places where it
*) Generalized cleanup interface in alloc.c --- any function can be
registered with alloc.c as a cleanup for a resource pool;
*) More changes in alloc.c --- new cleanup_for_exec() function,
registered with the alloc.c machinery before the server exec()s a
*) Fixed basic thinkos in mod_dbm_auth.c [rst, reported by Mark Cox]
in alloc.c [rst]