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

2 years ago *) mod_http2: new directive `H2ProxyRequests on|off` to enable handling
Stefan Eissing [Wed, 28 Jun 2023 11:22:49 +0000 (11:22 +0000)] 
  *) mod_http2: new directive `H2ProxyRequests on|off` to enable handling
     of HTTP/2 requests in a forward proxy configuration.
     General forward proxying is enabled via `ProxyRequests`. If the
     HTTP/2 protocol is also enabled for such a server/host, this new
     directive is needed in addition.

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

2 years agotests: add the websockets python module version checks needed for our CI infra
Stefan Eissing [Wed, 28 Jun 2023 11:03:29 +0000 (11:03 +0000)] 
tests: add the websockets python module version checks needed for our CI infra

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

2 years agoact more like pre-r1908097 with rewrite
Eric Covener [Wed, 28 Jun 2023 10:38:27 +0000 (10:38 +0000)] 
act more like pre-r1908097 with rewrite

- be more conservative with setting QSNONE
- allow the query to be split as historically, but then drop r->args if QSNONE

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

2 years agoHTTP/2 WebSockets: adding throughput tests and test client improvements
Stefan Eissing [Wed, 28 Jun 2023 08:55:19 +0000 (08:55 +0000)] 
HTTP/2 WebSockets: adding throughput tests and test client improvements

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

2 years agomod_http2: optimization for c1 output passing when collecting
Stefan Eissing [Wed, 28 Jun 2023 08:54:46 +0000 (08:54 +0000)] 
mod_http2: optimization for c1 output passing when collecting
           next DATA frame for a response.

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

2 years agoPR66672: rewrite QSA+trailing ? regression
Eric Covener [Tue, 27 Jun 2023 14:33:50 +0000 (14:33 +0000)] 
PR66672: rewrite QSA+trailing ? regression

mod_rewrite: Fix a recent regression where a rule with both a trailing
'?' and the [QSA] flag did not have the query appended.  PR66672

Submitted By: Frank Meier <frank.meier ergon.ch>

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

2 years agofr doc rebuild.
Lucien Gentis [Sat, 24 Jun 2023 13:18:39 +0000 (13:18 +0000)] 
fr doc rebuild.

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

2 years agofr doc XML file update.
Lucien Gentis [Sat, 24 Jun 2023 13:17:21 +0000 (13:17 +0000)] 
fr doc XML file update.

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

2 years agorequest_rec: Single bit for body_indeterminate (while it's not in 2.4.x yet).
Yann Ylavic [Fri, 23 Jun 2023 14:10:07 +0000 (14:10 +0000)] 
request_rec: Single bit for body_indeterminate (while it's not in 2.4.x yet).

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

2 years agoSteal some APLOGNOs for event_wip [skip ci].
Yann Ylavic [Fri, 23 Jun 2023 13:19:16 +0000 (13:19 +0000)] 
Steal some APLOGNOs for event_wip [skip ci].

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

2 years ago *) mod_http2: adding checks for websocket support on platform and
Stefan Eissing [Wed, 21 Jun 2023 12:14:08 +0000 (12:14 +0000)] 
  *) mod_http2: adding checks for websocket support on platform and
     server versions. Give error message accordingly when trying to
     enable websockets in unsupported configurations.
     Add test and code to check the, finally selected, server of
     a request_rec for websocket support or 501 the request.

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

2 years agohttp_protocol: make request processing more robust for incomplete data
Stefan Eissing [Wed, 21 Jun 2023 12:08:06 +0000 (12:08 +0000)] 
http_protocol: make request processing more robust for incomplete data

- Length restrictions may error on a too long request path, leaving
  the uri unset.

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

2 years ago *) http_protocol: if there is a request and an error bucket in the input
Stefan Eissing [Wed, 21 Jun 2023 09:49:13 +0000 (09:49 +0000)] 
  *) http_protocol: if there is a request and an error bucket in the input
     brigade, always process the request bucket first. This gives the proper
     context in which to evaluate the error bucket in.
     Some error access r->method, for example, in their response body.

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

2 years agoab: Don't print the banner/copyright when -Q is specified.
Yann Ylavic [Tue, 20 Jun 2023 16:05:31 +0000 (16:05 +0000)] 
ab: Don't print the banner/copyright when -Q is specified.

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

2 years agoab: Add POLLERR and POLLHUP to reqevents for implementations that use/need it.
Yann Ylavic [Tue, 20 Jun 2023 16:04:12 +0000 (16:04 +0000)] 
ab: Add POLLERR and POLLHUP to reqevents for implementations that use/need it.

Also, apr_pollset_remove() might return APR_NOTFOUND if a connection is reset
while being poll()ed, don't treat it as an error.

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

2 years agoab: Increase MAX_CONCURRENCY hard limit (from 20K to 200K).
Yann Ylavic [Tue, 20 Jun 2023 15:59:38 +0000 (15:59 +0000)] 
ab: Increase MAX_CONCURRENCY hard limit (from 20K to 200K).

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

2 years agoab: More accurate stats for time limited (-t) runs.
Yann Ylavic [Tue, 20 Jun 2023 15:53:11 +0000 (15:53 +0000)] 
ab: More accurate stats for time limited (-t) runs.

When ab runs for a limited time, the number of requests configured (or the
default MAX_REQUESTS if not configured) may be lower than than the number
of requests actually/finally achieved, in which case the stats per request
is a window of the actual stats since we can't store all the results.

Rather than taking the last N requests of the run for the stats, do the mean
of all the requests reusing the same window slot, and print that.

If no number of requests is configured for a time limited run, it will stop
only at the end of the time (i.e. MAX_REQUESTS is ignored for the end of
test condition). So MAX_REQUESTS is renamed to TIMED_REQUESTS while at it.

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

2 years agoab: Follow up to r1910515: Update global counter too..
Yann Ylavic [Tue, 20 Jun 2023 15:20:39 +0000 (15:20 +0000)] 
ab: Follow up to r1910515: Update global counter too..

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

2 years agoab: Count keepalive aborted connections separately.
Yann Ylavic [Tue, 20 Jun 2023 15:15:30 +0000 (15:15 +0000)] 
ab: Count keepalive aborted connections separately.

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

2 years agoab: Don't (doubly) count errors as err_length if not actually reading.
Yann Ylavic [Tue, 20 Jun 2023 15:11:25 +0000 (15:11 +0000)] 
ab: Don't (doubly) count errors as err_length if not actually reading.

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

2 years agoab: Fix crash with -W when exiting earlya on fatal error.
Yann Ylavic [Tue, 20 Jun 2023 15:08:44 +0000 (15:08 +0000)] 
ab: Fix crash with -W when exiting earlya on fatal error.

When multiple threads are failing (e.g. read/write timeout) it's not
thread-safe to simply/concurrently print the stats and exit. This can
result in garbage being printed or a crash.

Let's cleanly shutdown the threads and do the printing at a single point.
For the places where we want to fail but threads are not started yet we
can simply exit still, so to simplify the stats are not printed in an
atexit() handler.

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

2 years ago *) mod_http2: added support for bootstrapping WebSockets via HTTP/2, as
Stefan Eissing [Tue, 20 Jun 2023 12:01:09 +0000 (12:01 +0000)] 
  *) mod_http2: added support for bootstrapping WebSockets via HTTP/2, as
     described in RFC 8441. A new directive 'H2WebSockets on|off' has been
     added. The feature is by default not enabled.
     As also discussed in the manual, this feature should work for setups
     using "ProxyPass backend-url upgrade=websocket" without further changes.
     Special server modules for WebSockets will have to be adapted,
     most likely, as the handling if IO events is different with HTTP/2.
     HTTP/2 WebSockets are supported on platforms with native pipes. This
     excludes Windows.

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

2 years agostealing numbers
Stefan Eissing [Tue, 20 Jun 2023 11:55:50 +0000 (11:55 +0000)] 
stealing numbers

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

