On Fri, 3 Dec 2021 17:28:25 GMT, Daniel Fuchs <dfu...@openjdk.org> wrote:

>> This change proposes to implement the enhancement noted in 
>> https://bugs.openjdk.java.net/browse/JDK-8209137.
>> 
>> The change introduces a new API to allow applications to build a 
>> `java.net.http.HTTPClient` configured with a specific local address that 
>> will be used while creating `Socket`(s) for connections.
>
> test/jdk/java/net/httpclient/HttpClientLocalAddrTest.java line 74:
> 
>> 72: 
>> 73:     @BeforeClass
>> 74:     public static void beforeClass() throws Exception {
> 
> For HttpClient tests - unless they are specific to HTTP/1.1 I'd recommend 
> making the test class implement HttpServerAdapters and test will all versions 
> of the protocol (http, https, http/2, and https/2).
> An example can be found in e.g. 
> `test/jdk/java/net/httpclient/CancelRequestTest.java`

Also it's better if the test is IP version agnostic.

> test/jdk/java/net/httpclient/HttpClientLocalAddrTest.java line 205:
> 
>> 203:             // anyAddress
>> 204:             if (Boolean.getBoolean("java.net.preferIPv6Addresses")) {
>> 205:                 // ipv6 wildcard
> 
> ::1 is the ipv6 loopback - not the ipv6 wildcard

You may encounter some issues when testing with https and IPv6 - Michael is 
working on a fix to add the loopback addresses as SNI aliases to the 
SimpleSSLContext certificate:
https://bugs.openjdk.java.net/browse/JDK-8278312

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

PR: https://git.openjdk.java.net/jdk/pull/6690

Reply via email to