APIdia Launch Partner
Top Description Inners Fields Constructors Methods
sun.security.ssl

pack-priv final Enum SSLHandshake

extends Enum<SSLHandshake>
implements SSLConsumer, HandshakeProducer
Class Inheritance
All Implemented Interfaces
sun.security.ssl.HandshakeProducer, sun.security.ssl.SSLConsumer
Imports
java.io.IOException, java.nio.ByteBuffer, java.util.AbstractMap.SimpleImmutableEntry, .Map, javax.net.ssl.SSLException

An enum of the defined TLS handshake message types.

These are defined in the IANA TLS Parameters. https://www.iana.org/assignments/tls-parameters/tls-parameters.xhtml#tls-parameters-7

Most of these come from the SLS/TLS specs in RFCs 6601/2246/4346/8446 and friends. Others are called out where defined.

Nested and Inner Type Summary

Modifier and TypeClass and Description
pack-priv abstract static class
SSLHandshake.HandshakeMessage

A (transparent) specification of handshake message.

Field Summary

Modifier and TypeField and Description
public static final SSLHandshake
public static final SSLHandshake
public static final SSLHandshake
public static final SSLHandshake
public static final SSLHandshake
public static final SSLHandshake
public static final SSLHandshake
public static final SSLHandshake
public static final SSLHandshake
public static final SSLHandshake
public static final SSLHandshake
public static final SSLHandshake
public static final SSLHandshake
pack-priv final Map.Entry<HandshakeAbsence, ProtocolVersion[]>[]
pack-priv final Map.Entry<SSLConsumer, ProtocolVersion[]>[]
pack-priv final Map.Entry<HandshakeProducer, ProtocolVersion[]>[]
public static final SSLHandshake
public static final SSLHandshake
public static final SSLHandshake
pack-priv final byte
public static final SSLHandshake
public static final SSLHandshake
pack-priv final String
public static final SSLHandshake
public static final SSLHandshake
public static final SSLHandshake
public static final SSLHandshake
public static final SSLHandshake
public static final SSLHandshake
public static final SSLHandshake
public static final SSLHandshake

Constructor Summary

AccessConstructor and Description
private
SSLHandshake(byte id, String name)

private
SSLHandshake(byte id, String name, Map.Entry<SSLConsumer, ProtocolVersion[]>[] handshakeConsumers, Map.Entry<HandshakeProducer, ProtocolVersion[]>[] handshakeProducers)

private
SSLHandshake(byte id, String name, Map.Entry<SSLConsumer, ProtocolVersion[]>[] handshakeConsumers, Map.Entry<HandshakeProducer, ProtocolVersion[]>[] handshakeProducers, Map.Entry<HandshakeAbsence, ProtocolVersion[]>[] handshakeAbsence)

Method Summary

Modifier and TypeMethod and Description
public void
private SSLConsumer
private HandshakeProducer
pack-priv static boolean
isKnown(byte id)

pack-priv static final void
pack-priv static String
nameOf(byte id)

public byte[]
public String
toString()

Overrides java.lang.Enum.toString.

Returns the name of this enum constant, as contained in the declaration.

public static SSLHandshake
public static SSLHandshake[]
Inherited from java.lang.Enum:
clonecompareTodescribeConstableequalsfinalizegetDeclaringClasshashCodenameordinalvalueOf

Field Detail

