During TLS handshake, hundreds of constraints are evaluated to determine which 
cipher suites are usable. Most of the evaluations are performed using 
`HandshakeContext#algorithmConstraints` object. By default that object contains 
a `SSLAlgorithmConstraints` instance wrapping another `SSLAlgorithmConstraints` 
instance. As a result the constraints defined in `SSLAlgorithmConstraints` are 
evaluated twice.

This PR improves the default case; if the user-specified constraints are left 
at defaults, we use a single `SSLAlgorithmConstraints` instance, and avoid 
duplicate checks.

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

Commit messages:
 - Fix file attributes
 - Fix file attributes
 - Avoid wrapping default constraints
 - Add handshake bench

Changes: https://git.openjdk.java.net/jdk/pull/8199/files
 Webrev: https://webrevs.openjdk.java.net/?repo=jdk&pr=8199&range=00
  Issue: https://bugs.openjdk.java.net/browse/JDK-8284694
  Stats: 337 lines in 4 files changed: 336 ins; 0 del; 1 mod
  Patch: https://git.openjdk.java.net/jdk/pull/8199.diff
  Fetch: git fetch https://git.openjdk.java.net/jdk pull/8199/head:pull/8199

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

Reply via email to