class sun.security.ssl.SSLContextImpl$CustomizedSSLProtocols
minor version: 0
major version: 59
flags: flags: (0x0020) ACC_SUPER
this_class: sun.security.ssl.SSLContextImpl$CustomizedSSLProtocols
super_class: java.lang.Object
{
private static final java.lang.String PROPERTY_NAME;
descriptor: Ljava/lang/String;
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: "jdk.tls.client.protocols"
static java.lang.IllegalArgumentException reservedException;
descriptor: Ljava/lang/IllegalArgumentException;
flags: (0x0008) ACC_STATIC
static java.util.ArrayList<sun.security.ssl.ProtocolVersion> customizedProtocols;
descriptor: Ljava/util/ArrayList;
flags: (0x0008) ACC_STATIC
Signature: Ljava/util/ArrayList<Lsun/security/ssl/ProtocolVersion;>;
static void <clinit>();
descriptor: ()V
flags: (0x0008) ACC_STATIC
Code:
stack=5, locals=4, args_size=0
0: .line 687
aconst_null
putstatic sun.security.ssl.SSLContextImpl$CustomizedSSLProtocols.reservedException:Ljava/lang/IllegalArgumentException;
1: .line 689
new java.util.ArrayList
dup
invokespecial java.util.ArrayList.<init>:()V
putstatic sun.security.ssl.SSLContextImpl$CustomizedSSLProtocols.customizedProtocols:Ljava/util/ArrayList;
2: .line 699
new sun.security.action.GetPropertyAction
dup
ldc "jdk.tls.client.protocols"
invokespecial sun.security.action.GetPropertyAction.<init>:(Ljava/lang/String;)V
3: .line 698
invokestatic java.security.AccessController.doPrivileged:(Ljava/security/PrivilegedAction;)Ljava/lang/Object;
checkcast java.lang.String
astore 0 /* property */
start local 0 // java.lang.String property
4: .line 700
aload 0 /* property */
ifnull 8
aload 0 /* property */
invokevirtual java.lang.String.length:()I
ifeq 8
5: .line 702
aload 0 /* property */
invokevirtual java.lang.String.length:()I
iconst_1
if_icmple 8
aload 0 /* property */
iconst_0
invokevirtual java.lang.String.charAt:(I)C
bipush 34
if_icmpne 8
6: .line 703
aload 0 /* property */
aload 0 /* property */
invokevirtual java.lang.String.length:()I
iconst_1
isub
invokevirtual java.lang.String.charAt:(I)C
bipush 34
if_icmpne 8
7: .line 704
aload 0 /* property */
iconst_1
aload 0 /* property */
invokevirtual java.lang.String.length:()I
iconst_1
isub
invokevirtual java.lang.String.substring:(II)Ljava/lang/String;
astore 0 /* property */
8: .line 708
StackMap locals: java.lang.String
StackMap stack:
aload 0 /* property */
ifnull 36
aload 0 /* property */
invokevirtual java.lang.String.length:()I
ifeq 36
9: .line 709
aload 0 /* property */
ldc ","
invokevirtual java.lang.String.split:(Ljava/lang/String;)[Ljava/lang/String;
astore 1 /* protocols */
start local 1 // java.lang.String[] protocols
10: .line 710
iconst_0
istore 2 /* i */
start local 2 // int i
11: goto 35
12: .line 711
StackMap locals: java.lang.String[] int
StackMap stack:
aload 1 /* protocols */
iload 2 /* i */
aload 1 /* protocols */
iload 2 /* i */
aaload
invokevirtual java.lang.String.trim:()Ljava/lang/String;
aastore
13: .line 715
aload 1 /* protocols */
iload 2 /* i */
aaload
invokestatic sun.security.ssl.ProtocolVersion.valueOf:(Ljava/lang/String;)Lsun/security/ssl/ProtocolVersion;
14: .line 714
astore 3 /* pro */
start local 3 // sun.security.ssl.ProtocolVersion pro
15: .line 717
invokestatic sun.security.ssl.SunJSSE.isFIPS:()Z
ifeq 24
16: .line 718
aload 3 /* pro */
getfield sun.security.ssl.ProtocolVersion.v:I
getstatic sun.security.ssl.ProtocolVersion.SSL30:Lsun/security/ssl/ProtocolVersion;
getfield sun.security.ssl.ProtocolVersion.v:I
if_icmpeq 18
17: .line 719
aload 3 /* pro */
getfield sun.security.ssl.ProtocolVersion.v:I
getstatic sun.security.ssl.ProtocolVersion.SSL20Hello:Lsun/security/ssl/ProtocolVersion;
getfield sun.security.ssl.ProtocolVersion.v:I
if_icmpne 24
18: .line 720
StackMap locals: sun.security.ssl.ProtocolVersion
StackMap stack:
new java.lang.IllegalArgumentException
dup
19: .line 721
new java.lang.StringBuilder
dup
ldc "jdk.tls.client.protocols: "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 3 /* pro */
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
20: .line 722
ldc " is not FIPS compliant"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
21: .line 721
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
22: .line 720
invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
putstatic sun.security.ssl.SSLContextImpl$CustomizedSSLProtocols.reservedException:Ljava/lang/IllegalArgumentException;
23: .line 724
goto 36
24: .line 728
StackMap locals:
StackMap stack:
getstatic sun.security.ssl.SSLContextImpl$CustomizedSSLProtocols.customizedProtocols:Ljava/util/ArrayList;
aload 3 /* pro */
invokevirtual java.util.ArrayList.contains:(Ljava/lang/Object;)Z
ifne 34
25: .line 729
getstatic sun.security.ssl.SSLContextImpl$CustomizedSSLProtocols.customizedProtocols:Ljava/util/ArrayList;
aload 3 /* pro */
invokevirtual java.util.ArrayList.add:(Ljava/lang/Object;)Z
pop
end local 3 // sun.security.ssl.ProtocolVersion pro
26: .line 731
goto 34
StackMap locals: java.lang.String java.lang.String[] int
StackMap stack: java.lang.IllegalArgumentException
27: astore 3 /* iae */
start local 3 // java.lang.IllegalArgumentException iae
28: .line 732
new java.lang.IllegalArgumentException
dup
29: .line 733
new java.lang.StringBuilder
dup
ldc "jdk.tls.client.protocols: "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 1 /* protocols */
iload 2 /* i */
aaload
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
30: .line 734
ldc " is not a standard SSL protocol name"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
31: .line 733
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
32: .line 734
aload 3 /* iae */
33: .line 732
invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;Ljava/lang/Throwable;)V
putstatic sun.security.ssl.SSLContextImpl$CustomizedSSLProtocols.reservedException:Ljava/lang/IllegalArgumentException;
end local 3 // java.lang.IllegalArgumentException iae
34: .line 710
StackMap locals:
StackMap stack:
iinc 2 /* i */ 1
StackMap locals:
StackMap stack:
35: iload 2 /* i */
aload 1 /* protocols */
arraylength
if_icmplt 12
end local 2 // int i
end local 1 // java.lang.String[] protocols
end local 0 // java.lang.String property
36: .line 738
StackMap locals:
StackMap stack:
return
LocalVariableTable:
Start End Slot Name Signature
4 36 0 property Ljava/lang/String;
10 36 1 protocols [Ljava/lang/String;
11 36 2 i I
15 26 3 pro Lsun/security/ssl/ProtocolVersion;
28 34 3 iae Ljava/lang/IllegalArgumentException;
Exception table:
from to target type
13 23 27 Class java.lang.IllegalArgumentException
24 26 27 Class java.lang.IllegalArgumentException
private void <init>();
descriptor: ()V
flags: (0x0002) ACC_PRIVATE
Code:
stack=1, locals=1, args_size=1
start local 0 // sun.security.ssl.SSLContextImpl$CustomizedSSLProtocols this
0: .line 685
aload 0 /* this */
invokespecial java.lang.Object.<init>:()V
return
end local 0 // sun.security.ssl.SSLContextImpl$CustomizedSSLProtocols this
LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lsun/security/ssl/SSLContextImpl$CustomizedSSLProtocols;
}
SourceFile: "SSLContextImpl.java"
NestHost: sun.security.ssl.SSLContextImpl
InnerClasses:
private CustomizedSSLProtocols = sun.security.ssl.SSLContextImpl$CustomizedSSLProtocols of sun.security.ssl.SSLContextImpl