351 Commits

Author SHA1 Message Date
1045f538cf Improve compatibility with older python.
According to python 3.11.0 changelog, "datetime.UTC"
was added as an alias for "datetime.timezone.utc".


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@1927317 13f79535-47bb-0310-9956-ffa450edef68
2025-07-18 17:07:05 +00:00
a6b8db04ec improve h2 header error handling
git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@1927038 13f79535-47bb-0310-9956-ffa450edef68
2025-07-07 11:56:48 +00:00
90536be744 CI: Reintroduce timeout/retry handling for "svn export" specific to
Apache::Test handling.

Github: closes #536


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@1926174 13f79535-47bb-0310-9956-ffa450edef68
2025-06-06 11:50:43 +00:00
65d5f9ee6c CI: Use the git commit hash to determine the revision of APR/APR-util
from the github repos, and build exactly that, rather than relying on SVN:
 - works if apr/apr-util moves to a r/w git in the future
 - removes a race for branches where the git revision tested
 could be different to the SVN revision retrieved before

Github: closes #528


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@1924958 13f79535-47bb-0310-9956-ffa450edef68
2025-04-09 10:17:24 +00:00
e07b7a2abd *) mod_md: update to v2.5.1
git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@1923592 13f79535-47bb-0310-9956-ffa450edef68
2025-02-05 12:30:07 +00:00
0ba38c2527 CI: Try to cope with CentOS Stream containers being out-of-sync with
the yum repos when building the slapd container. [skip ci]


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@1923479 13f79535-47bb-0310-9956-ffa450edef68
2025-01-31 14:28:57 +00:00
49c2ee218f *) mod_http2: make test_h2_200_17+18 work reliably with
older and newer curl versions. Only a change in logging,
    no function module change.
    Newer curl send a GOAWAY on connection shutdown which
    triggers another code path that the test did not expect.
    Thanks to Rainer Jung for tracking this down.



git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@1923187 13f79535-47bb-0310-9956-ffa450edef68
2025-01-17 16:12:28 +00:00
77a8be7be9 mod_md test_702_42, make sure that log errors/warning from previous
test are not counted.



git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@1922278 13f79535-47bb-0310-9956-ffa450edef68
2024-12-03 09:46:38 +00:00
d94933b89f mod_http2, fix keepalive timeout on reset requests
Count failed requests that are RST'ed, so that the
connection enters keepalive timeout instead of the
regular timeout if the first request fails.

Add tests to verify.



git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@1921805 13f79535-47bb-0310-9956-ffa450edef68
2024-11-07 12:02:41 +00:00
e6eb73b84e CI: Fix borked test for perl -V in r1921308.
git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@1921309 13f79535-47bb-0310-9956-ffa450edef68
2024-10-14 14:10:19 +00:00
e8518dc75d CI: Second attempt to fix stale XS cache issue.
Cache the "perl -V" output and flush the cache if it changes.


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@1921308 13f79535-47bb-0310-9956-ffa450edef68
2024-10-14 14:08:21 +00:00
c34a276aea CI: Flush the CPAN cache if /usr/bin/perl has been updated since
the cache was built. Possible fix for 2.4.x failure seen here:

https://github.com/apache/httpd/actions/runs/11322484507/job/31483266212

SSLeay.c: loadable library and perl binaries are mismatched (got first handshake key 0xeb00080, needed 0xf380080)

perldiag(1) describes this as a mismatch between libraries and binaries,
likely solved by reinstalling XS modules:

77b78882c7/pod/perldiag.pod (L3617)



git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@1921307 13f79535-47bb-0310-9956-ffa450edef68
2024-10-14 13:53:01 +00:00
7087372788 mod_md pytest: fix run on a clean test/gen to create
all needed directories.



git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@1920751 13f79535-47bb-0310-9956-ffa450edef68
2024-09-17 12:05:22 +00:00
af10058840 *) mod_md: update to version 2.4.28
- When the server starts, it looks for new, staged certificates to
       activate. If the staged set of files in 'md/staging/<domain>' is messed
       up, this could prevent further renewals to happen. Now, when the staging
       set is present, but could not be activated due to an error, purge the
       whole directory. [icing]
     - Fix certificate retrieval on ACME renewal to not require a 'Location:'
       header returned by the ACME CA. This was the way it was done in ACME
       before it became an IETF standard. Let's Encrypt still supports this,
       but other CAs do not. [icing]
     - Restore compatibility with OpenSSL < 1.1. [ylavic]



