|  | APACHE 2.4 STATUS:                        -*- mode: text; coding: utf-8 -*- | 
|  | Last modified at [$Date$] | 
|  |  | 
|  | The current version of this file can be found at: | 
|  |  | 
|  | * http://svn.apache.org/repos/asf/httpd/httpd/branches/2.4.x/STATUS | 
|  |  | 
|  | Documentation status is maintained separately and can be found at: | 
|  |  | 
|  | * docs/STATUS in this source tree, or | 
|  | * http://svn.apache.org/repos/asf/httpd/httpd/branches/2.4.x/docs/STATUS | 
|  |  | 
|  | The current development branch of this software can be found at: | 
|  |  | 
|  | * http://svn.apache.org/repos/asf/httpd/httpd/trunk | 
|  |  | 
|  | Consult the following STATUS files for information on related projects: | 
|  |  | 
|  | * http://svn.apache.org/repos/asf/apr/apr/trunk/STATUS | 
|  | * http://svn.apache.org/repos/asf/apr/apr/branches/1.4.x/STATUS | 
|  | * http://svn.apache.org/repos/asf/apr/apr-util/branches/1.4.x/STATUS | 
|  | * http://svn.apache.org/repos/asf/apr/apr/branches/1.5.x/STATUS | 
|  | * http://svn.apache.org/repos/asf/apr/apr-util/branches/1.5.x/STATUS | 
|  |  | 
|  | Patches considered for backport are noted in their branches' STATUS: | 
|  |  | 
|  | * http://svn.apache.org/repos/asf/httpd/httpd/branches/2.0.x/STATUS | 
|  | * http://svn.apache.org/repos/asf/httpd/httpd/branches/2.2.x/STATUS | 
|  | * http://svn.apache.org/repos/asf/httpd/httpd/branches/2.4.x/STATUS | 
|  |  | 
|  |  | 
|  |  | 
|  | Release history: | 
|  | [NOTE that x.{odd}.z versions are strictly Alpha/Beta releases, | 
|  | while x.{even}.z versions are Stable/GA releases.] | 
|  |  | 
|  | 2.4.26  : In development. | 
|  | 2.4.25  : Tagged on December 16, 2016. Released on December 21, 2016. | 
|  | 2.4.24  : Tagged on December 16, 2016, not released. | 
|  | 2.4.23  : Tagged on June 30, 2016. Released on July 05, 2016. | 
|  | 2.4.22  : Tagged on June 20, 2016, not released. | 
|  | 2.4.21  : Tagged on June 16, 2016, not released. | 
|  | 2.4.20  : Tagged on April 4, 2016. Released on April 11, 2016. | 
|  | 2.4.19  : Tagged on March 21, 2016, not released. | 
|  | 2.4.18  : Tagged on December 8, 2015. Released on December 14, 2015. | 
|  | 2.4.17  : Tagged on October 9, 2015. Released October 13, 2015. | 
|  | 2.4.16  : Tagged on July 9, 2015. Released July 15, 2015 | 
|  | 2.4.15  : Tagged on June 19, 2015. Not released. | 
|  | 2.4.14  : Tagged on June 11, 2015. Not released. | 
|  | 2.4.13  : Tagged on June 4, 2015. Not released. | 
|  | 2.4.12  : Tagged on January 22, 2015. Released Jan 29, 2015 | 
|  | 2.4.11  : Tagged on January 15, 2015. Not released. | 
|  | 2.4.10  : Tagged on July 15, 2014. Released July 21, 2014 | 
|  | 2.4.9   : Tagged on March 13, 2014. Released on March 17, 2014 | 
|  | 2.4.8   : Tagged on March 11, 2014. Not released. | 
|  | 2.4.7   : Tagged on November 19, 2013. Released on Nov 25, 2013 | 
|  | 2.4.6   : Tagged on July 15, 2013. Released July, 22, 2013 | 
|  | 2.4.5   : Tagged on July 11, 2013, not released. | 
|  | 2.4.4   : Tagged on February 18, 2013. Released Feb 25, 2013 | 
|  | 2.4.3   : Tagged on August 17, 2012. Released Aug 18, 2012 | 
|  | 2.4.2   : Tagged on April 5, 2012. Released Apr 17, 2012. | 
|  | 2.4.1   : Tagged on February 13, 2012. Released Feb 21, 2012. | 
|  | 2.4.0   : Tagged on January 16, 2012, not released. | 
|  | 2.3.16  : Tagged on December 15, 2011. | 
|  | 2.3.15  : Tagged on November 8, 2011. Released Nov. 15, 2011. | 
|  | 2.3.14  : Tagged on August 1, 2011. Released Aug. 9, 2011. | 
|  | 2.3.13  : Tagged on June 28, 2011, not released. | 
|  | 2.3.12  : Tagged on May 11, 2011. Released May 23, 2011. | 
|  | 2.3.11  : Released as Beta on March 7, 2011. | 
|  | 2.3.10  : Tagged on December 13, 2010. Released Dec 21, 2010. | 
|  | 2.3.9   : Tagged on November 23, 2010, not released. | 
|  | 2.3.8   : Tagged on August 24, 2010. | 
|  | 2.3.7   : Tagged on August 19, 2010, not released. | 
|  | 2.3.6   : Released on June 21, 2010. | 
|  | 2.3.5   : Released on January 26, 2010. | 
|  | 2.3.4   : Released on December 8, 2009. | 
|  | 2.3.3   : Tagged on November 11, 2009, not released. | 
|  | 2.3.2   : Tagged on March 23, 2009, not released. | 
|  | 2.3.1   : Tagged on January 2, 2009, not released. | 
|  | 2.3.0   : Tagged on December 6, 2008, not released. | 
|  |  | 
|  | Contributors looking for a mission: | 
|  |  | 
|  | * Just do an egrep on "TODO" or "XXX" in the source. | 
|  |  | 
|  | * Review the bug database at: http://issues.apache.org/bugzilla/ | 
|  |  | 
|  | * Review the "PatchAvailable" bugs in the bug database: | 
|  |  | 
|  | https://issues.apache.org/bugzilla/buglist.cgi?bug_status=NEW&bug_status=ASSIGNED&bug_status=REOPENED&product=Apache+httpd-2&keywords=PatchAvailable | 
|  |  | 
|  | After testing, you can append a comment saying "Reviewed and tested". | 
|  |  | 
|  | * Open bugs in the bug database. | 
|  |  | 
|  | * See also the STATUS file in the docs/ directory, which lists documentation-specific TODO items. | 
|  |  | 
|  |  | 
|  | CURRENT RELEASE NOTES: | 
|  |  | 
|  | * Forward binary compatibility is expected of Apache 2.4.x releases, such | 
|  | that no MMN major number changes will occur after 2.4.1.  Such changes can | 
|  | only be made in the trunk. | 
|  |  | 
|  | * All commits to branches/2.4.x must be reflected in SVN trunk, | 
|  | as well, if they apply.  Logical progression is commit to trunk | 
|  | then merge into branches/2.4.x, as applicable. | 
|  |  | 
|  | * Current exceptions for RTC for this branch: | 
|  | . http/2 - mod_http2 | 
|  | . mod_lua | 
|  | . documentation | 
|  | . non-Unix build | 
|  | . non-Unix, single-platform code | 
|  |  | 
|  | RELEASE SHOWSTOPPERS: | 
|  |  | 
|  | *) PR 60576: 2.4.21 broke PHP-FPM with the patch to strip the bogus "proxy://" | 
|  | prefix from SCRIPT_FILENAME. We need to revert to the previous behavior | 
|  | ASAP to avoid any further hurdles with FCGI implementations while we figure | 
|  | this out. | 
|  |  | 
|  | *) PR 60071: Child httpd processes crash with Segmentation fault | 
|  | trunk patch: http://svn.apache.org/r1779573 | 
|  | http://svn.apache.org/r1779574 | 
|  | http://svn.apache.org/r1779623 | 
|  | 2.4.x patch: trunk works | 
|  | +1: jim | 
|  |  | 
|  | *) PR60458: Rip out this regression or fix (TBD) | 
|  |  | 
|  | PATCHES ACCEPTED TO BACKPORT FROM TRUNK: | 
|  | [ start all new proposals below, under PATCHES PROPOSED. ] | 
|  |  | 
|  |  | 
|  |  | 
|  | PATCHES PROPOSED TO BACKPORT FROM TRUNK: | 
|  | [ New proposals should be added at the end of the list ] | 
|  |  | 
|  | *) mod_proxy, mod_ssl: Handle SSLProxy* directives in <Proxy> sections, | 
|  | allowing per backend TLS configuration. | 
|  | trunk patch: http://svn.apache.org/r1740928 | 
|  | http://svn.apache.org/r1740960 | 
|  | http://svn.apache.org/r1740967 | 
|  | http://svn.apache.org/r1740987 | 
|  | http://svn.apache.org/r1740998 | 
|  | http://svn.apache.org/r1742697 | 
|  | http://svn.apache.org/r1756976 | 
|  | 2.4.x patch: http://home.apache.org/~ylavic/patches/httpd-2.4.x-r1740928_and_co.patch | 
|  | +1: ylavic | 
|  |  | 
|  | *) event: close a race condition where we might re-enable listeners while they | 
|  | are already or about to be closed. | 
|  | trunk patch: http://svn.apache.org/r1774541 | 
|  | 2.4.x patch: trunk works | 
|  | +1: ylavic, jim | 
|  |  | 
|  | *) mod_proxy_fcgi: Return HTTP 504 rather than 503 in case of proxy timeout. | 
|  | trunk patch: http://svn.apache.org/r1775858 | 
|  | 2.4 patch: trunk works (modulo CHANGES) | 
|  | +1: elukey | 
|  |  | 
|  | *) mod_remoteip: Add PROXY protocol support | 
|  | trunk patch: http://svn.apache.org/r1776575 | 
|  | http://svn.apache.org/r1776578 (doc fix) | 
|  | http://svn.apache.org/r1776627 (shortened name + doc fix) | 
|  | http://svn.apache.org/r1776674 (attribution moved to CHANGES) | 
|  | http://svn.apache.org/r1776740 (attribution updated in mod_remotip.c) | 
|  | 2.4 patch (includes CHANGES): | 
|  | http://people.apache.org/~druggeri/patches/RemoteIPProxyProtocol.2.4.x.patch | 
|  | +1: druggeri, jim | 
|  | ±0: jorton, not reviewed but please include r1781030 too | 
|  |  | 
|  | *) mod_filter: AddOutputFilterByType should use underlying filters type, not just | 
|  | AP_FTYPE_CONTENT_SET.  PR58856 | 
|  | trunk patch: http://svn.apache.org/r1726705 | 
|  | 2.4.x patch: trunk works | 
|  | +1: covener, jim | 
|  |  | 
|  | *) mod_watchdog: Use pconf as parent pool so mutexes get cleaned on restarts/reloads | 
|  | and fix leaking sems (https://bugzilla.redhat.com/show_bug.cgi?id=1410883) | 
|  | trunk patch: http://svn.apache.org/r1778319 | 
|  | http://svn.apache.org/r1778331 | 
|  | 2.4.x patch: trunk works | 
|  | +1: jim, jorton, | 
|  |  | 
|  | *) mod_brotli: Backport of mod_brotli filter | 
|  | trunk patch: http://svn.apache.org/r1761714 | 
|  | http://svn.apache.org/r1762512 | 
|  | http://svn.apache.org/r1762515 | 
|  | http://svn.apache.org/r1771791 | 
|  | http://svn.apache.org/r1779077 | 
|  | 2.4.x patch: http://home.apache.org/~jim/patches/brotli-2.4.patch | 
|  | +1: jim, jorton, | 
|  |  | 
|  | *) mod_auth_digest: Use anonymous shm by default, fall back on name-based | 
|  | trunk patch: http://svn.apache.org/r1684636 | 
|  | 2.4.x patch: trunk works (needs CHANGES, ref PR 54622) | 
|  | +1: jorton, | 
|  |  | 
|  | PATCHES/ISSUES THAT ARE BEING WORKED | 
|  | [ New entried should be added at the START of the list ] | 
|  |  | 
|  | *) mod_ssl: Return 502 instead of 500 when SSL peer check or | 
|  | proxy_post_handshake hook fails. | 
|  | Trunk patch: r1645529 (works) | 
|  | 2.4.x patch which adds CHANGES: https://emptyhammock.com/media/downloads/r1645529-to-2.4.x.txt | 
|  | +1: trawick | 
|  | ylavic: there may be missing bits, see thread for commit r1736510. | 
|  |  | 
|  | *) core: Drop an invalid Last-Modified header value coming | 
|  | from a (F)CGI script instead of replacing it with Unix epoch. | 
|  | Warn the users about Last-Modified header value replacements | 
|  | and violations of the RFC. | 
|  | trunk patch: http://svn.apache.org/r1748379 | 
|  | http://svn.apache.org/r1750747 | 
|  | http://svn.apache.org/r1750749 | 
|  | http://svn.apache.org/r1750953 | 
|  | http://svn.apache.org/r1751138 | 
|  | http://svn.apache.org/r1751139 | 
|  | http://svn.apache.org/r1751147 | 
|  | http://svn.apache.org/r1757818 | 
|  | 2.4.x: trunk patches work, final view: | 
|  | http://home.apache.org/~elukey/httpd-2.4.x-core-last_modified_tz_logging.patch | 
|  | The problem has been discussed in dev@ extensively but we did not reach a common | 
|  | agreement about how to proceed in the long term. While we wait, I would really like | 
|  | to introduce useful logs for the users (the starting point of this change was a users@ | 
|  | email thread). If this is not the right way to go I will move the patch to other | 
|  | sections of STATUS (stalled or being worked). | 
|  | The code has been tested with a simple PHP script returning different Last-Modified | 
|  | headers (GMT now, GMT now Europe/Paris, GMT tomorrow, GMT yesterday, PST now). | 
|  | +1: elukey | 
|  |  | 
|  | *) http: Don't remove the Content-Length of zero from a HEAD response if | 
|  | it comes from an origin server, module or script. Allow the previous | 
|  | behaviour (for legacy/buggy modules only, not origin) by also backporting | 
|  | the HttpContentLengthHeadZero directive (and also HttpExpectStrict which | 
|  | comes for free with the same commit). | 
|  | trunk patch: http://svn.apache.org/r1554303 | 
|  | http://svn.apache.org/r1678215 | 
|  | 2.4.x patch: http://people.apache.org/~ylavic/httpd-2.4.x-preserve_head_cl_zero.patch | 
|  | +1: ylavic, jim | 
|  | ylavic: r1554303 issued a major MMN bump, but since the ABI change is two | 
|  | ints added at the end of core_server_config, the proposed merge | 
|  | does a minor bump only. | 
|  | minfrin: Two new directives need to be documented. | 
|  |  | 
|  | * mod_proxy_http: Don't establish or reuse a backend connection before pre- | 
|  | fetching the request body, so to minimize the delay between it is supposed | 
|  | to be alive and the first bytes sent: this is a best effort to prevent the | 
|  | backend from closing because of idle or keepalive timeout in the meantime. | 
|  | Also, handle a new "proxy-flushall" environment variable which allows to | 
|  | flush any forwarded body data immediately. PR 56541+37920. | 
|  | trunk patch: http://svn.apache.org/r1656259 | 
|  | http://svn.apache.org/r1656359 (CHANGES entry) | 
|  | 2.4.x patch: trunk works (modulo CHANGES, docs/log-message-tags) | 
|  | +1: ylavic | 
|  | -0: jim:  This seems to be a hit to normal performance, to handle an | 
|  | error and/or non-normal condition. The pre-fetch is | 
|  | expensive, and is always done, even before we know that | 
|  | the backend is available to rec' it. I understand the | 
|  | error described, but is the fix actually worth it (plus | 
|  | it seems to allow for a DDoS vector). | 
|  | ylavic: It seems to me that the problem is real since we reuse the | 
|  | connection before prefetching 16K (either controlled by the | 
|  | client, or by an input filter), we currently always prefetch | 
|  | these bytes already. Regarding performance I don't see any | 
|  | difference (more cycles) compared with the current code. | 
|  | However I think I failed to rebuild the header_brigade when | 
|  | the proxy loop is retried (ping), so I need to rework this. | 
|  | Do you think we'd better remove the prefetch, or maybe just | 
|  | make it nonblocking (by default)? | 
|  | jim: Non-blocking seems the best way to handle... | 
|  |  | 
|  | * mod_dav: Allow other modules to become providers and add ACLs | 
|  | to the DAV response. Requires a release of apr-util v1.6. | 
|  | trunk patch: http://svn.apache.org/r1748322 | 
|  | 2.4.x: trunk works modulo CHANGES/MMN | 
|  | +1: minfrin | 
|  | rpluem asks: Will this compile with apr-util < v1.6 and keep | 
|  | mod_dav working (without the new features of the patch of course)? | 
|  | I doubt that we will require apr-util 1.6 for the lifetime of 2.4.x | 
|  | (see the discussion around ap_cstr_casecmp[n] an apr 1.6) | 
|  | minfrin: Yes, as you can see in the patch everything applies only | 
|  | if APR_XML_X2T_PARSED is defined, and the patch was tested with | 
|  | both apr-util v1.6 and apr-util v1.5. | 
|  | -1: jorton, breaks binary backwards compat per dev@ discuss | 
|  | msgid <20160902120654.GA12674@redhat.com> | 
|  | (& also, making the structure change with apr-util version | 
|  | means it breaks binary compat across an apr-util upgrade?) | 
|  |  | 
|  | * Support PCRE2 (10.x) in place of PCRE (8.x). | 
|  | Submitted by: wrowe, Petr Pisar [ppisar redhat.com] | 
|  | trunk patches: | 
|  | http://svn.apache.org/r1773454 | 
|  | http://svn.apache.org/r1773741 | 
|  | http://svn.apache.org/r1773742 | 
|  | http://svn.apache.org/r1773839 | 
|  | http://svn.apache.org/r1773870 | 
|  | http://svn.apache.org/r1773882 | 
|  | wrowe notes that the current code is too inefficient, owing to the fact | 
|  | that the ovector is a required allocation and is no longer allocated on | 
|  | the stack, by design. The correct fix is an apr userdata allocation on | 
|  | the appropriate pool, which would be thread-safe, but the actual API of | 
|  | ap_regexec[_len]() offers us no pool. We cannot associate that pool with | 
|  | the ap_regex_t, because a single regex may be used by many threads in | 
|  | parallel and is not thread-safe beyond initialization. | 
|  | So the only fix allowing us to use PCRE 10 in httpd 2.4 would be to write | 
|  | this as a thread safe storage buffer for the majority of cases (<10 $args) | 
|  | and we don't have a portable tls mechanism to do so. | 
|  |  | 
|  |  | 
|  | PATCHES/ISSUES THAT ARE STALLED | 
|  |  | 
|  | * core: Add ap_errorlog_provider to make ErrorLog logging modular. This | 
|  | backport keeps syslog logging as part of httpd core and only adds | 
|  | API to allow other modules to be used for error logging. | 
|  | trunk patch: http://svn.apache.org/r1525597 | 
|  | http://svn.apache.org/r1525664 | 
|  | http://svn.apache.org/r1525845 | 
|  | http://svn.apache.org/r1527003 | 
|  | http://svn.apache.org/r1527005 | 
|  | http://svn.apache.org/r1532344 | 
|  | http://svn.apache.org/r1539988 | 
|  | http://svn.apache.org/r1541029 | 
|  | http://svn.apache.org/r1543979 | 
|  | http://svn.apache.org/r1544156 | 
|  | http://svn.apache.org/r1626978 | 
|  | 2.4.x patch: http://people.apache.org/~jkaluza/patches/httpd-2.4.x-errorlog_provider.patch | 
|  | +1: jkaluza | 
|  | +1: covener w/ doc or code to fix syntax (providername:providerarg not supported like syslog or socacheproviders, | 
|  | needs 2 args which is not valid in ErrorLog manual) | 
|  | trawick: nit: fix "writing" in "/* NULL if we are writing to syslog */" | 
|  | (sorry, haven't finished reviewing completely) | 
|  | jim: What is the status of this?? | 
|  |  | 
|  | * mod_proxy: Add ap_proxy_define_match_worker() and use it for ProxyPassMatch | 
|  | and ProxyMatch section to distinguish between normal workers and workers | 
|  | with regex substitutions in the name. Implement handling of such workers | 
|  | in ap_proxy_get_worker(). Fixes the bug when regex workers were not | 
|  | matched and used for request. PR 43513. | 
|  | trunk patch: http://svn.apache.org/r1609680 | 
|  | http://svn.apache.org/r1609688 | 
|  | http://svn.apache.org/r1641381 | 
|  | ylavic: Merge patch provided (reusing new->real to avoid double de_socketfy() call). | 
|  | Also added missing r1609688 to the patchset. | 
|  | 2.4.x patch: http://people.apache.org/~ylavic/httpd-2.4.x-ap_proxy_define_match_worker.patch | 
|  | +1: ylavic | 
|  | -0: covener tried to review this one in Austin with Jeff.  Does the added match function | 
|  | really cover a very narrow set of parameters with the way it skips over backreferences? | 
|  | Also, why a new API vs. just setting the field inline? | 
|  |  | 
|  | * mod_systemd: New module, for integration with systemd on Linux. | 
|  | trunk patch: http://svn.apache.org/r1393976 | 
|  | http://svn.apache.org/r1393997 | 
|  | http://svn.apache.org/r1484554 | 
|  | http://svn.apache.org/r1528032 | 
|  | http://svn.apache.org/r1528034 | 
|  | http://svn.apache.org/r1614821 | 
|  | http://svn.apache.org/r1618579 | 
|  | http://svn.apache.org/r1618588 | 
|  | 2.4.x patch: http://people.apache.org/~jkaluza/patches/mod_systemd/httpd-2.4.x-mod_systemd.patch | 
|  | +1: jkaluza | 
|  | sf comments: The IdleShutdown logic seems broken. Consider a single | 
|  | active connection that is stalled for 10 seconds. That | 
|  | connection will be broken after GracefulShutdownTimeout. | 
|  | A better logic would be to check if there is any open | 
|  | connection that is not in keep-alive state. | 
|  |  | 
|  | * mod_journald: Add new module mod_journald to log error logs into journald. | 
|  | This patch needs changes done in mod_systemd patch (already | 
|  | proposed for 2.4.x). | 
|  | trunk patch: http://svn.apache.org/r1610339 | 
|  | http://svn.apache.org/r1621806 | 
|  | 2.4.x patch: http://people.apache.org/~jkaluza/patches/httpd-2.4.x-mod_journald.patch | 
|  | +1: jkaluza, jim | 
|  | rjung, minfrin: Not understanding "This patch needs changes done in | 
|  | mod_systemd patch", am I right in understanding this patch is | 
|  | already committed? | 
|  | jkaluza: No, that patch is not committed yet. It is in STALLED section. | 
|  | The link for that patch is: http://people.apache.org/~jkaluza/patches/mod_systemd/httpd-2.4.x-mod_systemd.patch | 
|  |  | 
|  | * core: Add support for systemd socket activation. | 
|  | trunk patch: http://svn.apache.org/r1511033 | 
|  | http://svn.apache.org/r1608686 | 
|  | http://svn.apache.org/r1608694 | 
|  | http://svn.apache.org/r1608703 | 
|  | http://svn.apache.org/r1608721 | 
|  | http://svn.apache.org/r1608744 | 
|  | 2.4.x patch: http://people.apache.org/~jkaluza/patches/mod_systemd/httpd-2.4.x-socket-activation.patch | 
|  | +1: jkaluza | 
|  |  | 
|  | * mod_proxy: Ensure network errors detected by the proxy are returned as | 
|  | 504 Gateway Timeout as opposed to 502 Bad Gateway | 
|  | trunk patch: https://svn.apache.org/viewvc?view=revision&revision=1480058 | 
|  | 2.4.x patch: trunk patch works modulo CHANGES | 
|  | +1: | 
|  | -1: rpluem: This change is still disputed. See | 
|  | http://mail-archives.apache.org/mod_mbox/httpd-dev/201305.mbox/%3C1B16B9E3-87BA-4EEF-939C-7C7313B54714%40gbiv.com%3E | 
|  |  | 
|  | * cross-compile: allow to provide CC_FOR_BUILD so that gen_test_char will be | 
|  | compiled by the build compiler instead of the host compiler. | 
|  | Also set CC_FOR_BUILD to 'cc' when cross-compilation is detected. | 
|  | Trunk patches: http://svn.apache.org/viewvc?view=revision&revision=1327907 | 
|  | http://svn.apache.org/viewvc?view=revision&revision=1328390 | 
|  | http://svn.apache.org/viewvc?view=revision&revision=1328714 | 
|  | 2.4 patch: http://people.apache.org/~fuankg/diffs/httpd-2.4.x-cross_compile.diff | 
|  | fuankg: on hold until we agree for a better and more simple solution ... | 
|  |  | 
|  | * Makefile.win: Added copying of .vbs / .wsf CGIs to Windows install target. | 
|  | Moved fixing of shebang to separate target so that it is | 
|  | no longer executed by default and all CGIs remain inactive. | 
|  | trunk patch: http://svn.apache.org/viewvc?view=revision&revision=1387984 | 
|  | http://svn.apache.org/viewvc?view=revision&revision=1421203 | 
|  | http://svn.apache.org/viewvc?view=revision&revision=1421591 | 
|  | 2.4.x patch: http://people.apache.org/~fuankg/diffs/httpd-2.4.x-Makefile.win.diff | 
|  | +1 fuankg, gsmith | 
|  | -.8: trawick | 
|  | This commit is essentially deciding that an httpd install on | 
|  | Windows now has printenv/testcgi written in 2 more languages. | 
|  | To the extent that the usefulness is that it shows how to make scripts | 
|  | of these types executable by httpd, I believe that the documentation | 
|  | is the proper place to solve that.  To the extent that the usefullness | 
|  | is to show how to implement a CGI in these particular languages, I believe | 
|  | that the httpd distribution and documentation in general is not the | 
|  | place for that.  Historically these types of scripts have caused problems | 
|  | for downstream vendorsas well as newbies (and sometimes the intersection | 
|  | of those two groups) who don't understand that these are information leaks | 
|  | once they are enabled, and the subtlety of the way they are disabled ("Apache | 
|  | messed up the first line; let me fix that") contributes to that. | 
|  | fuankg notes: I've just added a big warning to all CGI scripts which should now | 
|  | make absolutely clear that these CGIs are for testing purpose only - so those | 
|  | who enable those scripts with inserting the right shebang should be 100% aware | 
|  | of any risks (this should cover your last point). | 
|  | jim: trawick, does the above address your concerns? | 
|  | trawick: to some extent (somebody reading the script gets an idea) | 
|  | Why isn't the configuration requirement documented instead | 
|  | of described indirectly in a sample? | 
|  | Why are these new samples added to the install without three | 
|  | votes?  (I didn't veto it; put your name next to the two | 
|  | existing ones and I'll be satisfied that enough people | 
|  | considered this addition as an appropriate solution for a | 
|  | real httpd usability problem.) | 
|  | wrowe: I'd agree with trawick, and suggest that these scripts can begin | 
|  | their life somewhere in the manual/ tree.  This really seems like | 
|  | the place where /usr/share/httpd/examples/ would be useful, but | 
|  | there isn't an ordinary directory for that.  Since we want none | 
|  | of the scripts to function 'out of the box', what about a new | 
|  | cgi-examples/ dir alongside cgi-bin/? Otherwise manual/cgi/examples | 
|  | might work? | 
|  |  | 
|  | * core: block Define and Undefine in vhost and directory context. Because | 
|  | it is EXEC_ON_READ, it "breaks out" of these contexts anyway. | 
|  | trunk patch: http://svn.apache.org/r1656063 | 
|  | http://svn.apache.org/r1656122 | 
|  | 2.4.x patch:  http://people.apache.org/~covener/patches/2.4.x-define-limits.diff | 
|  | +1: covener (I need to review the docs manually in this area) | 
|  | -1: wrowe (blocking will break "working" .conf files on a subversion update | 
|  | meant to pick up security fixes.  "Alerting" I would agree to.) | 
|  |  | 
|  |  |