Package org.apache.tomcat.util.net

## Class AprSSLSupport

- java.lang.Object
- - org.apache.tomcat.util.net.AprSSLSupport

All Implemented Interfaces:
  `SSLSupport`

    @Deprecated
    public class AprSSLSupport
    extends java.lang.Object
    implements SSLSupport

Deprecated.
The APR/Native Connector will be removed in Tomcat 10.1.x onwards.
Implementation of SSLSupport for APR.

TODO: Add a mechanism (or figure out how to use what we already have) to invalidate the session.

### Field Summary

### Fields inherited from interface org.apache.tomcat.util.net.SSLSupport

`CERTIFICATE_KEY, CIPHER_SUITE_KEY, KEY_SIZE_KEY, PROTOCOL_VERSION_KEY, REQUESTED_CIPHERS_KEY, REQUESTED_PROTOCOL_VERSIONS_KEY, SESSION_ID_KEY, SESSION_MGR`

### Constructor Summary

Constructors
`AprSSLSupport​(AprEndpoint.AprSocketWrapper socketWrapper, java.lang.String clientCertProvider)` Deprecated.

### Method Summary

All Methods Instance Methods Concrete Methods Deprecated Methods
`java.lang.String` `getCipherSuite()` Deprecated. The cipher suite being used on this connection.
`java.lang.Integer` `getKeySize()` Deprecated. Get the keysize.
`java.security.cert.X509Certificate[]` `getPeerCertificateChain()` Deprecated. The client certificate chain (if any).
`java.lang.String` `getProtocol()` Deprecated.
`java.lang.String` `getRequestedCiphers()` Deprecated.
`java.lang.String` `getRequestedProtocols()` Deprecated.
`java.lang.String` `getSessionId()` Deprecated. The current session Id.

### Methods inherited from class java.lang.Object

`clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

### Methods inherited from interface org.apache.tomcat.util.net.SSLSupport

`getLocalCertificateChain`

### Constructor Detail

#### AprSSLSupport

    public AprSSLSupport​(AprEndpoint.AprSocketWrapper socketWrapper,
                         java.lang.String clientCertProvider)

Deprecated.

### Method Detail

#### getCipherSuite

    public java.lang.String getCipherSuite()
                                    throws java.io.IOException

Deprecated.
Description copied from interface: `SSLSupport`
The cipher suite being used on this connection.

Specified by:
  `getCipherSuite` in interface `SSLSupport`
Returns:
  The name of the cipher suite as returned by the SSL/TLS implementation
Throws:
  `java.io.IOException` - If an error occurs trying to obtain the cipher suite

#### getPeerCertificateChain

    public java.security.cert.X509Certificate[] getPeerCertificateChain()
                                                                 throws java.io.IOException

Deprecated.
Description copied from interface: `SSLSupport`
The client certificate chain (if any).

Specified by:
  `getPeerCertificateChain` in interface `SSLSupport`
Returns:
  The certificate chain presented by the client with the peer's certificate first, followed by those of any certificate authorities
Throws:
  `java.io.IOException` - If an error occurs trying to obtain the certificate chain

#### getKeySize

    public java.lang.Integer getKeySize()
                                 throws java.io.IOException

Deprecated.
Description copied from interface: `SSLSupport`
Get the keysize. What we're supposed to put here is ill-defined by the Servlet spec (S 4.7 again). There are at least 4 potential values that might go here: (a) The size of the encryption key (b) The size of the MAC key (c) The size of the key-exchange key (d) The size of the signature key used by the server Unfortunately, all of these values are nonsensical.

Specified by:
  `getKeySize` in interface `SSLSupport`
Returns:
  The effective key size for the current cipher suite
Throws:
  `java.io.IOException` - If an error occurs trying to obtain the key size

#### getSessionId

    public java.lang.String getSessionId()
                                  throws java.io.IOException

Deprecated.
Description copied from interface: `SSLSupport`
The current session Id.

Specified by:
  `getSessionId` in interface `SSLSupport`
Returns:
  The current SSL/TLS session ID
Throws:
  `java.io.IOException` - If an error occurs trying to obtain the session ID

#### getProtocol

    public java.lang.String getProtocol()
                                 throws java.io.IOException

Deprecated.

Specified by:
  `getProtocol` in interface `SSLSupport`
Returns:
  the protocol String indicating how the SSL socket was created e.g. TLSv1 or TLSv1.2 etc.
Throws:
  `java.io.IOException` - If an error occurs trying to obtain the protocol information from the socket

#### getRequestedProtocols

    public java.lang.String getRequestedProtocols()
                                           throws java.io.IOException

Deprecated.

Specified by:
  `getRequestedProtocols` in interface `SSLSupport`
Returns:
  the list of SSL/TLS protocol versions requested by the client
Throws:
  `java.io.IOException` - If an error occurs trying to obtain the client requested protocol information from the socket

#### getRequestedCiphers

    public java.lang.String getRequestedCiphers()
                                         throws java.io.IOException

Deprecated.

Specified by:
  `getRequestedCiphers` in interface `SSLSupport`
Returns:
  the list of SSL/TLS ciphers requested by the client
Throws:
  `java.io.IOException` - If an error occurs trying to obtain the client request cipher information from the socket