final class org.xnio.ssl.JsseSslConduitEngine
minor version: 0
major version: 59
flags: flags: (0x0030) ACC_FINAL, ACC_SUPER
this_class: org.xnio.ssl.JsseSslConduitEngine
super_class: java.lang.Object
{
private static final org.jboss.logging.Logger log;
descriptor: Lorg/jboss/logging/Logger;
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
private static final java.lang.String FQCN;
descriptor: Ljava/lang/String;
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
private static final int NEED_WRAP;
descriptor: I
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: 1
private static final int READ_SHUT_DOWN;
descriptor: I
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: 2
private static final int BUFFER_UNDERFLOW;
descriptor: I
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: 4
private static final int READ_FLAGS;
descriptor: I
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
private static final int NEED_UNWRAP;
descriptor: I
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: 65536
private static final int WRITE_SHUT_DOWN;
descriptor: I
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: 131072
private static final int WRITE_COMPLETE;
descriptor: I
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: 262144
private static final int FIRST_HANDSHAKE;
descriptor: I
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: 4194304
private static final int ENGINE_CLOSED;
descriptor: I
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: 8388608
private static final int WRITE_FLAGS;
descriptor: I
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
private static final java.nio.ByteBuffer EMPTY_BUFFER;
descriptor: Ljava/nio/ByteBuffer;
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
private final javax.net.ssl.SSLEngine engine;
descriptor: Ljavax/net/ssl/SSLEngine;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
private final org.xnio.Pooled<java.nio.ByteBuffer> receiveBuffer;
descriptor: Lorg/xnio/Pooled;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
Signature: Lorg/xnio/Pooled<Ljava/nio/ByteBuffer;>;
private final org.xnio.Pooled<java.nio.ByteBuffer> sendBuffer;
descriptor: Lorg/xnio/Pooled;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
Signature: Lorg/xnio/Pooled<Ljava/nio/ByteBuffer;>;
private java.nio.ByteBuffer expandedSendBuffer;
descriptor: Ljava/nio/ByteBuffer;
flags: (0x0002) ACC_PRIVATE
private final org.xnio.Pooled<java.nio.ByteBuffer> readBuffer;
descriptor: Lorg/xnio/Pooled;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
Signature: Lorg/xnio/Pooled<Ljava/nio/ByteBuffer;>;
private final org.xnio.conduits.StreamSinkConduit sinkConduit;
descriptor: Lorg/xnio/conduits/StreamSinkConduit;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
private final org.xnio.conduits.StreamSourceConduit sourceConduit;
descriptor: Lorg/xnio/conduits/StreamSourceConduit;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
private final org.xnio.ssl.JsseSslStreamConnection connection;
descriptor: Lorg/xnio/ssl/JsseSslStreamConnection;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
private volatile int state;
descriptor: I
flags: (0x0042) ACC_PRIVATE, ACC_VOLATILE
private static final java.util.concurrent.atomic.AtomicIntegerFieldUpdater<org.xnio.ssl.JsseSslConduitEngine> stateUpdater;
descriptor: Ljava/util/concurrent/atomic/AtomicIntegerFieldUpdater;
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
Signature: Ljava/util/concurrent/atomic/AtomicIntegerFieldUpdater<Lorg/xnio/ssl/JsseSslConduitEngine;>;
private volatile java.lang.Thread readWaiter;
descriptor: Ljava/lang/Thread;
flags: (0x0042) ACC_PRIVATE, ACC_VOLATILE
private volatile java.lang.Thread writeWaiter;
descriptor: Ljava/lang/Thread;
flags: (0x0042) ACC_PRIVATE, ACC_VOLATILE
private static final java.util.concurrent.atomic.AtomicReferenceFieldUpdater<org.xnio.ssl.JsseSslConduitEngine, java.lang.Thread> readWaiterUpdater;
descriptor: Ljava/util/concurrent/atomic/AtomicReferenceFieldUpdater;
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
Signature: Ljava/util/concurrent/atomic/AtomicReferenceFieldUpdater<Lorg/xnio/ssl/JsseSslConduitEngine;Ljava/lang/Thread;>;
private static final java.util.concurrent.atomic.AtomicReferenceFieldUpdater<org.xnio.ssl.JsseSslConduitEngine, java.lang.Thread> writeWaiterUpdater;
descriptor: Ljava/util/concurrent/atomic/AtomicReferenceFieldUpdater;
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
Signature: Ljava/util/concurrent/atomic/AtomicReferenceFieldUpdater<Lorg/xnio/ssl/JsseSslConduitEngine;Ljava/lang/Thread;>;
private int failureCount;
descriptor: I
flags: (0x0002) ACC_PRIVATE
static final boolean $assertionsDisabled;
descriptor: Z
flags: (0x1018) ACC_STATIC, ACC_FINAL, ACC_SYNTHETIC
private static volatile int[] $SWITCH_TABLE$javax$net$ssl$SSLEngineResult$Status;
descriptor: [I
flags: (0x104a) ACC_PRIVATE, ACC_STATIC, ACC_VOLATILE, ACC_SYNTHETIC
private static volatile int[] $SWITCH_TABLE$javax$net$ssl$SSLEngineResult$HandshakeStatus;
descriptor: [I
flags: (0x104a) ACC_PRIVATE, ACC_STATIC, ACC_VOLATILE, ACC_SYNTHETIC
static void <clinit>();
descriptor: ()V
flags: (0x0008) ACC_STATIC
Code:
stack=3, locals=0, args_size=0
0: ldc Lorg/xnio/ssl/JsseSslConduitEngine;
invokevirtual java.lang.Class.desiredAssertionStatus:()Z
ifne 1
iconst_1
goto 2
StackMap locals:
StackMap stack:
1: iconst_0
StackMap locals:
StackMap stack: int
2: putstatic org.xnio.ssl.JsseSslConduitEngine.$assertionsDisabled:Z
3: ldc "org.xnio.conduits"
invokestatic org.jboss.logging.Logger.getLogger:(Ljava/lang/String;)Lorg/jboss/logging/Logger;
putstatic org.xnio.ssl.JsseSslConduitEngine.log:Lorg/jboss/logging/Logger;
4: ldc Lorg/xnio/ssl/JsseSslConduitEngine;
invokevirtual java.lang.Class.getName:()Ljava/lang/String;
putstatic org.xnio.ssl.JsseSslConduitEngine.FQCN:Ljava/lang/String;
5: iconst_0
bipush 15
invokestatic org.xnio.Bits.intBitMask:(II)I
putstatic org.xnio.ssl.JsseSslConduitEngine.READ_FLAGS:I
6: bipush 16
bipush 31
invokestatic org.xnio.Bits.intBitMask:(II)I
putstatic org.xnio.ssl.JsseSslConduitEngine.WRITE_FLAGS:I
7: iconst_0
invokestatic java.nio.ByteBuffer.allocate:(I)Ljava/nio/ByteBuffer;
putstatic org.xnio.ssl.JsseSslConduitEngine.EMPTY_BUFFER:Ljava/nio/ByteBuffer;
8: ldc Lorg/xnio/ssl/JsseSslConduitEngine;
ldc "state"
invokestatic java.util.concurrent.atomic.AtomicIntegerFieldUpdater.newUpdater:(Ljava/lang/Class;Ljava/lang/String;)Ljava/util/concurrent/atomic/AtomicIntegerFieldUpdater;
putstatic org.xnio.ssl.JsseSslConduitEngine.stateUpdater:Ljava/util/concurrent/atomic/AtomicIntegerFieldUpdater;
9: ldc Lorg/xnio/ssl/JsseSslConduitEngine;
ldc Ljava/lang/Thread;
ldc "readWaiter"
invokestatic java.util.concurrent.atomic.AtomicReferenceFieldUpdater.newUpdater:(Ljava/lang/Class;Ljava/lang/Class;Ljava/lang/String;)Ljava/util/concurrent/atomic/AtomicReferenceFieldUpdater;
putstatic org.xnio.ssl.JsseSslConduitEngine.readWaiterUpdater:Ljava/util/concurrent/atomic/AtomicReferenceFieldUpdater;
10: ldc Lorg/xnio/ssl/JsseSslConduitEngine;
ldc Ljava/lang/Thread;
ldc "writeWaiter"
invokestatic java.util.concurrent.atomic.AtomicReferenceFieldUpdater.newUpdater:(Ljava/lang/Class;Ljava/lang/Class;Ljava/lang/String;)Ljava/util/concurrent/atomic/AtomicReferenceFieldUpdater;
putstatic org.xnio.ssl.JsseSslConduitEngine.writeWaiterUpdater:Ljava/util/concurrent/atomic/AtomicReferenceFieldUpdater;
return
LocalVariableTable:
Start End Slot Name Signature
void <init>(org.xnio.ssl.JsseSslStreamConnection, org.xnio.conduits.StreamSinkConduit, org.xnio.conduits.StreamSourceConduit, javax.net.ssl.SSLEngine, org.xnio.Pool<java.nio.ByteBuffer>, org.xnio.Pool<java.nio.ByteBuffer>);
descriptor: (Lorg/xnio/ssl/JsseSslStreamConnection;Lorg/xnio/conduits/StreamSinkConduit;Lorg/xnio/conduits/StreamSourceConduit;Ljavax/net/ssl/SSLEngine;Lorg/xnio/Pool;Lorg/xnio/Pool;)V
flags: (0x0000)
Code:
stack=2, locals=12, args_size=7
start local 0 start local 1 start local 2 start local 3 start local 4 start local 5 start local 6 0: aload 0
invokespecial java.lang.Object.<init>:()V
1: aload 0
iconst_0
putfield org.xnio.ssl.JsseSslConduitEngine.failureCount:I
2: aload 1
ifnonnull 4
3: getstatic org.xnio._private.Messages.msg:Lorg/xnio/_private/Messages;
ldc "connection"
invokeinterface org.xnio._private.Messages.nullParameter:(Ljava/lang/String;)Ljava/lang/IllegalArgumentException;
athrow
4: StackMap locals: org.xnio.ssl.JsseSslConduitEngine org.xnio.ssl.JsseSslStreamConnection org.xnio.conduits.StreamSinkConduit org.xnio.conduits.StreamSourceConduit javax.net.ssl.SSLEngine org.xnio.Pool org.xnio.Pool
StackMap stack:
aload 2
ifnonnull 6
5: getstatic org.xnio._private.Messages.msg:Lorg/xnio/_private/Messages;
ldc "sinkConduit"
invokeinterface org.xnio._private.Messages.nullParameter:(Ljava/lang/String;)Ljava/lang/IllegalArgumentException;
athrow
6: StackMap locals:
StackMap stack:
aload 3
ifnonnull 8
7: getstatic org.xnio._private.Messages.msg:Lorg/xnio/_private/Messages;
ldc "sourceConduit"
invokeinterface org.xnio._private.Messages.nullParameter:(Ljava/lang/String;)Ljava/lang/IllegalArgumentException;
athrow
8: StackMap locals:
StackMap stack:
aload 4
ifnonnull 10
9: getstatic org.xnio._private.Messages.msg:Lorg/xnio/_private/Messages;
ldc "engine"
invokeinterface org.xnio._private.Messages.nullParameter:(Ljava/lang/String;)Ljava/lang/IllegalArgumentException;
athrow
10: StackMap locals:
StackMap stack:
aload 5
ifnonnull 12
11: getstatic org.xnio._private.Messages.msg:Lorg/xnio/_private/Messages;
ldc "socketBufferPool"
invokeinterface org.xnio._private.Messages.nullParameter:(Ljava/lang/String;)Ljava/lang/IllegalArgumentException;
athrow
12: StackMap locals:
StackMap stack:
aload 6
ifnonnull 14
13: getstatic org.xnio._private.Messages.msg:Lorg/xnio/_private/Messages;
ldc "applicationBufferPool"
invokeinterface org.xnio._private.Messages.nullParameter:(Ljava/lang/String;)Ljava/lang/IllegalArgumentException;
athrow
14: StackMap locals:
StackMap stack:
aload 0
aload 1
putfield org.xnio.ssl.JsseSslConduitEngine.connection:Lorg/xnio/ssl/JsseSslStreamConnection;
15: aload 0
aload 2
putfield org.xnio.ssl.JsseSslConduitEngine.sinkConduit:Lorg/xnio/conduits/StreamSinkConduit;
16: aload 0
aload 3
putfield org.xnio.ssl.JsseSslConduitEngine.sourceConduit:Lorg/xnio/conduits/StreamSourceConduit;
17: aload 0
aload 4
putfield org.xnio.ssl.JsseSslConduitEngine.engine:Ljavax/net/ssl/SSLEngine;
18: aload 0
ldc 4194304
putfield org.xnio.ssl.JsseSslConduitEngine.state:I
19: aload 4
invokevirtual javax.net.ssl.SSLEngine.getSession:()Ljavax/net/ssl/SSLSession;
astore 7
start local 7 20: aload 7
invokeinterface javax.net.ssl.SSLSession.getPacketBufferSize:()I
istore 8
start local 8 21: iconst_0
istore 9
start local 9 22: aload 0
aload 5
invokeinterface org.xnio.Pool.allocate:()Lorg/xnio/Pooled;
putfield org.xnio.ssl.JsseSslConduitEngine.receiveBuffer:Lorg/xnio/Pooled;
23: aload 0
getfield org.xnio.ssl.JsseSslConduitEngine.receiveBuffer:Lorg/xnio/Pooled;
invokeinterface org.xnio.Pooled.getResource:()Ljava/lang/Object;
checkcast java.nio.ByteBuffer
invokevirtual java.nio.ByteBuffer.flip:()Ljava/nio/Buffer;
pop
24: aload 0
aload 5
invokeinterface org.xnio.Pool.allocate:()Lorg/xnio/Pooled;
putfield org.xnio.ssl.JsseSslConduitEngine.sendBuffer:Lorg/xnio/Pooled;
25: aload 0
getfield org.xnio.ssl.JsseSslConduitEngine.receiveBuffer:Lorg/xnio/Pooled;
invokeinterface org.xnio.Pooled.getResource:()Ljava/lang/Object;
checkcast java.nio.ByteBuffer
invokevirtual java.nio.ByteBuffer.capacity:()I
iload 8
if_icmplt 26
aload 0
getfield org.xnio.ssl.JsseSslConduitEngine.sendBuffer:Lorg/xnio/Pooled;
invokeinterface org.xnio.Pooled.getResource:()Ljava/lang/Object;
checkcast java.nio.ByteBuffer
invokevirtual java.nio.ByteBuffer.capacity:()I
iload 8
if_icmpge 27
26: StackMap locals: javax.net.ssl.SSLSession int int
StackMap stack:
aload 0
iload 8
invokestatic java.nio.ByteBuffer.allocate:(I)Ljava/nio/ByteBuffer;
putfield org.xnio.ssl.JsseSslConduitEngine.expandedSendBuffer:Ljava/nio/ByteBuffer;
27: StackMap locals:
StackMap stack:
aload 0
aload 6
invokeinterface org.xnio.Pool.allocate:()Lorg/xnio/Pooled;
putfield org.xnio.ssl.JsseSslConduitEngine.readBuffer:Lorg/xnio/Pooled;
28: iconst_1
istore 9
29: goto 33
StackMap locals:
StackMap stack: java.lang.Throwable
30: astore 10
31: iload 9
ifne 32
aload 0
getfield org.xnio.ssl.JsseSslConduitEngine.sendBuffer:Lorg/xnio/Pooled;
invokeinterface org.xnio.Pooled.free:()V
32: StackMap locals: java.lang.Throwable
StackMap stack:
aload 10
athrow
33: StackMap locals:
StackMap stack:
iload 9
ifne 38
aload 0
getfield org.xnio.ssl.JsseSslConduitEngine.sendBuffer:Lorg/xnio/Pooled;
invokeinterface org.xnio.Pooled.free:()V
34: goto 38
StackMap locals:
StackMap stack: java.lang.Throwable
35: astore 11
36: iload 9
ifne 37
aload 0
getfield org.xnio.ssl.JsseSslConduitEngine.receiveBuffer:Lorg/xnio/Pooled;
invokeinterface org.xnio.Pooled.free:()V
37: StackMap locals: org.xnio.ssl.JsseSslConduitEngine org.xnio.ssl.JsseSslStreamConnection org.xnio.conduits.StreamSinkConduit org.xnio.conduits.StreamSourceConduit javax.net.ssl.SSLEngine org.xnio.Pool org.xnio.Pool javax.net.ssl.SSLSession int int top java.lang.Throwable
StackMap stack:
aload 11
athrow
38: StackMap locals: org.xnio.ssl.JsseSslConduitEngine org.xnio.ssl.JsseSslStreamConnection org.xnio.conduits.StreamSinkConduit org.xnio.conduits.StreamSourceConduit javax.net.ssl.SSLEngine org.xnio.Pool org.xnio.Pool javax.net.ssl.SSLSession int int
StackMap stack:
iload 9
ifne 39
aload 0
getfield org.xnio.ssl.JsseSslConduitEngine.receiveBuffer:Lorg/xnio/Pooled;
invokeinterface org.xnio.Pooled.free:()V
39: StackMap locals:
StackMap stack:
return
end local 9 end local 8 end local 7 end local 6 end local 5 end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 40 0 this Lorg/xnio/ssl/JsseSslConduitEngine;
0 40 1 connection Lorg/xnio/ssl/JsseSslStreamConnection;
0 40 2 sinkConduit Lorg/xnio/conduits/StreamSinkConduit;
0 40 3 sourceConduit Lorg/xnio/conduits/StreamSourceConduit;
0 40 4 engine Ljavax/net/ssl/SSLEngine;
0 40 5 socketBufferPool Lorg/xnio/Pool<Ljava/nio/ByteBuffer;>;
0 40 6 applicationBufferPool Lorg/xnio/Pool<Ljava/nio/ByteBuffer;>;
20 40 7 session Ljavax/net/ssl/SSLSession;
21 40 8 packetBufferSize I
22 40 9 ok Z
Exception table:
from to target type
25 30 30 any
23 35 35 any
Signature: (Lorg/xnio/ssl/JsseSslStreamConnection;Lorg/xnio/conduits/StreamSinkConduit;Lorg/xnio/conduits/StreamSourceConduit;Ljavax/net/ssl/SSLEngine;Lorg/xnio/Pool<Ljava/nio/ByteBuffer;>;Lorg/xnio/Pool<Ljava/nio/ByteBuffer;>;)V
MethodParameters:
Name Flags
connection final
sinkConduit final
sourceConduit final
engine final
socketBufferPool final
applicationBufferPool final
public void beginHandshake();
descriptor: ()V
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield org.xnio.ssl.JsseSslConduitEngine.engine:Ljavax/net/ssl/SSLEngine;
invokevirtual javax.net.ssl.SSLEngine.beginHandshake:()V
1: return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lorg/xnio/ssl/JsseSslConduitEngine;
Exceptions:
throws java.io.IOException
public javax.net.ssl.SSLSession getSession();
descriptor: ()Ljavax/net/ssl/SSLSession;
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield org.xnio.ssl.JsseSslConduitEngine.engine:Ljavax/net/ssl/SSLEngine;
invokevirtual javax.net.ssl.SSLEngine.getSession:()Ljavax/net/ssl/SSLSession;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/xnio/ssl/JsseSslConduitEngine;
public int wrap(java.nio.ByteBuffer);
descriptor: (Ljava/nio/ByteBuffer;)I
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=2, args_size=2
start local 0 start local 1 0: aload 0
aload 1
iconst_0
invokevirtual org.xnio.ssl.JsseSslConduitEngine.wrap:(Ljava/nio/ByteBuffer;Z)I
ireturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/xnio/ssl/JsseSslConduitEngine;
0 1 1 src Ljava/nio/ByteBuffer;
Exceptions:
throws java.io.IOException
MethodParameters:
Name Flags
src final
public long wrap(java.nio.ByteBuffer[], int, int);
descriptor: ([Ljava/nio/ByteBuffer;II)J
flags: (0x0001) ACC_PUBLIC
Code:
stack=6, locals=9, args_size=4
start local 0 start local 1 start local 2 start local 3 0: getstatic org.xnio.ssl.JsseSslConduitEngine.$assertionsDisabled:Z
ifne 1
aload 0
invokevirtual org.xnio.ssl.JsseSslConduitEngine.getWrapLock:()Ljava/lang/Object;
invokestatic java.lang.Thread.holdsLock:(Ljava/lang/Object;)Z
ifeq 1
new java.lang.AssertionError
dup
invokespecial java.lang.AssertionError.<init>:()V
athrow
1: StackMap locals:
StackMap stack:
getstatic org.xnio.ssl.JsseSslConduitEngine.$assertionsDisabled:Z
ifne 2
aload 0
invokevirtual org.xnio.ssl.JsseSslConduitEngine.getUnwrapLock:()Ljava/lang/Object;
invokestatic java.lang.Thread.holdsLock:(Ljava/lang/Object;)Z
ifeq 2
new java.lang.AssertionError
dup
invokespecial java.lang.AssertionError.<init>:()V
athrow
2: StackMap locals:
StackMap stack:
iload 3
iconst_1
if_icmpge 4
3: lconst_0
lreturn
4: StackMap locals:
StackMap stack:
aload 0
getfield org.xnio.ssl.JsseSslConduitEngine.state:I
ldc 262144
invokestatic org.xnio.Bits.allAreSet:(II)Z
ifeq 6
5: new java.nio.channels.ClosedChannelException
dup
invokespecial java.nio.channels.ClosedChannelException.<init>:()V
athrow
6: StackMap locals:
StackMap stack:
lconst_0
lstore 4
start local 4 7: StackMap locals: long
StackMap stack:
aload 0
invokevirtual org.xnio.ssl.JsseSslConduitEngine.getWrapLock:()Ljava/lang/Object;
dup
astore 8
monitorenter
8: aload 0
aload 0
aload 1
iload 2
iload 3
aload 0
invokevirtual org.xnio.ssl.JsseSslConduitEngine.getSendBuffer:()Ljava/nio/ByteBuffer;
invokevirtual org.xnio.ssl.JsseSslConduitEngine.engineWrap:([Ljava/nio/ByteBuffer;IILjava/nio/ByteBuffer;)Ljavax/net/ssl/SSLEngineResult;
dup
astore 7
start local 7 9: iconst_0
invokevirtual org.xnio.ssl.JsseSslConduitEngine.handleWrapResult:(Ljavax/net/ssl/SSLEngineResult;Z)Z
istore 6
start local 6 10: lload 4
aload 7
invokevirtual javax.net.ssl.SSLEngineResult.bytesConsumed:()I
i2l
ladd
lstore 4
11: aload 8
monitorexit
12: goto 15
end local 7 end local 6 StackMap locals: org.xnio.ssl.JsseSslConduitEngine java.nio.ByteBuffer[] int int long top top java.lang.Object
StackMap stack: java.lang.Throwable
13: aload 8
monitorexit
14: athrow
start local 6 start local 7 15: StackMap locals: org.xnio.ssl.JsseSslConduitEngine java.nio.ByteBuffer[] int int long int javax.net.ssl.SSLEngineResult
StackMap stack:
iload 6
ifeq 17
aload 0
aload 7
iconst_1
invokevirtual org.xnio.ssl.JsseSslConduitEngine.handleHandshake:(Ljavax/net/ssl/SSLEngineResult;Z)Z
ifne 16
aload 0
invokevirtual org.xnio.ssl.JsseSslConduitEngine.isUnwrapNeeded:()Z
ifne 17
aload 1
iload 2
iload 3
invokestatic org.xnio.Buffers.hasRemaining:([Ljava/nio/Buffer;II)Z
ifeq 17
StackMap locals:
StackMap stack:
16: iconst_1
goto 18
StackMap locals:
StackMap stack:
17: iconst_0
StackMap locals:
StackMap stack: int
18: istore 6
end local 7 19: iload 6
ifne 7
20: goto 31
end local 6 StackMap locals: org.xnio.ssl.JsseSslConduitEngine java.nio.ByteBuffer[] int int long
StackMap stack: javax.net.ssl.SSLHandshakeException
21: astore 7
start local 7 22: aload 0
invokevirtual org.xnio.ssl.JsseSslConduitEngine.getWrapLock:()Ljava/lang/Object;
dup
astore 8
monitorenter
23: aload 0
getfield org.xnio.ssl.JsseSslConduitEngine.engine:Ljavax/net/ssl/SSLEngine;
getstatic org.xnio.ssl.JsseSslConduitEngine.EMPTY_BUFFER:Ljava/nio/ByteBuffer;
aload 0
invokevirtual org.xnio.ssl.JsseSslConduitEngine.getSendBuffer:()Ljava/nio/ByteBuffer;
invokevirtual javax.net.ssl.SSLEngine.wrap:(Ljava/nio/ByteBuffer;Ljava/nio/ByteBuffer;)Ljavax/net/ssl/SSLEngineResult;
pop
24: aload 0
invokevirtual org.xnio.ssl.JsseSslConduitEngine.doFlush:()Z
pop
25: aload 8
monitorexit
26: goto 30
StackMap locals: org.xnio.ssl.JsseSslConduitEngine java.nio.ByteBuffer[] int int long top javax.net.ssl.SSLHandshakeException java.lang.Object
StackMap stack: java.lang.Throwable
27: aload 8
monitorexit
28: athrow
29: StackMap locals: org.xnio.ssl.JsseSslConduitEngine java.nio.ByteBuffer[] int int long top javax.net.ssl.SSLHandshakeException
StackMap stack: java.io.IOException
pop
30: StackMap locals:
StackMap stack:
aload 7
athrow
end local 7 start local 6 31: StackMap locals: org.xnio.ssl.JsseSslConduitEngine java.nio.ByteBuffer[] int int long int
StackMap stack:
lload 4
lreturn
end local 6 end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 32 0 this Lorg/xnio/ssl/JsseSslConduitEngine;
0 32 1 srcs [Ljava/nio/ByteBuffer;
0 32 2 offset I
0 32 3 length I
7 32 4 bytesConsumed J
10 13 6 run Z
15 21 6 run Z
31 32 6 run Z
9 13 7 result Ljavax/net/ssl/SSLEngineResult;
15 19 7 result Ljavax/net/ssl/SSLEngineResult;
22 31 7 e Ljavax/net/ssl/SSLHandshakeException;
Exception table:
from to target type
8 12 13 any
13 14 13 any
7 20 21 Class javax.net.ssl.SSLHandshakeException
23 26 27 any
27 28 27 any
22 29 29 Class java.io.IOException
Exceptions:
throws java.io.IOException
MethodParameters:
Name Flags
srcs final
offset final
length final
public java.nio.ByteBuffer getWrappedBuffer();
descriptor: ()Ljava/nio/ByteBuffer;
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=1, args_size=1
start local 0 0: getstatic org.xnio.ssl.JsseSslConduitEngine.$assertionsDisabled:Z
ifne 1
aload 0
invokevirtual org.xnio.ssl.JsseSslConduitEngine.getWrapLock:()Ljava/lang/Object;
invokestatic java.lang.Thread.holdsLock:(Ljava/lang/Object;)Z
ifne 1
new java.lang.AssertionError
dup
invokespecial java.lang.AssertionError.<init>:()V
athrow
1: StackMap locals:
StackMap stack:
getstatic org.xnio.ssl.JsseSslConduitEngine.$assertionsDisabled:Z
ifne 2
aload 0
invokevirtual org.xnio.ssl.JsseSslConduitEngine.getUnwrapLock:()Ljava/lang/Object;
invokestatic java.lang.Thread.holdsLock:(Ljava/lang/Object;)Z
ifeq 2
new java.lang.AssertionError
dup
invokespecial java.lang.AssertionError.<init>:()V
athrow
2: StackMap locals:
StackMap stack:
getstatic org.xnio.ssl.JsseSslConduitEngine.stateUpdater:Ljava/util/concurrent/atomic/AtomicIntegerFieldUpdater;
aload 0
invokevirtual java.util.concurrent.atomic.AtomicIntegerFieldUpdater.get:(Ljava/lang/Object;)I
ldc 8388608
invokestatic org.xnio.Bits.allAreSet:(II)Z
ifeq 3
getstatic org.xnio.Buffers.EMPTY_BYTE_BUFFER:Ljava/nio/ByteBuffer;
goto 4
StackMap locals:
StackMap stack:
3: aload 0
invokevirtual org.xnio.ssl.JsseSslConduitEngine.getSendBuffer:()Ljava/nio/ByteBuffer;
StackMap locals:
StackMap stack: java.nio.ByteBuffer
4: areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 5 0 this Lorg/xnio/ssl/JsseSslConduitEngine;
public java.lang.Object getWrapLock();
descriptor: ()Ljava/lang/Object;
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield org.xnio.ssl.JsseSslConduitEngine.sendBuffer:Lorg/xnio/Pooled;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/xnio/ssl/JsseSslConduitEngine;
private int wrap(java.nio.ByteBuffer, boolean);
descriptor: (Ljava/nio/ByteBuffer;Z)I
flags: (0x0002) ACC_PRIVATE
Code:
stack=4, locals=7, args_size=3
start local 0 start local 1 start local 2 0: getstatic org.xnio.ssl.JsseSslConduitEngine.$assertionsDisabled:Z
ifne 1
aload 0
invokevirtual org.xnio.ssl.JsseSslConduitEngine.getWrapLock:()Ljava/lang/Object;
invokestatic java.lang.Thread.holdsLock:(Ljava/lang/Object;)Z
ifeq 1
new java.lang.AssertionError
dup
invokespecial java.lang.AssertionError.<init>:()V
athrow
1: StackMap locals:
StackMap stack:
getstatic org.xnio.ssl.JsseSslConduitEngine.$assertionsDisabled:Z
ifne 2
aload 0
invokevirtual org.xnio.ssl.JsseSslConduitEngine.getUnwrapLock:()Ljava/lang/Object;
invokestatic java.lang.Thread.holdsLock:(Ljava/lang/Object;)Z
ifeq 2
new java.lang.AssertionError
dup
invokespecial java.lang.AssertionError.<init>:()V
athrow
2: StackMap locals:
StackMap stack:
aload 0
getfield org.xnio.ssl.JsseSslConduitEngine.state:I
ldc 262144
invokestatic org.xnio.Bits.allAreSet:(II)Z
ifeq 4
3: new java.nio.channels.ClosedChannelException
dup
invokespecial java.nio.channels.ClosedChannelException.<init>:()V
athrow
4: StackMap locals:
StackMap stack:
aload 0
ldc 4194304
invokevirtual org.xnio.ssl.JsseSslConduitEngine.clearFlags:(I)I
pop
5: iconst_0
istore 3
start local 3 6: StackMap locals: int
StackMap stack:
aload 0
invokevirtual org.xnio.ssl.JsseSslConduitEngine.getWrapLock:()Ljava/lang/Object;
dup
astore 6
monitorenter
7: aload 0
aload 0
aload 1
aload 0
invokevirtual org.xnio.ssl.JsseSslConduitEngine.getSendBuffer:()Ljava/nio/ByteBuffer;
invokevirtual org.xnio.ssl.JsseSslConduitEngine.engineWrap:(Ljava/nio/ByteBuffer;Ljava/nio/ByteBuffer;)Ljavax/net/ssl/SSLEngineResult;
dup
astore 5
start local 5 8: iload 2
invokevirtual org.xnio.ssl.JsseSslConduitEngine.handleWrapResult:(Ljavax/net/ssl/SSLEngineResult;Z)Z
istore 4
start local 4 9: iload 3
aload 5
invokevirtual javax.net.ssl.SSLEngineResult.bytesConsumed:()I
iadd
istore 3
10: aload 6
monitorexit
11: goto 14
end local 5 end local 4 StackMap locals: org.xnio.ssl.JsseSslConduitEngine java.nio.ByteBuffer int int top top java.lang.Object
StackMap stack: java.lang.Throwable
12: aload 6
monitorexit
13: athrow
start local 4 start local 5 14: StackMap locals: org.xnio.ssl.JsseSslConduitEngine java.nio.ByteBuffer int int int javax.net.ssl.SSLEngineResult
StackMap stack:
iload 4
ifeq 16
iload 3
ifne 16
aload 0
aload 5
iconst_1
invokevirtual org.xnio.ssl.JsseSslConduitEngine.handleHandshake:(Ljavax/net/ssl/SSLEngineResult;Z)Z
ifne 15
aload 0
invokevirtual org.xnio.ssl.JsseSslConduitEngine.isUnwrapNeeded:()Z
ifne 16
aload 1
invokevirtual java.nio.ByteBuffer.hasRemaining:()Z
ifeq 16
StackMap locals:
StackMap stack:
15: iconst_1
goto 17
StackMap locals:
StackMap stack:
16: iconst_0
StackMap locals:
StackMap stack: int
17: istore 4
end local 5 18: iload 4
ifne 6
19: goto 30
end local 4 StackMap locals: org.xnio.ssl.JsseSslConduitEngine java.nio.ByteBuffer int int
StackMap stack: javax.net.ssl.SSLHandshakeException
20: astore 5
start local 5 21: aload 0
invokevirtual org.xnio.ssl.JsseSslConduitEngine.getWrapLock:()Ljava/lang/Object;
dup
astore 6
monitorenter
22: aload 0
getfield org.xnio.ssl.JsseSslConduitEngine.engine:Ljavax/net/ssl/SSLEngine;
getstatic org.xnio.ssl.JsseSslConduitEngine.EMPTY_BUFFER:Ljava/nio/ByteBuffer;
aload 0
invokevirtual org.xnio.ssl.JsseSslConduitEngine.getSendBuffer:()Ljava/nio/ByteBuffer;
invokevirtual javax.net.ssl.SSLEngine.wrap:(Ljava/nio/ByteBuffer;Ljava/nio/ByteBuffer;)Ljavax/net/ssl/SSLEngineResult;
pop
23: aload 0
invokevirtual org.xnio.ssl.JsseSslConduitEngine.doFlush:()Z
pop
24: aload 6
monitorexit
25: goto 29
StackMap locals: org.xnio.ssl.JsseSslConduitEngine java.nio.ByteBuffer int int top javax.net.ssl.SSLHandshakeException java.lang.Object
StackMap stack: java.lang.Throwable
26: aload 6
monitorexit
27: athrow
28: StackMap locals: org.xnio.ssl.JsseSslConduitEngine java.nio.ByteBuffer int int top javax.net.ssl.SSLHandshakeException
StackMap stack: java.io.IOException
pop
29: StackMap locals:
StackMap stack:
aload 5
athrow
end local 5 start local 4 30: StackMap locals: org.xnio.ssl.JsseSslConduitEngine java.nio.ByteBuffer int int int
StackMap stack:
iload 3
ireturn
end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 31 0 this Lorg/xnio/ssl/JsseSslConduitEngine;
0 31 1 src Ljava/nio/ByteBuffer;
0 31 2 isCloseExpected Z
6 31 3 bytesConsumed I
9 12 4 run Z
14 20 4 run Z
30 31 4 run Z
8 12 5 result Ljavax/net/ssl/SSLEngineResult;
14 18 5 result Ljavax/net/ssl/SSLEngineResult;
21 30 5 e Ljavax/net/ssl/SSLHandshakeException;
Exception table:
from to target type
7 11 12 any
12 13 12 any
6 19 20 Class javax.net.ssl.SSLHandshakeException
22 25 26 any
26 27 26 any
21 28 28 Class java.io.IOException
Exceptions:
throws java.io.IOException
MethodParameters:
Name Flags
src final
isCloseExpected
private javax.net.ssl.SSLEngineResult engineWrap(java.nio.ByteBuffer[], int, int, java.nio.ByteBuffer);
descriptor: ([Ljava/nio/ByteBuffer;IILjava/nio/ByteBuffer;)Ljavax/net/ssl/SSLEngineResult;
flags: (0x0002) ACC_PRIVATE
Code:
stack=7, locals=6, args_size=5
start local 0 start local 1 start local 2 start local 3 start local 4 0: getstatic org.xnio.ssl.JsseSslConduitEngine.$assertionsDisabled:Z
ifne 1
aload 0
invokevirtual org.xnio.ssl.JsseSslConduitEngine.getWrapLock:()Ljava/lang/Object;
invokestatic java.lang.Thread.holdsLock:(Ljava/lang/Object;)Z
ifne 1
new java.lang.AssertionError
dup
invokespecial java.lang.AssertionError.<init>:()V
athrow
1: StackMap locals:
StackMap stack:
getstatic org.xnio.ssl.JsseSslConduitEngine.$assertionsDisabled:Z
ifne 2
aload 0
invokevirtual org.xnio.ssl.JsseSslConduitEngine.getUnwrapLock:()Ljava/lang/Object;
invokestatic java.lang.Thread.holdsLock:(Ljava/lang/Object;)Z
ifeq 2
new java.lang.AssertionError
dup
invokespecial java.lang.AssertionError.<init>:()V
athrow
2: StackMap locals:
StackMap stack:
getstatic org.xnio.ssl.JsseSslConduitEngine.log:Lorg/jboss/logging/Logger;
getstatic org.xnio.ssl.JsseSslConduitEngine.FQCN:Ljava/lang/String;
getstatic org.jboss.logging.Logger$Level.TRACE:Lorg/jboss/logging/Logger$Level;
aconst_null
ldc "Wrapping %s into %s"
aload 1
aload 4
invokevirtual org.jboss.logging.Logger.logf:(Ljava/lang/String;Lorg/jboss/logging/Logger$Level;Ljava/lang/Throwable;Ljava/lang/String;Ljava/lang/Object;Ljava/lang/Object;)V
3: aload 0
getfield org.xnio.ssl.JsseSslConduitEngine.engine:Ljavax/net/ssl/SSLEngine;
aload 1
iload 2
iload 3
aload 4
invokevirtual javax.net.ssl.SSLEngine.wrap:([Ljava/nio/ByteBuffer;IILjava/nio/ByteBuffer;)Ljavax/net/ssl/SSLEngineResult;
4: areturn
5: StackMap locals:
StackMap stack: javax.net.ssl.SSLHandshakeException
astore 5
start local 5 6: aload 0
getfield org.xnio.ssl.JsseSslConduitEngine.engine:Ljavax/net/ssl/SSLEngine;
aload 1
iload 2
iload 3
aload 4
invokevirtual javax.net.ssl.SSLEngine.wrap:([Ljava/nio/ByteBuffer;IILjava/nio/ByteBuffer;)Ljavax/net/ssl/SSLEngineResult;
pop
7: aload 0
invokevirtual org.xnio.ssl.JsseSslConduitEngine.doFlush:()Z
pop
8: goto 10
StackMap locals: org.xnio.ssl.JsseSslConduitEngine java.nio.ByteBuffer[] int int java.nio.ByteBuffer javax.net.ssl.SSLHandshakeException
StackMap stack: java.io.IOException
9: pop
10: StackMap locals:
StackMap stack:
aload 5
athrow
end local 5 end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 11 0 this Lorg/xnio/ssl/JsseSslConduitEngine;
0 11 1 srcs [Ljava/nio/ByteBuffer;
0 11 2 offset I
0 11 3 length I
0 11 4 dest Ljava/nio/ByteBuffer;
6 11 5 e Ljavax/net/ssl/SSLHandshakeException;
Exception table:
from to target type
3 4 5 Class javax.net.ssl.SSLHandshakeException
6 8 9 Class java.io.IOException
Exceptions:
throws javax.net.ssl.SSLException
MethodParameters:
Name Flags
srcs final
offset final
length final
dest final
private javax.net.ssl.SSLEngineResult engineWrap(java.nio.ByteBuffer, java.nio.ByteBuffer);
descriptor: (Ljava/nio/ByteBuffer;Ljava/nio/ByteBuffer;)Ljavax/net/ssl/SSLEngineResult;
flags: (0x0002) ACC_PRIVATE
Code:
stack=7, locals=3, args_size=3
start local 0 start local 1 start local 2 0: getstatic org.xnio.ssl.JsseSslConduitEngine.$assertionsDisabled:Z
ifne 1
aload 0
invokevirtual org.xnio.ssl.JsseSslConduitEngine.getWrapLock:()Ljava/lang/Object;
invokestatic java.lang.Thread.holdsLock:(Ljava/lang/Object;)Z
ifne 1
new java.lang.AssertionError
dup
invokespecial java.lang.AssertionError.<init>:()V
athrow
1: StackMap locals:
StackMap stack:
getstatic org.xnio.ssl.JsseSslConduitEngine.$assertionsDisabled:Z
ifne 2
aload 0
invokevirtual org.xnio.ssl.JsseSslConduitEngine.getUnwrapLock:()Ljava/lang/Object;
invokestatic java.lang.Thread.holdsLock:(Ljava/lang/Object;)Z
ifeq 2
new java.lang.AssertionError
dup
invokespecial java.lang.AssertionError.<init>:()V
athrow
2: StackMap locals:
StackMap stack:
getstatic org.xnio.ssl.JsseSslConduitEngine.log:Lorg/jboss/logging/Logger;
getstatic org.xnio.ssl.JsseSslConduitEngine.FQCN:Ljava/lang/String;
getstatic org.jboss.logging.Logger$Level.TRACE:Lorg/jboss/logging/Logger$Level;
aconst_null
ldc "Wrapping %s into %s"
aload 1
aload 2
invokevirtual org.jboss.logging.Logger.logf:(Ljava/lang/String;Lorg/jboss/logging/Logger$Level;Ljava/lang/Throwable;Ljava/lang/String;Ljava/lang/Object;Ljava/lang/Object;)V
3: aload 0
getfield org.xnio.ssl.JsseSslConduitEngine.engine:Ljavax/net/ssl/SSLEngine;
aload 1
aload 2
invokevirtual javax.net.ssl.SSLEngine.wrap:(Ljava/nio/ByteBuffer;Ljava/nio/ByteBuffer;)Ljavax/net/ssl/SSLEngineResult;
areturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Lorg/xnio/ssl/JsseSslConduitEngine;
0 4 1 src Ljava/nio/ByteBuffer;
0 4 2 dest Ljava/nio/ByteBuffer;
Exceptions:
throws javax.net.ssl.SSLException
MethodParameters:
Name Flags
src final
dest final
private boolean handleWrapResult(javax.net.ssl.SSLEngineResult, boolean);
descriptor: (Ljavax/net/ssl/SSLEngineResult;Z)Z
flags: (0x0002) ACC_PRIVATE
Code:
stack=6, locals=6, args_size=3
start local 0 start local 1 start local 2 0: getstatic org.xnio.ssl.JsseSslConduitEngine.$assertionsDisabled:Z
ifne 1
aload 0
invokevirtual org.xnio.ssl.JsseSslConduitEngine.getWrapLock:()Ljava/lang/Object;
invokestatic java.lang.Thread.holdsLock:(Ljava/lang/Object;)Z
ifne 1
new java.lang.AssertionError
dup
invokespecial java.lang.AssertionError.<init>:()V
athrow
1: StackMap locals:
StackMap stack:
getstatic org.xnio.ssl.JsseSslConduitEngine.$assertionsDisabled:Z
ifne 2
aload 0
invokevirtual org.xnio.ssl.JsseSslConduitEngine.getUnwrapLock:()Ljava/lang/Object;
invokestatic java.lang.Thread.holdsLock:(Ljava/lang/Object;)Z
ifeq 2
new java.lang.AssertionError
dup
invokespecial java.lang.AssertionError.<init>:()V
athrow
2: StackMap locals:
StackMap stack:
getstatic org.xnio.ssl.JsseSslConduitEngine.log:Lorg/jboss/logging/Logger;
getstatic org.xnio.ssl.JsseSslConduitEngine.FQCN:Ljava/lang/String;
getstatic org.jboss.logging.Logger$Level.TRACE:Lorg/jboss/logging/Logger$Level;
aconst_null
ldc "Wrap result is %s"
aload 1
invokevirtual org.jboss.logging.Logger.logf:(Ljava/lang/String;Lorg/jboss/logging/Logger$Level;Ljava/lang/Throwable;Ljava/lang/String;Ljava/lang/Object;)V
3: invokestatic org.xnio.ssl.JsseSslConduitEngine.$SWITCH_TABLE$javax$net$ssl$SSLEngineResult$Status:()[I
aload 1
invokevirtual javax.net.ssl.SSLEngineResult.getStatus:()Ljavax/net/ssl/SSLEngineResult$Status;
invokevirtual javax.net.ssl.SSLEngineResult$Status.ordinal:()I
iaload
tableswitch { // 1 - 4
1: 4
2: 6
3: 31
4: 29
default: 35
}
4: StackMap locals:
StackMap stack:
getstatic org.xnio.ssl.JsseSslConduitEngine.$assertionsDisabled:Z
ifne 5
aload 1
invokevirtual javax.net.ssl.SSLEngineResult.bytesConsumed:()I
ifeq 5
new java.lang.AssertionError
dup
invokespecial java.lang.AssertionError.<init>:()V
athrow
5: StackMap locals:
StackMap stack:
getstatic org.xnio.ssl.JsseSslConduitEngine.$assertionsDisabled:Z
ifne 36
aload 1
invokevirtual javax.net.ssl.SSLEngineResult.bytesProduced:()I
ifeq 36
new java.lang.AssertionError
dup
invokespecial java.lang.AssertionError.<init>:()V
athrow
6: StackMap locals:
StackMap stack:
getstatic org.xnio.ssl.JsseSslConduitEngine.$assertionsDisabled:Z
ifne 7
aload 1
invokevirtual javax.net.ssl.SSLEngineResult.bytesConsumed:()I
ifeq 7
new java.lang.AssertionError
dup
invokespecial java.lang.AssertionError.<init>:()V
athrow
7: StackMap locals:
StackMap stack:
getstatic org.xnio.ssl.JsseSslConduitEngine.$assertionsDisabled:Z
ifne 8
aload 1
invokevirtual javax.net.ssl.SSLEngineResult.bytesProduced:()I
ifeq 8
new java.lang.AssertionError
dup
invokespecial java.lang.AssertionError.<init>:()V
athrow
8: StackMap locals:
StackMap stack:
aload 0
invokevirtual org.xnio.ssl.JsseSslConduitEngine.getSendBuffer:()Ljava/nio/ByteBuffer;
astore 3
start local 3 9: aload 3
invokevirtual java.nio.ByteBuffer.position:()I
ifne 16
10: aload 0
getfield org.xnio.ssl.JsseSslConduitEngine.engine:Ljavax/net/ssl/SSLEngine;
invokevirtual javax.net.ssl.SSLEngine.getSession:()Ljavax/net/ssl/SSLSession;
invokeinterface javax.net.ssl.SSLSession.getPacketBufferSize:()I
istore 4
start local 4 11: aload 3
invokevirtual java.nio.ByteBuffer.capacity:()I
iload 4
if_icmpge 15
12: getstatic org.xnio._private.Messages.msg:Lorg/xnio/_private/Messages;
iload 4
invokeinterface org.xnio._private.Messages.expandedSslBufferEnabled:(I)V
13: aload 0
iload 4
invokestatic java.nio.ByteBuffer.allocate:(I)Ljava/nio/ByteBuffer;
putfield org.xnio.ssl.JsseSslConduitEngine.expandedSendBuffer:Ljava/nio/ByteBuffer;
14: goto 36
StackMap locals: java.nio.ByteBuffer int
StackMap stack:
15: getstatic org.xnio._private.Messages.msg:Lorg/xnio/_private/Messages;
invokeinterface org.xnio._private.Messages.wrongBufferExpansion:()Ljava/io/IOException;
athrow
end local 4 16: StackMap locals:
StackMap stack:
aload 3
invokevirtual java.nio.ByteBuffer.flip:()Ljava/nio/Buffer;
pop
17: goto 22
18: StackMap locals:
StackMap stack:
aload 0
getfield org.xnio.ssl.JsseSslConduitEngine.sinkConduit:Lorg/xnio/conduits/StreamSinkConduit;
aload 3
invokeinterface org.xnio.conduits.StreamSinkConduit.write:(Ljava/nio/ByteBuffer;)I
istore 4
start local 4 19: iload 4
ifne 22
20: aload 3
invokevirtual java.nio.ByteBuffer.compact:()Ljava/nio/ByteBuffer;
pop
21: iconst_0
ireturn
end local 4 22: StackMap locals:
StackMap stack:
aload 3
invokevirtual java.nio.ByteBuffer.hasRemaining:()Z
ifne 18
23: goto 27
StackMap locals:
StackMap stack: java.lang.Throwable
24: astore 5
25: aload 3
invokevirtual java.nio.ByteBuffer.compact:()Ljava/nio/ByteBuffer;
pop
26: aload 5
athrow
27: StackMap locals:
StackMap stack:
aload 3
invokevirtual java.nio.ByteBuffer.compact:()Ljava/nio/ByteBuffer;
pop
28: goto 36
end local 3 29: StackMap locals:
StackMap stack:
iload 2
ifne 31
30: new java.nio.channels.ClosedChannelException
dup
invokespecial java.nio.channels.ClosedChannelException.<init>:()V
athrow
31: StackMap locals:
StackMap stack:
aload 1
invokevirtual javax.net.ssl.SSLEngineResult.bytesConsumed:()I
ifne 36
32: aload 1
invokevirtual javax.net.ssl.SSLEngineResult.bytesProduced:()I
ifle 36
33: aload 0
invokevirtual org.xnio.ssl.JsseSslConduitEngine.doFlush:()Z
ifne 36
34: iconst_0
ireturn
35: StackMap locals:
StackMap stack:
getstatic org.xnio._private.Messages.msg:Lorg/xnio/_private/Messages;
aload 1
invokevirtual javax.net.ssl.SSLEngineResult.getStatus:()Ljavax/net/ssl/SSLEngineResult$Status;
invokeinterface org.xnio._private.Messages.unexpectedWrapResult:(Ljavax/net/ssl/SSLEngineResult$Status;)Ljava/io/IOException;
athrow
36: StackMap locals:
StackMap stack:
iconst_1
ireturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 37 0 this Lorg/xnio/ssl/JsseSslConduitEngine;
0 37 1 result Ljavax/net/ssl/SSLEngineResult;
0 37 2 closeExpected Z
9 29 3 buffer Ljava/nio/ByteBuffer;
11 16 4 bufferSize I
19 22 4 res I
Exception table:
from to target type
17 20 24 any
22 24 24 any
Exceptions:
throws java.io.IOException
MethodParameters:
Name Flags
result
closeExpected
private boolean handleHandshake(javax.net.ssl.SSLEngineResult, boolean);
descriptor: (Ljavax/net/ssl/SSLEngineResult;Z)Z
flags: (0x0002) ACC_PRIVATE
Code:
stack=4, locals=8, args_size=3
start local 0 start local 1 start local 2 0: getstatic org.xnio.ssl.JsseSslConduitEngine.$assertionsDisabled:Z
ifne 1
aload 0
invokevirtual org.xnio.ssl.JsseSslConduitEngine.getUnwrapLock:()Ljava/lang/Object;
invokestatic java.lang.Thread.holdsLock:(Ljava/lang/Object;)Z
ifeq 1
new java.lang.AssertionError
dup
invokespecial java.lang.AssertionError.<init>:()V
athrow
1: StackMap locals:
StackMap stack:
aload 0
invokevirtual org.xnio.ssl.JsseSslConduitEngine.isWrapNeeded:()Z
ifeq 9
2: aload 0
invokevirtual org.xnio.ssl.JsseSslConduitEngine.getWrapLock:()Ljava/lang/Object;
dup
astore 3
monitorenter
3: aload 0
invokevirtual org.xnio.ssl.JsseSslConduitEngine.doFlush:()Z
ifeq 5
4: aload 0
invokevirtual org.xnio.ssl.JsseSslConduitEngine.clearNeedWrap:()V
5: StackMap locals: java.lang.Object
StackMap stack:
aload 3
monitorexit
6: goto 9
StackMap locals:
StackMap stack: java.lang.Throwable
7: aload 3
monitorexit
8: athrow
9: StackMap locals:
StackMap stack:
iconst_0
istore 3
start local 3 10: StackMap locals: int
StackMap stack:
invokestatic org.xnio.ssl.JsseSslConduitEngine.$SWITCH_TABLE$javax$net$ssl$SSLEngineResult$HandshakeStatus:()[I
aload 1
invokevirtual javax.net.ssl.SSLEngineResult.getHandshakeStatus:()Ljavax/net/ssl/SSLEngineResult$HandshakeStatus;
invokevirtual javax.net.ssl.SSLEngineResult$HandshakeStatus.ordinal:()I
iaload
tableswitch { // 1 - 5
1: 14
2: 11
3: 83
4: 16
5: 40
default: 96
}
11: StackMap locals:
StackMap stack:
aload 0
invokevirtual org.xnio.ssl.JsseSslConduitEngine.clearNeedUnwrap:()V
12: aload 0
getfield org.xnio.ssl.JsseSslConduitEngine.connection:Lorg/xnio/ssl/JsseSslStreamConnection;
invokevirtual org.xnio.ssl.JsseSslStreamConnection.handleHandshakeFinished:()V
13: iconst_1
ireturn
14: StackMap locals:
StackMap stack:
aload 0
invokevirtual org.xnio.ssl.JsseSslConduitEngine.clearNeedUnwrap:()V
15: iconst_0
ireturn
16: StackMap locals:
StackMap stack:
aload 0
invokevirtual org.xnio.ssl.JsseSslConduitEngine.clearNeedUnwrap:()V
17: iload 2
ifeq 19
18: iconst_1
ireturn
19: StackMap locals:
StackMap stack:
aload 0
invokevirtual org.xnio.ssl.JsseSslConduitEngine.getSendBuffer:()Ljava/nio/ByteBuffer;
astore 4
start local 4 20: aload 0
invokevirtual org.xnio.ssl.JsseSslConduitEngine.getWrapLock:()Ljava/lang/Object;
dup
astore 5
monitorenter
21: aload 0
invokevirtual org.xnio.ssl.JsseSslConduitEngine.doFlush:()Z
ifeq 34
22: aload 1
invokevirtual javax.net.ssl.SSLEngineResult.getStatus:()Ljavax/net/ssl/SSLEngineResult$Status;
getstatic javax.net.ssl.SSLEngineResult$Status.CLOSED:Ljavax/net/ssl/SSLEngineResult$Status;
if_acmpne 26
23: aload 0
invokevirtual org.xnio.ssl.JsseSslConduitEngine.closeOutbound:()V
24: aload 5
monitorexit
25: iconst_0
ireturn
26: StackMap locals: java.nio.ByteBuffer java.lang.Object
StackMap stack:
aload 0
aload 0
getstatic org.xnio.Buffers.EMPTY_BYTE_BUFFER:Ljava/nio/ByteBuffer;
aload 4
invokevirtual org.xnio.ssl.JsseSslConduitEngine.engineWrap:(Ljava/nio/ByteBuffer;Ljava/nio/ByteBuffer;)Ljavax/net/ssl/SSLEngineResult;
dup
astore 1
iconst_1
invokevirtual org.xnio.ssl.JsseSslConduitEngine.handleWrapResult:(Ljavax/net/ssl/SSLEngineResult;Z)Z
ifeq 27
aload 0
invokevirtual org.xnio.ssl.JsseSslConduitEngine.doFlush:()Z
ifne 30
27: StackMap locals:
StackMap stack:
aload 0
invokevirtual org.xnio.ssl.JsseSslConduitEngine.needWrap:()V
28: aload 5
monitorexit
29: iconst_0
ireturn
30: StackMap locals:
StackMap stack:
iconst_1
istore 3
31: aload 0
invokevirtual org.xnio.ssl.JsseSslConduitEngine.clearNeedWrap:()V
32: aload 5
monitorexit
33: goto 10
34: StackMap locals:
StackMap stack:
getstatic org.xnio.ssl.JsseSslConduitEngine.$assertionsDisabled:Z
ifne 35
aload 0
invokevirtual org.xnio.ssl.JsseSslConduitEngine.isUnwrapNeeded:()Z
ifeq 35
new java.lang.AssertionError
dup
invokespecial java.lang.AssertionError.<init>:()V
athrow
35: StackMap locals:
StackMap stack:
aload 0
invokevirtual org.xnio.ssl.JsseSslConduitEngine.needWrap:()V
36: aload 5
monitorexit
37: iconst_0
ireturn
38: StackMap locals:
StackMap stack: java.lang.Throwable
aload 5
monitorexit
39: athrow
end local 4 40: StackMap locals:
StackMap stack:
iload 2
ifne 42
41: iload 3
ireturn
42: StackMap locals:
StackMap stack:
aload 0
invokevirtual org.xnio.ssl.JsseSslConduitEngine.getWrapLock:()Ljava/lang/Object;
dup
astore 4
monitorenter
43: aload 0
invokevirtual org.xnio.ssl.JsseSslConduitEngine.doFlush:()Z
pop
44: aload 4
monitorexit
45: goto 48
StackMap locals: org.xnio.ssl.JsseSslConduitEngine javax.net.ssl.SSLEngineResult int int java.lang.Object
StackMap stack: java.lang.Throwable
46: aload 4
monitorexit
47: athrow
48: StackMap locals:
StackMap stack:
aload 0
getfield org.xnio.ssl.JsseSslConduitEngine.receiveBuffer:Lorg/xnio/Pooled;
invokeinterface org.xnio.Pooled.getResource:()Ljava/lang/Object;
checkcast java.nio.ByteBuffer
astore 4
start local 4 49: aload 0
getfield org.xnio.ssl.JsseSslConduitEngine.readBuffer:Lorg/xnio/Pooled;
invokeinterface org.xnio.Pooled.getResource:()Ljava/lang/Object;
checkcast java.nio.ByteBuffer
astore 5
start local 5 50: aload 1
invokevirtual javax.net.ssl.SSLEngineResult.getHandshakeStatus:()Ljavax/net/ssl/SSLEngineResult$HandshakeStatus;
getstatic javax.net.ssl.SSLEngineResult$HandshakeStatus.NEED_UNWRAP:Ljavax/net/ssl/SSLEngineResult$HandshakeStatus;
if_acmpne 61
aload 0
getfield org.xnio.ssl.JsseSslConduitEngine.engine:Ljavax/net/ssl/SSLEngine;
invokevirtual javax.net.ssl.SSLEngine.isOutboundDone:()Z
ifeq 61
51: aload 0
invokevirtual org.xnio.ssl.JsseSslConduitEngine.getUnwrapLock:()Ljava/lang/Object;
dup
astore 6
monitorenter
52: aload 4
invokevirtual java.nio.ByteBuffer.compact:()Ljava/nio/ByteBuffer;
pop
53: aload 0
getfield org.xnio.ssl.JsseSslConduitEngine.sourceConduit:Lorg/xnio/conduits/StreamSourceConduit;
aload 4
invokeinterface org.xnio.conduits.StreamSourceConduit.read:(Ljava/nio/ByteBuffer;)I
pop
54: aload 4
invokevirtual java.nio.ByteBuffer.flip:()Ljava/nio/Buffer;
pop
55: aload 4
invokevirtual java.nio.ByteBuffer.hasRemaining:()Z
ifeq 57
aload 0
getfield org.xnio.ssl.JsseSslConduitEngine.sourceConduit:Lorg/xnio/conduits/StreamSourceConduit;
invokeinterface org.xnio.conduits.StreamSourceConduit.isReadResumed:()Z
ifeq 57
56: aload 0
getfield org.xnio.ssl.JsseSslConduitEngine.sourceConduit:Lorg/xnio/conduits/StreamSourceConduit;
invokeinterface org.xnio.conduits.StreamSourceConduit.wakeupReads:()V
57: StackMap locals: java.nio.ByteBuffer java.nio.ByteBuffer java.lang.Object
StackMap stack:
aload 6
monitorexit
58: iconst_0
ireturn
59: StackMap locals:
StackMap stack: java.lang.Throwable
aload 6
monitorexit
60: athrow
61: StackMap locals:
StackMap stack:
aload 0
invokevirtual org.xnio.ssl.JsseSslConduitEngine.getUnwrapLock:()Ljava/lang/Object;
dup
astore 6
monitorenter
62: aload 0
aload 0
aload 4
aload 5
invokevirtual org.xnio.ssl.JsseSslConduitEngine.engineUnwrap:(Ljava/nio/ByteBuffer;Ljava/nio/ByteBuffer;)Ljavax/net/ssl/SSLEngineResult;
dup
astore 1
invokevirtual org.xnio.ssl.JsseSslConduitEngine.handleUnwrapResult:(Ljavax/net/ssl/SSLEngineResult;)I
istore 7
start local 7 63: aload 4
invokevirtual java.nio.ByteBuffer.hasRemaining:()Z
ifeq 65
aload 0
getfield org.xnio.ssl.JsseSslConduitEngine.sourceConduit:Lorg/xnio/conduits/StreamSourceConduit;
invokeinterface org.xnio.conduits.StreamSourceConduit.isReadResumed:()Z
ifeq 65
64: aload 0
getfield org.xnio.ssl.JsseSslConduitEngine.sourceConduit:Lorg/xnio/conduits/StreamSourceConduit;
invokeinterface org.xnio.conduits.StreamSourceConduit.wakeupReads:()V
65: StackMap locals: java.lang.Object int
StackMap stack:
iload 7
iflt 74
66: aload 1
invokevirtual javax.net.ssl.SSLEngineResult.getHandshakeStatus:()Ljavax/net/ssl/SSLEngineResult$HandshakeStatus;
getstatic javax.net.ssl.SSLEngineResult$HandshakeStatus.NEED_UNWRAP:Ljavax/net/ssl/SSLEngineResult$HandshakeStatus;
if_acmpne 67
aload 1
invokevirtual javax.net.ssl.SSLEngineResult.bytesConsumed:()I
ifle 70
67: StackMap locals:
StackMap stack:
aload 0
invokevirtual org.xnio.ssl.JsseSslConduitEngine.clearNeedUnwrap:()V
68: aload 6
monitorexit
69: goto 10
70: StackMap locals:
StackMap stack:
getstatic org.xnio.ssl.JsseSslConduitEngine.$assertionsDisabled:Z
ifne 71
aload 0
invokevirtual org.xnio.ssl.JsseSslConduitEngine.isWrapNeeded:()Z
ifeq 71
new java.lang.AssertionError
dup
invokespecial java.lang.AssertionError.<init>:()V
athrow
71: StackMap locals:
StackMap stack:
aload 0
invokevirtual org.xnio.ssl.JsseSslConduitEngine.needUnwrap:()V
72: aload 6
monitorexit
73: iconst_0
ireturn
74: StackMap locals:
StackMap stack:
iload 7
iconst_m1
if_icmpne 79
aload 1
invokevirtual javax.net.ssl.SSLEngineResult.getHandshakeStatus:()Ljavax/net/ssl/SSLEngineResult$HandshakeStatus;
getstatic javax.net.ssl.SSLEngineResult$HandshakeStatus.NEED_UNWRAP:Ljavax/net/ssl/SSLEngineResult$HandshakeStatus;
if_acmpne 79
75: aload 0
getfield org.xnio.ssl.JsseSslConduitEngine.state:I
iconst_2
invokestatic org.xnio.Bits.allAreSet:(II)Z
ifne 77
76: new java.nio.channels.ClosedChannelException
dup
invokespecial java.nio.channels.ClosedChannelException.<init>:()V
athrow
77: StackMap locals:
StackMap stack:
aload 6
monitorexit
78: iconst_0
ireturn
end local 7 79: StackMap locals:
StackMap stack:
aload 6
monitorexit
80: goto 10
StackMap locals:
StackMap stack: java.lang.Throwable
81: aload 6
monitorexit
82: athrow
end local 5 end local 4 83: StackMap locals:
StackMap stack:
aload 0
getfield org.xnio.ssl.JsseSslConduitEngine.engine:Ljavax/net/ssl/SSLEngine;
dup
astore 5
monitorenter
84: goto 89
start local 4 85: StackMap locals: java.lang.Runnable javax.net.ssl.SSLEngine
StackMap stack:
aload 4
invokeinterface java.lang.Runnable.run:()V
86: goto 89
StackMap locals:
StackMap stack: java.lang.Exception
87: astore 6
start local 6 88: new java.io.IOException
dup
aload 6
invokespecial java.io.IOException.<init>:(Ljava/lang/Throwable;)V
athrow
end local 6 end local 4 89: StackMap locals: org.xnio.ssl.JsseSslConduitEngine javax.net.ssl.SSLEngineResult int int top javax.net.ssl.SSLEngine
StackMap stack:
aload 0
getfield org.xnio.ssl.JsseSslConduitEngine.engine:Ljavax/net/ssl/SSLEngine;
invokevirtual javax.net.ssl.SSLEngine.getDelegatedTask:()Ljava/lang/Runnable;
dup
astore 4
start local 4 90: ifnonnull 85
91: aload 5
monitorexit
92: goto 95
end local 4 StackMap locals:
StackMap stack: java.lang.Throwable
93: aload 5
monitorexit
94: athrow
start local 4 95: StackMap locals: org.xnio.ssl.JsseSslConduitEngine javax.net.ssl.SSLEngineResult int int java.lang.Runnable
StackMap stack:
iconst_1
ireturn
end local 4 96: StackMap locals:
StackMap stack:
getstatic org.xnio._private.Messages.msg:Lorg/xnio/_private/Messages;
aload 1
invokevirtual javax.net.ssl.SSLEngineResult.getHandshakeStatus:()Ljavax/net/ssl/SSLEngineResult$HandshakeStatus;
invokeinterface org.xnio._private.Messages.unexpectedHandshakeStatus:(Ljavax/net/ssl/SSLEngineResult$HandshakeStatus;)Ljava/io/IOException;
athrow
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 97 0 this Lorg/xnio/ssl/JsseSslConduitEngine;
0 97 1 result Ljavax/net/ssl/SSLEngineResult;
0 97 2 write Z
10 97 3 newResult Z
20 40 4 buffer Ljava/nio/ByteBuffer;
49 83 4 buffer Ljava/nio/ByteBuffer;
50 83 5 unwrappedBuffer Ljava/nio/ByteBuffer;
63 79 7 unwrapResult I
85 89 4 task Ljava/lang/Runnable;
90 93 4 task Ljava/lang/Runnable;
95 96 4 task Ljava/lang/Runnable;
88 89 6 e Ljava/lang/Exception;
Exception table:
from to target type
3 6 7 any
7 8 7 any
21 25 38 any
26 29 38 any
30 33 38 any
34 37 38 any
38 39 38 any
43 45 46 any
46 47 46 any
52 58 59 any
59 60 59 any
62 69 81 any
70 73 81 any
74 78 81 any
79 80 81 any
81 82 81 any
85 86 87 Class java.lang.Exception
84 92 93 any
93 94 93 any
Exceptions:
throws java.io.IOException
MethodParameters:
Name Flags
result
write
public int unwrap(java.nio.ByteBuffer);
descriptor: (Ljava/nio/ByteBuffer;)I
flags: (0x0001) ACC_PUBLIC
Code:
stack=5, locals=2, args_size=2
start local 0 start local 1 0: aload 0
iconst_1
anewarray java.nio.ByteBuffer
dup
iconst_0
aload 1
aastore
iconst_0
iconst_1
invokevirtual org.xnio.ssl.JsseSslConduitEngine.unwrap:([Ljava/nio/ByteBuffer;II)J
l2i
ireturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/xnio/ssl/JsseSslConduitEngine;
0 1 1 dst Ljava/nio/ByteBuffer;
Exceptions:
throws java.io.IOException
MethodParameters:
Name Flags
dst final
public long unwrap(java.nio.ByteBuffer[], int, int);
descriptor: ([Ljava/nio/ByteBuffer;II)J
flags: (0x0001) ACC_PUBLIC
Code:
stack=7, locals=12, args_size=4
start local 0 start local 1 start local 2 start local 3 0: getstatic org.xnio.ssl.JsseSslConduitEngine.$assertionsDisabled:Z
ifne 1
aload 0
invokevirtual org.xnio.ssl.JsseSslConduitEngine.getUnwrapLock:()Ljava/lang/Object;
invokestatic java.lang.Thread.holdsLock:(Ljava/lang/Object;)Z
ifeq 1
new java.lang.AssertionError
dup
invokespecial java.lang.AssertionError.<init>:()V
athrow
1: StackMap locals:
StackMap stack:
getstatic org.xnio.ssl.JsseSslConduitEngine.$assertionsDisabled:Z
ifne 2
aload 0
invokevirtual org.xnio.ssl.JsseSslConduitEngine.getWrapLock:()Ljava/lang/Object;
invokestatic java.lang.Thread.holdsLock:(Ljava/lang/Object;)Z
ifeq 2
new java.lang.AssertionError
dup
invokespecial java.lang.AssertionError.<init>:()V
athrow
2: StackMap locals:
StackMap stack:
aload 1
arraylength
ifeq 3
iload 3
ifeq 3
aload 0
invokevirtual org.xnio.ssl.JsseSslConduitEngine.isClosed:()Z
ifeq 4
3: StackMap locals:
StackMap stack:
lconst_0
lreturn
4: StackMap locals:
StackMap stack:
aload 0
ldc 4194308
invokevirtual org.xnio.ssl.JsseSslConduitEngine.clearFlags:(I)I
pop
5: aload 0
getfield org.xnio.ssl.JsseSslConduitEngine.receiveBuffer:Lorg/xnio/Pooled;
invokeinterface org.xnio.Pooled.getResource:()Ljava/lang/Object;
checkcast java.nio.ByteBuffer
astore 4
start local 4 6: aload 0
getfield org.xnio.ssl.JsseSslConduitEngine.readBuffer:Lorg/xnio/Pooled;
invokeinterface org.xnio.Pooled.getResource:()Ljava/lang/Object;
checkcast java.nio.ByteBuffer
astore 5
start local 5 7: lconst_0
lstore 6
start local 6 8: aload 0
invokevirtual org.xnio.ssl.JsseSslConduitEngine.getUnwrapLock:()Ljava/lang/Object;
dup
astore 9
monitorenter
9: aload 5
invokevirtual java.nio.ByteBuffer.position:()I
ifle 11
10: lload 6
aload 0
aload 1
iload 2
iload 3
aload 5
invokevirtual org.xnio.ssl.JsseSslConduitEngine.copyUnwrappedData:([Ljava/nio/ByteBuffer;IILjava/nio/ByteBuffer;)I
i2l
ladd
lstore 6
11: StackMap locals: org.xnio.ssl.JsseSslConduitEngine java.nio.ByteBuffer[] int int java.nio.ByteBuffer java.nio.ByteBuffer long top java.lang.Object
StackMap stack:
aload 9
monitorexit
12: goto 15
StackMap locals:
StackMap stack: java.lang.Throwable
13: aload 9
monitorexit
14: athrow
15: StackMap locals: org.xnio.ssl.JsseSslConduitEngine java.nio.ByteBuffer[] int int java.nio.ByteBuffer java.nio.ByteBuffer long
StackMap stack:
iconst_0
istore 9
start local 9 16: StackMap locals: org.xnio.ssl.JsseSslConduitEngine java.nio.ByteBuffer[] int int java.nio.ByteBuffer java.nio.ByteBuffer long top int
StackMap stack:
aload 0
invokevirtual org.xnio.ssl.JsseSslConduitEngine.getUnwrapLock:()Ljava/lang/Object;
dup
astore 10
monitorenter
17: aload 1
iload 2
iload 3
invokestatic org.xnio.Buffers.hasRemaining:([Ljava/nio/Buffer;II)Z
ifne 22
18: aload 5
invokevirtual java.nio.ByteBuffer.hasRemaining:()Z
ifeq 20
aload 0
getfield org.xnio.ssl.JsseSslConduitEngine.sourceConduit:Lorg/xnio/conduits/StreamSourceConduit;
invokeinterface org.xnio.conduits.StreamSourceConduit.isReadResumed:()Z
ifeq 20
19: aload 0
getfield org.xnio.ssl.JsseSslConduitEngine.sourceConduit:Lorg/xnio/conduits/StreamSourceConduit;
invokeinterface org.xnio.conduits.StreamSourceConduit.wakeupReads:()V
20: StackMap locals: java.lang.Object
StackMap stack:
lload 6
aload 10
monitorexit
21: lreturn
22: StackMap locals:
StackMap stack:
aload 0
aload 0
aload 4
aload 5
invokevirtual org.xnio.ssl.JsseSslConduitEngine.engineUnwrap:(Ljava/nio/ByteBuffer;Ljava/nio/ByteBuffer;)Ljavax/net/ssl/SSLEngineResult;
dup
astore 8
start local 8 23: invokevirtual org.xnio.ssl.JsseSslConduitEngine.handleUnwrapResult:(Ljavax/net/ssl/SSLEngineResult;)I
istore 9
24: aload 5
invokevirtual java.nio.ByteBuffer.position:()I
ifle 26
25: lload 6
aload 0
aload 1
iload 2
iload 3
aload 5
invokevirtual org.xnio.ssl.JsseSslConduitEngine.copyUnwrappedData:([Ljava/nio/ByteBuffer;IILjava/nio/ByteBuffer;)I
i2l
ladd
lstore 6
26: StackMap locals: org.xnio.ssl.JsseSslConduitEngine java.nio.ByteBuffer[] int int java.nio.ByteBuffer java.nio.ByteBuffer long javax.net.ssl.SSLEngineResult int java.lang.Object
StackMap stack:
aload 10
monitorexit
27: goto 30
end local 8 StackMap locals: org.xnio.ssl.JsseSslConduitEngine java.nio.ByteBuffer[] int int java.nio.ByteBuffer java.nio.ByteBuffer long top int java.lang.Object
StackMap stack: java.lang.Throwable
28: aload 10
monitorexit
29: athrow
start local 8 30: StackMap locals: org.xnio.ssl.JsseSslConduitEngine java.nio.ByteBuffer[] int int java.nio.ByteBuffer java.nio.ByteBuffer long javax.net.ssl.SSLEngineResult int
StackMap stack:
aload 0
aload 8
iconst_0
invokevirtual org.xnio.ssl.JsseSslConduitEngine.handleHandshake:(Ljavax/net/ssl/SSLEngineResult;Z)Z
ifne 16
iload 9
31: ifgt 16
32: goto 43
end local 8 StackMap locals: org.xnio.ssl.JsseSslConduitEngine java.nio.ByteBuffer[] int int java.nio.ByteBuffer java.nio.ByteBuffer long top int
StackMap stack: javax.net.ssl.SSLHandshakeException
33: astore 10
start local 10 34: aload 0
invokevirtual org.xnio.ssl.JsseSslConduitEngine.getWrapLock:()Ljava/lang/Object;
dup
astore 11
monitorenter
35: aload 0
getfield org.xnio.ssl.JsseSslConduitEngine.engine:Ljavax/net/ssl/SSLEngine;
getstatic org.xnio.ssl.JsseSslConduitEngine.EMPTY_BUFFER:Ljava/nio/ByteBuffer;
aload 0
invokevirtual org.xnio.ssl.JsseSslConduitEngine.getSendBuffer:()Ljava/nio/ByteBuffer;
invokevirtual javax.net.ssl.SSLEngine.wrap:(Ljava/nio/ByteBuffer;Ljava/nio/ByteBuffer;)Ljavax/net/ssl/SSLEngineResult;
pop
36: aload 0
invokevirtual org.xnio.ssl.JsseSslConduitEngine.doFlush:()Z
pop
37: aload 11
monitorexit
38: goto 42
StackMap locals: org.xnio.ssl.JsseSslConduitEngine java.nio.ByteBuffer[] int int java.nio.ByteBuffer java.nio.ByteBuffer long top int javax.net.ssl.SSLHandshakeException java.lang.Object
StackMap stack: java.lang.Throwable
39: aload 11
monitorexit
40: athrow
41: StackMap locals: org.xnio.ssl.JsseSslConduitEngine java.nio.ByteBuffer[] int int java.nio.ByteBuffer java.nio.ByteBuffer long top int javax.net.ssl.SSLHandshakeException
StackMap stack: java.io.IOException
pop
42: StackMap locals:
StackMap stack:
aload 10
athrow
end local 10 start local 8 43: StackMap locals: org.xnio.ssl.JsseSslConduitEngine java.nio.ByteBuffer[] int int java.nio.ByteBuffer java.nio.ByteBuffer long javax.net.ssl.SSLEngineResult int
StackMap stack:
lload 6
lconst_0
lcmp
ifne 46
44: iload 9
iconst_m1
if_icmpne 46
45: ldc -1
lreturn
46: StackMap locals:
StackMap stack:
iload 9
ifne 49
aload 8
invokevirtual javax.net.ssl.SSLEngineResult.getStatus:()Ljavax/net/ssl/SSLEngineResult$Status;
getstatic javax.net.ssl.SSLEngineResult$Status.BUFFER_UNDERFLOW:Ljavax/net/ssl/SSLEngineResult$Status;
if_acmpne 49
47: StackMap locals:
StackMap stack:
aload 0
getfield org.xnio.ssl.JsseSslConduitEngine.state:I
istore 10
start local 10 48: getstatic org.xnio.ssl.JsseSslConduitEngine.stateUpdater:Ljava/util/concurrent/atomic/AtomicIntegerFieldUpdater;
aload 0
iload 10
iload 10
iconst_4
ior
invokevirtual java.util.concurrent.atomic.AtomicIntegerFieldUpdater.compareAndSet:(Ljava/lang/Object;II)Z
ifeq 47
end local 10 49: StackMap locals:
StackMap stack:
lload 6
lreturn
end local 9 end local 8 end local 6 end local 5 end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 50 0 this Lorg/xnio/ssl/JsseSslConduitEngine;
0 50 1 dsts [Ljava/nio/ByteBuffer;
0 50 2 offset I
0 50 3 length I
6 50 4 buffer Ljava/nio/ByteBuffer;
7 50 5 unwrappedBuffer Ljava/nio/ByteBuffer;
8 50 6 total J
23 28 8 result Ljavax/net/ssl/SSLEngineResult;
30 33 8 result Ljavax/net/ssl/SSLEngineResult;
43 50 8 result Ljavax/net/ssl/SSLEngineResult;
16 50 9 res I
34 43 10 e Ljavax/net/ssl/SSLHandshakeException;
48 49 10 old I
Exception table:
from to target type
9 12 13 any
13 14 13 any
17 21 28 any
22 27 28 any
28 29 28 any
16 21 33 Class javax.net.ssl.SSLHandshakeException
22 32 33 Class javax.net.ssl.SSLHandshakeException
35 38 39 any
39 40 39 any
34 41 41 Class java.io.IOException
Exceptions:
throws java.io.IOException
MethodParameters:
Name Flags
dsts final
offset final
length final
public java.nio.ByteBuffer getUnwrapBuffer();
descriptor: ()Ljava/nio/ByteBuffer;
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=1, args_size=1
start local 0 0: getstatic org.xnio.ssl.JsseSslConduitEngine.$assertionsDisabled:Z
ifne 1
aload 0
invokevirtual org.xnio.ssl.JsseSslConduitEngine.getUnwrapLock:()Ljava/lang/Object;
invokestatic java.lang.Thread.holdsLock:(Ljava/lang/Object;)Z
ifne 1
new java.lang.AssertionError
dup
invokespecial java.lang.AssertionError.<init>:()V
athrow
1: StackMap locals:
StackMap stack:
getstatic org.xnio.ssl.JsseSslConduitEngine.$assertionsDisabled:Z
ifne 2
aload 0
invokevirtual org.xnio.ssl.JsseSslConduitEngine.getWrapLock:()Ljava/lang/Object;
invokestatic java.lang.Thread.holdsLock:(Ljava/lang/Object;)Z
ifeq 2
new java.lang.AssertionError
dup
invokespecial java.lang.AssertionError.<init>:()V
athrow
2: StackMap locals:
StackMap stack:
aload 0
getfield org.xnio.ssl.JsseSslConduitEngine.receiveBuffer:Lorg/xnio/Pooled;
invokeinterface org.xnio.Pooled.getResource:()Ljava/lang/Object;
checkcast java.nio.ByteBuffer
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lorg/xnio/ssl/JsseSslConduitEngine;
public java.lang.Object getUnwrapLock();
descriptor: ()Ljava/lang/Object;
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield org.xnio.ssl.JsseSslConduitEngine.receiveBuffer:Lorg/xnio/Pooled;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/xnio/ssl/JsseSslConduitEngine;
private javax.net.ssl.SSLEngineResult engineUnwrap(java.nio.ByteBuffer, java.nio.ByteBuffer);
descriptor: (Ljava/nio/ByteBuffer;Ljava/nio/ByteBuffer;)Ljavax/net/ssl/SSLEngineResult;
flags: (0x0002) ACC_PRIVATE
Code:
stack=7, locals=3, args_size=3
start local 0 start local 1 start local 2 0: getstatic org.xnio.ssl.JsseSslConduitEngine.$assertionsDisabled:Z
ifne 1
aload 0
invokevirtual org.xnio.ssl.JsseSslConduitEngine.getUnwrapLock:()Ljava/lang/Object;
invokestatic java.lang.Thread.holdsLock:(Ljava/lang/Object;)Z
ifne 1
new java.lang.AssertionError
dup
invokespecial java.lang.AssertionError.<init>:()V
athrow
1: StackMap locals:
StackMap stack:
aload 1
invokevirtual java.nio.ByteBuffer.hasRemaining:()Z
ifne 5
2: aload 1
invokevirtual java.nio.ByteBuffer.compact:()Ljava/nio/ByteBuffer;
pop
3: aload 0
getfield org.xnio.ssl.JsseSslConduitEngine.sourceConduit:Lorg/xnio/conduits/StreamSourceConduit;
aload 1
invokeinterface org.xnio.conduits.StreamSourceConduit.read:(Ljava/nio/ByteBuffer;)I
pop
4: aload 1
invokevirtual java.nio.ByteBuffer.flip:()Ljava/nio/Buffer;
pop
5: StackMap locals:
StackMap stack:
getstatic org.xnio.ssl.JsseSslConduitEngine.log:Lorg/jboss/logging/Logger;
getstatic org.xnio.ssl.JsseSslConduitEngine.FQCN:Ljava/lang/String;
getstatic org.jboss.logging.Logger$Level.TRACE:Lorg/jboss/logging/Logger$Level;
aconst_null
ldc "Unwrapping %s into %s"
aload 1
aload 2
invokevirtual org.jboss.logging.Logger.logf:(Ljava/lang/String;Lorg/jboss/logging/Logger$Level;Ljava/lang/Throwable;Ljava/lang/String;Ljava/lang/Object;Ljava/lang/Object;)V
6: aload 0
getfield org.xnio.ssl.JsseSslConduitEngine.engine:Ljavax/net/ssl/SSLEngine;
aload 1
aload 2
invokevirtual javax.net.ssl.SSLEngine.unwrap:(Ljava/nio/ByteBuffer;Ljava/nio/ByteBuffer;)Ljavax/net/ssl/SSLEngineResult;
areturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 7 0 this Lorg/xnio/ssl/JsseSslConduitEngine;
0 7 1 buffer Ljava/nio/ByteBuffer;
0 7 2 unwrappedBuffer Ljava/nio/ByteBuffer;
Exceptions:
throws java.io.IOException
MethodParameters:
Name Flags
buffer final
unwrappedBuffer final
private int copyUnwrappedData(java.nio.ByteBuffer[], int, int, java.nio.ByteBuffer);
descriptor: ([Ljava/nio/ByteBuffer;IILjava/nio/ByteBuffer;)I
flags: (0x0002) ACC_PRIVATE
Code:
stack=4, locals=7, args_size=5
start local 0 start local 1 start local 2 start local 3 start local 4 0: getstatic org.xnio.ssl.JsseSslConduitEngine.$assertionsDisabled:Z
ifne 1
aload 0
invokevirtual org.xnio.ssl.JsseSslConduitEngine.getUnwrapLock:()Ljava/lang/Object;
invokestatic java.lang.Thread.holdsLock:(Ljava/lang/Object;)Z
ifne 1
new java.lang.AssertionError
dup
invokespecial java.lang.AssertionError.<init>:()V
athrow
1: StackMap locals:
StackMap stack:
aload 4
invokevirtual java.nio.ByteBuffer.flip:()Ljava/nio/Buffer;
pop
2: aload 1
iload 2
iload 3
aload 4
invokestatic org.xnio.Buffers.copy:([Ljava/nio/ByteBuffer;IILjava/nio/ByteBuffer;)I
istore 6
3: aload 4
invokevirtual java.nio.ByteBuffer.compact:()Ljava/nio/ByteBuffer;
pop
4: iload 6
ireturn
5: StackMap locals:
StackMap stack: java.lang.Throwable
astore 5
6: aload 4
invokevirtual java.nio.ByteBuffer.compact:()Ljava/nio/ByteBuffer;
pop
7: aload 5
athrow
end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 8 0 this Lorg/xnio/ssl/JsseSslConduitEngine;
0 8 1 dsts [Ljava/nio/ByteBuffer;
0 8 2 offset I
0 8 3 length I
0 8 4 unwrappedBuffer Ljava/nio/ByteBuffer;
Exception table:
from to target type
2 3 5 any
MethodParameters:
Name Flags
dsts final
offset final
length final
unwrappedBuffer
private int handleUnwrapResult(javax.net.ssl.SSLEngineResult);
descriptor: (Ljavax/net/ssl/SSLEngineResult;)I
flags: (0x0002) ACC_PRIVATE
Code:
stack=6, locals=6, args_size=2
start local 0 start local 1 0: getstatic org.xnio.ssl.JsseSslConduitEngine.$assertionsDisabled:Z
ifne 1
aload 0
invokevirtual org.xnio.ssl.JsseSslConduitEngine.getUnwrapLock:()Ljava/lang/Object;
invokestatic java.lang.Thread.holdsLock:(Ljava/lang/Object;)Z
ifne 1
new java.lang.AssertionError
dup
invokespecial java.lang.AssertionError.<init>:()V
athrow
1: StackMap locals:
StackMap stack:
getstatic org.xnio.ssl.JsseSslConduitEngine.log:Lorg/jboss/logging/Logger;
getstatic org.xnio.ssl.JsseSslConduitEngine.FQCN:Ljava/lang/String;
getstatic org.jboss.logging.Logger$Level.TRACE:Lorg/jboss/logging/Logger$Level;
aconst_null
ldc "Unwrap result is %s"
aload 1
invokevirtual org.jboss.logging.Logger.logf:(Ljava/lang/String;Lorg/jboss/logging/Logger$Level;Ljava/lang/Throwable;Ljava/lang/String;Ljava/lang/Object;)V
2: invokestatic org.xnio.ssl.JsseSslConduitEngine.$SWITCH_TABLE$javax$net$ssl$SSLEngineResult$Status:()[I
aload 1
invokevirtual javax.net.ssl.SSLEngineResult.getStatus:()Ljavax/net/ssl/SSLEngineResult$Status;
invokevirtual javax.net.ssl.SSLEngineResult$Status.ordinal:()I
iaload
tableswitch { // 1 - 4
1: 6
2: 3
3: 23
4: 20
default: 24
}
3: StackMap locals:
StackMap stack:
getstatic org.xnio.ssl.JsseSslConduitEngine.$assertionsDisabled:Z
ifne 4
aload 1
invokevirtual javax.net.ssl.SSLEngineResult.bytesConsumed:()I
ifeq 4
new java.lang.AssertionError
dup
invokespecial java.lang.AssertionError.<init>:()V
athrow
4: StackMap locals:
StackMap stack:
getstatic org.xnio.ssl.JsseSslConduitEngine.$assertionsDisabled:Z
ifne 5
aload 1
invokevirtual javax.net.ssl.SSLEngineResult.bytesProduced:()I
ifeq 5
new java.lang.AssertionError
dup
invokespecial java.lang.AssertionError.<init>:()V
athrow
5: StackMap locals:
StackMap stack:
iconst_0
ireturn
6: StackMap locals:
StackMap stack:
getstatic org.xnio.ssl.JsseSslConduitEngine.$assertionsDisabled:Z
ifne 7
aload 1
invokevirtual javax.net.ssl.SSLEngineResult.bytesConsumed:()I
ifeq 7
new java.lang.AssertionError
dup
invokespecial java.lang.AssertionError.<init>:()V
athrow
7: StackMap locals:
StackMap stack:
getstatic org.xnio.ssl.JsseSslConduitEngine.$assertionsDisabled:Z
ifne 8
aload 1
invokevirtual javax.net.ssl.SSLEngineResult.bytesProduced:()I
ifeq 8
new java.lang.AssertionError
dup
invokespecial java.lang.AssertionError.<init>:()V
athrow
8: StackMap locals:
StackMap stack:
aload 0
getfield org.xnio.ssl.JsseSslConduitEngine.receiveBuffer:Lorg/xnio/Pooled;
invokeinterface org.xnio.Pooled.getResource:()Ljava/lang/Object;
checkcast java.nio.ByteBuffer
astore 2
start local 2 9: aload 0
invokevirtual org.xnio.ssl.JsseSslConduitEngine.getUnwrapLock:()Ljava/lang/Object;
dup
astore 3
monitorenter
10: aload 2
invokevirtual java.nio.ByteBuffer.compact:()Ljava/nio/ByteBuffer;
pop
11: aload 0
getfield org.xnio.ssl.JsseSslConduitEngine.sourceConduit:Lorg/xnio/conduits/StreamSourceConduit;
aload 2
invokeinterface org.xnio.conduits.StreamSourceConduit.read:(Ljava/nio/ByteBuffer;)I
istore 5
12: aload 2
invokevirtual java.nio.ByteBuffer.flip:()Ljava/nio/Buffer;
pop
13: aload 3
monitorexit
14: iload 5
ireturn
15: StackMap locals: org.xnio.ssl.JsseSslConduitEngine javax.net.ssl.SSLEngineResult java.nio.ByteBuffer java.lang.Object
StackMap stack: java.lang.Throwable
astore 4
16: aload 2
invokevirtual java.nio.ByteBuffer.flip:()Ljava/nio/Buffer;
pop
17: aload 4
athrow
18: StackMap locals:
StackMap stack: java.lang.Throwable
aload 3
monitorexit
19: athrow
end local 2 20: StackMap locals:
StackMap stack:
aload 1
invokevirtual javax.net.ssl.SSLEngineResult.bytesConsumed:()I
ifle 22
21: aload 1
invokevirtual javax.net.ssl.SSLEngineResult.bytesConsumed:()I
ireturn
22: StackMap locals:
StackMap stack:
iconst_m1
ireturn
23: StackMap locals:
StackMap stack:
aload 1
invokevirtual javax.net.ssl.SSLEngineResult.bytesConsumed:()I
ireturn
24: StackMap locals:
StackMap stack:
getstatic org.xnio._private.Messages.msg:Lorg/xnio/_private/Messages;
aload 1
invokevirtual javax.net.ssl.SSLEngineResult.getStatus:()Ljavax/net/ssl/SSLEngineResult$Status;
invokeinterface org.xnio._private.Messages.unexpectedUnwrapResult:(Ljavax/net/ssl/SSLEngineResult$Status;)Ljava/io/IOException;
athrow
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 25 0 this Lorg/xnio/ssl/JsseSslConduitEngine;
0 25 1 result Ljavax/net/ssl/SSLEngineResult;
9 20 2 buffer Ljava/nio/ByteBuffer;
Exception table:
from to target type
11 12 15 any
10 14 18 any
15 19 18 any
Exceptions:
throws java.io.IOException
MethodParameters:
Name Flags
result final
public boolean flush();
descriptor: ()Z
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=4, args_size=1
start local 0 0: getstatic org.xnio.ssl.JsseSslConduitEngine.stateUpdater:Ljava/util/concurrent/atomic/AtomicIntegerFieldUpdater;
aload 0
invokevirtual java.util.concurrent.atomic.AtomicIntegerFieldUpdater.get:(Ljava/lang/Object;)I
istore 1
start local 1 1: iload 1
ldc 262144
invokestatic org.xnio.Bits.allAreSet:(II)Z
ifeq 5
2: aload 0
getfield org.xnio.ssl.JsseSslConduitEngine.engine:Ljavax/net/ssl/SSLEngine;
invokevirtual javax.net.ssl.SSLEngine.isOutboundDone:()Z
ifeq 4
3: aload 0
getfield org.xnio.ssl.JsseSslConduitEngine.connection:Lorg/xnio/ssl/JsseSslStreamConnection;
invokevirtual org.xnio.ssl.JsseSslStreamConnection.writeClosed:()Z
pop
4: StackMap locals: int
StackMap stack:
iconst_1
ireturn
5: StackMap locals:
StackMap stack:
aload 0
invokevirtual org.xnio.ssl.JsseSslConduitEngine.getWrapLock:()Ljava/lang/Object;
dup
astore 3
monitorenter
6: iload 1
ldc 131072
invokestatic org.xnio.Bits.allAreSet:(II)Z
ifeq 10
7: aload 0
invokevirtual org.xnio.ssl.JsseSslConduitEngine.wrapCloseMessage:()Z
ifne 14
8: aload 3
monitorexit
9: iconst_0
ireturn
10: StackMap locals: org.xnio.ssl.JsseSslConduitEngine int top java.lang.Object
StackMap stack:
aload 0
getfield org.xnio.ssl.JsseSslConduitEngine.engine:Ljavax/net/ssl/SSLEngine;
invokevirtual javax.net.ssl.SSLEngine.isOutboundDone:()Z
ifeq 12
11: aload 0
getfield org.xnio.ssl.JsseSslConduitEngine.connection:Lorg/xnio/ssl/JsseSslStreamConnection;
invokevirtual org.xnio.ssl.JsseSslStreamConnection.writeClosed:()Z
pop
12: StackMap locals:
StackMap stack:
aload 3
monitorexit
13: iconst_1
ireturn
14: StackMap locals:
StackMap stack:
aload 3
monitorexit
15: goto 18
StackMap locals:
StackMap stack: java.lang.Throwable
16: aload 3
monitorexit
17: athrow
18: StackMap locals: org.xnio.ssl.JsseSslConduitEngine int
StackMap stack:
iload 1
ldc 262144
ior
istore 2
start local 2 19: goto 26
20: StackMap locals: int
StackMap stack:
getstatic org.xnio.ssl.JsseSslConduitEngine.stateUpdater:Ljava/util/concurrent/atomic/AtomicIntegerFieldUpdater;
aload 0
invokevirtual java.util.concurrent.atomic.AtomicIntegerFieldUpdater.get:(Ljava/lang/Object;)I
istore 1
21: iload 1
ldc 262144
invokestatic org.xnio.Bits.allAreSet:(II)Z
ifeq 25
22: aload 0
getfield org.xnio.ssl.JsseSslConduitEngine.engine:Ljavax/net/ssl/SSLEngine;
invokevirtual javax.net.ssl.SSLEngine.isOutboundDone:()Z
ifeq 24
23: aload 0
getfield org.xnio.ssl.JsseSslConduitEngine.connection:Lorg/xnio/ssl/JsseSslStreamConnection;
invokevirtual org.xnio.ssl.JsseSslStreamConnection.writeClosed:()Z
pop
24: StackMap locals:
StackMap stack:
iconst_1
ireturn
25: StackMap locals:
StackMap stack:
iload 1
ldc 262144
ior
istore 2
26: StackMap locals:
StackMap stack:
getstatic org.xnio.ssl.JsseSslConduitEngine.stateUpdater:Ljava/util/concurrent/atomic/AtomicIntegerFieldUpdater;
aload 0
iload 1
iload 2
invokevirtual java.util.concurrent.atomic.AtomicIntegerFieldUpdater.compareAndSet:(Ljava/lang/Object;II)Z
ifeq 20
27: iload 1
iconst_2
invokestatic org.xnio.Bits.allAreSet:(II)Z
ifeq 29
28: aload 0
invokevirtual org.xnio.ssl.JsseSslConduitEngine.closeEngine:()V
29: StackMap locals:
StackMap stack:
aload 0
getfield org.xnio.ssl.JsseSslConduitEngine.engine:Ljavax/net/ssl/SSLEngine;
invokevirtual javax.net.ssl.SSLEngine.isOutboundDone:()Z
ifeq 31
30: aload 0
getfield org.xnio.ssl.JsseSslConduitEngine.connection:Lorg/xnio/ssl/JsseSslStreamConnection;
invokevirtual org.xnio.ssl.JsseSslStreamConnection.writeClosed:()Z
pop
31: StackMap locals:
StackMap stack:
iconst_1
ireturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 32 0 this Lorg/xnio/ssl/JsseSslConduitEngine;
1 32 1 oldState I
19 32 2 newState I
Exception table:
from to target type
6 9 16 any
10 13 16 any
14 15 16 any
16 17 16 any
Exceptions:
throws java.io.IOException
private boolean wrapCloseMessage();
descriptor: ()Z
flags: (0x0002) ACC_PRIVATE
Code:
stack=4, locals=2, args_size=1
start local 0 0: getstatic org.xnio.ssl.JsseSslConduitEngine.$assertionsDisabled:Z
ifne 1
aload 0
invokevirtual org.xnio.ssl.JsseSslConduitEngine.getUnwrapLock:()Ljava/lang/Object;
invokestatic java.lang.Thread.holdsLock:(Ljava/lang/Object;)Z
ifeq 1
new java.lang.AssertionError
dup
invokespecial java.lang.AssertionError.<init>:()V
athrow
1: StackMap locals:
StackMap stack:
getstatic org.xnio.ssl.JsseSslConduitEngine.$assertionsDisabled:Z
ifne 2
aload 0
invokevirtual org.xnio.ssl.JsseSslConduitEngine.getWrapLock:()Ljava/lang/Object;
invokestatic java.lang.Thread.holdsLock:(Ljava/lang/Object;)Z
ifne 2
new java.lang.AssertionError
dup
invokespecial java.lang.AssertionError.<init>:()V
athrow
2: StackMap locals:
StackMap stack:
aload 0
getfield org.xnio.ssl.JsseSslConduitEngine.sinkConduit:Lorg/xnio/conduits/StreamSinkConduit;
invokeinterface org.xnio.conduits.StreamSinkConduit.isWriteShutdown:()Z
ifeq 4
3: iconst_1
ireturn
4: StackMap locals:
StackMap stack:
aload 0
getfield org.xnio.ssl.JsseSslConduitEngine.engine:Ljavax/net/ssl/SSLEngine;
invokevirtual javax.net.ssl.SSLEngine.isOutboundDone:()Z
ifeq 5
aload 0
getfield org.xnio.ssl.JsseSslConduitEngine.engine:Ljavax/net/ssl/SSLEngine;
invokevirtual javax.net.ssl.SSLEngine.isInboundDone:()Z
ifne 13
5: StackMap locals:
StackMap stack:
aload 0
aload 0
getstatic org.xnio.Buffers.EMPTY_BYTE_BUFFER:Ljava/nio/ByteBuffer;
aload 0
invokevirtual org.xnio.ssl.JsseSslConduitEngine.getSendBuffer:()Ljava/nio/ByteBuffer;
invokevirtual org.xnio.ssl.JsseSslConduitEngine.engineWrap:(Ljava/nio/ByteBuffer;Ljava/nio/ByteBuffer;)Ljavax/net/ssl/SSLEngineResult;
dup
astore 1
start local 1 6: iconst_1
invokevirtual org.xnio.ssl.JsseSslConduitEngine.handleWrapResult:(Ljavax/net/ssl/SSLEngineResult;Z)Z
ifne 8
7: iconst_0
ireturn
8: StackMap locals: javax.net.ssl.SSLEngineResult
StackMap stack:
aload 0
aload 1
iconst_1
invokevirtual org.xnio.ssl.JsseSslConduitEngine.handleHandshake:(Ljavax/net/ssl/SSLEngineResult;Z)Z
ifeq 9
aload 1
invokevirtual javax.net.ssl.SSLEngineResult.getHandshakeStatus:()Ljavax/net/ssl/SSLEngineResult$HandshakeStatus;
getstatic javax.net.ssl.SSLEngineResult$HandshakeStatus.NEED_UNWRAP:Ljavax/net/ssl/SSLEngineResult$HandshakeStatus;
if_acmpne 5
aload 0
getfield org.xnio.ssl.JsseSslConduitEngine.engine:Ljavax/net/ssl/SSLEngine;
invokevirtual javax.net.ssl.SSLEngine.isOutboundDone:()Z
ifeq 5
9: StackMap locals:
StackMap stack:
aload 0
aload 0
getstatic org.xnio.Buffers.EMPTY_BYTE_BUFFER:Ljava/nio/ByteBuffer;
aload 0
invokevirtual org.xnio.ssl.JsseSslConduitEngine.getSendBuffer:()Ljava/nio/ByteBuffer;
invokevirtual org.xnio.ssl.JsseSslConduitEngine.engineWrap:(Ljava/nio/ByteBuffer;Ljava/nio/ByteBuffer;)Ljavax/net/ssl/SSLEngineResult;
dup
astore 1
iconst_1
invokevirtual org.xnio.ssl.JsseSslConduitEngine.handleWrapResult:(Ljavax/net/ssl/SSLEngineResult;Z)Z
pop
10: aload 0
getfield org.xnio.ssl.JsseSslConduitEngine.engine:Ljavax/net/ssl/SSLEngine;
invokevirtual javax.net.ssl.SSLEngine.isOutboundDone:()Z
ifeq 12
aload 1
invokevirtual javax.net.ssl.SSLEngineResult.getHandshakeStatus:()Ljavax/net/ssl/SSLEngineResult$HandshakeStatus;
getstatic javax.net.ssl.SSLEngineResult$HandshakeStatus.NOT_HANDSHAKING:Ljavax/net/ssl/SSLEngineResult$HandshakeStatus;
if_acmpeq 13
11: aload 1
invokevirtual javax.net.ssl.SSLEngineResult.getHandshakeStatus:()Ljavax/net/ssl/SSLEngineResult$HandshakeStatus;
getstatic javax.net.ssl.SSLEngineResult$HandshakeStatus.NEED_UNWRAP:Ljavax/net/ssl/SSLEngineResult$HandshakeStatus;
if_acmpeq 13
12: StackMap locals:
StackMap stack:
iconst_0
ireturn
end local 1 13: StackMap locals:
StackMap stack:
iconst_1
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 14 0 this Lorg/xnio/ssl/JsseSslConduitEngine;
6 13 1 result Ljavax/net/ssl/SSLEngineResult;
Exceptions:
throws java.io.IOException
private boolean doFlush();
descriptor: ()Z
flags: (0x0002) ACC_PRIVATE
Code:
stack=2, locals=4, args_size=1
start local 0 0: getstatic org.xnio.ssl.JsseSslConduitEngine.$assertionsDisabled:Z
ifne 1
aload 0
invokevirtual org.xnio.ssl.JsseSslConduitEngine.getWrapLock:()Ljava/lang/Object;
invokestatic java.lang.Thread.holdsLock:(Ljava/lang/Object;)Z
ifne 1
new java.lang.AssertionError
dup
invokespecial java.lang.AssertionError.<init>:()V
athrow
1: StackMap locals:
StackMap stack:
getstatic org.xnio.ssl.JsseSslConduitEngine.$assertionsDisabled:Z
ifne 2
aload 0
invokevirtual org.xnio.ssl.JsseSslConduitEngine.getUnwrapLock:()Ljava/lang/Object;
invokestatic java.lang.Thread.holdsLock:(Ljava/lang/Object;)Z
ifeq 2
new java.lang.AssertionError
dup
invokespecial java.lang.AssertionError.<init>:()V
athrow
2: StackMap locals:
StackMap stack:
aload 0
invokevirtual org.xnio.ssl.JsseSslConduitEngine.getSendBuffer:()Ljava/nio/ByteBuffer;
astore 1
start local 1 3: aload 1
invokevirtual java.nio.ByteBuffer.flip:()Ljava/nio/Buffer;
pop
4: goto 9
5: StackMap locals: java.nio.ByteBuffer
StackMap stack:
aload 0
getfield org.xnio.ssl.JsseSslConduitEngine.sinkConduit:Lorg/xnio/conduits/StreamSinkConduit;
aload 1
invokeinterface org.xnio.conduits.StreamSinkConduit.write:(Ljava/nio/ByteBuffer;)I
istore 2
start local 2 6: iload 2
ifne 9
7: aload 1
invokevirtual java.nio.ByteBuffer.compact:()Ljava/nio/ByteBuffer;
pop
8: iconst_0
ireturn
end local 2 9: StackMap locals:
StackMap stack:
aload 1
invokevirtual java.nio.ByteBuffer.hasRemaining:()Z
ifne 5
10: goto 14
StackMap locals:
StackMap stack: java.lang.Throwable
11: astore 3
12: aload 1
invokevirtual java.nio.ByteBuffer.compact:()Ljava/nio/ByteBuffer;
pop
13: aload 3
athrow
14: StackMap locals:
StackMap stack:
aload 1
invokevirtual java.nio.ByteBuffer.compact:()Ljava/nio/ByteBuffer;
pop
15: aload 0
getfield org.xnio.ssl.JsseSslConduitEngine.sinkConduit:Lorg/xnio/conduits/StreamSinkConduit;
invokeinterface org.xnio.conduits.StreamSinkConduit.flush:()Z
ireturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 16 0 this Lorg/xnio/ssl/JsseSslConduitEngine;
3 16 1 buffer Ljava/nio/ByteBuffer;
6 9 2 res I
Exception table:
from to target type
4 7 11 any
9 11 11 any
Exceptions:
throws java.io.IOException
private void closeEngine();
descriptor: ()V
flags: (0x0002) ACC_PRIVATE
Code:
stack=2, locals=4, args_size=1
start local 0 0: aload 0
ldc 8388608
invokevirtual org.xnio.ssl.JsseSslConduitEngine.setFlags:(I)I
istore 1
start local 1 1: iload 1
ldc 8388608
invokestatic org.xnio.Bits.allAreSet:(II)Z
ifeq 3
2: return
3: StackMap locals: int
StackMap stack:
aload 0
invokevirtual org.xnio.ssl.JsseSslConduitEngine.getWrapLock:()Ljava/lang/Object;
dup
astore 2
monitorenter
4: aload 0
invokevirtual org.xnio.ssl.JsseSslConduitEngine.doFlush:()Z
ifne 6
5: getstatic org.xnio._private.Messages.msg:Lorg/xnio/_private/Messages;
invokeinterface org.xnio._private.Messages.unflushedData:()Ljava/io/IOException;
athrow
6: StackMap locals: java.lang.Object
StackMap stack:
aload 2
monitorexit
7: goto 15
StackMap locals:
StackMap stack: java.lang.Throwable
8: aload 2
monitorexit
9: athrow
10: StackMap locals: org.xnio.ssl.JsseSslConduitEngine int
StackMap stack: java.lang.Throwable
astore 3
11: aload 0
getfield org.xnio.ssl.JsseSslConduitEngine.readBuffer:Lorg/xnio/Pooled;
invokeinterface org.xnio.Pooled.free:()V
12: aload 0
getfield org.xnio.ssl.JsseSslConduitEngine.receiveBuffer:Lorg/xnio/Pooled;
invokeinterface org.xnio.Pooled.free:()V
13: aload 0
getfield org.xnio.ssl.JsseSslConduitEngine.sendBuffer:Lorg/xnio/Pooled;
invokeinterface org.xnio.Pooled.free:()V
14: aload 3
athrow
15: StackMap locals:
StackMap stack:
aload 0
getfield org.xnio.ssl.JsseSslConduitEngine.readBuffer:Lorg/xnio/Pooled;
invokeinterface org.xnio.Pooled.free:()V
16: aload 0
getfield org.xnio.ssl.JsseSslConduitEngine.receiveBuffer:Lorg/xnio/Pooled;
invokeinterface org.xnio.Pooled.free:()V
17: aload 0
getfield org.xnio.ssl.JsseSslConduitEngine.sendBuffer:Lorg/xnio/Pooled;
invokeinterface org.xnio.Pooled.free:()V
18: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 19 0 this Lorg/xnio/ssl/JsseSslConduitEngine;
1 19 1 old I
Exception table:
from to target type
4 7 8 any
8 9 8 any
3 10 10 any
Exceptions:
throws java.io.IOException
public void closeOutbound();
descriptor: ()V
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=4, args_size=1
start local 0 0: aload 0
ldc 131072
invokevirtual org.xnio.ssl.JsseSslConduitEngine.setFlags:(I)I
istore 1
start local 1 1: iload 1
ldc 131072
invokestatic org.xnio.Bits.allAreClear:(II)Z
ifeq 10
2: aload 0
getfield org.xnio.ssl.JsseSslConduitEngine.engine:Ljavax/net/ssl/SSLEngine;
invokevirtual javax.net.ssl.SSLEngine.closeOutbound:()V
3: aload 0
invokevirtual org.xnio.ssl.JsseSslConduitEngine.getWrapLock:()Ljava/lang/Object;
dup
astore 2
monitorenter
4: aload 0
invokevirtual org.xnio.ssl.JsseSslConduitEngine.wrapCloseMessage:()Z
pop
5: aload 0
invokevirtual org.xnio.ssl.JsseSslConduitEngine.flush:()Z
pop
6: aload 2
monitorexit
7: goto 10
StackMap locals: org.xnio.ssl.JsseSslConduitEngine int java.lang.Object
StackMap stack: java.lang.Throwable
8: aload 2
monitorexit
9: athrow
10: StackMap locals:
StackMap stack:
iload 1
iconst_2
invokestatic org.xnio.Bits.allAreClear:(II)Z
ifne 21
11: aload 0
invokevirtual org.xnio.ssl.JsseSslConduitEngine.closeEngine:()V
12: goto 21
StackMap locals:
StackMap stack: java.lang.Exception
13: astore 2
start local 2 14: aload 0
invokevirtual org.xnio.ssl.JsseSslConduitEngine.closeEngine:()V
15: goto 18
StackMap locals: org.xnio.ssl.JsseSslConduitEngine int java.lang.Exception
StackMap stack: java.lang.Exception
16: astore 3
start local 3 17: getstatic org.xnio._private.Messages.msg:Lorg/xnio/_private/Messages;
aload 2
aload 3
invokeinterface org.xnio._private.Messages.failedToCloseSSLEngine:(Ljava/lang/Throwable;Ljava/lang/Exception;)V
end local 3 18: StackMap locals:
StackMap stack:
aload 2
instanceof java.io.IOException
ifeq 20
19: aload 2
checkcast java.io.IOException
athrow
20: StackMap locals:
StackMap stack:
aload 2
checkcast java.lang.RuntimeException
athrow
end local 2 21: StackMap locals:
StackMap stack:
return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 22 0 this Lorg/xnio/ssl/JsseSslConduitEngine;
1 22 1 old I
14 21 2 e Ljava/lang/Exception;
17 18 3 closeEngineException Ljava/lang/Exception;
Exception table:
from to target type
4 7 8 any
8 9 8 any
1 12 13 Class java.lang.Exception
14 15 16 Class java.lang.Exception
Exceptions:
throws java.io.IOException
void close();
descriptor: ()V
flags: (0x0000)
Code:
stack=2, locals=3, args_size=1
start local 0 0: aload 0
invokevirtual org.xnio.ssl.JsseSslConduitEngine.isFirstHandshake:()Z
ifeq 4
1: aload 0
ldc 393218
invokevirtual org.xnio.ssl.JsseSslConduitEngine.setFlags:(I)I
pop
2: aload 0
invokevirtual org.xnio.ssl.JsseSslConduitEngine.closeEngine:()V
3: goto 14
4: StackMap locals:
StackMap stack:
aload 0
invokevirtual org.xnio.ssl.JsseSslConduitEngine.closeInbound:()V
5: goto 13
StackMap locals:
StackMap stack: java.lang.Throwable
6: astore 1
start local 1 7: aload 0
invokevirtual org.xnio.ssl.JsseSslConduitEngine.closeOutbound:()V
8: goto 12
StackMap locals: org.xnio.ssl.JsseSslConduitEngine java.lang.Throwable
StackMap stack: java.lang.Throwable
9: astore 2
start local 2 10: aload 2
aload 1
invokevirtual java.lang.Throwable.addSuppressed:(Ljava/lang/Throwable;)V
11: aload 2
athrow
end local 2 12: StackMap locals:
StackMap stack:
aload 1
athrow
end local 1 13: StackMap locals:
StackMap stack:
aload 0
invokevirtual org.xnio.ssl.JsseSslConduitEngine.closeOutbound:()V
14: StackMap locals:
StackMap stack:
return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 15 0 this Lorg/xnio/ssl/JsseSslConduitEngine;
7 13 1 t Ljava/lang/Throwable;
10 12 2 t2 Ljava/lang/Throwable;
Exception table:
from to target type
4 5 6 Class java.lang.Throwable
7 8 9 Class java.lang.Throwable
Exceptions:
throws java.io.IOException
public boolean isOutboundClosed();
descriptor: ()Z
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=1, args_size=1
start local 0 0: getstatic org.xnio.ssl.JsseSslConduitEngine.stateUpdater:Ljava/util/concurrent/atomic/AtomicIntegerFieldUpdater;
aload 0
invokevirtual java.util.concurrent.atomic.AtomicIntegerFieldUpdater.get:(Ljava/lang/Object;)I
ldc 131072
invokestatic org.xnio.Bits.allAreSet:(II)Z
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/xnio/ssl/JsseSslConduitEngine;
public void awaitCanWrap();
descriptor: ()V
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=5, args_size=1
start local 0 0: aload 0
getfield org.xnio.ssl.JsseSslConduitEngine.state:I
istore 1
start local 1 1: iload 1
ldc 131072
invokestatic org.xnio.Bits.anyAreSet:(II)Z
ifne 2
iload 1
ldc 65536
invokestatic org.xnio.Bits.allAreSet:(II)Z
ifne 3
2: StackMap locals: int
StackMap stack:
return
3: StackMap locals:
StackMap stack:
invokestatic java.lang.Thread.currentThread:()Ljava/lang/Thread;
astore 2
start local 2 4: getstatic org.xnio.ssl.JsseSslConduitEngine.writeWaiterUpdater:Ljava/util/concurrent/atomic/AtomicReferenceFieldUpdater;
aload 0
aload 2
invokevirtual java.util.concurrent.atomic.AtomicReferenceFieldUpdater.getAndSet:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
checkcast java.lang.Thread
astore 3
start local 3 5: aload 0
getfield org.xnio.ssl.JsseSslConduitEngine.state:I
dup
istore 1
ldc 131072
invokestatic org.xnio.Bits.anyAreSet:(II)Z
ifeq 8
6: aload 3
ifnull 7
aload 3
invokestatic java.util.concurrent.locks.LockSupport.unpark:(Ljava/lang/Thread;)V
7: StackMap locals: java.lang.Thread java.lang.Thread
StackMap stack:
return
8: StackMap locals:
StackMap stack:
iload 1
ldc 65536
invokestatic org.xnio.Bits.allAreSet:(II)Z
ifeq 10
9: aload 0
getstatic org.xnio.Buffers.EMPTY_BYTE_BUFFER:Ljava/nio/ByteBuffer;
invokevirtual org.xnio.ssl.JsseSslConduitEngine.unwrap:(Ljava/nio/ByteBuffer;)I
pop
10: StackMap locals:
StackMap stack:
aload 0
invokestatic java.util.concurrent.locks.LockSupport.park:(Ljava/lang/Object;)V
11: aload 2
invokevirtual java.lang.Thread.isInterrupted:()Z
ifeq 16
12: getstatic org.xnio._private.Messages.msg:Lorg/xnio/_private/Messages;
invokeinterface org.xnio._private.Messages.interruptedIO:()Ljava/io/InterruptedIOException;
athrow
13: StackMap locals:
StackMap stack: java.lang.Throwable
astore 4
14: aload 3
ifnull 15
aload 3
invokestatic java.util.concurrent.locks.LockSupport.unpark:(Ljava/lang/Thread;)V
15: StackMap locals: java.lang.Throwable
StackMap stack:
aload 4
athrow
16: StackMap locals:
StackMap stack:
aload 3
ifnull 17
aload 3
invokestatic java.util.concurrent.locks.LockSupport.unpark:(Ljava/lang/Thread;)V
17: StackMap locals:
StackMap stack:
return
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 18 0 this Lorg/xnio/ssl/JsseSslConduitEngine;
1 18 1 oldState I
4 18 2 thread Ljava/lang/Thread;
5 18 3 next Ljava/lang/Thread;
Exception table:
from to target type
5 6 13 any
8 13 13 any
Exceptions:
throws java.io.IOException
public void awaitCanWrap(long, java.util.concurrent.TimeUnit);
descriptor: (JLjava/util/concurrent/TimeUnit;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=10, args_size=3
start local 0 start local 1 start local 3 0: aload 0
getfield org.xnio.ssl.JsseSslConduitEngine.state:I
istore 4
start local 4 1: iload 4
ldc 131072
invokestatic org.xnio.Bits.anyAreSet:(II)Z
ifne 2
iload 4
ldc 65536
invokestatic org.xnio.Bits.allAreSet:(II)Z
ifne 3
2: StackMap locals: int
StackMap stack:
return
3: StackMap locals:
StackMap stack:
invokestatic java.lang.Thread.currentThread:()Ljava/lang/Thread;
astore 5
start local 5 4: getstatic org.xnio.ssl.JsseSslConduitEngine.writeWaiterUpdater:Ljava/util/concurrent/atomic/AtomicReferenceFieldUpdater;
aload 0
aload 5
invokevirtual java.util.concurrent.atomic.AtomicReferenceFieldUpdater.getAndSet:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
checkcast java.lang.Thread
astore 6
start local 6 5: aload 3
lload 1
invokevirtual java.util.concurrent.TimeUnit.toNanos:(J)J
lstore 7
start local 7 6: aload 0
getfield org.xnio.ssl.JsseSslConduitEngine.state:I
dup
istore 4
ldc 131072
invokestatic org.xnio.Bits.anyAreSet:(II)Z
ifeq 9
7: aload 6
ifnull 8
aload 6
invokestatic java.util.concurrent.locks.LockSupport.unpark:(Ljava/lang/Thread;)V
8: StackMap locals: java.lang.Thread java.lang.Thread long
StackMap stack:
return
9: StackMap locals:
StackMap stack:
iload 4
ldc 65536
invokestatic org.xnio.Bits.allAreSet:(II)Z
ifeq 11
10: aload 0
getstatic org.xnio.Buffers.EMPTY_BYTE_BUFFER:Ljava/nio/ByteBuffer;
invokevirtual org.xnio.ssl.JsseSslConduitEngine.unwrap:(Ljava/nio/ByteBuffer;)I
pop
11: StackMap locals:
StackMap stack:
aload 0
lload 7
invokestatic java.util.concurrent.locks.LockSupport.parkNanos:(Ljava/lang/Object;J)V
12: aload 5
invokevirtual java.lang.Thread.isInterrupted:()Z
ifeq 17
13: getstatic org.xnio._private.Messages.msg:Lorg/xnio/_private/Messages;
invokeinterface org.xnio._private.Messages.interruptedIO:()Ljava/io/InterruptedIOException;
athrow
14: StackMap locals:
StackMap stack: java.lang.Throwable
astore 9
15: aload 6
ifnull 16
aload 6
invokestatic java.util.concurrent.locks.LockSupport.unpark:(Ljava/lang/Thread;)V
16: StackMap locals: java.lang.Throwable
StackMap stack:
aload 9
athrow
17: StackMap locals:
StackMap stack:
aload 6
ifnull 18
aload 6
invokestatic java.util.concurrent.locks.LockSupport.unpark:(Ljava/lang/Thread;)V
18: StackMap locals:
StackMap stack:
return
end local 7 end local 6 end local 5 end local 4 end local 3 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 19 0 this Lorg/xnio/ssl/JsseSslConduitEngine;
0 19 1 time J
0 19 3 timeUnit Ljava/util/concurrent/TimeUnit;
1 19 4 oldState I
4 19 5 thread Ljava/lang/Thread;
5 19 6 next Ljava/lang/Thread;
6 19 7 duration J
Exception table:
from to target type
6 7 14 any
9 14 14 any
Exceptions:
throws java.io.IOException
MethodParameters:
Name Flags
time
timeUnit
public void closeInbound();
descriptor: ()V
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=3, args_size=1
start local 0 0: aload 0
getfield org.xnio.ssl.JsseSslConduitEngine.connection:Lorg/xnio/ssl/JsseSslStreamConnection;
invokevirtual org.xnio.ssl.JsseSslStreamConnection.readClosed:()Z
pop
1: aload 0
iconst_2
invokevirtual org.xnio.ssl.JsseSslConduitEngine.setFlags:(I)I
istore 1
start local 1 2: iload 1
iconst_2
invokestatic org.xnio.Bits.allAreClear:(II)Z
ifeq 4
3: aload 0
getfield org.xnio.ssl.JsseSslConduitEngine.sourceConduit:Lorg/xnio/conduits/StreamSourceConduit;
invokeinterface org.xnio.conduits.StreamSourceConduit.terminateReads:()V
4: StackMap locals: int
StackMap stack:
iload 1
ldc 131072
invokestatic org.xnio.Bits.allAreSet:(II)Z
ifeq 12
iload 1
ldc 262144
invokestatic org.xnio.Bits.allAreSet:(II)Z
ifne 12
5: aload 0
invokevirtual org.xnio.ssl.JsseSslConduitEngine.getWrapLock:()Ljava/lang/Object;
dup
astore 2
monitorenter
6: aload 0
invokevirtual org.xnio.ssl.JsseSslConduitEngine.wrapCloseMessage:()Z
pop
7: aload 0
invokevirtual org.xnio.ssl.JsseSslConduitEngine.flush:()Z
pop
8: aload 2
monitorexit
9: goto 12
StackMap locals: org.xnio.ssl.JsseSslConduitEngine int java.lang.Object
StackMap stack: java.lang.Throwable
10: aload 2
monitorexit
11: athrow
12: StackMap locals:
StackMap stack:
iload 1
ldc 262144
invokestatic org.xnio.Bits.allAreSet:(II)Z
ifeq 20
13: aload 0
invokevirtual org.xnio.ssl.JsseSslConduitEngine.closeEngine:()V
14: goto 20
StackMap locals:
StackMap stack: java.lang.Exception
15: astore 2
start local 2 16: aload 0
invokevirtual org.xnio.ssl.JsseSslConduitEngine.closeEngine:()V
17: aload 2
instanceof java.io.IOException
ifeq 19
18: aload 2
checkcast java.io.IOException
athrow
19: StackMap locals: java.lang.Exception
StackMap stack:
aload 2
checkcast java.lang.RuntimeException
athrow
end local 2 20: StackMap locals:
StackMap stack:
return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 21 0 this Lorg/xnio/ssl/JsseSslConduitEngine;
2 21 1 old I
16 20 2 e Ljava/lang/Exception;
Exception table:
from to target type
6 9 10 any
10 11 10 any
2 14 15 Class java.lang.Exception
Exceptions:
throws java.io.IOException
public boolean isInboundClosed();
descriptor: ()Z
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=1, args_size=1
start local 0 0: aload 0
getfield org.xnio.ssl.JsseSslConduitEngine.state:I
iconst_2
invokestatic org.xnio.Bits.allAreSet:(II)Z
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/xnio/ssl/JsseSslConduitEngine;
public boolean isClosed();
descriptor: ()Z
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=1, args_size=1
start local 0 0: aload 0
getfield org.xnio.ssl.JsseSslConduitEngine.state:I
ldc 8388608
invokestatic org.xnio.Bits.allAreSet:(II)Z
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/xnio/ssl/JsseSslConduitEngine;
public void awaitCanUnwrap();
descriptor: ()V
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=5, args_size=1
start local 0 0: aload 0
getfield org.xnio.ssl.JsseSslConduitEngine.state:I
istore 1
start local 1 1: iload 1
iconst_2
invokestatic org.xnio.Bits.anyAreSet:(II)Z
ifne 2
iload 1
iconst_1
invokestatic org.xnio.Bits.anyAreSet:(II)Z
ifne 3
2: StackMap locals: int
StackMap stack:
return
3: StackMap locals:
StackMap stack:
invokestatic java.lang.Thread.currentThread:()Ljava/lang/Thread;
astore 2
start local 2 4: getstatic org.xnio.ssl.JsseSslConduitEngine.readWaiterUpdater:Ljava/util/concurrent/atomic/AtomicReferenceFieldUpdater;
aload 0
aload 2
invokevirtual java.util.concurrent.atomic.AtomicReferenceFieldUpdater.getAndSet:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
checkcast java.lang.Thread
astore 3
start local 3 5: aload 0
getfield org.xnio.ssl.JsseSslConduitEngine.state:I
dup
istore 1
iconst_2
invokestatic org.xnio.Bits.anyAreSet:(II)Z
ifeq 8
6: aload 3
ifnull 7
aload 3
invokestatic java.util.concurrent.locks.LockSupport.unpark:(Ljava/lang/Thread;)V
7: StackMap locals: java.lang.Thread java.lang.Thread
StackMap stack:
return
8: StackMap locals:
StackMap stack:
iload 1
iconst_1
invokestatic org.xnio.Bits.allAreSet:(II)Z
ifeq 10
9: aload 0
getstatic org.xnio.Buffers.EMPTY_BYTE_BUFFER:Ljava/nio/ByteBuffer;
invokevirtual org.xnio.ssl.JsseSslConduitEngine.wrap:(Ljava/nio/ByteBuffer;)I
pop
10: StackMap locals:
StackMap stack:
aload 0
invokestatic java.util.concurrent.locks.LockSupport.park:(Ljava/lang/Object;)V
11: aload 2
invokevirtual java.lang.Thread.isInterrupted:()Z
ifeq 16
12: getstatic org.xnio._private.Messages.msg:Lorg/xnio/_private/Messages;
invokeinterface org.xnio._private.Messages.interruptedIO:()Ljava/io/InterruptedIOException;
athrow
13: StackMap locals:
StackMap stack: java.lang.Throwable
astore 4
14: aload 3
ifnull 15
aload 3
invokestatic java.util.concurrent.locks.LockSupport.unpark:(Ljava/lang/Thread;)V
15: StackMap locals: java.lang.Throwable
StackMap stack:
aload 4
athrow
16: StackMap locals:
StackMap stack:
aload 3
ifnull 17
aload 3
invokestatic java.util.concurrent.locks.LockSupport.unpark:(Ljava/lang/Thread;)V
17: StackMap locals:
StackMap stack:
return
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 18 0 this Lorg/xnio/ssl/JsseSslConduitEngine;
1 18 1 oldState I
4 18 2 thread Ljava/lang/Thread;
5 18 3 next Ljava/lang/Thread;
Exception table:
from to target type
5 6 13 any
8 13 13 any
Exceptions:
throws java.io.IOException
public void awaitCanUnwrap(long, java.util.concurrent.TimeUnit);
descriptor: (JLjava/util/concurrent/TimeUnit;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=10, args_size=3
start local 0 start local 1 start local 3 0: aload 0
getfield org.xnio.ssl.JsseSslConduitEngine.state:I
istore 4
start local 4 1: iload 4
iconst_2
invokestatic org.xnio.Bits.anyAreSet:(II)Z
ifne 2
iload 4
iconst_1
invokestatic org.xnio.Bits.anyAreSet:(II)Z
ifne 3
2: StackMap locals: int
StackMap stack:
return
3: StackMap locals:
StackMap stack:
invokestatic java.lang.Thread.currentThread:()Ljava/lang/Thread;
astore 5
start local 5 4: getstatic org.xnio.ssl.JsseSslConduitEngine.readWaiterUpdater:Ljava/util/concurrent/atomic/AtomicReferenceFieldUpdater;
aload 0
aload 5
invokevirtual java.util.concurrent.atomic.AtomicReferenceFieldUpdater.getAndSet:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
checkcast java.lang.Thread
astore 6
start local 6 5: aload 3
lload 1
invokevirtual java.util.concurrent.TimeUnit.toNanos:(J)J
lstore 7
start local 7 6: aload 0
getfield org.xnio.ssl.JsseSslConduitEngine.state:I
dup
istore 4
iconst_2
invokestatic org.xnio.Bits.anyAreSet:(II)Z
ifeq 9
7: aload 6
ifnull 8
aload 6
invokestatic java.util.concurrent.locks.LockSupport.unpark:(Ljava/lang/Thread;)V
8: StackMap locals: java.lang.Thread java.lang.Thread long
StackMap stack:
return
9: StackMap locals:
StackMap stack:
iload 4
iconst_1
invokestatic org.xnio.Bits.allAreSet:(II)Z
ifeq 11
10: aload 0
getstatic org.xnio.Buffers.EMPTY_BYTE_BUFFER:Ljava/nio/ByteBuffer;
invokevirtual org.xnio.ssl.JsseSslConduitEngine.wrap:(Ljava/nio/ByteBuffer;)I
pop
11: StackMap locals:
StackMap stack:
aload 0
lload 7
invokestatic java.util.concurrent.locks.LockSupport.parkNanos:(Ljava/lang/Object;J)V
12: aload 5
invokevirtual java.lang.Thread.isInterrupted:()Z
ifeq 17
13: getstatic org.xnio._private.Messages.msg:Lorg/xnio/_private/Messages;
invokeinterface org.xnio._private.Messages.interruptedIO:()Ljava/io/InterruptedIOException;
athrow
14: StackMap locals:
StackMap stack: java.lang.Throwable
astore 9
15: aload 6
ifnull 16
aload 6
invokestatic java.util.concurrent.locks.LockSupport.unpark:(Ljava/lang/Thread;)V
16: StackMap locals: java.lang.Throwable
StackMap stack:
aload 9
athrow
17: StackMap locals:
StackMap stack:
aload 6
ifnull 18
aload 6
invokestatic java.util.concurrent.locks.LockSupport.unpark:(Ljava/lang/Thread;)V
18: StackMap locals:
StackMap stack:
return
end local 7 end local 6 end local 5 end local 4 end local 3 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 19 0 this Lorg/xnio/ssl/JsseSslConduitEngine;
0 19 1 time J
0 19 3 timeUnit Ljava/util/concurrent/TimeUnit;
1 19 4 oldState I
4 19 5 thread Ljava/lang/Thread;
5 19 6 next Ljava/lang/Thread;
6 19 7 duration J
Exception table:
from to target type
6 7 14 any
9 14 14 any
Exceptions:
throws java.io.IOException
MethodParameters:
Name Flags
time
timeUnit
public boolean isFirstHandshake();
descriptor: ()Z
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=1, args_size=1
start local 0 0: aload 0
getfield org.xnio.ssl.JsseSslConduitEngine.state:I
ldc 4194304
invokestatic org.xnio.Bits.allAreSet:(II)Z
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/xnio/ssl/JsseSslConduitEngine;
javax.net.ssl.SSLEngine getEngine();
descriptor: ()Ljavax/net/ssl/SSLEngine;
flags: (0x0000)
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield org.xnio.ssl.JsseSslConduitEngine.engine:Ljavax/net/ssl/SSLEngine;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/xnio/ssl/JsseSslConduitEngine;
private void needWrap();
descriptor: ()V
flags: (0x0002) ACC_PRIVATE
Code:
stack=2, locals=1, args_size=1
start local 0 0: aload 0
iconst_1
invokevirtual org.xnio.ssl.JsseSslConduitEngine.setFlags:(I)I
pop
1: return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lorg/xnio/ssl/JsseSslConduitEngine;
private boolean isWrapNeeded();
descriptor: ()Z
flags: (0x0002) ACC_PRIVATE
Code:
stack=2, locals=1, args_size=1
start local 0 0: aload 0
getfield org.xnio.ssl.JsseSslConduitEngine.state:I
iconst_1
invokestatic org.xnio.Bits.allAreSet:(II)Z
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/xnio/ssl/JsseSslConduitEngine;
private void clearNeedWrap();
descriptor: ()V
flags: (0x0002) ACC_PRIVATE
Code:
stack=2, locals=1, args_size=1
start local 0 0: aload 0
iconst_1
invokevirtual org.xnio.ssl.JsseSslConduitEngine.clearFlags:(I)I
pop
1: return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lorg/xnio/ssl/JsseSslConduitEngine;
private void needUnwrap();
descriptor: ()V
flags: (0x0002) ACC_PRIVATE
Code:
stack=2, locals=1, args_size=1
start local 0 0: aload 0
ldc 65536
invokevirtual org.xnio.ssl.JsseSslConduitEngine.setFlags:(I)I
pop
1: return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lorg/xnio/ssl/JsseSslConduitEngine;
private boolean isUnwrapNeeded();
descriptor: ()Z
flags: (0x0002) ACC_PRIVATE
Code:
stack=2, locals=1, args_size=1
start local 0 0: aload 0
getfield org.xnio.ssl.JsseSslConduitEngine.state:I
ldc 65536
invokestatic org.xnio.Bits.allAreSet:(II)Z
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/xnio/ssl/JsseSslConduitEngine;
private boolean isUnderflow();
descriptor: ()Z
flags: (0x0002) ACC_PRIVATE
Code:
stack=2, locals=1, args_size=1
start local 0 0: aload 0
getfield org.xnio.ssl.JsseSslConduitEngine.state:I
iconst_4
invokestatic org.xnio.Bits.allAreSet:(II)Z
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/xnio/ssl/JsseSslConduitEngine;
private void clearNeedUnwrap();
descriptor: ()V
flags: (0x0002) ACC_PRIVATE
Code:
stack=2, locals=1, args_size=1
start local 0 0: aload 0
ldc 65536
invokevirtual org.xnio.ssl.JsseSslConduitEngine.clearFlags:(I)I
pop
1: return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lorg/xnio/ssl/JsseSslConduitEngine;
private int setFlags(int);
descriptor: (I)I
flags: (0x0002) ACC_PRIVATE
Code:
stack=5, locals=3, args_size=2
start local 0 start local 1 0: StackMap locals:
StackMap stack:
aload 0
getfield org.xnio.ssl.JsseSslConduitEngine.state:I
istore 2
start local 2 1: iload 2
iload 1
iand
iload 1
if_icmpne 3
2: iload 2
ireturn
3: StackMap locals: int
StackMap stack:
getstatic org.xnio.ssl.JsseSslConduitEngine.stateUpdater:Ljava/util/concurrent/atomic/AtomicIntegerFieldUpdater;
aload 0
iload 2
iload 2
iload 1
ior
invokevirtual java.util.concurrent.atomic.AtomicIntegerFieldUpdater.compareAndSet:(Ljava/lang/Object;II)Z
ifeq 0
4: iload 2
ireturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 5 0 this Lorg/xnio/ssl/JsseSslConduitEngine;
0 5 1 flags I
1 5 2 oldState I
MethodParameters:
Name Flags
flags
private int clearFlags(int);
descriptor: (I)I
flags: (0x0002) ACC_PRIVATE
Code:
stack=6, locals=3, args_size=2
start local 0 start local 1 0: StackMap locals:
StackMap stack:
aload 0
getfield org.xnio.ssl.JsseSslConduitEngine.state:I
istore 2
start local 2 1: iload 2
iload 1
iand
ifne 3
2: iload 2
ireturn
3: StackMap locals: int
StackMap stack:
getstatic org.xnio.ssl.JsseSslConduitEngine.stateUpdater:Ljava/util/concurrent/atomic/AtomicIntegerFieldUpdater;
aload 0
iload 2
iload 2
iload 1
iconst_m1
ixor
iand
invokevirtual java.util.concurrent.atomic.AtomicIntegerFieldUpdater.compareAndSet:(Ljava/lang/Object;II)Z
ifeq 0
4: iload 2
ireturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 5 0 this Lorg/xnio/ssl/JsseSslConduitEngine;
0 5 1 flags I
1 5 2 oldState I
MethodParameters:
Name Flags
flags
public boolean isDataAvailable();
descriptor: ()Z
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=2, args_size=1
start local 0 0: aload 0
invokevirtual org.xnio.ssl.JsseSslConduitEngine.getUnwrapLock:()Ljava/lang/Object;
dup
astore 1
monitorenter
1: aload 0
getfield org.xnio.ssl.JsseSslConduitEngine.readBuffer:Lorg/xnio/Pooled;
invokeinterface org.xnio.Pooled.getResource:()Ljava/lang/Object;
checkcast java.nio.ByteBuffer
invokevirtual java.nio.ByteBuffer.hasRemaining:()Z
ifne 3
aload 0
getfield org.xnio.ssl.JsseSslConduitEngine.receiveBuffer:Lorg/xnio/Pooled;
invokeinterface org.xnio.Pooled.getResource:()Ljava/lang/Object;
checkcast java.nio.ByteBuffer
invokevirtual java.nio.ByteBuffer.hasRemaining:()Z
ifeq 2
aload 0
invokevirtual org.xnio.ssl.JsseSslConduitEngine.isUnderflow:()Z
ifeq 3
StackMap locals: java.lang.Object
StackMap stack:
2: iconst_0
goto 4
StackMap locals:
StackMap stack:
3: iconst_1
StackMap locals:
StackMap stack: int
4: aload 1
monitorexit
5: ireturn
6: StackMap locals:
StackMap stack: java.lang.IllegalStateException
pop
7: aload 1
monitorexit
8: iconst_0
ireturn
9: StackMap locals:
StackMap stack: java.lang.Throwable
aload 1
monitorexit
10: athrow
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 11 0 this Lorg/xnio/ssl/JsseSslConduitEngine;
Exception table:
from to target type
1 4 6 Class java.lang.IllegalStateException
1 5 9 any
6 8 9 any
9 10 9 any
private final java.nio.ByteBuffer getSendBuffer();
descriptor: ()Ljava/nio/ByteBuffer;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield org.xnio.ssl.JsseSslConduitEngine.expandedSendBuffer:Ljava/nio/ByteBuffer;
ifnull 1
aload 0
getfield org.xnio.ssl.JsseSslConduitEngine.expandedSendBuffer:Ljava/nio/ByteBuffer;
goto 2
StackMap locals:
StackMap stack:
1: aload 0
getfield org.xnio.ssl.JsseSslConduitEngine.sendBuffer:Lorg/xnio/Pooled;
invokeinterface org.xnio.Pooled.getResource:()Ljava/lang/Object;
checkcast java.nio.ByteBuffer
StackMap locals:
StackMap stack: java.nio.ByteBuffer
2: areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lorg/xnio/ssl/JsseSslConduitEngine;
static int[] $SWITCH_TABLE$javax$net$ssl$SSLEngineResult$Status();
descriptor: ()[I
flags: (0x1008) ACC_STATIC, ACC_SYNTHETIC
Code:
stack=3, locals=1, args_size=0
0: getstatic org.xnio.ssl.JsseSslConduitEngine.$SWITCH_TABLE$javax$net$ssl$SSLEngineResult$Status:[I
dup
ifnull 1
areturn
StackMap locals:
StackMap stack: int[]
1: pop
invokestatic javax.net.ssl.SSLEngineResult$Status.values:()[Ljavax/net/ssl/SSLEngineResult$Status;
arraylength
newarray 10
astore 0
2: aload 0
getstatic javax.net.ssl.SSLEngineResult$Status.BUFFER_OVERFLOW:Ljavax/net/ssl/SSLEngineResult$Status;
invokevirtual javax.net.ssl.SSLEngineResult$Status.ordinal:()I
iconst_2
iastore
3: goto 5
StackMap locals: int[]
StackMap stack: java.lang.NoSuchFieldError
4: pop
StackMap locals:
StackMap stack:
5: aload 0
getstatic javax.net.ssl.SSLEngineResult$Status.BUFFER_UNDERFLOW:Ljavax/net/ssl/SSLEngineResult$Status;
invokevirtual javax.net.ssl.SSLEngineResult$Status.ordinal:()I
iconst_1
iastore
6: goto 8
StackMap locals:
StackMap stack: java.lang.NoSuchFieldError
7: pop
StackMap locals:
StackMap stack:
8: aload 0
getstatic javax.net.ssl.SSLEngineResult$Status.CLOSED:Ljavax/net/ssl/SSLEngineResult$Status;
invokevirtual javax.net.ssl.SSLEngineResult$Status.ordinal:()I
iconst_4
iastore
9: goto 11
StackMap locals:
StackMap stack: java.lang.NoSuchFieldError
10: pop
StackMap locals:
StackMap stack:
11: aload 0
getstatic javax.net.ssl.SSLEngineResult$Status.OK:Ljavax/net/ssl/SSLEngineResult$Status;
invokevirtual javax.net.ssl.SSLEngineResult$Status.ordinal:()I
iconst_3
iastore
12: goto 14
StackMap locals:
StackMap stack: java.lang.NoSuchFieldError
13: pop
StackMap locals:
StackMap stack:
14: aload 0
dup
putstatic org.xnio.ssl.JsseSslConduitEngine.$SWITCH_TABLE$javax$net$ssl$SSLEngineResult$Status:[I
areturn
LocalVariableTable:
Start End Slot Name Signature
Exception table:
from to target type
2 3 4 Class java.lang.NoSuchFieldError
5 6 7 Class java.lang.NoSuchFieldError
8 9 10 Class java.lang.NoSuchFieldError
11 12 13 Class java.lang.NoSuchFieldError
static int[] $SWITCH_TABLE$javax$net$ssl$SSLEngineResult$HandshakeStatus();
descriptor: ()[I
flags: (0x1008) ACC_STATIC, ACC_SYNTHETIC
Code:
stack=3, locals=1, args_size=0
0: getstatic org.xnio.ssl.JsseSslConduitEngine.$SWITCH_TABLE$javax$net$ssl$SSLEngineResult$HandshakeStatus:[I
dup
ifnull 1
areturn
StackMap locals:
StackMap stack: int[]
1: pop
invokestatic javax.net.ssl.SSLEngineResult$HandshakeStatus.values:()[Ljavax/net/ssl/SSLEngineResult$HandshakeStatus;
arraylength
newarray 10
astore 0
2: aload 0
getstatic javax.net.ssl.SSLEngineResult$HandshakeStatus.FINISHED:Ljavax/net/ssl/SSLEngineResult$HandshakeStatus;
invokevirtual javax.net.ssl.SSLEngineResult$HandshakeStatus.ordinal:()I
iconst_2
iastore
3: goto 5
StackMap locals: int[]
StackMap stack: java.lang.NoSuchFieldError
4: pop
StackMap locals:
StackMap stack:
5: aload 0
getstatic javax.net.ssl.SSLEngineResult$HandshakeStatus.NEED_TASK:Ljavax/net/ssl/SSLEngineResult$HandshakeStatus;
invokevirtual javax.net.ssl.SSLEngineResult$HandshakeStatus.ordinal:()I
iconst_3
iastore
6: goto 8
StackMap locals:
StackMap stack: java.lang.NoSuchFieldError
7: pop
StackMap locals:
StackMap stack:
8: aload 0
getstatic javax.net.ssl.SSLEngineResult$HandshakeStatus.NEED_UNWRAP:Ljavax/net/ssl/SSLEngineResult$HandshakeStatus;
invokevirtual javax.net.ssl.SSLEngineResult$HandshakeStatus.ordinal:()I
iconst_5
iastore
9: goto 11
StackMap locals:
StackMap stack: java.lang.NoSuchFieldError
10: pop
StackMap locals:
StackMap stack:
11: aload 0
getstatic javax.net.ssl.SSLEngineResult$HandshakeStatus.NEED_WRAP:Ljavax/net/ssl/SSLEngineResult$HandshakeStatus;
invokevirtual javax.net.ssl.SSLEngineResult$HandshakeStatus.ordinal:()I
iconst_4
iastore
12: goto 14
StackMap locals:
StackMap stack: java.lang.NoSuchFieldError
13: pop
StackMap locals:
StackMap stack:
14: aload 0
getstatic javax.net.ssl.SSLEngineResult$HandshakeStatus.NOT_HANDSHAKING:Ljavax/net/ssl/SSLEngineResult$HandshakeStatus;
invokevirtual javax.net.ssl.SSLEngineResult$HandshakeStatus.ordinal:()I
iconst_1
iastore
15: goto 17
StackMap locals:
StackMap stack: java.lang.NoSuchFieldError
16: pop
StackMap locals:
StackMap stack:
17: aload 0
dup
putstatic org.xnio.ssl.JsseSslConduitEngine.$SWITCH_TABLE$javax$net$ssl$SSLEngineResult$HandshakeStatus:[I
areturn
LocalVariableTable:
Start End Slot Name Signature
Exception table:
from to target type
2 3 4 Class java.lang.NoSuchFieldError
5 6 7 Class java.lang.NoSuchFieldError
8 9 10 Class java.lang.NoSuchFieldError
11 12 13 Class java.lang.NoSuchFieldError
14 15 16 Class java.lang.NoSuchFieldError
}
SourceFile: "JsseSslConduitEngine.java"
InnerClasses:
public final HandshakeStatus = javax.net.ssl.SSLEngineResult$HandshakeStatus of javax.net.ssl.SSLEngineResult
public final Status = javax.net.ssl.SSLEngineResult$Status of javax.net.ssl.SSLEngineResult
public final Level = org.jboss.logging.Logger$Level of org.jboss.logging.Logger