org.apache.commons.ssl
Class SSLServer
java.lang.Object
javax.net.ServerSocketFactory
javax.net.ssl.SSLServerSocketFactory
org.apache.commons.ssl.SSLServer
public class SSLServer
- extends javax.net.ssl.SSLServerSocketFactory
- Since:
- May 1, 2006
- Author:
- Credit Union Central of British Columbia, www.cucbc.com, juliusdavies@cucbc.com
Field Summary |
protected SSL |
ssl
|
Methods inherited from class javax.net.ssl.SSLServerSocketFactory |
getDefault |
Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
ssl
protected final SSL ssl
SSLServer
public SSLServer()
throws java.security.GeneralSecurityException,
java.io.IOException
- Throws:
java.security.GeneralSecurityException
java.io.IOException
useTomcatSSLMaterial
public boolean useTomcatSSLMaterial()
throws java.security.GeneralSecurityException,
java.io.IOException
- Tries to extract the TrustMaterial and KeyMaterial being used by a Tomcat
SSL server (usually on 8443) by analyzing Tomcat's "server.xml" file. If
the extraction is successful, the TrustMaterial and KeyMaterial are
applied to this SSLServer.
- Returns:
- true if the operation was successful.
- Throws:
java.security.GeneralSecurityException
- setKeyMaterial() failed
java.io.IOException
- setKeyMaterial() failed
useDefaultKeyMaterial
private boolean useDefaultKeyMaterial()
throws java.security.GeneralSecurityException,
java.io.IOException
- Throws:
java.security.GeneralSecurityException
java.io.IOException
setDnsOverride
public void setDnsOverride(java.util.Map m)
addTrustMaterial
public void addTrustMaterial(TrustChain trustChain)
throws java.security.NoSuchAlgorithmException,
java.security.KeyStoreException,
java.security.KeyManagementException,
java.io.IOException,
java.security.cert.CertificateException
- Throws:
java.security.NoSuchAlgorithmException
java.security.KeyStoreException
java.security.KeyManagementException
java.io.IOException
java.security.cert.CertificateException
setTrustMaterial
public void setTrustMaterial(TrustChain trustChain)
throws java.security.NoSuchAlgorithmException,
java.security.KeyStoreException,
java.security.KeyManagementException,
java.io.IOException,
java.security.cert.CertificateException
- Throws:
java.security.NoSuchAlgorithmException
java.security.KeyStoreException
java.security.KeyManagementException
java.io.IOException
java.security.cert.CertificateException
setKeyMaterial
public void setKeyMaterial(KeyMaterial keyMaterial)
throws java.security.NoSuchAlgorithmException,
java.security.KeyStoreException,
java.security.KeyManagementException,
java.io.IOException,
java.security.cert.CertificateException
- Throws:
java.security.NoSuchAlgorithmException
java.security.KeyStoreException
java.security.KeyManagementException
java.io.IOException
java.security.cert.CertificateException
setCheckCRL
public void setCheckCRL(boolean b)
setCheckExpiry
public void setCheckExpiry(boolean b)
setCheckHostname
public void setCheckHostname(boolean b)
setConnectTimeout
public void setConnectTimeout(int i)
setDefaultProtocol
public void setDefaultProtocol(java.lang.String s)
useDefaultJavaCiphers
public void useDefaultJavaCiphers()
useStrongCiphers
public void useStrongCiphers()
setEnabledCiphers
public void setEnabledCiphers(java.lang.String[] ciphers)
setEnabledProtocols
public void setEnabledProtocols(java.lang.String[] protocols)
setHostnameVerifier
public void setHostnameVerifier(HostnameVerifier verifier)
setSoTimeout
public void setSoTimeout(int soTimeout)
setSSLWrapperFactory
public void setSSLWrapperFactory(SSLWrapperFactory wf)
setNeedClientAuth
public void setNeedClientAuth(boolean b)
setWantClientAuth
public void setWantClientAuth(boolean b)
setUseClientMode
public void setUseClientMode(boolean b)
getAssociatedCertificateChain
public java.security.cert.X509Certificate[] getAssociatedCertificateChain()
getCheckCRL
public boolean getCheckCRL()
getCheckExpiry
public boolean getCheckExpiry()
getCheckHostname
public boolean getCheckHostname()
getConnectTimeout
public int getConnectTimeout()
getDefaultProtocol
public java.lang.String getDefaultProtocol()
getEnabledCiphers
public java.lang.String[] getEnabledCiphers()
getEnabledProtocols
public java.lang.String[] getEnabledProtocols()
getHostnameVerifier
public HostnameVerifier getHostnameVerifier()
getSoTimeout
public int getSoTimeout()
getSSLWrapperFactory
public SSLWrapperFactory getSSLWrapperFactory()
getNeedClientAuth
public boolean getNeedClientAuth()
getWantClientAuth
public boolean getWantClientAuth()
getUseClientMode
public boolean getUseClientMode()
getSSLContext
public javax.net.ssl.SSLContext getSSLContext()
throws java.security.GeneralSecurityException,
java.io.IOException
- Throws:
java.security.GeneralSecurityException
java.io.IOException
getTrustChain
public TrustChain getTrustChain()
getCurrentClientChain
public java.security.cert.X509Certificate[] getCurrentClientChain()
getDefaultCipherSuites
public java.lang.String[] getDefaultCipherSuites()
- Specified by:
getDefaultCipherSuites
in class javax.net.ssl.SSLServerSocketFactory
getSupportedCipherSuites
public java.lang.String[] getSupportedCipherSuites()
- Specified by:
getSupportedCipherSuites
in class javax.net.ssl.SSLServerSocketFactory
createServerSocket
public java.net.ServerSocket createServerSocket()
throws java.io.IOException
- Overrides:
createServerSocket
in class javax.net.ServerSocketFactory
- Throws:
java.io.IOException
createServerSocket
public java.net.ServerSocket createServerSocket(int port)
throws java.io.IOException
- Specified by:
createServerSocket
in class javax.net.ServerSocketFactory
- Throws:
java.io.IOException
createServerSocket
public java.net.ServerSocket createServerSocket(int port,
int backlog)
throws java.io.IOException
- Specified by:
createServerSocket
in class javax.net.ServerSocketFactory
- Throws:
java.io.IOException
createServerSocket
public java.net.ServerSocket createServerSocket(int port,
int backlog,
java.net.InetAddress localHost)
throws java.io.IOException
- Attempts to get a new socket connection to the given host within the
given time limit.
- Specified by:
createServerSocket
in class javax.net.ServerSocketFactory
- Parameters:
localHost
- the local host name/IP to bind against (null == ANY)port
- the port to listen onbacklog
- number of connections allowed to queue up for accept().
- Returns:
- SSLServerSocket a new server socket
- Throws:
java.io.IOException
- if an I/O error occurs while creating thesocket