CERTIFICATEback to summary
public static final SSLHandshake CERTIFICATE
Annotations
@SuppressWarnings:unchecked, rawtypes
CERTIFICATE_REQUESTback to summary
public static final SSLHandshake CERTIFICATE_REQUEST
Annotations
@SuppressWarnings:unchecked, rawtypes
CERTIFICATE_STATUSback to summary
public static final SSLHandshake CERTIFICATE_STATUS
Annotations
@SuppressWarnings:unchecked, rawtypes
CERTIFICATE_URLback to summary
public static final SSLHandshake CERTIFICATE_URL
CERTIFICATE_VERIFYback to summary
public static final SSLHandshake CERTIFICATE_VERIFY
Annotations
@SuppressWarnings:unchecked, rawtypes
CLIENT_CERTIFICATE_REQUESTback to summary
public static final SSLHandshake CLIENT_CERTIFICATE_REQUEST
CLIENT_HELLOback to summary
public static final SSLHandshake CLIENT_HELLO
Annotations
@SuppressWarnings:unchecked, rawtypes
CLIENT_KEY_EXCHANGEback to summary
public static final SSLHandshake CLIENT_KEY_EXCHANGE
Annotations
@SuppressWarnings:unchecked, rawtypes
COMPRESSED_CERTIFICATEback to summary
public static final SSLHandshake COMPRESSED_CERTIFICATE
Annotations
@SuppressWarnings:unchecked, rawtypes
EKT_KEYback to summary
public static final SSLHandshake EKT_KEY
ENCRYPTED_EXTENSIONSback to summary
public static final SSLHandshake ENCRYPTED_EXTENSIONS
Annotations
@SuppressWarnings:unchecked, rawtypes
END_OF_EARLY_DATAback to summary
public static final SSLHandshake END_OF_EARLY_DATA
FINISHEDback to summary
public static final SSLHandshake FINISHED
Annotations
@SuppressWarnings:unchecked, rawtypes
handshakeAbsencesback to summary
pack-priv final Map.Entry<HandshakeAbsence, ProtocolVersion[]>[] handshakeAbsences
handshakeConsumersback to summary
pack-priv final Map.Entry<SSLConsumer, ProtocolVersion[]>[] handshakeConsumers
handshakeProducersback to summary
pack-priv final Map.Entry<HandshakeProducer, ProtocolVersion[]>[] handshakeProducers
HELLO_REQUESTback to summary
public static final SSLHandshake HELLO_REQUEST
Annotations
@SuppressWarnings:unchecked, rawtypes
HELLO_RETRY_REQUESTback to summary
public static final SSLHandshake HELLO_RETRY_REQUEST
Annotations
@SuppressWarnings:unchecked, rawtypes
HELLO_VERIFY_REQUESTback to summary
public static final SSLHandshake HELLO_VERIFY_REQUEST
Annotations
@SuppressWarnings:unchecked, rawtypes
idback to summary
pack-priv final byte id
KEY_UPDATEback to summary
public static final SSLHandshake KEY_UPDATE
Annotations
@SuppressWarnings:unchecked, rawtypes
MESSAGE_HASHback to summary
public static final SSLHandshake MESSAGE_HASH
nameback to summary
pack-priv final String name

Hides java.lang.Enum.name.

NEW_CONNECTION_IDback to summary
public static final SSLHandshake NEW_CONNECTION_ID
NEW_SESSION_TICKETback to summary
public static final SSLHandshake NEW_SESSION_TICKET
Annotations
@SuppressWarnings:unchecked, rawtypes
NOT_APPLICABLEback to summary
public static final SSLHandshake NOT_APPLICABLE
REQUEST_CONNECTION_IDback to summary
public static final SSLHandshake REQUEST_CONNECTION_ID
SERVER_HELLOback to summary
public static final SSLHandshake SERVER_HELLO
Annotations
@SuppressWarnings:unchecked, rawtypes
SERVER_HELLO_DONEback to summary
public static final SSLHandshake SERVER_HELLO_DONE
Annotations
@SuppressWarnings:unchecked, rawtypes
SERVER_KEY_EXCHANGEback to summary
public static final SSLHandshake SERVER_KEY_EXCHANGE
Annotations
@SuppressWarnings:unchecked, rawtypes
SUPPLEMENTAL_DATAback to summary
public static final SSLHandshake SUPPLEMENTAL_DATA

Constructor Detail

SSLHandshakeback to summary
private SSLHandshake(byte id, String name)
Annotations
@SuppressWarnings:unchecked, rawtypes
SSLHandshakeback to summary
private SSLHandshake(byte id, String name, Map.Entry<SSLConsumer, ProtocolVersion[]>[] handshakeConsumers, Map.Entry<HandshakeProducer, ProtocolVersion[]>[] handshakeProducers)
Annotations
@SuppressWarnings:unchecked, rawtypes
SSLHandshakeback to summary
private SSLHandshake(byte id, String name, Map.Entry<SSLConsumer, ProtocolVersion[]>[] handshakeConsumers, Map.Entry<HandshakeProducer, ProtocolVersion[]>[] handshakeProducers, Map.Entry<HandshakeAbsence, ProtocolVersion[]>[] handshakeAbsence)

Method Detail

consumeback to summary
public void consume(ConnectionContext context, ByteBuffer message) throws IOException

Implements sun.security.ssl.SSLConsumer.consume.

