META-INF.modules.java.base.classes.sun.security.ssl.SSLEngineImpl.class Maven / Gradle / Ivy
Go to download
Show more of this group Show more artifacts with this name
Show all versions of java.base Show documentation
Show all versions of java.base Show documentation
Bytecoder java.base Module
???? :?
sun/security/ssl/SSLEngineImpl 7(Lsun/security/ssl/SSLContextImpl;Ljava/lang/String;I)V
javax/net/ssl/SSLEngine (Ljava/lang/String;I)V
(java/util/concurrent/locks/ReentrantLock
()V
engineLock *Ljava/util/concurrent/locks/ReentrantLock;
sslContext !Lsun/security/ssl/SSLContextImpl; sun/security/ssl/HandshakeHash
! sun/security/ssl/SSLContextImpl isDTLS ()Z # !sun/security/ssl/TransportContext % sun/security/ssl/DTLSInputRecord
$ ' ( #(Lsun/security/ssl/HandshakeHash;)V * !sun/security/ssl/DTLSOutputRecord
) '
" - . ?(Lsun/security/ssl/SSLContextImpl;Lsun/security/ssl/SSLTransport;Lsun/security/ssl/InputRecord;Lsun/security/ssl/OutputRecord;)V 0 1 2
conContext #Lsun/security/ssl/TransportContext; 4 %sun/security/ssl/SSLEngineInputRecord
3 ' 7 &sun/security/ssl/SSLEngineOutputRecord
6 ' " : ; < sslConfig #Lsun/security/ssl/SSLConfiguration; > ? @ A B !sun/security/ssl/SSLConfiguration serverNames Ljava/util/List;
D E F G H sun/security/ssl/Utilities addToSNIServerNameList 4(Ljava/util/List;Ljava/lang/String;)Ljava/util/List;
J K lock " M N O isUnsureMode Z Q java/lang/IllegalStateException S (Client/Server mode has not yet been set.
P U V (Ljava/lang/String;)V
" X Y kickstart [ java/io/IOException ] ^ _ ` a sun/security/ssl/Alert HANDSHAKE_FAILURE Lsun/security/ssl/Alert; c Couldn't kickstart handshaking
" e f g fatal ](Lsun/security/ssl/Alert;Ljava/lang/String;Ljava/lang/Throwable;)Ljavax/net/ssl/SSLException; i java/lang/Exception ] k l a INTERNAL_ERROR n Fail to begin handshake
p q unlock s java/nio/ByteBuffer
u v w wrap Q([Ljava/nio/ByteBuffer;II[Ljava/nio/ByteBuffer;II)Ljavax/net/ssl/SSLEngineResult;
y z checkTaskThrown
| } ~ checkParams 3([Ljava/nio/ByteBuffer;II[Ljava/nio/ByteBuffer;II)V
? ? w writeRecord ? "javax/net/ssl/SSLProtocolException ] ? ? a UNEXPECTED_MESSAGE
" ? f ? K(Lsun/security/ssl/Alert;Ljava/lang/Throwable;)Ljavax/net/ssl/SSLException; ? problem wrapping app data ? Fail to wrap application data
? ? ! isOutboundDone ? javax/net/ssl/SSLEngineResult ? ? ? ? ? $javax/net/ssl/SSLEngineResult$Status CLOSED &Ljavax/net/ssl/SSLEngineResult$Status;
? ? ? getHandshakeStatus 1()Ljavax/net/ssl/SSLEngineResult$HandshakeStatus;
? ? ? Z(Ljavax/net/ssl/SSLEngineResult$Status;Ljavax/net/ssl/SSLEngineResult$HandshakeStatus;II)V " ? ? ? handshakeContext #Lsun/security/ssl/HandshakeContext; " ? ? O isNegotiated " ? ? O isBroken
" ? ? ! isInboundClosed
" ? ? ! isOutboundClosed ? ? ? ? ? -javax/net/ssl/SSLEngineResult$HandshakeStatus NEED_UNWRAP /Ljavax/net/ssl/SSLEngineResult$HandshakeStatus; ? : ? !sun/security/ssl/HandshakeContext > ? ? O enableRetransmissions " ? ? ? outputRecord Lsun/security/ssl/OutputRecord; ? ? ? ? O sun/security/ssl/OutputRecord firstMessage ? ? ? ? OK ? ? ? ? NEED_TASK
r ? ? ? remaining ()I " ? ? ?
conSession !Lsun/security/ssl/SSLSessionImpl;
? ? ? ? ? sun/security/ssl/SSLSessionImpl getPacketBufferSize ? ? ? ? BUFFER_OVERFLOW
? ? ? ! isEmpty ?
? ? ? encode O([Ljava/nio/ByteBuffer;II[Ljava/nio/ByteBuffer;II)Lsun/security/ssl/Ciphertext; ? javax/net/ssl/SSLException ? Write problems
? ? ? *(Ljava/lang/String;Ljava/lang/Throwable;)V ? ? ? ? ? sun/security/ssl/Ciphertext handshakeStatus ? ? ? ? NEED_WRAP ? ? ? ? recordSN J????????
? ? ? [(Ljavax/net/ssl/SSLEngineResult$Status;Ljavax/net/ssl/SSLEngineResult$HandshakeStatus;IIJ)V
? ? ? #javax/net/ssl/SSLHandshakeException " ? contentType B
tryToFinishHandshake 2(B)Ljavax/net/ssl/SSLEngineResult$HandshakeStatus; ? ? FINISHED ?
handshakeType sun/security/ssl/SSLHandshake Lsun/security/ssl/SSLHandshake; id O sun/security/ssl/SSLLogger isOn ssl,verbose
(Ljava/lang/String;)Z #retransmit the last flight messages" java/lang/Object
$%& finest ((Ljava/lang/String;[Ljava/lang/Object;)V
?() launchRetransmission
" ?
?,- ! seqNumIsHuge ?/01 writeCipher +Lsun/security/ssl/SSLCipher$SSLWriteCipher;
3456 ! )sun/security/ssl/SSLCipher$SSLWriteCipher
atKeyLimit
89: tryKeyUpdate `(Ljavax/net/ssl/SSLEngineResult$HandshakeStatus;)Ljavax/net/ssl/SSLEngineResult$HandshakeStatus; ?<= O updateNST >?@ O isClientMode
BC: tryNewSessionTicket EFGHI sun/security/ssl/ContentType HANDSHAKE Lsun/security/ssl/ContentType; E
"LM ! isPostHandshakeContext
"OP ? finishPostHandshake ?RS O handshakeFinished
"UV ? finishHandshakeX sslZ trigger key update
\] beginHandshake "_`a protocolVersion "Lsun/security/ssl/ProtocolVersion;
cdef ! sun/security/ssl/ProtocolVersion useTLS13PlusSpech trigger NST jklmn !sun/security/ssl/NewSessionTicket kickstartProducer Lsun/security/ssl/SSLProducer;p %sun/security/ssl/PostHandshakeContext
or s &(Lsun/security/ssl/TransportContext;)Vuvwxy sun/security/ssl/SSLProducer produce ((Lsun/security/ssl/ConnectionContext;)[B{ "java/lang/IllegalArgumentException} $source or destination buffer is null
z U? #java/lang/IndexOutOfBoundsException? -index out of bound of the destination buffers
U? (index out of bound of the source buffers? java/lang/StringBuilder
? ? destination buffer[
???? append -(Ljava/lang/String;)Ljava/lang/StringBuilder;
???? (I)Ljava/lang/StringBuilder;? ] == null
???? toString ()Ljava/lang/String;
r?? !
isReadOnly? java/nio/ReadOnlyBufferException
? ? source buffer[
?? w unwrap
?? w
readRecord
????
getMessage? problem unwrapping net record? Fail to unwrap network record
?? !
isInboundDone ??? ? NEED_UNWRAP_AGAIN
??? decode N([Ljava/nio/ByteBuffer;II[Ljava/nio/ByteBuffer;II)Lsun/security/ssl/Plaintext;? ? ?? sun/security/ssl/Plaintext ? ? ??? ? BUFFER_UNDERFLOW "??? inputRecord Lsun/security/ssl/InputRecord;
????? sun/security/ssl/InputRecord bytesInCompletePacket ([Ljava/nio/ByteBuffer;II)I? Discard invalid DTLS records? sun/security/ssl/DTLSRecord? sun/security/ssl/SSLRecord ?E
??? expandBufferSizes? Input record too big: max = ? len =
? U
???? estimateFragmentSize (I)I????? sun/security/ssl/SSLTransport q(Lsun/security/ssl/TransportContext;[Ljava/nio/ByteBuffer;II[Ljava/nio/ByteBuffer;II)Lsun/security/ssl/Plaintext; ???? PLAINTEXT_NULL Lsun/security/ssl/Plaintext; ?
?, ????
readCipher *Lsun/security/ssl/SSLCipher$SSLReadCipher;
?4? (sun/security/ssl/SSLCipher$SSLReadCipher ??? O
taskDelegated ???? delegatedActions Ljava/util/Queue;? ?? java/util/Queue? ,sun/security/ssl/SSLEngineImpl$DelegatedTask
?? ? #(Lsun/security/ssl/SSLEngineImpl;)V? Closing inbound of SSLEngine " O isInputCloseNotified 4closing inbound before receiving peer's close_notify
" f H(Lsun/security/ssl/Alert;Ljava/lang/String;)Ljavax/net/ssl/SSLException;
" closeInbound Closing outbound of SSLEngine
"
closeOutbound
" ?
getSupportedCipherSuites ()Ljava/util/List;
sun/security/ssl/CipherSuite namesOf %(Ljava/util/List;)[Ljava/lang/String; > B enabledCipherSuites
validValuesOf %([Ljava/lang/String;)Ljava/util/List;
"# getSupportedProtocolVersions
c%&
toStringArray >() B enabledProtocols+ Protocols cannot be null
c- ?/0 ? handshakeSession
"234 setUseClientMode (Z)V 6789: sun/security/ssl/ClientAuthType CLIENT_AUTH_REQUIRED !Lsun/security/ssl/ClientAuthType; 6<=: CLIENT_AUTH_NONE >?@: clientAuthType 6BC: CLIENT_AUTH_REQUESTED >EF O enableSessionCreation
>HIJ getSSLParameters ()Ljavax/net/ssl/SSLParameters;
>LMN setSSLParameters (Ljavax/net/ssl/SSLParameters;)V >PQR maximumPacketSize I
?TUV changePacketSize (I)V "XYZ applicationProtocol Ljava/lang/String; ?X >]^_ engineAPSelector Ljava/util/function/BiFunction; ?abc delegatedThrown Ljava/lang/Exception; "af java/lang/RuntimeException
hij
getTaskThrown 3(Ljava/lang/Exception;)Ljavax/net/ssl/SSLException;
h?m 'Delegated task threw Exception or Error
e ?
? U
?qrs initCause ,(Ljava/lang/Throwable;)Ljava/lang/Throwable;u javax/net/ssl/SSLKeyException
t U
tqy (javax/net/ssl/SSLPeerUnverifiedException
x U
xq
?q $(Lsun/security/ssl/SSLContextImpl;)V Code LineNumberTable LocalVariableTable this Lsun/security/ssl/SSLEngineImpl; host port
handshakeHash Lsun/security/ssl/HandshakeHash;
StackMapTable? java/lang/String ioe Ljava/io/IOException; ex? java/lang/Throwable
Exceptions N([Ljava/nio/ByteBuffer;IILjava/nio/ByteBuffer;)Ljavax/net/ssl/SSLEngineResult; appData [Ljava/nio/ByteBuffer; offset length netData Ljava/nio/ByteBuffer; spe $Ljavax/net/ssl/SSLProtocolException; srcs
srcsOffset
srcsLength dsts
dstsOffset
dstsLength i hc hsStatus dstsRemains srcsRemains
ciphertext Lsun/security/ssl/Ciphertext; status deltaSrcs deltaDsts? she %Ljavax/net/ssl/SSLHandshakeException; e needRetransmission currentHandshakeStatus N(Ljava/nio/ByteBuffer;[Ljava/nio/ByteBuffer;II)Ljavax/net/ssl/SSLEngineResult; src plainText deltaNet ssle Ljavax/net/ssl/SSLException; largestRecordSize FragLen packetLen deltaApp pt getDelegatedTask ()Ljava/lang/Runnable; ()[Ljava/lang/String; getEnabledCipherSuites setEnabledCipherSuites ([Ljava/lang/String;)V suites [Ljava/lang/String; getSupportedProtocols getEnabledProtocols setEnabledProtocols protocols
getSession ()Ljavax/net/ssl/SSLSession; getHandshakeSession? javax/net/ssl/SSLSession mode getUseClientMode setNeedClientAuth need getNeedClientAuth setWantClientAuth want getWantClientAuth setEnableSessionCreation flag getEnableSessionCreation params Ljavax/net/ssl/SSLParameters; getApplicationProtocol getHandshakeApplicationProtocol 'setHandshakeApplicationProtocolSelector "(Ljava/util/function/BiFunction;)V selector LocalVariableTypeTable pLjava/util/function/BiFunction;Ljava/lang/String;>; Signature s(Ljava/util/function/BiFunction;Ljava/lang/String;>;)V 'getHandshakeApplicationProtocolSelector !()Ljava/util/function/BiFunction; r()Ljava/util/function/BiFunction;Ljava/lang/String;>; useDelegatedTask exc
taskThrown msg
SourceFile SSLEngineImpl.java NestMembers?