/[Apache-SVN]/httpd/httpd/branches/2.2.x/CHANGES
ViewVC logotype

Contents of /httpd/httpd/branches/2.2.x/CHANGES

Parent Directory Parent Directory | Revision Log Revision Log


Revision 882153 - (show annotations)
Thu Nov 19 14:07:46 2009 UTC (8 days, 4 hours ago) by jim
File size: 103224 byte(s)
Merge r806920 from trunk:

Return consistent error status for proxy unable to connect
PR 46971

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

Properties

Name Value
svn:eol-style native
svnmailer:content-charset utf-8

apache@apache.org
ViewVC Help
Powered by ViewVC 1.1.2