]> git.ipfire.org Git - thirdparty/apache/httpd.git/log
thirdparty/apache/httpd.git
20 months agoReserve some lognos for pull #618.
Joe Orton [Thu, 23 Nov 2023 17:01:02 +0000 (17:01 +0000)] 
Reserve some lognos for pull #618.

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

20 months agoOptimise handling LDAP authorization where LDAP was not used
Graham Leggett [Thu, 23 Nov 2023 10:22:58 +0000 (10:22 +0000)] 
Optimise handling LDAP authorization where LDAP was not used
previously for LDAP authentication.

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

20 months agoAdd an option to specify a source address.
Graham Leggett [Wed, 22 Nov 2023 17:19:49 +0000 (17:19 +0000)] 
Add an option to specify a source address.

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

20 months agomention httpd.conf and install root dependency
Eric Covener [Wed, 22 Nov 2023 14:02:53 +0000 (14:02 +0000)] 
mention httpd.conf and install root dependency

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

20 months agoremove apachehaus
Eric Covener [Wed, 22 Nov 2023 13:54:06 +0000 (13:54 +0000)] 
remove apachehaus

I've read in two places they are no longer providing builds,
and the website is currently down.

[skip ci]

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

20 months agomod_ldap: Add a hint to install the apr_ldap module on init failure.
Graham Leggett [Wed, 22 Nov 2023 12:14:02 +0000 (12:14 +0000)] 
mod_ldap: Add a hint to install the apr_ldap module on init failure.

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

20 months ago* include/ap_socache.h: Update comment only, to remove reference to
Joe Orton [Wed, 22 Nov 2023 09:03:34 +0000 (09:03 +0000)] 
* include/ap_socache.h: Update comment only, to remove reference to
  session cache. [skip ci]

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

20 months agomod_xml2enc: remove dependency on xmlstring header
Eric Covener [Tue, 21 Nov 2023 12:58:47 +0000 (12:58 +0000)] 
mod_xml2enc: remove dependency on xmlstring header

Submitted by: ttachi <tachihara@hotmail.com>

Github: closes #393

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

20 months agomod_authnz_ldap: Follow up to r1913962: r->user not used in ldapsearch_check_authoriz...
Yann Ylavic [Mon, 20 Nov 2023 12:07:11 +0000 (12:07 +0000)] 
mod_authnz_ldap: Follow up to r1913962: r->user not used in ldapsearch_check_authorization().

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

20 months agoRestore log message tag 02636, assign unique tags.
Graham Leggett [Mon, 20 Nov 2023 09:58:42 +0000 (09:58 +0000)] 
Restore log message tag 02636, assign unique tags.

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

20 months agoBump log-message-tags.
Graham Leggett [Mon, 20 Nov 2023 09:56:15 +0000 (09:56 +0000)] 
Bump log-message-tags.

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

20 months agoApply earlier fix to the ldapsearch case:
Graham Leggett [Sun, 19 Nov 2023 10:45:05 +0000 (10:45 +0000)] 
Apply earlier fix to the ldapsearch case:

Arrange for backend LDAP connections to be returned
to the pool by a fixup hook rather than staying locked
until the end of (a potentially slow) request.

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

20 months agoSet authorization request variables in the ldapsearch case.
Graham Leggett [Sun, 19 Nov 2023 10:10:02 +0000 (10:10 +0000)] 
Set authorization request variables in the ldapsearch case.

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

20 months agoAdd check for LDAP filter overflow, and exit cleanly.
Graham Leggett [Sun, 19 Nov 2023 09:23:23 +0000 (09:23 +0000)] 
Add check for LDAP filter overflow, and exit cleanly.

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

20 months agomod_proxy: Follow up to r1912245: ap_proxy_ prefix for extern functions.
Yann Ylavic [Sat, 18 Nov 2023 13:49:04 +0000 (13:49 +0000)] 
mod_proxy: Follow up to r1912245: ap_proxy_ prefix for extern functions.

Even if they are not part of the API (not in mod_proxy.h) hence requires no
MMN bump, {get,set,increment_,decrement_}busy_count() being AP_PROXY_DECLARE()d
could name-collide with a third-party module's functions.

Rename them using the ap_proxy_ prefix, with an underscore after the verb for
for all of them too (for consistency), that is:
    ap_proxy_{get,set,increment,decrement}_busy_count()

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

