RFR: 8346017: Socket.connect specified to throw UHE for unresolved address is problematic for SOCKS V5 proxy

Alan Bateman alanb at openjdk.org
Thu Dec 12 18:37:43 UTC 2024


On Thu, 12 Dec 2024 18:26:04 GMT, Volkan Yazıcı <duke at openjdk.org> wrote:

> [JDK-8343791](https://bugs.openjdk.org/browse/JDK-8343791) modified `Socket::connect` to throw `UHE` on unresolved addresses – merged in #22160. As reported in [JDK-8346017](https://bugs.openjdk.org/browse/JDK-8346017), this renders `connect()` unusable when there is a (SOCKS) proxy in play, where calling `connect()` using unresolved addresses is a valid operation. This PR
> 
> 1. Reverts the earlier `Socket::connect` change
> 2. Updates tests accordingly
> 3. Enhances tests with proxied socket inputs
> 
> These changes require CSR and RN tickets. I will implement them once we agree on a solution here.

The method description of both Socket.connect methods will require adjustment to remove "If the endpoint is an unresolved  InetSocketAddress". I think better to leave the @throws UHE but change the description to "If the connection could not be established because the socket address is unresolved".

-------------

PR Comment: https://git.openjdk.org/jdk/pull/22719#issuecomment-2539744878


More information about the net-dev mailing list