#
35ed3f7a |
| 17-Jul-2024 |
Stefan Eissing |
pytests: scorecard upload tests - add upload tests to scorecard, invoke with > python3 tests/http/scorecard.py -u h1|h2|h3 - add a reverse proxy setup from Caddy to httpd for
pytests: scorecard upload tests - add upload tests to scorecard, invoke with > python3 tests/http/scorecard.py -u h1|h2|h3 - add a reverse proxy setup from Caddy to httpd for upload tests since Caddy does not have other PUT/POST handling - add caddy tests in test_08 for POST/PUT - increase read buffer in mod_curltest for larger reads Closes #14208
show more ...
|
#
5f9017d4 |
| 31-May-2024 |
Stefan Eissing |
mbedtls: v3.6.0 workarounds - add special sauce to disable unwanted peer verification by mbedtls when negotiating TLS v1.3 - add special sauce for MBEDTLS_ERR_SSL_RECEIVED_NEW_SESS
mbedtls: v3.6.0 workarounds - add special sauce to disable unwanted peer verification by mbedtls when negotiating TLS v1.3 - add special sauce for MBEDTLS_ERR_SSL_RECEIVED_NEW_SESSION_TICKET return code on *writing* TLS data. We assume the data had not been written and EAGAIN. - return correct Curl error code when peer verification failed. - disable test_08_05 with 50 HTTP/1.1 connections, as mbedtls reports a memory allocation failed during handshake. - bump CI mbedtls version to 3.6.0 Fixes #13653 Closes #13838
show more ...
|
#
3e16c97f |
| 18-Apr-2024 |
Stefan Eissing |
tests: check caddy server version to match test expectations - new caddy servers no longer return 200 on POSTs, but 405 as they should Closes #13405
|
#
0535f6ec |
| 18-Jan-2024 |
Stefan Eissing |
http3: initial support for OpenSSL 3.2 QUIC stack - HTTP/3 for curl using OpenSSL's own QUIC stack together with nghttp3 - configure with `--with-openssl-quic` to enable curl to
http3: initial support for OpenSSL 3.2 QUIC stack - HTTP/3 for curl using OpenSSL's own QUIC stack together with nghttp3 - configure with `--with-openssl-quic` to enable curl to build this. This requires the nghttp3 library - implementation with the following restrictions: * macOS has to use an unconnected UDP socket due to an issue in OpenSSL's datagram implementation See https://github.com/openssl/openssl/issues/23251 This makes connections to non-reponsive servers hang. * GET requests will send the indicator that they have no body in a separate QUIC packet. This may result in processing delays or Transfer-Encodings on proxied requests * uploads that encounter blocks will use 100% cpu as detection of these flow control issue is not working (we have not figured out to pry that from OpenSSL). Closes #12734
show more ...
|
#
3b30cc1a |
| 06-Sep-2023 |
Stefan Eissing |
pytest: improvements - set CURL_CI for pytest runs in CI environments - exclude timing sensitive tests from CI runs - for failed results, list only the log and stat of the fail
pytest: improvements - set CURL_CI for pytest runs in CI environments - exclude timing sensitive tests from CI runs - for failed results, list only the log and stat of the failed transfer - fix type in http.c comment Closes #11812
show more ...
|
#
a8a82140 |
| 05-Sep-2023 |
Stefan Eissing |
pytest: fix check for slow_network skips to only apply when intended Closes #11801
|
#
331b89a3 |
| 29-Aug-2023 |
Stefan Eissing |
http2: polish things around POST - added test cases for various code paths - fixed handling of blocked write when stream had been closed inbetween attempts - re-enabled DEBUGAS
http2: polish things around POST - added test cases for various code paths - fixed handling of blocked write when stream had been closed inbetween attempts - re-enabled DEBUGASSERT on send with smaller data size - in debug builds, environment variables can be set to simulate a slow network when sending data. cf-socket.c and vquic.c support * CURL_DBG_SOCK_WBLOCK: percentage of send() calls that should be answered with a EAGAIN. TCP/UNIX sockets. This is chosen randomly. * CURL_DBG_SOCK_WPARTIAL: percentage of data that shall be written to the network. TCP/UNIX sockets. Example: 80 means a send with 1000 bytes would only send 800 This is applied to every send. * CURL_DBG_QUIC_WBLOCK: percentage of send() calls that should be answered with EAGAIN. QUIC only. This is chosen randomly. Closes #11756
show more ...
|
#
ce3dce90 |
| 31-Aug-2023 |
Viktor Szakats |
tidy-up: mostly whitespace nits - delete completed TODO from `./CMakeLists.txt`. - convert a C++ comment to C89 in `./CMake/CurlTests.c`. - delete duplicate EOLs from EOF. - add
tidy-up: mostly whitespace nits - delete completed TODO from `./CMakeLists.txt`. - convert a C++ comment to C89 in `./CMake/CurlTests.c`. - delete duplicate EOLs from EOF. - add missing EOL at EOF. - delete whitespace at EOL (except from expected test results). - convert tabs to spaces. - convert CRLF EOLs to LF in GHA yaml. - text casing fixes in `./CMakeLists.txt`. - fix a codespell typo in `packages/OS400/initscript.sh`. Closes #11772
show more ...
|
#
4ae2d9f2 |
| 06-Apr-2023 |
Stefan Eissing |
proxy: http2 proxy tunnel implementation - currently only on debug build and when env variable CURL_PROXY_TUNNEL_H2 is present. - will ALPN negotiate with the proxy server and swit
proxy: http2 proxy tunnel implementation - currently only on debug build and when env variable CURL_PROXY_TUNNEL_H2 is present. - will ALPN negotiate with the proxy server and switch tunnel filter based on the protocol negotiated. - http/1.1 tunnel code moved into cf-h1-proxy.[ch] - http/2 tunnel code implemented in cf-h2-proxy.[ch] - tunnel start and ALPN set remains in http_proxy.c - moving all haproxy related code into cf-haproxy.[ch] VTLS changes - SSL filters rely solely on the "alpn" specification they are created with and no longer check conn->bits.tls_enable_alpn. - checks on which ALPN specification to use (or none at all) are done in vtls.c when creating the filter. Testing - added a nghttpx forward proxy to the pytest setup that speaks HTTP/2 and forwards all requests to the Apache httpd forward proxy server. - extending test coverage in test_10 cases - adding proxy tests for direct/tunnel h1/h2 use of basic auth. - adding test for http/1.1 and h2 proxy tunneling to pytest Closes #10780
show more ...
|
#
544abeea |
| 30-Mar-2023 |
Stefan Eissing |
http3: improvements across backends - ngtcp2: using bufq for recv stream data - internal stream_ctx instead of `struct HTTP` members for quiche, ngtcp2 and msh3 - no more QUIC
http3: improvements across backends - ngtcp2: using bufq for recv stream data - internal stream_ctx instead of `struct HTTP` members for quiche, ngtcp2 and msh3 - no more QUIC related members in `struct HTTP` - experimental use of recvmmsg(), disabled by default - testing on my old debian box shows no throughput improvements. - leaving it in, but disabled, for future revisit - vquic: common UDP receive code for ngtcp2 and quiche - vquic: common UDP send code for ngtcp2 and quiche - added pytest skips for known msh3 failures - fix unit2601 to survive torture testing - quiche: using latest `master` from quiche and enabling large download tests, now that key change is supported - fixing test_07_21 where retry handling of starting a stream was faulty - msh3: use bufq for recv buffering headers and data - msh3: replace fprintf debug logging with LOG_CF where possible - msh3: force QUIC expire timers on recv/send to have more than 1 request per second served Closes #10772
show more ...
|
#
8cabef6f |
| 24-Mar-2023 |
Stefan Eissing |
pytest: improvements for suitable curl and error output - will check built curl for http and https support and skip all tests if not there - will dump stdout/stderr/trace output on
pytest: improvements for suitable curl and error output - will check built curl for http and https support and skip all tests if not there - will dump stdout/stderr/trace output on errored responses Closes #10829
show more ...
|
#
c46761bd |
| 14-Mar-2023 |
Daniel Stenberg |
tests/http: remove year ranges from copyrights Closes #10763
|
#
e497a96a |
| 01-Mar-2023 |
Stefan Eissing |
tests: rename tests/tests-httpd to tests/http - httpd is only one server we test with - the suite coveres the HTTP protocol in general where the default test cases need a more b
tests: rename tests/tests-httpd to tests/http - httpd is only one server we test with - the suite coveres the HTTP protocol in general where the default test cases need a more beefy environment Closes #10654
show more ...
|