20 months agomod_ldap: HTML-escape ldap-status handler.
Eric Covener [Thu, 16 Nov 2023 19:53:18 +0000 (19:53 +0000)] 
mod_ldap: HTML-escape ldap-status handler.

Reported by Chamal De Silva.

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

20 months agoFollow up to r1874101: Axe useless LIBRESSL_VERSION_NUMBER check.
Yann Ylavic [Thu, 16 Nov 2023 14:58:52 +0000 (14:58 +0000)] 
Follow up to r1874101: Axe useless LIBRESSL_VERSION_NUMBER check.

Since the fix to MODSSL_USE_OPENSSL_PRE_1_1_API in r1908537, we are sure that
  !defined(LIBRESSL_VERSION_NUMBER) || LIBRESSL_VERSION_NUMBER < 0x2070000fL
in this block.

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

20 months agomod_md: Fix/axe incorrect MD_USE_OPENSSL_PRE_1_1_API definition.
Yann Ylavic [Thu, 16 Nov 2023 13:56:24 +0000 (13:56 +0000)] 
mod_md: Fix/axe incorrect MD_USE_OPENSSL_PRE_1_1_API definition.

Borrowed from mod_ssl, now fixed there (r1908537) so follow up in mod_md..

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

20 months agoFollow up to r1908537: CHANGES entry.
Yann Ylavic [Thu, 16 Nov 2023 11:44:31 +0000 (11:44 +0000)] 
Follow up to r1908537: CHANGES entry.

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

20 months agoci: Disable ASan's LeakSanitizer.
Yann Ylavic [Thu, 16 Nov 2023 10:27:30 +0000 (10:27 +0000)] 
ci: Disable ASan's LeakSanitizer.

The tool sometimes/somehow crashes in CI, though I can't reproduce locally.
Possibly an issue with the gcc toolchain used there.. disable for now as it
makes the tests fail.

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

20 months agoFollow up to r1913815: credit Joe in CHANGES too.
Yann Ylavic [Wed, 15 Nov 2023 22:24:28 +0000 (22:24 +0000)] 
Follow up to r1913815: credit Joe in CHANGES too.

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

20 months agomod_ssl: Disable the OpenSSL ENGINE API when OPENSSL_NO_ENGINE is set. PR 68080
Yann Ylavic [Wed, 15 Nov 2023 22:09:05 +0000 (22:09 +0000)] 
mod_ssl: Disable the OpenSSL ENGINE API when OPENSSL_NO_ENGINE is set.  PR 68080

Also, always allow for "SSLCryptoDevice builtin" even if the ENGINE API is not
available, OPENSSL_NO_ENGINE or more generally with the new API (providers)
available since OpenSSL >= 3.

* ssl_private.h: Set MODSSL_HAVE_ENGINE_API to 0 if OPENSSL_NO_ENGINE.

* mod_ssl.c, ssl_engine_config.c: Don't depend on HAVE_OPENSSL_ENGINE_H and
  HAVE_ENGINE_INIT to provide [ssl_cmd_]SSLCryptoDevice.

Submitted by: ylavic, jorton

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

20 months ago* modules/dav/fs/config6.m4: Set _LDADD so that
Joe Orton [Tue, 7 Nov 2023 16:46:36 +0000 (16:46 +0000)] 
* modules/dav/fs/config6.m4: Set _LDADD so that
  mod_dav_fs-internal functions are not exported in
  the built DSO.

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

21 months agomd_crypt: Fix potential memory leak with openssl < 3.
Yann Ylavic [Mon, 6 Nov 2023 10:53:28 +0000 (10:53 +0000)] 
md_crypt: Fix potential memory leak with openssl < 3.

EVP_PKEY_get1_RSA()'s returned value should be EVP_PKEY_free()d, but
we can use EVP_PKEY_get0_RSA() here.

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

21 months agomod_proxy: Follow up to r1912459: Fix reuse of forward_info.
Yann Ylavic [Thu, 2 Nov 2023 15:06:44 +0000 (15:06 +0000)] 
mod_proxy: Follow up to r1912459: Fix reuse of forward_info.

Use the correct fwd_pool for allocating the forward_info when the connection
is reusable as spotted by Rüdiger.

Do not reuse conn->forward if the ->proxy_auth changed.

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

21 months agofr doc small corrections.
Lucien Gentis [Wed, 1 Nov 2023 16:07:33 +0000 (16:07 +0000)] 
fr doc small corrections.

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

