- Feb 20, 2018
-
-
Yann Ylavic authored
mpm_event: move lingering close "sucker" from the listener to worker(s). This was the last non-constant time action performed by the listener thread. It's now handled by the worker thread directly after entering lingering close, which should directly address the cases when the socket is already closed remotely at that time, hence avoid more scheduling (it may be the common case for some scenarios). And it's only if the above would need blocking (i.e. more data to suck) that the socket is added to the pollset for the listener to re-schedule a worker later when ready. If no worker is available at that time then the socket is forcibly closed (similarly to what's done for keepalive connections in this case). Also, since process_lingering_close() is now called by a worker thread and with almost no depth in the call stack, we can grow the size of the "suck" buffer from 2K to 32K to potentially call recv() up to sixteen times less. mpm_event: follow up to r1823047. Update clogged counter on read_request retry too. mpm_event: follow up to r1823047: simplify "clogging" logic (reentrance). mpm_event: follow up to r1823047: complete state validation after processing. mpm_event: follow up to r1823047: CHANGES entry. mpm_event: follow up to r1823047 and r1824464. MMN bump for CONN_STATE_NUM, plus don't consider CONN_STATE_LINGER_* as valid states returned process_connection (never have been). Submitted by: ylavic Reviewed by: ylavic, minfrin, jim git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/branches/2.4.x@1824868 13f79535-47bb-0310-9956-ffa450edef68
-
- Feb 19, 2018
-
-
Jim Jagielski authored
git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/branches/2.4.x@1824798 13f79535-47bb-0310-9956-ffa450edef68
-
Daniel Ruggeri authored
git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/branches/2.4.x@1824751 13f79535-47bb-0310-9956-ffa450edef68
-
- Feb 16, 2018
-
-
Yann Ylavic authored
mod_proxy: Provide an RFC1035 compliant version of the hostname in the proxy_worker_shared structure. PR62085 Tone down the message that worker hostname is too long noting it only affects legacy modules not yet using hostname_ex. Set the notice when hostname is too long for legacy proxy modules to info level. Submitted by: minfrin Reviewed by: minfrin, jim, ylavic git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/branches/2.4.x@1824504 13f79535-47bb-0310-9956-ffa450edef68
-
Graham Leggett authored
trunk patch: http://svn.apache.org/r1463049 http://svn.apache.org/r1492395 http://svn.apache.org/r1493257 http://svn.apache.org/r1494532 2.4.x patch: http://people.apache.org/~jorton/mad_pr54637.diff +1: jorton, ylavic, minfrin git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/branches/2.4.x@1824481 13f79535-47bb-0310-9956-ffa450edef68
-
Graham Leggett authored
trunk patch: http://svn.apache.org/r1824390 2.4.x patch: trunk works (modulo CHANGES) +1: ylavic, rpluem, minfrin git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/branches/2.4.x@1824477 13f79535-47bb-0310-9956-ffa450edef68
-
Graham Leggett authored
trunk patch: http://svn.apache.org/r1824343 2.4.x patch: trunk works (modulo CHANGES) +1: ylavic, rpluem, minfrin git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/branches/2.4.x@1824475 13f79535-47bb-0310-9956-ffa450edef68
-
Graham Leggett authored
caseless matching or extended format. trunk patch: http://svn.apache.org/r1824339 http://svn.apache.org/r1824439 +1: ylavic, rpluem, minfrin git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/branches/2.4.x@1824472 13f79535-47bb-0310-9956-ffa450edef68
-
Graham Leggett authored
error, not only on buffer full. trunk patch: http://svn.apache.org/r1824303 +1: ylavic, rpluem, minfrin git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/branches/2.4.x@1824469 13f79535-47bb-0310-9956-ffa450edef68
-
Graham Leggett authored
trunk patch: http://svn.apache.org/r1824336 +1: ylavic, elukey, rpluem git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/branches/2.4.x@1824456 13f79535-47bb-0310-9956-ffa450edef68
-
Graham Leggett authored
no longer automatically fatal errors but are instead logged and truncated, at which point the admin can determine if that is OK or not. trunk patch: http://svn.apache.org/r1823482 +1: jim, minfrin, rpluem git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/branches/2.4.x@1824455 13f79535-47bb-0310-9956-ffa450edef68
-
Yann Ylavic authored
Merge r1821624, r1821625, r1821626, r1821627, r1821629, r1821632, r1821635, r1821639, r1821644, r1821647, r1821648, r1821649, r1821650, r1821651, r1821659, r1821660, r1822366, r1822367, r1824381 from trunk: Shared fdqueue code between MPMs event and worker into mpm_fdqueue. This first step moves the files server/mpm/event/fdqueue.[ch] to server/mpm_fdqueue.[ch] (untouched for now, simple svn move). Will follow up with the necessary changes to mpm_unix.* for common code. mpm_fdqueue: follow up to r1821624. And now it's mpm_fdqueue, with minimal #includes. mpm_fdqueue: follow up to r1821624. Opacify fdqueue types. mpm_fdqueue: follow up to r1821624. Style, no functional change. mpm_fdqueue: follow up to r1821624. Rename ap_queue_info_get_idlers() to ap_queue_info_num_idlers(). mpm_fdqueue: follow up to r1821624. Clear recycled_pools_count in ap_free_idle_pools(). mpm_fdqueue: follow up to r1821624. Prepare mpm_worker to use common fdqueue. mpm_worker: follow up to r1821624. Use common [mpm_]fdqueue. mpm_fdqueue: follow up to r1821624. The implemention wants APR_HAS_THREADS too. mpm_fdqueue: follow up to r1821624. The code is not part of the API. mpm_fdqueue: follow up to r1821624. Fix typo in comment. mpm_fdqueue: follow up to r1821624. Cosmetics, 80 cols, no functional change. mpm_worker: follow up to r1821624. Free idle pools while stopping. mpm_fdqueue: follow up to r1821624. Be explicit in the naming about what's push/pop-ed. mpm_fdqueue: follow up to r1821624. Either error matters, simplify code. mpm_fdqueue: follow up to r1821624. Make the allocation and zero-ing in ap_queue_init() => ap_queue_create(). mpm_fdqueue: follow up to r1821624. Export ap_queue_*() fonctions, so that they are accessible from MPMs, but don't provide "mpm_fdqueue.h" in the API (include/). mpm_fdqueue: follow up to r1821624. 80 colums. Follow up to r1821624: CHANGES entry. Submitted by: ylavic git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/branches/2.4.x-mpm_fdqueue@1824384 13f79535-47bb-0310-9956-ffa450edef68
-
- Feb 15, 2018
-
-
Yann Ylavic authored
* mod_proxy: Allow setting options to globally defined balancer from ProxyPass used in VirtualHost. Balancers are now merged using the new merge_balancers method which merges the balancers options. mod_proxy: follow up to r1667707: MMN minor bump. Submitted by: jkaluza, ylavic Reviewed by: icing, jim, ylavic git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/branches/2.4.x@1824333 13f79535-47bb-0310-9956-ffa450edef68
-
- Feb 14, 2018
-
-
Christophe Jaillet authored
git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/branches/2.4.x@1824271 13f79535-47bb-0310-9956-ffa450edef68
-
Yann Ylavic authored
Merge r1776575, r1776578, r1776624, r1776627, r1776674, r1776734, r1776740, r1778268, r1780725, r1781030, r1781031, r1781701, r1788674, r1789800, r1790169, r1790457, r1790691, r1806985, r1812332, r1818279 from trunk: Merge new PROXY protocol code into mod_remoteip Fix typo in mod_remoteip's doc Shorten RemoteIPProxyProtocolEnable to RemoteIPProxyProtocol and correct references in docs Move attribution for mod_remoteip RemoteIPProxyProtocol from file to CHANGES On the trunk: * mod_remoteip: added cast to fix clang compiler error Reinsert attribution to mod_remoteip.c for PROXY protocol * Silence compiler warning Set all read buckets aside in case we need to restore all during optional header processing * modules/metadata/mod_remoteip.c: Fix GCC strict-aliasing warning by moving deference of header array via a different pointer type ("type-punning") out of line. * modules/metadata/mod_remoteip.c (register_hooks, remoteip_hook_pre_connection): Reference the filter by handle rather than ...
-
Yann Ylavic authored
git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/branches/2.4.x@1824246 13f79535-47bb-0310-9956-ffa450edef68
-
Graham Leggett authored
trunk patch: http://svn.apache.org/r1776575 http://svn.apache.org/r1776578 (doc fix) http://svn.apache.org/r1776624 http://svn.apache.org/r1776627 (shortened name + doc fix) http://svn.apache.org/r1776674 (attribution moved to CHANGES) http://svn.apache.org/r1776734 http://svn.apache.org/r1776740 (attribution updated in mod_remotip.c) http://svn.apache.org/r1778268 (fix compiler warning) http://svn.apache.org/r1780725 (set buckets aside) http://svn.apache.org/r1781030 (fix strict GCC warning) http://svn.apache.org/r1781031 (reference the filter by handle) http://svn.apache.org/r1781701 (rework optional processing case) http://svn.apache.org/r1788674 (final edge cases/ignore slave conns) http://svn.apache.org/r1789800 (remove optional processing) http://svn.apache.org/r1790169 (rename "exception" directive) http://svn.apache.org/r1790457 (Update directive name in err message) http://svn.apache.org/r1790691 http://svn.apache.org/r1806985 http://svn.apache.org/r1818279 2.4 convenience patch (includes CHANGES): http://home.apache.org/~ylavic/patches/RemoteIPProxyProtocol.2.4-v3.patch +1: druggeri, jim, minfrin git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/branches/2.4.x@1824221 13f79535-47bb-0310-9956-ffa450edef68
-
- Feb 13, 2018
-
-
Graham Leggett authored
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 http://svn.apache.org/r1781313 http://svn.apache.org/r1812193 2.4.x patch: https://svn.apache.org/repos/asf/httpd/httpd/patches/2.4.x/httpd-2.4.x-r1740928_and_co-v6.patch +1: ylavic, icing, minfrin git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/branches/2.4.x@1824187 13f79535-47bb-0310-9956-ffa450edef68
-
Graham Leggett authored
trunk patch: http://svn.apache.org/r1810358 http://svn.apache.org/r1810362 http://svn.apache.org/r1810363 http://svn.apache.org/r1810365 http://svn.apache.org/r1810447 http://svn.apache.org/r1816919 http://svn.apache.org/r1816922 http://svn.apache.org/r1818013 http://svn.apache.org/r1818280 +1: jim, icing, minfrin icing: tested on ubuntu 16.04 with a simple uwsgi python app. git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/branches/2.4.x@1824184 13f79535-47bb-0310-9956-ffa450edef68
-
Graham Leggett authored
depend on the number of restarts (non-Unix systems) and preserve shared names as much as possible on configuration changes for SHMs and persisted files. PR 62044. trunk patch: http://svn.apache.org/r1822509 http://svn.apache.org/r1822511 http://svn.apache.org/r1823412 http://svn.apache.org/r1823415 http://svn.apache.org/r1823416 http://svn.apache.org/r1823564 http://svn.apache.org/r1823572 http://svn.apache.org/r1823575 2.4.x patch: trunk works (modulo CHANGES) (or http://home.apache.org/~ylavic/patches/httpd-2.4.x-PR62044-slotmems_reuse.patch) +1: ylavic, jim, minfrin git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/branches/2.4.x@1824180 13f79535-47bb-0310-9956-ffa450edef68
-
- Feb 10, 2018
-
-
Stefan Eissing authored
Merged /httpd/httpd/trunk:r1821371,1822502-1822503,1822624 git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/branches/2.4.x@1823781 13f79535-47bb-0310-9956-ffa450edef68
-
- Feb 09, 2018
-
-
Yann Ylavic authored
mod_event: Let the listener thread do its maintenance job on resources shortage. PR 61979. Follow up to r1821558: CHANGES typo. mpm_event: Follow up to r1821558. Don't crash (in listener) if we can't create the ptrans allocator. Submitted by: ylavic Reviewed by: ylavic, jim, icing git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/branches/2.4.x@1823644 13f79535-47bb-0310-9956-ffa450edef68
-
Yann Ylavic authored
mpm_event: wakeup the listener to re-enable listening sockets. When listening sockets are disabled (too many connections) and the number of workers / active connections comes back below the limit, we need to wake up the listener to re-enable them. Add a new connections_above_limit() helper to determine when this applies. Follow up to r1819855: CHANGES entry. Submitted by: ylavic Reviewed by: ylavic, jim, icing git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/branches/2.4.x@1823643 13f79535-47bb-0310-9956-ffa450edef68
-
Yann Ylavic authored
git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/branches/2.4.x@1823636 13f79535-47bb-0310-9956-ffa450edef68
-
Stefan Eissing authored
Merge of r1605328,r1629576,r1643279,r1703241,r1802535,r1819847,r1819848,r1819852,r1819853,r1819855,r1821562,r1821558,r1821561,r1821595 from trunk *) event: staging changes (incremental patches) to sync 2.4.x with trunk. git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/branches/2.4.x@1823629 13f79535-47bb-0310-9956-ffa450edef68
-
Joe Orton authored
* modules/ssl/ssl_engine_config.c (ssl_cmd_SSLCompression): Fail if enabled *and* if OpenSSL does not make any compression methods available. Tweak wording for failure without SSL_OP_NO_COMPRESSION. Submitted by: jorton Reviewed by: jorton, jim, ylavic git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/branches/2.4.x@1823625 13f79535-47bb-0310-9956-ffa450edef68
-
- Jan 18, 2018
-
-
Yann Ylavic authored
mpm_{event,worker}: Mask signals for threads created by modules in child init. PR 62009, so that they don't receive (implicitely) the ones meant for the MPM. Inspired by: Armin Abfalterer <a.abfalterer gmail.com> Follow up to r1821504: same comment in event than in worker. Proposed by: ylavic Reviewed by: ylavic, icing, covener git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/branches/2.4.x@1821517 13f79535-47bb-0310-9956-ffa450edef68
-
- Jan 13, 2018
-
-
Yann Ylavic authored
mod_proxy_html: skip documents < 4 bytes PR 56286 Micha Lenk follow up r1599012: C99 fix Fix some style mod_proxy_html: follow up to r1599012. To determine whether or not HTML data are lower than 4 bytes, use a retain buffer rather than assuming that all should be contained in a single bucket with the next one being EOS (if any). mod_proxy_html: don't depend on NUL terminated bucket data. ap_regexec() wants NUL terminated strings, so use ap_regexec_len() instead. Submitted by: niq, takashi, jailletc36, ylavic, ylavic Reviewed by: jim, ylavic, icing git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/branches/2.4.x@1821073 13f79535-47bb-0310-9956-ffa450edef68
-
Yann Ylavic authored
core, mpm_event: Add ap_update_sb_handle() to avoid a small memory leak of sizeof(ap_sb_handle_t) when re-entering event's process_socket(). Follow up to r1802618: CHANGES entry. Proposed by: ylavic Reviewed by: ylavic, icing, jim git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/branches/2.4.x@1821069 13f79535-47bb-0310-9956-ffa450edef68
-
Yann Ylavic authored
event: update worker score keepalive status. Correct regressions introduced in r1137358 and r1740910. The conn_rec context may be passed only when setting up the initial connection, otherwise the request info is trashed. Follow up to r1740910: CHANGES entry. Submitted by: ylavic, wrowe, ylavic Reviewed by: ylavic, icing, jim git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/branches/2.4.x@1821068 13f79535-47bb-0310-9956-ffa450edef68
-
- Jan 10, 2018
-
-
Yann Ylavic authored
PR61891: looping over mostly full LDAP cache *) mod_ldap: Fix a case where a full LDAP cache would continually fail to purge old entries and log AH01323. PR61891. Submitted By: Hendrik Harms <hendrik.harms gmail.com> Committed By: covener Reviewed By: covener, jim, ylavic git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/branches/2.4.x@1820800 13f79535-47bb-0310-9956-ffa450edef68
-
Yann Ylavic authored
mpm_event: close connections not reported as handled by any module. This avoids losing track of them and leaking scoreboard entries. PR 61551. mpm_event: follow up to r1818804. Address corner case where connection is aborted due to ap_run_pre_connection() failure, and update comment about ap_run_process_connection() expected return status and state. mpm_event: follow up to r1818804 and r1818951. Align comment and fix typos. mpm_event: follow up to r1818804. Allow DONE as a successful ap_run_process_connection() return value, for instance h2_conn_run() and h2_task_process_conn() uses it, third-party modules may too... mpm_event: follow up to r1818804 and r1818951. Be more correct in comment about CONN_STATE_WRITE_COMPLETION. We currently have/need no state to simply wait for readability on a socket, so the previous comment was misleading. Write completion can't be used for a simple "wait for read event and come back to process_connection hooks". mpm_event: follow up to r1818804 and r1818960. Align mod_http2 with expected returned state from process_connection hooks in async MPMs. When the master connection is handled, enter CONN_STATE_LINGER in any case. Add missing APLOGNO Submitted by: ylavic, jailletc36 Reviewed by: ylavic, icing, covener git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/branches/2.4.x@1820796 13f79535-47bb-0310-9956-ffa450edef68
-
Yann Ylavic authored
core: deregister all hooks before leaving pconf, otherwise some late cleanup or function call (e.g. ap_log) may use one while DSOs are unloaded. See PR 61558 (double/second fault). core, MPMs unix: follow up to r1809881. Deregister all hooks first (in pre_cleanup), by doing it last we could still have had them run when DSOs were unloaded. Likewise, avoid double faults when handling fatal signals by restoring the default handler before pconf is cleared (we can't ap_log_error there). Finally, we need to ignore sig_term/restart (do nothing) when the main process is exiting (i.e. ap_pglobal is destroyed), since retained_data are freed. Aimed to fix all faults in PR 61558. MPMs unix: follow up to r1809881 and r1809973. unset_signals() is called when ap_pglobal is destroyed too. Follow up to r1809881: CHANGES entry. Reviewed by: ylavic, jim, covener git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/branches/2.4.x@1820794 13f79535-47bb-0310-9956-ffa450edef68
-
- Jan 04, 2018
-
-
Stefan Eissing authored
merge of 1804530,1804531,1805186,1806939,1807232,1808122 from trunk. Backport of mod_md support in mod_ssl. git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/branches/2.4.x@1820075 13f79535-47bb-0310-9956-ffa450edef68
-
- Dec 22, 2017
-
-
Nick Kew authored
PR#56457 included. git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/branches/2.4.x@1819098 13f79535-47bb-0310-9956-ffa450edef68
-
- Dec 21, 2017
-
-
Jim Jagielski authored
core: silently ignore a not existent file path when IncludeOptional is used. In https://bz.apache.org/bugzilla/show_bug.cgi?id=57585 some use cases were reported in which IncludeOptional seems to be too strict in its sanity checks. This change is a proposal to relax IncludeOptional checks to silently fail when a file path is not existent rather than returning SyntaxError. Submitted by: elukey Reviewed by: elukey, jim, niq git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/branches/2.4.x@1818964 13f79535-47bb-0310-9956-ffa450edef68
-
Jim Jagielski authored
event: better apr_pollset_add() failure handling to avoid an (very unlikely) worker vs listener race condition. Follow up to r1809273: CHANGES entry. Submitted by: ylavic Reviewed by: ylavic, jim, covener git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/branches/2.4.x@1818963 13f79535-47bb-0310-9956-ffa450edef68
-
- Dec 03, 2017
-
-
Luca Toscano authored
git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/branches/2.4.x@1817020 13f79535-47bb-0310-9956-ffa450edef68
-
- Dec 02, 2017
-
-
Christophe Jaillet authored
git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/branches/2.4.x@1817005 13f79535-47bb-0310-9956-ffa450edef68
-
- Nov 13, 2017
-
-
Jim Jagielski authored
mod_macro: fix usability of globally defined macros in .htaccess files. PR 57525. Reverts pre_config hook from r1656669 (happens too late for EXEC_ON_READ), and ensures ap_macros is reset on restart with a pconf cleanup. Proposed by: Jose Kahan <jose w3.org> Reviewed by: ylavic Submitted by: ylavic Reviewed by: ylavic, icing, jim git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/branches/2.4.x@1815101 13f79535-47bb-0310-9956-ffa450edef68
-