2 years ago * mod_htt2: fixed an inconsistency in main connection io state after the connection
Stefan Eissing [Fri, 16 Jun 2023 08:18:19 +0000 (08:18 +0000)] 
 * mod_htt2: fixed an inconsistency in main connection io state after the connection
   write encountered an error. Related to PR 66649.

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

2 years agoupdate log tags, as usual
Stefan Eissing [Thu, 15 Jun 2023 09:46:00 +0000 (09:46 +0000)] 
update log tags, as usual

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

2 years agosteal a number
Stefan Eissing [Thu, 15 Jun 2023 09:45:30 +0000 (09:45 +0000)] 
steal a number

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

2 years agoopenssl needs Ws2_32.lib for WSAGetLastError().
jfclere [Wed, 14 Jun 2023 07:54:01 +0000 (07:54 +0000)] 
openssl needs Ws2_32.lib for WSAGetLastError().

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

2 years ago *) mod_http2: fixed a bug that could lead to a crash in main connection
Stefan Eissing [Tue, 13 Jun 2023 14:36:43 +0000 (14:36 +0000)] 
  *) mod_http2: fixed a bug that could lead to a crash in main connection
     output handling. This occured only when the last request on a HTTP/2
     connection had been processed and the session decided to shut down.
     This could lead to an attempt to send a final GOAWAY while the previous
     write was still in progress. See PR 66646.

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

2 years agoArrange ap_h1_response_out_filter() according to include/mod_core.h.
Jean-Frederic Clere [Mon, 12 Jun 2023 13:32:12 +0000 (13:32 +0000)] 
Arrange ap_h1_response_out_filter() according to include/mod_core.h.

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

2 years agofr doc rebuild.
Lucien Gentis [Sat, 10 Jun 2023 14:58:22 +0000 (14:58 +0000)] 
fr doc rebuild.

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

2 years agofr doc XML file update.
Lucien Gentis [Sat, 10 Jun 2023 14:56:38 +0000 (14:56 +0000)] 
fr doc XML file update.

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

2 years agodo not run strlen(3) on a NULL value
Giovanni Bechis [Fri, 9 Jun 2023 15:28:32 +0000 (15:28 +0000)] 
do not run strlen(3) on a NULL value
bz #66639

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

2 years ago *) mod_http2: fixed a bug in flushing pending data on an already closed
Stefan Eissing [Fri, 9 Jun 2023 15:02:21 +0000 (15:02 +0000)] 
  *) mod_http2: fixed a bug in flushing pending data on an already closed
     connection that could lead to a busy loop, preventing the HTTP/2 session
     to close down successfully. Fixed PR 66624.

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

2 years ago* Fix copy and paste error
Ruediger Pluem [Fri, 9 Jun 2023 11:18:02 +0000 (11:18 +0000)] 
* Fix copy and paste error

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

2 years agofix return codes
Giovanni Bechis [Thu, 8 Jun 2023 09:24:21 +0000 (09:24 +0000)] 
fix return codes
spotted by Yann Ylavic

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

2 years agolog an error if BIO_write(3) fails
Giovanni Bechis [Tue, 6 Jun 2023 22:41:27 +0000 (22:41 +0000)] 
log an error if BIO_write(3) fails

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

2 years agocheck BIO_read return values
Giovanni Bechis [Tue, 6 Jun 2023 22:25:41 +0000 (22:25 +0000)] 
check BIO_read return values
submitted by Jiasheng Jiang
bz #65922

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

2 years agomod_ext_filter: check exit status of filter processes
Giovanni Bechis [Tue, 6 Jun 2023 22:02:37 +0000 (22:02 +0000)] 
mod_ext_filter: check exit status of filter processes

Whenever a filter process returns a non-zero exit status, or is killed
by a signal, return a HTTP 500 error, and log the reason.
Ran top-level make update-log-msg-tags to update APLOGNO numbers.

Submitted by: Dimitry Andric <dimitry@unified-streaming.com>

Github: closes #296

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