21 months ago * mod_md: Fix the reported "until" validity of a certificate in the status
Stefan Eissing [Tue, 31 Oct 2023 10:24:11 +0000 (10:24 +0000)] 
 * mod_md: Fix the reported "until" validity of a certificate in the status
   handler. [Rainer Jung]
   Fix possible NULL deref when logging the error that an authentication
   resource could not be retrieved from the ACME server. [Stefan Eissing]

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

21 months ago* Fix .gdbinit directory location
Ruediger Pluem [Mon, 30 Oct 2023 15:02:00 +0000 (15:02 +0000)] 
* Fix .gdbinit directory location

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

21 months ago* .gdbinit is one level deeper
Ruediger Pluem [Mon, 30 Oct 2023 14:43:12 +0000 (14:43 +0000)] 
* .gdbinit is one level deeper

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

21 months ago* Systemd based systems might process core dumps via systemd-coredump.
Ruediger Pluem [Mon, 30 Oct 2023 14:22:05 +0000 (14:22 +0000)] 
* Systemd based systems might process core dumps via systemd-coredump.
  But we want to have local unprocessed files.

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

21 months ago* Document r1912459. [skip ci]
Ruediger Pluem [Mon, 30 Oct 2023 10:44:59 +0000 (10:44 +0000)] 
* Document r1912459. [skip ci]

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

21 months agofr doc smol corrections.
Lucien Gentis [Fri, 27 Oct 2023 14:06:22 +0000 (14:06 +0000)] 
fr doc smol corrections.

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

21 months agoRemove unnecessary APLOGNO() use in TRACE-level logging.
Joe Orton [Thu, 26 Oct 2023 07:31:16 +0000 (07:31 +0000)] 
Remove unnecessary APLOGNO() use in TRACE-level logging.

Submitted by: Jackie Chang <jackie.qq.chang gmail.com>
PR: 55627

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

21 months agofr doc small corrections.
Lucien Gentis [Wed, 25 Oct 2023 13:33:03 +0000 (13:33 +0000)] 
fr doc small corrections.

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

21 months agoCI: add workflow for WebDAV testing using LMDB as the default APR DBM backend.
Joe Orton [Tue, 24 Oct 2023 15:43:27 +0000 (15:43 +0000)] 
CI: add workflow for WebDAV testing using LMDB as the default APR DBM backend.

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

21 months agofr doc rebuild.
Lucien Gentis [Mon, 23 Oct 2023 15:29:41 +0000 (15:29 +0000)] 
fr doc rebuild.

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

21 months agofr doc small corrections.
Lucien Gentis [Mon, 23 Oct 2023 15:28:47 +0000 (15:28 +0000)] 
fr doc small corrections.

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

21 months ago* modules/http2/h2_ws.c: Fix comment, no functional change. [skip ci]
Joe Orton [Wed, 18 Oct 2023 07:45:53 +0000 (07:45 +0000)] 
* modules/http2/h2_ws.c: Fix comment, no functional change. [skip ci]

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

21 months agoFix h2 build broken in r1913019:
Joe Orton [Mon, 16 Oct 2023 13:10:16 +0000 (13:10 +0000)] 
Fix h2 build broken in r1913019:

* modules/http2: Make WebSockets support conditional also
  on APR 1.7.x since apr_encode.h is required. Restore
  #include "apr_encode.h" removed in previous commit.

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

21 months agoFurther h2 compile fixes:
Joe Orton [Mon, 16 Oct 2023 12:28:13 +0000 (12:28 +0000)] 
Further h2 compile fixes:

* modules/http2/h2_session.c (h2_session_start):
  Restrict WebSockets options handling to with-WS builds.

* modules/http2/h2_ws.c: Don't include apr_encode.h (not used).

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

21 months agoWork around caching issue for CI builds with both apr&apr-util
Joe Orton [Mon, 16 Oct 2023 12:05:35 +0000 (12:05 +0000)] 
Work around caching issue for CI builds with both apr&apr-util
built from source.

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

21 months ago* modules/http2: Fill in APLOGNO.
Joe Orton [Mon, 16 Oct 2023 11:19:49 +0000 (11:19 +0000)] 
* modules/http2: Fill in APLOGNO.

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

21 months ago *) mod_http2: enable WebSockets on when compiling against a
Stefan Eissing [Mon, 16 Oct 2023 11:07:31 +0000 (11:07 +0000)] 
  *) mod_http2: enable WebSockets on when compiling against a
     recent enough nghttp2 version.
     [Joe Orton]

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

