43724a5c40
Add tests/e2e/http2_test.go covering the http2 handler/listener/connector/dialer
end-to-end through the canonical gost-as-client pattern (8 subtests: forward,
auth, bypass, probeResist/metadata, h2 stream multiplexing). Include
testdata/http2/{server,server_auth,server_bypass,server_proberesist,client,
client_auth}.yaml. Note that h2/h2c listeners pair with the tunnel handler
and only http2 listener pairs with handler http2 (reads r/w from metadata).
Tighten TestDNSHostMapper by pointing the handler at an unreachable upstream
so unmapped names fail at the exchanger, confirming the host-mapper path was
the sole reason mapped names resolved. Fix http_idle_timeout.py to speak HTTP
through the CONNECT tunnel rather than a raw ping, matching the echo backend.
Co-Authored-By: Claude <noreply@anthropic.com>
24 lines
358 B
YAML
24 lines
358 B
YAML
services:
|
|
- name: http-proxy
|
|
addr: :8080
|
|
handler:
|
|
type: http
|
|
chain: h2-chain
|
|
listener:
|
|
type: tcp
|
|
|
|
chains:
|
|
- name: h2-chain
|
|
hops:
|
|
- name: hop-0
|
|
nodes:
|
|
- name: node-0
|
|
addr: {{.ServerAddr}}
|
|
connector:
|
|
type: http2
|
|
auth:
|
|
username: user
|
|
password: pass
|
|
dialer:
|
|
type: http2
|