Develop and Download Open Source Software

Browse Subversion Repository

Contents of /trunk/CollabNetSVN/httpd/CHANGES.txt

Parent Directory Parent Directory | Revision Log Revision Log


Revision 1 - (hide annotations) (download)
Sat Sep 4 13:42:09 2010 UTC (2 years, 8 months ago) by tag
File MIME type: text/plain
File size: 104339 byte(s)
初期バージョン(Trac Lightning 2.5.2)
1 tag 1  -*- coding: utf-8 -*-
2     Changes with Apache 2.2.14
3    
4     *) SECURITY: CVE-2009-2699 (cve.mitre.org)
5     Fixed in APR 1.3.9. Faulty error handling in the Solaris pollset support
6     (Event Port backend) which could trigger hangs in the prefork and event
7     MPMs on that platform. PR 47645. [Jeff Trawick]
8    
9     *) SECURITY: CVE-2009-3095 (cve.mitre.org)
10     mod_proxy_ftp: sanity check authn credentials.
11     [Stefan Fritsch <sf fritsch.de>, Joe Orton]
12    
13     *) SECURITY: CVE-2009-3094 (cve.mitre.org)
14     mod_proxy_ftp: NULL pointer dereference on error paths.
15     [Stefan Fritsch <sf fritsch.de>, Joe Orton]
16    
17     *) mod_proxy_scgi: Backport from trunk. [André Malo]
18    
19     *) mod_ldap: Don't try to resolve file-based user ids to a DN when AuthLDAPURL
20     has been defined at a very high level. PR 45946. [Eric Covener]
21    
22     *) htcacheclean: 19 ways to fail, 1 error message. Fixed. [Graham Leggett]
23    
24     *) mod_ldap: Bring the LDAPCacheEntries and LDAPOpCacheEntries
25     usage() in synch with the manual and the implementation (0 and -1
26     both disable the cache). [Eric Covener]
27    
28     *) mod_ssl: The error message when SSLCertificateFile is missing should
29     at least give the name or position of the problematic virtual host
30     definition. [Stefan Fritsch sf sfritsch.de]
31    
32     *) htdbm: Fix possible buffer overflow if dbm database has very
33     long values. PR 30586 [Dan Poirier]
34    
35     *) Add support for HTTP PUT to ab. [Jeff Barnes <jbarnesweb yahoo.com>]
36    
37     *) mod_ssl: Fix SSL_*_DN_UID variables to use the 'userID' attribute
38     type. PR 45107. [Michael Ströder <michael stroeder.com>,
39     Peter Sylvester <peter.sylvester edelweb.fr>]
40    
41     *) mod_cache: Add CacheIgnoreURLSessionIdentifiers directive to ignore
42     defined session identifiers encoded in the URL when caching.
43     [Ruediger Pluem]
44    
45     *) mod_mem_cache: fix seg fault under load due to pool concurrency problem
46     PR: 47672 [Dan Poirier <poirier pobox.com>]
47    
48     *) mod_autoindex: Correctly create an empty cell if the description
49     for a file is missing. PR 47682 [Peter Poeml <poeml suse.de>]
50    
51     Changes with Apache 2.2.13
52    
53     *) SECURITY: CVE-2009-2412 (cve.mitre.org)
54     Distributed with APR 1.3.8 and APR-util 1.3.9 to fix potential overflow
55     in pools and rmm, where size alignment was taking place.
56     [Matt Lewis <mattlewis@google.com>, Sander Striker]
57    
58     *) mod_ssl, ab: improve compatibility with OpenSSL 1.0.0 betas. Report
59     warnings compiling mod_ssl against OpenSSL to the httpd developers.
60     [Guenter Knauf]
61    
62     *) mod_cgid: Do not add an empty argument when calling the CGI script.
63     PR 46380 [Ruediger Pluem]
64    
65     *) Fix potential segfaults with use of the legacy ap_rputs() etc
66     interfaces, in cases where an output filter fails. PR 36780.
67     [Joe Orton]
68    
69     Changes with Apache 2.2.12
70    
71     *) SECURITY: CVE-2009-1891 (cve.mitre.org)
72     Fix a potential Denial-of-Service attack against mod_deflate or other
73     modules, by forcing the server to consume CPU time in compressing a
74     large file after a client disconnects. PR 39605.
75     [Joe Orton, Ruediger Pluem]
76    
77     *) SECURITY: CVE-2009-1195 (cve.mitre.org)
78     Prevent the "Includes" Option from being enabled in an .htaccess
79     file if the AllowOverride restrictions do not permit it.
80     [Jonathan Peatfield <j.s.peatfield damtp.cam.ac.uk>, Joe Orton,
81     Ruediger Pluem, Jeff Trawick]
82    
83     *) SECURITY: CVE-2009-1890 (cve.mitre.org)
84     Fix a potential Denial-of-Service attack against mod_proxy in a
85     reverse proxy configuration, where a remote attacker can force a
86     proxy process to consume CPU time indefinitely. [Nick Kew, Joe Orton]
87    
88     *) SECURITY: CVE-2009-1191 (cve.mitre.org)
89     mod_proxy_ajp: Avoid delivering content from a previous request which
90     failed to send a request body. PR 46949 [Ruediger Pluem]
91    
92     *) SECURITY: CVE-2009-0023, CVE-2009-1955, CVE-2009-1956 (cve.mitre.org)
93     The bundled copy of the APR-util library has been updated, fixing three
94     different security issues which may affect particular configurations
95     and third-party modules.
96    
97     *) mod_include: fix potential segfault when handling back references
98     on an empty SSI variable. [Ruediger Pluem, Lars Eilebrecht, Nick Kew]
99    
100     *) mod_alias: check sanity in Redirect arguments.
101     PR 44729 [Sönke Tesch <st kino-fahrplan.de>, Jim Jagielski]
102    
103     *) mod_proxy_http: fix Host: header for literal IPv6 addresses.
104     PR 47177 [Carlos Garcia Braschi <cgbraschi gmail.com>]
105    
106     *) mod_rewrite: Remove locking for writing to the rewritelog.
107     PR 46942
108    
109     *) mod_alias: Ensure Redirect emits HTTP-compliant URLs.
110     PR 44020
111    
112     *) mod_proxy_http: fix case sensitivity checking transfer encoding
113     PR 47383 [Ryuzo Yamamoto <ryuzo.yamamoto gmail.com>]
114    
115     *) mod_rewrite: Fix the error string returned by RewriteRule.
116     RewriteRule returned "RewriteCond: bad flag delimiters" when the 3rd
117     argument of RewriteRule was not started with "[" or not ended with "]".
118     PR 45082 [Vitaly Polonetsky <m_vitaly topixoft.com>]
119    
120     *) mod_proxy: Complete ProxyPassReverse to handle balancer URL's. Given;
121     BalancerMember balancer://alias http://example.com/foo
122     ProxyPassReverse /bash balancer://alias/bar
123     backend url http://example.com/foo/bar/that is now translated /bash/that
124     [William Rowe]
125    
126     *) New piped log syntax: Use "||process args" to launch the given process
127     without invoking the shell/command interpreter. Use "|$command line"
128     (the default behavior of "|command line" in 2.2) to invoke using shell,
129     consuming an additional shell process for the lifetime of the logging
130     pipe program but granting additional process invocation flexibility.
131     [William Rowe]
132    
133     *) mod_ssl: Add server name indication support (RFC 4366) and better
134     support for name based virtual hosts with SSL. PR 34607
135     [Peter Sylvester <peter.sylvester edelweb.fr>,
136     Kaspar Brand <asfbugz velox.ch>, Guenter Knauf, Joe Orton,
137     Ruediger Pluem]
138    
139     *) mod_negotiation: Escape pathes of filenames in 406 responses to avoid
140     HTML injections and HTTP response splitting. PR 46837.
141     [Geoff Keating <geoffk apple.com>]
142    
143     *) mod_include: Prevent a case of SSI timefmt-smashing with filter chains
144     including multiple INCLUDES filters. PR 39369 [Joe Orton]
145    
146     *) mod_rewrite: When evaluating a proxy rule in directory context, do
147     escape the filename by default. PR 46428 [Joe Orton]
148    
149     *) mod_proxy_ajp: Check more strictly that the backend follows the AJP
150     protocol. [Mladen Turk]
151    
152     *) mod_ssl: Add SSLProxyCheckPeerExpire and SSLProxyCheckPeerCN directives
153     to enable stricter checking of remote server certificates.
154     [Ruediger Pluem]
155    
156     *) mod_substitute: Fix a memory leak. PR 44948
157     [Dan Poirier <poirier pobox.com>]
158    
159     *) mod_proxy_ajp: Forward remote port information by default.
160     [Rainer Jung]
161    
162     *) mod_disk_cache/mod_mem_cache: Fix handling of CacheIgnoreHeaders
163     directive to correctly remove headers before storing them.
164     [Lars Eilebrecht]
165    
166     *) mod_deflate: revert changes in 2.2.8 that caused an invalid
167     etag to be emitted for on-the-fly gzip content-encoding.
168     PR 39727 will require larger fixes and this fix was far more
169     harmful than the original code. PR 45023. [Roy T. Fielding]
170    
171     *) mod_disk_cache: The module now turns off sendfile support if
172     'EnableSendfile off' is defined globally. PR 41218.
173     [Lars Eilebrecht, Issac Goldstand]
174    
175     *) prefork: Fix child process hang during graceful restart/stop in
176     configurations with multiple listening sockets. PR 42829. [Joe Orton,
177     Jeff Trawick]
178    
179     *) mod_ssl: Add SSLRenegBufferSize directive to allow changing the
180     size of the buffer used for the request-body where necessary
181     during a per-dir renegotiation. PR 39243. [Joe Orton]
182    
183     *) mod_rewrite: Introduce DiscardPathInfo|DPI flag to stop the troublesome
184     way that per-directory rewrites append the previous notion of PATH_INFO
185     to each substitution before evaluating subsequent rules.
186     PR38642 [Eric Covener]
187    
188     *) mod_authnz_ldap: Reduce number of initialization debug messages and make
189     information more clear. PR 46342 [Dan Poirier]
190    
191     *) mod_cache: Introduce 'no-cache' per-request environment variable
192     to prevent the saving of an otherwise cacheable response.
193     [Eric Covener]
194    
195     *) core: Translate the status line to ASCII on EBCDIC platforms in
196     ap_send_interim_response() and for locally generated "100 Continue"
197     responses. [Eric Covener]
198    
199     *) CGI: return 504 (Gateway timeout) rather than 500 when a script
200     times out before returning status line/headers.
201     PR 42190 [Nick Kew]
202    
203     *) prefork: Log an error instead of segfaulting when child startup fails
204     due to pollset creation failures. PR 46467. [Jeff Trawick]
205    
206     *) mod_ext_filter: fix error handling when the filter prog fails to start,
207     and introduce an onfail configuration option to abort the request
208     or to remove the broken filter and continue.
209     PR 41120 [Nick Kew]
210    
211     *) mod_include: support generating non-ASCII characters as entities in SSI
212     PR 25202 [Nick Kew]
213    
214     *) core/utils: Enhance ap_escape_html API to support escaping non-ASCII chars
215     [Nick Kew]
216    
217     *) mod_rewrite: fix "B" flag breakage by reverting r589343
218     PR 45529 [Bob Ionescu <bobsiegen googlemail.com>]
219    
220     *) mod_cgid: fix segfault problem on solaris.
221     PR 39332 [Masaoki Kobayashi <masaoki techfirm.co.jp>, Jeff Trawick]
222    
223     *) mod_ldap: Avoid a segfault when result->rc is checked in uldap_connection_init
224     when result is NULL. This could happen if LDAP initialization failed.
225     PR 45994. [Dan Poirier <poirier pobox.com>]
226    
227     *) Set Listen protocol to "https" if port is set to 443 and no proto is specified
228     (as documented but not implemented). PR 46066 [Dan Poirier <poirier pobox.com>]
229    
230     *) mod_cache: Correctly save Content-Encoding of cachable entity. PR 46401
231     [Dan Poirier <poirier pobox.com>]
232    
233     *) Output -M and -S dumps (modules and vhosts) to stdout instead of stderr.
234     PR 42571 and PR 44266 (dup). [Dan Poirier <poirier pobox.com>]
235    
236     *) mod_cache: When an explicit Expires or Cache-Control header is set, cache
237     normally non-cacheable response statuses. PR 46346.
238     [Alex Polvi <alex polvi.net>]
239    
240     Changes with Apache 2.2.11
241    
242     *) core: When the ap_http_header_filter processes an error bucket, cleanup
243     the passed brigade before returning AP_FILTER_ERROR down the filter
244     chain. This unambiguously ensures the same error bucket isn't revisited
245     [Ruediger Pluem]
246    
247     *) core: Error responses set by filters were being coerced into 500 errors,
248     sometimes appended to the original error response. Log entry of:
249     'Handler for (null) returned invalid result code -3'
250     [Eric Covener]
251    
252     *) configure: Don't reject libtool 2.x
253     PR 44817 [Arfrever Frehtes Taifersar Arahesis <Arfrever.FTA gmail.com>]
254    
255     *) mod_autoindex: add configuration option to insert string
256     in HTML HEAD (IndexHeadInsert). [Nick Kew]
257    
258     *) Add new LogFormat parameter, %k, which logs the number of
259     keepalive requests on this connection for this request.
260     PR 45762 [Dan Poirier <poirier pobox.com>, Jim Jagielski]
261    
262     *) Export and install the mod_rewrite.h header to ensure the optional
263     rewrite_mapfunc_t and ap_register_rewrite_mapfunc functions are
264     available to third party modules. [Graham Leggett]
265    
266     *) mod_cache: Convert age of cached object to seconds before comparing it to
267     age supplied by the request when checking whether to send a Warning
268     header for a stale response. PR 39713. [Owen Taylor <otaylor redhat.com>]
269    
270     *) Build: Correctly set SSL_LIBS during openssl detection if pkgconfig is
271     not available. PR 46018 [Ruediger Pluem]
272    
273     *) mod_proxy_ajp: Do not fail if response data is sent before all request
274     data is read. PR 45911 [Ruediger Pluem]
275    
276     *) mod_proxy_balancer: Add in forced recovery for balancer members if
277     all are in error state. [Mladen Turk]
278    
279     *) mod_proxy: Prevent segmentation faults by correctly adjusting the
280     lifetime of the buckets read from the proxy backend. PR 45792
281     [Ruediger Pluem]
282    
283     *) mod_expires: Do not sets negative max-age / Expires header in the past.
284     PR 39774 [Jim Jagielski]
285    
286     *) mod_info: Was displaying the wrong value for the KeepAliveTimeout
287     value. [Jim Jagielski]
288    
289     *) mod_proxy_ajp: Fix wrongly formatted requests where client
290     sets Content-Length header, but doesn't provide a body.
291     Servlet container always expects that next packet is
292     body whenever C-L is present in the headers. This can lead
293     to wrong interpretation of the packets. In this case
294     send the empty body packet, so container can deal with
295     that. [Mladen Turk]
296    
297     *) core: Add ap_timeout_parameter_parse to public API. [Ruediger Pluem]
298    
299     *) mod_proxy: Add the possibility to set the worker parameters
300     connectiontimeout and ping in milliseconds. [Ruediger Pluem]
301    
302     *) Worker MPM: Crosscheck that idle workers are still available before using
303     them and thus preventing an overflow of the worker queue which causes
304     a SegFault. PR 45605 [Denis Ustimenko <denusk gmail.com>]
305    
306     *) Windows: Always build the odbc dbd driver on windows, to be consistent
307     with the apr-util default. [Tom Donovan]
308    
309     Changes with Apache 2.2.10
310    
311     *) SECURITY: CVE-2008-2939 (cve.mitre.org)
312     mod_proxy_ftp: Prevent XSS attacks when using wildcards in the path of
313     the FTP URL. Discovered by Marc Bevand of Rapid7. [Ruediger Pluem]
314    
315     *) Allow for smax to be 0 for balancer members so that all idle
316     connections are able to be dropped should they exceed ttl.
317     PR 43371 [Phil Endecott <spam_from_apache_bugzilla chezphil.org>,
318     Jim Jagielski]
319    
320     *) mod_proxy_http: Don't trigger a retry by the client if a failure to
321     read the response line was the result of a timeout.
322     [Adam Woodworth <mirkperl gmail.com>]
323    
324     *) Support chroot on Unix-family platforms
325     PR 43596 [Dimitar Pashev <mitko banksoft-bg.com>]
326    
327     *) mod_ssl: implement dynamic mutex callbacks for the benefit of
328     OpenSSL. [Sander Temme]
329    
330     *) mod_proxy_balancer: Add 'bybusyness' load balance method.
331     [Joel Gluth <joelgluth yahoo.com.au>, Jim Jagielski]
332    
333     *) mod_authn_alias: Detect during startup when AuthDigestProvider
334     is configured to use an incompatible provider via AuthnProviderAlias.
335     PR 45196 [Eric Covener]
336    
337     *) mod_proxy: Add 'scolonpathdelim' parameter to allow for ';' to also be
338     used as a session path separator/delim PR 45158. [Jim Jagielski]
339    
340     *) mod_charset_lite: Avoid dropping error responses by handling meta buckets
341     correctly. PR 45687 [Dan Poirier <poirier pobox.com>]
342    
343     *) mod_proxy_http: Introduce environment variable proxy-initial-not-pooled to
344     avoid reusing pooled connections if the client connection is an initial
345     connection. PR 37770. [Ruediger Pluem]
346    
347     *) mod_rewrite: Allow Cookie option to set secure and HttpOnly flags.
348     PR 44799 [Christian Wenz <christian wenz.org>]
349    
350     *) mod_ssl: Rewrite shmcb to avoid memory alignment issues. PR 42101.
351     [Geoff Thorpe]
352    
353     *) mod_proxy: Add connectiontimeout parameter for proxy workers in order to
354     be able to set the timeout for connecting to the backend separately.
355     PR 45445. [Ruediger Pluem, rahul <rahul sun.com>]
356    
357     *) mod_dav_fs: Retrieve minimal system information about directory
358     entries when walking a DAV fs, resolving a performance degradation on
359     Windows. PR 45464. [Joe Orton, Jeff Trawick]
360    
361     *) mod_cgid: Pass along empty command line arguments from an ISINDEX
362     query that has consecutive '+' characters in the QUERY_STRING,
363     matching the behavior of mod_cgi.
364     [Eric Covener]
365    
366     *) mod_headers: Prevent Header edit from processing only the first header
367     of possibly multiple headers with the same name and deleting the
368     remaining ones. PR 45333. [Ruediger Pluem]
369    
370     *) mod_proxy_balancer: Move nonce field in the balancer manager page inside
371     the html form where it belongs. PR 45578. [Ruediger Pluem]
372    
373     *) mod_proxy_http: Do not forward requests with 'Expect: 100-continue' to
374     known HTTP/1.0 servers. Return 'Expectation failed' (417) instead.
375     [Ruediger Pluem]
376    
377     *) mod_rewrite: Preserve the query string when [proxy,noescape]. PR 45247.
378     [Tom Donovan]
379    
380     Changes with Apache 2.2.9
381    
382     *) SECURITY: CVE-2008-2364 (cve.mitre.org)
383     mod_proxy_http: Better handling of excessive interim responses
384     from origin server to prevent potential denial of service and high
385     memory usage. Reported by Ryujiro Shibuya. [Ruediger Pluem,
386     Joe Orton, Jim Jagielski]
387    
388     *) SECURITY: CVE-2007-6420 (cve.mitre.org)
389     mod_proxy_balancer: Prevent CSRF attacks against the balancer-manager
390     interface. [Joe Orton]
391    
392     *) core: Fix address-in-use startup failure on some platforms caused
393     by creating an IPv4 listener which overlaps with an existing IPv6
394     listener. [Jeff Trawick]
395    
396     *) mod_proxy: Make all proxy modules nocanon aware and do not add the
397     query string again in this case. PR 44803.
398     [Jim Jagielski, Ruediger Pluem]
399    
400     *) mod_unique_id: Fix timestamp value in UNIQUE_ID.
401     PR 37064 [Kobayashi <kobayashi firstserver.co.jp>]
402    
403     *) htpasswd: Fix salt generation weakness. PR 31440
404     [Andreas Krennmair <ak synflood.at>, Peter Watkins <peterw tux.org>,
405     Paul Querna]
406    
407     *) core: Add the filename of the configuration file to the warning message
408     about the useless use of AllowOverride. PR 39992.
409     [Darryl Miles <darryl darrylmiles.org>]
410    
411     *) scoreboard: Remove unused proxy load balancer elements from scoreboard
412     image (not scoreboard memory itself). [Chris Darroch]
413    
414     *) mod_proxy: Support environment variable interpolation in reverse
415     proxying directives. [Nick Kew]
416    
417     *) suexec: When group is given as a numeric gid, validate it by looking up
418     the actual group name such that the name can be used in log entries.
419     PR 7862 [<y-koga apache.or.jp>, Leif W <warp-9.9 usa.net>]
420    
421     *) Fix garbled TRACE response on EBCDIC platforms.
422     [David Jones <oscaremma gmail.com>]
423    
424     *) ab: Include <limits.h> earlier if available since we may need
425     INT_MAX (defined there on Windows) for the definition of MAX_REQUESTS.
426     PR 45024 [Ruediger Pluem]
427    
428     *) ab: Improve client performance by clearing connection pool instead
429     of destroying it. PR 40054 [Brad Roberts <braddr puremagic.com>]
430    
431     *) ab: Don't stop sending a request if EAGAIN is returned, which
432     will only happen if both the write and subsequent wait are
433     returning EAGAIN, and count posted bytes correctly when the initial
434     write of a request is not complete. PR 10038, 38861, 39679
435     [Patrick McManus <mcmanus datapower.com>,
436     Stefan Fleiter <stefan.fleiter web.de>,
437     Davanum Srinivas, Roy T. Fielding]
438    
439     *) ab: Overhaul stats collection and reporting to avoid integer
440     truncation and time divisions within the test loop, retain
441     native time resolution until output, remove unused data,
442     consistently round milliseconds, and generally avoid losing
443     accuracy of calculation due to type casts. PR 44878, 44931.
444     [Roy T. Fielding]
445    
446     *) ab: Add -r option to continue after socket receive errors.
447     [Filip Hanik <devlist hanik.com>]
448    
449     *) core: Do not allow Options ALL if not all options are allowed to be
450     overwritten. PR 44262 [Michał Grzędzicki <lazy iq.pl>]
451    
452     *) mod_cache: Handle If-Range correctly if the cached resource was stale.
453     PR 44579 [Ruediger Pluem]
454    
455     *) mod_proxy: Do not try a direct connection if the connection via a
456     remote proxy failed before and the request has a request body.
457     [Ruediger Pluem]
458    
459     *) mod_proxy_ajp: Do not retry request in the case that we either failed to
460     sent a part of the request body or if the request is not idempotent.
461     PR 44334 [Ruediger Pluem]
462    
463     *) mod_rewrite: Initialize hash needed by ap_register_rewrite_mapfunc early
464     enough. PR 44641 [Daniel Lescohier <daniel.lescohier cnet.com>]
465    
466     *) mod_dav: Return "method not allowed" if the destination URI of a WebDAV
467     copy / move operation is no DAV resource. PR 44734 [Ruediger Pluem]
468    
469     *) http_filters: Don't return 100-continue on redirects. PR 43711
470     [Ruediger Pluem]
471    
472     *) mod_ssl: Fix a memory leak with connections that have zlib compression
473     turned on. PR 44975 [Joe Orton, Amund Elstad <Amund.Elstad ist.com>,
474     Dr Stephen Henson <steve openssl.org>]
475    
476     *) mod_proxy: Trigger a retry by the client in the case we fail to read the
477     response line from the backend by closing the connection to the client.
478     PR 37770 [Ruediger Pluem]
479    
480     *) gen_test_char: add double-quote to the list of T_HTTP_TOKEN_STOP.
481     PR 9727 [Ville Skytt <ville.skytta iki.fi>]
482    
483     *) core: reinstate location walk to fix config for subrequests
484     PR 41960 [Jose Kahan <jose w3.org>]
485    
486     *) rotatelogs: Log the current file size and error code/description
487     when failing to write to the log file. [Jeff Trawick]
488    
489     *) rotatelogs: Added '-f' option to force rotatelogs to create the
490     logfile as soon as started, and not wait until it reads the
491     first entry. [Jim Jagielski]
492    
493     *) rotatelogs: Don't leak memory when reopening the logfile.
494     PR 40183 [Ruediger Pluem, Takashi Sato <serai lans-tv.com>]
495    
496     *) rotatelogs: Improve atomicity when using -l and cleaup code.
497     PR 44004 [Rainer Jung]
498    
499     *) mod_authn_dbd: Disambiguate and tidy database authentication
500     error messages. PR 43210. [Chris Darroch, Phil Endecott
501     <spam_from_apache_bugzilla chezphil.org>]
502    
503     *) mod_headers: Add 'merge' option to avoid duplicate values within
504     the same header. [Chris Darroch]
505    
506     *) mod_cgid: Explicitly set permissions of the socket (ScriptSock) shared by
507     mod_cgid and request processing threads, for OS'es such as HPUX and AIX
508     that do not use umask for AF_UNIX socket permissions.
509     [Eric Covener, Jeff Trawick]
510    
511     *) mod_cgid: Don't try to restart the daemon if it fails to initialize
512     the socket. [Jeff Trawick]
513    
514     *) mod_log_config: Add format options for %p so that the actual local
515     or remote port can be logged. PR 43415. [Adam Hasselbalch Hansen
516     <ahh@one.com>, Ruediger Pluem, Jeff Trawick]
517    
518     *) Added 'disablereuse' option for ProxyPass which, essentially,
519     disables connection pooling for the backend servers.
520     [Jim Jagielski]
521    
522     *) mod_speling: remove regression from 1.3/2.0 behavior and
523     drop dependency between mod_speling and AcceptPathInfo.
524     PR 43562 [Jose Kahan <jose w3.org>]
525    
526     *) mod_substitute: The default is now flattening the buckets after
527     each substitution. The newly added 'q' flag allows for the
528     quicker, more efficient bucket-splitting if the user so
529     desires. [Jim Jagielski]
530    
531     *) http_filters: Don't spin if get an error when reading the
532     next chunk. PR 44381 [Ruediger Pluem]
533    
534     *) ab: Do not try to read non existing response bodies of HEAD requests.
535     PR 34275 [Takashi Sato <serai lans-tv.com>]
536    
537     *) ab: Use a 64 bit unsigned int instead of a signed long to count the
538     bytes transferred to avoid integer overflows. PR 44346 [Ruediger Pluem]
539    
540     *) ProxyPassReverse is now balancer aware. [Jim Jagielski]
541    
542     *) mod_include: Correctly handle SSI directives split over multiple filter
543     passes. PR 44447 [Harald Niesche <harald brokenerror.de>]
544    
545     *) mod_cache: Revalidate cache entities which have Cache-Control: no-cache
546     set in their response headers. PR 44511 [Ruediger Pluem]
547    
548     *) mod_rewrite: Check all files used by DBM maps for freshness, mod_rewrite
549     didn't pick up on updated sdbm maps due to this.
550     PR41190 [Niklas Edmundsson]
551    
552     *) mod_proxy: Lower memory consumption for short lived connections.
553     PR 44026. [Ruediger Pluem]
554    
555     *) mod_proxy: Keep connections to the backend persistent in the HTTPS case.
556     [Ruediger Pluem]
557    
558     *) Don't add bogus duplicate Content-Language entries
559     PR 11035 [Davi Arnaut]
560    
561     *) Worker / Event MPM: Fix race condition in pool recycling that leads to
562     segmentation faults under load. PR 44402
563     [Basant Kumar Kukreja <basant.kukreja sun.com>]
564    
565     *) mod_proxy_ftp: Fix base for directory listings.
566     PR 27834 [Nick Kew]
567    
568     *) mod_logio: Provide optional function to allow modules to adjust the
569     bytes_in count [Eric Covener]
570    
571     *) http_filters: Don't return 100-continue on client error
572     PR 43711 [Chetan Reddy <chetanreddy gmail.com>]
573    
574     *) mod_charset_lite: Add TranslateAllMimeTypes sub-option to
575     CharsetOptions, allowing the administrator to skip the
576     mimetype checking that precedes translation.
577     PR 44458 [Eric Covener]
578    
579     *) mod_proxy_http: Fix processing of chunked responses if
580     Connection: Transfer-Encoding is set in the response of the proxied
581     system. PR 44311 [Ruediger Pluem]
582    
583     *) mod_proxy_http: Return HTTP status codes instead of apr_status_t
584     values for errors encountered while forwarding the request body
585     PR 44165 [Eric Covener]
586    
587     *) mod_rewrite: Don't canonicalise URLs with [P,NE]
588     PR 43319 [<rahul sun.com>]
589    
590     Changes with Apache 2.2.8
591    
592     *) core: Fix regression in 2.2.7 in chunk filtering with massively
593     chunked requests. [Ruediger Pluem, Nick Kew]
594    
595     *) winnt_mpm: Resolve modperl issues by redirecting console mode stdout
596     to /Device/Nul as the server is starting up, mirroring unix MPM's.
597     PR: 43534 [Tom Donovan <Tom.Donovan acm.org>, William Rowe]
598    
599     *) winnt_mpm: Restore Win32DisableAcceptEx On directive and Win9x platform
600     by recreating the bucket allocator each time the trans pool is cleared.
601     PR: 11427 #16 (follow-on) [Tom Donovan <Tom.Donovan acm.org>]
602    
603     *) mod_dav: Fix evaluation of If-Match * and If-None-Match * conditionals.
604     PR 38034 [Paritosh Shah <shah.paritosh gmail.com>]
605    
606     Changes with Apache 2.2.7 (not released)
607    
608     *) SECURITY: CVE-2007-6421 (cve.mitre.org)
609     mod_proxy_balancer: Correctly escape the worker route and the worker
610     redirect string in the HTML output of the balancer manager.
611     Reported by SecurityReason. [Ruediger Pluem]
612    
613     *) SECURITY: CVE-2007-6422 (cve.mitre.org)
614     Prevent crash in balancer manager if invalid balancer name is passed
615     as parameter. Reported by SecurityReason. [Ruediger Pluem]
616    
617     *) SECURITY: CVE-2007-6388 (cve.mitre.org)
618     mod_status: Ensure refresh parameter is numeric to prevent
619     a possible XSS attack caused by redirecting to other URLs.
620     Reported by SecurityReason. [Mark Cox, Joe Orton]
621    
622     *) SECURITY: CVE-2007-5000 (cve.mitre.org)
623     mod_imagemap: Fix a cross-site scripting issue. Reported by JPCERT.
624     [Joe Orton]
625    
626     *) SECURITY: CVE-2008-0005 (cve.mitre.org)
627     Introduce the ProxyFtpDirCharset directive, allowing the administrator
628     to identify a default, or specific servers or paths which list their
629     contents in other-than ISO-8859-1 charset (e.g. utf-8). [Ruediger Pluem]
630    
631     *) mod_dav: Adjust etag generation to produce identical results on 32-bit
632     and 64-bit platforms and avoid a regression with conditional PUT's on lock
633     and etag. PR 44152.
634     [Michael Clark <michael metaparadigm.com>, Ruediger Pluem]
635    
636     *) mod_ssl: Fix handling of the buffered request body during a per-location
637     renegotiation, when an internal redirect occurs. PR 43738.
638     [Joe Orton]
639    
640     *) mod_ldap: Try to establish a new backend LDAP connection when the
641     Microsoft LDAP client library returns LDAP_UNAVAILABLE, e.g. after the
642     LDAP server has closed the connection due to a timeout.
643     PR 39095 [Eric Covener]
644    
645     *) log.c: Ensure Win32 resurrects its lost robust logger processes.
646     [William Rowe]
647    
648     *) mod_disk_cache: Delete temporary files if they cannot be renamed to their
649     final name. [Davi Arnaut <davi haxent.com.br>]
650    
651     *) Add explicit charset to the output of various modules to work around
652     possible cross-site scripting flaws affecting web browsers that do not
653     derive the response character set as required by RFC2616. One of these
654     reported by SecurityReason [Joe Orton]
655    
656     *) http_protocol: Escape request method in 405 error reporting.
657     This has no security impact since the browser cannot be tricked
658     into sending arbitrary method strings. [Jeff Trawick]
659    
660     *) mod_ssl: Fix SSL client certificate extensions parsing bug. PR 44073.
661     [yl <yl bee-ware.net>]
662    
663     *) mod_proxy_ajp: Use 64K as maximum AJP packet size. This is the maximum
664     length we can squeeze inside the AJP message packet.
665     [Mladen Turk]
666    
667     *) core: Lower memory consumption of ap_r* functions by reusing the brigade
668     instead of recreating it during each filter pass.
669     [Stefan Fritsch <sf sfritsch.de>]
670    
671     *) core: Lower memory consumption in case that flush buckets are passed thru
672     the chunk filter as last bucket of a brigade. PR 23567.
673     [Stefan Fritsch <sf sfritsch.de>]
674    
675     *) core: Fix broken chunk filtering that causes all non blocking reads to be
676     converted into blocking reads. PR 19954, 41056.
677     [Jean-Frederic Clere, Jim Jagielski]
678    
679     *) mod_rewrite: Add the novary flag to RewriteCond.
680     [Ruediger Pluem]
681    
682     *) core: Change etag generation to produce identical results on
683     32-bit and 64-bit platforms. PR 40064. [Joe Orton]
684    
685     *) http_protocol: Escape request method in 413 error reporting.
686     Determined to be not generally exploitable, but a flaw in any case.
687     PR 44014 [Victor Stinner <victor.stinner inl.fr>]
688    
689     *) mod_filter: Don't segfault on (unsupported) chained FilterProvider usage.
690     PR 43956 [Nick Kew, Ruediger Pluem]
691    
692     *) core: Handle unrecognised transfer-encodings.
693     PR 43882 [Nick Kew, Jeff Trawick]
694    
695     *) mod_include: Add an "if" directive syntax to test whether an URL
696     is accessible, and if so, conditionally display content. This
697     allows a webmaster to hide a link to a private page when the user
698     has no access to that page. [Graham Leggett]
699    
700     *) Various code cleanups. PR 38699, 39518, 42005, 42006, 42007, 42008, 42009
701     [Christophe Jaillet <christophe.jaillet wanadoo.fr>]
702    
703     *) mod_proxy_http: Correctly forward unexpected interim (HTTP 1xx)
704     responses from the backend according to RFC2616. But make it
705     configurable in case something breaks on it.
706     PR 16518 [Nick Kew]
707    
708     *) mod_substitute: Added a new output filter, which performs
709     inline response content pattern matching (including regex)
710     and substitution. [Jim Jagielski, Ruediger Pluem]
711    
712     *) rotatelogs: Change command-line parsing to report more types
713     of errors. Allow local timestamps to be used when rotating based
714     on file size. [Jeff Trawick]
715    
716     *) mod_proxy: Canonicalisation improvements. Add "nocanon" keyword to
717     ProxyPass, to suppress URI-canonicalisation in a reverse proxy. Also,
718     don't escape/unescape forward-proxied URLs.
719     PR 41798, 42592 [Nick Kew, Ruediger Pluem, Roy Fielding, Jim Jagielski]
720    
721     *) mod_status: Add SeeRequestTail directive, which determines if
722     ExtendedStatus displays the 1st 63 characters of the request
723     or the last 63. Useful for those requests with large string
724     lengths and which only vary with the last several characters.
725     [Jim Jagielski]
726    
727     *) mod_ssl: Prevent memory corruption of version string.
728     PR 43865, 43334 [William Rowe, Joe Orton]
729    
730     *) core: Avoid some unexpected connection closes by telling the client
731     that the connection is not persistent if the MPM process handling
732     the request is already exiting when the response header is built.
733     [Jeff Trawick]
734    
735     *) mod_autoindex: Generate valid XHTML output by adding the xhtml
736     namespace. PR 43649 [Jose Kahan <jose w3.org>]
737    
738     *) mod_ldap: Give callers a reference to data copied into the request
739     pool instead of references directly into the cache
740     PR 43786 [Eric Covener]
741    
742     *) mod_ldap: Stop passing a reference to pconf around for
743     (limited) use during request processing, avoiding possible
744     memory corruption and crashes. [Eric Covener]
745    
746     *) Event MPM: Add support for running under mod_ssl, by reverting to the
747     Worker MPM behaviors, when run under an input filter that buffers
748     its own data. [Paul Querna]
749    
750     *) mod_charset_lite: Don't crash when the request has no associated
751     filename. [Jeff Trawick]
752    
753     *) Core: fix possible crash at startup in case of nonexistent DocumentRoot.
754     PR 39722 [Adrian Buckley <adrian.buckley ntlworld.com>]
755    
756     *) HTTP protocol: Add "DefaultType none" option.
757     PR 13986 and PR 16139 [Nick Kew]
758    
759     *) mod_rewrite: Add option to suppress URL unescaping
760     PR 34602 [Guenther Gsenger <guenther.gsenger gmail.com>]
761    
762     *) mpm_winnt: Eliminate wait_for_many_objects. Allows the clean
763     shutdown of the server when the MaxClients is higher then 257,
764     in a more responsive manner [Mladen Turk, William Rowe]
765    
766     *) mod_proxy_http: Remove Warning headers with wrong date
767     PR 16138 [Nick Kew]
768    
769     *) mod_proxy_http: Correctly parse all Connection headers in proxy.
770     PR 43509 [Nick Kew]
771    
772     *) mod_proxy_http: add Via header correctly (if enabled) to
773     response, even where other Via headers exist.
774     PR 19439 [Nick Kew]
775    
776     *) http_core: OPTIONS * no longer maps to local storage or URI
777     space. Note that unlike previous versions, OPTIONS * no
778     longer returns an Allow: header. PR 43519 [Jim Jagielski]
779    
780     *) mod_proxy_http: strip hop-by-hop response headers
781     PR 43455 [Nick Kew]
782    
783     *) mod_proxy: Don't by default violate RFC2616 by setting
784     Max-Forwards when the client didn't send it to us.
785     Leave that as a configuration option.
786     PR 16137 [Nick Kew]
787    
788     *) scoreboard: improve error message on apr_shm_create failure
789     PR 40037 [Nick Kew]
790    
791     *) proxy: Fix persistent backend connections.
792     PR 43472 [Ruediger Pluem]
793    
794     *) mod_deflate: initialise inflate-out filter correctly when the
795     first brigade contains no data buckets.
796     PR 43512 [Nick Kew]
797    
798     *) mod_proxy_ajp: Ignore any ajp13 flush packets received before
799     we send the response headers. See Tomcat PR 43478.
800     [Jim Jagielski]
801    
802     *) mod_proxy_balancer: Do not reset lbstatus, lbfactor and lbset when
803     starting a new child.
804     PR 39907 [Vinicius Petrucci <vpetrucci gmail.com>, Ruediger Pluem]
805    
806     *) mod_proxy_http: Propagate Proxy-Authorization header correctly.
807     PR 25947 [Nick Kew]
808    
809     *) mod_proxy_ajp: Differentiate within AJP between GET and HEAD
810     requests. PR 43060 [Jim Jagielski]
811    
812     *) Don't send spurious "100 Continue" response lines.
813     PR 38014 [Basant Kumar Kukreja <basant.kukreja sun.com>]
814    
815     *) mod_proxy_ftp: Don't segfault on bad line in FTP listing
816     PR 40733 [Ulf Harnhammar <metaur telia.com>]
817    
818     *) mod_proxy: escape error-notes correctly
819     PR 40952 [Thijs Kinkhorst <thijs debian.org>]
820    
821     *) mod_proxy: check ProxyBlock for all blocked addresses
822     PR 36987 [Timo Viipuri <timo.viipuri f-secure.com>]
823    
824     *) mod_proxy: Don't lose bytes when a response line arrives in small chunks.
825     PR 40894 [Andrew Rucker Jones <arjones simultan.dyndns.org>]
826    
827     Changes with Apache 2.2.6
828    
829     *) SECURITY: CVE-2007-3847 (cve.mitre.org)
830     mod_proxy: Prevent reading past the end of a buffer when parsing
831     date-related headers. PR 41144.
832     [Davi Arnaut, Nick Kew]
833    
834     *) SECURITY: CVE-2007-1863 (cve.mitre.org)
835     mod_cache: Prevent a segmentation fault if attributes are listed in a
836     Cache-Control header without any value.
837     [Niklas Edmundsson <nikke acc.umu.se>]
838    
839     *) SECURITY: CVE-2007-3304 (cve.mitre.org)
840     prefork, worker, event MPMs: Ensure that the parent process cannot
841     be forced to kill processes outside its process group.
842     [Joe Orton, Jim Jagielski]
843    
844     *) SECURITY: CVE-2006-5752 (cve.mitre.org)
845     mod_status: Fix a possible XSS attack against a site with a public
846     server-status page and ExtendedStatus enabled, for browsers which
847     perform charset "detection". Reported by Stefan Esser. [Joe Orton]
848    
849     *) SECURITY: CVE-2007-1862 (cve.mitre.org)
850     mod_mem_cache: Copy headers into longer lived storage; header names and
851     values could previously point to cleaned up storage. PR 41551.
852     [Davi Arnaut <davi haxent.com.br>]
853    
854     *) mod_info: mod_info outputs invalid XHTML 1.0 transitional.
855     PR 42847 [Rici Lake <rici ricilake.net>]
856    
857     *) mod_ssl: Fix spurious hostname mismatch warning for valid
858     wildcard certificates. PR 37911. [Nick Burch <nick torchbox.com>]
859    
860     *) mod_mem_cache: Increase the minimum and default value for
861     MCacheMinObjectSize from 0 to 1, as a MCacheMinObjectSize of 0 does not
862     make sense and leads to a division by zero. PR 40576.
863     [Xuekun Hu <xuekun.hu gmail.com>]
864    
865     *) mod_cache: Remove expired content from cache that cannot be revalidated.
866     PR 30370. [Ruediger Pluem]
867    
868     *) mod_proxy_http: accept proxy-sendchunked/proxy-sendchunks as synonymous.
869     PR 43183 [Brian Rectanus <Brian.Rectanus breach.com>, Vincent Bray]
870    
871     *) mod_proxy: Ensure that at least scheme://hostname[:port] matches between
872     worker and URL when searching for the best fitting worker for a given URL.
873     PR 40910 [Ruediger Pluem]
874    
875     *) mod_proxy: Improve network performance by setting APR_TCP_NODELAY
876     (disable Nagle algorithm) on sockets if implemented.
877     PR 42871 [Christian BOITEL <christian_boitel yahoo.fr>, Jim Jagielski]
878    
879     *) core: Do not replace a Date header set by a proxied backend server.
880     PR 40232 [Ruediger Pluem]
881    
882     *) mod_proxy: Add a missing assignment in an error checking code path.
883     PR 40865 [Andrew Rucker Jones <arjones simultan.dyndns.org>]
884    
885     *) mod_proxy_connect: avoid segfault on DNS lookup failure.
886     PR 40756 [Trevin Beattie <tbeattie boingo.com>]
887    
888     *) mod_proxy: enable Ignore Errors option on ProxyPass Status.
889     PR 43167 [Francisco Gimeno <kikov kikov.org>
890    
891     *) mod_proxy_http: Don't try to read body of a HEAD request before
892     responding. PR 41644 [Stuart Children <stuart terminus.co.uk>]
893    
894     *) mod_authnz_ldap: Don't return HTTP_UNAUTHORIZED during authorization when
895     LDAP authentication is configured but we haven't seen any
896     'Require ldap-*' directives, allowing authorization to be passed to lower
897     level modules (e.g. Require valid-user)
898     PR 43281 [Eric Covener]
899    
900     *) mod_proxy: don't URLencode tilde in path component
901     PR 38448 [Stijn Hoop <stijn sandcat.nl>]
902    
903     *) proxy/ajp_header.c: Fixed header token string comparisons
904     Matching of header tokens failed to include the trailing NIL byte
905     and could misinterpret a longer header token for a shorter.
906     Additionally, a "Content-Type" comparison was made case insensitive.
907     [Martin Kraemer]
908    
909     *) proxy/ajp_header.c: Backport of an AJP protocol fix for EBCDIC
910     On EBCDIC machines, the status_line string was incorrectly converted
911     twice. [Jean-Frederic Clere, Martin Kraemer]
912    
913     *) mod_dumpio: Fix for correct dumping of traffic on EBCDIC hosts
914     Data had been incorrectly converted twice, resulting in
915     garbled log output. [Martin Kraemer]
916    
917     *) mod_autoindex: Add in Type and Charset options to IndexOptions
918     directive. This allows the admin to explicitly set the
919     content-type and charset of the generated page and is therefore
920     a viable workaround for buggy browsers affected by CVE-2007-4465
921     (cve.mitre.org). [Jim Jagielski]
922    
923     *) log core: ensure we use a special pool for stderr logging, so that
924     the stderr channel remains valid from the time plog is destroyed,
925     until the time the open_logs hook is called again. [William Rowe]
926    
927     *) mod_negotiation: preserve Query String in resolving a type map
928     PR 33112 [Jørgen Thomsen <apache jth.net>, Nick Kew]
929    
930     *) mod_ssl: Version reporting update; displays 'compiled against'
931     Apache and build-time SSL Library versions at loglevel [info],
932     while reporting the run-time SSL Library version in the server
933     info tags. Helps to identify a mod_ssl built against one flavor
934     of OpenSSL but running against another (also adds SSL-C version
935     number reporting.) [William Rowe]
936    
937     *) mime.types: Many updates to sync with IANA registry and common
938     unregistered types that the owners refuse to register. Admins
939     are encouraged to update their installed mime.types file.
940     PR: 35550, 37798, 39317, 31483 [Roy T. Fielding]
941    
942     *) mod_expires: don't crash on bad configuration data
943     PR 43213 [Julien Perez <julien.perez epsylonia.net>]
944    
945     *) mod_dbd: Introduce configuration groups to allow inheritance by virtual
946     hosts of database configurations from the main server. Determine the
947     minimal set of distinct configurations and share connection pools
948     whenever possible. Allow virtual hosts to override inherited SQL
949     statements. PR 41302. [Chris Darroch]
950    
951     *) mod_dbd: Create memory sub-pools for each DB connection and close
952     DB connections in a pool cleanup function. Ensure prepared statements
953     are destroyed before DB connection is closed. When using reslists,
954     prevent segfaults when child processes exit, and stop memory leakage
955     of ap_dbd_t structures. Avoid use of global s->process->pool, which
956     isn't destroyed by exiting child processes in most multi-process MPMs.
957     PR 39985. [Chris Darroch, Nick Kew]
958    
959     *) mod_dbd: Handle error conditions in dbd_construct() properly.
960     Simplify ap_dbd_open() and use correct arguments to apr_dbd_error()
961     when non-threaded. Register correct cleanup data in non-threaded
962     ap_dbd_acquire() and ap_dbd_cacquire(). Clean up configuration data
963     and merge function. Use ap_log_error() wherever possible.
964     [Chris Darroch, Nick Kew]
965    
966     *) mod_dbd: Stash DBD connections in request_config of initial request
967     only, or else sub-requests and internal redirections may cause
968     entire DBD pool to be stashed in a single HTTP request. [Chris Darroch]
969    
970     *) main core: Emit errors during the initial apr_app_initialize()
971     or apr_pool_create() (when apr-based error reporting is not ready).
972     [William Rowe, Jeff Trawick]
973    
974     *) log core: fix the new piped logger case where we couldn't connect
975     the replacement stderr logger's stderr to the NULL stdout stream.
976     Continue in this case, since the previous alternative of no error
977     logging at all (/dev/null) is far worse. [William Rowe]
978    
979     *) mpm_winnt: Prevent the parent-child pipe from leaking into other
980     spawned processes, and ensure we have a /Device/null handle for
981     stdout when running as-a-service. [William Rowe]
982    
983     *) mod_ldap: Avoid possible crashes, hangs, and busy loops due to
984     improper merging of the cache lock in vhost config
985     PR 43164 [Eric Covener]
986    
987     *) ApacheMonitor: Fix Windows Vista detection. [Mladen Turk]
988    
989     *) mod_deflate: fix protocol handling in deflate input filter
990     PR 23287 [Nick Kew]
991    
992     *) mime.types: add Registered Javascript/ECMAScript MIME types (RFC4329)
993     PR 40299 [Dave Hodder <dmh dmh.org.uk>]
994    
995     *) mod_filter: fix integer comparisons in dispatch rules
996     PR 41835 [Nick Kew]
997    
998     *) mod_filter: fix merging of ! and = in FilterChain
999     PR 42186 [Issac Goldstand <margol beamartyr.net>]
1000    
1001     *) mod_deflate: don't try to process metadata buckets as data. what should
1002     have been a 413 error was logged as a 500 and a blank screen appeared
1003     at the browser.
1004     [Greg Ames, Ruediger Pluem]
1005    
1006     *) mod_cgi, mod_cgid: Fix use of CGI scripts as ErrorDocuments.
1007     PR 39710. [Paul Querna, Ruediger Pluem]
1008    
1009     *) mod_proxy: Allow to use different values for sessionid
1010     in url encoded id and cookies. PR 41897. [Jean-Frederic Clere]
1011    
1012     *) mod_proxy: Fix the 503 returned when session route does
1013     not match any of the balancer members. [Mladen Turk]
1014    
1015     *) mod_proxy: Added ProxyPassMatch directive, which is similar
1016     to ProxyPass but takes a regex local path prefix. [Jim Jagielski]
1017    
1018     *) mod_cache: Do not set Date or Expires when they are missing from
1019     the original response or are invalid. [Justin Erenkrantz]
1020    
1021     *) mod_cache: Correctly handle HEAD requests on expired cache content.
1022     PR 41230. [Niklas Edmundsson <nikke acc.umu.se>]
1023    
1024     *) mod_cache: Let Cache-Control max-age set the expiration of the cached
1025     representation if Expires is not set. [Justin Erenkrantz]
1026    
1027     *) mod_cache: Allow caching of requests with query arguments when
1028     Cache-Control max-age is explicitly specified. [Justin Erenkrantz]
1029    
1030     *) mod_disk_cache: Allow Vary'd responses to be refreshed properly.
1031     [Justin Erenkrantz]
1032    
1033     *) mod_proxy: Print the correct error message for erroneous configured
1034     ProxyPass directives. PR 40439. [Takashi Sato <serai lans-tv.com>]
1035    
1036     *) mod_so: Provide more helpful LoadModule feedback when an error occurs.
1037     [William Rowe]
1038    
1039     *) mod_alias: Accept path components (URL part) in Redirects. PR 35314.
1040     [Nick Kew]
1041    
1042     *) mod_headers: Allow % at the end of a Header value. PR 36609.
1043     [Nick Kew, Ruediger Pluem]
1044    
1045     *) mod_cache: Use the same cache key throughout the whole request processing
1046     to handle escaped URLs correctly. PR 41475. [Ruediger Pluem]
1047    
1048     *) mod_cache: Add CacheIgnoreQueryString directive. PR 41484.
1049     [Fredrik Widlund <fredrik.widlund qbrick.com>]
1050    
1051     *) mod_cache: While serving a cached entity ensure that filters that have
1052     been applied to this cached entity before saving it to the cache are not
1053     applied again. PR 40090. [Ruediger Pluem]
1054    
1055     *) mod_cache: Correctly cache objects whose URL query string has been
1056     modified by mod_rewrite. PR 40805. [Ruediger Pluem]
1057    
1058     *) HTTP proxy ProxyErrorOverride: Leave 1xx and 3xx responses alone. Only
1059     processing of error responses (4xx, 5xx) will be altered. PR 39245.
1060     [Jeff Trawick, Bart van der Schans <schans hippo.nl>]
1061    
1062     *) htdbm: Enable crypt support on platforms with crypt() but not
1063     <crypt.h>, such as z/OS. [David Jones <oscaremma gmail.com>]
1064    
1065     *) mod_ssl: initialize thread locks before initializing the hardware
1066     acceleration library, so the latter can make use of the former.
1067     PR 20951. [<adunn at ncipher.com>]
1068    
1069     *) ab.c: Correct behavior of HTTP request headers sent by ab
1070     in presence of -H command-line overrides. PR 31268, 26554.
1071     [Arvind Srinivasan <arvind.srinivasan sun.com>]
1072    
1073     *) ab.c: The apr_port_t type is unsigned, but ab was using a
1074     signed format code in its reports. PR 42070.
1075     [Takashi Sato <serai lans-tv.com>]
1076    
1077     *) mod_ldap: Remove the hardcoded size limit parameter for
1078     ldap_search_ext_s and replace it with an APR_ defined
1079     value that is set according to the LDAP SDK being used.
1080     [David Jones <oscaremma gmail com>]
1081    
1082     *) core: Correct a regression since 2.0.x in the handling of AllowOverride
1083     Options. PR 41829. [Torsten Förtsch <torsten.foertsch gmx.net>]
1084    
1085     *) mod_proxy_http: Handle request bodies larger than 2 GB by converting
1086     the Content-Length header of the request correctly. PR 40883.
1087     [Ruediger Pluem, toadie <toadie643 gmail.com>]
1088    
1089     *) mod_proxy: Fix some proxy setting inheritance problems (eg:
1090     ProxyTimeout). PR 11540. [Stuart Children <stuart terminus.co.uk>]
1091    
1092     *) Unix MPMs: Catch SIGFPE so that exception hooks and CoreDumpDirectory
1093     can work after that terminating signal.
1094     [Eric Covener]
1095    
1096     *) Win32: Makefile.win will now build with MS VC 8 (Visual Studio 2005)
1097     including embedding the .manifest information into each binary.
1098     [William Rowe]
1099    
1100     There was no Apache 2.2.5
1101    
1102     Changes with Apache 2.2.4
1103    
1104     *) mod_isapi: Correctly present SERVER_PORT_SECURE.
1105     PR: 40573. [Matt Eaton <asf divinehawk.com>]
1106    
1107     *) Allow htcacheclean, httxt2dbm, and fcgistarter to link apr/apr-util
1108     statically like the older support programs.
1109     [Eric Covener <covener gmail.com>]
1110    
1111     *) core: Fix NONBLOCK status of listening sockets on restart/graceful
1112     PR 37680. [Darius Davis <darius-abz free-range.com.au>]
1113    
1114     *) mod_deflate: Rework inflate output and deflate output filter to fix several
1115     issues: Incorrect handling of flush buckets, potential memory leaks,
1116     excessive memory usage in inflate output filter for large compressed
1117     content. PR 39854. [Ruediger Pluem, Nick Kew, Justin Erenkrantz]
1118    
1119     *) mod_mem_cache: Memory leak fix: Unconditionally free the buffer.
1120     [Davi Arnaut <davi haxent.com.br>]
1121    
1122     *) Allow mod_dumpio to log at other than DEBUG levels via
1123     the new DumpIOLogLevel directive. [Jim Jagielski]
1124    
1125     *) rotatelogs: Improve error message for open failures. PR 39487.
1126     [Joe Orton]
1127    
1128     *) mod_dbd: share per-request database handles across subrequests
1129     and internal redirects [Chris Darroch]
1130    
1131     *) mod_dbd: key connection pools to virtual hosts correctly even when
1132     ServerName is unset/unavailable [Graham Leggett]
1133    
1134     *) Better detection and clean up of ldap connection that has been
1135     terminated by the ldap server. PR 40878.
1136     [Rob Baily <rbaily servicebench com>]
1137    
1138     *) mod_mem_cache: Convert mod_mem_cache to use APR memory pool functions
1139     by creating a root pool for object persistence across requests. This
1140     also eliminates the need for custom serialization code.
1141     [Davi Arnaut <davi haxent.com.br>]
1142    
1143     *) mod_authnz_ldap: Add an AuthLDAPRemoteUserAttribute directive. If
1144     set, REMOTE_USER will be set to this attribute, rather than the
1145     username supplied by the user. Useful for example when you want users
1146     to log in using an email address, but need to supply a userid instead
1147     to the backend. [Graham Leggett]
1148    
1149     *) mod_cgi and mod_cgid: Don't use apr_status_t error return
1150     from input filters as HTTP return value from the handler.
1151     PR 31759. [Nick Kew]
1152    
1153     *) mod_cache: Eliminate a bogus error in the log when a filter returns
1154     AP_FILTER_ERROR. [Niklas Edmundsson <nikke acc.umu.se>]
1155    
1156     *) core: Fix issue which could cause piped loggers to be orphaned and never
1157     terminate after a graceful restart. PR 40651. [Joe Orton, Ruediger Pluem]
1158    
1159     *) core: Fix address-in-use startup failure caused by corruption of the list
1160     of listen sockets in some configurations with multiple generic Listen
1161     directives. [Jeff Trawick]
1162    
1163     *) mod_headers: Support regexp-based editing of HTTP headers. [Nick Kew]
1164    
1165     *) mod_proxy: Add explicit flushing feature. When Servlet container sends AJP
1166     body message with size 0, this means that Servlet container has asked for
1167     an explicit flush. Create flush bucket in that case. This feature has been
1168     added to the recent Tomcat versions without breaking the AJP protocol.
1169     [Mladen Turk]
1170    
1171     *) mod_proxy_balancer: Set the new environment variable BALANCER_ROUTE_CHANGED
1172     if a worker with a route different from the one supplied by the client
1173     had been chosen or if the client supplied no routing information for
1174     a balancer with sticky sessions. [Ruediger Pluem]
1175    
1176     *) mod_proxy_balancer: Add information about the route, the sticky session
1177     and the worker used during a request as environment variables. PR 39806.
1178     [Brian <brectanu gmail.com>]
1179    
1180     *) mod_proxy: Don't try to use dead backend connection. PR 37770.
1181     [Olivier BOEL <ob dorrboel.com>]
1182    
1183     *) mod_proxy_balancer: Extract stickysession routing information contained as
1184     parameter in the URL correctly. PR 40400.
1185     [Ruediger Pluem, Tomokazu Harada <harada sysrdc.ns-sol.co.jp>]
1186    
1187     *) mod_proxy_ajp: Added cping/cpong support for the AJP protocol.
1188     A new worker directive ping=timeout will cause CPING packet
1189     to be send expecting CPONG packet within defined timeout.
1190     In case the backend is too busy this will fail instead
1191     sending the full header. [Mladen Turk]
1192    
1193     *) mod_disk_cache: Make sure that only positive integers are accepted
1194     for the CacheMaxFileSize and CacheMinFileSize parameters in the
1195     config file. PR39380. [Niklas Edmundsson <nikke acc.umu.se>]
1196    
1197     *) mod_cache: From RFC3986 (section 6.2.3.) if a URI contains an
1198     authority component and an empty path, the empty path is to be equivalent
1199     to "/". It explicitly cites the following four URIs as equivalents:
1200     http://example.com
1201     http://example.com/
1202     http://example.com:/
1203     http://example.com:80/
1204     [Davi Arnaut <davi haxent.com.br>]
1205    
1206     *) mod_cache: Don't cache requests with a expires date in the past;
1207     otherwise mod_cache will always try to cache the URL. This bug
1208     might lead to numerous rename() errors on win32 if the URL was
1209     previously cached. [Davi Arnaut <davi haxent.com.br>]
1210    
1211     *) core: Deal with the widespread use of apr_status_t return values
1212     as HTTP status codes, as documented in PR#31759 (a bug shared by
1213     the default handler, mod_cgi, mod_cgid, mod_proxy, and probably
1214     others). PR31759. [Jeff Trawick, Ruediger Pluem, Joe Orton]
1215    
1216     *) mod_ext_filter: Handle filter names which include capital letters.
1217     PR 40323. [Jeff Trawick]
1218    
1219     *) mod_isapi: Avoid double trailing slashes in HSE_REQ_MAP_URL_TO_PATH
1220     support. Also corrects the slashes for Windows.
1221     PR 15993. [William Rowe]
1222    
1223     *) mod_isapi: Handle "HTTP/1.1 200 OK" style status lines correctly, the
1224     token parser worked while the resulting length was misinterpreted.
1225     PR 29098. [Brock Bland <bbland serena.com>]
1226    
1227     *) mod_isapi: Return 0 (failure) for more of the various ap_pass_brigade
1228     attempts to stream the response at the client. Log these as well.
1229     PR 30022, 40470. [William Rowe, Matt Eaton <asf divinehawk.com>]
1230    
1231     *) mod_isapi: Ensure we walk through all the methods the developer may have
1232     employed to report their HTTP status result code.
1233     PR 16637 30033 28089. [Matt Lewandowsky <matt iamcode.net>, William Rowe]
1234    
1235     *) mod_echo: Fix precedence problem in if statement. PR 40658.
1236     [Larry Cipriani <lvc lucent.com>]
1237    
1238     *) mod_mime_magic: Fix precedence problem in if statement. PR 40656.
1239     [Larry Cipriani <lvc lucent.com>]
1240    
1241     *) The full server version information is now included in the error log at
1242     startup as well as server status reports, irrespective of the setting
1243     of the ServerTokens directive. ap_get_server_version() is now deprecated,
1244     and is replaced by ap_get_server_banner() and ap_get_server_description().
1245     [Jeff Trawick]
1246    
1247     *) mod_proxy_balancer: Workers can now be defined as part of
1248     a balancer cluster "set" in which members of a lower-numbered set
1249     are preferred over higher numbered ones. [Jim Jagielski]
1250    
1251     *) mod_proxy_balancer: Workers can now be defined as "hot standby" which
1252     will only be used if all other workers are unusable (eg: in
1253     error or disabled). Also, the balancer-manager displays the election
1254     count and I/O counts of all workers. [Jim Jagielski]
1255    
1256     *) mod_proxy_ajp: Close connection to backend if reading of request body
1257     fails. PR 40310. [Ian Abel <ianabel mxtelecom.com>]
1258    
1259     *) mod_proxy_balancer: Retry worker chosen by route / redirect worker if
1260     it is in error state before sending "Service Temporarily Unavailable".
1261     PR 38962. [Christian Boitel <cboitel lfdj.com>]
1262    
1263     Changes with Apache 2.2.3
1264    
1265     *) SECURITY: CVE-2006-3747 (cve.mitre.org)
1266     mod_rewrite: Fix an off-by-one security problem in the ldap scheme
1267     handling. For some RewriteRules this could lead to a pointer being
1268     written out of bounds. Reported by Mark Dowd of McAfee.
1269     [Mark Cox]
1270    
1271     *) Win32: Minor fixes to build more cleanly under Visual Studio 2005
1272     with command line builds. [William Rowe]
1273    
1274     *) mod_authn_alias: Add a check to make sure that the base provider and the
1275     alias names are different and also that the alias has not been registered
1276     before. PR 40051. [Brad Nicholes]
1277    
1278     *) mod_authnz_ldap: Fix a problem with invalid auth error detection for LDAP
1279     client SDKs that don't support the LDAP_SECURITY_ERROR macro. PR 39529.
1280     [Ray Price <dohrayme yahoo.com>, Josh Fenlason <jfenlason ptc.com>]
1281    
1282     *) mod_cache: Do not overwrite the Content-Type in the cache, for
1283     successfully revalidated cached objects. PR 39647. [Ruediger Pluem]
1284    
1285     *) mod_speling: Add directive to deal with case corrections only
1286     and ignore other misspellings [Olivier Thereaux <ot w3.org>]
1287    
1288     *) mod_dbd: Fix dependence on virtualhost configuration in
1289     defining prepared statements (possible segfault at startup
1290     in user modules such as mod_authn_dbd). [Nick Kew]
1291    
1292     *) Add optional 'scheme://' prefix to ServerName directive,
1293     allowing correct determination of the canonical server URL
1294     for use behind a proxy or offload device handling SSL; fixing
1295     redirect generation in those cases. PR 33398. [Sander Temme]
1296    
1297     *) Added server_scheme field to server_rec for above. Minor MMN bump.
1298     [Sander Temme]
1299    
1300     *) mod_cache: Make caching of reverse SSL proxies possible again. PR 39593.
1301     [Ruediger Pluem, Joe Orton]
1302    
1303     *) Worker MPM: On graceless shutdown or restart, send signals to
1304     each worker thread to wake them up if they're polling on a
1305     Keep-Alive connection. PR 38737. [Chris Darroch]
1306    
1307     *) worker and event MPMs: fix excessive forking if fork() or child_init
1308     take a long time. PR 39275.
1309     [Greg Ames, Jeff Trawick, Chris Darroch <chrisd pearsoncmg.com> ]
1310    
1311     *) configure: Add "--with-included-apr" flag to force use of the
1312     bundled version of APR at build time. [Joe Orton]
1313    
1314     *) Respect GracefulShutdownTimeout in the worker and event MPMs.
1315     [Chris Darroch, Garrett Rooney]
1316    
1317     *) mod_mem_cache: Set content type correctly when delivering data from
1318     cache. PR 39266. [Ruediger Pluem]
1319    
1320     *) mod_autoindex: Fix filename escaping with FancyIndexing disabled.
1321     PR 38910. [Robby Griffin <rmg terc.edu>]
1322    
1323     *) mod_charset_lite: Bypass translation when the source and dest charsets
1324     are the same. [Jeff Trawick]
1325    
1326     Changes with Apache 2.2.2
1327    
1328     *) mod_deflate: work correctly in an internal redirect
1329     [Brian J. France <list firehawksystems com>]
1330    
1331     *) mod_proxy_balancer: Initialize members of a balancer correctly.
1332     PR 38227. [James A. Robinson <jim.robinson stanford.edu>]
1333    
1334     *) mod_proxy: Do not release connections from connection pool twice.
1335     PR 38793. [Ruediger Pluem, matthias <mk-asf gigacodes.de>]
1336    
1337     *) core: Prevent reading uninitialized memory while reading a line of
1338     protocol input. PR 39282. [Davi Arnaut <davi haxent com br>]
1339    
1340     *) mod_dbd: Update defaults, improve error reporting.
1341     [Chris Darroch <chrisd pearsoncmg com>, Nick Kew]
1342    
1343     *) mod_dbd: Create own pool and mutex to avoid problem use of
1344     process pool in request processing.
1345     [Chris Darroch <chrisd pearsoncmg com>]
1346    
1347     *) HTML-escape the Expect error message. Not classed as security as
1348     an attacker has no way to influence the Expect header a victim will
1349     send to a target site. Reported by Thiago Zaninotti
1350     <thiango nstalker.com>. [Mark Cox]
1351    
1352     *) htdbm: Fix crash processing -d option in 64-bit mode on HP-UX.
1353     [Jeff Trawick]
1354    
1355     *) htdbm: Warn the user when adding a plaintext password on a platform
1356     where it wouldn't work with the server (i.e., anywhere that has
1357     crypt()). [Jeff Trawick]
1358    
1359     *) mod_proxy: don't reuse a connection that may be to the wrong backend
1360     PR 39253 [Ruediger Pluem]
1361    
1362     *) Default handler: Don't return output filter apr_status_t values.
1363     PR 31759. [Jeff Trawick, Ruediger Pluem, Joe Orton]
1364    
1365     Changes with Apache 2.2.1
1366    
1367     *) SECURITY: CVE-2005-3357 (cve.mitre.org)
1368     mod_ssl: Fix a possible crash during access control checks if a
1369     non-SSL request is processed for an SSL vhost (such as the
1370     "HTTP request received on SSL port" error message when an 400
1371     ErrorDocument is configured, or if using "SSLEngine optional").
1372     PR 37791. [Rüdiger Plüm, Joe Orton]
1373    
1374     *) SECURITY: CVE-2005-3352 (cve.mitre.org)
1375     mod_imagemap: Escape untrusted referer header before outputting
1376     in HTML to avoid potential cross-site scripting. Change also
1377     made to ap_escape_html so we escape quotes. Reported by JPCERT.
1378     [Mark Cox]
1379    
1380     *) mod_proxy_ajp: Flushing of the output after each AJP chunk is now
1381     configurable at runtime via the 'flushpackets' and 'flushwait' worker
1382     params. Minor MMN bump. [Jim Jagielski]
1383    
1384     *) mod_proxy: Fix incorrect usage of local and shared worker init.
1385     PR 38403. [Jim Jagielski]
1386    
1387     *) mod_isapi: Fix compiler errors on Unix platforms.
1388     [William Rowe]
1389    
1390     *) mod_proxy_http: Do send keep-alive header if the client sent
1391     connection: keep-alive and do not close backend connection if the client
1392     sent connection: close. PR 38524. [Ruediger Pluem, Joe Orton]
1393    
1394     *) mod_disk_cache: Return the correct error codes from bucket read
1395     failures, instead of APR_EGENERAL.
1396     [Brian Akins <brian.akins turner.com>]
1397    
1398     *) Add APR/APR-Util Compiled and Runtime Version numbers to the
1399     output of 'httpd -V'. [William Rowe]
1400    
1401     *) http: If a connection is aborted while waiting for a chunked line,
1402     flag the connection as errored out. [Justin Erenkrantz]
1403    
1404     *) core: Reject invalid Expect header immediately. PR 38123.
1405     [Ruediger Pluem]
1406    
1407     *) Fix mis-shifted 32 bit scope, masked to 64 bits as a method.
1408     [Will Rowe, Joe Orton]
1409    
1410     *) mod_proxy: Fix KeepAlives not being allowed and set to
1411     backend servers. PR 38602. [Ruediger Pluem, Jim Jagielski]
1412    
1413     *) Fix instdso.sh "sed syntax error" installation issue on some
1414     platforms. PR 38108. [Masaoki Kobayashi <masaoki techfirm.co.jp>]
1415    
1416     *) mod_ssl: Fix possible crashes in shmcb with gcc 4 on platforms
1417     requiring word-aligned pointers. PR 38838. [Joe Orton]
1418    
1419     *) mod_proxy: If we get an error reading the upstream response,
1420     close the connection. [Justin Erenkrantz, Roy T. Fielding,
1421     Jim Jagielski, Ruediger Pluem]
1422    
1423     *) mod_proxy_ajp: Support common headers of the AJP protocol in responses.
1424     PR 38340. [Aleksey Pesternikov <apesternikov yahoo.com>]
1425    
1426     *) mod_proxy_balancer: Do not overwrite the status of initialized workers and
1427     respect the configured status of uninitilized workers when creating a new
1428     child process. [Ruediger Pluem]
1429    
1430     *) mod_proxy_ajp: Crosscheck the length of the body chunk with the length of
1431     the ajp message to prevent mod_proxy_ajp from reading beyond the buffer
1432     boundaries and thus revealing possibly sensitive memory contents to the
1433     client. [Ruediger Pluem]
1434    
1435     *) Ensure that the proper status line is written to the client, fixing
1436     incorrect status lines caused by filters which modify r->status without
1437     resetting r->status_line, such as the built-in byterange filter.
1438     [Jeff Trawick]
1439    
1440     *) mod_speling: Stop crashing with certain non-file requests. [Jeff Trawick]
1441    
1442     *) mod_cache: Make caching of reverse proxies possible again. PR 38017.
1443     [Ruediger Pluem]
1444    
1445     *) Modify apr[util] .h detection to avoid breakage on VPATH builds
1446     using Solaris make (amoung others) and avoid breakage in ./buildconf
1447     when srclib/apr[-util] are symlinks rather than directories proper.
1448     [William Rowe]
1449    
1450     *) Avoid Server-driven negotiation when a script has emitted an
1451     explicit Status: header. PR 38070. [Nick Kew]
1452    
1453     *) Fix to avoid feeding C99 to C++ compilers. [Joe Orton]
1454    
1455     *) Chunk filter: Fix chunk filter to create correct chunks in the case that
1456     a flush bucket is surrounded by data buckets. [Ruediger Pluem]
1457    
1458     *) Fix syntax error in httpd.h with strict compilers. PR 37840.
1459     [Per Olausson <pao darkheim.freeserve.co.uk>]
1460    
1461     *) Fix recursive ErrorDocument handling. PR 36090.
1462     [Chris Darroch <chrisd pearsoncmg.com>]
1463    
1464     *) Don't hang on error return from post_read_request. PR 37790.
1465     [Nick Kew]
1466    
1467     *) Fix off-by-one error in proxy_balancer. PR 37753.
1468     [Kazuhiro Osawa <ko yappo ne jp>]
1469    
1470     Changes with Apache 2.2.0
1471    
1472     *) mod_negotiation: Minor performance tweak by reusing already calculated
1473     strlen.
1474     [Ruediger Pluem, Christophe Jaillet <christophe.jaillet wanadoo.fr>]
1475    
1476     *) Remove support for 'On' and 'Off' for AuthBasicProvider and
1477     AuthDigestProvider. [Joshua Slive, Justin Erenkrantz]
1478    
1479     *) Add in new UseCanonicalPhysicalPort directive, which controls
1480     whether or not Apache will ever use the actual physical port
1481     when constructing the canonical port number. [Jim Jagielski]
1482    
1483     *) mod_dav: Fix a null pointer dereference in an error code path during the
1484     handling of MKCOL.
1485     [Ruediger Pluem, Ghassan Misherghi <ghassanm ucdavis.edu>]
1486    
1487     *) mod_proxy_balancer: When finding best worker, use case insensitive
1488     match for scheme and host, but case sensitive for the rest of
1489     the path. [Jim Jagielski, Ruediger Pluem]
1490    
1491     *) Require use of APR >= 1.2.0 and APR-util >= 1.2.0 when configured
1492     to use external copies of the libraries. [Joe Orton]
1493    
1494     *) Fix DESTDIR=... installation when using bundled copy of APR.
1495     [Torsten Foertsch <torsten.foertsch gmx.net>]
1496    
1497     *) mod_dav: Fix handling of unknown state tokens in If: headers.
1498     PR: 37288. [Joe Orton]
1499    
1500     *) Strip out Experimental MPMs that have gone nowhere since 2.0
1501     (perchild, threadpool, leader). [Nick Kew]
1502    
1503     Changes with Apache 2.1.9
1504    
1505     *) Add mod_authn_dbd (SQL-based authentication) [Nick Kew]
1506    
1507     *) mod_proxy_ajp: Do not spool the entire response from AJP backend before
1508     sending it up the filter chain. PR 37100. [Ruediger Pluem]
1509    
1510     *) mod_cache: Create new filters CACHE_OUT_SUBREQ / CACHE_SAVE_SUBREQ which
1511     only differ by the type from CACHE_OUT / CACHE_SAVE to ensure that
1512     subrequests to non-local resources work again. [Ruediger Pluem]
1513    
1514     *) mod_proxy: Do not lowercase the entire worker name of a BalancerMember
1515     since this breaks case sensitive URI's. PR 36906. [Ruediger Pluem]
1516    
1517     *) core: AddOutputFilterByType is ignored for proxied requests. PR 31226.
1518     [Joe Orton, Ruediger Pluem]
1519    
1520     *) mod_proxy_http: Prevent data corruption of POST request bodies when
1521     client accesses proxied resources with SSL. PR 37145.
1522     [Ruediger Pluem, William Rowe]
1523    
1524     *) mod_ssl: Fix issue which could cause spurious warnings about use
1525     of name-based vhosts. PR 37051. [Joe Orton]
1526    
1527     *) ab: Fix to ensure that only the expected number of requests are run.
1528     PR 36966. [Joe Orton]
1529    
1530     *) mod_proxy_balancer: BalancerManager and proxies correctly handle
1531     member workers with paths. PR 36816. [Ruediger Pluem, Jim Jagielski]
1532    
1533     *) mod_log_config: %{hextid}P will log the thread id in hex with APR
1534     versions 1.2.0 or higher. [Jeff Trawick]
1535    
1536     *) httpd.exe/apachectl -V: display the DYNAMIC_MODULE_LIMIT setting, as
1537     in 1.3. [Jeff Trawick]
1538    
1539     *) Support dbd connection tied to conn_rec in mod_dbd. [Nick Kew]
1540    
1541     *) Fix use of pools in mod_dbd. [Brian J France, Nick Kew]
1542    
1543     *) Promote modules from "experimental": mod_dbd, mod_filter,
1544     mod_charset_lite. [Nick Kew]
1545    
1546     *) mod_proxy_ajp: mod_proxy_ajp sends empty SSL attributes for non SSL
1547     connections. PR 36883.
1548     [William Barker <william.barker wilshire.com>, Ruediger Pluem]
1549    
1550     *) Eliminated the NET_TIME filter, restructuring the timeout logic.
1551     This provides a working mod_echo on all platforms, and ensures any
1552     custom protocol module is at least given an initial timeout value
1553     based on the <VirtualHost > context's Timeout directive.
1554     [William Rowe]
1555    
1556     *) mod_proxy: Run the request_status hook also if there are no free workers
1557     or all workers are in error state.
1558     [Ruediger Pluem, Brian Akins <brian.akins turner.com>]
1559    
1560     *) mod_proxy_connect: Fix high CPU loop on systems like UnixWare which
1561     trigger POLL_ERR or POLL_HUP on a terminated connection. PR 36951.
1562     [Jeff Trawick, Ruediger Pluem]
1563    
1564     *) mod_proxy_balancer: Fix handling of sticky sessions with Tomcat.
1565     PR 36507. [Ruediger Pluem]
1566    
1567     *) SECURITY: CVE-2005-2970 (cve.mitre.org)
1568     worker MPM: Fix a memory leak which can occur after an aborted
1569     connection in some limited circumstances. [Greg Ames]
1570    
1571     *) Doxygen fixups. [Neale Ranns <neale ranns.org>, Ian Holsman]
1572    
1573     *) mod_cache/mod_dir: Correct a subrequest lookup bug which was preventing
1574     mod_dir from serving indexes correctly with mod_cache enabled.
1575     [Colm MacCarthaigh]
1576    
1577     Changes with Apache 2.1.8
1578    
1579     *) Fix lingering close implementation to match 1.3.x behaviour.
1580     PR 35292. [Joe Orton]
1581    
1582     *) mod_ssl: Support limited buffering of request bodies to allow
1583     per-location renegotiation to proceed. PR 12355. [Joe Orton]
1584    
1585     *) Fix regression since 2.0.x in AllowOverride Options handling.
1586     PR 35330. [kabe <kabe sra-tohoku.co.jp>]
1587    
1588     *) mod_ssl: Fix memory leak in ssl_util_algotypeof().
1589     PR 25659. [David Blake <dblake hp com>, Martin Kraemer]
1590    
1591     *) prefork, worker and event MPMs: Support a graceful-stop procedure:
1592     Server will wait until existing requests are finished or until
1593     "GracefulShutdownTimeout" number of seconds before exiting.
1594     [Colm MacCarthaigh, Ken Coar, Bill Stoddard]
1595    
1596     *) prefork, worker and event MPMs: Prevent children from holding open
1597     listening ports upon graceful restart or stop. PR 28167.
1598     [Colm MacCarthaigh, Brian Pinkerton <bp thinkpink.com>]
1599    
1600     *) SECURITY: CVE-2005-2700 (cve.mitre.org)
1601     mod_ssl: Fix a security issue where "SSLVerifyClient" was not
1602     enforced in per-location context if "SSLVerifyClient optional"
1603     was configured in the vhost configuration. [Joe Orton]
1604    
1605     *) mod_ssl: Catch parse errors from misconfigured or malformed
1606     CRLs. PR 36438. [Joe Orton]
1607    
1608     *) mod_proxy/mod_proxy_balancer: lbmethods now implemented as
1609     providers. Prevent problems when no Vhost containers were
1610     configured with proxy balancers. [Jim Jagielski]
1611    
1612     *) New provider function to list all available provider names in a
1613     specific group and version (ap_list_provider_names). [Jim Jagielski]
1614    
1615     *) mod_cache: Enhance CacheEnable/CacheDisable to control caching on a
1616     per-protocol, per-host and per-path basis. Intended for proxy
1617     configurations. [Colm MacCarthaigh]
1618    
1619     *) mod_disk_cache: Canonicalise the storage key, for improved hit/miss
1620     ratio. [Colm MacCarthaigh]
1621    
1622     *) mod_cgid: Append .PID to the script socket filename and remove the
1623     script socket on exit. [Colm MacCarthaigh, Jim Jagielski]
1624    
1625     *) mod_cgid: run the get_suexec_identity hook within the request-handler
1626     instead of within cgid. PR 36410. [Colm MacCarthaigh]
1627    
1628     *) Linux 2.0: remove support for threaded MPM's due to linuxthreads use
1629     of SIGUSR1 clashing with graceful restart signal. [Colm MacCarthaigh]
1630    
1631     Changes with Apache 2.1.7
1632    
1633     *) SECURITY: CVE-2005-2491 (cve.mitre.org):
1634     Fix integer overflows in PCRE in quantifier parsing which could
1635     be triggered by a local user through use of a carefully-crafted
1636     regex in an .htaccess file. [Philip Hazel]
1637    
1638     *) mod_proxy/mod_proxy_balancer: Provide a simple, functional
1639     interface to add additional balancer lb selection methods
1640     without requiring code changes to mod_proxy/mod_proxy_balancer;
1641     these can be implemented via sub-modules now. [Jim Jagielski]
1642    
1643     *) mod_cache: Fix incorrectly served 304 responses when expired cache
1644     entity is valid, but cache is unwritable and headers cannot be
1645     updated. [Colm MacCarthaigh <colm stdlib.net>]
1646    
1647     *) mod_cache: Remove entities from the cache when re-validation
1648     receives a 404 or other content-no-longer-present error.
1649     [Rüdiger Plüm ruediger.pluem vodafone.com]
1650    
1651     *) mod_disk_cache: Properly remove files from cache when needed.
1652     [Rüdiger Plüm ruediger.pluem vodafone.com]
1653    
1654     *) mod_disk_cache: Support htcacheclean removing directories.
1655     [Andreas Steinmetz]
1656    
1657     *) htcacheclean: Add -t option to remove empty directories.
1658     [Colm MacCarthaigh <colm stdlib.net>]
1659    
1660     *) Remove the base href tag from mod_proxy_ftp, as it breaks relative
1661     links for clients not using an Authorization header. [Graham Leggett,
1662     Jon Snow <jsnow27 gatesec.net>]
1663    
1664     *) mod_cache: Restore the HTTP status of cached responses.
1665     [Hansjoerg Pehofer <hansjoerg.pehofer uibk.ac.at>]
1666    
1667     *) mod_cache: Store varied contents all in the same prefix for a varied URI.
1668     [Paul Querna]
1669    
1670     *) mod_cache: Run the CACHE_SAVE and CACHE_OUT Filters after other content
1671     filters. [Paul Querna]
1672    
1673     *) mod_negotiation: Correctly report 404 instead of 403 for missing files.
1674     [Paul Querna]
1675    
1676     *) new hook (request_status) that gets ran in proxy_handler just before
1677     the final return. This gives modules an opportunity to do something
1678     based on the proxy status. (minor MMN bump)
1679     [Brian Akins <bakins turner.com>, Ian Holsman]
1680    
1681     *) Add additional SSLSessionCache option, 'nonenotnull', which is
1682     similar to 'none' (disabling any external shared cache) but forces
1683     OpenSSL to provide a non-null session ID. [Jim Jagielski]
1684    
1685     *) Add httxt2dbm to support/ for creating RewriteMap DBM Files.
1686     [Paul Querna]
1687    
1688     *) Add SSL_COMPRESS_METHOD variable (included in +StdEnvVars) to note
1689     the negotiated compression. [Georg v. Zezschwitz <gvz 2scale.de>]
1690    
1691     *) Fixed complaints about unpackaged files within the RPM build
1692     after changes to the config files. [Graham Leggett]
1693    
1694     *) Fix shutdown for the Worker MPM when an Accept Filter is used. Instead of
1695     just closing the socket, a HTTP request is made, to make sure the child is
1696     always awakened. [Paul Querna]
1697    
1698     Changes with Apache 2.1.6
1699    
1700     *) Fix htdbm password validation for records which included comments.
1701     [Eric Covener <covener gmail.com>]
1702    
1703     *) mod_cgid: Fix buffer overflow processing ScriptSock directive.
1704     [Steve Kemp <steve steve.org.uk>]
1705    
1706     Changes with Apache 2.1.5
1707    
1708     *) mod_ssl: Setting the Protocol to 'https' can replace the use of the
1709     'SSLEngine on' command. [Paul Querna]
1710    
1711     *) core: Refactor the mapping of Accept Filters to Sockets. Add the
1712     AcceptFilter and Protocol directives to aid in mapping filter types.
1713     Extend the Listen directive to optionally take a protocol name.
1714     [Paul Querna]
1715    
1716     *) mod_disk_cache: Support storing multiple variations of one URL. PR 35211.
1717     [Paul Querna]
1718    
1719     *) mod_disk_cache: Atomically create the header data file. [Paul Querna]
1720    
1721     *) mod_cache: Fix 'Vary: *' behavior to be RFC compliant. PR 16125.
1722     [Paul Querna]
1723    
1724     *) mod_cache: Rename 'generate_name' to 'ap_cache_generate_name'.
1725     [Paul Querna]
1726    
1727     *) mod_mime_magic: Handle CRLF-format magic files so that it works with
1728     the default installation on Windows. [Jeff Trawick]
1729    
1730     *) core: Allow multiple modules to register interest in a single
1731     configuration command. [Paul Querna]
1732    
1733     *) authn_provider_alias: Adds the configuration block tag
1734     <AuthnProviderAlias baseProvider Alias>
1735     Authentication directives contained within this block can be
1736     referenced as a new authProvider using the AuthBasicProvider or
1737     AuthDigestProvider directive. These directives will be merged in to
1738     the per_dir configuration just before the base provider is called.
1739     [Brad Nicholes]
1740    
1741     *) ap_getword_conf: Fix backslashes at the end of configuration directives.
1742     PR 34834. [Timo Viipuri <viipuri dlc.fi>]
1743    
1744     *) mod_dbd: New additions: mod_dbd.c, mod_dbd.h, mod_dbd.xml
1745     Provide module hooks for apr_dbd; optimise for httpd
1746     threaded and non-threaded arch [Nick Kew]
1747    
1748     *) ab: SSL support rewritten, improved, and enabled if SSL is enabled
1749     during the build; -f and -Z arguments added to specify SSL protocol
1750     options. [Masaoki Kobayashi <masaoki techfirm.co.jp>]
1751    
1752     *) mod_info: Show the Quick Handler [Paul Querna]
1753    
1754     *) mod_ldap: Add the directive LDAPVerifyServerCert to specify
1755     whether to force verification of the server certificate when
1756     establishing an SSL connection to the LDAP server.
1757     [Brad Nicholes]
1758    
1759     *) mod_proxy: Run mod_rewrite before mod_proxy in the translate_name
1760     hook. [Paul Querna]
1761    
1762     *) Add AP_INIT_TAKE_ARGV for configuration commands. (minor MMN bump)
1763     [Paul Querna]
1764    
1765     *) ap_get_local_host() rewritten for APR. [Jim Jagielski]
1766    
1767     *) Add the ap_vhost_iterate_given_conn function to expose the information
1768     used in Name Based Virtual Hosting. (minor MMN bump)
1769     [Paul Querna]
1770    
1771     *) Remove the never working ap_method_list_do and ap_method_list_vdo.
1772     [Paul Querna]
1773    
1774     *) Added makefile and doc for building mod_ssl on the NetWare
1775     platform. [Guenter Knauf, Brad Nicholes]
1776    
1777     *) mod_deflate: Merge the Vary header, isntead of Setting it. Fixes
1778     applications that send the Vary Header themselves, and also apply
1779     mod_deflate as an output filter. [Paul Querna]
1780    
1781     *) Change the default (when not present in the config file) setting
1782     for UseCanonicalName to Off.
1783     [Joshua Slive]
1784    
1785     *) mod_userdir: The module no longer does any remapping unless the
1786     UserDir directive is present in the config file.
1787     [Joshua Slive]
1788    
1789     *) Massively simplify the distributed httpd.conf by removing
1790     many features and many directives that are at their default
1791     setting. Add a selection of example config excerpts for adding
1792     extra features in the conf/extra/ directory. Install the
1793     distributed config and the extra config examples in the
1794     conf/original/ directory during make install.
1795     [Joshua Slive, Justin Erenkrantz]
1796    
1797     *) NetWare: Reposition mod_asis, mod_actions, mod_cgi, mod_imagemap,
1798     mod_userdir and mod_autoindex as shared modules rather than
1799     built-in modules within the NetWare build.
1800     [Brad Nicholes]
1801    
1802     *) Rename mod_imap to mod_imagemap.
1803     [Paul Querna]
1804    
1805     *) util_ldap: Eliminate the load ordering of mod_ldap and mod_authnz_ldap
1806     by changing the mod_ldap exported functions to optional functions.
1807     [Brad Nicholes]
1808    
1809     Changes with Apache 2.1.4
1810    
1811     *) Don't let a subrequest inherit headers describing the original request's
1812     body. [Greg Ames]
1813    
1814     *) Fix Windows CompContext buff size miscalculation
1815     [Allan Edwards]
1816    
1817     *) Add ReceiveBufferSize directive to control the TCP receive buffer.
1818     [Eric Covener <covener gmail.com>]
1819    
1820     *) mod_proxy: Add proxy-sendextracrlf option to send an extra CRLF at the
1821     end of the request body to work with really old HTTP servers.
1822     [Justin Erenkrantz]
1823    
1824     *) util_ldap: Keep track of the number of attributes retrieved from
1825     LDAP so that all the values can be properly cached even if the
1826     value is NULL. PR 33901 [Brad Nicholes]
1827    
1828     *) mod_cache: Fix error where incoming Cache-Control would be ignored.
1829     [Justin Erenkrantz]
1830    
1831     *) mod_cache: Correctly handle originally conditional requests.
1832     [Sander Striker]
1833    
1834     *) mod_disk_cache: Correctly update cached headers on revalidated responses.
1835     [Sander Striker, Justin Erenkrantz]
1836    
1837     *) worker MPM/mod_status: Support per-worker tracking of pid and
1838     generation in the scoreboard so that mod_status can accurately
1839     represent workers in processes which are gracefully terminating.
1840     (major MMN bump)
1841     [Jeff Trawick]
1842    
1843     *) Correctly export all mod_dav public functions.
1844     [Branko Čibej <brane xbc.nu>]
1845    
1846     Changes with Apache 2.1.3
1847    
1848     *) mod_ssl: Add ssl_ext_lookup optional function for accessing
1849     certificate extensions. [David Reid, Joe Orton]
1850    
1851     *) Add support for use of an external PCRE library; pass the
1852     --with-pcre flag to configure. PR 27550. [Joe Orton,
1853     Andres Salomon <dilinger voxel.net>]
1854    
1855     *) Renamed regex interfaces to be namespace-safe, and moved from
1856     pcreposix.h header to ap_regex.h: regex_t->ap_regex_t,
1857     regmatch_t->ap_regmatch_t; REG_*->AP_REG_*; functions
1858     reg*->ap_reg*. PR 27550. [Andres Salomon <dilinger voxel.net>,
1859     Joe Orton]
1860    
1861     *) Only recompile buildmark.c when we have to relink httpd.
1862     [Justin Erenkrantz]
1863    
1864     *) mod_cache: Fix up handling of revalidated responses.
1865     [Justin Erenkrantz]
1866    
1867     *) mod_disk_cache: Properly load cached ETag from on-disk structures.
1868     [Justin Erenkrantz]
1869    
1870     *) mod_authnz_ldap: Added an optional second parameter to AuthLDAPURL
1871     to allow it to override the connection type set in mod_ldap. This
1872     parameter can be set to NONE, SSL or TLS | STARTTLS.
1873     [Brad Nicholes]
1874    
1875     *) Fix --with-apr=/usr and/or --with-apr-util=/usr. PR 29740.
1876     [Max Bowsher <maxb ukf.net>]
1877    
1878     *) mod_proxy: Fix ProxyRemoteMatch directive. PR 33170.
1879     [Rici Lake <rici ricilake.net>]
1880    
1881     *) mod_proxy: Fix ap_proxy_canonenc API.
1882     PR 32459. [Jim Jagielski]
1883    
1884     *) mod_cache: Add CacheStorePrivate and CacheStoreNoStore directive.
1885     [Justin Erenkrantz]
1886    
1887     *) Add --enable-pie flag to configure, to build httpd as a Position
1888     Independent Executable where supported (GCC/binutils).
1889     [Joe Orton]
1890    
1891     *) proxy_balancer: Add in load-balancing via weighted traffic
1892     byte count. [Jim Jagielski]
1893    
1894     *) mod_disk_cache: Cache r->err_headers_out headers. This allows CGI
1895     scripts to be properly cached. [Justin Erenkrantz, Sander Striker]
1896    
1897     *) mod_ldap: Updated to use the new apr-util v1.1 apr_ldap_*_option()
1898     API for the setting of server and client SSL certificates. Replaced
1899     LDAPTrustedCA directive with LDAPTrustedGlobalCert and
1900     LDAPTrustedClientCert directives to correctly support global certs
1901     (CA certs / Netware client certs) and per connection client certs
1902     as supported by Netware, OpenLDAP and Netscape/Mozilla.
1903     [Graham Leggett]
1904    
1905     *) mod_cache: Remove unimplemented CacheForceCompletion directive.
1906     [Justin Erenkrantz]
1907    
1908     *) support/check_forensic: Fix temp file usage
1909     [Javier Fernandez-Sanguino Pen~a <jfs computer.org>]
1910    
1911     *) mod_ssl: Add SSLCADNRequestFile and SSLCADNRequestPath directives
1912     which can be used to configure a specific list of CA names to send
1913     in a client certificate request. PR 32848.
1914     [Tim Taylor <tim.taylor dfas.mil>]
1915    
1916     *) --with-module can now take more than one module to be statically
1917     linked: --with-module=<modtype>:<modfile>,<modtype>:<modfile>,...
1918     If the <modtype>-subdirectory doesn't exist it will be created and
1919     populated with a standard Makefile.in. [Erik Abele]
1920    
1921     *) Remove some compiler warnings within the LDAP modules [Graham Leggett]
1922    
1923     *) Add a build script to create a solaris package. [Graham Leggett]
1924    
1925     *) ap_http_scheme() replaced with ap_http_method() - this function
1926     returns the scheme (http v.s. https).
1927     [William Rowe]
1928    
1929     *) mod_proxy: Fix a request corruption problem and a buffering problem
1930     which sometimes prevented proxy-sendchunks from working.
1931     [Jeff Trawick]
1932    
1933     *) Fix the RPM spec file so that an RPM build now works. An RPM
1934     build now requires system installations of APR and APR-util.
1935     [Graham Leggett]
1936    
1937     *) Significantly simplify the load balancer scheduling algorithm
1938     for the proxy BalancerMember weighting. loadfactors (lbfactors)
1939     are now normalized with respect to each other. [Jim Jagielski]
1940    
1941     *) mod_dumpio: Added to the available module suite; it is an
1942     I/O logging/dumping module. Placed in the (new) debug module
1943     subdirectory. mod_bucketeer moved to that directory as well.
1944     [Jim Jagielski]
1945    
1946     *) core: Add support for APR_TCP_DEFER_ACCEPT to defer accepting
1947     of a connection until data is available.
1948     [Paul Querna]
1949    
1950     Changes with Apache 2.1.2
1951    
1952     *) mod_proxy: Respect errors reported by pre_connection hooks.
1953     [Jeff Trawick]
1954    
1955     *) core: Error out on sections that are missing an argument instead of
1956     silently consuming the section. PR 25460.
1957     [Geoffrey Young, Paul Querna]
1958    
1959     *) mod_cache/mod_mem_cache/mod_disk_cache: Move out of experimental.
1960    
1961     *) Upgraded PCRE to version 5.0. [Brian Pane]
1962    
1963     *) mod_cgid: Catch configuration problem where two web server instances
1964     share same ServerRoot but admin forgot to use ScriptSock.
1965     [Jeff Trawick]
1966    
1967     *) mod_cgi: Ensure that all stderr is logged for a script which returns
1968     a Location header to generate a non-local redirect. PR 20111.
1969     [Joe Orton]
1970    
1971     *) Added the Event MPM to more efficiently handle clients during a
1972     Keep Alive request.
1973     [Paul Querna, Greg Ames]
1974    
1975     Changes with Apache 2.1.1
1976    
1977     *) mod_proxy_http: Stream content better - always flush buffered data to
1978     the client before blocking waiting for new data. PR 19954.
1979     [Joe Orton]
1980    
1981     *) mod_ssl: Add support for command-line option "-t -DDUMP_CERTS" which
1982     will dump the filenames of all configured SSL certificates to stdout.
1983     [Joe Orton]
1984    
1985     *) mod_disk_cache: Remove a bunch of non-implemented garbage collection
1986     and cache size directives that are now available through htcacheclean.
1987     [Justin Erenkrantz]
1988    
1989     *) Add htcacheclean to support/ for assistance with mod_disk_cache.
1990     [Andreas Steinmetz]
1991    
1992     *) mod_authnz_ldap: Added the directive "Requires ldap-filter" that
1993     allows the module to authorize a user based on a complex LDAP
1994     search filter. [Brad Nicholes]
1995    
1996     *) mod_usertrack: Run the fixups hook before other modules.
1997     PR 29755. [Paul Querna]
1998    
1999     *) Allow mod_authnz_ldap authorization functionality to be used
2000     without requiring the user to also be authenticated through
2001     mod_authnz_ldap. This allows other authentication modules to
2002     take advantage of LDAP authorization only [PR 28253]
2003     [Jari Ahonen jah progress.com, Brad Nicholes]
2004    
2005     *) Log the client IP address when an error occurs disabling nagle on a
2006     connection, but log at a severity of debug since this error
2007     generally means that the connection was dropped before data was
2008     sent. Log the client IP address when reporting errors in the core
2009     output filter. [Jeff Trawick]
2010    
2011     *) core: Add a warning message if the request line read fails.
2012     [Paul Querna]
2013    
2014     *) mod_rewrite: Removed the MaxRedirects option in favor of the
2015     core LimitInternalRecursion directive. [André Malo]
2016    
2017     *) mod_info: Added listing of the Request Hooks and added more build
2018     information like 'httpd -V' contains. Changed output to XHTML.
2019     [Paul Querna]
2020    
2021     *) mod_info: Rewrote config tree walk using a recursive function.
2022     Added ?config option. Added printout of config filename and line numbers.
2023     [Rici Lake <rici ricilake.net>, Paul Querna]
2024    
2025     *) mod_proxy: Fix type error that prevents proxy-sendchunks from working.
2026     [Justin Erenkrantz]
2027    
2028     *) mod_proxy: Fix data corruption by properly setting aside buckets.
2029     [Justin Erenkrantz]
2030    
2031     *) mod_proxy: If a request has a blank body and has a 0 Content-Length
2032     headers, pass that to the proxy. [Justin Erenkrantz]
2033    
2034     *) Recognize QSA flag in mod_rewrite again.
2035     [Jan Kratochvil <rcpt-dev.AT.httpd.apache.org jankratochvil.net>]
2036    
2037     *) Restructured mod_auth_ldap to fit the new authentication model.
2038     The module is now called authnz_ldap and has been moved out of
2039     the modules/experimental area and into modules/aaa with the other
2040     auth modules. Both the authn_ldap provider and the authz_ldap
2041     handler are contained within the authnz_ldap module. The
2042     authz_ldap handler introduces 3 new "requires" values for handling
2043     authorization. These handlers are ldap-user, ldap-group and
2044     ldap-dn. [Brad Nicholes]
2045    
2046     *) Fix some compiler warnings in proxy
2047     [Geoffrey Young <geoff@modperlcookbook.org>]
2048    
2049     *) mod_ssl: Add SSL_CLIENT_V_REMAIN variable, representing the
2050     number of days until the client cert expires. [Joe Orton]
2051    
2052     *) Add test_config hook, run only if httpd is invoked using -t.
2053     [Joe Orton]
2054    
2055     *) Improve error handling for corrupted pid files. [Jeff Trawick]
2056    
2057     *) mod_proxy.c and proxy_util.c: Enable compiling on 2.0-HEAD
2058     (for backwards compatibility):
2059     Avoids mod_ssl.h (not included in 2.0-HEAD) and
2060     use apr_socket_create_ex for 0.9.x
2061     [Mladen Turk]
2062    
2063     *) Added proxy_ajp.c module for proxy support to ajp:// backends.
2064     [Jean Frederic Clere]
2065    
2066     *) Fixes the build of proxy on Windows. Since the proxy_module is declared
2067     as extern using AP_MODULE_DECLARE_DATA that expands to dllexport, there
2068     is a LNK2001 error when building proxy_http. [Mladen Turk]
2069    
2070     *) Remove LDAP toolkit specific code from util_ldap and mod_auth_ldap.
2071     [Graham Leggett]
2072    
2073     *) Remove deprecated/removed APR_STATUS_IS_SUCCESS(). [Justin Erenkrantz]
2074    
2075     *) perchild MPM: Fix thread safety problem in the use of longjmp().
2076     [Tsuyoshi SASAMOTO <nazonazo super.win.ne.jp>]
2077    
2078     *) Add load balancer support to the scoreboard in preparation for
2079     load balancing support in mod_proxy. [Mladen Turk]
2080    
2081     *) mod_nw_ssl: Added the directive NWSSLUpgradeable to mod_nw_ssl to
2082     allow a non-secure connection to be upgraded to secure connections
2083     [Brad Nicholes]
2084    
2085     *) core: Add Options= syntax to AllowOverride to specify which options
2086     may be overridden in .htaccess files. PR 29310.
2087     [Tom Alsberg <alsbergt cs.huji.ac.il>, Paul Querna]
2088    
2089     *) ab: Handle long URLs with an error instead of an buffer overflow.
2090     PR 28204. [Erik Weide <erik.weidel mplus-technologies.de>, Paul Querna]
2091    
2092     *) mod_so, core: Add new command line options to print all loaded
2093     modules. '-t -D DUMP_MODULES' and '-M' will show all static
2094     and shared modules as loaded from the configuration file.
2095     [Paul Querna]
2096    
2097     *) mod_autoindex: Add ShowForbidden to IndexOptions to list files
2098     that are not shown because the subrequest returned 401 or 403.
2099     PR 10575. [Paul Querna]
2100    
2101     *) mod_headers: implement "Early" processing option in post_read_request
2102     to enable Header and RequestHeader directives to be used to set up
2103     testcases for pre-fixups request phases [Nick Kew]
2104    
2105     *) mod_proxy: multiple bugfixes, principally support cookies in
2106     ProxyPassReverse, and don't canonicalise URL passed to backend.
2107     Documentation correspondingly updated. [Nick Kew <nick webthing.com>]
2108    
2109     *) mod_deflate: support gzip flags in inflate_out_filter
2110     [Nick Kew <nick webthing.com>]
2111    
2112     *) Drop the ErrorHeader directive which turned out to be a misnomer.
2113     Instead there's a new optional flag for the Header directive
2114     ('always'), which keeps the former ErrorHeader functionality.
2115     [André Malo]
2116    
2117     *) mod_deflate: Don't deflate responses with zero length
2118     e.g. proxied 304's [Allan Edwards]
2119    
2120     *) <IfModule> now recognizes the module identifier in addition to the
2121     file name. PR 29003. [Edward Rudd <eddie omegaware.com>, André Malo]
2122    
2123     *) mod_ssl: Add "SSLHonorCipherOrder" directive to enable the
2124     OpenSSL 0.9.7 flag which uses the server's cipher order rather
2125     than the client's. PR 28665.
2126     [Jim Schneider <jschneid netilla.com>]
2127    
2128     *) mod_ssl: Drop support for the CompatEnvVars argument to
2129     SSLOptions, which was never actually implemented in 2.0.
2130     [Joe Orton]
2131    
2132     *) Fix bug in mod_deflate that unconditionally sent deflate'd output
2133     even when Accept-Encoding is not present. [Justin Erenkrantz]
2134    
2135     *) Pass environment variables through to piped loggers and start
2136     them via the shell, resolving regressions since 1.3. PR 28815
2137     [Ken Coar, Jeff Trawick]
2138    
2139     *) External rewrite map responses are no longer limited to 2048
2140     bytes. [André Malo]
2141    
2142     *) Proxy server was deleting cookies that Apache had already
2143     assigned if the origin server had set any cookies. PR 27023.
2144     [Jim Jagielski]
2145    
2146     *) Removed old and unmaintained ap_add_named_module API and changed
2147     the following APIs to return an error instead of hard exiting:
2148     ap_add_module, ap_add_loaded_module, ap_setup_prelinked_modules,
2149     and ap_process_resource_config. [André Malo]
2150    
2151     *) mod_headers: Allow %% in header values to represent a literal %.
2152     [André Malo]
2153    
2154     *) mod_headers: Allow env clauses also for 'echo' and 'unset' actions.
2155     [André Malo]
2156    
2157     *) mod_headers: Allow 'echo' also for ErrorHeaders. [André Malo]
2158    
2159     *) mod_deflate: New option for DEFLATE output file (force-gzip),
2160     new output filter 'INFLATE' for uncompressing responses.
2161     [Nick Kew <Nick at WebThing dot com>, Ian Holsman]
2162    
2163     *) Added new module mod_version, which provides version dependent
2164     configuration containers. [André Malo]
2165    
2166     *) mod_log_config now logs all Set-Cookie headers if the %{Set-Cookie}o
2167     format is used. PR 27787. [André Malo]
2168    
2169     *) Allow Digest providers to return AUTH_DENIED to propagate a 401
2170     status and terminate the provider chain prior to checking the password.
2171     [Geoffrey Young]
2172    
2173     *) mod_cgid: Don't allow Scriptsock to be specified inside VirtualHost;
2174     Don't place script socket inside default server root instead of
2175     actual server root. PR 27886. [Jeff Trawick]
2176    
2177     *) mod_proxy: Fix handling of non-200 success status codes when
2178     "ProxyErrorOverride On" is configured. PR 20183.
2179     [Marcus Janson <marcus.janson tre.se>, Joe Orton]
2180    
2181     *) Threaded MPMs for Unix and Win32: Add support for ThreadStackSize
2182     directive (previously NetWare-only) to override default thread
2183     stack size for threads which handle client connections. Required
2184     for some third-party modules on platforms with small default
2185     thread stack size. [Jeff Trawick]
2186    
2187     *) minor mod_auth_basic and mod_auth_digest sync. mod_auth_basic
2188     now populates r->user with the (possibly unauthenticated) user,
2189     and mod_auth_digest returns 500 when a provider returns
2190     AUTH_GENERAL_ERROR.
2191     [Geoffrey Young]
2192    
2193     *) The whole codebase was relicensed and is now available under
2194     the Apache License, Version 2.0 (http://www.apache.org/licenses).
2195     [Apache Software Foundation]
2196    
2197     *) Delete some make-generated files in the server directory during
2198     "make clean" processing. PR 26552. [Jeff Trawick]
2199    
2200     *) Add core version query function (ap_get_server_revision) and
2201     accompanying ap_version_t structure (minor MMN bump).
2202     [André Malo]
2203    
2204     *) mod_rewrite: EOLs sent by external rewritemaps are now consumed
2205     as whole. That way, on systems with more than one EOL character
2206     rewritemap programs no longer need to switch stdout to binary
2207     mode. PR 25635. [André Malo]
2208    
2209     *) mod_rewrite: Introduce the ability to force a content handler via
2210     the [handler=...] flag. [André Malo]
2211    
2212     *) mod_rewrite: Introduce the RewriteCond -x check, which returns
2213     true if the pattern is a file with execution permissions.
2214     [André Malo]
2215    
2216     *) mod_rewrite: Allow proxying and RewriteRules in directory context
2217     for subrequests. PR 14648, 15114. [André Malo]
2218    
2219     *) mod_rewrite: Allow setting of any valid HTTP response code.
2220     PR 25917. [André Malo]
2221    
2222     *) mod_rewrite: Cookie creation now works locale independent.
2223     [André Malo]
2224    
2225     *) mod_ssl: Add support for distributed session cache using 'distcache'.
2226     [Geoff Thorpe <geoff geoffthorpe.net>]
2227    
2228     *) mod_dav: Disallow requests with an unescaped hash character in
2229     the Request-URI. PR 21779. [Amit Athavale <amit_athavale lycos.com>]
2230    
2231     *) mod_proxy with ProxyErrorOverride On in a reverse-proxy configuration
2232     attaches a body to the 302 response and a wrong Content-Length header.
2233     PR: 22951 [Ermanno Scaglione scaglione ..at.. starnetone.de]
2234    
2235     *) Bring ErrorHeader concept forward from 1.3, so that response
2236     header fields can be set for return even on errors or external
2237     redirects. [Ken Coar]
2238    
2239     *) Fix <Limit> and <LimitExcept> parsing to require a closing '>'
2240     in the initial container. PR 25414.
2241     [Geoffrey Young <geoff apache.org>]
2242    
2243     *) Clean up httpd -V output: Instead of displaying the MPM source
2244     directory, display the MPM name and some MPM properties.
2245     [Geoffrey Young <geoff apache.org>]
2246    
2247     *) mod_ssl/mod_status: Re-enable support for output of SSL session
2248     cache information in server-status page. [Joe Orton]
2249    
2250     *) mod_ssl: Remove the shmht session cache, shmcb should be used
2251     instead. [Joe Orton]
2252    
2253     *) mod_logio: Account for some bytes handed to the network layer prior to
2254     dropped connections. [Jeff Trawick]
2255    
2256     *) mod_autoindex: new directive IndexStyleSheet
2257     [Tyler Riddle <triddle_1999 yahoo.com>, Paul Querna <chip force-elite.com>]
2258    
2259     *) Fix uninitialized gprof directory name in prefork MPM. PR 24450.
2260     [Chris Knight <Christopher.D.Knight nasa.gov>]
2261    
2262     *) Log an error when requests for URIs which fail to map to a valid
2263     filesystem name are rejected with 403. [Jeff Trawick]
2264    
2265     *) Switch to APR 1.0 API.
2266    
2267     *) Major overhaul of mod_include's filter parser. The new parser code
2268     is expected to be more robust and should catch all of the edge cases
2269     that were not handled by the previous one. This includes a binary
2270     incompatible change of mod_include's external API. [André Malo]
2271    
2272     *) mod_rewrite: Allow forced mimetypes [T=...] to get expanded.
2273     PR 14223. [André Malo]
2274    
2275     *) mod_rewrite: Fix LA-U and LA-F lookups in directory context. Previously
2276     the current rewrite state was just used as lookup path, which lead to
2277     strange and often useless results. Related to PR 8493. [André Malo]
2278    
2279     *) Change Listen directive to bind to all addresses when a hostname is
2280     not specified. [Justin Erenkrantz]
2281    
2282     *) Correct failure with Listen directives on machines with IPv6 enabled.
2283     [Colm MacCárthaigh <colm stdlib.net>, Justin Erenkrantz]
2284    
2285     *) Fix a link failure in mod_ssl when the OpenSSL libraries contain
2286     the ENGINE functions but the engine header files are missing.
2287     [Cliff Woolley]
2288    
2289     *) mod_rewrite: RewriteRules in server context using the force
2290     type feature [T=...] no longer disable MultiViews. [André Malo]
2291    
2292     *) mod_rewrite: Allow piped rewrite logs to be relative to ServerRoot.
2293     [André Malo]
2294    
2295     *) mod_authz_groupfile: Strip trailing spaces of group names. This
2296     hopefully saves some hours of searching for typos. PR 12863.
2297     [André Malo]
2298    
2299     *) mod_actions: Propagate the handler name to the action script via
2300     the REDIRECT_HANDLER environment variable. [André Malo]
2301    
2302     *) mod_actions: Introduce the "virtual" modifier to the Action directive,
2303     which allows the use of handlers for virtual locations. PR 8431.
2304     [André Malo]
2305    
2306     *) mod_speling: Recognize AcceptPathInfo setting for the particular
2307     location. Default is to reject path information. PR 21059.
2308     [André Malo]
2309    
2310     *) mod_ext_filter: Add the ability to filter request bodies.
2311     [Philipp Reisner <philipp.reisner linbit.com>]
2312    
2313     *) Fix some broken log messages in WinNT MPM.
2314     [Juan Rivera <Juan.Rivera citrix.com>]
2315    
2316     *) prefork MPM: Use the right permissions for the directory created
2317     for gprof support. [Jim Carlson <jcarlson jnous.com>]
2318    
2319     *) Fix a compile failure with recent OpenSSL and picky compilers
2320     (e.g., OpenSSL 0.9.7a and xlc_r on AIX). [Jeff Trawick]
2321    
2322     *) OpenSSL headers should be included as "openssl/ssl.h", and not rely on
2323     the INCLUDE path to be defined properly.
2324     PR 11310. [Geoff Thorpe <geoff geoffthorpe.net>]
2325    
2326     *) Modify APACHE_CHECK_SSL_TOOLKIT to detect SSL-C. [Madhusudan Mathihalli]
2327    
2328     *) Replace the APACHE_CHECK_SSL_TOOLKIT method with a cleaner one, using
2329     autoconf tools (AC_CHECK_HEADER, AC_CHECK_LIB etc).
2330     [Geoff Thorpe <geoff geoffthorpe.net>]
2331    
2332     *) change directive name from 'compressionlevel' to 'deflatecompressionlevel'
2333     [Ian Holsman, André Malo]
2334    
2335     *) mod_negotiation: quality values are now parsed independent from
2336     the current locale. level values are now really parsed as integers.
2337     PR 17564. [André Malo]
2338    
2339     *) Extend mod_negotiation to evaluate the environment variables
2340     no-gzip and gzip-only-text/html the same way as mod_deflate does.
2341     [André Malo]
2342    
2343     *) mod_rewrite: Fix some problems reporting errors with mapping
2344     programs (RewriteMap prg:/something). [Jeff Trawick]
2345    
2346     *) Return 413 if chunk-ext-header is too long rather than reading from
2347     the truncated line. PR 15857. [Justin Erenkrantz]
2348    
2349     *) Allow restart of httpd to occur even with syntax errors in the config
2350     file. PR 16813. [Justin Erenkrantz]
2351    
2352     *) Use APR_LAYOUT instead of APACHE_LAYOUT in configure. PR 15679.
2353     [Justin Erenkrantz]
2354    
2355     *) Remove files on 'make distclean' that should be. PR 15592.
2356     [Justin Erenkrantz]
2357    
2358     *) Allow apachectl to perform status with links and elinks as well.
2359     [Justin Erenkrantz]
2360    
2361     *) mod_log_config change optional hook to return previous handler
2362     [Ian Holsman]
2363    
2364     *) Forward port of mod_actions' ability to handle arbitrary methods
2365     with the Script directive. [André Malo]
2366    
2367     *) Let suexec send a message to stderr, if it failed or its policy
2368     was violated. This message appears in the error log and allows
2369     for easier debugging. PR 5381, 7638, 8255, 10773. [André Malo]
2370    
2371     *) Modify buildconf to copy all required files into httpd's tree.
2372     [Thom May <thom planetarytramp.net>]
2373    
2374     *) Allow mod_dav to do weak entity comparison functions.
2375     [Justin Erenkrantz]
2376    
2377     *) Move RFC 1413 ident requests from core to new module mod_ident.
2378     [André Malo]
2379    
2380     *) Add mod_authz_owner - a forward port of "Require file-owner"
2381     and "Require file-group", which was already present in version
2382     1.3.21. [André Malo]
2383    
2384     *) Add mod_dav_lock - a generic subset of the DAV locking implementation.
2385     [Justin Erenkrantz]
2386    
2387     *) Replace some of the mutex locking in the worker MPM with
2388     atomic operations for higher concurrency. [Brian Pane]
2389    
2390     *) Allow 'make depend' to work with non-GCC compilers.
2391     [Justin Erenkrantz]
2392    
2393     *) If an httpd.conf has commented out AddModule directives,
2394     apxs -i -a will add an un-commented AddModule directive for
2395     the new module, which breaks the config.
2396     PR: 11212 [Joe Orton]
2397    
2398     *) Fix mod_proxy handling of filtered input bodies. [Justin Erenkrantz]
2399    
2400     *) Move the check of the Expect request header field after the hook
2401     for ap_post_read_request, since that is the only opportunity for
2402     modules to handle Expect extensions. [Justin Erenkrantz]
2403    
2404     *) Rewrite of aaa modules to an authn/authz model.
2405     [Dirk-Willem van Gulik, Justin Erenkrantz]
2406    
2407     [Apache 2.1.0-dev includes those bug fixes and changes with the
2408     Apache 2.0.xx tree as documented, and except as noted, below.]
2409    
2410     Changes with Apache 2.0.x and later:
2411    
2412     *) http://svn.apache.org/viewvc/httpd/httpd/branches/2.0.x/CHANGES?view=markup
2413    
2414     Changes with Apache 1.3.x and later:
2415    
2416     *) http://svn.apache.org/viewvc/httpd/httpd/branches/1.3.x/src/CHANGES?view=markup

SourceForge.JP is a Japanese version of SourceForge.net. For developments that are not related to Japan, we recommend you to use SourceForge.net.