21 months ago * mod_http2: improved early cleanup of streams.
Stefan Eissing [Mon, 16 Oct 2023 08:57:51 +0000 (08:57 +0000)] 
 * mod_http2: improved early cleanup of streams.

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

21 months ago *) mod_macro: use our own strncmp function
Stefan Eissing [Mon, 16 Oct 2023 06:38:32 +0000 (06:38 +0000)] 
 *) mod_macro: use our own strncmp function

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

21 months agofr doc rebuild.
Lucien Gentis [Sat, 14 Oct 2023 13:33:51 +0000 (13:33 +0000)] 
fr doc rebuild.

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

21 months agofr doc XML file update.
Lucien Gentis [Sat, 14 Oct 2023 13:32:33 +0000 (13:32 +0000)] 
fr doc XML file update.

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

21 months agoMisplaced <default> sentence.
Lucien Gentis [Sat, 14 Oct 2023 13:30:16 +0000 (13:30 +0000)] 
Misplaced <default> sentence.

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

21 months agoFix format string type check
Stefan Eissing [Fri, 13 Oct 2023 13:51:43 +0000 (13:51 +0000)] 
Fix format string type check

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

22 months agomod_dav_fs: add DAVLockDBType directive.
Joe Orton [Tue, 3 Oct 2023 12:58:16 +0000 (12:58 +0000)] 
mod_dav_fs: add DAVLockDBType directive.

* modules/dav/fs/dbm.c (dav_dbm_open_direct): Take a dbmtype argument
  and use it to select the apr_dbm driver type.
  (dav_dbm_open): Continue to use the "default" propdb type to open
  the property databases.

* modules/dav/fs/lock.c: Store and pass through the lockdb_type
  through.

* modules/dav/fs/mod_dav_fs.c (dav_get_lockdb_path): Return the dbm
  type via an output argument.
  (dav_fs_cmd_davlockdbtype): New config directive.
  (dav_fs_merge_server_config): Merge the dbm type.
  (dav_fs_post_config): Set the default lockdb type.

* modules/dav/fs/repos.h: Update prototypes as above; internal API
  only so no compat concerns.

Github: closes #386

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

22 months agoDOXYGEN has nothing to do here, just remove this strange "#if defined(DOXYGEN)"
Christophe Jaillet [Sun, 1 Oct 2023 16:33:40 +0000 (16:33 +0000)] 
DOXYGEN has nothing to do here, just remove this strange "#if defined(DOXYGEN)"

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

22 months agoSlightly optimize h2_mplx_c1_streams_do().
Christophe Jaillet [Sun, 1 Oct 2023 16:28:31 +0000 (16:28 +0000)] 
Slightly optimize h2_mplx_c1_streams_do().

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

22 months ago* modules/dav/fs/dbm.c (dav_dbm_open_direct): Test against
Joe Orton [Thu, 28 Sep 2023 08:11:30 +0000 (08:11 +0000)] 
* modules/dav/fs/dbm.c (dav_dbm_open_direct): Test against
  APR_MAJOR_VERSION, APU_MAJOR_VERSION is not defined for APR trunk
  since the #include <apu_version.h> is conditional on APR < 2.

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

22 months ago* modules/dav/fs/dbm.c (dav_fs_dbm_error, dav_dbm_open_direct): Remove
Joe Orton [Fri, 22 Sep 2023 09:31:22 +0000 (09:31 +0000)] 
* modules/dav/fs/dbm.c (dav_fs_dbm_error, dav_dbm_open_direct): Remove
  error message references to "property" databases since these
  functions are used for both propdbs and the lock database.

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

22 months agomod_proxy: Allocate and pnitialize the workers and balancers on pconf.
Yann Ylavic [Thu, 21 Sep 2023 13:44:51 +0000 (13:44 +0000)] 
mod_proxy: Allocate and pnitialize the workers and balancers on pconf.

On ungraceful restart, pchild might be destroyed without waiting for the MPM
threads, just before exit()ing but still there is a window where threads may
be using its data still.

Avoid possible exit path crashes by basing the workers/balancers on pconf,
which is not destroyed in children processes.

While at it, avoid the duplication of the generic "forward" worker for each
server(_rec), there can be a single instance like the generic "reverse"
worker.

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

22 months agomod_proxy: Simplify ap_proxy_get_worker_ex()
Yann Ylavic [Thu, 21 Sep 2023 13:34:33 +0000 (13:34 +0000)] 
mod_proxy: Simplify ap_proxy_get_worker_ex()