Annotations
@Override
getHandshakeConsumerback to summary
private SSLConsumer getHandshakeConsumer(ConnectionContext context)
getHandshakeProducerback to summary
private HandshakeProducer getHandshakeProducer(ConnectionContext context)
isKnownback to summary
pack-priv static boolean isKnown(byte id)
kickstartback to summary
pack-priv static final void kickstart(HandshakeContext context) throws IOException
nameOfback to summary
pack-priv static String nameOf(byte id)
produceback to summary
public byte[] produce(ConnectionContext context, SSLHandshake.HandshakeMessage message) throws IOException

Implements sun.security.ssl.HandshakeProducer.produce.

Annotations
@Override
toStringback to summary
public String toString()

Overrides java.lang.Enum.toString.

Doc from java.lang.Enum.toString.

Returns the name of this enum constant, as contained in the declaration. This method may be overridden, though it typically isn't necessary or desirable. An enum class should override this method when a more "programmer-friendly" string form exists.

Annotations
@Override
valueOfback to summary
public static SSLHandshake valueOf(String name)
valuesback to summary
public static SSLHandshake[] values()
sun.security.ssl back to summary

pack-priv abstract Class SSLHandshake.HandshakeMessage

extends Object
Class Inheritance
Known Direct Subclasses
sun.security.ssl.CertificateMessage.T12CertificateMessage, sun.security.ssl.CertificateMessage.T13CertificateMessage, sun.security.ssl.CertificateRequest.T10CertificateRequestMessage, sun.security.ssl.CertificateRequest.T12CertificateRequestMessage, sun.security.ssl.CertificateRequest.T13CertificateRequestMessage, sun.security.ssl.CertificateStatus.CertificateStatusMessage, sun.security.ssl.CertificateVerify.S30CertificateVerifyMessage, sun.security.ssl.CertificateVerify.T10CertificateVerifyMessage, sun.security.ssl.CertificateVerify.T12CertificateVerifyMessage, sun.security.ssl.CertificateVerify.T13CertificateVerifyMessage, sun.security.ssl.ClientHello.ClientHelloMessage, sun.security.ssl.CompressedCertificate.CompressedCertMessage, sun.security.ssl.DHClientKeyExchange.DHClientKeyExchangeMessage, sun.security.ssl.DHServerKeyExchange.DHServerKeyExchangeMessage, sun.security.ssl.ECDHClientKeyExchange.ECDHClientKeyExchangeMessage, sun.security.ssl.ECDHServerKeyExchange.ECDHServerKeyExchangeMessage, sun.security.ssl.EncryptedExtensions.EncryptedExtensionsMessage, sun.security.ssl.Finished.FinishedMessage, sun.security.ssl.HelloVerifyRequest.HelloVerifyRequestMessage, sun.security.ssl.KeyUpdate.KeyUpdateMessage, sun.security.ssl.NewSessionTicket.NewSessionTicketMessage, sun.security.ssl.HelloRequest.HelloRequestMessage, sun.security.ssl.PreSharedKeyExtension.PartialClientHelloMessage, sun.security.ssl.RSAClientKeyExchange.RSAClientKeyExchangeMessage, sun.security.ssl.RSAServerKeyExchange.RSAServerKeyExchangeMessage, sun.security.ssl.ServerHello.ServerHelloMessage, sun.security.ssl.ServerHelloDone.ServerHelloDoneMessage

A (transparent) specification of handshake message.

Field Summary

Modifier and TypeField and Description
pack-priv final HandshakeContext

Constructor Summary

AccessConstructor and Description
pack-priv

Method Summary

Modifier and TypeMethod and Description
pack-priv abstract SSLHandshake
pack-priv abstract int
pack-priv abstract void
pack-priv void
Inherited from java.lang.Object:
cloneequalsfinalizegetClasshashCodenotifynotifyAlltoStringwaitwaitwait

Field Detail

handshakeContextback to summary
pack-priv final HandshakeContext handshakeContext

Constructor Detail

HandshakeMessageback to summary
pack-priv HandshakeMessage(HandshakeContext handshakeContext)

Method Detail

handshakeTypeback to summary
pack-priv abstract SSLHandshake handshakeType()
messageLengthback to summary
pack-priv abstract int messageLength()
sendback to summary
pack-priv abstract void send(HandshakeOutStream hos) throws IOException
writeback to summary
pack-priv void write(HandshakeOutStream hos) throws IOException