mirror of
https://github.com/apache/httpd.git
synced 2025-07-29 12:37:06 +00:00

git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/branches/2.4.x@1824863 13f79535-47bb-0310-9956-ffa450edef68
426 lines
22 KiB
Plaintext
426 lines
22 KiB
Plaintext
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
|
|
|
|
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
|
|
* http://svn.apache.org/repos/asf/apr/apr/branches/1.6.x/STATUS
|
|
* http://svn.apache.org/repos/asf/apr/apr-util/branches/1.6.x/STATUS
|
|
|
|
Patches considered for backport are noted in their branches' 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.31 : In development.
|
|
2.4.30 : Tagged on February 19, 2018.
|
|
2.4.29 : Tagged on October 17, 2017. Released on October 23, 2017.
|
|
2.4.28 : Tagged on September 25, 2017. Released on October 5, 2017.
|
|
2.4.27 : Tagged on July 6, 2017. Released on July 11, 2017.
|
|
2.4.26 : Tagged on June 13, 2017. Released on June 19, 2017.
|
|
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:
|
|
. mod_proxy_http2
|
|
. mod_lua
|
|
. documentation
|
|
. non-Unix build
|
|
. non-Unix, single-platform code
|
|
|
|
RELEASE SHOWSTOPPERS:
|
|
|
|
|
|
PATCHES ACCEPTED TO BACKPORT FROM TRUNK:
|
|
[ start all new proposals below, under PATCHES PROPOSED. ]
|
|
|
|
*) mpm_queue: Put fdqueue code in common for MPMs event and worker.
|
|
trunk patch: http://svn.apache.org/r1821624
|
|
http://svn.apache.org/r1821625
|
|
http://svn.apache.org/r1821626
|
|
http://svn.apache.org/r1821627
|
|
http://svn.apache.org/r1821629
|
|
http://svn.apache.org/r1821632
|
|
http://svn.apache.org/r1821635
|
|
http://svn.apache.org/r1821639
|
|
http://svn.apache.org/r1821644
|
|
http://svn.apache.org/r1821647
|
|
http://svn.apache.org/r1821648
|
|
http://svn.apache.org/r1821649
|
|
http://svn.apache.org/r1821650
|
|
http://svn.apache.org/r1821651
|
|
http://svn.apache.org/r1821659
|
|
http://svn.apache.org/r1821660
|
|
http://svn.apache.org/r1822366
|
|
http://svn.apache.org/r1822367
|
|
http://svn.apache.org/r1824381
|
|
2.4.x patch: svn merge ^/httpd/httpd/branches/2.4.x-mpm_fdqueue .
|
|
(http://home.apache.org/~ylavic/patches/httpd-2.4.x-mpm_fdqueue.patch)
|
|
+1: ylavic, minfrin, jim
|
|
ylavic: The branch merge helps resolve move conflicts since event and
|
|
worker fdqueue.[ch] differ(ed) between 2.4.x and trunk. The patch
|
|
is provided only to help review.
|
|
ylavic: re MMN, the API is private, so no bump (supposedly).
|
|
minfrin: Keeping mpm_fdqueue.h private makes it hard for people to fork event
|
|
and worker and make their own mpms. Can we make this public?
|
|
ylavic: not easier/harder than now I suppose (worker/event fqueues are private).
|
|
maybe make them public in trunk only, so that we have more time to
|
|
discuss the API (if needed).
|
|
minfrin: happy with that, we can backport the final API.
|
|
|
|
*) mpm_event: Do lingering close in worker(s).
|
|
trunk patch: http://svn.apache.org/r1823047
|
|
http://svn.apache.org/r1824454
|
|
http://svn.apache.org/r1824463
|
|
http://svn.apache.org/r1824464
|
|
http://svn.apache.org/r1824497
|
|
2.4.x patch: http://home.apache.org/~ylavic/patches/httpd-2.4.x-event-lingering_close_in_worker.patch
|
|
(trunk works if mpm_queue above is merged first, otherwise
|
|
the mpm_queue branch can also be synchronized after this
|
|
merge, YMMV :)
|
|
+1: ylavic, minfrin (with mmn bump for CONN_STATE_NUM), jim
|
|
ylavic: + http://svn.apache.org/r1824862 (MMN bump)
|
|
|
|
*) mod_ldap: apr_rmm loops/hangs/crashes when LDAP auth is used in vhosts
|
|
due to unlocked access.
|
|
trunk patch: http://svn.apache.org/r1824811
|
|
2.4.x: trunk works
|
|
+1 covener, rpluem, jim
|
|
|
|
|
|
PATCHES PROPOSED TO BACKPORT FROM TRUNK:
|
|
[ New proposals should be added at the end of the list ]
|
|
|
|
*) mod_dav: Allow other modules to become providers and add ACLs
|
|
to the DAV response.
|
|
trunk patch: http://svn.apache.org/r1748322
|
|
http://svn.apache.org/r1824590
|
|
http://svn.apache.org/r1824596
|
|
2.4.x: trunk works modulo CHANGES/MMN/log-message
|
|
+1: minfrin, jim
|
|
|
|
|
|
PATCHES/ISSUES THAT ARE BEING WORKED
|
|
[ New entries 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...
|
|
|
|
* 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.
|
|
jorton: Adding ap_pregexec/_len which pass a pool would also work
|
|
for internal users of this api; not sure if performance
|
|
impact is significant from using malloc here.
|
|
|
|
|
|
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?
|
|
|
|
* 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?
|
|
|
|
*) mod_journald: Add new module mod_journald to log error logs into journald.
|
|
trunk patch: http://svn.apache.org/r1610339
|
|
http://svn.apache.org/r1621806
|
|
http://svn.apache.org/r1812339
|
|
2.4.x patch: http://people.apache.org/~jkaluza/patches/httpd-2.4.x-mod_journald.patch
|
|
http://svn.apache.org/r1812339
|
|
+1: jkaluza, jim
|
|
jchampion: Looks like the headers require GCC extensions to compile, so
|
|
mod_journald can't be configured in maintainer mode (-std=c89).
|
|
Can anyone else reproduce, or is it just my distro?
|
|
ylavic: missing r1812339 for maintainer-mode/c89/-Werror compliance,
|
|
needed if the above configure.in proposal gets backported.
|
|
Note that r1812339 could be backported in any case, even if
|
|
the above configure.in proposal does not get accepted.
|
|
|
|
* 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.
|