Factorize duplicated code in the balancer and non-balancer cases by adding
a new worker_matches() helper.

No functional change intended.

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

22 months agomod_proxy: Add ap_proxy_worker_get_name() and deprecate ap_proxy_worker_name().
Yann Ylavic [Thu, 21 Sep 2023 13:31:15 +0000 (13:31 +0000)] 
mod_proxy: Add ap_proxy_worker_get_name() and deprecate ap_proxy_worker_name().

The latter requires a pool and returns a non constant string although it may
return worker shared data.

By computing the worker "UDS" name at init time we can return a constant name
in any case with no need for a pool, that's the new ap_proxy_worker_get_name().

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

22 months agomod_proxy: Consistently close the socket on failure to reuse the connection.
Yann Ylavic [Thu, 21 Sep 2023 13:24:28 +0000 (13:24 +0000)] 
mod_proxy: Consistently close the socket on failure to reuse the connection.

proxy_connection_create() and ap_proxy_connect_backend() sometimes close the
connection on failure, sometimes not. Always close it.

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

22 months agomod_proxy: Handle backend address renewal with address_ttl= parameter.
Yann Ylavic [Thu, 21 Sep 2023 13:15:35 +0000 (13:15 +0000)] 
mod_proxy: Handle backend address renewal with address_ttl= parameter.

Define a new proxy_address struct holding the current/latest sockaddr in use
by each proxy worker and conn. Since backend addresses can be updated when
their TTL expires and while connections are being processed, each address is
refcounted and freed only when the last worker (or conn) using it grabs the
new one.

The lifetime of the addresses is handled at a single place by the new
ap_proxy_determine_address() function. It guarantees to bind the current/latest
backend address to the passed in conn (or do nothing if it's up to date already).
The function is called indirectly by ap_proxy_determine_connection() for the
proxy modules that use it, or directly by mod_proxy_ftp and mod_proxy_hcheck.
It also is called eventually by ap_proxy_connect_backend() when connect()ing all
the current addresses fails, to check (PROXY_DETERMINE_ADDRESS_CHECK) if some
new addrs are available.

This commit is also a rework of the lifetime of conn->addr, conn->hostname
and conn->forward, using the conn->uds_pool and conn->fwd_pool for the cases
where the backend is connected through a UDS socket and a remote CONNECT proxy
respectively.

* include/ap_mmn.h:
  Minor bump for new function/fields.

* modules/proxy/mod_proxy.h (struct proxy_address,
                             ap_proxy_determine_addresss()):
  Declare ap_proxy_determine_addresss() and opaque struct proxy_address,
  new fields to structs proxy_conn_rec/proxy_worker_shared/proxy_worker.

* modules/proxy/mod_proxy.c (set_worker_param):
  Parse/set the new worker->address_ttl parameter.

* modules/proxy/proxy_util.c (proxy_util_register_hooks(),
                              ap_proxy_initialize_worker(),
                              ap_proxy_connection_reusable(),
                              ap_proxyerror(), proxyerror_core(),
                              init_conn_pool(), make_conn_subpool(),
                              connection_make(), connection_cleanup(),
                              connection_constructor()):
 Initialize *proxy_start_time in proxy_util_register_hooks() as the epoch
 from which expiration times are relative (i.e. seconds stored in an uint32_t
 for atomic changes).
 Make sure worker->s->is_address_reusable and worker->s->disablereuse are
 consistant in ap_proxy_initialize_worker(), thus no need to check for both
 in ap_proxy_connection_reusable().
 New proxyerror_core() helper taking an apr_status_t to log, wrap in
 ap_proxyerror().
 New make_conn_subpool() to create worker->cp->{pool,dns} with their own
 allocator.
 New connection_make() helper to factorize code in connection_cleanup() and
 connection_constructor().

* modules/proxy/proxy_util.c (proxy_address_inc(), proxy_address_dec(),
                              proxy_address_cleanup(), proxy_address_set_expired(),
                              worker_address_get(), worker_address_set(),
                              worker_address_resolve(), proxy_addrs_equal(),
                              ap_proxy_determine_address(),
                              ap_proxy_determine_connection(),
                              ap_proxy_connect_backend()):
 Implement ap_proxy_determine_address() using the above helpers for atomic changes,
 and call it from ap_proxy_determine_connection() and ap_proxy_connect_backend().

* modules/proxy/mod_proxy_ftp.c (proxy_ftp_handler):
  Use ap_proxy_determine_address() and use the returned backend->addr.

* modules/proxy/mod_proxy_hcheck.c (hc_determine_connection, hc_get_backend,
                                    hc_init_worker, hc_watchdog_callback):
  Use ap_proxy_determine_address() in hc_determine_connection() and call the
  latter from hc_get_backend(), replace hc_init_worker() by hc_init_baton()
  which now calls hc_get_hcworker() and hc_get_backend() to resolve the first
  address at init time.

* modules/proxy/mod_proxy_http.c (proxy_http_handler):
  Use backend->addr and ->hostname instead of worker->cp->addr and
  worker->s->hostname_ex respectively.

* modules/proxy/mod_proxy_ajp.c (ap_proxy_ajp_request):
  Use backend->addr and ->hostname instead of worker->cp->addr and
  worker->s->hostname_ex respectively.

Closes #367

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

22 months ago *) mod_http2: fixed a compile time issue for Windows builds.
Stefan Eissing [Tue, 19 Sep 2023 19:30:30 +0000 (19:30 +0000)] 
  *) mod_http2: fixed a compile time issue for Windows builds.

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