git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@1920747 13f79535-47bb-0310-9956-ffa450edef68
2024-09-17 11:38:19 +00:00
988f449632 removed experimental mod_tls. source, documenation and test cases
git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@1920744 13f79535-47bb-0310-9956-ffa450edef68
2024-09-17 11:06:04 +00:00
b5e9884a48 Add jxl mime type
Submitted by: printfn <printfn users.noreply.github.com>
Github: closes #478


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@1920589 13f79535-47bb-0310-9956-ffa450edef68
2024-09-12 08:38:39 +00:00
4eee244d55 CI: Fix OpenSSL tarball download URLs after openssl.org site refresh
CI: Update to latest OpenSSL releases.
CI: Build OpenSSL with RPATH set so that the installed ./bin/openssl works
without LD_LIBRARY_PATH set.

Use LD_RUN_PATH during the httpd build to achieve the same with binaries
from the httpd build, but unset it after so that it doesn't affect running
e.g. php-fpm or perl later. Should fix warning from logs when php-fpm
is executed --

[26-Jul-2024 07:43:34] NOTICE: PHP message: PHP Warning:  PHP Startup: Unable to load dynamic library 'curl.so' (tried: /usr/lib/php/20210902/curl.so (/lib/x86_64-linux-gnu/libcurl.so.4: undefined symbol: ENGINE_init, version OPENSSL_3.0.0), /usr/lib/php/20210902/curl.so.so (/usr/lib/php/20210902/curl.so.so: cannot open shared object file: No such file or directory)) in Unknown on line 0

CI: Test that php-fpm works if available before testing.
CI: For paranoia/future debugging, log the OpenSSL version from compile-time
and run-time as reported by mod_ssl.

Github: closes #466


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@1919524 13f79535-47bb-0310-9956-ffa450edef68
2024-07-26 09:14:40 +00:00
0e30f59201 Reenable test class, upstream bug fixed in pebble.
git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@1919491 13f79535-47bb-0310-9956-ffa450edef68
2024-07-24 10:42:18 +00:00
11c43c9a6d Skip more h2 tests in prefork
git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@1919334 13f79535-47bb-0310-9956-ffa450edef68
2024-07-17 22:11:28 +00:00
c8e629e485 Skip h2 tests on prefork
git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@1919332 13f79535-47bb-0310-9956-ffa450edef68
2024-07-17 22:02:27 +00:00
5f9b5924a9 Fix typo in test name
git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@1919330 13f79535-47bb-0310-9956-ffa450edef68
2024-07-17 21:57:23 +00:00
f889bcb228 Make sure pytest shuts down the web server after each package
git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@1919265 13f79535-47bb-0310-9956-ffa450edef68
2024-07-15 22:34:32 +00:00
3fb63bf859 test http1, add version check for trailer tests
git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@1919125 13f79535-47bb-0310-9956-ffa450edef68
2024-07-11 08:10:54 +00:00
98b9ed685e sync test code with mod-h2
- shutdown server at end of h2 tests
- adapt minimum httpd versions for some tests
- add test_700_20 for load on blocked connections, 
  disabled for now until mpm_event improves
- build websocket client automatically



git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@1919087 13f79535-47bb-0310-9956-ffa450edef68
2024-07-10 10:55:23 +00:00
fd1460442a pytest: fix asset list extraction from nghttp output
git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@1918576 13f79535-47bb-0310-9956-ffa450edef68
2024-06-25 09:21:49 +00:00
ff5aa488fb Add avif mime type
Submitted by: Adam Silverstein <adamsilverstein earthboundhosting.com>
Github: closes #451


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@1918129 13f79535-47bb-0310-9956-ffa450edef68
2024-06-03 08:44:55 +00:00
84ecd2f2b9 CI: For LDAP tests, switch to using OpenLDAP slapd running on
CentOS Stream 9.

Github: closes #450


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@1918059 13f79535-47bb-0310-9956-ffa450edef68
2024-05-30 14:48:21 +00:00
c8a9d21e0c * mod_tls: update version of rustls-ffi to v0.13.0.
[Daniel McCarney (@cpu}]



git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@1917270 13f79535-47bb-0310-9956-ffa450edef68
2024-04-22 13:55:22 +00:00
d958349e72 Arrange pytest to run with mod_ssl, still skipping some tests.
this closes #433


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@1917039 13f79535-47bb-0310-9956-ffa450edef68
2024-04-16 15:02:29 +00:00
a6f0166b14 make the compiler happy when using --enable-maintainer-mode
git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@1917013 13f79535-47bb-0310-9956-ffa450edef68
2024-04-16 08:11:19 +00:00
8ffa19a1f7 mod_md: update to v2.4.26
- Using OCSP stapling information to trigger certificate renewals. Proposed
  by @frasertweedale.
- Added directive `MDCheckInterval` to control how often the server checks
  for detected revocations. Added proposals for configurations in the
  README.md chapter "Revocations".
- OCSP stapling: accept OCSP responses without a `nextUpdate` entry which is
  allowed in RFC 6960. Treat those as having an update interval of 12 hours.
  Added by @frasertweedale.
- Adapt OpenSSL usage to changes in their API. By Yann Ylavic.

Test Updates
- workarounds for using Pebble v2.5
- disable EAB tests for Pebble since v2.5 no longer
  supports HS256 FWT for EAB keys
- some stability improvemnets in error/warning checks



git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@1916861 13f79535-47bb-0310-9956-ffa450edef68
2024-04-08 11:24:18 +00:00
d3c4bf9ffe Fix occasional pytest failures
in modules/http2/test_800_websockets.py
(test_h2_800_03_not_found and
test_h2_800_05_non_ws_delay_resource) due to
additional RST messages.

Maybe we should allow RST after EOF in all websocket tests?


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@1916830 13f79535-47bb-0310-9956-ffa450edef68
2024-04-06 10:25:41 +00:00
251d796a8d Fix occasional pytest failures
in modules/http2/test_800_websockets.py
(test_h2_800_04_non_ws_resource and
test_h2_800_09b_unsupported) due to
additional RST messages.


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@1916808 13f79535-47bb-0310-9956-ffa450edef68
2024-04-04 22:46:59 +00:00
773a5f8f34 Fix failing pytest modules/http2/test_712_buffering.py:48.
Do not count lines like "00:12:26.578220 <= Recv data, 0 bytes (0x0)"
(which happen before the final close) as receiving a real chunk.


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@1916806 13f79535-47bb-0310-9956-ffa450edef68
2024-04-04 22:19:09 +00:00
b5427c7395 Fix pytest failure when using older nghttp2
git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@1916804 13f79535-47bb-0310-9956-ffa450edef68
2024-04-04 21:48:51 +00:00
2361315143 CI: add OpenSSL 3.2, test OpenSSL 3.x using Apache::Test
trunk to pick up r1916067.


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@1916068 13f79535-47bb-0310-9956-ffa450edef68
2024-03-01 10:15:13 +00:00
fed3652d82 CI: docs update only. [skip ci]
git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@1916059 13f79535-47bb-0310-9956-ffa450edef68
2024-02-29 17:07:55 +00:00
f65a498b3b CI: Add OpenSSL 3.1 builds, including a no-engine build.
(attempt to use 3.2 failed, unsure why)
- add OpenSSL build binaries to $PATH 

Github: closes #415


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@1916058 13f79535-47bb-0310-9956-ffa450edef68
2024-02-29 15:33:38 +00:00
0e7a32bcd4 Fix regression in r1916055 - don't duplicate logic in _run_linux.sh
from _before_linux.sh in whether the perl-framework is used/needed.


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@1916056 13f79535-47bb-0310-9956-ffa450edef68
2024-02-29 14:11:49 +00:00
a1f6da9855 CI tweaks:
- don't install CPAN modules if NO_TEST_FRAMEWORK is set
- remove the workaround for mod_h2 APR build caching which
  should no longer be necessary now caching is fixed
- fix capturing specific perl-framework failures with "TEST -v" mode


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@1916055 13f79535-47bb-0310-9956-ffa450edef68
2024-02-29 14:00:55 +00:00
39e25a4a18 CI: Enable caching for the rustls install used for mod_tls testing.
Github: closes #416


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@1916052 13f79535-47bb-0310-9956-ffa450edef68
2024-02-29 13:19:26 +00:00
c76ebdba43 Minor CI changes:
- Add --enable-reduced-exports test.
- test running apachectl -V in the TEST_INSTALL case
- test running httpd -V in the SKIP_TESTING case
- rejig to exit if SKIP_TESTING, un-nest the if block around testing
  (no functional change from this part)

Github: closes #405


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@1915513 13f79535-47bb-0310-9956-ffa450edef68
2024-02-01 15:34:22 +00:00
c9028584a8 Fix a typo (missing "t")
s/redisribution/redistribution/

PR 67018 [<hanskrentel yahoo.de>]

git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@1914884 13f79535-47bb-0310-9956-ffa450edef68
2023-12-23 10:30:04 +00:00
56fc7231ae 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
2023-11-16 10:27:30 +00:00
08ab87e8ba * Fix .gdbinit directory location
git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@1913441 13f79535-47bb-0310-9956-ffa450edef68
2023-10-30 15:02:00 +00:00
613f78d88e * .gdbinit is one level deeper
git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@1913439 13f79535-47bb-0310-9956-ffa450edef68
2023-10-30 14:43:12 +00:00
1cee2017b0 * 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
2023-10-30 14:22:05 +00:00
a2dabc2122 *) 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
2023-09-08 07:39:50 +00:00
9b7dbbea0f 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
2023-08-16 10:45:47 +00:00
d62d3143f4 *) 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
2023-07-26 12:18:06 +00:00