2 years agothere is a separate `connectiontimeout`
Eric Covener [Tue, 6 Jun 2023 10:39:15 +0000 (10:39 +0000)] 
there is a separate `connectiontimeout`

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

2 years agofix link in comment
Giovanni Bechis [Tue, 6 Jun 2023 08:48:27 +0000 (08:48 +0000)] 
fix link in comment

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

2 years agofr doc rebuild.
Lucien Gentis [Sat, 3 Jun 2023 13:45:06 +0000 (13:45 +0000)] 
fr doc rebuild.

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

2 years agofr doc XML files updates.
Lucien Gentis [Sat, 3 Jun 2023 13:43:55 +0000 (13:43 +0000)] 
fr doc XML files updates.

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

2 years agoCI: re-add TEST_H2 apr cache ignore, still needed. :(
Stefan Eissing [Thu, 1 Jun 2023 13:01:28 +0000 (13:01 +0000)] 
CI: re-add TEST_H2 apr cache ignore, still needed. :(

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

2 years agoCI: re-enable apr caching for TEST_H2, require newer curl for test_h2_601_05
Stefan Eissing [Thu, 1 Jun 2023 12:59:09 +0000 (12:59 +0000)] 
CI: re-enable apr caching for TEST_H2, require newer curl for test_h2_601_05

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

2 years agoCI: force reset of cached apr for TEST_H2, it seems to be broken
Stefan Eissing [Thu, 1 Jun 2023 12:50:30 +0000 (12:50 +0000)] 
CI: force reset of cached apr for TEST_H2, it seems to be broken

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

2 years ago *) core: add `final_resp_passed` flag to request_rec to allow
Stefan Eissing [Thu, 1 Jun 2023 12:21:03 +0000 (12:21 +0000)] 
  *) core: add `final_resp_passed` flag to request_rec to allow
     ap_die() to judge if it can send out a response. Bump mmn.
     Enable test cases that check errors during response body to
     appear as error on client side.

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

2 years ago * mod_proxy_http2: fixed using the wrong "bucket_alloc" from the backend
Stefan Eissing [Thu, 1 Jun 2023 10:38:53 +0000 (10:38 +0000)] 
 * mod_proxy_http2: fixed using the wrong "bucket_alloc" from the backend
   connection when sending data on the frontend one. This caused crashes
   or infinite loops in rare situations.
 * mod_proxy_http2: fixed a bug in retry/response handling that could lead
   to wrong status codes or HTTP messages send at the end of response bodies
   exceeding the announced content-length.
 * mod_proxy_http2: fix retry handling to not leak temporary errors.
   On detecting that that an existing connection was shutdown by the other
   side, a 503 response leaked even though the request was retried on a
   fresh connection.
 * mod_http2: fixed a bug that did cleanup of consumed and pending buckets in
   the wrong order when a bucket_beam was destroyed.

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

2 years agotests: synch with recent changes from mod_h2 repository
Stefan Eissing [Thu, 1 Jun 2023 10:13:28 +0000 (10:13 +0000)] 
tests: synch with recent changes from mod_h2 repository

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

2 years agoab: STATE_CONNECTED is not used anymore.
Yann Ylavic [Tue, 30 May 2023 09:36:19 +0000 (09:36 +0000)] 
ab: STATE_CONNECTED is not used anymore.

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

2 years ago *) mod_proxy_http2: fix retry handling to not leak temporary errors.
Stefan Eissing [Mon, 22 May 2023 14:10:17 +0000 (14:10 +0000)] 
  *) mod_proxy_http2: fix retry handling to not leak temporary errors.
     On detecting that that an existing connection was shutdown by the other
     side, a 503 response leaked even though the request was retried on a
     fresh connection.

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

2 years agotests: parameterize some h2 tests to make fail cases better visible
Stefan Eissing [Mon, 22 May 2023 13:08:20 +0000 (13:08 +0000)] 
tests: parameterize some h2 tests to make fail cases better visible

- make conf setup for test_h2_004_41 local

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

