]> granicus.if.org Git - apache/blob - CHANGES
mod_proxy: Ensure we don't attempt to amend a table we are iterating
[apache] / CHANGES
1                                                          -*- coding: utf-8 -*-
2 Changes with Apache 2.5.0
3
4   *) mod_proxy: Ensure we don't attempt to amend a table we are iterating
5      through, ensuring that all headers listed by Connection are removed.
6      [Graham Leggett, Co-Advisor <coad measurement-factory.com>]
7
8   *) core: apachectl -S prints wildcard name-based virtual hosts twice. 
9      PR54948 [Eric Covener]
10
11   *) mod_proxy: Reject invalid values for Max-Forwards. [Graham Leggett,
12      Co-Advisor <coad measurement-factory.com>]
13
14   *) mod_cache: If a 304 response indicates an entity not currently cached, then
15      the cache MUST disregard the response and repeat the request without the
16      conditional. [Graham Leggett, Co-Advisor <coad measurement-factory.com>]
17
18   *) mod_proxy: Fix seg-faults when using the global pool on threaded
19      MPMs [Thomas Eckert <thomas.r.w.eckert gmail.com>, Jim Jagielski]
20
21   *) mod_proxy: Ensure network errors detected by the proxy are returned as
22      504 Gateway Timout as opposed to 502 Bad Gateway, in order to be
23      compliant with RFC2616 14.9.4 Cache Revalidation and Reload Controls.
24      [Graham Leggett, Co-Advisor <coad measurement-factory.com>]
25
26   *) mod_cache: Ensure that we don't attempt to replace a cached response
27      with an older response as per RFC2616 13.12. [Graham Leggett, Co-Advisor
28      <coad measurement-factory.com>]
29
30   *) core, mod_cache: Ensure RFC2616 compliance in ap_meets_conditions()
31      with weak validation combined with If-Range and Range headers. Break
32      out explicit conditional header checks to be useable elsewhere in the
33      server. Ensure weak validation RFC compliance in the byteranges filter.
34      Ensure RFC validation compliance when serving cached entities. PR 16142
35      [Graham Leggett, Co-Advisor <coad measurement-factory.com>]
36
37   *) core: Add the ability to do explicit matching on weak and strong ETags
38      as per RFC2616 Section 13.3.3. [Graham Leggett, Co-Advisor
39      <coad measurement-factory.com>]
40
41   *) mod_cache: Ensure that updated responses to HEAD requests don't get
42      mistakenly paired with a previously cached body. Ensure that any existing
43      body is removed when a HEAD request is cached. [Graham Leggett,
44      Co-Advisor <coad measurement-factory.com>]
45
46   *) mod_cache: Honour Cache-Control: no-store in a request. [Graham Leggett]
47
48   *) mod_cache: RFC2616 14.9.3 The s-maxage directive also implies the
49      semantics of the proxy-revalidate directive. [Graham Leggett]
50
51   *) mod_cache: Make sure that contradictory entity headers present in a 304
52      Not Modified response are caught and cause the entity to be removed.
53      [Graham Leggett]
54
55   *) mod_cache: Make sure Vary processing handles multivalued Vary headers and
56      multivalued headers referred to via Vary. [Graham Leggett]
57
58   *) mod_cache: When serving from cache, only the last header of a multivalued
59      header was taken into account. Fixed. [Graham Leggett]
60
61   *) mod_cache: Ignore response headers specified by no-cache=header and
62      private=header as specified by RFC2616 14.9.1 What is Cacheable. Ensure
63      that these headers are still processed when multiple Cache-Control
64      headers are present in the response. PR 54706 [Graham Leggett,
65      Yann Ylavic <ylavic.dev gmail.com>]
66
67   *) mod_cache: Invalidate cached entities in response to RFC2616 Section
68      13.10 Invalidation After Updates or Deletions. PR 15868 [Graham
69      Leggett]
70
71   *) mod_dav: mod_dav overrides dav_fs response on PUT failure. PR 35981
72      [Basant Kumar Kukreja <basant.kukreja sun.com>, Alejandro Alvarez
73      <alejandro.alvarez.ayllon cern.ch>]
74
75   *) mod_dav: Do not segfault on PROPFIND with a zero length DBM.
76      PR 52559 [Diego Santa Cruz <diego.santaCruz spinetix.com>]
77
78   *) mod_dav: Do not fail PROPPATCH when prop namespace is not known.
79      PR 52559 [Diego Santa Cruz <diego.santaCruz spinetix.com>]
80
81   *) mod_dav: When a PROPPATCH attempts to remove a non-existent dead
82      property on a resource for which there is no dead property in the same
83      namespace httpd segfaults. PR 52559 [Diego Santa Cruz
84      <diego.santaCruz spinetix.com>]
85
86   *) mod_dav: PROPPATCH delete (svn propdel) silently discards errors.
87      PR 53525 [Arwin Arni <arwin collab.net>]
88
89   *) mod_dav: Ensure URI is correctly uriencoded on return. PR 54611
90      [Timothy Wood <tjw omnigroup.com>]
91
92   *) mod_dav: Sending a If or If-Match header with an invalid ETag doesn't
93      result in a 412 Precondition Failed. PR 54610 [Timothy Wood
94      <tjw omnigroup.com>]
95
96   *) mod_dav: Make sure that when we prepare an If URL for Etag comparison,
97      we compare unencoded paths. PR 53910 [Timothy Wood <tjw omnigroup.com>]
98
99   *) core, mod_ssl: Lift the restriction that prevents mod_ssl taking
100      full advantage of the event MPM. Enable the ability for a module
101      to reverse the sense of a poll event from a read to a write or vice
102      versa. [Graham Leggett]
103
104   *) htpasswd: Add -v option to verify a password. [Stefan Fritsch]
105
106   *) htpasswd, htdbm: Fix password generation. PR 54735. [Stefan Fritsch]
107
108   *) mod_dav: Improve error handling in dav_method_put(), add new
109      dav_join_error() function.  PR 54145.  [Ben Reser <ben reser.org>]
110
111   *) mod_auth_digest: Fix crashes if shm initialization failed. [Stefan
112      Fritsch]
113  
114   *) mod_ldap: LDAP connections used for authentication were not respecting
115      LDAPConnectionPoolTimeout.  PR 54587
116
117   *) core: ap_rgetline_core now pulls from r->proto_input_filters.
118
119   *) mod_proxy_html: process parsed comments immediately. 
120      Fixes bug where parsed comments may be lost. [Nick Kew]
121
122   *) mod_proxy_html: introduce doctype for HTML 5 [Nick Kew]
123
124   *) mod_proxy_html: fix typo-bug processing "strict" vs "transitional"
125      HTML/XHTML [Nick Kew]
126
127   *) core: Add option to add valgrind support. Use it to reduce false positive
128      warnings in mod_ssl. [Stefan Fritsch]
129
130   *) mod_lua: Add bindings for apr_dbd/mod_dbd database access
131      [Daniel Gruno]
132
133   *) mod_authn_file, mod_authn_dbd, mod_authn_dbm, mod_authn_socache:
134      Cache the result of the most recent password hash verification for every
135      keep-alive connection. This saves some expensive calculations.
136      [Stefan Fritsch]
137
138   *) http: Remove support for Request-Range header sent by Navigator 2-3 and
139      MSIE 3. [Stefan Fritsch]
140
141   *) core, http: Extend HttpProtocol with an option to enforce stricter HTTP
142      conformance or to only log the found problems. [Stefan Fritsch]
143
144   *) core: Correctly parse an IPv6 literal host specification in an absolute
145      URL in the request line. [Stefan Fritsch]
146
147   *) mod_ssl: add support for subjectAltName-based host name checking
148      in proxy mode. PR 54030. [Kaspar Brand]
149
150   *) mpm_event: Check that AsyncRequestWorkerFactor is not negative. PR 54254.
151      [Jackie Zhang <jackie qq zhang gmail com>]
152
153   *) mod_ssl: Add support for OpenSSL configuration commands [Stephen Henson]
154
155   *) EventOpt MPM
156
157   *) core: Add LogLevelOverride directive that allows to override the
158      loglevel for clients from certain IPs. This also works for things
159      like the SSL handshake where <If> LogLevel ... </If> is evaluated
160      too late. [Stefan Fritsch]
161
162   *) core: Add new directive Warning to issue warnings from a configuration
163      file. Both Warning and Error now generate a timestamped log message.
164      [Fabien Coelho] 
165
166   *) ap_expr: Add SERVER_PROTOCOL_VERSION, ..._MAJOR, and ..._MINOR
167      variables. [Stefan Fritsch]
168
169   *) core: New directive RegisterHttpMethod for registering non-standard
170      HTTP methods. [Stefan Fritsch]
171
172   *) core: New directive HttpProtocol which allows to disable HTTP/0.9
173      support. [Stefan Fritsch]
174
175   *) mod_allowhandlers: New module to forbid specific handlers for specific
176      directories. [Stefan Fritsch]
177
178   *) configure: Fix processing of --disable-FEATURE for various features.
179      [Jeff Trawick]
180
181   *) mod_systemd: New module, for integration with systemd on Linux.
182      [Jan Kaluza <jkaluza redhat.com>]
183
184   *) mod_cache_socache: New cache implementation backed by mod_socache
185      that replaces mod_mem_cache removed from httpd v2.2. [Graham
186      Leggett]
187
188   *) core: Add dirwalk_stat and pre_htaccess hooks, allowing mpm-itk
189      to be used without patches to httpd core.  [Jeff Trawick]
190
191   *) mod_lua: Add LuaInputFilter/LuaOutputFilter for creating content
192      filters in Lua [Daniel Gruno]
193
194   *) WinNT MPM: Store pid and generation for each thread in scoreboard
195      to allow tracking of threads from exiting children via mod_status
196      or other such mechanisms.  [Jeff Trawick]
197
198   *) mod_ssl: Catch missing or mismatched client cert/key pairs with
199      SSLProxyMachineCertificateFile/Path directives.  PR 52212.  
200      [Keith Burdis <keith burdis.org>, Joe Orton]
201
202   *) mod_lua: Allow scripts handled by the lua-script handler to return 
203      a status code to the client (such as a 302 or a 500) [Daniel Gruno]
204
205   *) mod_lua: Decline handling 'lua-script' if the file doesn't exist,
206      rather than throwing an internal server error. [Daniel Gruno]
207
208   *) mod_lua: Add functions r:flush and r:sendfile as well as additional
209      request information to the request_rec structure. [Daniel Gruno]
210
211   *) mod_lua: Add a server scope for Lua states, which creates a pool of
212      states with managable minimum and maximum size. [Daniel Gruno]
213
214   *) core: Add post_perdir_config hook.
215      [Steinar Gunderson <sgunderson bigfoot.com>]
216
217   *) mod_lua: Add new directive, LuaMapHandler, for dynamically mapping 
218      URIs to Lua scripts and functions using regular expressions.
219      [Daniel Gruno]
220
221   *) mod_lua: Add new directive LuaCodeCache for controlling in-memory
222      caching of lua scripts. [Daniel Gruno]
223
224   *) The following now respect DefaultRuntimeDir/DEFAULT_REL_RUNTIMEDIR:
225      - APIs: ap_log_pid(), ap_remove_pid, ap_read_pid()
226      - core: the scoreboard (ScoreBoardFile), pid file (PidFile), and
227        mutexes (Mutex)
228      - mod_cache: thundering herd lock directory
229      - mod_lbmethod_heartbeat, mod_heartmonitor: heartbeat storage file
230      - mod_ldap: shared memory cache
231      - mod_socache_shmcb, mod_socache_dbm: shared memory or dbm for cache
232      [Jeff Trawick]
233
234   *) suexec: Add --enable-suexec-capabilites support on Linux, to use
235      setuid/setgid capability bits rather than a setuid root binary.
236      [Joe Orton]
237
238   *) suexec: Add support for logging to syslog as an alternative to logging
239      to a file; configure --without-suexec-logfile --with-suexec-syslog.  
240      [Joe Orton]
241
242   *) mod_ssl: Add support for TLS Next Protocol Negotiation.  PR 52210.
243      [Matthew Steele <mdsteele google.com>]
244
245   *) cross-compile: allow to provide CC_FOR_BUILD so that gen_test_char will
246      be compiled by the build compiler instead of the host compiler.
247      Also set CC_FOR_BUILD to 'cc' when cross-compilation is detected.
248      PR 51257. [Guenter Knauf]
249
250   *) core: In maintainer mode, replace apr_palloc with a version that
251      initializes the allocated memory with non-zero values, except if
252      AP_DEBUG_NO_ALLOC_POISON is defined. [Stefan Fritsch]
253
254   *) mod_policy: Add a new testing module to help server administrators
255      enforce a configurable level of protocol compliance on their
256      servers and application servers behind theirs. [Graham Leggett]
257
258   *) mod_firehose: Add a new debugging module able to record traffic
259      passing through the server in such a way that connections and/or
260      requests be reconstructed and replayed. [Graham Leggett]
261
262   *) mod_noloris
263
264   *) APREQ
265
266   *) Simple MPM
267
268   *) mod_serf
269
270   [Apache 2.5.0-dev includes those bug fixes and changes with the
271    Apache 2.4.xx tree as documented below, except as noted.]
272
273 Changes with Apache 2.4.x and later:
274
275   *) http://svn.apache.org/viewvc/httpd/httpd/branches/2.4.x/CHANGES?view=markup
276
277 Changes with Apache 2.2.x and later:
278
279   *) http://svn.apache.org/viewvc/httpd/httpd/branches/2.2.x/CHANGES?view=markup
280
281 Changes with Apache 2.0.x and later:
282
283   *) http://svn.apache.org/viewvc/httpd/httpd/branches/2.0.x/CHANGES?view=markup
284