Skip to content
  1. Feb 16, 2018
    • Yann Ylavic's avatar
      Merge r1821624, r1821625, r1821626, r1821627, r1821629, r1821632, r1821635,... · 91f92d79
      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
      91f92d79
  2. Feb 15, 2018
  3. Feb 14, 2018
  4. Feb 13, 2018
  5. Feb 10, 2018
  6. Feb 09, 2018
  7. Jan 18, 2018
  8. Jan 13, 2018
  9. Jan 10, 2018
    • Yann Ylavic's avatar
      Merge r1818040 from trunk: · 01a4e02e
      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
      01a4e02e
    • Yann Ylavic's avatar
      Merge r1818804, r1818951, r1818958, r1818960, r1819027, r1819214, r1820035 from trunk: · 6e5b7f3d
      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
      6e5b7f3d
    • Yann Ylavic's avatar
      Merge r1809881, r1809973, r1809976, r1812075 from trunk: · eb99f1c7
      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
      eb99f1c7
  10. Jan 04, 2018
  11. Dec 22, 2017
  12. Dec 21, 2017
  13. Dec 03, 2017
  14. Dec 02, 2017
  15. Nov 13, 2017
    • Jim Jagielski's avatar
      Merge r1813643 from trunk: · 6440bc78
      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
      6440bc78
    • Jim Jagielski's avatar
      Merge r1811744 from trunk: · 122dce01
      Jim Jagielski authored
      core, mod_rewrite: introduce the 'redirect-keeps-vary' note
                         to allow proper Vary header insertion when
                         dealing with a RewriteRule in a directory
                         context.
      
      This change is an attempt to fix a long standing problem,
      brought up while working on PR 58231. Our documentation clearly
      states the following:
      
      "If a HTTP header is used in a condition this header is added
      to the Vary header of the response in case the condition
      evaluates to true for the request."
      
      This is currently not true for RewriteCond/Rules working in
      a directory context, since when an internal redirect happens
      all the outstanding response headers get dropped.
      
      There might be a better solution so I am looking forward to
      hear more opinions and comments. My goal for a delicate change
      like this one would be to affect the least amount of configurations
      possible, without triggering unwanted side effects.
      
      If the solution is good for everybody tests will be written
      in the suite asap.
      
      
      Submitted by: elukey
      Reviewed by: elukey, icing, ylavic
      
      
      git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/branches/2.4.x@1815100 13f79535-47bb-0310-9956-ffa450edef68
      122dce01
  16. Nov 07, 2017
    • Stefan Eissing's avatar
      On the 2.4.x branch: · acc35ca6
      Stefan Eissing authored
      Merged /httpd/httpd/trunk:r1811649,1811664,1814118
      
        *) ab: Make the TLS layer aware that the underlying socket is nonblocking,
           and use/handle POLLOUT where needed to avoid busy IOs and recover write
           errors when appropriate.  [Yann Ylavic]
      
        *) ab: Keep reading nonblocking to exhaust TCP or SSL buffers when previous
           read was incomplete (the SSL case can cause the next poll() to timeout
           since data are buffered already).  PR 61301 [Luca Toscano, Yann Ylavic]
      
      
      
      
      git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/branches/2.4.x@1814468 13f79535-47bb-0310-9956-ffa450edef68
      acc35ca6
  17. Nov 06, 2017
  18. Nov 03, 2017
  19. Nov 01, 2017
  20. Oct 17, 2017
  21. Oct 16, 2017
  22. Oct 13, 2017
    • Yann Ylavic's avatar
      Merge r1808746, r1809028 from trunk: · 1339bb53
      Yann Ylavic authored
      mod_rewrite/core: avoid the 'Vary: Host' header
      
      In PR 58231 is was brought up that httpd adds the
      Vary: Host header whenever a condition is set to true
      in mod_rewrite or in an <If> block.
      
      The https://tools.ietf.org/html/rfc7231#section-7.1.4
      section seems to disallow this use case:
      
      "The "Vary" header field in a response describes "
      "what parts of a request message, "
      "aside from the method, Host header field, [...]"
      
      I had a chat with the folks in #traffic-server and
      they don't see much point in having a Vary: Host header,
      plus it was reported that Varnish doesn't like it very
      much (namely it does not cache the response when
      it sees the header, links of the report in the PR).
      
      I don't see much value in this behavior of httpd so
      I am inclined to remove this response header value,
      but I'd be glad to get a more experienced opinion.
      
      
      
      mod_rewrite,core: avoid Vary:Host (part 2)
      
      This is a follow up of r1808746 after a chat
      with Yann on dev@:
      
      - the HTTP:Host variable suffers from the same problem
      - the strcasecmp should be used to allow case-sensitive
        comparisons.
      - in mod_rewrite is less cumbersome and more clean to just
        make the Host header check in lookup_header, so it will
        be automatically picked up by every part of the code
        that uses it. It shouldn't be a relevant overhead for
        mod_rewrite.
      
      
      Submitted by: elukey
      Reviewed by: elukey, ylavic, wrowe
      
      
      git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/branches/2.4.x@1812083 13f79535-47bb-0310-9956-ffa450edef68
      1339bb53
    • Yann Ylavic's avatar
      Merge r1804096, r1807238, r1809981, r1810088, r1810089 from trunk: · 9889a8bf
      Yann Ylavic authored
      bumping version, removing some unused code, fixes in base64url from mod_md
      
      On the trunk:
      
        *) mod_http2: DoS flow control protection is less agressive as long as active tasks stay
           below worker capacity. Intended to fix problems with media streaming. 
      
      
      On the trunk:
      mod_http2: v0.10.12, removed optimization for mutex handling in bucket beams that could lead to assertion failure in edge cases.
      
      
      reverting r1807238 bc not addressing the issue https://github.com/icing/mod_h2/issues/120
      
      mod_http2: non-dev 1.10.12 for backport
      
      
      Submitted by: icing
      Reviewed by: icing, steffenal, ylavic
      
      
      git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/branches/2.4.x@1812081 13f79535-47bb-0310-9956-ffa450edef68
      9889a8bf
    • Yann Ylavic's avatar
      Merge r1805195, r1812004 from trunk: · 82ef1467
      Yann Ylavic authored
      Update offsets
      
      Entry for 2.4.28 regression (r1808855 missing r1805195).
      
      Submitted by: jim, ylavic
      Reviewed/backported by: ylavic (RTC per miss in the original merge)
      
      
      git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/branches/2.4.x@1812074 13f79535-47bb-0310-9956-ffa450edef68
      82ef1467
  23. Oct 10, 2017