final class sun.security.ssl.KeyShareExtension$HRRKeyShareSpec implements sun.security.ssl.SSLExtension$SSLExtensionSpec
minor version: 0
major version: 59
flags: flags: (0x0030) ACC_FINAL, ACC_SUPER
this_class: sun.security.ssl.KeyShareExtension$HRRKeyShareSpec
super_class: java.lang.Object
{
final int selectedGroup;
descriptor: I
flags: (0x0010) ACC_FINAL
void <init>(sun.security.ssl.SupportedGroupsExtension$NamedGroup);
descriptor: (Lsun/security/ssl/SupportedGroupsExtension$NamedGroup;)V
flags: (0x0000)
Code:
stack=2, locals=2, args_size=2
start local 0 // sun.security.ssl.KeyShareExtension$HRRKeyShareSpec this
start local 1 // sun.security.ssl.SupportedGroupsExtension$NamedGroup serverGroup
0: .line 731
aload 0 /* this */
invokespecial java.lang.Object.<init>:()V
1: .line 732
aload 0 /* this */
aload 1 /* serverGroup */
getfield sun.security.ssl.SupportedGroupsExtension$NamedGroup.id:I
putfield sun.security.ssl.KeyShareExtension$HRRKeyShareSpec.selectedGroup:I
2: .line 733
return
end local 1 // sun.security.ssl.SupportedGroupsExtension$NamedGroup serverGroup
end local 0 // sun.security.ssl.KeyShareExtension$HRRKeyShareSpec this
LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lsun/security/ssl/KeyShareExtension$HRRKeyShareSpec;
0 3 1 serverGroup Lsun/security/ssl/SupportedGroupsExtension$NamedGroup;
MethodParameters:
Name Flags
serverGroup
private void <init>(java.nio.ByteBuffer);
descriptor: (Ljava/nio/ByteBuffer;)V
flags: (0x0002) ACC_PRIVATE
Code:
stack=5, locals=2, args_size=2
start local 0 // sun.security.ssl.KeyShareExtension$HRRKeyShareSpec this
start local 1 // java.nio.ByteBuffer buffer
0: .line 735
aload 0 /* this */
invokespecial java.lang.Object.<init>:()V
1: .line 739
aload 1 /* buffer */
invokevirtual java.nio.ByteBuffer.remaining:()I
iconst_2
if_icmpeq 7
2: .line 740
new javax.net.ssl.SSLProtocolException
dup
3: .line 741
new java.lang.StringBuilder
dup
ldc "Invalid key_share extension: improper data (length="
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
4: .line 742
aload 1 /* buffer */
invokevirtual java.nio.ByteBuffer.remaining:()I
invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
ldc ")"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
5: .line 741
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
6: .line 740
invokespecial javax.net.ssl.SSLProtocolException.<init>:(Ljava/lang/String;)V
athrow
7: .line 745
StackMap locals: sun.security.ssl.KeyShareExtension$HRRKeyShareSpec java.nio.ByteBuffer
StackMap stack:
aload 0 /* this */
aload 1 /* buffer */
invokestatic sun.security.ssl.Record.getInt16:(Ljava/nio/ByteBuffer;)I
putfield sun.security.ssl.KeyShareExtension$HRRKeyShareSpec.selectedGroup:I
8: .line 746
return
end local 1 // java.nio.ByteBuffer buffer
end local 0 // sun.security.ssl.KeyShareExtension$HRRKeyShareSpec this
LocalVariableTable:
Start End Slot Name Signature
0 9 0 this Lsun/security/ssl/KeyShareExtension$HRRKeyShareSpec;
0 9 1 buffer Ljava/nio/ByteBuffer;
Exceptions:
throws java.io.IOException
MethodParameters:
Name Flags
buffer
public java.lang.String toString();
descriptor: ()Ljava/lang/String;
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=3, args_size=1
start local 0 // sun.security.ssl.KeyShareExtension$HRRKeyShareSpec this
0: .line 750
new java.text.MessageFormat
dup
1: .line 751
ldc "\"selected group\": '['{0}']'"
getstatic java.util.Locale.ENGLISH:Ljava/util/Locale;
2: .line 750
invokespecial java.text.MessageFormat.<init>:(Ljava/lang/String;Ljava/util/Locale;)V
astore 1 /* messageFormat */
start local 1 // java.text.MessageFormat messageFormat
3: .line 753
iconst_1
anewarray java.lang.Object
dup
iconst_0
4: .line 754
aload 0 /* this */
getfield sun.security.ssl.KeyShareExtension$HRRKeyShareSpec.selectedGroup:I
invokestatic sun.security.ssl.SupportedGroupsExtension$NamedGroup.nameOf:(I)Ljava/lang/String;
aastore
5: .line 753
astore 2 /* messageFields */
start local 2 // java.lang.Object[] messageFields
6: .line 756
aload 1 /* messageFormat */
aload 2 /* messageFields */
invokevirtual java.text.MessageFormat.format:(Ljava/lang/Object;)Ljava/lang/String;
areturn
end local 2 // java.lang.Object[] messageFields
end local 1 // java.text.MessageFormat messageFormat
end local 0 // sun.security.ssl.KeyShareExtension$HRRKeyShareSpec this
LocalVariableTable:
Start End Slot Name Signature
0 7 0 this Lsun/security/ssl/KeyShareExtension$HRRKeyShareSpec;
3 7 1 messageFormat Ljava/text/MessageFormat;
6 7 2 messageFields [Ljava/lang/Object;
}
SourceFile: "KeyShareExtension.java"
NestHost: sun.security.ssl.KeyShareExtension
InnerClasses:
final HRRKeyShareSpec = sun.security.ssl.KeyShareExtension$HRRKeyShareSpec of sun.security.ssl.KeyShareExtension
abstract SSLExtensionSpec = sun.security.ssl.SSLExtension$SSLExtensionSpec of sun.security.ssl.SSLExtension
final NamedGroup = sun.security.ssl.SupportedGroupsExtension$NamedGroup of sun.security.ssl.SupportedGroupsExtension