RFR: 8349910: Implement JEP 517: HTTP/3 for the HTTP Client API [v13]

Artur Barashev abarashev at openjdk.org
Wed Aug 20 15:13:02 UTC 2025


On Wed, 20 Aug 2025 13:55:38 GMT, Daniel Fuchs <dfuchs at openjdk.org> wrote:

>> Hi,
>> 
>> Please find here a PR for the implementation of [JEP 517: HTTP/3 for the HTTP Client API](https://openjdk.org/jeps/517).
>> 
>> The CSR can be viewed at [JDK-8350588: Implement JEP 517: HTTP/3 for the HTTP Client API](https://bugs.openjdk.org/browse/JDK-8350588)
>> 
>> This JEP proposes to enhance the HttpClient implementation to support HTTP/3.
>> It adds a non-exposed / non-exported internal implementation of the QUIC protocol based on DatagramChannel and the SunJSSE SSLContext provider.
>
> Daniel Fuchs has updated the pull request with a new target base due to a merge or a rebase. The pull request now contains 616 commits:
> 
>  - merge latest changes from master branch
>  - merge latest http3 changes
>  - Hide internal classes
>  - quic: Do not decrypt 1-RTT packets until the TLS handshake is complete
>  - quic: remove unused fields
>  - Make final fields static
>  - Remove unused variable
>  - merge latest changes from master branch
>  - http3: update summary in H3SimpleTest.java
>  - http3: review feedback - use copy() instead of thenApply(Function.identity())
>  - ... and 606 more: https://git.openjdk.org/jdk/compare/908f3c96...e0aa68c9

src/java.base/share/classes/sun/security/ssl/X509KeyManagerImpl.java line 153:

> 151:         // certificate according to requested SNI extension.
> 152:         //
> 153:         // It is not a really HTTPS endpoint identification.

Please restore the above comment block indenting.

src/java.base/share/classes/sun/security/ssl/X509KeyManagerImpl.java line 181:

> 179:         // certificate according to requested SNI extension.
> 180:         //
> 181:         // It is not a really HTTPS endpoint identification.

Same as above, block indenting.

src/java.base/share/classes/sun/security/ssl/X509KeyManagerImpl.java line 199:

> 197: 
> 198:     // Gets algorithm constraints of QUIC TLS engine.
> 199:     private AlgorithmConstraints getAlgorithmConstraints(QuicTLSEngineImpl engine) {

This method should be moved to `X509KeyManagerCertChecking` as `protected`.

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

PR Review Comment: https://git.openjdk.org/jdk/pull/24751#discussion_r2288487671
PR Review Comment: https://git.openjdk.org/jdk/pull/24751#discussion_r2288488397
PR Review Comment: https://git.openjdk.org/jdk/pull/24751#discussion_r2288491094


More information about the core-libs-dev mailing list