core: Do not match files when using DirectoryMatch. PR41867.



git-svn-id: http://svn.apache.org/repos/asf/httpd/httpd/trunk@1635428 13f79535-47bb-0310-9956-ffa450edef68
more hints for OCSP Stapling:

* when a different cache mechanism is used...
* testing that your server sends an OCSP response


git-svn-id: http://svn.apache.org/repos/asf/httpd/httpd/trunk@1635510 13f79535-47bb-0310-9956-ffa450edef68
make docs

git-svn-id: http://svn.apache.org/repos/asf/httpd/httpd/trunk@1635511 13f79535-47bb-0310-9956-ffa450edef68
MPMs, core: make duplicated listeners (SO_REUSEPORT) introduced in r1599531
            less intrusive.

Submitted by: Yingqi Lu <yingqi.lu@intel.com>
Modified/Committed by: ylavic

Add ListenCoresBucketsRatio which is a configurable ratio between the number of
CPU cores (online) and the number of listeners buckets to create, defaulting to
zero (so that listeners buckets become an opt-in, ie. ncpus / ratio > 1).
This could also be made an opt-out by using the previous hardcoded value (8) as
default.

Make ap_close_listeners() act on all the listeners (including duplicated ones),
since the function is also called externally (eg. mod_cgid, mod_ssl_ct and
possibly any third party module) to cleanup opened descriptors when a process
is forked (the duplicated listeners are kept in a scoped/static variable).

Add ap_close_listeners_ex() to close a single bucket of listeners, used by the
children to close unused duplicates and internally by ap_close_listeners().

Make ap_duplicate_listeners() compute the number of buckets to be used, instead
of each MPM. This number is now based on the above ratio and will not change
unless asked to (given *num_buckets < 1, that is when the MPM does not run in
one-process mode nor after a graceful restart).

Remove some global variables (mpm_listen, enable_default_listeners) previously
used to communicate between MPMs and ap_listen, since ap_duplicate_listeners()
API can now be used to do so.
Also rename num_buckets as ap_num_listen_buckets, and prefix have_so_reuseport
with ap_ (both printed by ap_log_common(), hence kept global).
Detect ap_have_so_reuseport once only at startup.

Restore dummy_connection() as before r1599531 since sending POD signals should
not depend on the number of listeners buckets (there is still one single socket
receiving the connections).

For each MPM (concerned), move the bucket data (pod, listeners and eventually
accept mutex) into a struct and instanciate an array of them (sized by the
number of buckets), for each child to use its own data according to its bucket
index, and the parent to maintain the whole.


git-svn-id: http://svn.apache.org/repos/asf/httpd/httpd/trunk@1635521 13f79535-47bb-0310-9956-ffa450edef68
show a bit more of openssl's -status display

git-svn-id: http://svn.apache.org/repos/asf/httpd/httpd/trunk@1635558 13f79535-47bb-0310-9956-ffa450edef68
make docs

git-svn-id: http://svn.apache.org/repos/asf/httpd/httpd/trunk@1635580 13f79535-47bb-0310-9956-ffa450edef68
mod_proxy_wstunnel: abort backend connection on polling error to avoid
further processing (lingering close, SSL shutdown).


git-svn-id: http://svn.apache.org/repos/asf/httpd/httpd/trunk@1635644 13f79535-47bb-0310-9956-ffa450edef68
mod_proxy_connect: Don't issue AH02447 on sockets hangups, let the read
determine whether it is a normal close or a real error. PR 57168.

Abort the client or backend connection on polling errors, but don't forcibly
abort the client side at the end (the core filters will do that otherwise
when necessary), so that lingering close and SSL shutdown can occur on normal
close.


git-svn-id: http://svn.apache.org/repos/asf/httpd/httpd/trunk@1635645 13f79535-47bb-0310-9956-ffa450edef68