22 months ago * mod_http2: fixed a bug in handling of stream timeouts.
Stefan Eissing [Mon, 18 Sep 2023 07:55:16 +0000 (07:55 +0000)] 
 * mod_http2: fixed a bug in handling of stream timeouts.

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

22 months agoArrange the bybusyness logic and prevent bad busy values
Jean-Frederic Clere [Mon, 11 Sep 2023 13:50:21 +0000 (13:50 +0000)] 
Arrange the bybusyness logic and prevent bad busy values
this closes #383

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

22 months agofr doc rebuild.
Lucien Gentis [Sat, 9 Sep 2023 15:08:21 +0000 (15:08 +0000)] 
fr doc rebuild.

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

22 months agofr doc XML files updates.
Lucien Gentis [Sat, 9 Sep 2023 15:07:19 +0000 (15:07 +0000)] 
fr doc XML files updates.

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

22 months ago *) mod_proxy_http2: fix `X-Forward-Host` header to carry the correct value.
Stefan Eissing [Fri, 8 Sep 2023 07:39:50 +0000 (07:39 +0000)] 
  *) mod_proxy_http2: fix `X-Forward-Host` header to carry the correct value.
     Fixed PR66752.

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

23 months agoUpdate DavBasePath availability.
Joe Orton [Mon, 4 Sep 2023 13:10:39 +0000 (13:10 +0000)] 
Update DavBasePath availability.

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

23 months agomod_ssl: Silence info log message "SSL Library Error: error:0A000126:
Rainer Jung [Wed, 30 Aug 2023 12:56:11 +0000 (12:56 +0000)] 
mod_ssl: Silence info log message "SSL Library Error: error:0A000126:
         SSL routines::unexpected eof while reading" when using
         OpenSSL 3 by setting SSL_OP_IGNORE_UNEXPECTED_EOF if
         available. [Rainer Jung]

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

23 months ago *) mod_proxy_http2: improved error handling on connection errors while
Stefan Eissing [Mon, 28 Aug 2023 13:27:10 +0000 (13:27 +0000)] 
  *) mod_proxy_http2: improved error handling on connection errors while
     response is already underway.

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

23 months agoFix missing break in config settings, code style
Stefan Eissing [Mon, 28 Aug 2023 08:33:22 +0000 (08:33 +0000)] 
Fix missing break in config settings, code style

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

23 months agoAdd an hyper-link.
Christophe Jaillet [Sun, 27 Aug 2023 06:34:45 +0000 (06:34 +0000)] 
Add an hyper-link.
Fix a typo (s/a an/an/)
Be less agressive (s/ON/On/) and reorder "On|Off".

[skip ci]

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

23 months agoFix documented default for DavBasePath to match code.
Joe Orton [Fri, 25 Aug 2023 07:46:53 +0000 (07:46 +0000)] 
Fix documented default for DavBasePath to match code.

Submitted by: rpluem
Github: pull #377

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

23 months ago* modules/dav/main/mod_dav.c (dav_get_resource): Don't mask
Joe Orton [Fri, 25 Aug 2023 07:44:08 +0000 (07:44 +0000)] 
* modules/dav/main/mod_dav.c (dav_get_resource): Don't mask
  "conf" variable.

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

