3proxy/tests/cases
Vladimir Dubrovin 488317da1d Read the request body before replying, and generate certificates portably
httpsrv parsed Content-Length and never read what followed. The reply is
followed by a close, and closing a socket that still holds unread data
resets the connection instead of ending it, so a POST could cost the client
the reply it was about to read. Windows does that reliably; the same test
passes on Linux and macOS, which is why it looked flaky. Drain the body,
bounded at a megabyte.

The test CA was built with -addext, which LibreSSL - the openssl on a stock
macOS - does not apply the same way, leaving a certificate that is not
usable as a CA and a client that cannot build a chain to it. Put the
extensions in a file both accept, and verify the generated chain before any
of it is handed to a proxy, so a failure there is not read as a fault in
the proxy.
2026-08-26 09:28:46 +03:00
..
admin.py Add tests 2026-08-25 18:03:50 +03:00
httpsrv_auth.py Add tests 2026-08-25 18:03:50 +03:00
httpsrv_ops.py Add tests 2026-08-25 18:03:50 +03:00
httpsrv_parsing.py Add tests 2026-08-25 18:03:50 +03:00
httpsrv_rules.py Add tests 2026-08-25 18:03:50 +03:00
parent_ports.py Make the TLS and port-range cases hold on every platform 2026-08-26 09:11:56 +03:00
proxy_http.py Add tests 2026-08-25 18:03:50 +03:00
socks.py Add tests 2026-08-25 18:03:50 +03:00
ssl.py Read the request body before replying, and generate certificates portably 2026-08-26 09:28:46 +03:00