io.netty.handler.ssl.SslHandler.class Maven / Gradle / Ivy
???? 2X io/netty/handler/ssl/SslHandler +io/netty/handler/codec/ByteToMessageDecoder 'io/netty/channel/ChannelOutboundHandler SslHandler.java !io/netty/handler/ssl/SslHandler$9 2io/netty/handler/ssl/SslHandler$LazyChannelPromise
LazyChannelPromise -io/netty/handler/ssl/SslHandler$SslEngineType
SslEngineType !io/netty/handler/ssl/SslHandler$8 !io/netty/handler/ssl/SslHandler$7 !io/netty/handler/ssl/SslHandler$6 !io/netty/handler/ssl/SslHandler$5 !io/netty/handler/ssl/SslHandler$4 !io/netty/handler/ssl/SslHandler$3 !io/netty/handler/ssl/SslHandler$2 !io/netty/handler/ssl/SslHandler$1 $javax/net/ssl/SSLEngineResult$Status javax/net/ssl/SSLEngineResult " Status -javax/net/ssl/SSLEngineResult$HandshakeStatus % HandshakeStatus 5io/netty/handler/codec/ByteToMessageDecoder$Cumulator ( Cumulator logger /Lio/netty/util/internal/logging/InternalLogger; IGNORABLE_CLASS_IN_STACK Ljava/util/regex/Pattern; IGNORABLE_ERROR_MESSAGE SSLENGINE_CLOSED Ljavax/net/ssl/SSLException; HANDSHAKE_TIMED_OUT CHANNEL_CLOSED *Ljava/nio/channels/ClosedChannelException; ctx (Lio/netty/channel/ChannelHandlerContext; engine Ljavax/net/ssl/SSLEngine;
engineType /Lio/netty/handler/ssl/SslHandler$SslEngineType; maxPacketBufferSize I delegatedTaskExecutor Ljava/util/concurrent/Executor; singleBuffer [Ljava/nio/ByteBuffer; startTls Z sentFirstMessage flushedBeforeHandshake readDuringHandshake pendingUnencryptedWrites $Lio/netty/channel/PendingWriteQueue; handshakePromise "Lio/netty/util/concurrent/Promise; >Lio/netty/util/concurrent/Promise; sslClosePromise 4Lio/netty/handler/ssl/SslHandler$LazyChannelPromise;
needsFlush outboundClosed packetLength firedChannelRead handshakeTimeoutMillis J closeNotifyFlushTimeoutMillis closeNotifyReadTimeoutMillis $assertionsDisabled (Ljavax/net/ssl/SSLEngine;)V (Ljavax/net/ssl/SSLEngine;Z)V V X
Y this !Lio/netty/handler/ssl/SslHandler; *io/netty/util/concurrent/ImmediateExecutor ] INSTANCE ,Lio/netty/util/concurrent/ImmediateExecutor; _ ` ^ a <(Ljavax/net/ssl/SSLEngine;ZLjava/util/concurrent/Executor;)V V c
d ;(Ljavax/net/ssl/SSLEngine;Ljava/util/concurrent/Executor;)V Ljava/lang/Deprecated; ()V V h
i java/nio/ByteBuffer k ? @ m G(Lio/netty/handler/ssl/SslHandler;Lio/netty/handler/ssl/SslHandler$1;)V V o
p H I r K L t ' Q R x ? S R | java/lang/NullPointerException ~ 7 (Ljava/lang/String;)V V ?
? javax/net/ssl/SSLEngine ? java/util/concurrent/Executor ? = 7 8 ? forEngine J(Ljavax/net/ssl/SSLEngine;)Lio/netty/handler/ssl/SslHandler$SslEngineType; ? ?
? 9 : ? = > ? A B ?
getSession ()Ljavax/net/ssl/SSLSession; ? ?
? ? javax/net/ssl/SSLSession ? getPacketBufferSize ()I ? ? ? ? ; < ? cumulator 7Lio/netty/handler/codec/ByteToMessageDecoder$Cumulator; ? ? ? setCumulator :(Lio/netty/handler/codec/ByteToMessageDecoder$Cumulator;)V ? ?
? getHandshakeTimeoutMillis ()J setHandshakeTimeout #(JLjava/util/concurrent/TimeUnit;)V unit ? java/util/concurrent/TimeUnit ? toMillis (J)J ? ?
? ? setHandshakeTimeoutMillis (J)V ? ?
? handshakeTimeout Ljava/util/concurrent/TimeUnit; "java/lang/IllegalArgumentException ? java/lang/StringBuilder ?
? i handshakeTimeoutMillis: ? append -(Ljava/lang/String;)Ljava/lang/StringBuilder; ? ?
? ? (J)Ljava/lang/StringBuilder; ? ?
? ? (expected: >= 0) ? toString ()Ljava/lang/String; ? ?
? ?
? ? getCloseNotifyTimeoutMillis getCloseNotifyFlushTimeoutMillis ? ?
? setCloseNotifyTimeout setCloseNotifyFlushTimeout ? ?
? closeNotifyTimeout setCloseNotifyTimeoutMillis setCloseNotifyFlushTimeoutMillis ? ?
? closeNotifyFlushTimeout closeNotifyFlushTimeoutMillis: ? getCloseNotifyReadTimeoutMillis T R ? setCloseNotifyReadTimeout setCloseNotifyReadTimeoutMillis ? ?
? closeNotifyReadTimeout closeNotifyReadTimeoutMillis: ? ()Ljavax/net/ssl/SSLEngine; applicationProtocol 7 ?
? 0io/netty/handler/ssl/ApplicationProtocolAccessor ? getApplicationProtocol ? ? ? ? sess Ljavax/net/ssl/SSLSession; handshakeFuture #()Lio/netty/util/concurrent/Future; close "()Lio/netty/channel/ChannelFuture; 5 6 ? &io/netty/channel/ChannelHandlerContext ?
newPromise #()Lio/netty/channel/ChannelPromise; ? ? ? ? C(Lio/netty/channel/ChannelPromise;)Lio/netty/channel/ChannelFuture; ?
executor *()Lio/netty/util/concurrent/EventExecutor; ? m(Lio/netty/handler/ssl/SslHandler;Lio/netty/channel/ChannelHandlerContext;Lio/netty/channel/ChannelPromise;)V V
&io/netty/util/concurrent/EventExecutor execute (Ljava/lang/Runnable;)V
promise !Lio/netty/channel/ChannelPromise; sslCloseFuture handlerRemoved0 +(Lio/netty/channel/ChannelHandlerContext;)V java/lang/Exception F G "io/netty/channel/PendingWriteQueue isEmpty ()Z
!io/netty/channel/ChannelException &Pending write on removal of SslHandler"
! ? removeAndFailAll (Ljava/lang/Throwable;)V%&
' io/netty/util/ReferenceCounted) release+*, bind d(Lio/netty/channel/ChannelHandlerContext;Ljava/net/SocketAddress;Lio/netty/channel/ChannelPromise;)V [(Ljava/net/SocketAddress;Lio/netty/channel/ChannelPromise;)Lio/netty/channel/ChannelFuture;.0 ?1 localAddress Ljava/net/SocketAddress; connect |(Lio/netty/channel/ChannelHandlerContext;Ljava/net/SocketAddress;Ljava/net/SocketAddress;Lio/netty/channel/ChannelPromise;)V s(Ljava/net/SocketAddress;Ljava/net/SocketAddress;Lio/netty/channel/ChannelPromise;)Lio/netty/channel/ChannelFuture;57 ?8
remoteAddress
deregister L(Lio/netty/channel/ChannelHandlerContext;Lio/netty/channel/ChannelPromise;)V; ?=
disconnect closeOutboundAndChannel M(Lio/netty/channel/ChannelHandlerContext;Lio/netty/channel/ChannelPromise;Z)V@A
B read io/netty/util/concurrent/PromiseE isDoneGFH E B J *()Lio/netty/channel/ChannelHandlerContext;DL ?M write ^(Lio/netty/channel/ChannelHandlerContext;Ljava/lang/Object;Lio/netty/channel/ChannelPromise;)V io/netty/buffer/ByteBufQ 6io/netty/handler/codec/UnsupportedMessageTypeExceptionS java/lang/ClassU '(Ljava/lang/Object;[Ljava/lang/Class;)V VW
TX io/netty/channel/ChannelPromiseZ
setFailure 8(Ljava/lang/Throwable;)Lio/netty/channel/ChannelPromise;\][^ add 6(Ljava/lang/Object;Lio/netty/channel/ChannelPromise;)V`a
b msg Ljava/lang/Object; flush java/lang/Throwableg C B i removeAndWriteAllk ?
l
forceFlushn
o wrapAndFlushq
r setHandshakeFailure @(Lio/netty/channel/ChannelHandlerContext;Ljava/lang/Throwable;)Vtu
v (io/netty/util/internal/PlatformDependentx throwExceptionz&
y{ cause Ljava/lang/Throwable; javax/net/ssl/SSLException io/netty/buffer/Unpooled? EMPTY_BUFFER Lio/netty/buffer/ByteBuf;?? ?? D B ? wrap ,(Lio/netty/channel/ChannelHandlerContext;Z)V??
? alloc $()Lio/netty/buffer/ByteBufAllocator;?? ?? io/netty/buffer/ByteBufAllocator? isRemoved? ?? current ()Ljava/lang/Object;??
? java/lang/Object?
readableBytes? ?
R? nioBufferCount? ?
R? allocateOutNetBuf E(Lio/netty/channel/ChannelHandlerContext;II)Lio/netty/buffer/ByteBuf;??
? ?(Lio/netty/buffer/ByteBufAllocator;Ljavax/net/ssl/SSLEngine;Lio/netty/buffer/ByteBuf;Lio/netty/buffer/ByteBuf;)Ljavax/net/ssl/SSLEngineResult;??
? getStatus (()Ljavax/net/ssl/SSLEngineResult$Status;??
#? CLOSED &Ljavax/net/ssl/SSLEngineResult$Status;?? !? 0 1 ?
finishWrap g(Lio/netty/channel/ChannelHandlerContext;Lio/netty/buffer/ByteBuf;Lio/netty/channel/ChannelPromise;ZZ)V??
?
isReadable?
R? remove? ?
? 8$SwitchMap$javax$net$ssl$SSLEngineResult$HandshakeStatus [I?? ? getHandshakeStatus 1()Ljavax/net/ssl/SSLEngineResult$HandshakeStatus;??
#? ordinal? ?
&? runDelegatedTasks? h
? setHandshakeSuccess? h
? %setHandshakeSuccessIfStillHandshaking?
? java/lang/IllegalStateException? Unknown handshake status: ? -(Ljava/lang/Object;)Ljava/lang/StringBuilder; ??
??
? ? buf result Ljavax/net/ssl/SSLEngineResult; inUnwrap out "Lio/netty/buffer/ByteBufAllocator;
needUnwrap
R, U(Ljava/lang/Object;Lio/netty/channel/ChannelPromise;)Lio/netty/channel/ChannelFuture;O? ?? 4(Ljava/lang/Object;)Lio/netty/channel/ChannelFuture;O? ?? M B ? readIfNeeded?
? wrapNonAppData
bytesProduced? ?
#? unwrapNonAppData?
?
bytesConsumed? ?
#? NOT_HANDSHAKING /Ljavax/net/ssl/SSLEngineResult$HandshakeStatus;?? &? readerIndex? ?
R? isDirect?
R? wantsDirectBuffer B io/netty/buffer/CompositeByteBuf internalNioBuffer (II)Ljava/nio/ByteBuffer;
R
nioBuffers ()[Ljava/nio/ByteBuffer;
R directBuffer (I)Lio/netty/buffer/ByteBuf;
?
writeBytes 6(Lio/netty/buffer/ByteBuf;II)Lio/netty/buffer/ByteBuf;
R @ writerIndex ?
R
writableBytes ?
R nioBuffer
R L([Ljava/nio/ByteBuffer;Ljava/nio/ByteBuffer;)Ljavax/net/ssl/SSLEngineResult;?
? skipBytes"
R#
R% /$SwitchMap$javax$net$ssl$SSLEngineResult$Status'? (
!? ensureWritable+
R, in0 out0 Ljava/nio/ByteBuffer; in newDirectIn channelInactive 3 4 4 N B 6 (java/nio/channels/ClosedChannelException8 A(Lio/netty/channel/ChannelHandlerContext;Ljava/lang/Throwable;Z)Vt:
; notifyClosePromise=&
>3
@ exceptionCaught ignoreException (Ljava/lang/Throwable;)ZCD
E + , G -io/netty/util/internal/logging/InternalLoggerI isDebugEnabledKJL ?{} Swallowing a harmless 'connection reset by peer / broken pipe' error that occurred while writing close_notify in response to the peer's close_notifyN channel ()Lio/netty/channel/Channel;PQ ?R debug 9(Ljava/lang/String;Ljava/lang/Object;Ljava/lang/Object;)VTUJV io/netty/channel/ChannelX isActiveZY[ ? ? ?] fireExceptionCaught ?(Ljava/lang/Throwable;)Lio/netty/channel/ChannelHandlerContext;_` ?a java/io/IOExceptionc
H
getMessagef ?
hg / . i java/util/regex/Patternk matcher 3(Ljava/lang/CharSequence;)Ljava/util/regex/Matcher;mn
lo java/util/regex/Matcherq matchess
rt java/lang/Stringv
getStackTrace ()[Ljava/lang/StackTraceElement;xy
hz [Ljava/lang/StackTraceElement;| java/lang/StackTraceElement~ getClassName? ?
?
getMethodName? ?
? io.netty.?
startsWith (Ljava/lang/String;)Z??
w?D equals (Ljava/lang/Object;)Z??
w? - . ? getClass ()Ljava/lang/Class;??
?? getClassLoader *(Ljava/lang/Class;)Ljava/lang/ClassLoader;??
y? java/lang/ClassLoader? loadClass %(Ljava/lang/String;)Ljava/lang/Class;??
?? java/nio/channels/SocketChannel? isAssignableFrom (Ljava/lang/Class;)Z??
V? !java/nio/channels/DatagramChannel? javaVersion? ?
y? 3com.groupbyinc.flux.common.sun.nio.sctp.SctpChannel?
getSuperclass??
V? getName? ?
V? 8Unexpected exception while loading class {} classname {}? ((Ljava/lang/String;[Ljava/lang/Object;)VT?J? clazz Ljava/lang/Class<*>; Ljava/lang/Class; classname Ljava/lang/String;
methodname element Ljava/lang/StackTraceElement; message elements t isEncrypted (Lio/netty/buffer/ByteBuf;)Z *buffer must have at least 5 readable bytes? io/netty/handler/ssl/SslUtils? getEncryptedPacketLength (Lio/netty/buffer/ByteBuf;I)I??
?? buffer decode T(Lio/netty/channel/ChannelHandlerContext;Lio/netty/buffer/ByteBuf;Ljava/util/List;)V O < ? java/util/List? U B ? java/lang/AssertionError?
? i unwrap F(Lio/netty/channel/ChannelHandlerContext;Lio/netty/buffer/ByteBuf;II)Z??
? P B ? gSSLException during trying to call SSLEngine.wrap(...) because of an previous SSLException, ignoring...? *(Ljava/lang/String;Ljava/lang/Throwable;)VT?J? *io/netty/handler/ssl/NotSslRecordException? not an SSL/TLS record: ? io/netty/buffer/ByteBufUtil? hexDump -(Lio/netty/buffer/ByteBuf;)Ljava/lang/String;??
??
? ? newTotalLength ex e ,Lio/netty/handler/ssl/NotSslRecordException; $Ljava/util/List; Ljava/util/List; startOffset endOffset offset totalLength nonSslRecord channelReadComplete discardSomeReadBytes? h
?
flushIfNeeded?
fireChannelReadCompleteL ? config "()Lio/netty/channel/ChannelConfig;Y io/netty/channel/ChannelConfig
isAutoRead
allocate D(Lio/netty/channel/ChannelHandlerContext;I)Lio/netty/buffer/ByteBuf;
v(Lio/netty/handler/ssl/SslHandler;Lio/netty/buffer/ByteBuf;IILio/netty/buffer/ByteBuf;)Ljavax/net/ssl/SSLEngineResult;?
getApplicationBufferSize ? ? fireChannelRead <(Ljava/lang/Object;)Lio/netty/channel/ChannelHandlerContext; ???
unknown handshake status: BUFFER_UNDERFLOW ? !! NEED_UNWRAP#? &$
bufferSize status handshakeStatus produced consumed packet length decoded wrapLater
notifyClosure decodeOut toByteBuffer 2(Lio/netty/buffer/ByteBuf;II)Ljava/nio/ByteBuffer; index len java/lang/InterruptedException5 getDelegatedTask ()Ljava/lang/Runnable;78
?9 java/lang/Runnable; run= h<> java/util/ArrayList@ (I)V VB
AC`??E? #java/util/concurrent/CountDownLatchH
IC Y(Lio/netty/handler/ssl/SslHandler;Ljava/util/List;Ljava/util/concurrent/CountDownLatch;)V VK
L ? getCountO ?
IP awaitR h
IS java/lang/ThreadU
currentThread ()Ljava/lang/Thread;WX
VY interrupt[ h
V\ task Ljava/lang/Runnable; Ljava/lang/InterruptedException; tasks &Ljava/util/List; latch %Ljava/util/concurrent/CountDownLatch; interrupted
trySuccessf?Fg {} HANDSHAKEN: {}i getCipherSuitek ? ?l 0io/netty/handler/ssl/SslHandshakeCompletionEventn SUCCESS 2Lio/netty/handler/ssl/SslHandshakeCompletionEvent;pq or fireUserEventTriggeredt ?u
closeOutboundw h
?x closeInboundz h
?{
?g possible truncation attack~ contains (Ljava/lang/CharSequence;)Z??
w? 0{} SSLEngine.closeInbound() raised an exception.? notifyHandshakeFailure?&
?
tryFailure?DF??u
??
g ,io/netty/handler/ssl/SslCloseCompletionEvent? .Lio/netty/handler/ssl/SslCloseCompletionEvent;p? ??
? V&
??? ?? ?f<
? 'io/netty/channel/ChannelPromiseNotifier? &(Z[Lio/netty/channel/ChannelPromise;)V V?
?? addListener S(Lio/netty/util/concurrent/GenericFutureListener;)Lio/netty/channel/ChannelPromise;??[? safeClose l(Lio/netty/channel/ChannelHandlerContext;Lio/netty/channel/ChannelFuture;Lio/netty/channel/ChannelPromise;)V??
? closeNotifyPromisef
? handlerAdded V
? getUseClientMode?
?? handshake %(Lio/netty/util/concurrent/Promise;)V??
? renegotiate
? i $()Lio/netty/util/concurrent/Promise; ??? E(Lio/netty/util/concurrent/Promise;)Lio/netty/util/concurrent/Future;??
? inEventLoop?? F(Lio/netty/handler/ssl/SslHandler;Lio/netty/util/concurrent/Promise;)V V?
? (Lio/netty/util/concurrent/EventExecutor;
? T(Lio/netty/util/concurrent/GenericFutureListener;)Lio/netty/util/concurrent/Promise;??F?
?? beginHandshake? h
??
? MILLISECONDS? ? ?? schedule `(Ljava/lang/Runnable;JLjava/util/concurrent/TimeUnit;)Lio/netty/util/concurrent/ScheduledFuture;??? J(Lio/netty/handler/ssl/SslHandler;Ljava/util/concurrent/ScheduledFuture;)V V?
? oldHandshakePromise p newHandshakePromise
timeoutFuture )Ljava/util/concurrent/ScheduledFuture<*>; &Ljava/util/concurrent/ScheduledFuture;fL ??
channelActive fireChannelActive?L ?? io/netty/channel/ChannelFuture??H ?(Lio/netty/handler/ssl/SslHandler;Lio/netty/channel/ChannelFuture;Lio/netty/channel/ChannelHandlerContext;Lio/netty/channel/ChannelPromise;)V V?
? $java/util/concurrent/ScheduledFuture? ?(Lio/netty/handler/ssl/SslHandler;Ljava/util/concurrent/ScheduledFuture;Lio/netty/channel/ChannelHandlerContext;Lio/netty/channel/ChannelPromise;)V V?
? R(Lio/netty/util/concurrent/GenericFutureListener;)Lio/netty/channel/ChannelFuture;???? flushFuture Lio/netty/channel/ChannelFuture; addCloseListener D(Lio/netty/channel/ChannelFuture;Lio/netty/channel/ChannelPromise;)V future??? capacity calculateWrapBufferCapacity &(Lio/netty/handler/ssl/SslHandler;II)I??
? pendingBytes
numComponents
access$100 <(Lio/netty/handler/ssl/SslHandler;)Ljavax/net/ssl/SSLEngine; x0
access$200 9(Lio/netty/handler/ssl/SslHandler;)[Ljava/nio/ByteBuffer;
access$30012
x1 x2
access$400 $(Lio/netty/handler/ssl/SslHandler;)I
access$602 %(Lio/netty/handler/ssl/SslHandler;Z)Z
access$700
access$800 1()Lio/netty/util/internal/logging/InternalLogger;
access$900 K(Lio/netty/handler/ssl/SslHandler;)Lio/netty/channel/ChannelHandlerContext; access$1000 access$1100 ()Ljavax/net/ssl/SSLException; 2 1 access$1200 9(Lio/netty/handler/ssl/SslHandler;Ljava/lang/Throwable;)V access$1300??
access$1400 $(Lio/netty/handler/ssl/SslHandler;)J access$1500 W(Lio/netty/handler/ssl/SslHandler;)Lio/netty/handler/ssl/SslHandler$LazyChannelPromise; desiredAssertionStatus#
V$ 4io/netty/util/internal/logging/InternalLoggerFactory& getInstance B(Ljava/lang/Class;)Lio/netty/util/internal/logging/InternalLogger;()
'* )^.*(?:Socket|Datagram|Sctp|Udt)Channel.*$, compile -(Ljava/lang/String;)Ljava/util/regex/Pattern;./
l0 @^.*(?:connection.*(?:reset|closed|abort|broken)|broken.*pipe).*$2 .(Ljava/lang/String;I)Ljava/util/regex/Pattern;.4
l5 SSLEngine closed already7
? ? wrap(...): $io/netty/util/internal/ThrowableUtil< unknownStackTrace O(Ljava/lang/Throwable;Ljava/lang/Class;Ljava/lang/String;)Ljava/lang/Throwable;>?
=@ handshake timed outB handshake(...)D
9 i channelInactive(...)G Signature Code LocalVariableTable LineNumberTable
Deprecated RuntimeVisibleAnnotations
StackMapTable ?()Lio/netty/util/concurrent/Future;
Exceptions LocalVariableTypeTable h(Lio/netty/channel/ChannelHandlerContext;Lio/netty/buffer/ByteBuf;Ljava/util/List;)V }(Lio/netty/util/concurrent/Promise;)Lio/netty/util/concurrent/Future; A(Lio/netty/util/concurrent/Promise;)V
SourceFile InnerClasses ! + , - . / . 0 1 2 1 3 4 B 5 6 7 8 9 : ; <