final class sun.security.ssl.SSLKeyExchange implements sun.security.ssl.SSLKeyAgreementGenerator, sun.security.ssl.SSLHandshakeBinding
minor version: 0
major version: 59
flags: flags: (0x0030) ACC_FINAL, ACC_SUPER
this_class: sun.security.ssl.SSLKeyExchange
super_class: java.lang.Object
{
private final sun.security.ssl.SSLAuthentication authentication;
descriptor: Lsun/security/ssl/SSLAuthentication;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
private final sun.security.ssl.SSLKeyAgreement keyAgreement;
descriptor: Lsun/security/ssl/SSLKeyAgreement;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
private static volatile int[] $SWITCH_TABLE$sun$security$ssl$CipherSuite$KeyExchange;
descriptor: [I
flags: (0x104a) ACC_PRIVATE, ACC_STATIC, ACC_VOLATILE, ACC_SYNTHETIC
void <init>(sun.security.ssl.X509Authentication, sun.security.ssl.SSLKeyAgreement);
descriptor: (Lsun/security/ssl/X509Authentication;Lsun/security/ssl/SSLKeyAgreement;)V
flags: (0x0000)
Code:
stack=2, locals=3, args_size=3
start local 0 start local 1 start local 2 0: aload 0
invokespecial java.lang.Object.<init>:()V
1: aload 0
aload 1
putfield sun.security.ssl.SSLKeyExchange.authentication:Lsun/security/ssl/SSLAuthentication;
2: aload 0
aload 2
putfield sun.security.ssl.SSLKeyExchange.keyAgreement:Lsun/security/ssl/SSLKeyAgreement;
3: return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Lsun/security/ssl/SSLKeyExchange;
0 4 1 authentication Lsun/security/ssl/X509Authentication;
0 4 2 keyAgreement Lsun/security/ssl/SSLKeyAgreement;
MethodParameters:
Name Flags
authentication
keyAgreement
sun.security.ssl.SSLPossession[] createPossessions(sun.security.ssl.HandshakeContext);
descriptor: (Lsun/security/ssl/HandshakeContext;)[Lsun/security/ssl/SSLPossession;
flags: (0x0000)
Code:
stack=4, locals=5, args_size=2
start local 0 start local 1 0: aconst_null
astore 2
start local 2 1: aload 0
getfield sun.security.ssl.SSLKeyExchange.authentication:Lsun/security/ssl/SSLAuthentication;
ifnull 8
2: aload 0
getfield sun.security.ssl.SSLKeyExchange.authentication:Lsun/security/ssl/SSLAuthentication;
aload 1
invokeinterface sun.security.ssl.SSLAuthentication.createPossession:(Lsun/security/ssl/HandshakeContext;)Lsun/security/ssl/SSLPossession;
astore 2
3: aload 2
ifnonnull 5
4: iconst_0
anewarray sun.security.ssl.SSLPossession
areturn
5: StackMap locals: sun.security.ssl.SSLPossession
StackMap stack:
aload 1
instanceof sun.security.ssl.ServerHandshakeContext
ifeq 8
6: aload 1
checkcast sun.security.ssl.ServerHandshakeContext
astore 3
start local 3 7: aload 3
aload 2
putfield sun.security.ssl.ServerHandshakeContext.interimAuthn:Lsun/security/ssl/SSLPossession;
end local 3 8: StackMap locals:
StackMap stack:
aload 0
getfield sun.security.ssl.SSLKeyExchange.keyAgreement:Lsun/security/ssl/SSLKeyAgreement;
getstatic sun.security.ssl.SSLKeyExchange$T12KeyAgreement.RSA_EXPORT:Lsun/security/ssl/SSLKeyExchange$T12KeyAgreement;
if_acmpne 24
9: aload 2
checkcast sun.security.ssl.X509Authentication$X509Possession
astore 4
start local 4 10: aload 4
getfield sun.security.ssl.X509Authentication$X509Possession.popCerts:[Ljava/security/cert/X509Certificate;
iconst_0
aaload
invokevirtual java.security.cert.X509Certificate.getPublicKey:()Ljava/security/PublicKey;
11: invokestatic sun.security.ssl.JsseJce.getRSAKeyLength:(Ljava/security/PublicKey;)I
12: sipush 512
if_icmple 20
13: aload 0
getfield sun.security.ssl.SSLKeyExchange.keyAgreement:Lsun/security/ssl/SSLKeyAgreement;
aload 1
invokeinterface sun.security.ssl.SSLKeyAgreement.createPossession:(Lsun/security/ssl/HandshakeContext;)Lsun/security/ssl/SSLPossession;
astore 3
start local 3 14: aload 3
ifnonnull 16
15: iconst_0
anewarray sun.security.ssl.SSLPossession
areturn
16: StackMap locals: sun.security.ssl.SSLPossession sun.security.ssl.X509Authentication$X509Possession
StackMap stack:
aload 0
getfield sun.security.ssl.SSLKeyExchange.authentication:Lsun/security/ssl/SSLAuthentication;
ifnull 18
17: iconst_2
anewarray sun.security.ssl.SSLPossession
dup
iconst_0
aload 2
aastore
dup
iconst_1
aload 3
aastore
goto 19
18: StackMap locals:
StackMap stack:
iconst_1
anewarray sun.security.ssl.SSLPossession
dup
iconst_0
aload 3
aastore
19: StackMap locals:
StackMap stack: sun.security.ssl.SSLPossession[]
areturn
end local 3 20: StackMap locals: sun.security.ssl.SSLKeyExchange sun.security.ssl.HandshakeContext sun.security.ssl.SSLPossession top sun.security.ssl.X509Authentication$X509Possession
StackMap stack:
aload 0
getfield sun.security.ssl.SSLKeyExchange.authentication:Lsun/security/ssl/SSLAuthentication;
ifnull 22
21: iconst_1
anewarray sun.security.ssl.SSLPossession
dup
iconst_0
aload 2
aastore
goto 23
22: StackMap locals:
StackMap stack:
iconst_0
anewarray sun.security.ssl.SSLPossession
23: StackMap locals:
StackMap stack: sun.security.ssl.SSLPossession[]
areturn
end local 4 24: StackMap locals: sun.security.ssl.SSLKeyExchange sun.security.ssl.HandshakeContext sun.security.ssl.SSLPossession
StackMap stack:
aload 0
getfield sun.security.ssl.SSLKeyExchange.keyAgreement:Lsun/security/ssl/SSLKeyAgreement;
aload 1
invokeinterface sun.security.ssl.SSLKeyAgreement.createPossession:(Lsun/security/ssl/HandshakeContext;)Lsun/security/ssl/SSLPossession;
astore 3
start local 3 25: aload 3
ifnonnull 33
26: aload 0
getfield sun.security.ssl.SSLKeyExchange.keyAgreement:Lsun/security/ssl/SSLKeyAgreement;
getstatic sun.security.ssl.SSLKeyExchange$T12KeyAgreement.RSA:Lsun/security/ssl/SSLKeyExchange$T12KeyAgreement;
if_acmpeq 28
27: aload 0
getfield sun.security.ssl.SSLKeyExchange.keyAgreement:Lsun/security/ssl/SSLKeyAgreement;
getstatic sun.security.ssl.SSLKeyExchange$T12KeyAgreement.ECDH:Lsun/security/ssl/SSLKeyExchange$T12KeyAgreement;
if_acmpne 32
28: StackMap locals: sun.security.ssl.SSLPossession
StackMap stack:
aload 0
getfield sun.security.ssl.SSLKeyExchange.authentication:Lsun/security/ssl/SSLAuthentication;
ifnull 30
29: iconst_1
anewarray sun.security.ssl.SSLPossession
dup
iconst_0
aload 2
aastore
goto 31
30: StackMap locals:
StackMap stack:
iconst_0
anewarray sun.security.ssl.SSLPossession
31: StackMap locals:
StackMap stack: sun.security.ssl.SSLPossession[]
areturn
32: StackMap locals:
StackMap stack:
iconst_0
anewarray sun.security.ssl.SSLPossession
areturn
33: StackMap locals:
StackMap stack:
aload 0
getfield sun.security.ssl.SSLKeyExchange.authentication:Lsun/security/ssl/SSLAuthentication;
ifnull 35
34: iconst_2
anewarray sun.security.ssl.SSLPossession
dup
iconst_0
aload 2
aastore
dup
iconst_1
aload 3
aastore
goto 36
35: StackMap locals:
StackMap stack:
iconst_1
anewarray sun.security.ssl.SSLPossession
dup
iconst_0
aload 3
aastore
36: StackMap locals:
StackMap stack: sun.security.ssl.SSLPossession[]
areturn
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 37 0 this Lsun/security/ssl/SSLKeyExchange;
0 37 1 context Lsun/security/ssl/HandshakeContext;
1 37 2 authPossession Lsun/security/ssl/SSLPossession;
7 8 3 shc Lsun/security/ssl/ServerHandshakeContext;
14 20 3 kaPossession Lsun/security/ssl/SSLPossession;
25 37 3 kaPossession Lsun/security/ssl/SSLPossession;
10 24 4 x509Possession Lsun/security/ssl/X509Authentication$X509Possession;
MethodParameters:
Name Flags
context
public sun.security.ssl.SSLKeyDerivation createKeyDerivation(sun.security.ssl.HandshakeContext);
descriptor: (Lsun/security/ssl/HandshakeContext;)Lsun/security/ssl/SSLKeyDerivation;
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 0
getfield sun.security.ssl.SSLKeyExchange.keyAgreement:Lsun/security/ssl/SSLKeyAgreement;
aload 1
invokeinterface sun.security.ssl.SSLKeyAgreement.createKeyDerivation:(Lsun/security/ssl/HandshakeContext;)Lsun/security/ssl/SSLKeyDerivation;
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lsun/security/ssl/SSLKeyExchange;
0 1 1 handshakeContext Lsun/security/ssl/HandshakeContext;
Exceptions:
throws java.io.IOException
MethodParameters:
Name Flags
handshakeContext
public sun.security.ssl.SSLHandshake[] getRelatedHandshakers(sun.security.ssl.HandshakeContext);
descriptor: (Lsun/security/ssl/HandshakeContext;)[Lsun/security/ssl/SSLHandshake;
flags: (0x0001) ACC_PUBLIC
Code:
stack=5, locals=5, args_size=2
start local 0 start local 1 0: aload 0
getfield sun.security.ssl.SSLKeyExchange.authentication:Lsun/security/ssl/SSLAuthentication;
ifnull 4
1: aload 0
getfield sun.security.ssl.SSLKeyExchange.authentication:Lsun/security/ssl/SSLAuthentication;
aload 1
invokeinterface sun.security.ssl.SSLAuthentication.getRelatedHandshakers:(Lsun/security/ssl/HandshakeContext;)[Lsun/security/ssl/SSLHandshake;
2: astore 2
start local 2 3: goto 5
end local 2 4: StackMap locals:
StackMap stack:
aconst_null
astore 2
start local 2 5: StackMap locals: sun.security.ssl.SSLHandshake[]
StackMap stack:
aload 0
getfield sun.security.ssl.SSLKeyExchange.keyAgreement:Lsun/security/ssl/SSLKeyAgreement;
aload 1
invokeinterface sun.security.ssl.SSLKeyAgreement.getRelatedHandshakers:(Lsun/security/ssl/HandshakeContext;)[Lsun/security/ssl/SSLHandshake;
6: astore 3
start local 3 7: aload 2
ifnull 8
aload 2
arraylength
ifne 9
8: StackMap locals: sun.security.ssl.SSLHandshake[]
StackMap stack:
aload 3
areturn
9: StackMap locals:
StackMap stack:
aload 3
ifnull 10
aload 3
arraylength
ifne 11
10: StackMap locals:
StackMap stack:
aload 2
areturn
11: StackMap locals:
StackMap stack:
aload 2
aload 2
arraylength
aload 3
arraylength
iadd
12: invokestatic java.util.Arrays.copyOf:([Ljava/lang/Object;I)[Ljava/lang/Object;
checkcast sun.security.ssl.SSLHandshake[]
astore 4
start local 4 13: aload 3
iconst_0
14: aload 4
aload 2
arraylength
aload 3
arraylength
15: invokestatic java.lang.System.arraycopy:(Ljava/lang/Object;ILjava/lang/Object;II)V
16: aload 4
areturn
end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 17 0 this Lsun/security/ssl/SSLKeyExchange;
0 17 1 handshakeContext Lsun/security/ssl/HandshakeContext;
3 4 2 auHandshakes [Lsun/security/ssl/SSLHandshake;
5 17 2 auHandshakes [Lsun/security/ssl/SSLHandshake;
7 17 3 kaHandshakes [Lsun/security/ssl/SSLHandshake;
13 17 4 producers [Lsun/security/ssl/SSLHandshake;
MethodParameters:
Name Flags
handshakeContext
public java.util.Map$Entry<java.lang.Byte, sun.security.ssl.HandshakeProducer>[] getHandshakeProducers(sun.security.ssl.HandshakeContext);
descriptor: (Lsun/security/ssl/HandshakeContext;)[Ljava/util/Map$Entry;
flags: (0x0001) ACC_PUBLIC
Code:
stack=5, locals=5, args_size=2
start local 0 start local 1 0: aload 0
getfield sun.security.ssl.SSLKeyExchange.authentication:Lsun/security/ssl/SSLAuthentication;
ifnull 4
1: aload 0
getfield sun.security.ssl.SSLKeyExchange.authentication:Lsun/security/ssl/SSLAuthentication;
aload 1
invokeinterface sun.security.ssl.SSLAuthentication.getHandshakeProducers:(Lsun/security/ssl/HandshakeContext;)[Ljava/util/Map$Entry;
2: astore 2
start local 2 3: goto 5
end local 2 4: StackMap locals:
StackMap stack:
aconst_null
astore 2
start local 2 5: StackMap locals: java.util.Map$Entry[]
StackMap stack:
aload 0
getfield sun.security.ssl.SSLKeyExchange.keyAgreement:Lsun/security/ssl/SSLKeyAgreement;
aload 1
invokeinterface sun.security.ssl.SSLKeyAgreement.getHandshakeProducers:(Lsun/security/ssl/HandshakeContext;)[Ljava/util/Map$Entry;
6: astore 3
start local 3 7: aload 2
ifnull 8
aload 2
arraylength
ifne 9
8: StackMap locals: java.util.Map$Entry[]
StackMap stack:
aload 3
areturn
9: StackMap locals:
StackMap stack:
aload 3
ifnull 10
aload 3
arraylength
ifne 11
10: StackMap locals:
StackMap stack:
aload 2
areturn
11: StackMap locals:
StackMap stack:
aload 2
aload 2
arraylength
aload 3
arraylength
iadd
12: invokestatic java.util.Arrays.copyOf:([Ljava/lang/Object;I)[Ljava/lang/Object;
checkcast java.util.Map$Entry[]
astore 4
start local 4 13: aload 3
iconst_0
14: aload 4
aload 2
arraylength
aload 3
arraylength
15: invokestatic java.lang.System.arraycopy:(Ljava/lang/Object;ILjava/lang/Object;II)V
16: aload 4
areturn
end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 17 0 this Lsun/security/ssl/SSLKeyExchange;
0 17 1 handshakeContext Lsun/security/ssl/HandshakeContext;
3 4 2 auProducers [Ljava/util/Map$Entry;
5 17 2 auProducers [Ljava/util/Map$Entry;
7 17 3 kaProducers [Ljava/util/Map$Entry;
13 17 4 producers [Ljava/util/Map$Entry;
Signature: (Lsun/security/ssl/HandshakeContext;)[Ljava/util/Map$Entry<Ljava/lang/Byte;Lsun/security/ssl/HandshakeProducer;>;
MethodParameters:
Name Flags
handshakeContext
public java.util.Map$Entry<java.lang.Byte, sun.security.ssl.SSLConsumer>[] getHandshakeConsumers(sun.security.ssl.HandshakeContext);
descriptor: (Lsun/security/ssl/HandshakeContext;)[Ljava/util/Map$Entry;
flags: (0x0001) ACC_PUBLIC
Code:
stack=5, locals=5, args_size=2
start local 0 start local 1 0: aload 0
getfield sun.security.ssl.SSLKeyExchange.authentication:Lsun/security/ssl/SSLAuthentication;
ifnull 4
1: aload 0
getfield sun.security.ssl.SSLKeyExchange.authentication:Lsun/security/ssl/SSLAuthentication;
aload 1
invokeinterface sun.security.ssl.SSLAuthentication.getHandshakeConsumers:(Lsun/security/ssl/HandshakeContext;)[Ljava/util/Map$Entry;
2: astore 2
start local 2 3: goto 5
end local 2 4: StackMap locals:
StackMap stack:
aconst_null
astore 2
start local 2 5: StackMap locals: java.util.Map$Entry[]
StackMap stack:
aload 0
getfield sun.security.ssl.SSLKeyExchange.keyAgreement:Lsun/security/ssl/SSLKeyAgreement;
aload 1
invokeinterface sun.security.ssl.SSLKeyAgreement.getHandshakeConsumers:(Lsun/security/ssl/HandshakeContext;)[Ljava/util/Map$Entry;
6: astore 3
start local 3 7: aload 2
ifnull 8
aload 2
arraylength
ifne 9
8: StackMap locals: java.util.Map$Entry[]
StackMap stack:
aload 3
areturn
9: StackMap locals:
StackMap stack:
aload 3
ifnull 10
aload 3
arraylength
ifne 11
10: StackMap locals:
StackMap stack:
aload 2
areturn
11: StackMap locals:
StackMap stack:
aload 2
aload 2
arraylength
aload 3
arraylength
iadd
12: invokestatic java.util.Arrays.copyOf:([Ljava/lang/Object;I)[Ljava/lang/Object;
checkcast java.util.Map$Entry[]
astore 4
start local 4 13: aload 3
iconst_0
14: aload 4
aload 2
arraylength
aload 3
arraylength
15: invokestatic java.lang.System.arraycopy:(Ljava/lang/Object;ILjava/lang/Object;II)V
16: aload 4
areturn
end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 17 0 this Lsun/security/ssl/SSLKeyExchange;
0 17 1 handshakeContext Lsun/security/ssl/HandshakeContext;
3 4 2 auConsumers [Ljava/util/Map$Entry;
5 17 2 auConsumers [Ljava/util/Map$Entry;
7 17 3 kaConsumers [Ljava/util/Map$Entry;
13 17 4 producers [Ljava/util/Map$Entry;
Signature: (Lsun/security/ssl/HandshakeContext;)[Ljava/util/Map$Entry<Ljava/lang/Byte;Lsun/security/ssl/SSLConsumer;>;
MethodParameters:
Name Flags
handshakeContext
static sun.security.ssl.SSLKeyExchange valueOf(sun.security.ssl.CipherSuite$KeyExchange, sun.security.ssl.ProtocolVersion);
descriptor: (Lsun/security/ssl/CipherSuite$KeyExchange;Lsun/security/ssl/ProtocolVersion;)Lsun/security/ssl/SSLKeyExchange;
flags: (0x0008) ACC_STATIC
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 0
ifnull 1
aload 1
ifnonnull 2
1: StackMap locals:
StackMap stack:
aconst_null
areturn
2: StackMap locals:
StackMap stack:
invokestatic sun.security.ssl.SSLKeyExchange.$SWITCH_TABLE$sun$security$ssl$CipherSuite$KeyExchange:()[I
aload 0
invokevirtual sun.security.ssl.CipherSuite$KeyExchange.ordinal:()I
iaload
tableswitch { // 2 - 16
2: 3
3: 4
4: 20
5: 20
6: 5
7: 6
8: 7
9: 10
10: 11
11: 12
12: 13
13: 14
14: 15
15: 16
16: 19
default: 20
}
3: StackMap locals:
StackMap stack:
getstatic sun.security.ssl.SSLKeyExchange$SSLKeyExRSA.KE:Lsun/security/ssl/SSLKeyExchange;
areturn
4: StackMap locals:
StackMap stack:
getstatic sun.security.ssl.SSLKeyExchange$SSLKeyExRSAExport.KE:Lsun/security/ssl/SSLKeyExchange;
areturn
5: StackMap locals:
StackMap stack:
getstatic sun.security.ssl.SSLKeyExchange$SSLKeyExDHEDSS.KE:Lsun/security/ssl/SSLKeyExchange;
areturn
6: StackMap locals:
StackMap stack:
getstatic sun.security.ssl.SSLKeyExchange$SSLKeyExDHEDSSExport.KE:Lsun/security/ssl/SSLKeyExchange;
areturn
7: StackMap locals:
StackMap stack:
aload 1
invokevirtual sun.security.ssl.ProtocolVersion.useTLS12PlusSpec:()Z
ifeq 9
8: getstatic sun.security.ssl.SSLKeyExchange$SSLKeyExDHERSAOrPSS.KE:Lsun/security/ssl/SSLKeyExchange;
areturn
9: StackMap locals:
StackMap stack:
getstatic sun.security.ssl.SSLKeyExchange$SSLKeyExDHERSA.KE:Lsun/security/ssl/SSLKeyExchange;
areturn
10: StackMap locals:
StackMap stack:
getstatic sun.security.ssl.SSLKeyExchange$SSLKeyExDHERSAExport.KE:Lsun/security/ssl/SSLKeyExchange;
areturn
11: StackMap locals:
StackMap stack:
getstatic sun.security.ssl.SSLKeyExchange$SSLKeyExDHANON.KE:Lsun/security/ssl/SSLKeyExchange;
areturn
12: StackMap locals:
StackMap stack:
getstatic sun.security.ssl.SSLKeyExchange$SSLKeyExDHANONExport.KE:Lsun/security/ssl/SSLKeyExchange;
areturn
13: StackMap locals:
StackMap stack:
getstatic sun.security.ssl.SSLKeyExchange$SSLKeyExECDHECDSA.KE:Lsun/security/ssl/SSLKeyExchange;
areturn
14: StackMap locals:
StackMap stack:
getstatic sun.security.ssl.SSLKeyExchange$SSLKeyExECDHRSA.KE:Lsun/security/ssl/SSLKeyExchange;
areturn
15: StackMap locals:
StackMap stack:
getstatic sun.security.ssl.SSLKeyExchange$SSLKeyExECDHEECDSA.KE:Lsun/security/ssl/SSLKeyExchange;
areturn
16: StackMap locals:
StackMap stack:
aload 1
invokevirtual sun.security.ssl.ProtocolVersion.useTLS12PlusSpec:()Z
ifeq 18
17: getstatic sun.security.ssl.SSLKeyExchange$SSLKeyExECDHERSAOrPSS.KE:Lsun/security/ssl/SSLKeyExchange;
areturn
18: StackMap locals:
StackMap stack:
getstatic sun.security.ssl.SSLKeyExchange$SSLKeyExECDHERSA.KE:Lsun/security/ssl/SSLKeyExchange;
areturn
19: StackMap locals:
StackMap stack:
getstatic sun.security.ssl.SSLKeyExchange$SSLKeyExECDHANON.KE:Lsun/security/ssl/SSLKeyExchange;
areturn
20: StackMap locals:
StackMap stack:
aconst_null
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 21 0 keyExchange Lsun/security/ssl/CipherSuite$KeyExchange;
0 21 1 protocolVersion Lsun/security/ssl/ProtocolVersion;
MethodParameters:
Name Flags
keyExchange
protocolVersion
static sun.security.ssl.SSLKeyExchange valueOf(sun.security.ssl.SupportedGroupsExtension$NamedGroup);
descriptor: (Lsun/security/ssl/SupportedGroupsExtension$NamedGroup;)Lsun/security/ssl/SSLKeyExchange;
flags: (0x0008) ACC_STATIC
Code:
stack=4, locals=2, args_size=1
start local 0 0: aload 0
invokestatic sun.security.ssl.SSLKeyExchange$T13KeyAgreement.valueOf:(Lsun/security/ssl/SupportedGroupsExtension$NamedGroup;)Lsun/security/ssl/SSLKeyExchange$T13KeyAgreement;
astore 1
start local 1 1: aload 1
ifnull 5
2: new sun.security.ssl.SSLKeyExchange
dup
3: aconst_null
aload 0
invokestatic sun.security.ssl.SSLKeyExchange$T13KeyAgreement.valueOf:(Lsun/security/ssl/SupportedGroupsExtension$NamedGroup;)Lsun/security/ssl/SSLKeyExchange$T13KeyAgreement;
4: invokespecial sun.security.ssl.SSLKeyExchange.<init>:(Lsun/security/ssl/X509Authentication;Lsun/security/ssl/SSLKeyAgreement;)V
areturn
5: StackMap locals: sun.security.ssl.SSLKeyAgreement
StackMap stack:
aconst_null
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 6 0 namedGroup Lsun/security/ssl/SupportedGroupsExtension$NamedGroup;
1 6 1 ka Lsun/security/ssl/SSLKeyAgreement;
MethodParameters:
Name Flags
namedGroup
static int[] $SWITCH_TABLE$sun$security$ssl$CipherSuite$KeyExchange();
descriptor: ()[I
flags: (0x1008) ACC_STATIC, ACC_SYNTHETIC
Code:
stack=3, locals=1, args_size=0
0: getstatic sun.security.ssl.SSLKeyExchange.$SWITCH_TABLE$sun$security$ssl$CipherSuite$KeyExchange:[I
dup
ifnull 1
areturn
StackMap locals:
StackMap stack: int[]
1: pop
invokestatic sun.security.ssl.CipherSuite$KeyExchange.values:()[Lsun/security/ssl/CipherSuite$KeyExchange;
arraylength
newarray 10
astore 0
2: aload 0
getstatic sun.security.ssl.CipherSuite$KeyExchange.K_DHE_DSS:Lsun/security/ssl/CipherSuite$KeyExchange;
invokevirtual sun.security.ssl.CipherSuite$KeyExchange.ordinal:()I
bipush 6
iastore
3: goto 5
StackMap locals: int[]
StackMap stack: java.lang.NoSuchFieldError
4: pop
StackMap locals:
StackMap stack:
5: aload 0
getstatic sun.security.ssl.CipherSuite$KeyExchange.K_DHE_DSS_EXPORT:Lsun/security/ssl/CipherSuite$KeyExchange;
invokevirtual sun.security.ssl.CipherSuite$KeyExchange.ordinal:()I
bipush 7
iastore
6: goto 8
StackMap locals:
StackMap stack: java.lang.NoSuchFieldError
7: pop
StackMap locals:
StackMap stack:
8: aload 0
getstatic sun.security.ssl.CipherSuite$KeyExchange.K_DHE_RSA:Lsun/security/ssl/CipherSuite$KeyExchange;
invokevirtual sun.security.ssl.CipherSuite$KeyExchange.ordinal:()I
bipush 8
iastore
9: goto 11
StackMap locals:
StackMap stack: java.lang.NoSuchFieldError
10: pop
StackMap locals:
StackMap stack:
11: aload 0
getstatic sun.security.ssl.CipherSuite$KeyExchange.K_DHE_RSA_EXPORT:Lsun/security/ssl/CipherSuite$KeyExchange;
invokevirtual sun.security.ssl.CipherSuite$KeyExchange.ordinal:()I
bipush 9
iastore
12: goto 14
StackMap locals:
StackMap stack: java.lang.NoSuchFieldError
13: pop
StackMap locals:
StackMap stack:
14: aload 0
getstatic sun.security.ssl.CipherSuite$KeyExchange.K_DH_ANON:Lsun/security/ssl/CipherSuite$KeyExchange;
invokevirtual sun.security.ssl.CipherSuite$KeyExchange.ordinal:()I
bipush 10
iastore
15: goto 17
StackMap locals:
StackMap stack: java.lang.NoSuchFieldError
16: pop
StackMap locals:
StackMap stack:
17: aload 0
getstatic sun.security.ssl.CipherSuite$KeyExchange.K_DH_ANON_EXPORT:Lsun/security/ssl/CipherSuite$KeyExchange;
invokevirtual sun.security.ssl.CipherSuite$KeyExchange.ordinal:()I
bipush 11
iastore
18: goto 20
StackMap locals:
StackMap stack: java.lang.NoSuchFieldError
19: pop
StackMap locals:
StackMap stack:
20: aload 0
getstatic sun.security.ssl.CipherSuite$KeyExchange.K_DH_DSS:Lsun/security/ssl/CipherSuite$KeyExchange;
invokevirtual sun.security.ssl.CipherSuite$KeyExchange.ordinal:()I
iconst_5
iastore
21: goto 23
StackMap locals:
StackMap stack: java.lang.NoSuchFieldError
22: pop
StackMap locals:
StackMap stack:
23: aload 0
getstatic sun.security.ssl.CipherSuite$KeyExchange.K_DH_RSA:Lsun/security/ssl/CipherSuite$KeyExchange;
invokevirtual sun.security.ssl.CipherSuite$KeyExchange.ordinal:()I
iconst_4
iastore
24: goto 26
StackMap locals:
StackMap stack: java.lang.NoSuchFieldError
25: pop
StackMap locals:
StackMap stack:
26: aload 0
getstatic sun.security.ssl.CipherSuite$KeyExchange.K_ECDHE_ECDSA:Lsun/security/ssl/CipherSuite$KeyExchange;
invokevirtual sun.security.ssl.CipherSuite$KeyExchange.ordinal:()I
bipush 14
iastore
27: goto 29
StackMap locals:
StackMap stack: java.lang.NoSuchFieldError
28: pop
StackMap locals:
StackMap stack:
29: aload 0
getstatic sun.security.ssl.CipherSuite$KeyExchange.K_ECDHE_RSA:Lsun/security/ssl/CipherSuite$KeyExchange;
invokevirtual sun.security.ssl.CipherSuite$KeyExchange.ordinal:()I
bipush 15
iastore
30: goto 32
StackMap locals:
StackMap stack: java.lang.NoSuchFieldError
31: pop
StackMap locals:
StackMap stack:
32: aload 0
getstatic sun.security.ssl.CipherSuite$KeyExchange.K_ECDH_ANON:Lsun/security/ssl/CipherSuite$KeyExchange;
invokevirtual sun.security.ssl.CipherSuite$KeyExchange.ordinal:()I
bipush 16
iastore
33: goto 35
StackMap locals:
StackMap stack: java.lang.NoSuchFieldError
34: pop
StackMap locals:
StackMap stack:
35: aload 0
getstatic sun.security.ssl.CipherSuite$KeyExchange.K_ECDH_ECDSA:Lsun/security/ssl/CipherSuite$KeyExchange;
invokevirtual sun.security.ssl.CipherSuite$KeyExchange.ordinal:()I
bipush 12
iastore
36: goto 38
StackMap locals:
StackMap stack: java.lang.NoSuchFieldError
37: pop
StackMap locals:
StackMap stack:
38: aload 0
getstatic sun.security.ssl.CipherSuite$KeyExchange.K_ECDH_RSA:Lsun/security/ssl/CipherSuite$KeyExchange;
invokevirtual sun.security.ssl.CipherSuite$KeyExchange.ordinal:()I
bipush 13
iastore
39: goto 41
StackMap locals:
StackMap stack: java.lang.NoSuchFieldError
40: pop
StackMap locals:
StackMap stack:
41: aload 0
getstatic sun.security.ssl.CipherSuite$KeyExchange.K_NULL:Lsun/security/ssl/CipherSuite$KeyExchange;
invokevirtual sun.security.ssl.CipherSuite$KeyExchange.ordinal:()I
iconst_1
iastore
42: goto 44
StackMap locals:
StackMap stack: java.lang.NoSuchFieldError
43: pop
StackMap locals:
StackMap stack:
44: aload 0
getstatic sun.security.ssl.CipherSuite$KeyExchange.K_RSA:Lsun/security/ssl/CipherSuite$KeyExchange;
invokevirtual sun.security.ssl.CipherSuite$KeyExchange.ordinal:()I
iconst_2
iastore
45: goto 47
StackMap locals:
StackMap stack: java.lang.NoSuchFieldError
46: pop
StackMap locals:
StackMap stack:
47: aload 0
getstatic sun.security.ssl.CipherSuite$KeyExchange.K_RSA_EXPORT:Lsun/security/ssl/CipherSuite$KeyExchange;
invokevirtual sun.security.ssl.CipherSuite$KeyExchange.ordinal:()I
iconst_3
iastore
48: goto 50
StackMap locals:
StackMap stack: java.lang.NoSuchFieldError
49: pop
StackMap locals:
StackMap stack:
50: aload 0
getstatic sun.security.ssl.CipherSuite$KeyExchange.K_SCSV:Lsun/security/ssl/CipherSuite$KeyExchange;
invokevirtual sun.security.ssl.CipherSuite$KeyExchange.ordinal:()I
bipush 17
iastore
51: goto 53
StackMap locals:
StackMap stack: java.lang.NoSuchFieldError
52: pop
StackMap locals:
StackMap stack:
53: aload 0
dup
putstatic sun.security.ssl.SSLKeyExchange.$SWITCH_TABLE$sun$security$ssl$CipherSuite$KeyExchange:[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
17 18 19 Class java.lang.NoSuchFieldError
20 21 22 Class java.lang.NoSuchFieldError
23 24 25 Class java.lang.NoSuchFieldError
26 27 28 Class java.lang.NoSuchFieldError
29 30 31 Class java.lang.NoSuchFieldError
32 33 34 Class java.lang.NoSuchFieldError
35 36 37 Class java.lang.NoSuchFieldError
38 39 40 Class java.lang.NoSuchFieldError
41 42 43 Class java.lang.NoSuchFieldError
44 45 46 Class java.lang.NoSuchFieldError
47 48 49 Class java.lang.NoSuchFieldError
50 51 52 Class java.lang.NoSuchFieldError
}
SourceFile: "SSLKeyExchange.java"
NestMembers:
sun.security.ssl.SSLKeyExchange$SSLKeyExDHANON sun.security.ssl.SSLKeyExchange$SSLKeyExDHANONExport sun.security.ssl.SSLKeyExchange$SSLKeyExDHEDSS sun.security.ssl.SSLKeyExchange$SSLKeyExDHEDSSExport sun.security.ssl.SSLKeyExchange$SSLKeyExDHERSA sun.security.ssl.SSLKeyExchange$SSLKeyExDHERSAExport sun.security.ssl.SSLKeyExchange$SSLKeyExDHERSAOrPSS sun.security.ssl.SSLKeyExchange$SSLKeyExECDHANON sun.security.ssl.SSLKeyExchange$SSLKeyExECDHECDSA sun.security.ssl.SSLKeyExchange$SSLKeyExECDHEECDSA sun.security.ssl.SSLKeyExchange$SSLKeyExECDHERSA sun.security.ssl.SSLKeyExchange$SSLKeyExECDHERSAOrPSS sun.security.ssl.SSLKeyExchange$SSLKeyExECDHRSA sun.security.ssl.SSLKeyExchange$SSLKeyExRSA sun.security.ssl.SSLKeyExchange$SSLKeyExRSAExport sun.security.ssl.SSLKeyExchange$T12KeyAgreement sun.security.ssl.SSLKeyExchange$T13KeyAgreement
InnerClasses:
public abstract Entry = java.util.Map$Entry of java.util.Map
final KeyExchange = sun.security.ssl.CipherSuite$KeyExchange of sun.security.ssl.CipherSuite
private SSLKeyExDHANON = sun.security.ssl.SSLKeyExchange$SSLKeyExDHANON of sun.security.ssl.SSLKeyExchange
private SSLKeyExDHANONExport = sun.security.ssl.SSLKeyExchange$SSLKeyExDHANONExport of sun.security.ssl.SSLKeyExchange
private SSLKeyExDHEDSS = sun.security.ssl.SSLKeyExchange$SSLKeyExDHEDSS of sun.security.ssl.SSLKeyExchange
private SSLKeyExDHEDSSExport = sun.security.ssl.SSLKeyExchange$SSLKeyExDHEDSSExport of sun.security.ssl.SSLKeyExchange
private SSLKeyExDHERSA = sun.security.ssl.SSLKeyExchange$SSLKeyExDHERSA of sun.security.ssl.SSLKeyExchange
private SSLKeyExDHERSAExport = sun.security.ssl.SSLKeyExchange$SSLKeyExDHERSAExport of sun.security.ssl.SSLKeyExchange
private SSLKeyExDHERSAOrPSS = sun.security.ssl.SSLKeyExchange$SSLKeyExDHERSAOrPSS of sun.security.ssl.SSLKeyExchange
private SSLKeyExECDHANON = sun.security.ssl.SSLKeyExchange$SSLKeyExECDHANON of sun.security.ssl.SSLKeyExchange
private SSLKeyExECDHECDSA = sun.security.ssl.SSLKeyExchange$SSLKeyExECDHECDSA of sun.security.ssl.SSLKeyExchange
private SSLKeyExECDHEECDSA = sun.security.ssl.SSLKeyExchange$SSLKeyExECDHEECDSA of sun.security.ssl.SSLKeyExchange
private SSLKeyExECDHERSA = sun.security.ssl.SSLKeyExchange$SSLKeyExECDHERSA of sun.security.ssl.SSLKeyExchange
private SSLKeyExECDHERSAOrPSS = sun.security.ssl.SSLKeyExchange$SSLKeyExECDHERSAOrPSS of sun.security.ssl.SSLKeyExchange
private SSLKeyExECDHRSA = sun.security.ssl.SSLKeyExchange$SSLKeyExECDHRSA of sun.security.ssl.SSLKeyExchange
private SSLKeyExRSA = sun.security.ssl.SSLKeyExchange$SSLKeyExRSA of sun.security.ssl.SSLKeyExchange
private SSLKeyExRSAExport = sun.security.ssl.SSLKeyExchange$SSLKeyExRSAExport of sun.security.ssl.SSLKeyExchange
private final T12KeyAgreement = sun.security.ssl.SSLKeyExchange$T12KeyAgreement of sun.security.ssl.SSLKeyExchange
private final T13KeyAgreement = sun.security.ssl.SSLKeyExchange$T13KeyAgreement of sun.security.ssl.SSLKeyExchange
final NamedGroup = sun.security.ssl.SupportedGroupsExtension$NamedGroup of sun.security.ssl.SupportedGroupsExtension
final X509Possession = sun.security.ssl.X509Authentication$X509Possession of sun.security.ssl.X509Authentication