CHANGES 106 KB

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