23 months agoFix an URL.
Christophe Jaillet [Wed, 23 Aug 2023 21:40:34 +0000 (21:40 +0000)] 
Fix an URL.

PR 66630 [Samuel Joly <samueljoly0 gmail.com>]

[skip ci]

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

23 months agoRemove an extra word.
Christophe Jaillet [Wed, 23 Aug 2023 21:23:46 +0000 (21:23 +0000)] 
Remove an extra word.

Follow up to r1909084.

[skip ci]

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

23 months agoFix compatibility version, typo (s/hader/header) and trailing spaces
Christophe Jaillet [Wed, 23 Aug 2023 21:03:29 +0000 (21:03 +0000)] 
Fix compatibility version, typo (s/hader/header) and trailing spaces

[skip ci]

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

23 months agofr doc rebuild.
Lucien Gentis [Sat, 19 Aug 2023 14:29:02 +0000 (14:29 +0000)] 
fr doc rebuild.

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

23 months agofr doc XML file update.
Lucien Gentis [Sat, 19 Aug 2023 14:27:45 +0000 (14:27 +0000)] 
fr doc XML file update.

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

23 months ago * mod_md: fixed passing of the server environment variables to programs
Stefan Eissing [Wed, 16 Aug 2023 11:40:21 +0000 (11:40 +0000)] 
 * mod_md: fixed passing of the server environment variables to programs
   started via MDMessageCmd and MDChallengeDns01 on *nix system.
   See <https://github.com/icing/mod_md/issues/319>.

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

23 months ago *) mod_http2: sync with github version
Stefan Eissing [Wed, 16 Aug 2023 10:59:38 +0000 (10:59 +0000)] 
  *) mod_http2: sync with github version

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

23 months agoTests: update pytest for curl 8.1.x bugs
Stefan Eissing [Wed, 16 Aug 2023 10:45:47 +0000 (10:45 +0000)] 
Tests: update pytest for curl 8.1.x bugs

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

23 months agoAdd docs for DavBasePath.
Joe Orton [Wed, 16 Aug 2023 07:33:45 +0000 (07:33 +0000)] 
Add docs for DavBasePath.

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

23 months agoAdd DAVBasePath directive to allow users to configure the real repos
Joe Orton [Mon, 14 Aug 2023 14:40:00 +0000 (14:40 +0000)] 
Add DAVBasePath directive to allow users to configure the real repos
root path, useful where the DAV repos is configured with a regex match.

* modules/dav/main/mod_dav.c
  (dav_get_resource): If available, pass the configured base path
  as the repos root to repos provider.
  On the error path for fetching a resource, detect and warn
  specifically when the location is configured via a regex.
  (dav_cmd_davbasepath): New function.

PR: 35077
Github: closes #376

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

23 months agoHTTP/2, websockets
Stefan Eissing [Mon, 14 Aug 2023 14:39:00 +0000 (14:39 +0000)] 
HTTP/2, websockets

- provide "Connection" header in internal Upgrade request
- set input notification if input is already available when
  stream processing is started
- add optional function in mod_http2.h to use instead of
  ap_get_pollfd_from_conn() in older servers with a new
  mod_http2

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

23 months agoSteal a number.
Joe Orton [Mon, 14 Aug 2023 07:32:19 +0000 (07:32 +0000)] 
Steal a number.

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

2 years ago *) mod_http2: Fix reporting of `Total Accesses` in server-status to not count
Stefan Eissing [Wed, 26 Jul 2023 12:18:06 +0000 (12:18 +0000)] 
  *) mod_http2: Fix reporting of `Total Accesses` in server-status to not count
     HTTP/2 requests twice. Fixes PR 66801.

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

2 years agoslight clarification, depends on r->status
Eric Covener [Mon, 24 Jul 2023 20:09:43 +0000 (20:09 +0000)] 
slight clarification, depends on r->status

[skip ci]

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

2 years agono AH01588 for ap_get_client_block + CL over limit
Eric Covener [Mon, 24 Jul 2023 17:31:38 +0000 (17:31 +0000)] 
no AH01588 for ap_get_client_block + CL over limit

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

2 years agofr doc rebuild.
Lucien Gentis [Sat, 22 Jul 2023 13:15:11 +0000 (13:15 +0000)] 
fr doc rebuild.

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

2 years agofr doc XML file update.
Lucien Gentis [Sat, 22 Jul 2023 13:12:47 +0000 (13:12 +0000)] 
fr doc XML file update.

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

