3proxy/tests/cases
Vladimir Dubrovin f265ea0b52
Some checks failed
C/C++ CI Linux / ${{ matrix.target }} (ubuntu-24.04-arm) (push) Waiting to run
C/C++ CI Linux / ${{ matrix.target }} (ubuntu-latest) (push) Waiting to run
C/C++ CI MacOS / ${{ matrix.target }} (macos-15) (push) Waiting to run
C/C++ CI Windows / ${{ matrix.target }} (windows-2022) (push) Waiting to run
C/C++ CI cmake / ${{ matrix.target }} (macos-15) (push) Waiting to run
C/C++ CI cmake / ${{ matrix.target }} (ubuntu-24.04-arm) (push) Waiting to run
C/C++ CI cmake / ${{ matrix.target }} (ubuntu-latest) (push) Waiting to run
C/C++ CI cmake / ${{ matrix.target }} (windows-2022) (push) Waiting to run
C/C++ CI cmake / ubuntu-latest (wolfSSL) (push) Waiting to run
Update HTML documentation / docs (push) Has been cancelled
Update wiki / wiki (push) Has been cancelled
Fix rewrite and over-long header handling on Windows
op_rewrite checked what it built with targetunsafe(), which describes a
path on this machine: on Windows it must name a drive or a share, so a
rewritten request path was refused and every rewrite rule failed there.
A rewrite produces a request path and is checked as one.

The header loop stopped at HTTPSRV_MAXHDR and answered anyway, leaving
the rest of the request in the stream for the next one to be read out
of. It refuses the request instead. A header longer than the buffer
arrives as several lines, so the count bounds what is read rather than
what a client may send in one header.

The test for the buffer growth after a PCRE rewrite sent its request
through to an httpsrv origin, which stops reading at that same cap; it
uses an origin which reads whatever it is sent, since what is under test
is the proxy in the middle.
2026-08-29 20:37:12 +03:00
..
admin.py Add tests 2026-08-25 18:03:50 +03:00
auto.py http server implemented, pcre support for hostnames in acls implemented 2026-08-29 19:09:54 +03:00
dnspr.py Fix dnspr for Windows 2026-08-26 16:48:09 +03:00
httpsrv_auth.py http server implemented, pcre support for hostnames in acls implemented 2026-08-29 19:09:54 +03:00
httpsrv_files.py http server implemented, pcre support for hostnames in acls implemented 2026-08-29 19:09:54 +03:00
httpsrv_keepalive.py http server implemented, pcre support for hostnames in acls implemented 2026-08-29 19:09:54 +03:00
httpsrv_ops.py http server implemented, pcre support for hostnames in acls implemented 2026-08-29 19:09:54 +03:00
httpsrv_parsing.py http server implemented, pcre support for hostnames in acls implemented 2026-08-29 19:09:54 +03:00
httpsrv_proxypass.py support proxypass in web server 2026-08-29 19:09:54 +03:00
httpsrv_rules.py http server implemented, pcre support for hostnames in acls implemented 2026-08-29 19:09:54 +03:00
ipv6.py http server implemented, pcre support for hostnames in acls implemented 2026-08-29 19:09:54 +03:00
parent_ports.py http server implemented, pcre support for hostnames in acls implemented 2026-08-29 19:09:54 +03:00
pcre.py Fix rewrite and over-long header handling on Windows 2026-08-29 20:37:12 +03:00
portmap.py http server implemented, pcre support for hostnames in acls implemented 2026-08-29 19:09:54 +03:00
proxy_http.py http server implemented, pcre support for hostnames in acls implemented 2026-08-29 19:09:54 +03:00
socks.py http server implemented, pcre support for hostnames in acls implemented 2026-08-29 19:09:54 +03:00
ssl.py http server implemented, pcre support for hostnames in acls implemented 2026-08-29 19:09:54 +03:00
tlspr.py http server implemented, pcre support for hostnames in acls implemented 2026-08-29 19:09:54 +03:00
transparent.py http server implemented, pcre support for hostnames in acls implemented 2026-08-29 19:09:54 +03:00