final class sun.security.ssl.PostHandshakeContext extends sun.security.ssl.HandshakeContext
minor version: 0
major version: 59
flags: flags: (0x0030) ACC_FINAL, ACC_SUPER
this_class: sun.security.ssl.PostHandshakeContext
super_class: sun.security.ssl.HandshakeContext
{
private static final java.util.Map<java.lang.Byte, sun.security.ssl.SSLConsumer> consumers;
descriptor: Ljava/util/Map;
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
Signature: Ljava/util/Map<Ljava/lang/Byte;Lsun/security/ssl/SSLConsumer;>;
static void <clinit>();
descriptor: ()V
flags: (0x0008) ACC_STATIC
Code:
stack=4, locals=0, args_size=0
0: getstatic sun.security.ssl.SSLHandshake.KEY_UPDATE:Lsun/security/ssl/SSLHandshake;
getfield sun.security.ssl.SSLHandshake.id:B
invokestatic java.lang.Byte.valueOf:(B)Ljava/lang/Byte;
getstatic sun.security.ssl.SSLHandshake.KEY_UPDATE:Lsun/security/ssl/SSLHandshake;
1: getstatic sun.security.ssl.SSLHandshake.NEW_SESSION_TICKET:Lsun/security/ssl/SSLHandshake;
getfield sun.security.ssl.SSLHandshake.id:B
invokestatic java.lang.Byte.valueOf:(B)Ljava/lang/Byte;
getstatic sun.security.ssl.SSLHandshake.NEW_SESSION_TICKET:Lsun/security/ssl/SSLHandshake;
2: invokestatic java.util.Map.of:(Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;)Ljava/util/Map;
putstatic sun.security.ssl.PostHandshakeContext.consumers:Ljava/util/Map;
3: return
LocalVariableTable:
Start End Slot Name Signature
void <init>(sun.security.ssl.TransportContext);
descriptor: (Lsun/security/ssl/TransportContext;)V
flags: (0x0000)
Code:
stack=5, locals=2, args_size=2
start local 0 start local 1 0: aload 0
aload 1
invokespecial sun.security.ssl.HandshakeContext.<init>:(Lsun/security/ssl/TransportContext;)V
1: aload 0
getfield sun.security.ssl.PostHandshakeContext.negotiatedProtocol:Lsun/security/ssl/ProtocolVersion;
invokevirtual sun.security.ssl.ProtocolVersion.useTLS13PlusSpec:()Z
ifne 5
2: aload 0
getfield sun.security.ssl.PostHandshakeContext.conContext:Lsun/security/ssl/TransportContext;
getstatic sun.security.ssl.Alert.UNEXPECTED_MESSAGE:Lsun/security/ssl/Alert;
3: new java.lang.StringBuilder
dup
ldc "Post-handshake not supported in "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 0
getfield sun.security.ssl.PostHandshakeContext.negotiatedProtocol:Lsun/security/ssl/ProtocolVersion;
getfield sun.security.ssl.ProtocolVersion.name:Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
4: invokevirtual sun.security.ssl.TransportContext.fatal:(Lsun/security/ssl/Alert;Ljava/lang/String;)Ljavax/net/ssl/SSLException;
athrow
5: StackMap locals: sun.security.ssl.PostHandshakeContext sun.security.ssl.TransportContext
StackMap stack:
aload 0
new java.util.ArrayList
dup
6: aload 1
getfield sun.security.ssl.TransportContext.conSession:Lsun/security/ssl/SSLSessionImpl;
invokevirtual sun.security.ssl.SSLSessionImpl.getLocalSupportedSignatureSchemes:()Ljava/util/Collection;
invokespecial java.util.ArrayList.<init>:(Ljava/util/Collection;)V
7: putfield sun.security.ssl.PostHandshakeContext.localSupportedSignAlgs:Ljava/util/List;
8: aload 0
new java.util.LinkedHashMap
dup
getstatic sun.security.ssl.PostHandshakeContext.consumers:Ljava/util/Map;
invokespecial java.util.LinkedHashMap.<init>:(Ljava/util/Map;)V
putfield sun.security.ssl.PostHandshakeContext.handshakeConsumers:Ljava/util/LinkedHashMap;
9: aload 0
iconst_1
putfield sun.security.ssl.PostHandshakeContext.handshakeFinished:Z
10: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 11 0 this Lsun/security/ssl/PostHandshakeContext;
0 11 1 context Lsun/security/ssl/TransportContext;
Exceptions:
throws java.io.IOException
MethodParameters:
Name Flags
context
void kickstart();
descriptor: ()V
flags: (0x0000)
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
invokestatic sun.security.ssl.SSLHandshake.kickstart:(Lsun/security/ssl/HandshakeContext;)V
1: return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lsun/security/ssl/PostHandshakeContext;
Exceptions:
throws java.io.IOException
void dispatch(byte, java.nio.ByteBuffer);
descriptor: (BLjava/nio/ByteBuffer;)V
flags: (0x0000)
Code:
stack=5, locals=5, args_size=3
start local 0 start local 1 start local 2 0: aload 0
getfield sun.security.ssl.PostHandshakeContext.handshakeConsumers:Ljava/util/LinkedHashMap;
iload 1
invokestatic java.lang.Byte.valueOf:(B)Ljava/lang/Byte;
invokevirtual java.util.LinkedHashMap.get:(Ljava/lang/Object;)Ljava/lang/Object;
checkcast sun.security.ssl.SSLConsumer
astore 3
start local 3 1: aload 3
ifnonnull 7
2: aload 0
getfield sun.security.ssl.PostHandshakeContext.conContext:Lsun/security/ssl/TransportContext;
getstatic sun.security.ssl.Alert.UNEXPECTED_MESSAGE:Lsun/security/ssl/Alert;
3: new java.lang.StringBuilder
dup
ldc "Unexpected post-handshake message: "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
4: iload 1
invokestatic sun.security.ssl.SSLHandshake.nameOf:(B)Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
5: invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
6: invokevirtual sun.security.ssl.TransportContext.fatal:(Lsun/security/ssl/Alert;Ljava/lang/String;)Ljavax/net/ssl/SSLException;
athrow
7: StackMap locals: sun.security.ssl.SSLConsumer
StackMap stack:
aload 3
aload 0
aload 2
invokeinterface sun.security.ssl.SSLConsumer.consume:(Lsun/security/ssl/ConnectionContext;Ljava/nio/ByteBuffer;)V
8: goto 23
StackMap locals:
StackMap stack: java.lang.UnsupportedOperationException
9: astore 4
start local 4 10: aload 0
getfield sun.security.ssl.PostHandshakeContext.conContext:Lsun/security/ssl/TransportContext;
getstatic sun.security.ssl.Alert.UNEXPECTED_MESSAGE:Lsun/security/ssl/Alert;
11: new java.lang.StringBuilder
dup
ldc "Unsupported post-handshake message: "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
12: iload 1
invokestatic sun.security.ssl.SSLHandshake.nameOf:(B)Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
13: invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
14: aload 4
15: invokevirtual sun.security.ssl.TransportContext.fatal:(Lsun/security/ssl/Alert;Ljava/lang/String;Ljava/lang/Throwable;)Ljavax/net/ssl/SSLException;
athrow
end local 4 16: StackMap locals:
StackMap stack: java.lang.RuntimeException
astore 4
start local 4 17: aload 0
getfield sun.security.ssl.PostHandshakeContext.conContext:Lsun/security/ssl/TransportContext;
getstatic sun.security.ssl.Alert.DECODE_ERROR:Lsun/security/ssl/Alert;
18: new java.lang.StringBuilder
dup
ldc "Illegal handshake message: "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
19: iload 1
invokestatic sun.security.ssl.SSLHandshake.nameOf:(B)Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
20: invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
21: aload 4
22: invokevirtual sun.security.ssl.TransportContext.fatal:(Lsun/security/ssl/Alert;Ljava/lang/String;Ljava/lang/Throwable;)Ljavax/net/ssl/SSLException;
athrow
end local 4 23: StackMap locals:
StackMap stack:
return
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 24 0 this Lsun/security/ssl/PostHandshakeContext;
0 24 1 handshakeType B
0 24 2 fragment Ljava/nio/ByteBuffer;
1 24 3 consumer Lsun/security/ssl/SSLConsumer;
10 16 4 unsoe Ljava/lang/UnsupportedOperationException;
17 23 4 be Ljava/lang/RuntimeException;
Exception table:
from to target type
7 8 9 Class java.lang.UnsupportedOperationException
7 8 16 Class java.nio.BufferUnderflowException
7 8 16 Class java.nio.BufferOverflowException
Exceptions:
throws java.io.IOException
MethodParameters:
Name Flags
handshakeType
fragment
}
SourceFile: "PostHandshakeContext.java"