2 years agoab: apr_pool_clear() closes the socket already.
Yann Ylavic [Fri, 21 Jul 2023 14:56:05 +0000 (14:56 +0000)] 
ab: apr_pool_clear() closes the socket already.

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

2 years agoab: Disable nagle algorithm on sockets, it's not telnet.
Yann Ylavic [Fri, 21 Jul 2023 14:54:51 +0000 (14:54 +0000)] 
ab: Disable nagle algorithm on sockets, it's not telnet.

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

2 years agoab: Follow up to r1910912: No need for the "events" member.
Yann Ylavic [Fri, 21 Jul 2023 14:51:24 +0000 (14:51 +0000)] 
ab: Follow up to r1910912: No need for the "events" member.

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

2 years agoSteal some APLOGNOs for PR #367.
Yann Ylavic [Fri, 21 Jul 2023 09:27:15 +0000 (09:27 +0000)] 
Steal some APLOGNOs for PR #367.

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

2 years agomod_alias: Add AliasPreservePath directive to map the full
Graham Leggett [Mon, 17 Jul 2023 15:25:13 +0000 (15:25 +0000)] 
mod_alias: Add AliasPreservePath directive to map the full
path after the alias in a location.

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

2 years agofr doc XML file update.
Lucien Gentis [Sat, 15 Jul 2023 16:19:13 +0000 (16:19 +0000)] 
fr doc XML file update.

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

2 years ago * mod_md:
Stefan Eissing [Fri, 14 Jul 2023 12:26:50 +0000 (12:26 +0000)] 
 * mod_md:
   - New directive `MDMatchNames all|servernames` to allow more control over how
     MDomains are matched to VirtualHosts.
   - New directive `MDChallengeDns01Version`. Setting this to `2` will provide
     the command also with the challenge value on `teardown` invocation. In version
     1, the default, only the `setup` invocation gets this parameter.
     Refs #312. Thanks to @domrim for the idea.
   - For Managed Domain in "manual" mode, the checks if all used ServerName and
     ServerAlias are part of the MDomain now reports a warning instead of an error
     (AH10040) when not all names are present.
   - MDChallengeDns01 can now be configured for individual domains.
     Using PR from Jérôme Billiras (@bilhackmac) and adding test case and fixing proper working
   - Fixed a bug found by Jérôme Billiras (@bilhackmac) that caused the challenge
     teardown not being invoked as it should.

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

2 years agotest: update http2 test 008_03 for curl allowing the server to send almost all data
Stefan Eissing [Fri, 14 Jul 2023 08:49:52 +0000 (08:49 +0000)] 
test: update http2 test 008_03 for curl allowing the server to send almost all data

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

2 years agoSteal another APLOGNO for event_wip.
Yann Ylavic [Tue, 11 Jul 2023 20:24:18 +0000 (20:24 +0000)] 
Steal another APLOGNO for event_wip.

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

2 years agoab: Add -D for a watchdog that prints counters on polled connections.
Yann Ylavic [Mon, 10 Jul 2023 09:17:51 +0000 (09:17 +0000)] 
ab: Add -D for a watchdog that prints counters on polled connections.

This prints lines like the below (one per worker thread) every 5 seconds:
Worker 0: requests 264484/12500, polls 2500, DISCONNECTED 0/0, CONNECTING 0/35, HANDSHAKE 0/0, WRITE 0/0, READ 2465/0
Worker 3: requests 248779/12500, polls 2500, DISCONNECTED 0/0, CONNECTING 0/25, HANDSHAKE 0/0, WRITE 0/0, READ 2475/0
Worker 1: requests 246151/12500, polls 2500, DISCONNECTED 0/0, CONNECTING 0/39, HANDSHAKE 0/0, WRITE 0/0, READ 2461/0
Worker 2: requests 257491/12500, polls 2500, DISCONNECTED 0/0, CONNECTING 0/44, HANDSHAKE 0/0, WRITE 0/0, READ 2456/0

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

2 years agoab: Check and handle POLLOUT before POLLIN.
Yann Ylavic [Mon, 10 Jul 2023 09:08:14 +0000 (09:08 +0000)] 
ab: Check and handle POLLOUT before POLLIN.

connect() failures can return POLLOUT|POLLHUP and the polling loop should
take the POLLOUT branch in this case, not the POLLIN|POLLHUP one, so move
the check for POLLOUT first.

While at it, add some assert()ions to avoid infinite loops.

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