]> git.ipfire.org Git - thirdparty/apache/httpd.git/log
thirdparty/apache/httpd.git
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

2 years agoab: Follow up to r1910871: s/bind_num/bind_rr/g
Yann Ylavic [Sat, 8 Jul 2023 10:56:58 +0000 (10:56 +0000)] 
ab: Follow up to r1910871: s/bind_num/bind_rr/g

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

2 years agoab: Allow to bind multiple addresses with -Baddr1,addr2,...
Yann Ylavic [Sat, 8 Jul 2023 10:51:02 +0000 (10:51 +0000)] 
ab: Allow to bind multiple addresses with -Baddr1,addr2,...

By using multiple source addresses, it helps with ports exhaustion where the
ones of connections in TIME_WAIT cannot be reused.

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

2 years agoab: Stop worker at end of -t in any case, not only interruption.
Yann Ylavic [Sat, 8 Jul 2023 10:43:44 +0000 (10:43 +0000)] 
ab: Stop worker at end of -t in any case, not only interruption.

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

2 years agoab: Ignore the delay if it's larger than the timeout.
Yann Ylavic [Fri, 7 Jul 2023 15:57:32 +0000 (15:57 +0000)] 
ab: Ignore the delay if it's larger than the timeout.

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

2 years agoab: Fix accounting of started connections.
Yann Ylavic [Fri, 7 Jul 2023 15:52:45 +0000 (15:52 +0000)] 
ab: Fix accounting of started connections.

Revert when a kept alive connection is aborted on read.
Stop the polling loop when there is nothing to poll anymore, it's simpler.

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

2 years agoAdd WebAssembly MIME type and file extension
Joe Orton [Fri, 7 Jul 2023 11:12:02 +0000 (11:12 +0000)] 
Add WebAssembly MIME type and file extension

Submitted by: Dave Hodder <dmh dmh.org.uk>
Github: closes #332

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

2 years agopytest: Fine tuning for LogLevel vs -v^n.
Yann Ylavic [Fri, 7 Jul 2023 11:03:17 +0000 (11:03 +0000)] 
pytest: Fine tuning for LogLevel vs -v^n.

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

2 years ago* support/ab.c (ssl_proceed_handshake): Fix X509 * leak.
Joe Orton [Fri, 7 Jul 2023 11:02:38 +0000 (11:02 +0000)] 
* support/ab.c (ssl_proceed_handshake): Fix X509 * leak.

PR: 64264

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

2 years agoutil_filter: More useful logging for brigade setaside/reinstate/adopt.
Yann Ylavic [Fri, 7 Jul 2023 11:00:34 +0000 (11:00 +0000)] 
util_filter: More useful logging for brigade setaside/reinstate/adopt.

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

2 years agopytests: Ignore log errors/warnings per function.
Yann Ylavic [Fri, 7 Jul 2023 08:21:21 +0000 (08:21 +0000)] 
pytests: Ignore log errors/warnings per function.

It's easier to control errors at the function scope and it avoids ignored
errors/warnings to propagate to the following tests (i.e. mask further
unexpected errors).

github: closes #371

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

2 years agoAdd application/vnd.geogebra.slides mime type
Joe Orton [Fri, 7 Jul 2023 08:18:52 +0000 (08:18 +0000)] 
Add application/vnd.geogebra.slides mime type

Submitted by: Zbynek Konecny <zbynek1729 gmail.com>
Github: closes #207

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

2 years agoapxs: Fix -i for some cases where -n is not used.
Joe Orton [Fri, 7 Jul 2023 07:57:35 +0000 (07:57 +0000)] 
apxs: Fix -i for some cases where -n is not used.
The $base was already stripped of suffix in typical case.

Submitted by: Jan Pazdziora <jpazdziora redhat.com>
Github: closes #359

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

2 years agomod_rewrite: Fix a possible NULL pointer dereference in hook_uri2file
Joe Orton [Thu, 6 Jul 2023 12:20:37 +0000 (12:20 +0000)] 
mod_rewrite: Fix a possible NULL pointer dereference in hook_uri2file

is_absolute_uri() dereferences r->filename in the function body, but
there is no check if r->filename == NULL before.

Submitted by: Luboš Uhliarik <luhliari redhat.com>
Github: closes #355

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

2 years agoAllow mod_dav_fs to tolerate race conditions between PROPFIND and an
Joe Orton [Thu, 6 Jul 2023 08:28:08 +0000 (08:28 +0000)] 
Allow mod_dav_fs to tolerate race conditions between PROPFIND and an
operation which removes a directory/file between apr_dir_read() and
apr_stat(). Current behaviour is to abort the connection which seems
inferior to tolerating (and logging) the error.

* modules/dav/fs/repos.c (dav_fs_walker): If DAV_WALKTYPE_TOLERANT is
  set, ignore ENOENT from stat() rather than aborting the response.
  Log the error from stat either way.

* modules/dav/main/mod_dav.c (dav_method_propfind): Set
  DAV_WALKTYPE_TOLERANT.

* modules/dav/main/mod_dav.h: Add DAV_WALKTYPE_TOLERANT.

Github: closes #369

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

2 years agotest h2: be more generous in stutter step jittering.
Stefan Eissing [Thu, 6 Jul 2023 08:24:24 +0000 (08:24 +0000)] 
test h2: be more generous in stutter step jittering.

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

2 years agoproxy_util: revert timeout selection on a proxy tunnel back to
Stefan Eissing [Thu, 6 Jul 2023 07:44:21 +0000 (07:44 +0000)] 
proxy_util: revert timeout selection on a proxy tunnel back to
take the large of client/origin values.

