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

pack-priv final Class DTLSOutputRecord

extends OutputRecord
implements DTLSRecord
Class Inheritance
All Implemented Interfaces
sun.security.ssl.DTLSRecord, sun.security.ssl.Record
Imports
java.io.*, java.nio.*, java.util.*, javax.net.ssl.*, sun.security.ssl.SSLCipher.SSLWriteCipher

DTLS OutputRecord implementation for SSLEngine.

Nested and Inner Type Summary

Modifier and TypeClass and Description
private class
private static class
private static class

Field Summary

Modifier and TypeField and Description
private DTLSOutputRecord.DTLSFragmenter
private volatile boolean
pack-priv Authenticator
pack-priv SSLCipher.SSLWriteCipher
pack-priv int
pack-priv int
Inherited from sun.security.ssl.OutputRecord:
firstMessagehandshakeHashhelloVersionisClosedisFirstAppOutputRecordpacketSizeprotocolVersionrecordLocktcwriteCipher

Constructor Summary

AccessConstructor and Description
pack-priv

Method Summary

Modifier and TypeMethod and Description
private Ciphertext
pack-priv void
public void
close()

Overrides sun.security.ssl.OutputRecord.close.

Implements java.io.Closeable.close.

Closes this stream and releases any system resources associated with it.

pack-priv Ciphertext
encode(ByteBuffer[] srcs, int srcsOffset, int srcsLength, ByteBuffer[] dsts, int dstsOffset, int dstsLength)

Overrides sun.security.ssl.OutputRecord.encode.

private Ciphertext
encode(ByteBuffer[] sources, int offset, int length, ByteBuffer destination)

pack-priv void
encodeAlert(byte level, byte description)

Implements abstract sun.security.ssl.OutputRecord.encodeAlert.

pack-priv void
pack-priv void
encodeHandshake(byte[] source, int offset, int length)

Implements abstract sun.security.ssl.OutputRecord.encodeHandshake.

pack-priv void
pack-priv void
pack-priv boolean
pack-priv boolean
pack-priv void
Inherited from sun.security.ssl.OutputRecord:
calculateFragmentSizechangeFragmentSizechangePacketSizechangeWriteCiphersdeliverdisposeWriteCipherencodeV2ClientHelloencodeV2NoCipherencryptencryptgetHandshakeMessagegetHandshakeMessageKeySpacegetMaxPacketSizeseqNumIsHugesetDeliverStreamsetHelloVersionsetVersion

Field Detail

fragmenterback to summary
private DTLSOutputRecord.DTLSFragmenter fragmenter
isCloseWaitingback to summary
private volatile boolean isCloseWaiting
prevWriteAuthenticatorback to summary
pack-priv Authenticator prevWriteAuthenticator
prevWriteCipherback to summary
pack-priv SSLCipher.SSLWriteCipher prevWriteCipher
prevWriteEpochback to summary
pack-priv int prevWriteEpoch
writeEpochback to summary
pack-priv int writeEpoch

Constructor Detail

DTLSOutputRecordback to summary
pack-priv DTLSOutputRecord(HandshakeHash handshakeHash)

Method Detail

acquireCiphertextback to summary
private Ciphertext acquireCiphertext(ByteBuffer destination) throws IOException
changeWriteCiphersback to summary
pack-priv void changeWriteCiphers(SSLCipher.SSLWriteCipher writeCipher, boolean useChangeCipherSpec)

Overrides sun.security.ssl.OutputRecord.changeWriteCiphers.

Annotations
@Override
closeback to summary
public void close() throws IOException

Overrides sun.security.ssl.OutputRecord.close.

Implements java.io.Closeable.close.

Doc from java.io.Closeable.close.

Closes this stream and releases any system resources associated with it. If the stream is already closed then invoking this method has no effect.

As noted in AutoCloseable#close(), cases where the close may fail require careful attention. It is strongly advised to relinquish the underlying resources and to internally mark the Closeable as closed, prior to throwing the IOException.

Annotations
@Override
Exceptions
IOException:
if an I/O error occurs
encodeback to summary
pack-priv Ciphertext encode(ByteBuffer[] srcs, int srcsOffset, int srcsLength, ByteBuffer[] dsts, int dstsOffset, int dstsLength) throws IOException

Overrides sun.security.ssl.OutputRecord.encode.

Annotations
@Override
encodeback to summary
private Ciphertext encode(ByteBuffer[] sources, int offset, int length, ByteBuffer destination) throws IOException
encodeAlertback to summary
pack-priv void encodeAlert(byte level, byte description)

Implements abstract sun.security.ssl.OutputRecord.encodeAlert.

Annotations
@Override
encodeChangeCipherSpecback to summary
pack-priv void encodeChangeCipherSpec()

Implements abstract sun.security.ssl.OutputRecord.encodeChangeCipherSpec.

