ssl: parse SNI in received client hello records
ssl: Add simple benchmarks
added SNI decode test to SSL handshake suite
ssl: Bench use two nodes
Merge branch 'dnet/parse_sni' into maint

* dnet/parse_sni:
  added SNI decode test to SSL handshake suite
  ssl: parse SNI in received client hello records

OTP-12048
Merge branch 'maint'
Merge branch 'dgud/ssl/simple-bench'

* dgud/ssl/simple-bench:
  ssl: Bench use two nodes
  ssl: Add simple benchmarks
ssl: Correct handling of certificate_types in Certificate Requests

FROM TLS 1.2 RFC:
   The interaction of the certificate_types and
   supported_signature_algorithms fields is somewhat complicated.
   certificate_types has been present in TLS since SSLv3, but was
   somewhat underspecified.  Much of its functionality is superseded by
   supported_signature_algorithms.  The following rules apply:

   -  Any certificates provided by the client MUST be signed using a
      hash/signature algorithm pair found in
      supported_signature_algorithms.

   -  The end-entity certificate provided by the client MUST contain a
      key that is compatible with certificate_types.  If the key is a
      signature key, it MUST be usable with some hash/signature
      algorithm pair in supported_signature_algorithms.

   -  For historical reasons, the names of some client certificate types
      include the algorithm used to sign the certificate.  For example,
      in earlier versions of TLS, rsa_fixed_dh meant a certificate
      signed with RSA and containing a static DH key.  In TLS 1.2, this
      functionality has been obsoleted by the
      supported_signature_algorithms, and the certificate type no longer
      restricts the algorithm used to sign the certificate.  For
      example, if the server sends dss_fixed_dh certificate type and
      {{sha1, dsa}, {sha1, rsa}} signature types, the client MAY reply
      with a certificate containing a static DH key, signed with RSA-
      SHA1.
ssl: Test ECDSA and improve test suite maintainability

Use generated certs instead of hard coded
ssl: Make sure the correct ROOT-cert is used

When dealing with older certificates that does not indicate its signer
with a certificate extension, we must search the database for the issure.
Finding the issuer is not enough, we need to verify the signature
with the key in the found issuer cert.
Merge remote-tracking branch 'upstream/maint'
ssl: Fix broken contract
ssl: Fix boolean expression
Merge remote-tracking branch 'upstream/maint'
Fix misspellings of 'another'
Merge branch 'maint'
ssl: implement AES128-GCM suites
ssl: add PSK-GCM suites
ssl: fix OpenSSL name filter in ssl tests

The OpenSSL name filter would fail for cipher suites that do not
have an offcial OpenSSL name yet.
ssl: add draft-agl-tls-chacha20poly1305-04 Chacha20/Poly1305 Suites