Package javax.net.ssl

Class SSLServerSocket

    • Constructor Detail

      • SSLServerSocket

        protected SSLServerSocket()
                           throws IOException
        Only to be used by subclasses.

        Creates a TCP server socket with the default authentication context.

        Throws:
        IOException - if creating the socket fails.
      • SSLServerSocket

        protected SSLServerSocket​(int port)
                           throws IOException
        Only to be used by subclasses.

        Creates a TCP server socket on the specified port with the default authentication context. The connection's default backlog size is 50 connections.

        Parameters:
        port - the port to listen on.
        Throws:
        IOException - if creating the socket fails.
      • SSLServerSocket

        protected SSLServerSocket​(int port,
                                  int backlog)
                           throws IOException
        Only to be used by subclasses.

        Creates a TCP server socket on the specified port using the specified backlog and the default authentication context.

        Parameters:
        port - the port to listen on.
        backlog - the number of pending connections to queue.
        Throws:
        IOException - if creating the socket fails.
      • SSLServerSocket

        protected SSLServerSocket​(int port,
                                  int backlog,
                                  InetAddress address)
                           throws IOException
        Only to be used by subclasses.

        Creates a TCP server socket on the specified port, using the specified backlog, listening on the specified interface, and using the default authentication context.

        Parameters:
        port - the port the listen on.
        backlog - the number of pending connections to queue.
        address - the address of the interface to accept connections on.
        Throws:
        IOException - if creating the socket fails.
    • Method Detail

      • getEnabledCipherSuites

        public abstract String[] getEnabledCipherSuites()
        Returns the names of the enabled cipher suites to be used for new connections.
        Returns:
        the names of the enabled cipher suites to be used for new connections.
      • setEnabledCipherSuites

        public abstract void setEnabledCipherSuites​(String[] suites)
        Sets the names of the cipher suites to be enabled for new connections. Only cipher suites returned by getSupportedCipherSuites() are allowed.
        Parameters:
        suites - the names of the to be enabled cipher suites.
        Throws:
        IllegalArgumentException - if one of the cipher suite names is not supported.
      • getSupportedCipherSuites

        public abstract String[] getSupportedCipherSuites()
        Returns the names of the supported cipher suites.
        Returns:
        the names of the supported cipher suites.
      • getSupportedProtocols

        public abstract String[] getSupportedProtocols()
        Returns the names of the supported protocols.
        Returns:
        the names of the supported protocols.
      • getEnabledProtocols

        public abstract String[] getEnabledProtocols()
        Returns the names of the enabled protocols to be used for new connections.
        Returns:
        the names of the enabled protocols to be used for new connections.
      • setEnabledProtocols

        public abstract void setEnabledProtocols​(String[] protocols)
        Sets the names of the protocols to be enabled for new connections. Only protocols returned by getSupportedProtocols() are allowed.
        Parameters:
        protocols - the names of the to be enabled protocols.
        Throws:
        IllegalArgumentException - if one of the protocols is not supported.
      • setNeedClientAuth

        public abstract void setNeedClientAuth​(boolean need)
        Sets whether server-mode connections will be configured to require client authentication. The client authentication is one of the following:
        • authentication required
        • authentication requested
        • no authentication needed
        This method overrides the setting of setWantClientAuth(boolean).
        Parameters:
        need - true if client authentication is required, false if no authentication is needed.
      • getNeedClientAuth

        public abstract boolean getNeedClientAuth()
        Returns whether server-mode connections will be configured to require client authentication.
        Returns:
        true if client authentication is required, false if no client authentication is needed.
      • setWantClientAuth

        public abstract void setWantClientAuth​(boolean want)
        Sets whether server-mode connections will be configured to request client authentication. The client authentication is one of the following:
        • authentication required
        • authentication requested
        • no authentication needed
        This method overrides the setting of setNeedClientAuth(boolean).
        Parameters:
        want - true if client authentication should be requested, false if no authentication is needed.
      • getWantClientAuth

        public abstract boolean getWantClientAuth()
        Returns whether server-mode connections will be configured to request client authentication.
        Returns:
        true is client authentication will be requested, false if no client authentication is needed.
      • setUseClientMode

        public abstract void setUseClientMode​(boolean mode)
        Sets whether new connections should act in client mode when handshaking.
        Parameters:
        mode - true if new connections should act in client mode, false if not.
      • getUseClientMode

        public abstract boolean getUseClientMode()
        Returns whether new connection will act in client mode when handshaking.
        Returns:
        true if new connections will act in client mode when handshaking, false if not.
      • setEnableSessionCreation

        public abstract void setEnableSessionCreation​(boolean flag)
        Sets whether new SSL sessions may be established for new connections.
        Parameters:
        flag - true if new SSL sessions may be established, false if existing SSL sessions must be reused.
      • getEnableSessionCreation

        public abstract boolean getEnableSessionCreation()
        Returns whether new SSL sessions may be established for new connections.
        Returns:
        true if new SSL sessions may be established, false if existing SSL sessions must be reused.