Annotations
@Override
encodeHandshakeback to summary
pack-priv void encodeHandshake(byte[] source, int offset, int length)

Implements abstract sun.security.ssl.OutputRecord.encodeHandshake.

Annotations
@Override
finishHandshakeback to summary
pack-priv void finishHandshake()

Overrides sun.security.ssl.OutputRecord.finishHandshake.

Annotations
@Override
initHandshakerback to summary
pack-priv void initHandshaker()

Overrides sun.security.ssl.OutputRecord.initHandshaker.

Annotations
@Override
isClosedback to summary
pack-priv boolean isClosed()

Overrides sun.security.ssl.OutputRecord.isClosed.

isEmptyback to summary
pack-priv boolean isEmpty()

Overrides sun.security.ssl.OutputRecord.isEmpty.

Annotations
@Override
launchRetransmissionback to summary
pack-priv void launchRetransmission()

Overrides sun.security.ssl.OutputRecord.launchRetransmission.

Annotations
@Override
sun.security.ssl back to summary

private final Class DTLSOutputRecord.DTLSFragmenter

extends Object
Class Inheritance

Field Summary

Modifier and TypeField and Description
private int
private boolean
private final LinkedList<DTLSOutputRecord.RecordMemo>
private int
private int

Constructor Summary

AccessConstructor and Description
private

Method Summary

Modifier and TypeMethod and Description
pack-priv Ciphertext
private void
pack-priv boolean
pack-priv boolean
pack-priv boolean
pack-priv void
queueUpAlert(byte level, byte description)

pack-priv void
pack-priv void
queueUpHandshake(byte[] buf, int offset, int length)

private void
private void
Inherited from java.lang.Object:
cloneequalsfinalizegetClasshashCodenotifynotifyAlltoStringwaitwaitwait

Field Detail

acquireIndexback to summary
private int acquireIndex
flightIsReadyback to summary
private boolean flightIsReady
handshakeMemosback to summary
private final LinkedList<DTLSOutputRecord.RecordMemo> handshakeMemos
messageSequenceback to summary
private int messageSequence
retransmitsback to summary
private int retransmits

Constructor Detail

DTLSFragmenterback to summary
private DTLSFragmenter()

Method Detail

acquireCiphertextback to summary
pack-priv Ciphertext acquireCiphertext(ByteBuffer dstBuf) throws IOException
handshakeHashingback to summary
private void handshakeHashing(DTLSOutputRecord.HandshakeMemo hsFrag, byte[] hsBody)
hasAlertback to summary
pack-priv boolean hasAlert()
isEmptyback to summary
pack-priv boolean isEmpty()
isRetransmittableback to summary
pack-priv boolean isRetransmittable()
queueUpAlertback to summary
pack-priv void queueUpAlert(byte level, byte description)
queueUpChangeCipherSpecback to summary
pack-priv void queueUpChangeCipherSpec()
queueUpHandshakeback to summary
pack-priv void queueUpHandshake(byte[] buf, int offset, int length)
setRetransmissionback to summary
private void setRetransmission()
shrinkPacketSizeback to summary
private void shrinkPacketSize()
sun.security.ssl back to summary

private Class DTLSOutputRecord.HandshakeMemo

extends RecordMemo
Class Inheritance

Field Summary

Modifier and TypeField and Description
pack-priv int
pack-priv byte
pack-priv int
Inherited from sun.security.ssl.DTLSOutputRecord.RecordMemo:
contentTypeencodeCipherencodeEpochfragmentmajorVersionminorVersion

Constructor Summary

AccessConstructor and Description
private

Field Detail

acquireOffsetback to summary
pack-priv int acquireOffset
handshakeTypeback to summary
pack-priv byte handshakeType
messageSequenceback to summary
pack-priv int messageSequence

Constructor Detail

HandshakeMemoback to summary
private HandshakeMemo()
sun.security.ssl back to summary

private Class DTLSOutputRecord.RecordMemo

extends Object
Class Inheritance
Known Direct Subclasses
sun.security.ssl.DTLSOutputRecord.HandshakeMemo

Field Summary

Modifier and TypeField and Description
pack-priv byte
pack-priv SSLCipher.SSLWriteCipher
pack-priv int
pack-priv byte[]
pack-priv byte
pack-priv byte

Constructor Summary

AccessConstructor and Description
private

Method Summary

Inherited from java.lang.Object:
cloneequalsfinalizegetClasshashCodenotifynotifyAlltoStringwaitwaitwait

Field Detail

contentTypeback to summary
pack-priv byte contentType
encodeCipherback to summary
pack-priv SSLCipher.SSLWriteCipher encodeCipher
encodeEpochback to summary
pack-priv int encodeEpoch
fragmentback to summary
pack-priv byte[] fragment
majorVersionback to summary
pack-priv byte majorVersion
minorVersionback to summary
pack-priv byte minorVersion

Constructor Detail

RecordMemoback to summary
private RecordMemo()