javax.net.ssl

Class SSLServerSocket


public abstract class SSLServerSocket
extends ServerSocket

A server socket that allows clients to connect via the SSL protocol.

Constructor Summary

SSLServerSocket()
SSLServerSocket(int port)
SSLServerSocket(int port, int backlog)
SSLServerSocket(int port, int backlog, InetAddress bindAddress)

Method Summary

abstract boolean
getEnableSessionCreation()
Returns whether or not sessions will be created, i.e., whether or not this server socket will allow SSL session resumption.
abstract String[]
getEnabledCipherSuites()
Returns the list of cihper suites that are currently enabled in this server socket.
abstract String[]
getEnabledProtocols()
Returns the list of enabled protocols, such as "SSLv3" and "TLSv1".
abstract boolean
getNeedClientAuth()
Returns whether or not this server socket will require clients to authenticate themselves, such as through a certificate.
abstract String[]
getSupportedCipherSuites()
Returns a list of cipher suites that this server socket supports.
abstract String[]
getSupportedProtocols()
Returns a list of SSL protocols supported by this server socket.
abstract boolean
getUseClientMode()
Returns whether or not sockets accepted by this server socket will do their handshake as the client-side.
abstract boolean
getWantClientAuth()
Returns whether or not this socket will ask for, but not require, that connecting clients authenticate themselves.
abstract void
setEnableSessionCreation(boolean enabled)
Sets whether or not sessions will be created.
abstract void
setEnabledCipherSuites(String[] suites)
Sets the list enabled cipher suites.
abstract void
setEnabledProtocols(String[] protocols)
Sets the list of enabled protocols.
abstract void
setNeedClientAuth(boolean needAuth)
Enabled or disables the requirement that clients authenticate themselves.
abstract void
setUseClientMode(boolean clientMode)
Sets whether or not sockets accepted by this server socket will be created in client mode.
abstract void
setWantClientAuth(boolean wantAuth)
Sets whether or not this server socket will want client authentication.

Constructor Details

SSLServerSocket

protected SSLServerSocket()
            throws IOException

SSLServerSocket

protected SSLServerSocket(int port)
            throws IOException

SSLServerSocket

protected SSLServerSocket(int port,
                          int backlog)
            throws IOException

SSLServerSocket

protected SSLServerSocket(int port,
                          int backlog,
                          InetAddress bindAddress)
            throws IOException

Method Details

getEnableSessionCreation

public abstract boolean getEnableSessionCreation()
Returns whether or not sessions will be created, i.e., whether or not this server socket will allow SSL session resumption.
Returns:
True if sessions will be created.

getEnabledCipherSuites

public abstract String[] getEnabledCipherSuites()
Returns the list of cihper suites that are currently enabled in this server socket. Sockets accepted by this server socket will only have these suites enabled.
Returns:
The enabled cipher suites.

getEnabledProtocols

public abstract String[] getEnabledProtocols()
Returns the list of enabled protocols, such as "SSLv3" and "TLSv1".
Returns:
The enabled protocols.

getNeedClientAuth

public abstract boolean getNeedClientAuth()
Returns whether or not this server socket will require clients to authenticate themselves, such as through a certificate.
Returns:
True if clients must authenticate themselves.

getSupportedCipherSuites

public abstract String[] getSupportedCipherSuites()
Returns a list of cipher suites that this server socket supports.
Returns:
The list of supported suites.

getSupportedProtocols

public abstract String[] getSupportedProtocols()
Returns a list of SSL protocols supported by this server socket.
Returns:
The list of supported protocols.

getUseClientMode

public abstract boolean getUseClientMode()
Returns whether or not sockets accepted by this server socket will do their handshake as the client-side. The default is false.
Returns:
True if client mode will be used.

getWantClientAuth

public abstract boolean getWantClientAuth()
Returns whether or not this socket will ask for, but not require, that connecting clients authenticate themselves. Clients that do not provide authentication they will still be allowed to connect.
Returns:
True if this server socket wants client authentication.

setEnableSessionCreation

public abstract void setEnableSessionCreation(boolean enabled)
Sets whether or not sessions will be created.
Parameters:
enabled - The new enabled value.

setEnabledCipherSuites

public abstract void setEnabledCipherSuites(String[] suites)
Sets the list enabled cipher suites.
Parameters:
suites - The cipher suites to enable.

setEnabledProtocols

public abstract void setEnabledProtocols(String[] protocols)
Sets the list of enabled protocols.
Parameters:
protocols - The list of protocols to enable.

setNeedClientAuth

public abstract void setNeedClientAuth(boolean needAuth)
Enabled or disables the requirement that clients authenticate themselves. When this is set to true, connections will be rejected if connecting clients do not provide proper authentication.
Parameters:
needAuth - The new need auth value.

setUseClientMode

public abstract void setUseClientMode(boolean clientMode)
Sets whether or not sockets accepted by this server socket will be created in client mode.
Parameters:
clientMode - The new client mode value.

setWantClientAuth

public abstract void setWantClientAuth(boolean wantAuth)
Sets whether or not this server socket will want client authentication.
Parameters:
wantAuth - The new want auth value.