Add websocket test to verify that longer proxypass timeout is in
effect.

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

2 years agoSteal a number. [skip ci]
Joe Orton [Wed, 5 Jul 2023 13:09:15 +0000 (13:09 +0000)] 
Steal a number. [skip ci]

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

2 years agoUse 'git clone' rather than 'svn export' in CI scripts.
Joe Orton [Wed, 5 Jul 2023 10:09:57 +0000 (10:09 +0000)] 
Use 'git clone' rather than 'svn export' in CI scripts.
Drop unused run_svn_export.
Run git clone with -q throughout.

Github: closes #368

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

2 years agofr doc rebuild.
Lucien Gentis [Sat, 1 Jul 2023 13:29:49 +0000 (13:29 +0000)] 
fr doc rebuild.

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

2 years agoXML file update.-Cette ligne, et les suivantes ci-dessous, seront ignorées--
Lucien Gentis [Sat, 1 Jul 2023 13:28:46 +0000 (13:28 +0000)] 
XML file update.-Cette ligne, et les suivantes ci-dessous, seront ignorées--

M    manual/mod/mod_http2.xml.fr

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

2 years agotypos/whitespace
Eric Covener [Fri, 30 Jun 2023 12:31:28 +0000 (12:31 +0000)] 
typos/whitespace

what's one more rev?

[skip ci]

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

2 years agoproxy: in proxy tunnels, use the smaller timeout value of
Stefan Eissing [Fri, 30 Jun 2023 09:08:23 +0000 (09:08 +0000)] 
proxy: in proxy tunnels, use the smaller timeout value of
       client and origin as timeout for polling the tunnel.

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

2 years agotests: another sync of the http2 tests
Stefan Eissing [Fri, 30 Jun 2023 08:29:27 +0000 (08:29 +0000)] 
tests: another sync of the http2 tests

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

2 years agotests: sync mod_http2 tests with mod_h2 and 2.4.x version checks
Stefan Eissing [Fri, 30 Jun 2023 08:16:25 +0000 (08:16 +0000)] 
tests: sync mod_http2 tests with mod_h2 and 2.4.x version checks

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

2 years agomod_http2: add aplogno where makefile did not detect it missing?
Stefan Eissing [Thu, 29 Jun 2023 10:38:08 +0000 (10:38 +0000)] 
mod_http2: add aplogno where makefile did not detect it missing?

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

2 years agosteal a number
Stefan Eissing [Thu, 29 Jun 2023 10:37:25 +0000 (10:37 +0000)] 
steal a number

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

2 years agomod_http2: when failing a request, make sure the request_rec fields
Stefan Eissing [Thu, 29 Jun 2023 10:15:50 +0000 (10:15 +0000)] 
mod_http2: when failing a request, make sure the request_rec fields
are populated (best effort) for the response generation since this
might access fields in there.
Respect a http_status already assigned during stream processing
for error generation.

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

2 years agomod_http2: move get_pollfd_from_conn hook outside the HAS_RESPONSE_BUCKET part
Stefan Eissing [Thu, 29 Jun 2023 09:28:24 +0000 (09:28 +0000)] 
mod_http2: move get_pollfd_from_conn hook outside the HAS_RESPONSE_BUCKET part

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

2 years agopyhttpd: Generate core dumps on crash and show them in the ci eventually.
Yann Ylavic [Wed, 28 Jun 2023 15:20:40 +0000 (15:20 +0000)] 
pyhttpd: Generate core dumps on crash and show them in the ci eventually.

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

2 years agotest_800_websockets: AH10467 is an expected error for the _fail_proto test.
Yann Ylavic [Wed, 28 Jun 2023 15:18:43 +0000 (15:18 +0000)] 
test_800_websockets: AH10467 is an expected error for the _fail_proto test.

So ignore it, and move the _fail_proto test first to avoid messing up with
the error logs of the other tests.

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

2 years agoincorporate feedback from rpluem
Eric Covener [Wed, 28 Jun 2023 14:31:25 +0000 (14:31 +0000)] 
incorporate feedback from rpluem

update comments, reverse check, force QSL

[skip ci]

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

2 years agoFollow up to r1910656: Fix dumplicate APLOGNO.
Yann Ylavic [Wed, 28 Jun 2023 12:49:21 +0000 (12:49 +0000)] 
Follow up to r1910656: Fix dumplicate APLOGNO.

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

2 years agoAnother APLOGNO() to resolve duplicate from r1910656. [skip ci]
Yann Ylavic [Wed, 28 Jun 2023 12:45:30 +0000 (12:45 +0000)] 
Another APLOGNO() to resolve duplicate from r1910656. [skip ci]

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

2 years agoback to original patch in PR66672
Eric Covener [Wed, 28 Jun 2023 12:37:50 +0000 (12:37 +0000)] 
back to original patch in PR66672

Since QSNONE will skip splitoutqueryargs, it's where we should fixup the trailing ?

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

2 years agorevert recent r1910650
Eric Covener [Wed, 28 Jun 2023 12:27:33 +0000 (12:27 +0000)] 
revert recent r1910650

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

2 years agolognos for the new debugs
Stefan Eissing [Wed, 28 Jun 2023 11:39:43 +0000 (11:39 +0000)] 
lognos for the new debugs

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

2 years agostealing numbers
Stefan Eissing [Wed, 28 Jun 2023 11:39:27 +0000 (11:39 +0000)] 
stealing numbers

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