1 APACHE 2.4 STATUS: -*- mode: text; coding: utf-8 -*-
2 Last modified at [$Date$]
4 The current version of this file can be found at:
6 * http://svn.apache.org/repos/asf/httpd/httpd/branches/2.4.x/STATUS
8 Documentation status is maintained separately and can be found at:
10 * docs/STATUS in this source tree, or
11 * http://svn.apache.org/repos/asf/httpd/httpd/branches/2.4.x/docs/STATUS
13 The current development branch of this software can be found at:
15 * http://svn.apache.org/repos/asf/httpd/httpd/trunk
17 Consult the following STATUS files for information on related projects:
19 * http://svn.apache.org/repos/asf/apr/apr/trunk/STATUS
20 * http://svn.apache.org/repos/asf/apr/apr/branches/1.4.x/STATUS
21 * http://svn.apache.org/repos/asf/apr/apr-util/branches/1.4.x/STATUS
22 * http://svn.apache.org/repos/asf/apr/apr/branches/1.5.x/STATUS
23 * http://svn.apache.org/repos/asf/apr/apr-util/branches/1.5.x/STATUS
25 Patches considered for backport are noted in their branches' STATUS:
27 * http://svn.apache.org/repos/asf/httpd/httpd/branches/2.0.x/STATUS
28 * http://svn.apache.org/repos/asf/httpd/httpd/branches/2.2.x/STATUS
29 * http://svn.apache.org/repos/asf/httpd/httpd/branches/2.4.x/STATUS
34 [NOTE that x.{odd}.z versions are strictly Alpha/Beta releases,
35 while x.{even}.z versions are Stable/GA releases.]
37 2.4.26 : In development.
38 2.4.25 : Tagged on December 16, 2016. Released on December 21, 2016.
39 2.4.24 : Tagged on December 16, 2016, not released.
40 2.4.23 : Tagged on June 30, 2016. Released on July 05, 2016.
41 2.4.22 : Tagged on June 20, 2016, not released.
42 2.4.21 : Tagged on June 16, 2016, not released.
43 2.4.20 : Tagged on April 4, 2016. Released on April 11, 2016.
44 2.4.19 : Tagged on March 21, 2016, not released.
45 2.4.18 : Tagged on December 8, 2015. Released on December 14, 2015.
46 2.4.17 : Tagged on October 9, 2015. Released October 13, 2015.
47 2.4.16 : Tagged on July 9, 2015. Released July 15, 2015
48 2.4.15 : Tagged on June 19, 2015. Not released.
49 2.4.14 : Tagged on June 11, 2015. Not released.
50 2.4.13 : Tagged on June 4, 2015. Not released.
51 2.4.12 : Tagged on January 22, 2015. Released Jan 29, 2015
52 2.4.11 : Tagged on January 15, 2015. Not released.
53 2.4.10 : Tagged on July 15, 2014. Released July 21, 2014
54 2.4.9 : Tagged on March 13, 2014. Released on March 17, 2014
55 2.4.8 : Tagged on March 11, 2014. Not released.
56 2.4.7 : Tagged on November 19, 2013. Released on Nov 25, 2013
57 2.4.6 : Tagged on July 15, 2013. Released July, 22, 2013
58 2.4.5 : Tagged on July 11, 2013, not released.
59 2.4.4 : Tagged on February 18, 2013. Released Feb 25, 2013
60 2.4.3 : Tagged on August 17, 2012. Released Aug 18, 2012
61 2.4.2 : Tagged on April 5, 2012. Released Apr 17, 2012.
62 2.4.1 : Tagged on February 13, 2012. Released Feb 21, 2012.
63 2.4.0 : Tagged on January 16, 2012, not released.
64 2.3.16 : Tagged on December 15, 2011.
65 2.3.15 : Tagged on November 8, 2011. Released Nov. 15, 2011.
66 2.3.14 : Tagged on August 1, 2011. Released Aug. 9, 2011.
67 2.3.13 : Tagged on June 28, 2011, not released.
68 2.3.12 : Tagged on May 11, 2011. Released May 23, 2011.
69 2.3.11 : Released as Beta on March 7, 2011.
70 2.3.10 : Tagged on December 13, 2010. Released Dec 21, 2010.
71 2.3.9 : Tagged on November 23, 2010, not released.
72 2.3.8 : Tagged on August 24, 2010.
73 2.3.7 : Tagged on August 19, 2010, not released.
74 2.3.6 : Released on June 21, 2010.
75 2.3.5 : Released on January 26, 2010.
76 2.3.4 : Released on December 8, 2009.
77 2.3.3 : Tagged on November 11, 2009, not released.
78 2.3.2 : Tagged on March 23, 2009, not released.
79 2.3.1 : Tagged on January 2, 2009, not released.
80 2.3.0 : Tagged on December 6, 2008, not released.
82 Contributors looking for a mission:
84 * Just do an egrep on "TODO" or "XXX" in the source.
86 * Review the bug database at: http://issues.apache.org/bugzilla/
88 * Review the "PatchAvailable" bugs in the bug database:
90 https://issues.apache.org/bugzilla/buglist.cgi?bug_status=NEW&bug_status=ASSIGNED&bug_status=REOPENED&product=Apache+httpd-2&keywords=PatchAvailable
92 After testing, you can append a comment saying "Reviewed and tested".
94 * Open bugs in the bug database.
96 * See also the STATUS file in the docs/ directory, which lists documentation-specific TODO items.
99 CURRENT RELEASE NOTES:
101 * Forward binary compatibility is expected of Apache 2.4.x releases, such
102 that no MMN major number changes will occur after 2.4.1. Such changes can
103 only be made in the trunk.
105 * All commits to branches/2.4.x must be reflected in SVN trunk,
106 as well, if they apply. Logical progression is commit to trunk
107 then merge into branches/2.4.x, as applicable.
109 * Current exceptions for RTC for this branch:
114 . non-Unix, single-platform code
116 RELEASE SHOWSTOPPERS:
118 *) mod_proxy_hcheck: Ensure thread-safety when concurrent healthchecks are
119 in use (ProxyHCTPsize > 0). PR 60071.
120 trunk patch: http://svn.apache.org/r1779573
121 2.4.x patch: trunk works (modulo CHANGES)
124 PATCHES ACCEPTED TO BACKPORT FROM TRUNK:
125 [ start all new proposals below, under PATCHES PROPOSED. ]
127 *) core: %{DOCUMENT_URI} used in nested SSI expressions should point to the
128 URI originally requsted by the user, not the nested documents URI. This
129 restores the behavior of this variable to match the "legacy" SSI parser.
131 trunk patch: http://svn.apache.org/r1780095
132 2.4.x patch: trunk works
133 +1: covener, wrowe, ylavic
135 *) core: EBCDIC fixes for interim responses with additional headers.
136 trunk patch: http://svn.apache.org/r1777354
137 2.4.x patch: http://people.apache.org/~covener/patches/ebcdic-interim.diff
138 +1: covener, wrowe, ylavic (by inspection)
140 *) PR 60576: 2.4.21 broke PHP-FPM with the patch to strip the bogus "proxy://"
141 prefix from SCRIPT_FILENAME. We need to revert to the previous behavior
142 ASAP to avoid any further hurdles with FCGI implementations while we figure
144 trunk patch: http://svn.apache.org/r1780328
145 http://svn.apache.org/r1780329
146 http://svn.apache.org/r1781329
147 http://svn.apache.org/r1782164
148 http://svn.apache.org/r1782166
149 http://svn.apache.org/r1782193
150 http://svn.apache.org/r1778350
151 http://svn.apache.org/r1781329
152 http://svn.apache.org/r1782194
153 http://svn.apache.org/r1782323
154 http://svn.apache.org/r1782418
155 http://svn.apache.org/r1782419
156 http://svn.apache.org/r1782482
157 http://svn.apache.org/r1782532
158 http://svn.apache.org/r1788040
159 2.4.x patch: http://home.apache.org/~jim/patches/mod_proxy_fcgi-v3.patch
160 + http://svn.apache.org/r1788040
161 +1: jim, covener, jchampion
162 jchampion: holding off on promotion for an answer to jailletc36's ML
163 question regarding `ProxyFCGIBackendType PHP-FPM`
164 covener: added http://svn.apache.org/r1788040
166 PATCHES PROPOSED TO BACKPORT FROM TRUNK:
167 [ New proposals should be added at the end of the list ]
169 *) mod_proxy, mod_ssl: Handle SSLProxy* directives in <Proxy> sections,
170 allowing per backend TLS configuration.
171 trunk patch: http://svn.apache.org/r1740928
172 http://svn.apache.org/r1740960
173 http://svn.apache.org/r1740967
174 http://svn.apache.org/r1740987
175 http://svn.apache.org/r1740998
176 http://svn.apache.org/r1742697
177 http://svn.apache.org/r1756976
178 http://svn.apache.org/r1781313
179 2.4.x patch: http://home.apache.org/~ylavic/patches/httpd-2.4.x-r1740928_and_co-v3.patch
182 *) mod_proxy_hcheck: Don't validate timed out responses.
183 trunk patch: http://svn.apache.org/r1779574
184 http://svn.apache.org/r1779623
185 2.4.x patch: trunk works *after r1779573 above* (modulo CHANGES)
188 *) mod_ssl: backport fix for PR 46037
189 trunk patch: http://svn.apache.org/r1781575
190 http://svn.apache.org/r1781577
191 http://svn.apache.org/r1781580
192 http://svn.apache.org/r1781687
193 http://svn.apache.org/r1783305
194 2.4.x patch: http://people.apache.org/~jfclere/patches/patch.46037.txt
196 wrowe asks: Can we capitalize Verify in SSLOCSPNoverify to keep
198 ylavic: +1 with http://svn.apache.org/r1788430, fixing the merge of
199 SSLOCSPNoverify and capitalizing as suggested above.
201 *) mod_cache: Fix a regression in 2.4.25 for the forward proxy case by
202 computing and using the same entity key according to when the cache
203 checks, loads and saves the request. PR 60577.
204 trunk patch: http://svn.apache.org/r1783842
205 2.4.x patch: trunk works (modulo CHANGES)
208 *) mod_proxy_hcheck: Honor checks in Vhosts
209 trunk patch: http://svn.apache.org/r1784203
210 http://svn.apache.org/r1784205
211 http://svn.apache.org/r1784227
212 http://svn.apache.org/r1784228
213 http://svn.apache.org/r1784275
214 http://svn.apache.org/r1785871
215 http://svn.apache.org/r1786009
216 2.4.x patch: trunk works *after r1779573 above* (modulo CHANGES)
217 FULL hcheck patch: http://home.apache.org/~jim/patches/httpd2.4-hcheck.patch
218 (includes all hcheck related patches, including showstopper)
220 ylavic: 'tpsize' needs to be reset (to HC_THREADPOOL_SIZE) in pre_config,
221 otherwise if mod_proxy_hcheck is builtin/static and for example
222 ProxyHCTPsize were commented out on restart, we wouldn't use the
223 default value (as expected).
225 *) mod_autoindex: Add IndexOptions UseOldDateFormat to allow the date
226 format from 2.2 in the Last Modified column. PR60846.
227 trunk patch: http://svn.apache.org/r1787525
228 http://svn.apache.org/r1787553
229 2.4.x patch: trunk works
231 wrowe notes: strncasecmp copy-paste error (should be strcasecmp), the
232 strn flavor was only for 'flag=' prefixes
234 *) mod_proxy: Allow the per-request environment variable "no-proxy" to
235 be used as an alternative to ProxyPass /path !. This is primarily
236 to set exceptions for ProxyPass specified in <Location> context.
237 trunk patch: http://svn.apache.org/r1781328
238 2.4.x patch: trunk works
240 jailletc36: compatibility note is missing
242 *) core: Add %{REMOTE_PORT} to the expression parser. PR59938
243 trunk patch: http://svn.apache.org/r1776459
244 2.4.x patch: trunk works
246 jailletc36: compatibility note is missing
249 PATCHES/ISSUES THAT ARE BEING WORKED
250 [ New entried should be added at the START of the list ]
252 *) mod_brotli: Backport of mod_brotli filter
253 trunk patch: http://svn.apache.org/r1761714
254 http://svn.apache.org/r1762512
255 http://svn.apache.org/r1762515
256 http://svn.apache.org/r1771791
257 http://svn.apache.org/r1779077
258 http://svn.apache.org/r1779091
259 http://svn.apache.org/r1779699
260 2.4.x patch: http://home.apache.org/~jim/patches/brotli-2.4.patch
262 -1: wrowe (Premature, waiting on github.com/google/brotli 0.6 release)
263 NOTE: Awaiting next release post 0.5.2
265 *) mod_remoteip: Add PROXY protocol support
266 trunk patch: http://svn.apache.org/r1776575
267 http://svn.apache.org/r1776578 (doc fix)
268 http://svn.apache.org/r1776627 (shortened name + doc fix)
269 http://svn.apache.org/r1776674 (attribution moved to CHANGES)
270 http://svn.apache.org/r1776740 (attribution updated in mod_remotip.c)
271 http://svn.apache.org/r1778268 (fix compiler warning)
272 http://svn.apache.org/r1780725 (set buckets aside)
273 http://svn.apache.org/r1781030 (fix strict GCC warning)
274 http://svn.apache.org/r1781031 (reference the filter by handle)
275 http://svn.apache.org/r1781701 (rework optional processing case)
276 2.4 convenience patch (includes CHANGES):
277 http://people.apache.org/~druggeri/patches/RemoteIPProxyProtocol.2.4.x.patch
279 -0.5: wrowe (Still reviewing support of unwise 'optional' schema vs. other
280 possibile solves; questioning reading-but-ignoring PROXY
281 protocol input, also seems unwise)
283 *) mod_ssl: Return 502 instead of 500 when SSL peer check or
284 proxy_post_handshake hook fails.
285 Trunk patch: r1645529 (works)
286 2.4.x patch which adds CHANGES: https://emptyhammock.com/media/downloads/r1645529-to-2.4.x.txt
288 ylavic: there may be missing bits, see thread for commit r1736510.
290 *) core: Drop an invalid Last-Modified header value coming
291 from a (F)CGI script instead of replacing it with Unix epoch.
292 Warn the users about Last-Modified header value replacements
293 and violations of the RFC.
294 trunk patch: http://svn.apache.org/r1748379
295 http://svn.apache.org/r1750747
296 http://svn.apache.org/r1750749
297 http://svn.apache.org/r1750953
298 http://svn.apache.org/r1751138
299 http://svn.apache.org/r1751139
300 http://svn.apache.org/r1751147
301 http://svn.apache.org/r1757818
302 2.4.x: trunk patches work, final view:
303 http://home.apache.org/~elukey/httpd-2.4.x-core-last_modified_tz_logging.patch
304 The problem has been discussed in dev@ extensively but we did not reach a common
305 agreement about how to proceed in the long term. While we wait, I would really like
306 to introduce useful logs for the users (the starting point of this change was a users@
307 email thread). If this is not the right way to go I will move the patch to other
308 sections of STATUS (stalled or being worked).
309 The code has been tested with a simple PHP script returning different Last-Modified
310 headers (GMT now, GMT now Europe/Paris, GMT tomorrow, GMT yesterday, PST now).
313 *) http: Don't remove the Content-Length of zero from a HEAD response if
314 it comes from an origin server, module or script. Allow the previous
315 behaviour (for legacy/buggy modules only, not origin) by also backporting
316 the HttpContentLengthHeadZero directive (and also HttpExpectStrict which
317 comes for free with the same commit).
318 trunk patch: http://svn.apache.org/r1554303
319 http://svn.apache.org/r1678215
320 2.4.x patch: http://people.apache.org/~ylavic/httpd-2.4.x-preserve_head_cl_zero.patch
322 ylavic: r1554303 issued a major MMN bump, but since the ABI change is two
323 ints added at the end of core_server_config, the proposed merge
324 does a minor bump only.
325 minfrin: Two new directives need to be documented.
327 * mod_proxy_http: Don't establish or reuse a backend connection before pre-
328 fetching the request body, so to minimize the delay between it is supposed
329 to be alive and the first bytes sent: this is a best effort to prevent the
330 backend from closing because of idle or keepalive timeout in the meantime.
331 Also, handle a new "proxy-flushall" environment variable which allows to
332 flush any forwarded body data immediately. PR 56541+37920.
333 trunk patch: http://svn.apache.org/r1656259
334 http://svn.apache.org/r1656359 (CHANGES entry)
335 2.4.x patch: trunk works (modulo CHANGES, docs/log-message-tags)
337 -0: jim: This seems to be a hit to normal performance, to handle an
338 error and/or non-normal condition. The pre-fetch is
339 expensive, and is always done, even before we know that
340 the backend is available to rec' it. I understand the
341 error described, but is the fix actually worth it (plus
342 it seems to allow for a DDoS vector).
343 ylavic: It seems to me that the problem is real since we reuse the
344 connection before prefetching 16K (either controlled by the
345 client, or by an input filter), we currently always prefetch
346 these bytes already. Regarding performance I don't see any
347 difference (more cycles) compared with the current code.
348 However I think I failed to rebuild the header_brigade when
349 the proxy loop is retried (ping), so I need to rework this.
350 Do you think we'd better remove the prefetch, or maybe just
351 make it nonblocking (by default)?
352 jim: Non-blocking seems the best way to handle...
354 * mod_dav: Allow other modules to become providers and add ACLs
355 to the DAV response. Requires a release of apr-util v1.6.
356 trunk patch: http://svn.apache.org/r1748322
357 2.4.x: trunk works modulo CHANGES/MMN
359 rpluem asks: Will this compile with apr-util < v1.6 and keep
360 mod_dav working (without the new features of the patch of course)?
361 I doubt that we will require apr-util 1.6 for the lifetime of 2.4.x
362 (see the discussion around ap_cstr_casecmp[n] an apr 1.6)
363 minfrin: Yes, as you can see in the patch everything applies only
364 if APR_XML_X2T_PARSED is defined, and the patch was tested with
365 both apr-util v1.6 and apr-util v1.5.
366 -1: jorton, breaks binary backwards compat per dev@ discuss
367 msgid <20160902120654.GA12674@redhat.com>
368 (& also, making the structure change with apr-util version
369 means it breaks binary compat across an apr-util upgrade?)
371 * Support PCRE2 (10.x) in place of PCRE (8.x).
372 Submitted by: wrowe, Petr Pisar [ppisar redhat.com]
374 http://svn.apache.org/r1773454
375 http://svn.apache.org/r1773741
376 http://svn.apache.org/r1773742
377 http://svn.apache.org/r1773839
378 http://svn.apache.org/r1773870
379 http://svn.apache.org/r1773882
380 wrowe notes that the current code is too inefficient, owing to the fact
381 that the ovector is a required allocation and is no longer allocated on
382 the stack, by design. The correct fix is an apr userdata allocation on
383 the appropriate pool, which would be thread-safe, but the actual API of
384 ap_regexec[_len]() offers us no pool. We cannot associate that pool with
385 the ap_regex_t, because a single regex may be used by many threads in
386 parallel and is not thread-safe beyond initialization.
387 So the only fix allowing us to use PCRE 10 in httpd 2.4 would be to write
388 this as a thread safe storage buffer for the majority of cases (<10 $args)
389 and we don't have a portable tls mechanism to do so.
392 PATCHES/ISSUES THAT ARE STALLED
394 * core: Add ap_errorlog_provider to make ErrorLog logging modular. This
395 backport keeps syslog logging as part of httpd core and only adds
396 API to allow other modules to be used for error logging.
397 trunk patch: http://svn.apache.org/r1525597
398 http://svn.apache.org/r1525664
399 http://svn.apache.org/r1525845
400 http://svn.apache.org/r1527003
401 http://svn.apache.org/r1527005
402 http://svn.apache.org/r1532344
403 http://svn.apache.org/r1539988
404 http://svn.apache.org/r1541029
405 http://svn.apache.org/r1543979
406 http://svn.apache.org/r1544156
407 http://svn.apache.org/r1626978
408 2.4.x patch: http://people.apache.org/~jkaluza/patches/httpd-2.4.x-errorlog_provider.patch
410 +1: covener w/ doc or code to fix syntax (providername:providerarg not supported like syslog or socacheproviders,
411 needs 2 args which is not valid in ErrorLog manual)
412 trawick: nit: fix "writing" in "/* NULL if we are writing to syslog */"
413 (sorry, haven't finished reviewing completely)
414 jim: What is the status of this??
416 * mod_proxy: Add ap_proxy_define_match_worker() and use it for ProxyPassMatch
417 and ProxyMatch section to distinguish between normal workers and workers
418 with regex substitutions in the name. Implement handling of such workers
419 in ap_proxy_get_worker(). Fixes the bug when regex workers were not
420 matched and used for request. PR 43513.
421 trunk patch: http://svn.apache.org/r1609680
422 http://svn.apache.org/r1609688
423 http://svn.apache.org/r1641381
424 ylavic: Merge patch provided (reusing new->real to avoid double de_socketfy() call).
425 Also added missing r1609688 to the patchset.
426 2.4.x patch: http://people.apache.org/~ylavic/httpd-2.4.x-ap_proxy_define_match_worker.patch
428 -0: covener tried to review this one in Austin with Jeff. Does the added match function
429 really cover a very narrow set of parameters with the way it skips over backreferences?
430 Also, why a new API vs. just setting the field inline?
432 * mod_systemd: New module, for integration with systemd on Linux.
433 trunk patch: http://svn.apache.org/r1393976
434 http://svn.apache.org/r1393997
435 http://svn.apache.org/r1484554
436 http://svn.apache.org/r1528032
437 http://svn.apache.org/r1528034
438 http://svn.apache.org/r1614821
439 http://svn.apache.org/r1618579
440 http://svn.apache.org/r1618588
441 2.4.x patch: http://people.apache.org/~jkaluza/patches/mod_systemd/httpd-2.4.x-mod_systemd.patch
443 sf comments: The IdleShutdown logic seems broken. Consider a single
444 active connection that is stalled for 10 seconds. That
445 connection will be broken after GracefulShutdownTimeout.
446 A better logic would be to check if there is any open
447 connection that is not in keep-alive state.
449 * mod_journald: Add new module mod_journald to log error logs into journald.
450 This patch needs changes done in mod_systemd patch (already
452 trunk patch: http://svn.apache.org/r1610339
453 http://svn.apache.org/r1621806
454 2.4.x patch: http://people.apache.org/~jkaluza/patches/httpd-2.4.x-mod_journald.patch
456 rjung, minfrin: Not understanding "This patch needs changes done in
457 mod_systemd patch", am I right in understanding this patch is
459 jkaluza: No, that patch is not committed yet. It is in STALLED section.
460 The link for that patch is: http://people.apache.org/~jkaluza/patches/mod_systemd/httpd-2.4.x-mod_systemd.patch
462 * core: Add support for systemd socket activation.
463 trunk patch: http://svn.apache.org/r1511033
464 http://svn.apache.org/r1608686
465 http://svn.apache.org/r1608694
466 http://svn.apache.org/r1608703
467 http://svn.apache.org/r1608721
468 http://svn.apache.org/r1608744
469 2.4.x patch: http://people.apache.org/~jkaluza/patches/mod_systemd/httpd-2.4.x-socket-activation.patch
472 * mod_proxy: Ensure network errors detected by the proxy are returned as
473 504 Gateway Timeout as opposed to 502 Bad Gateway
474 trunk patch: https://svn.apache.org/viewvc?view=revision&revision=1480058
475 2.4.x patch: trunk patch works modulo CHANGES
477 -1: rpluem: This change is still disputed. See
478 http://mail-archives.apache.org/mod_mbox/httpd-dev/201305.mbox/%3C1B16B9E3-87BA-4EEF-939C-7C7313B54714%40gbiv.com%3E
480 * cross-compile: allow to provide CC_FOR_BUILD so that gen_test_char will be
481 compiled by the build compiler instead of the host compiler.
482 Also set CC_FOR_BUILD to 'cc' when cross-compilation is detected.
483 Trunk patches: http://svn.apache.org/viewvc?view=revision&revision=1327907
484 http://svn.apache.org/viewvc?view=revision&revision=1328390
485 http://svn.apache.org/viewvc?view=revision&revision=1328714
486 2.4 patch: http://people.apache.org/~fuankg/diffs/httpd-2.4.x-cross_compile.diff
487 fuankg: on hold until we agree for a better and more simple solution ...
489 * Makefile.win: Added copying of .vbs / .wsf CGIs to Windows install target.
490 Moved fixing of shebang to separate target so that it is
491 no longer executed by default and all CGIs remain inactive.
492 trunk patch: http://svn.apache.org/viewvc?view=revision&revision=1387984
493 http://svn.apache.org/viewvc?view=revision&revision=1421203
494 http://svn.apache.org/viewvc?view=revision&revision=1421591
495 2.4.x patch: http://people.apache.org/~fuankg/diffs/httpd-2.4.x-Makefile.win.diff
498 This commit is essentially deciding that an httpd install on
499 Windows now has printenv/testcgi written in 2 more languages.
500 To the extent that the usefulness is that it shows how to make scripts
501 of these types executable by httpd, I believe that the documentation
502 is the proper place to solve that. To the extent that the usefullness
503 is to show how to implement a CGI in these particular languages, I believe
504 that the httpd distribution and documentation in general is not the
505 place for that. Historically these types of scripts have caused problems
506 for downstream vendorsas well as newbies (and sometimes the intersection
507 of those two groups) who don't understand that these are information leaks
508 once they are enabled, and the subtlety of the way they are disabled ("Apache
509 messed up the first line; let me fix that") contributes to that.
510 fuankg notes: I've just added a big warning to all CGI scripts which should now
511 make absolutely clear that these CGIs are for testing purpose only - so those
512 who enable those scripts with inserting the right shebang should be 100% aware
513 of any risks (this should cover your last point).
514 jim: trawick, does the above address your concerns?
515 trawick: to some extent (somebody reading the script gets an idea)
516 Why isn't the configuration requirement documented instead
517 of described indirectly in a sample?
518 Why are these new samples added to the install without three
519 votes? (I didn't veto it; put your name next to the two
520 existing ones and I'll be satisfied that enough people
521 considered this addition as an appropriate solution for a
522 real httpd usability problem.)
523 wrowe: I'd agree with trawick, and suggest that these scripts can begin
524 their life somewhere in the manual/ tree. This really seems like
525 the place where /usr/share/httpd/examples/ would be useful, but
526 there isn't an ordinary directory for that. Since we want none
527 of the scripts to function 'out of the box', what about a new
528 cgi-examples/ dir alongside cgi-bin/? Otherwise manual/cgi/examples
531 * core: block Define and Undefine in vhost and directory context. Because
532 it is EXEC_ON_READ, it "breaks out" of these contexts anyway.
533 trunk patch: http://svn.apache.org/r1656063
534 http://svn.apache.org/r1656122
535 2.4.x patch: http://people.apache.org/~covener/patches/2.4.x-define-limits.diff
536 +1: covener (I need to review the docs manually in this area)
537 -1: wrowe (blocking will break "working" .conf files on a subversion update
538 meant to pick up security fixes. "Alerting" I would agree to.)