Class OpenSslSessionContext

java.lang.Object
io.netty.handler.ssl.OpenSslSessionContext
All Implemented Interfaces:
javax.net.ssl.SSLSessionContext
Direct Known Subclasses:
OpenSslServerSessionContext, ReferenceCountedOpenSslClientContext.OpenSslClientSessionContext

public abstract class OpenSslSessionContext extends java.lang.Object implements javax.net.ssl.SSLSessionContext
OpenSSL specific SSLSessionContext implementation.
  • Field Details

  • Constructor Details

  • Method Details

    • useKeyManager

      final boolean useKeyManager()
    • setSessionCacheSize

      public void setSessionCacheSize(int size)
      Specified by:
      setSessionCacheSize in interface javax.net.ssl.SSLSessionContext
    • getSessionCacheSize

      public int getSessionCacheSize()
      Specified by:
      getSessionCacheSize in interface javax.net.ssl.SSLSessionContext
    • setSessionTimeout

      public void setSessionTimeout(int seconds)
      Specified by:
      setSessionTimeout in interface javax.net.ssl.SSLSessionContext
    • getSessionTimeout

      public int getSessionTimeout()
      Specified by:
      getSessionTimeout in interface javax.net.ssl.SSLSessionContext
    • getSession

      public javax.net.ssl.SSLSession getSession(byte[] bytes)
      Specified by:
      getSession in interface javax.net.ssl.SSLSessionContext
    • getIds

      public java.util.Enumeration<byte[]> getIds()
      Specified by:
      getIds in interface javax.net.ssl.SSLSessionContext
    • setTicketKeys

      @Deprecated public void setTicketKeys(byte[] keys)
      Sets the SSL session ticket keys of this context.
    • setTicketKeys

      public void setTicketKeys(OpenSslSessionTicketKey... keys)
      Sets the SSL session ticket keys of this context. Depending on the underlying native library you may omit the argument or pass an empty array and so let the native library handle the key generation and rotating for you. If this is supported by the underlying native library should be checked in this case. For example BoringSSL is known to support this.
    • setSessionCacheEnabled

      public void setSessionCacheEnabled(boolean enabled)
      Enable or disable caching of SSL sessions.
    • isSessionCacheEnabled

      public boolean isSessionCacheEnabled()
      Return true if caching of SSL sessions is enabled, false otherwise.
    • stats

      public OpenSslSessionStats stats()
      Returns the stats of this context.
    • removeFromCache

      final void removeFromCache(OpenSslSessionId id)
      Remove the given OpenSslInternalSession from the cache, and so not re-use it for new connections.
    • isInCache

      final boolean isInCache(OpenSslSessionId id)
    • setSessionFromCache

      boolean setSessionFromCache(long ssl, OpenSslInternalSession session, java.lang.String host, int port)
    • destroy

      final void destroy()