On Thu, 19 Oct 2023 12:10:02 GMT, Daniel Jeliński <[email protected]> wrote:

> This patch fixes the encoding of IPv6 addresses in the URI provided to 
> ProxySelector.
> 
> The original code percent-encoded the square brackets added around the IPv6 
> addresses, producing URIs that could not be parsed correctly.
> 
> The proposed code does not percent-encode the IPv6 addresses at all.
> 
> Added a test to verify that different forms of addresses are processed 
> correctly. The test verifies the handling of IPv4 addresses, IPv6 without 
> scope, IPv6 with numeric scope, IPv6 with textual scope (only if present on 
> the machine running tests), hostnames and FQDNs
> 
> Tier1-3 tests passed.

ProxySelector.getDefault may return null if someone explicitly calls 
ProxySelector.setDefault(null); otherwise it's initialized to an instance of 
DefaultProxySelector 
[here](https://github.com/openjdk/jdk/blob/4812cabaa489e99481facddce69686a9fee29c44/src/java.base/share/classes/java/net/ProxySelector.java#L73-L78).

The modified code is used for the common case. DefaultProxySelector reads 
system proxy settings every time.

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

PR Comment: https://git.openjdk.org/jdk/pull/16265#issuecomment-1772269000

Reply via email to