class sun.security.ssl.ServerNameExtension$ServerName
minor version: 0
major version: 59
flags: flags: (0x0020) ACC_SUPER
this_class: sun.security.ssl.ServerNameExtension$ServerName
super_class: java.lang.Object
{
final int length;
descriptor: I
flags: (0x0010) ACC_FINAL
final int type;
descriptor: I
flags: (0x0010) ACC_FINAL
final byte[] data;
descriptor: [B
flags: (0x0010) ACC_FINAL
final java.lang.String hostname;
descriptor: Ljava/lang/String;
flags: (0x0010) ACC_FINAL
void <init>(int, java.lang.String);
descriptor: (ILjava/lang/String;)V
flags: (0x0000)
Code:
stack=3, locals=3, args_size=3
start local 0 // sun.security.ssl.ServerNameExtension$ServerName this
start local 1 // int type
start local 2 // java.lang.String hostname
0: .line 140
aload 0 /* this */
invokespecial java.lang.Object.<init>:()V
1: .line 141
aload 0 /* this */
iload 1 /* type */
putfield sun.security.ssl.ServerNameExtension$ServerName.type:I
2: .line 142
aload 0 /* this */
aload 2 /* hostname */
putfield sun.security.ssl.ServerNameExtension$ServerName.hostname:Ljava/lang/String;
3: .line 143
aload 0 /* this */
aload 2 /* hostname */
ldc "UTF8"
invokevirtual java.lang.String.getBytes:(Ljava/lang/String;)[B
putfield sun.security.ssl.ServerNameExtension$ServerName.data:[B
4: .line 144
aload 0 /* this */
aload 0 /* this */
getfield sun.security.ssl.ServerNameExtension$ServerName.data:[B
arraylength
iconst_3
iadd
putfield sun.security.ssl.ServerNameExtension$ServerName.length:I
5: .line 146
return
end local 2 // java.lang.String hostname
end local 1 // int type
end local 0 // sun.security.ssl.ServerNameExtension$ServerName this
LocalVariableTable:
Start End Slot Name Signature
0 6 0 this Lsun/security/ssl/ServerNameExtension$ServerName;
0 6 1 type I
0 6 2 hostname Ljava/lang/String;
Exceptions:
throws java.io.IOException
MethodParameters:
Name Flags
type
hostname
void <init>(sun.security.ssl.HandshakeInStream);
descriptor: (Lsun/security/ssl/HandshakeInStream;)V
flags: (0x0000)
Code:
stack=5, locals=2, args_size=2
start local 0 // sun.security.ssl.ServerNameExtension$ServerName this
start local 1 // sun.security.ssl.HandshakeInStream s
0: .line 148
aload 0 /* this */
invokespecial java.lang.Object.<init>:()V
1: .line 149
aload 0 /* this */
aload 1 /* s */
invokevirtual sun.security.ssl.HandshakeInStream.getInt8:()I
putfield sun.security.ssl.ServerNameExtension$ServerName.type:I
2: .line 150
aload 0 /* this */
aload 1 /* s */
invokevirtual sun.security.ssl.HandshakeInStream.getBytes16:()[B
putfield sun.security.ssl.ServerNameExtension$ServerName.data:[B
3: .line 151
aload 0 /* this */
aload 0 /* this */
getfield sun.security.ssl.ServerNameExtension$ServerName.data:[B
arraylength
iconst_3
iadd
putfield sun.security.ssl.ServerNameExtension$ServerName.length:I
4: .line 153
aload 0 /* this */
getfield sun.security.ssl.ServerNameExtension$ServerName.type:I
ifne 7
5: .line 154
aload 0 /* this */
new java.lang.String
dup
aload 0 /* this */
getfield sun.security.ssl.ServerNameExtension$ServerName.data:[B
ldc "UTF8"
invokespecial java.lang.String.<init>:([BLjava/lang/String;)V
putfield sun.security.ssl.ServerNameExtension$ServerName.hostname:Ljava/lang/String;
6: .line 155
goto 8
7: .line 156
StackMap locals: sun.security.ssl.ServerNameExtension$ServerName sun.security.ssl.HandshakeInStream
StackMap stack:
aload 0 /* this */
aconst_null
putfield sun.security.ssl.ServerNameExtension$ServerName.hostname:Ljava/lang/String;
8: .line 158
StackMap locals:
StackMap stack:
return
end local 1 // sun.security.ssl.HandshakeInStream s
end local 0 // sun.security.ssl.ServerNameExtension$ServerName this
LocalVariableTable:
Start End Slot Name Signature
0 9 0 this Lsun/security/ssl/ServerNameExtension$ServerName;
0 9 1 s Lsun/security/ssl/HandshakeInStream;
Exceptions:
throws java.io.IOException
MethodParameters:
Name Flags
s
public java.lang.String toString();
descriptor: ()Ljava/lang/String;
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=1, args_size=1
start local 0 // sun.security.ssl.ServerNameExtension$ServerName this
0: .line 161
aload 0 /* this */
getfield sun.security.ssl.ServerNameExtension$ServerName.type:I
ifne 2
1: .line 162
new java.lang.StringBuilder
dup
ldc "host_name: "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 0 /* this */
getfield sun.security.ssl.ServerNameExtension$ServerName.hostname:Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
areturn
2: .line 164
StackMap locals:
StackMap stack:
new java.lang.StringBuilder
dup
ldc "unknown-"
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 0 /* this */
getfield sun.security.ssl.ServerNameExtension$ServerName.type:I
invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
ldc ": "
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
aload 0 /* this */
getfield sun.security.ssl.ServerNameExtension$ServerName.data:[B
invokestatic sun.security.ssl.Debug.toString:([B)Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
areturn
end local 0 // sun.security.ssl.ServerNameExtension$ServerName this
LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lsun/security/ssl/ServerNameExtension$ServerName;
}
SourceFile: "ServerNameExtension.java"
NestHost: sun.security.ssl.ServerNameExtension
InnerClasses:
ServerName = sun.security.ssl.ServerNameExtension$ServerName of sun.security.ssl.ServerNameExtension