Skip to content

turnloop-http: support https:// proxies (TLS to the proxy, then CONNECT) #111

Description

@proggeramlug

turnloop_http::client::ProxyEnvironment::proxy_for refuses any proxy whose scheme is not http (turnloop-http 0.1.0-alpha.6, src/client.rs:215-220), so an https:// proxy (TLS to the proxy itself, then CONNECT, then TLS to the origin inside it) cannot be expressed.

Perry's fetch previously fell back to reqwest for this case, which supports HTTPS proxies. PerryTS/perry#11101 deletes that fallback, so such a fetch now rejects with only HTTP proxies are supported.

Needed:

  1. proxy_for accepts https proxy URIs and reports the scheme to the caller.
  2. A way to layer a turnloop-tls client session over an already-TLS stream (TLS-in-TLS) for the CONNECT tunnel, or guidance on how the embedder should compose it.

No test in Perry covers this today; it is a regression relative to the reqwest path, not a Node-parity test failure.

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions