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