final class sun.security.ssl.X509Authentication extends java.lang.Enum<sun.security.ssl.X509Authentication> implements sun.security.ssl.SSLAuthentication
minor version: 0
major version: 59
flags: flags: (0x4030) ACC_FINAL, ACC_SUPER, ACC_ANNOTATION
this_class: sun.security.ssl.X509Authentication
super_class: java.lang.Enum
{
public static final sun.security.ssl.X509Authentication RSA;
descriptor: Lsun/security/ssl/X509Authentication;
flags: (0x4019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL, ACC_ANNOTATION
public static final sun.security.ssl.X509Authentication RSASSA_PSS;
descriptor: Lsun/security/ssl/X509Authentication;
flags: (0x4019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL, ACC_ANNOTATION
public static final sun.security.ssl.X509Authentication RSA_OR_PSS;
descriptor: Lsun/security/ssl/X509Authentication;
flags: (0x4019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL, ACC_ANNOTATION
public static final sun.security.ssl.X509Authentication DSA;
descriptor: Lsun/security/ssl/X509Authentication;
flags: (0x4019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL, ACC_ANNOTATION
public static final sun.security.ssl.X509Authentication EC;
descriptor: Lsun/security/ssl/X509Authentication;
flags: (0x4019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL, ACC_ANNOTATION
final java.lang.String keyType;
descriptor: Ljava/lang/String;
flags: (0x0010) ACC_FINAL
final sun.security.ssl.SSLPossessionGenerator possessionGenerator;
descriptor: Lsun/security/ssl/SSLPossessionGenerator;
flags: (0x0010) ACC_FINAL
private static final sun.security.ssl.X509Authentication[] ENUM$VALUES;
descriptor: [Lsun/security/ssl/X509Authentication;
flags: (0x101a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL, ACC_SYNTHETIC
static void <clinit>();
descriptor: ()V
flags: (0x0008) ACC_STATIC
Code:
stack=11, locals=0, args_size=0
0: new sun.security.ssl.X509Authentication
dup
ldc "RSA"
iconst_0
ldc "RSA"
new sun.security.ssl.X509Authentication$X509PossessionGenerator
dup
1: iconst_1
anewarray java.lang.String
dup
iconst_0
ldc "RSA"
aastore
invokespecial sun.security.ssl.X509Authentication$X509PossessionGenerator.<init>:([Ljava/lang/String;)V
invokespecial sun.security.ssl.X509Authentication.<init>:(Ljava/lang/String;ILjava/lang/String;Lsun/security/ssl/SSLPossessionGenerator;)V
2: putstatic sun.security.ssl.X509Authentication.RSA:Lsun/security/ssl/X509Authentication;
3: new sun.security.ssl.X509Authentication
dup
ldc "RSASSA_PSS"
iconst_1
ldc "RSASSA-PSS"
new sun.security.ssl.X509Authentication$X509PossessionGenerator
dup
4: iconst_1
anewarray java.lang.String
dup
iconst_0
ldc "RSASSA-PSS"
aastore
invokespecial sun.security.ssl.X509Authentication$X509PossessionGenerator.<init>:([Ljava/lang/String;)V
invokespecial sun.security.ssl.X509Authentication.<init>:(Ljava/lang/String;ILjava/lang/String;Lsun/security/ssl/SSLPossessionGenerator;)V
5: putstatic sun.security.ssl.X509Authentication.RSASSA_PSS:Lsun/security/ssl/X509Authentication;
6: new sun.security.ssl.X509Authentication
dup
ldc "RSA_OR_PSS"
iconst_2
ldc "RSA_OR_PSS"
new sun.security.ssl.X509Authentication$X509PossessionGenerator
dup
7: iconst_2
anewarray java.lang.String
dup
iconst_0
ldc "RSA"
aastore
dup
iconst_1
ldc "RSASSA-PSS"
aastore
invokespecial sun.security.ssl.X509Authentication$X509PossessionGenerator.<init>:([Ljava/lang/String;)V
invokespecial sun.security.ssl.X509Authentication.<init>:(Ljava/lang/String;ILjava/lang/String;Lsun/security/ssl/SSLPossessionGenerator;)V
8: putstatic sun.security.ssl.X509Authentication.RSA_OR_PSS:Lsun/security/ssl/X509Authentication;
9: new sun.security.ssl.X509Authentication
dup
ldc "DSA"
iconst_3
ldc "DSA"
new sun.security.ssl.X509Authentication$X509PossessionGenerator
dup
10: iconst_1
anewarray java.lang.String
dup
iconst_0
ldc "DSA"
aastore
invokespecial sun.security.ssl.X509Authentication$X509PossessionGenerator.<init>:([Ljava/lang/String;)V
invokespecial sun.security.ssl.X509Authentication.<init>:(Ljava/lang/String;ILjava/lang/String;Lsun/security/ssl/SSLPossessionGenerator;)V
11: putstatic sun.security.ssl.X509Authentication.DSA:Lsun/security/ssl/X509Authentication;
12: new sun.security.ssl.X509Authentication
dup
ldc "EC"
iconst_4
ldc "EC"
new sun.security.ssl.X509Authentication$X509PossessionGenerator
dup
13: iconst_1
anewarray java.lang.String
dup
iconst_0
ldc "EC"
aastore
invokespecial sun.security.ssl.X509Authentication$X509PossessionGenerator.<init>:([Ljava/lang/String;)V
invokespecial sun.security.ssl.X509Authentication.<init>:(Ljava/lang/String;ILjava/lang/String;Lsun/security/ssl/SSLPossessionGenerator;)V
14: putstatic sun.security.ssl.X509Authentication.EC:Lsun/security/ssl/X509Authentication;
15: iconst_5
anewarray sun.security.ssl.X509Authentication
dup
iconst_0
getstatic sun.security.ssl.X509Authentication.RSA:Lsun/security/ssl/X509Authentication;
aastore
dup
iconst_1
getstatic sun.security.ssl.X509Authentication.RSASSA_PSS:Lsun/security/ssl/X509Authentication;
aastore
dup
iconst_2
getstatic sun.security.ssl.X509Authentication.RSA_OR_PSS:Lsun/security/ssl/X509Authentication;
aastore
dup
iconst_3
getstatic sun.security.ssl.X509Authentication.DSA:Lsun/security/ssl/X509Authentication;
aastore
dup
iconst_4
getstatic sun.security.ssl.X509Authentication.EC:Lsun/security/ssl/X509Authentication;
aastore
putstatic sun.security.ssl.X509Authentication.ENUM$VALUES:[Lsun/security/ssl/X509Authentication;
return
LocalVariableTable:
Start End Slot Name Signature
private void <init>(java.lang.String, int, java.lang.String, sun.security.ssl.SSLPossessionGenerator);
descriptor: (Ljava/lang/String;ILjava/lang/String;Lsun/security/ssl/SSLPossessionGenerator;)V
flags: (0x0002) ACC_PRIVATE
Code:
stack=3, locals=5, args_size=5
start local 0 start local 3 start local 4 0: aload 0
aload 1
iload 2
invokespecial java.lang.Enum.<init>:(Ljava/lang/String;I)V
1: aload 0
aload 3
putfield sun.security.ssl.X509Authentication.keyType:Ljava/lang/String;
2: aload 0
aload 4
putfield sun.security.ssl.X509Authentication.possessionGenerator:Lsun/security/ssl/SSLPossessionGenerator;
3: return
end local 4 end local 3 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Lsun/security/ssl/X509Authentication;
0 4 3 keyType Ljava/lang/String;
0 4 4 possessionGenerator Lsun/security/ssl/SSLPossessionGenerator;
MethodParameters:
Name Flags
$enum$name
$enum$ordinal
keyType
possessionGenerator
static sun.security.ssl.X509Authentication valueOf(sun.security.ssl.SignatureScheme);
descriptor: (Lsun/security/ssl/SignatureScheme;)Lsun/security/ssl/X509Authentication;
flags: (0x0008) ACC_STATIC
Code:
stack=2, locals=5, args_size=1
start local 0 0: invokestatic sun.security.ssl.X509Authentication.values:()[Lsun/security/ssl/X509Authentication;
dup
astore 4
arraylength
istore 3
iconst_0
istore 2
goto 5
StackMap locals: sun.security.ssl.SignatureScheme top int int sun.security.ssl.X509Authentication[]
StackMap stack:
1: aload 4
iload 2
aaload
astore 1
start local 1 2: aload 1
getfield sun.security.ssl.X509Authentication.keyType:Ljava/lang/String;
aload 0
getfield sun.security.ssl.SignatureScheme.keyAlgorithm:Ljava/lang/String;
invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
ifeq 4
3: aload 1
areturn
end local 1 4: StackMap locals:
StackMap stack:
iinc 2 1
StackMap locals:
StackMap stack:
5: iload 2
iload 3
if_icmplt 1
6: aconst_null
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 7 0 signatureScheme Lsun/security/ssl/SignatureScheme;
2 4 1 au Lsun/security/ssl/X509Authentication;
MethodParameters:
Name Flags
signatureScheme
public sun.security.ssl.SSLPossession createPossession(sun.security.ssl.HandshakeContext);
descriptor: (Lsun/security/ssl/HandshakeContext;)Lsun/security/ssl/SSLPossession;
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.X509Authentication.possessionGenerator:Lsun/security/ssl/SSLPossessionGenerator;
aload 1
invokeinterface sun.security.ssl.SSLPossessionGenerator.createPossession:(Lsun/security/ssl/HandshakeContext;)Lsun/security/ssl/SSLPossession;
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lsun/security/ssl/X509Authentication;
0 1 1 handshakeContext Lsun/security/ssl/HandshakeContext;
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=4, locals=2, args_size=2
start local 0 start local 1 0: aload 1
getfield sun.security.ssl.HandshakeContext.negotiatedProtocol:Lsun/security/ssl/ProtocolVersion;
invokevirtual sun.security.ssl.ProtocolVersion.useTLS13PlusSpec:()Z
ifne 5
1: iconst_2
anewarray sun.security.ssl.SSLHandshake
dup
iconst_0
2: getstatic sun.security.ssl.SSLHandshake.CERTIFICATE:Lsun/security/ssl/SSLHandshake;
aastore
dup
iconst_1
3: getstatic sun.security.ssl.SSLHandshake.CERTIFICATE_REQUEST:Lsun/security/ssl/SSLHandshake;
aastore
4: areturn
5: StackMap locals:
StackMap stack:
iconst_0
anewarray sun.security.ssl.SSLHandshake
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 6 0 this Lsun/security/ssl/X509Authentication;
0 6 1 handshakeContext Lsun/security/ssl/HandshakeContext;
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=7, locals=2, args_size=2
start local 0 start local 1 0: aload 1
getfield sun.security.ssl.HandshakeContext.negotiatedProtocol:Lsun/security/ssl/ProtocolVersion;
invokevirtual sun.security.ssl.ProtocolVersion.useTLS13PlusSpec:()Z
ifne 7
1: iconst_1
anewarray java.util.Map$Entry
dup
iconst_0
2: new java.util.AbstractMap$SimpleImmutableEntry
dup
3: getstatic sun.security.ssl.SSLHandshake.CERTIFICATE:Lsun/security/ssl/SSLHandshake;
getfield sun.security.ssl.SSLHandshake.id:B
invokestatic java.lang.Byte.valueOf:(B)Ljava/lang/Byte;
4: getstatic sun.security.ssl.SSLHandshake.CERTIFICATE:Lsun/security/ssl/SSLHandshake;
5: invokespecial java.util.AbstractMap$SimpleImmutableEntry.<init>:(Ljava/lang/Object;Ljava/lang/Object;)V
aastore
6: areturn
7: StackMap locals:
StackMap stack:
iconst_0
anewarray java.util.Map$Entry
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 8 0 this Lsun/security/ssl/X509Authentication;
0 8 1 handshakeContext Lsun/security/ssl/HandshakeContext;
Signature: (Lsun/security/ssl/HandshakeContext;)[Ljava/util/Map$Entry<Ljava/lang/Byte;Lsun/security/ssl/HandshakeProducer;>;
MethodParameters:
Name Flags
handshakeContext
public static sun.security.ssl.X509Authentication[] values();
descriptor: ()[Lsun/security/ssl/X509Authentication;
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=5, locals=3, args_size=0
0: getstatic sun.security.ssl.X509Authentication.ENUM$VALUES:[Lsun/security/ssl/X509Authentication;
dup
astore 0
iconst_0
aload 0
arraylength
dup
istore 1
anewarray sun.security.ssl.X509Authentication
dup
astore 2
iconst_0
iload 1
invokestatic java.lang.System.arraycopy:(Ljava/lang/Object;ILjava/lang/Object;II)V
aload 2
areturn
LocalVariableTable:
Start End Slot Name Signature
public static sun.security.ssl.X509Authentication valueOf(java.lang.String);
descriptor: (Ljava/lang/String;)Lsun/security/ssl/X509Authentication;
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=2, locals=1, args_size=1
0: ldc Lsun/security/ssl/X509Authentication;
aload 0
invokestatic java.lang.Enum.valueOf:(Ljava/lang/Class;Ljava/lang/String;)Ljava/lang/Enum;
checkcast sun.security.ssl.X509Authentication
areturn
LocalVariableTable:
Start End Slot Name Signature
MethodParameters:
Name Flags
name
}
Signature: Ljava/lang/Enum<Lsun/security/ssl/X509Authentication;>;Lsun/security/ssl/SSLAuthentication;
SourceFile: "X509Authentication.java"
NestMembers:
sun.security.ssl.X509Authentication$X509Credentials sun.security.ssl.X509Authentication$X509Possession sun.security.ssl.X509Authentication$X509PossessionGenerator
InnerClasses:
public SimpleImmutableEntry = java.util.AbstractMap$SimpleImmutableEntry of java.util.AbstractMap
public abstract Entry = java.util.Map$Entry of java.util.Map
final X509Credentials = sun.security.ssl.X509Authentication$X509Credentials of sun.security.ssl.X509Authentication
final X509Possession = sun.security.ssl.X509Authentication$X509Possession of sun.security.ssl.X509Authentication
private final X509PossessionGenerator = sun.security.ssl.X509Authentication$X509PossessionGenerator of sun.security.ssl.X509Authentication