2 years agoWhen we are at flush_max_threshold and the next bucket is a metadata (i.e. next-...
Christophe Jaillet [Sun, 21 May 2023 17:46:22 +0000 (17:46 +0000)] 
When we are at flush_max_threshold and the next bucket is a metadata (i.e. next->length == 0), we still need to re-check for flush_max_threshold and associated optimisation (is_in_memory_bucket()) when we process this metadata bucket in the next iteration of the loop.

Follow-up to r1892450.

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

2 years agoThe default value of FlushMaxThreshold is defined as AP_FLUSH_MAX_THRESHOLD, which...
Christophe Jaillet [Sun, 21 May 2023 11:28:02 +0000 (11:28 +0000)] 
The default value of FlushMaxThreshold is defined as AP_FLUSH_MAX_THRESHOLD, which is 65535.

[skip ci]

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

2 years ago *) mod_http2: avoid double chunked-encoding on internal redirects.
Stefan Eissing [Fri, 19 May 2023 12:17:44 +0000 (12:17 +0000)] 
  *) mod_http2: avoid double chunked-encoding on internal redirects.
     PR 66597 [Yann Ylavic, Stefan Eissing]

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

2 years agomod_authnz_ldap.c: Make sure the authentication variables are set in
Graham Leggett [Fri, 19 May 2023 10:29:02 +0000 (10:29 +0000)] 
mod_authnz_ldap.c: Make sure the authentication variables are set in
all cases where another module is the source of the authentication,
and that authenticated user is looked up in LDAP.

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

2 years agoUpdate log-message tags.
Graham Leggett [Fri, 19 May 2023 10:26:10 +0000 (10:26 +0000)] 
Update log-message tags.

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

2 years agoSign with the signer key. Previously the verify key was used, which only worked
Graham Leggett [Fri, 19 May 2023 10:24:27 +0000 (10:24 +0000)] 
Sign with the signer key. Previously the verify key was used, which only worked
if the signing and verifying keys were the same.

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

2 years agoa few tweaks to SetEnvIfExpr doc
Eric Covener [Mon, 15 May 2023 13:35:56 +0000 (13:35 +0000)] 
a few tweaks to SetEnvIfExpr doc

From a question on IRC, show a backreference example.
Fix a bad copy/paste where a link to <if> was present.

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

2 years agofr doc rebuild.
Lucien Gentis [Sat, 13 May 2023 13:24:48 +0000 (13:24 +0000)] 
fr doc rebuild.

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

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

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

2 years ago *) mod_http2: v2.0.15 with the following fixes and improvements
Stefan Eissing [Fri, 12 May 2023 11:28:59 +0000 (11:28 +0000)] 
  *) mod_http2: v2.0.15 with the following fixes and improvements
     - New directive 'H2EarlyHint name value' to add headers to a response,
       picked up already when a "103 Early Hints" response is sent. 'name' and
       'value' must comply to the HTTP field restrictions.
       This directive can be repeated several times and header fields of the
       same names add. Sending a 'Link' header with 'preload' relation will
       also cause a HTTP/2 PUSH if enabled and supported by the client.
     - Fixed an issue where requests were not logged and accounted in a timely
       fashion when the connection returns to "keepalive" handling, e.g. when
       the request served was the last outstanding one.
       This led to late appearance in access logs with wrong duration times
       reported.
     - Accurately report the bytes sent for a request in the '%O' Log format.
       This addresses #203, a long outstanding issue where mod_h2 has reported
       numbers over-eagerly from internal buffering and not what has actually
       been placed on the connection.
       The numbers are now the same with and without H2CopyFiles enabled.

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

2 years agoignore errors due to races if a parallel mkdir.sh already
Giovanni Bechis [Tue, 9 May 2023 21:58:27 +0000 (21:58 +0000)] 
ignore errors due to races if a parallel mkdir.sh already
created the dir

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

2 years agodav_fs_cmds is declared twice in the file... VS 2022 complains about it.
Jean-Frederic Clere [Fri, 5 May 2023 13:26:23 +0000 (13:26 +0000)] 
dav_fs_cmds is declared twice in the file... VS 2022 complains about it.

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