#
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 ...
|
#
40f3ee0d |
| 30-Aug-2023 |
Stefan Eissing |
wolfssl, use master again in CI - with the shared session update fix landed in master, it is time to use that in our CI again
|
#
fb3180a0 |
| 25-Aug-2023 |
John Bampton |
misc: spellfixes Closes #11730
|
#
57e81ff3 |
| 15-Aug-2023 |
Stefan Eissing |
tests: TLS session sharing test - test TLS session sharing with special test client - expect failure with wolfSSL - disable flaky wolfSSL test_02_07b Closes #11675
|
#
944e219f |
| 01-Aug-2023 |
Stefan Eissing |
http2: upgrade tests and add fix for non-existing stream - check in h2 filter recv that stream actually exists and return error if not - add test for parallel, extreme h2 upgrades
http2: upgrade tests and add fix for non-existing stream - check in h2 filter recv that stream actually exists and return error if not - add test for parallel, extreme h2 upgrades that fail if connections get reused before fully switched - add h2 upgrade upload test just for completeness Closes #11563
show more ...
|
#
3f518ce4 |
| 27-Jul-2023 |
Stefan Eissing |
CI ngtcp2+quictls: use nghttpx cache as in quiche build
|
#
f4b5c88a |
| 15-May-2023 |
Stefan Eissing |
http2: better support for --limit-rate - leave transfer loop when --limit-rate is in effect and has been received - adjust stream window size to --limit-rate plus some slack
http2: better support for --limit-rate - leave transfer loop when --limit-rate is in effect and has been received - adjust stream window size to --limit-rate plus some slack to make the server observe the pacing we want - add test case to confirm behaviour Closes #11115
show more ...
|
#
a9b7f72b |
| 28-Apr-2023 |
Stefan Eissing |
http2: do flow window accounting for cancelled streams - nghttp2 does not free connection level window flow for aborted streams - when closing transfers, make sure that any buffere
http2: do flow window accounting for cancelled streams - nghttp2 does not free connection level window flow for aborted streams - when closing transfers, make sure that any buffered response data is "given back" to the flow control window - add tests test_02_22 and test_02_23 to reproduce Closes #11052
show more ...
|
#
acd82c8b |
| 26-Apr-2023 |
Stefan Eissing |
tests/http: more tests with specific clients - Makefile support for building test specific clients in tests/http/clients - auto-make of clients when invoking pytest - added test_09_0
tests/http: more tests with specific clients - Makefile support for building test specific clients in tests/http/clients - auto-make of clients when invoking pytest - added test_09_02 for server PUSH_PROMISEs using clients/h2-serverpush - added test_02_21 for lib based downloads and pausing/unpausing transfers curl url parser: - added internal method `curl_url_set_authority()` for setting the authority part of a url (used for PUSH_PROMISE) http2: - made logging of PUSH_PROMISE handling nicer Placing python test requirements in requirements.txt files - separate files to base test suite and http tests since use and module lists differ - using the files in the gh workflows websocket test cases, fixes for we and bufq - bufq: account for spare chunks in space calculation - bufq: reset chunks that are skipped empty - ws: correctly encode frames with 126 bytes payload - ws: update frame meta information on first call of collect callback that fills user buffer - test client ws-data: some test/reporting improvements Closes #11006
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 ...
|
#
041cf77c |
| 30-Mar-2023 |
Stefan Eissing |
tests/http: relax connection check in test_07_02 Only 1 connection will be used when curl is slow, happens when address-sanitized in CI, for example Closes #10865
|
#
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
|
#
7fa6e365 |
| 09-Mar-2023 |
Stefan Eissing |
tests/http: add pytest to GHA and improve tests - added to: ngtcp2-quictls, ngtcp2-gnutls and the linux varians quiche, bearssl, libressl, mbedtls, openssl3, rustls - added disable
tests/http: add pytest to GHA and improve tests - added to: ngtcp2-quictls, ngtcp2-gnutls and the linux varians quiche, bearssl, libressl, mbedtls, openssl3, rustls - added disabled in ngtcp2-wolfssl due to weird SSL_connect() errors not reproducable locally Improvements on pytest: - handling of systems with nghttpx in $PATH - configure will seach $PATH got nghttpx used in pytest - pytest fixes for managing nghttpx without h3 support - ngtcp2-wolfssl: use a fully enabled wolfssl build - lower parallel count for http/1.1 tests, since we do not want to test excessive connections. - check built curl for HTTPS-proxy support in proxy tests - bearssl does not like one of our critical cert extensions, making it non-critical now - bearssl is too slow for test_12, skipping - making sure we do h3 tests only when curl and server support is there Closes #10699
show more ...
|
#
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 ...
|