[8u] TLSv1.3 RFR: 8245470: Fix JDK8 compatibility issues

Martin Balao mbalao at redhat.com
Tue Jun 2 15:56:26 UTC 2020


Hi,

Step 3 (8245470) is a series of assorted changes needed to adapt the
newly imported JDK 11.0.7 code to JDK-8. Many of the issues fixed by
Step 3 were found at compilation time. To name a few examples, there are
changes needed because some APIs -such as List::of- used by 11.0.7 code
are not available in JDK-8. We required idioms to consistently replace
these APIs. Other changes are because packages are located in different
directories in JDK-8. In example, sun.security.util.HexDumpEncoder is
sun.misc.HexDumpEncoder. Then we have changes needed to adapt the code
to the JDK-8 logging system and so on.

Note: it's still not the goal of Step 3 to fix all compilation errors.
That will come in a later step.

Note 2: previous comments that are part of this review can be found here
[1] [2].

This is the list of files affected by 8245470 (Step 3):

 * classes/sun/security/ssl/CertSignAlgsExtension.java (modified)
  * Ok
 * classes/sun/security/ssl/CertStatusExtension.java (modified)
  * Ok
 * classes/sun/security/ssl/CertificateVerify.java (modified)
  * Ok
 * classes/sun/security/ssl/CookieExtension.java (modified)
  * Ok
 * classes/sun/security/ssl/DHClientKeyExchange.java (modified)
  * Ok
 * classes/sun/security/ssl/DHServerKeyExchange.java (modified)
  * Ok
 * classes/sun/security/ssl/ECDHClientKeyExchange.java (modified)
  * Ok
 * classes/sun/security/ssl/ECDHServerKeyExchange.java (modified)
  * Ok
 * classes/sun/security/ssl/Finished.java (modified)
  * Ok
 * classes/sun/security/ssl/HandshakeContext.java (modified)
  * Ok
 * classes/sun/security/ssl/HandshakeHash.java (modified)
  * Ok - No changes in v2
 * classes/sun/security/ssl/JsseJce.java (modified)
  * Ok - No changes in v2
 * classes/sun/security/ssl/KeyShareExtension.java (modified)
  * Ok
 * classes/sun/security/ssl/PredefinedDHParameterSpecs.java (modified)
  * Ok
 * classes/sun/security/ssl/RSAClientKeyExchange.java (modified)
  * Ok
 * classes/sun/security/ssl/RSAServerKeyExchange.java (modified)
  * Ok
 * classes/sun/security/ssl/RandomCookie.java (modified)
  * Ok. No vectorization optimizations but okay for now.
 * classes/sun/security/ssl/RenegoInfoExtension.java (modified)
  * Ok. See comment in RandomCookie.java
 * classes/sun/security/ssl/SSLCipher.java (modified)
  * Ok
 * classes/sun/security/ssl/SSLEngineInputRecord.java (modified)
  * Ok
 * classes/sun/security/ssl/SSLExtension.java (modified)
  * Ok
 * classes/sun/security/ssl/SSLExtensions.java (modified)
  * Ok
 * classes/sun/security/ssl/SSLLogger.java (modified)
  * Ok. Backported to JDK-8 logging system.
 * classes/sun/security/ssl/SSLSessionContextImpl.java (modified)
  * Ok
 * classes/sun/security/ssl/SSLSocketImpl.java (modified)
  * Ok
 * classes/sun/security/ssl/SSLSocketInputRecord.java (modified)
  * Ok
 * classes/sun/security/ssl/SignatureAlgorithmsExtension.java (modified)
  * Ok
 * classes/sun/security/ssl/TransportContext.java (modified)
  * Ok
 * classes/sun/security/ssl/Utilities.java (modified)
  * Ok
 * classes/sun/security/ssl/X509TrustManagerImpl.java (modified)
  * Ok. Not modified in v2.
 * classes/java/security/MessageDigest.java (modified)
  * Ok
 * classes/sun/security/pkcs11/P11Digest.java (modified)
  * Ok
 * classes/sun/security/ssl/BaseSSLSocketImpl.java (modified)
  * Ok

With that said, Step 3 (8245470) v2 looks good to me. Please hold on the
push until we review-approve and maintainer-approve the whole series.

Thanks,
Martin.-

--
[1] - https://mail.openjdk.java.net/pipermail/jdk8u-dev/2020-May/011831.html
[2] -
https://mail.openjdk.java.net/pipermail/jdk8u-dev/2020-June/011843.html



More information about the jdk8u-dev mailing list