You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Name the server behind an SSH tunnel in :authority, not unix.socket
A channel through an ssh tunnel is opened to a local unix socket, built from
http://unix.socket/<path>, so every request named unix.socket in h2's
:authority. For ssh://...->http://name@10.0.0.7:8080 the tunnel went to the
pinned ip but the server name was lost, and a reverse proxy on that ip had
nothing to route the call by.
The ssh branch now sets the endpoint's origin to the host of the url behind
the tunnel, so :authority is name:8080 - the same as without the tunnel. It
applies to every ssh tunnel, pinned ip or not; a plain local unix socket
still names unix.socket. The scheme stays http: that is what goes through
the tunnel.
Tests: a unix-socket channel over a real h2 connection names unix.socket
without an origin and the server name with one; the origin computed for ssh
urls (with-ssh). The ssh branch itself was not run against a real tunnel.
Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>