- java.lang.Object
-
- javax.net.ssl.X509ExtendedTrustManager
-
- org.snmp4j.transport.tls.TLSTMExtendedTrustManager
-
- All Implemented Interfaces:
javax.net.ssl.TrustManager,javax.net.ssl.X509TrustManager
public class TLSTMExtendedTrustManager extends javax.net.ssl.X509ExtendedTrustManagerTLSTM trust manager that implements the X509ExtendedTrustManager interface.- Since:
- 2.5.7
-
-
Field Summary
Fields Modifier and Type Field Description private static LogAdapterloggerprivate TlsTmSecurityCallback<java.security.cert.X509Certificate>securityCallbackprivate CounterSupporttlstmCountersprivate TransportStateReferencetmStateReference(package private) javax.net.ssl.X509TrustManagertrustManagerprivate booleanuseClientMode
-
Constructor Summary
Constructors Constructor Description TLSTMExtendedTrustManager(CounterSupport tlstmCounters, TlsTmSecurityCallback<java.security.cert.X509Certificate> securityCallback, javax.net.ssl.X509TrustManager trustManager, boolean useClientMode, TransportStateReference tmStateReference)
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description voidcheckClientTrusted(java.security.cert.X509Certificate[] x509Certificates, java.lang.String s)voidcheckClientTrusted(java.security.cert.X509Certificate[] x509Certificates, java.lang.String s, java.net.Socket socket)voidcheckClientTrusted(java.security.cert.X509Certificate[] x509Certificates, java.lang.String s, javax.net.ssl.SSLEngine sslEngine)private booleancheckClientTrustedIntern(java.security.cert.X509Certificate[] x509Certificates)voidcheckServerTrusted(java.security.cert.X509Certificate[] x509Certificates, java.lang.String s)voidcheckServerTrusted(java.security.cert.X509Certificate[] x509Certificates, java.lang.String s, java.net.Socket socket)voidcheckServerTrusted(java.security.cert.X509Certificate[] x509Certificates, java.lang.String s, javax.net.ssl.SSLEngine sslEngine)private booleancheckServerTrustedByFingerprint(java.security.cert.X509Certificate[] x509Certificates)private booleancheckServerTrustedBySubjectDN(java.security.cert.X509Certificate[] x509Certificates)RFC 6353 page 47, snmpTlstmAddrServerIdentityjava.security.cert.X509Certificate[]getAcceptedIssuers()static java.security.cert.X509Certificate[]getAcceptedIssuers(javax.net.ssl.X509TrustManager trustManager, TlsTmSecurityCallback<java.security.cert.X509Certificate> securityCallback)Gets the acceptedX509Certificates from the givenX509TrustManagerand security callback.private booleanisMatchingFingerprint(java.security.cert.X509Certificate[] x509Certificates, OctetString fingerprint, boolean useClientMode)private voidpostCheckServerTrusted(java.security.cert.X509Certificate[] x509Certificates)
-
-
-
Field Detail
-
logger
private static final LogAdapter logger
-
trustManager
javax.net.ssl.X509TrustManager trustManager
-
useClientMode
private final boolean useClientMode
-
tmStateReference
private final TransportStateReference tmStateReference
-
tlstmCounters
private final CounterSupport tlstmCounters
-
securityCallback
private final TlsTmSecurityCallback<java.security.cert.X509Certificate> securityCallback
-
-
Constructor Detail
-
TLSTMExtendedTrustManager
public TLSTMExtendedTrustManager(CounterSupport tlstmCounters, TlsTmSecurityCallback<java.security.cert.X509Certificate> securityCallback, javax.net.ssl.X509TrustManager trustManager, boolean useClientMode, TransportStateReference tmStateReference)
-
-
Method Detail
-
checkClientTrusted
public void checkClientTrusted(java.security.cert.X509Certificate[] x509Certificates, java.lang.String s) throws java.security.cert.CertificateException- Throws:
java.security.cert.CertificateException
-
checkServerTrusted
public void checkServerTrusted(java.security.cert.X509Certificate[] x509Certificates, java.lang.String s) throws java.security.cert.CertificateException- Throws:
java.security.cert.CertificateException
-
isMatchingFingerprint
private boolean isMatchingFingerprint(java.security.cert.X509Certificate[] x509Certificates, OctetString fingerprint, boolean useClientMode) throws java.security.cert.CertificateException- Throws:
java.security.cert.CertificateException
-
getAcceptedIssuers
public java.security.cert.X509Certificate[] getAcceptedIssuers()
-
getAcceptedIssuers
public static java.security.cert.X509Certificate[] getAcceptedIssuers(javax.net.ssl.X509TrustManager trustManager, TlsTmSecurityCallback<java.security.cert.X509Certificate> securityCallback)Gets the acceptedX509Certificates from the givenX509TrustManagerand security callback.- Parameters:
trustManager- a X509TrustManager providing the accepted issuers.securityCallback- a security callback that is ask to accept any returned issuer.- Returns:
- a probably empty or
nullarray of accepted issuers. - Since:
- 3.6.0
-
checkClientTrusted
public void checkClientTrusted(java.security.cert.X509Certificate[] x509Certificates, java.lang.String s, java.net.Socket socket) throws java.security.cert.CertificateException- Specified by:
checkClientTrustedin classjavax.net.ssl.X509ExtendedTrustManager- Throws:
java.security.cert.CertificateException
-
checkServerTrusted
public void checkServerTrusted(java.security.cert.X509Certificate[] x509Certificates, java.lang.String s, java.net.Socket socket) throws java.security.cert.CertificateException- Specified by:
checkServerTrustedin classjavax.net.ssl.X509ExtendedTrustManager- Throws:
java.security.cert.CertificateException
-
checkServerTrustedBySubjectDN
private boolean checkServerTrustedBySubjectDN(java.security.cert.X509Certificate[] x509Certificates) throws java.security.cert.CertificateExceptionRFC 6353 page 47, snmpTlstmAddrServerIdentity- Throws:
java.security.cert.CertificateException
-
postCheckServerTrusted
private void postCheckServerTrusted(java.security.cert.X509Certificate[] x509Certificates) throws java.security.cert.CertificateException- Throws:
java.security.cert.CertificateException
-
checkServerTrustedByFingerprint
private boolean checkServerTrustedByFingerprint(java.security.cert.X509Certificate[] x509Certificates) throws java.security.cert.CertificateException- Throws:
java.security.cert.CertificateException
-
checkClientTrusted
public void checkClientTrusted(java.security.cert.X509Certificate[] x509Certificates, java.lang.String s, javax.net.ssl.SSLEngine sslEngine) throws java.security.cert.CertificateException- Specified by:
checkClientTrustedin classjavax.net.ssl.X509ExtendedTrustManager- Throws:
java.security.cert.CertificateException
-
checkClientTrustedIntern
private boolean checkClientTrustedIntern(java.security.cert.X509Certificate[] x509Certificates) throws java.security.cert.CertificateException- Throws:
java.security.cert.CertificateException
-
checkServerTrusted
public void checkServerTrusted(java.security.cert.X509Certificate[] x509Certificates, java.lang.String s, javax.net.ssl.SSLEngine sslEngine) throws java.security.cert.CertificateException- Specified by:
checkServerTrustedin classjavax.net.ssl.X509ExtendedTrustManager- Throws:
java.security.cert.CertificateException
-
-