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

Alan Bateman alanb at openjdk.org
Thu Dec 12 19:13:37 UTC 2024


On Thu, 12 Dec 2024 18:54:16 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.
>
> Volkan Yazıcı has updated the pull request incrementally with one additional commit since the last revision:
> 
>   Fix `Socket::connect` javadoc

The update to Socket looks okay, thanks.

ConnectFailTest is a test for connect failing. I'm tempted we create a new test for SOCKS and not modify ConnectFailTest. With SOCK then the connect may succeed with an unresolved address so I think different to the direct case. Daniel, do you agree on this?

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

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


More information about the net-dev mailing list