Class EnhancingX509ExtendedTrustManager

java.lang.Object
javax.net.ssl.X509ExtendedTrustManager
io.netty.handler.ssl.EnhancingX509ExtendedTrustManager
All Implemented Interfaces:
javax.net.ssl.TrustManager, javax.net.ssl.X509TrustManager

final class EnhancingX509ExtendedTrustManager extends javax.net.ssl.X509ExtendedTrustManager
Wraps an existing X509ExtendedTrustManager and enhances the CertificateException that is thrown because of hostname validation.
  • Field Summary

    Fields
    Modifier and Type
    Field
    Description
    (package private) static final int
     
    (package private) static final int
     
    (package private) static final int
     
    private static final java.lang.String
     
    private final javax.net.ssl.X509ExtendedTrustManager
     
  • Constructor Summary

    Constructors
    Constructor
    Description
    EnhancingX509ExtendedTrustManager(javax.net.ssl.X509TrustManager wrapped)
     
  • Method Summary

    Modifier and Type
    Method
    Description
    void
    checkClientTrusted(java.security.cert.X509Certificate[] chain, java.lang.String authType)
     
    void
    checkClientTrusted(java.security.cert.X509Certificate[] chain, java.lang.String authType, java.net.Socket socket)
     
    void
    checkClientTrusted(java.security.cert.X509Certificate[] chain, java.lang.String authType, javax.net.ssl.SSLEngine engine)
     
    void
    checkServerTrusted(java.security.cert.X509Certificate[] chain, java.lang.String authType)
     
    void
    checkServerTrusted(java.security.cert.X509Certificate[] chain, java.lang.String authType, java.net.Socket socket)
     
    void
    checkServerTrusted(java.security.cert.X509Certificate[] chain, java.lang.String authType, javax.net.ssl.SSLEngine engine)
     
    java.security.cert.X509Certificate[]
     
    private static java.lang.String
    getCommonName(java.security.cert.X509Certificate cert)
     
    private static java.lang.String
    getSNIHostName(javax.net.ssl.SSLSession session)
     
    private static void
    throwEnhancedCertificateException(java.security.cert.CertificateException e, java.security.cert.X509Certificate[] chain, javax.net.ssl.SSLSession session)
     

    Methods inherited from class java.lang.Object

    clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
  • Field Details

  • Constructor Details

    • EnhancingX509ExtendedTrustManager

      EnhancingX509ExtendedTrustManager(javax.net.ssl.X509TrustManager wrapped)
  • Method Details

    • checkClientTrusted

      public void checkClientTrusted(java.security.cert.X509Certificate[] chain, java.lang.String authType, java.net.Socket socket) throws java.security.cert.CertificateException
      Specified by:
      checkClientTrusted in class javax.net.ssl.X509ExtendedTrustManager
      Throws:
      java.security.cert.CertificateException
    • checkServerTrusted

      public void checkServerTrusted(java.security.cert.X509Certificate[] chain, java.lang.String authType, java.net.Socket socket) throws java.security.cert.CertificateException
      Specified by:
      checkServerTrusted in class javax.net.ssl.X509ExtendedTrustManager
      Throws:
      java.security.cert.CertificateException
    • checkClientTrusted

      public void checkClientTrusted(java.security.cert.X509Certificate[] chain, java.lang.String authType, javax.net.ssl.SSLEngine engine) throws java.security.cert.CertificateException
      Specified by:
      checkClientTrusted in class javax.net.ssl.X509ExtendedTrustManager
      Throws:
      java.security.cert.CertificateException
    • checkServerTrusted

      public void checkServerTrusted(java.security.cert.X509Certificate[] chain, java.lang.String authType, javax.net.ssl.SSLEngine engine) throws java.security.cert.CertificateException
      Specified by:
      checkServerTrusted in class javax.net.ssl.X509ExtendedTrustManager
      Throws:
      java.security.cert.CertificateException
    • checkClientTrusted

      public void checkClientTrusted(java.security.cert.X509Certificate[] chain, java.lang.String authType) throws java.security.cert.CertificateException
      Throws:
      java.security.cert.CertificateException
    • checkServerTrusted

      public void checkServerTrusted(java.security.cert.X509Certificate[] chain, java.lang.String authType) throws java.security.cert.CertificateException
      Throws:
      java.security.cert.CertificateException
    • getAcceptedIssuers

      public java.security.cert.X509Certificate[] getAcceptedIssuers()
    • throwEnhancedCertificateException

      private static void throwEnhancedCertificateException(java.security.cert.CertificateException e, java.security.cert.X509Certificate[] chain, javax.net.ssl.SSLSession session) throws java.security.cert.CertificateException
      Throws:
      java.security.cert.CertificateException
    • getSNIHostName

      private static java.lang.String getSNIHostName(javax.net.ssl.SSLSession session)
    • getCommonName

      private static java.lang.String getCommonName(java.security.cert.X509Certificate cert)