Skip to content

Conversation

@arturobernalg
Copy link
Member

add opt-in support for HTTPS-proxy tunnelling (TLS-in-TLS) by introducing ProxyTlsConnectionOperator and ProxyTlsAsyncConnectionOperator and corresponding useHttpsProxyTunnelling() builder flags.
While standard proxy tunneling (CONNECT method) establishes a plain TCP connection to the proxy, many modern enterprise and corporate environments utilize HTTPS proxies for enhanced security and access control.

…both classic and async clients via ProxyTlsConnectionOperator / ProxyTlsAsyncConnectionOperator and new useHttpsProxyTunnelling builder switches.
@ok2c
Copy link
Member

ok2c commented Jul 24, 2025

@arturobernalg Does it actually work?

@arturobernalg
Copy link
Member Author

@arturobernalg Does it actually work?

@olegk Tests for ProxyTlsConnectionOperator and ProxyTlsAsyncConnectionOperator pass, mocking double-TLS handshakes and socket binding for HTTPS proxy tunneling. Patch with code and tests attached for HTTPCLIENT-2369.

@ok2c
Copy link
Member

ok2c commented Jul 25, 2025

@arturobernalg I mean does it really work with real proxy servers like Squid? Has this been tested? As I have already tried to explain it in the past, TLS over TLS is presently not possible due to i/o reactor design limitations in HttpCore. This makes me very, very doubtful.

@arturobernalg
Copy link
Member Author

I didn't test it with a real case. Didn't have the way.

@garydgregory
Copy link
Member

I didn't test it with a real case. Didn't have the way.

Can't something be set up with Docker and then driven with a Docker Maven plugin?

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

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants