class sun.security.provider.certpath.RevocationChecker extends java.security.cert.PKIXRevocationChecker
minor version: 0
major version: 59
flags: flags: (0x0020) ACC_SUPER
this_class: sun.security.provider.certpath.RevocationChecker
super_class: java.security.cert.PKIXRevocationChecker
{
private static final sun.security.util.Debug debug;
descriptor: Lsun/security/util/Debug;
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
private java.security.cert.TrustAnchor anchor;
descriptor: Ljava/security/cert/TrustAnchor;
flags: (0x0002) ACC_PRIVATE
private sun.security.provider.certpath.PKIX$ValidatorParams params;
descriptor: Lsun/security/provider/certpath/PKIX$ValidatorParams;
flags: (0x0002) ACC_PRIVATE
private boolean onlyEE;
descriptor: Z
flags: (0x0002) ACC_PRIVATE
private boolean softFail;
descriptor: Z
flags: (0x0002) ACC_PRIVATE
private boolean crlDP;
descriptor: Z
flags: (0x0002) ACC_PRIVATE
private java.net.URI responderURI;
descriptor: Ljava/net/URI;
flags: (0x0002) ACC_PRIVATE
private java.security.cert.X509Certificate responderCert;
descriptor: Ljava/security/cert/X509Certificate;
flags: (0x0002) ACC_PRIVATE
private java.util.List<java.security.cert.CertStore> certStores;
descriptor: Ljava/util/List;
flags: (0x0002) ACC_PRIVATE
Signature: Ljava/util/List<Ljava/security/cert/CertStore;>;
private java.util.Map<java.security.cert.X509Certificate, byte[]> ocspResponses;
descriptor: Ljava/util/Map;
flags: (0x0002) ACC_PRIVATE
Signature: Ljava/util/Map<Ljava/security/cert/X509Certificate;[B>;
private java.util.List<java.security.cert.Extension> ocspExtensions;
descriptor: Ljava/util/List;
flags: (0x0002) ACC_PRIVATE
Signature: Ljava/util/List<Ljava/security/cert/Extension;>;
private final boolean legacy;
descriptor: Z
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
private java.util.LinkedList<java.security.cert.CertPathValidatorException> softFailExceptions;
descriptor: Ljava/util/LinkedList;
flags: (0x0002) ACC_PRIVATE
Signature: Ljava/util/LinkedList<Ljava/security/cert/CertPathValidatorException;>;
private sun.security.provider.certpath.OCSPResponse$IssuerInfo issuerInfo;
descriptor: Lsun/security/provider/certpath/OCSPResponse$IssuerInfo;
flags: (0x0002) ACC_PRIVATE
private java.security.PublicKey prevPubKey;
descriptor: Ljava/security/PublicKey;
flags: (0x0002) ACC_PRIVATE
private boolean crlSignFlag;
descriptor: Z
flags: (0x0002) ACC_PRIVATE
private int certIndex;
descriptor: I
flags: (0x0002) ACC_PRIVATE
private sun.security.provider.certpath.RevocationChecker$Mode mode;
descriptor: Lsun/security/provider/certpath/RevocationChecker$Mode;
flags: (0x0002) ACC_PRIVATE
private static final long MAX_CLOCK_SKEW;
descriptor: J
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: 900000
private static final java.lang.String HEX_DIGITS;
descriptor: Ljava/lang/String;
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: "0123456789ABCDEFabcdef"
private static final boolean[] ALL_REASONS;
descriptor: [Z
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
private static final boolean[] CRL_SIGN_USAGE;
descriptor: [Z
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
private static volatile int[] $SWITCH_TABLE$java$security$cert$PKIXRevocationChecker$Option;
descriptor: [I
flags: (0x104a) ACC_PRIVATE, ACC_STATIC, ACC_VOLATILE, ACC_SYNTHETIC
private static volatile int[] $SWITCH_TABLE$sun$security$provider$certpath$RevocationChecker$Mode;
descriptor: [I
flags: (0x104a) ACC_PRIVATE, ACC_STATIC, ACC_VOLATILE, ACC_SYNTHETIC
static void <clinit>();
descriptor: ()V
flags: (0x0008) ACC_STATIC
Code:
stack=4, locals=0, args_size=0
0: ldc "certpath"
invokestatic sun.security.util.Debug.getInstance:(Ljava/lang/String;)Lsun/security/util/Debug;
putstatic sun.security.provider.certpath.RevocationChecker.debug:Lsun/security/util/Debug;
1: bipush 9
newarray 4
dup
iconst_0
iconst_1
bastore
dup
iconst_1
iconst_1
bastore
dup
iconst_2
iconst_1
bastore
dup
iconst_3
iconst_1
bastore
dup
iconst_4
iconst_1
bastore
dup
iconst_5
iconst_1
bastore
dup
bipush 6
iconst_1
bastore
dup
bipush 7
iconst_1
bastore
dup
bipush 8
iconst_1
bastore
2: putstatic sun.security.provider.certpath.RevocationChecker.ALL_REASONS:[Z
3: bipush 7
newarray 4
dup
bipush 6
iconst_1
bastore
4: putstatic sun.security.provider.certpath.RevocationChecker.CRL_SIGN_USAGE:[Z
5: return
LocalVariableTable:
Start End Slot Name Signature
void <init>();
descriptor: ()V
flags: (0x0000)
Code:
stack=3, locals=1, args_size=1
start local 0 0: aload 0
invokespecial java.security.cert.PKIXRevocationChecker.<init>:()V
1: aload 0
2: new java.util.LinkedList
dup
invokespecial java.util.LinkedList.<init>:()V
putfield sun.security.provider.certpath.RevocationChecker.softFailExceptions:Ljava/util/LinkedList;
3: aload 0
getstatic sun.security.provider.certpath.RevocationChecker$Mode.PREFER_OCSP:Lsun/security/provider/certpath/RevocationChecker$Mode;
putfield sun.security.provider.certpath.RevocationChecker.mode:Lsun/security/provider/certpath/RevocationChecker$Mode;
4: aload 0
iconst_0
putfield sun.security.provider.certpath.RevocationChecker.legacy:Z
5: return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 6 0 this Lsun/security/provider/certpath/RevocationChecker;
void <init>(java.security.cert.TrustAnchor, sun.security.provider.certpath.PKIX$ValidatorParams);
descriptor: (Ljava/security/cert/TrustAnchor;Lsun/security/provider/certpath/PKIX$ValidatorParams;)V
flags: (0x0000)
Code:
stack=3, locals=3, args_size=3
start local 0 start local 1 start local 2 0: aload 0
invokespecial java.security.cert.PKIXRevocationChecker.<init>:()V
1: aload 0
2: new java.util.LinkedList
dup
invokespecial java.util.LinkedList.<init>:()V
putfield sun.security.provider.certpath.RevocationChecker.softFailExceptions:Ljava/util/LinkedList;
3: aload 0
getstatic sun.security.provider.certpath.RevocationChecker$Mode.PREFER_OCSP:Lsun/security/provider/certpath/RevocationChecker$Mode;
putfield sun.security.provider.certpath.RevocationChecker.mode:Lsun/security/provider/certpath/RevocationChecker$Mode;
4: aload 0
iconst_1
putfield sun.security.provider.certpath.RevocationChecker.legacy:Z
5: aload 0
aload 1
aload 2
invokevirtual sun.security.provider.certpath.RevocationChecker.init:(Ljava/security/cert/TrustAnchor;Lsun/security/provider/certpath/PKIX$ValidatorParams;)V
6: return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 7 0 this Lsun/security/provider/certpath/RevocationChecker;
0 7 1 anchor Ljava/security/cert/TrustAnchor;
0 7 2 params Lsun/security/provider/certpath/PKIX$ValidatorParams;
Exceptions:
throws java.security.cert.CertPathValidatorException
MethodParameters:
Name Flags
anchor
params
void init(java.security.cert.TrustAnchor, sun.security.provider.certpath.PKIX$ValidatorParams);
descriptor: (Ljava/security/cert/TrustAnchor;Lsun/security/provider/certpath/PKIX$ValidatorParams;)V
flags: (0x0000)
Code:
stack=5, locals=9, args_size=3
start local 0 start local 1 start local 2 0: invokestatic sun.security.provider.certpath.RevocationChecker.getRevocationProperties:()Lsun/security/provider/certpath/RevocationChecker$RevocationProperties;
astore 3
start local 3 1: aload 0
invokevirtual sun.security.provider.certpath.RevocationChecker.getOcspResponder:()Ljava/net/URI;
astore 4
start local 4 2: aload 0
aload 4
ifnonnull 3
aload 3
getfield sun.security.provider.certpath.RevocationChecker$RevocationProperties.ocspUrl:Ljava/lang/String;
invokestatic sun.security.provider.certpath.RevocationChecker.toURI:(Ljava/lang/String;)Ljava/net/URI;
goto 4
StackMap locals: sun.security.provider.certpath.RevocationChecker java.security.cert.TrustAnchor sun.security.provider.certpath.PKIX$ValidatorParams sun.security.provider.certpath.RevocationChecker$RevocationProperties java.net.URI
StackMap stack: sun.security.provider.certpath.RevocationChecker
3: aload 4
StackMap locals: sun.security.provider.certpath.RevocationChecker java.security.cert.TrustAnchor sun.security.provider.certpath.PKIX$ValidatorParams sun.security.provider.certpath.RevocationChecker$RevocationProperties java.net.URI
StackMap stack: sun.security.provider.certpath.RevocationChecker java.net.URI
4: putfield sun.security.provider.certpath.RevocationChecker.responderURI:Ljava/net/URI;
5: aload 0
invokevirtual sun.security.provider.certpath.RevocationChecker.getOcspResponderCert:()Ljava/security/cert/X509Certificate;
astore 5
start local 5 6: aload 0
aload 5
ifnonnull 11
7: aload 3
aload 2
invokevirtual sun.security.provider.certpath.PKIX$ValidatorParams.trustAnchors:()Ljava/util/Set;
8: aload 2
invokevirtual sun.security.provider.certpath.PKIX$ValidatorParams.certStores:()Ljava/util/List;
9: invokestatic sun.security.provider.certpath.RevocationChecker.getResponderCert:(Lsun/security/provider/certpath/RevocationChecker$RevocationProperties;Ljava/util/Set;Ljava/util/List;)Ljava/security/cert/X509Certificate;
10: goto 12
11: StackMap locals: sun.security.provider.certpath.RevocationChecker java.security.cert.TrustAnchor sun.security.provider.certpath.PKIX$ValidatorParams sun.security.provider.certpath.RevocationChecker$RevocationProperties java.net.URI java.security.cert.X509Certificate
StackMap stack: sun.security.provider.certpath.RevocationChecker
aload 5
12: StackMap locals: sun.security.provider.certpath.RevocationChecker java.security.cert.TrustAnchor sun.security.provider.certpath.PKIX$ValidatorParams sun.security.provider.certpath.RevocationChecker$RevocationProperties java.net.URI java.security.cert.X509Certificate
StackMap stack: sun.security.provider.certpath.RevocationChecker java.security.cert.X509Certificate
putfield sun.security.provider.certpath.RevocationChecker.responderCert:Ljava/security/cert/X509Certificate;
13: aload 0
invokevirtual sun.security.provider.certpath.RevocationChecker.getOptions:()Ljava/util/Set;
astore 6
start local 6 14: aload 6
invokeinterface java.util.Set.iterator:()Ljava/util/Iterator;
astore 8
goto 21
StackMap locals: sun.security.provider.certpath.RevocationChecker java.security.cert.TrustAnchor sun.security.provider.certpath.PKIX$ValidatorParams sun.security.provider.certpath.RevocationChecker$RevocationProperties java.net.URI java.security.cert.X509Certificate java.util.Set top java.util.Iterator
StackMap stack:
15: aload 8
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast java.security.cert.PKIXRevocationChecker$Option
astore 7
start local 7 16: invokestatic sun.security.provider.certpath.RevocationChecker.$SWITCH_TABLE$java$security$cert$PKIXRevocationChecker$Option:()[I
aload 7
invokevirtual java.security.cert.PKIXRevocationChecker$Option.ordinal:()I
iaload
tableswitch { // 1 - 4
1: 17
2: 17
3: 17
4: 17
default: 18
}
17: StackMap locals: sun.security.provider.certpath.RevocationChecker java.security.cert.TrustAnchor sun.security.provider.certpath.PKIX$ValidatorParams sun.security.provider.certpath.RevocationChecker$RevocationProperties java.net.URI java.security.cert.X509Certificate java.util.Set java.security.cert.PKIXRevocationChecker$Option java.util.Iterator
StackMap stack:
goto 21
18: StackMap locals:
StackMap stack:
new java.security.cert.CertPathValidatorException
dup
19: new java.lang.StringBuilder
dup
ldc "Unrecognized revocation parameter option: "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 7
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
20: invokespecial java.security.cert.CertPathValidatorException.<init>:(Ljava/lang/String;)V
athrow
end local 7 21: StackMap locals: sun.security.provider.certpath.RevocationChecker java.security.cert.TrustAnchor sun.security.provider.certpath.PKIX$ValidatorParams sun.security.provider.certpath.RevocationChecker$RevocationProperties java.net.URI java.security.cert.X509Certificate java.util.Set top java.util.Iterator
StackMap stack:
aload 8
invokeinterface java.util.Iterator.hasNext:()Z
ifne 15
22: aload 0
aload 6
getstatic java.security.cert.PKIXRevocationChecker$Option.SOFT_FAIL:Ljava/security/cert/PKIXRevocationChecker$Option;
invokeinterface java.util.Set.contains:(Ljava/lang/Object;)Z
putfield sun.security.provider.certpath.RevocationChecker.softFail:Z
23: aload 0
getfield sun.security.provider.certpath.RevocationChecker.legacy:Z
ifeq 29
24: aload 0
aload 3
getfield sun.security.provider.certpath.RevocationChecker$RevocationProperties.ocspEnabled:Z
ifeq 25
getstatic sun.security.provider.certpath.RevocationChecker$Mode.PREFER_OCSP:Lsun/security/provider/certpath/RevocationChecker$Mode;
goto 26
StackMap locals: sun.security.provider.certpath.RevocationChecker java.security.cert.TrustAnchor sun.security.provider.certpath.PKIX$ValidatorParams sun.security.provider.certpath.RevocationChecker$RevocationProperties java.net.URI java.security.cert.X509Certificate java.util.Set
StackMap stack: sun.security.provider.certpath.RevocationChecker
25: getstatic sun.security.provider.certpath.RevocationChecker$Mode.ONLY_CRLS:Lsun/security/provider/certpath/RevocationChecker$Mode;
StackMap locals: sun.security.provider.certpath.RevocationChecker java.security.cert.TrustAnchor sun.security.provider.certpath.PKIX$ValidatorParams sun.security.provider.certpath.RevocationChecker$RevocationProperties java.net.URI java.security.cert.X509Certificate java.util.Set
StackMap stack: sun.security.provider.certpath.RevocationChecker sun.security.provider.certpath.RevocationChecker$Mode
26: putfield sun.security.provider.certpath.RevocationChecker.mode:Lsun/security/provider/certpath/RevocationChecker$Mode;
27: aload 0
aload 3
getfield sun.security.provider.certpath.RevocationChecker$RevocationProperties.onlyEE:Z
putfield sun.security.provider.certpath.RevocationChecker.onlyEE:Z
28: goto 38
29: StackMap locals:
StackMap stack:
aload 6
getstatic java.security.cert.PKIXRevocationChecker$Option.NO_FALLBACK:Ljava/security/cert/PKIXRevocationChecker$Option;
invokeinterface java.util.Set.contains:(Ljava/lang/Object;)Z
ifeq 35
30: aload 6
getstatic java.security.cert.PKIXRevocationChecker$Option.PREFER_CRLS:Ljava/security/cert/PKIXRevocationChecker$Option;
invokeinterface java.util.Set.contains:(Ljava/lang/Object;)Z
ifeq 33
31: aload 0
getstatic sun.security.provider.certpath.RevocationChecker$Mode.ONLY_CRLS:Lsun/security/provider/certpath/RevocationChecker$Mode;
putfield sun.security.provider.certpath.RevocationChecker.mode:Lsun/security/provider/certpath/RevocationChecker$Mode;
32: goto 37
33: StackMap locals:
StackMap stack:
aload 0
getstatic sun.security.provider.certpath.RevocationChecker$Mode.ONLY_OCSP:Lsun/security/provider/certpath/RevocationChecker$Mode;
putfield sun.security.provider.certpath.RevocationChecker.mode:Lsun/security/provider/certpath/RevocationChecker$Mode;
34: goto 37
StackMap locals:
StackMap stack:
35: aload 6
getstatic java.security.cert.PKIXRevocationChecker$Option.PREFER_CRLS:Ljava/security/cert/PKIXRevocationChecker$Option;
invokeinterface java.util.Set.contains:(Ljava/lang/Object;)Z
ifeq 37
36: aload 0
getstatic sun.security.provider.certpath.RevocationChecker$Mode.PREFER_CRLS:Lsun/security/provider/certpath/RevocationChecker$Mode;
putfield sun.security.provider.certpath.RevocationChecker.mode:Lsun/security/provider/certpath/RevocationChecker$Mode;
37: StackMap locals:
StackMap stack:
aload 0
aload 6
getstatic java.security.cert.PKIXRevocationChecker$Option.ONLY_END_ENTITY:Ljava/security/cert/PKIXRevocationChecker$Option;
invokeinterface java.util.Set.contains:(Ljava/lang/Object;)Z
putfield sun.security.provider.certpath.RevocationChecker.onlyEE:Z
38: StackMap locals:
StackMap stack:
aload 0
getfield sun.security.provider.certpath.RevocationChecker.legacy:Z
ifeq 41
39: aload 0
aload 3
getfield sun.security.provider.certpath.RevocationChecker$RevocationProperties.crlDPEnabled:Z
putfield sun.security.provider.certpath.RevocationChecker.crlDP:Z
40: goto 42
41: StackMap locals:
StackMap stack:
aload 0
iconst_1
putfield sun.security.provider.certpath.RevocationChecker.crlDP:Z
42: StackMap locals:
StackMap stack:
aload 0
aload 0
invokevirtual sun.security.provider.certpath.RevocationChecker.getOcspResponses:()Ljava/util/Map;
putfield sun.security.provider.certpath.RevocationChecker.ocspResponses:Ljava/util/Map;
43: aload 0
aload 0
invokevirtual sun.security.provider.certpath.RevocationChecker.getOcspExtensions:()Ljava/util/List;
putfield sun.security.provider.certpath.RevocationChecker.ocspExtensions:Ljava/util/List;
44: aload 0
aload 1
putfield sun.security.provider.certpath.RevocationChecker.anchor:Ljava/security/cert/TrustAnchor;
45: aload 0
aload 2
putfield sun.security.provider.certpath.RevocationChecker.params:Lsun/security/provider/certpath/PKIX$ValidatorParams;
46: aload 0
new java.util.ArrayList
dup
aload 2
invokevirtual sun.security.provider.certpath.PKIX$ValidatorParams.certStores:()Ljava/util/List;
invokespecial java.util.ArrayList.<init>:(Ljava/util/Collection;)V
putfield sun.security.provider.certpath.RevocationChecker.certStores:Ljava/util/List;
47: aload 0
getfield sun.security.provider.certpath.RevocationChecker.certStores:Ljava/util/List;
ldc "Collection"
48: new java.security.cert.CollectionCertStoreParameters
dup
aload 2
invokevirtual sun.security.provider.certpath.PKIX$ValidatorParams.certificates:()Ljava/util/List;
invokespecial java.security.cert.CollectionCertStoreParameters.<init>:(Ljava/util/Collection;)V
49: invokestatic java.security.cert.CertStore.getInstance:(Ljava/lang/String;Ljava/security/cert/CertStoreParameters;)Ljava/security/cert/CertStore;
invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
pop
50: goto 56
51: StackMap locals:
StackMap stack: java.security.GeneralSecurityException
astore 7
start local 7 52: getstatic sun.security.provider.certpath.RevocationChecker.debug:Lsun/security/util/Debug;
ifnull 56
53: getstatic sun.security.provider.certpath.RevocationChecker.debug:Lsun/security/util/Debug;
new java.lang.StringBuilder
dup
ldc "RevocationChecker: error creating Collection CertStore: "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
54: aload 7
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
55: invokevirtual sun.security.util.Debug.println:(Ljava/lang/String;)V
end local 7 56: StackMap locals:
StackMap stack:
return
end local 6 end local 5 end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 57 0 this Lsun/security/provider/certpath/RevocationChecker;
0 57 1 anchor Ljava/security/cert/TrustAnchor;
0 57 2 params Lsun/security/provider/certpath/PKIX$ValidatorParams;
1 57 3 rp Lsun/security/provider/certpath/RevocationChecker$RevocationProperties;
2 57 4 uri Ljava/net/URI;
6 57 5 cert Ljava/security/cert/X509Certificate;
14 57 6 options Ljava/util/Set<Ljava/security/cert/PKIXRevocationChecker$Option;>;
16 21 7 option Ljava/security/cert/PKIXRevocationChecker$Option;
52 56 7 e Ljava/security/GeneralSecurityException;
Exception table:
from to target type
47 50 51 Class java.security.InvalidAlgorithmParameterException
47 50 51 Class java.security.NoSuchAlgorithmException
Exceptions:
throws java.security.cert.CertPathValidatorException
MethodParameters:
Name Flags
anchor
params
private static java.net.URI toURI(java.lang.String);
descriptor: (Ljava/lang/String;)Ljava/net/URI;
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=4, locals=2, args_size=1
start local 0 0: aload 0
ifnull 3
1: new java.net.URI
dup
aload 0
invokespecial java.net.URI.<init>:(Ljava/lang/String;)V
2: areturn
3: StackMap locals:
StackMap stack:
aconst_null
areturn
4: StackMap locals:
StackMap stack: java.net.URISyntaxException
astore 1
start local 1 5: new java.security.cert.CertPathValidatorException
dup
6: ldc "cannot parse ocsp.responderURL property"
aload 1
7: invokespecial java.security.cert.CertPathValidatorException.<init>:(Ljava/lang/String;Ljava/lang/Throwable;)V
athrow
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 8 0 uriString Ljava/lang/String;
5 8 1 e Ljava/net/URISyntaxException;
Exception table:
from to target type
0 2 4 Class java.net.URISyntaxException
Exceptions:
throws java.security.cert.CertPathValidatorException
MethodParameters:
Name Flags
uriString
private static sun.security.provider.certpath.RevocationChecker$RevocationProperties getRevocationProperties();
descriptor: ()Lsun/security/provider/certpath/RevocationChecker$RevocationProperties;
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=2, locals=0, args_size=0
0: new sun.security.provider.certpath.RevocationChecker$1
dup
invokespecial sun.security.provider.certpath.RevocationChecker$1.<init>:()V
1: invokestatic java.security.AccessController.doPrivileged:(Ljava/security/PrivilegedAction;)Ljava/lang/Object;
checkcast sun.security.provider.certpath.RevocationChecker$RevocationProperties
areturn
LocalVariableTable:
Start End Slot Name Signature
private static java.security.cert.X509Certificate getResponderCert(sun.security.provider.certpath.RevocationChecker$RevocationProperties, java.util.Set<java.security.cert.TrustAnchor>, java.util.List<java.security.cert.CertStore>);
descriptor: (Lsun/security/provider/certpath/RevocationChecker$RevocationProperties;Ljava/util/Set;Ljava/util/List;)Ljava/security/cert/X509Certificate;
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=4, locals=3, args_size=3
start local 0 start local 1 start local 2 0: aload 0
getfield sun.security.provider.certpath.RevocationChecker$RevocationProperties.ocspSubject:Ljava/lang/String;
ifnull 2
1: aload 0
getfield sun.security.provider.certpath.RevocationChecker$RevocationProperties.ocspSubject:Ljava/lang/String;
aload 1
aload 2
invokestatic sun.security.provider.certpath.RevocationChecker.getResponderCert:(Ljava/lang/String;Ljava/util/Set;Ljava/util/List;)Ljava/security/cert/X509Certificate;
areturn
2: StackMap locals:
StackMap stack:
aload 0
getfield sun.security.provider.certpath.RevocationChecker$RevocationProperties.ocspIssuer:Ljava/lang/String;
ifnull 6
aload 0
getfield sun.security.provider.certpath.RevocationChecker$RevocationProperties.ocspSerial:Ljava/lang/String;
ifnull 6
3: aload 0
getfield sun.security.provider.certpath.RevocationChecker$RevocationProperties.ocspIssuer:Ljava/lang/String;
aload 0
getfield sun.security.provider.certpath.RevocationChecker$RevocationProperties.ocspSerial:Ljava/lang/String;
4: aload 1
aload 2
5: invokestatic sun.security.provider.certpath.RevocationChecker.getResponderCert:(Ljava/lang/String;Ljava/lang/String;Ljava/util/Set;Ljava/util/List;)Ljava/security/cert/X509Certificate;
areturn
6: StackMap locals:
StackMap stack:
aload 0
getfield sun.security.provider.certpath.RevocationChecker$RevocationProperties.ocspIssuer:Ljava/lang/String;
ifnonnull 7
aload 0
getfield sun.security.provider.certpath.RevocationChecker$RevocationProperties.ocspSerial:Ljava/lang/String;
ifnull 10
7: StackMap locals:
StackMap stack:
new java.security.cert.CertPathValidatorException
dup
8: ldc "Must specify both ocsp.responderCertIssuerName and ocsp.responderCertSerialNumber properties"
9: invokespecial java.security.cert.CertPathValidatorException.<init>:(Ljava/lang/String;)V
athrow
10: StackMap locals:
StackMap stack:
aconst_null
areturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 11 0 rp Lsun/security/provider/certpath/RevocationChecker$RevocationProperties;
0 11 1 anchors Ljava/util/Set<Ljava/security/cert/TrustAnchor;>;
0 11 2 stores Ljava/util/List<Ljava/security/cert/CertStore;>;
Exceptions:
throws java.security.cert.CertPathValidatorException
Signature: (Lsun/security/provider/certpath/RevocationChecker$RevocationProperties;Ljava/util/Set<Ljava/security/cert/TrustAnchor;>;Ljava/util/List<Ljava/security/cert/CertStore;>;)Ljava/security/cert/X509Certificate;
MethodParameters:
Name Flags
rp
anchors
stores
private static java.security.cert.X509Certificate getResponderCert(java.lang.String, java.util.Set<java.security.cert.TrustAnchor>, java.util.List<java.security.cert.CertStore>);
descriptor: (Ljava/lang/String;Ljava/util/Set;Ljava/util/List;)Ljava/security/cert/X509Certificate;
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=4, locals=5, args_size=3
start local 0 start local 1 start local 2 0: new java.security.cert.X509CertSelector
dup
invokespecial java.security.cert.X509CertSelector.<init>:()V
astore 3
start local 3 1: aload 3
new javax.security.auth.x500.X500Principal
dup
aload 0
invokespecial javax.security.auth.x500.X500Principal.<init>:(Ljava/lang/String;)V
invokevirtual java.security.cert.X509CertSelector.setSubject:(Ljavax/security/auth/x500/X500Principal;)V
2: goto 7
StackMap locals: java.lang.String java.util.Set java.util.List java.security.cert.X509CertSelector
StackMap stack: java.lang.IllegalArgumentException
3: astore 4
start local 4 4: new java.security.cert.CertPathValidatorException
dup
5: ldc "cannot parse ocsp.responderCertSubjectName property"
aload 4
6: invokespecial java.security.cert.CertPathValidatorException.<init>:(Ljava/lang/String;Ljava/lang/Throwable;)V
athrow
end local 4 7: StackMap locals:
StackMap stack:
aload 3
aload 1
aload 2
invokestatic sun.security.provider.certpath.RevocationChecker.getResponderCert:(Ljava/security/cert/X509CertSelector;Ljava/util/Set;Ljava/util/List;)Ljava/security/cert/X509Certificate;
areturn
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 8 0 subject Ljava/lang/String;
0 8 1 anchors Ljava/util/Set<Ljava/security/cert/TrustAnchor;>;
0 8 2 stores Ljava/util/List<Ljava/security/cert/CertStore;>;
1 8 3 sel Ljava/security/cert/X509CertSelector;
4 7 4 e Ljava/lang/IllegalArgumentException;
Exception table:
from to target type
1 2 3 Class java.lang.IllegalArgumentException
Exceptions:
throws java.security.cert.CertPathValidatorException
Signature: (Ljava/lang/String;Ljava/util/Set<Ljava/security/cert/TrustAnchor;>;Ljava/util/List<Ljava/security/cert/CertStore;>;)Ljava/security/cert/X509Certificate;
MethodParameters:
Name Flags
subject
anchors
stores
private static java.security.cert.X509Certificate getResponderCert(java.lang.String, java.lang.String, java.util.Set<java.security.cert.TrustAnchor>, java.util.List<java.security.cert.CertStore>);
descriptor: (Ljava/lang/String;Ljava/lang/String;Ljava/util/Set;Ljava/util/List;)Ljava/security/cert/X509Certificate;
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=5, locals=6, args_size=4
start local 0 start local 1 start local 2 start local 3 0: new java.security.cert.X509CertSelector
dup
invokespecial java.security.cert.X509CertSelector.<init>:()V
astore 4
start local 4 1: aload 4
new javax.security.auth.x500.X500Principal
dup
aload 0
invokespecial javax.security.auth.x500.X500Principal.<init>:(Ljava/lang/String;)V
invokevirtual java.security.cert.X509CertSelector.setIssuer:(Ljavax/security/auth/x500/X500Principal;)V
2: goto 7
StackMap locals: java.lang.String java.lang.String java.util.Set java.util.List java.security.cert.X509CertSelector
StackMap stack: java.lang.IllegalArgumentException
3: astore 5
start local 5 4: new java.security.cert.CertPathValidatorException
dup
5: ldc "cannot parse ocsp.responderCertIssuerName property"
aload 5
6: invokespecial java.security.cert.CertPathValidatorException.<init>:(Ljava/lang/String;Ljava/lang/Throwable;)V
athrow
end local 5 7: StackMap locals:
StackMap stack:
aload 4
new java.math.BigInteger
dup
aload 1
invokestatic sun.security.provider.certpath.RevocationChecker.stripOutSeparators:(Ljava/lang/String;)Ljava/lang/String;
bipush 16
invokespecial java.math.BigInteger.<init>:(Ljava/lang/String;I)V
invokevirtual java.security.cert.X509CertSelector.setSerialNumber:(Ljava/math/BigInteger;)V
8: goto 13
StackMap locals:
StackMap stack: java.lang.NumberFormatException
9: astore 5
start local 5 10: new java.security.cert.CertPathValidatorException
dup
11: ldc "cannot parse ocsp.responderCertSerialNumber property"
aload 5
12: invokespecial java.security.cert.CertPathValidatorException.<init>:(Ljava/lang/String;Ljava/lang/Throwable;)V
athrow
end local 5 13: StackMap locals:
StackMap stack:
aload 4
aload 2
aload 3
invokestatic sun.security.provider.certpath.RevocationChecker.getResponderCert:(Ljava/security/cert/X509CertSelector;Ljava/util/Set;Ljava/util/List;)Ljava/security/cert/X509Certificate;
areturn
end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 14 0 issuer Ljava/lang/String;
0 14 1 serial Ljava/lang/String;
0 14 2 anchors Ljava/util/Set<Ljava/security/cert/TrustAnchor;>;
0 14 3 stores Ljava/util/List<Ljava/security/cert/CertStore;>;
1 14 4 sel Ljava/security/cert/X509CertSelector;
4 7 5 e Ljava/lang/IllegalArgumentException;
10 13 5 e Ljava/lang/NumberFormatException;
Exception table:
from to target type
1 2 3 Class java.lang.IllegalArgumentException
7 8 9 Class java.lang.NumberFormatException
Exceptions:
throws java.security.cert.CertPathValidatorException
Signature: (Ljava/lang/String;Ljava/lang/String;Ljava/util/Set<Ljava/security/cert/TrustAnchor;>;Ljava/util/List<Ljava/security/cert/CertStore;>;)Ljava/security/cert/X509Certificate;
MethodParameters:
Name Flags
issuer
serial
anchors
stores
private static java.security.cert.X509Certificate getResponderCert(java.security.cert.X509CertSelector, java.util.Set<java.security.cert.TrustAnchor>, java.util.List<java.security.cert.CertStore>);
descriptor: (Ljava/security/cert/X509CertSelector;Ljava/util/Set;Ljava/util/List;)Ljava/security/cert/X509Certificate;
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=4, locals=6, args_size=3
start local 0 start local 1 start local 2 0: aload 1
invokeinterface java.util.Set.iterator:()Ljava/util/Iterator;
astore 4
goto 7
StackMap locals: java.security.cert.X509CertSelector java.util.Set java.util.List top java.util.Iterator
StackMap stack:
1: aload 4
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast java.security.cert.TrustAnchor
astore 3
start local 3 2: aload 3
invokevirtual java.security.cert.TrustAnchor.getTrustedCert:()Ljava/security/cert/X509Certificate;
astore 5
start local 5 3: aload 5
ifnonnull 5
4: goto 7
5: StackMap locals: java.security.cert.X509CertSelector java.util.Set java.util.List java.security.cert.TrustAnchor java.util.Iterator java.security.cert.X509Certificate
StackMap stack:
aload 0
aload 5
invokevirtual java.security.cert.X509CertSelector.match:(Ljava/security/cert/Certificate;)Z
ifeq 7
6: aload 5
areturn
end local 5 end local 3 7: StackMap locals: java.security.cert.X509CertSelector java.util.Set java.util.List top java.util.Iterator
StackMap stack:
aload 4
invokeinterface java.util.Iterator.hasNext:()Z
ifne 1
8: aload 2
invokeinterface java.util.List.iterator:()Ljava/util/Iterator;
astore 4
goto 18
StackMap locals:
StackMap stack:
9: aload 4
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast java.security.cert.CertStore
astore 3
start local 3 10: aload 3
aload 0
invokevirtual java.security.cert.CertStore.getCertificates:(Ljava/security/cert/CertSelector;)Ljava/util/Collection;
11: astore 5
start local 5 12: aload 5
invokeinterface java.util.Collection.isEmpty:()Z
ifne 18
13: aload 5
invokeinterface java.util.Collection.iterator:()Ljava/util/Iterator;
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast java.security.cert.X509Certificate
14: areturn
end local 5 15: StackMap locals: java.security.cert.X509CertSelector java.util.Set java.util.List java.security.cert.CertStore java.util.Iterator
StackMap stack: java.security.cert.CertStoreException
astore 5
start local 5 16: getstatic sun.security.provider.certpath.RevocationChecker.debug:Lsun/security/util/Debug;
ifnull 18
17: getstatic sun.security.provider.certpath.RevocationChecker.debug:Lsun/security/util/Debug;
new java.lang.StringBuilder
dup
ldc "CertStore exception:"
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 5
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokevirtual sun.security.util.Debug.println:(Ljava/lang/String;)V
end local 5 end local 3 18: StackMap locals: java.security.cert.X509CertSelector java.util.Set java.util.List top java.util.Iterator
StackMap stack:
aload 4
invokeinterface java.util.Iterator.hasNext:()Z
ifne 9
19: new java.security.cert.CertPathValidatorException
dup
20: ldc "Cannot find the responder's certificate (set using the OCSP security properties)."
21: invokespecial java.security.cert.CertPathValidatorException.<init>:(Ljava/lang/String;)V
athrow
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 22 0 sel Ljava/security/cert/X509CertSelector;
0 22 1 anchors Ljava/util/Set<Ljava/security/cert/TrustAnchor;>;
0 22 2 stores Ljava/util/List<Ljava/security/cert/CertStore;>;
2 7 3 anchor Ljava/security/cert/TrustAnchor;
3 7 5 cert Ljava/security/cert/X509Certificate;
10 18 3 store Ljava/security/cert/CertStore;
12 15 5 certs Ljava/util/Collection<+Ljava/security/cert/Certificate;>;
16 18 5 e Ljava/security/cert/CertStoreException;
Exception table:
from to target type
10 14 15 Class java.security.cert.CertStoreException
Exceptions:
throws java.security.cert.CertPathValidatorException
Signature: (Ljava/security/cert/X509CertSelector;Ljava/util/Set<Ljava/security/cert/TrustAnchor;>;Ljava/util/List<Ljava/security/cert/CertStore;>;)Ljava/security/cert/X509Certificate;
MethodParameters:
Name Flags
sel
anchors
stores
public void init(boolean);
descriptor: (Z)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=2, args_size=2
start local 0 start local 1 0: iload 1
ifeq 3
1: new java.security.cert.CertPathValidatorException
dup
ldc "forward checking not supported"
2: invokespecial java.security.cert.CertPathValidatorException.<init>:(Ljava/lang/String;)V
athrow
3: StackMap locals:
StackMap stack:
aload 0
getfield sun.security.provider.certpath.RevocationChecker.anchor:Ljava/security/cert/TrustAnchor;
ifnull 6
4: aload 0
new sun.security.provider.certpath.OCSPResponse$IssuerInfo
dup
aload 0
getfield sun.security.provider.certpath.RevocationChecker.anchor:Ljava/security/cert/TrustAnchor;
invokespecial sun.security.provider.certpath.OCSPResponse$IssuerInfo.<init>:(Ljava/security/cert/TrustAnchor;)V
putfield sun.security.provider.certpath.RevocationChecker.issuerInfo:Lsun/security/provider/certpath/OCSPResponse$IssuerInfo;
5: aload 0
aload 0
getfield sun.security.provider.certpath.RevocationChecker.issuerInfo:Lsun/security/provider/certpath/OCSPResponse$IssuerInfo;
invokevirtual sun.security.provider.certpath.OCSPResponse$IssuerInfo.getPublicKey:()Ljava/security/PublicKey;
putfield sun.security.provider.certpath.RevocationChecker.prevPubKey:Ljava/security/PublicKey;
6: StackMap locals:
StackMap stack:
aload 0
iconst_1
putfield sun.security.provider.certpath.RevocationChecker.crlSignFlag:Z
7: aload 0
getfield sun.security.provider.certpath.RevocationChecker.params:Lsun/security/provider/certpath/PKIX$ValidatorParams;
ifnull 10
aload 0
getfield sun.security.provider.certpath.RevocationChecker.params:Lsun/security/provider/certpath/PKIX$ValidatorParams;
invokevirtual sun.security.provider.certpath.PKIX$ValidatorParams.certPath:()Ljava/security/cert/CertPath;
ifnull 10
8: aload 0
aload 0
getfield sun.security.provider.certpath.RevocationChecker.params:Lsun/security/provider/certpath/PKIX$ValidatorParams;
invokevirtual sun.security.provider.certpath.PKIX$ValidatorParams.certPath:()Ljava/security/cert/CertPath;
invokevirtual java.security.cert.CertPath.getCertificates:()Ljava/util/List;
invokeinterface java.util.List.size:()I
iconst_1
isub
putfield sun.security.provider.certpath.RevocationChecker.certIndex:I
9: goto 11
10: StackMap locals:
StackMap stack:
aload 0
iconst_m1
putfield sun.security.provider.certpath.RevocationChecker.certIndex:I
11: StackMap locals:
StackMap stack:
aload 0
getfield sun.security.provider.certpath.RevocationChecker.softFailExceptions:Ljava/util/LinkedList;
invokevirtual java.util.LinkedList.clear:()V
12: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 13 0 this Lsun/security/provider/certpath/RevocationChecker;
0 13 1 forward Z
Exceptions:
throws java.security.cert.CertPathValidatorException
MethodParameters:
Name Flags
forward
public boolean isForwardCheckingSupported();
descriptor: ()Z
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: iconst_0
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lsun/security/provider/certpath/RevocationChecker;
public java.util.Set<java.lang.String> getSupportedExtensions();
descriptor: ()Ljava/util/Set;
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aconst_null
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lsun/security/provider/certpath/RevocationChecker;
Signature: ()Ljava/util/Set<Ljava/lang/String;>;
public java.util.List<java.security.cert.CertPathValidatorException> getSoftFailExceptions();
descriptor: ()Ljava/util/List;
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield sun.security.provider.certpath.RevocationChecker.softFailExceptions:Ljava/util/LinkedList;
invokestatic java.util.Collections.unmodifiableList:(Ljava/util/List;)Ljava/util/List;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lsun/security/provider/certpath/RevocationChecker;
Signature: ()Ljava/util/List<Ljava/security/cert/CertPathValidatorException;>;
public void check(java.security.cert.Certificate, java.util.Collection<java.lang.String>);
descriptor: (Ljava/security/cert/Certificate;Ljava/util/Collection;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=5, locals=3, args_size=3
start local 0 start local 1 start local 2 0: aload 0
aload 1
checkcast java.security.cert.X509Certificate
aload 2
1: aload 0
getfield sun.security.provider.certpath.RevocationChecker.prevPubKey:Ljava/security/PublicKey;
aload 0
getfield sun.security.provider.certpath.RevocationChecker.crlSignFlag:Z
2: invokevirtual sun.security.provider.certpath.RevocationChecker.check:(Ljava/security/cert/X509Certificate;Ljava/util/Collection;Ljava/security/PublicKey;Z)V
3: return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Lsun/security/provider/certpath/RevocationChecker;
0 4 1 cert Ljava/security/cert/Certificate;
0 4 2 unresolvedCritExts Ljava/util/Collection<Ljava/lang/String;>;
Exceptions:
throws java.security.cert.CertPathValidatorException
Signature: (Ljava/security/cert/Certificate;Ljava/util/Collection<Ljava/lang/String;>;)V
MethodParameters:
Name Flags
cert
unresolvedCritExts
private void check(java.security.cert.X509Certificate, java.util.Collection<java.lang.String>, java.security.PublicKey, );
descriptor: (Ljava/security/cert/X509Certificate;Ljava/util/Collection;Ljava/security/PublicKey;Z)V
flags: (0x0002) ACC_PRIVATE
Code:
stack=6, locals=10, args_size=5
start local 0 start local 1 start local 2 start local 3 start local 4 0: getstatic sun.security.provider.certpath.RevocationChecker.debug:Lsun/security/util/Debug;
ifnull 6
1: getstatic sun.security.provider.certpath.RevocationChecker.debug:Lsun/security/util/Debug;
new java.lang.StringBuilder
dup
ldc "RevocationChecker.check: checking cert\n SN: "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
2: aload 1
invokevirtual java.security.cert.X509Certificate.getSerialNumber:()Ljava/math/BigInteger;
invokestatic sun.security.util.Debug.toHexString:(Ljava/math/BigInteger;)Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
3: ldc "\n Subject: "
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
aload 1
invokevirtual java.security.cert.X509Certificate.getSubjectX500Principal:()Ljavax/security/auth/x500/X500Principal;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
4: ldc "\n Issuer: "
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
aload 1
invokevirtual java.security.cert.X509Certificate.getIssuerX500Principal:()Ljavax/security/auth/x500/X500Principal;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
5: invokevirtual sun.security.util.Debug.println:(Ljava/lang/String;)V
6: StackMap locals:
StackMap stack:
aload 0
getfield sun.security.provider.certpath.RevocationChecker.onlyEE:Z
ifeq 11
aload 1
invokevirtual java.security.cert.X509Certificate.getBasicConstraints:()I
iconst_m1
if_icmpeq 11
7: getstatic sun.security.provider.certpath.RevocationChecker.debug:Lsun/security/util/Debug;
ifnull 9
8: getstatic sun.security.provider.certpath.RevocationChecker.debug:Lsun/security/util/Debug;
ldc "Skipping revocation check; cert is not an end entity cert"
invokevirtual sun.security.util.Debug.println:(Ljava/lang/String;)V
9: StackMap locals:
StackMap stack:
aload 0
aload 1
invokevirtual sun.security.provider.certpath.RevocationChecker.updateState:(Ljava/security/cert/X509Certificate;)V
10: return
11: StackMap locals:
StackMap stack:
invokestatic sun.security.provider.certpath.RevocationChecker.$SWITCH_TABLE$sun$security$provider$certpath$RevocationChecker$Mode:()[I
aload 0
getfield sun.security.provider.certpath.RevocationChecker.mode:Lsun/security/provider/certpath/RevocationChecker$Mode;
invokevirtual sun.security.provider.certpath.RevocationChecker$Mode.ordinal:()I
iaload
tableswitch { // 1 - 4
1: 12
2: 14
3: 14
4: 12
default: 17
}
12: StackMap locals:
StackMap stack:
aload 0
aload 1
aload 2
invokevirtual sun.security.provider.certpath.RevocationChecker.checkOCSP:(Ljava/security/cert/X509Certificate;Ljava/util/Collection;)V
13: goto 54
14: StackMap locals:
StackMap stack:
aload 0
aload 1
aload 2
aconst_null
15: aload 3
iload 4
16: invokevirtual sun.security.provider.certpath.RevocationChecker.checkCRLs:(Ljava/security/cert/X509Certificate;Ljava/util/Collection;Ljava/util/Set;Ljava/security/PublicKey;Z)V
17: StackMap locals:
StackMap stack:
goto 54
StackMap locals:
StackMap stack: java.security.cert.CertPathValidatorException
18: astore 5
start local 5 19: aload 5
invokevirtual java.security.cert.CertPathValidatorException.getReason:()Ljava/security/cert/CertPathValidatorException$Reason;
getstatic java.security.cert.CertPathValidatorException$BasicReason.REVOKED:Ljava/security/cert/CertPathValidatorException$BasicReason;
if_acmpne 21
20: aload 5
athrow
21: StackMap locals: java.security.cert.CertPathValidatorException
StackMap stack:
aload 0
aload 5
invokevirtual sun.security.provider.certpath.RevocationChecker.isSoftFailException:(Ljava/security/cert/CertPathValidatorException;)Z
istore 6
start local 6 22: iload 6
ifeq 26
23: aload 0
getfield sun.security.provider.certpath.RevocationChecker.mode:Lsun/security/provider/certpath/RevocationChecker$Mode;
getstatic sun.security.provider.certpath.RevocationChecker$Mode.ONLY_OCSP:Lsun/security/provider/certpath/RevocationChecker$Mode;
if_acmpeq 24
aload 0
getfield sun.security.provider.certpath.RevocationChecker.mode:Lsun/security/provider/certpath/RevocationChecker$Mode;
getstatic sun.security.provider.certpath.RevocationChecker$Mode.ONLY_CRLS:Lsun/security/provider/certpath/RevocationChecker$Mode;
if_acmpne 28
24: StackMap locals: int
StackMap stack:
aload 0
aload 1
invokevirtual sun.security.provider.certpath.RevocationChecker.updateState:(Ljava/security/cert/X509Certificate;)V
25: return
26: StackMap locals:
StackMap stack:
aload 0
getfield sun.security.provider.certpath.RevocationChecker.mode:Lsun/security/provider/certpath/RevocationChecker$Mode;
getstatic sun.security.provider.certpath.RevocationChecker$Mode.ONLY_OCSP:Lsun/security/provider/certpath/RevocationChecker$Mode;
if_acmpeq 27
aload 0
getfield sun.security.provider.certpath.RevocationChecker.mode:Lsun/security/provider/certpath/RevocationChecker$Mode;
getstatic sun.security.provider.certpath.RevocationChecker$Mode.ONLY_CRLS:Lsun/security/provider/certpath/RevocationChecker$Mode;
if_acmpne 28
27: StackMap locals:
StackMap stack:
aload 5
athrow
28: StackMap locals:
StackMap stack:
aload 5
astore 7
start local 7 29: getstatic sun.security.provider.certpath.RevocationChecker.debug:Lsun/security/util/Debug;
ifnull 32
30: getstatic sun.security.provider.certpath.RevocationChecker.debug:Lsun/security/util/Debug;
new java.lang.StringBuilder
dup
ldc "RevocationChecker.check() "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 5
invokevirtual java.security.cert.CertPathValidatorException.getMessage:()Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokevirtual sun.security.util.Debug.println:(Ljava/lang/String;)V
31: getstatic sun.security.provider.certpath.RevocationChecker.debug:Lsun/security/util/Debug;
ldc "RevocationChecker.check() preparing to failover"
invokevirtual sun.security.util.Debug.println:(Ljava/lang/String;)V
32: StackMap locals: java.security.cert.CertPathValidatorException
StackMap stack:
invokestatic sun.security.provider.certpath.RevocationChecker.$SWITCH_TABLE$sun$security$provider$certpath$RevocationChecker$Mode:()[I
aload 0
getfield sun.security.provider.certpath.RevocationChecker.mode:Lsun/security/provider/certpath/RevocationChecker$Mode;
invokevirtual sun.security.provider.certpath.RevocationChecker$Mode.ordinal:()I
iaload
tableswitch { // 1 - 2
1: 33
2: 37
default: 38
}
33: StackMap locals:
StackMap stack:
aload 0
aload 1
aload 2
aconst_null
34: aload 3
iload 4
35: invokevirtual sun.security.provider.certpath.RevocationChecker.checkCRLs:(Ljava/security/cert/X509Certificate;Ljava/util/Collection;Ljava/util/Set;Ljava/security/PublicKey;Z)V
36: goto 50
37: StackMap locals:
StackMap stack:
aload 0
aload 1
aload 2
invokevirtual sun.security.provider.certpath.RevocationChecker.checkOCSP:(Ljava/security/cert/X509Certificate;Ljava/util/Collection;)V
38: StackMap locals:
StackMap stack:
goto 50
StackMap locals:
StackMap stack: java.security.cert.CertPathValidatorException
39: astore 8
start local 8 40: getstatic sun.security.provider.certpath.RevocationChecker.debug:Lsun/security/util/Debug;
ifnull 43
41: getstatic sun.security.provider.certpath.RevocationChecker.debug:Lsun/security/util/Debug;
ldc "RevocationChecker.check() failover failed"
invokevirtual sun.security.util.Debug.println:(Ljava/lang/String;)V
42: getstatic sun.security.provider.certpath.RevocationChecker.debug:Lsun/security/util/Debug;
new java.lang.StringBuilder
dup
ldc "RevocationChecker.check() "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 8
invokevirtual java.security.cert.CertPathValidatorException.getMessage:()Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokevirtual sun.security.util.Debug.println:(Ljava/lang/String;)V
43: StackMap locals: java.security.cert.CertPathValidatorException
StackMap stack:
aload 8
invokevirtual java.security.cert.CertPathValidatorException.getReason:()Ljava/security/cert/CertPathValidatorException$Reason;
getstatic java.security.cert.CertPathValidatorException$BasicReason.REVOKED:Ljava/security/cert/CertPathValidatorException$BasicReason;
if_acmpne 45
44: aload 8
athrow
45: StackMap locals:
StackMap stack:
aload 0
aload 8
invokevirtual sun.security.provider.certpath.RevocationChecker.isSoftFailException:(Ljava/security/cert/CertPathValidatorException;)Z
ifne 48
46: aload 7
aload 8
invokevirtual java.security.cert.CertPathValidatorException.addSuppressed:(Ljava/lang/Throwable;)V
47: aload 7
athrow
48: StackMap locals:
StackMap stack:
iload 6
ifne 50
49: aload 7
athrow
end local 8 end local 7 end local 6 end local 5 50: StackMap locals: sun.security.provider.certpath.RevocationChecker java.security.cert.X509Certificate java.util.Collection java.security.PublicKey int
StackMap stack:
aload 0
aload 1
invokevirtual sun.security.provider.certpath.RevocationChecker.updateState:(Ljava/security/cert/X509Certificate;)V
goto 55
51: StackMap locals:
StackMap stack: java.lang.Throwable
astore 9
52: aload 0
aload 1
invokevirtual sun.security.provider.certpath.RevocationChecker.updateState:(Ljava/security/cert/X509Certificate;)V
53: aload 9
athrow
54: StackMap locals:
StackMap stack:
aload 0
aload 1
invokevirtual sun.security.provider.certpath.RevocationChecker.updateState:(Ljava/security/cert/X509Certificate;)V
55: StackMap locals:
StackMap stack:
return
end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 56 0 this Lsun/security/provider/certpath/RevocationChecker;
0 56 1 xcert Ljava/security/cert/X509Certificate;
0 56 2 unresolvedCritExts Ljava/util/Collection<Ljava/lang/String;>;
0 56 3 pubKey Ljava/security/PublicKey;
0 56 4 crlSignFlag Z
19 50 5 e Ljava/security/cert/CertPathValidatorException;
22 50 6 eSoftFail Z
29 50 7 cause Ljava/security/cert/CertPathValidatorException;
40 50 8 x Ljava/security/cert/CertPathValidatorException;
Exception table:
from to target type
6 9 18 Class java.security.cert.CertPathValidatorException
11 17 18 Class java.security.cert.CertPathValidatorException
32 38 39 Class java.security.cert.CertPathValidatorException
6 9 51 any
11 24 51 any
26 50 51 any
Exceptions:
throws java.security.cert.CertPathValidatorException
Signature: (Ljava/security/cert/X509Certificate;Ljava/util/Collection<Ljava/lang/String;>;Ljava/security/PublicKey;Z)V
MethodParameters:
Name Flags
xcert
unresolvedCritExts
pubKey
crlSignFlag
private boolean isSoftFailException(java.security.cert.CertPathValidatorException);
descriptor: (Ljava/security/cert/CertPathValidatorException;)Z
flags: (0x0002) ACC_PRIVATE
Code:
stack=7, locals=3, args_size=2
start local 0 start local 1 0: aload 0
getfield sun.security.provider.certpath.RevocationChecker.softFail:Z
ifeq 8
1: aload 1
invokevirtual java.security.cert.CertPathValidatorException.getReason:()Ljava/security/cert/CertPathValidatorException$Reason;
getstatic java.security.cert.CertPathValidatorException$BasicReason.UNDETERMINED_REVOCATION_STATUS:Ljava/security/cert/CertPathValidatorException$BasicReason;
if_acmpne 8
2: new java.security.cert.CertPathValidatorException
dup
3: aload 1
invokevirtual java.security.cert.CertPathValidatorException.getMessage:()Ljava/lang/String;
aload 1
invokevirtual java.security.cert.CertPathValidatorException.getCause:()Ljava/lang/Throwable;
aload 0
getfield sun.security.provider.certpath.RevocationChecker.params:Lsun/security/provider/certpath/PKIX$ValidatorParams;
invokevirtual sun.security.provider.certpath.PKIX$ValidatorParams.certPath:()Ljava/security/cert/CertPath;
aload 0
getfield sun.security.provider.certpath.RevocationChecker.certIndex:I
4: aload 1
invokevirtual java.security.cert.CertPathValidatorException.getReason:()Ljava/security/cert/CertPathValidatorException$Reason;
5: invokespecial java.security.cert.CertPathValidatorException.<init>:(Ljava/lang/String;Ljava/lang/Throwable;Ljava/security/cert/CertPath;ILjava/security/cert/CertPathValidatorException$Reason;)V
astore 2
start local 2 6: aload 0
getfield sun.security.provider.certpath.RevocationChecker.softFailExceptions:Ljava/util/LinkedList;
aload 2
invokevirtual java.util.LinkedList.addFirst:(Ljava/lang/Object;)V
7: iconst_1
ireturn
end local 2 8: StackMap locals:
StackMap stack:
iconst_0
ireturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 9 0 this Lsun/security/provider/certpath/RevocationChecker;
0 9 1 e Ljava/security/cert/CertPathValidatorException;
6 8 2 e2 Ljava/security/cert/CertPathValidatorException;
MethodParameters:
Name Flags
e
private void updateState(java.security.cert.X509Certificate);
descriptor: (Ljava/security/cert/X509Certificate;)V
flags: (0x0002) ACC_PRIVATE
Code:
stack=5, locals=3, args_size=2
start local 0 start local 1 0: aload 0
new sun.security.provider.certpath.OCSPResponse$IssuerInfo
dup
aload 0
getfield sun.security.provider.certpath.RevocationChecker.anchor:Ljava/security/cert/TrustAnchor;
aload 1
invokespecial sun.security.provider.certpath.OCSPResponse$IssuerInfo.<init>:(Ljava/security/cert/TrustAnchor;Ljava/security/cert/X509Certificate;)V
putfield sun.security.provider.certpath.RevocationChecker.issuerInfo:Lsun/security/provider/certpath/OCSPResponse$IssuerInfo;
1: aload 1
invokevirtual java.security.cert.X509Certificate.getPublicKey:()Ljava/security/PublicKey;
astore 2
start local 2 2: aload 2
invokestatic sun.security.provider.certpath.PKIX.isDSAPublicKeyWithoutParams:(Ljava/security/PublicKey;)Z
ifeq 4
3: aload 2
aload 0
getfield sun.security.provider.certpath.RevocationChecker.prevPubKey:Ljava/security/PublicKey;
invokestatic sun.security.provider.certpath.BasicChecker.makeInheritedParamsKey:(Ljava/security/PublicKey;Ljava/security/PublicKey;)Ljava/security/PublicKey;
astore 2
4: StackMap locals: java.security.PublicKey
StackMap stack:
aload 0
aload 2
putfield sun.security.provider.certpath.RevocationChecker.prevPubKey:Ljava/security/PublicKey;
5: aload 0
aload 1
invokestatic sun.security.provider.certpath.RevocationChecker.certCanSignCrl:(Ljava/security/cert/X509Certificate;)Z
putfield sun.security.provider.certpath.RevocationChecker.crlSignFlag:Z
6: aload 0
getfield sun.security.provider.certpath.RevocationChecker.certIndex:I
ifle 8
7: aload 0
dup
getfield sun.security.provider.certpath.RevocationChecker.certIndex:I
iconst_1
isub
putfield sun.security.provider.certpath.RevocationChecker.certIndex:I
8: StackMap locals:
StackMap stack:
return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 9 0 this Lsun/security/provider/certpath/RevocationChecker;
0 9 1 cert Ljava/security/cert/X509Certificate;
2 9 2 pubKey Ljava/security/PublicKey;
Exceptions:
throws java.security.cert.CertPathValidatorException
MethodParameters:
Name Flags
cert
private void checkCRLs(java.security.cert.X509Certificate, java.util.Collection<java.lang.String>, java.util.Set<java.security.cert.X509Certificate>, java.security.PublicKey, );
descriptor: (Ljava/security/cert/X509Certificate;Ljava/util/Collection;Ljava/util/Set;Ljava/security/PublicKey;Z)V
flags: (0x0002) ACC_PRIVATE
Code:
stack=8, locals=6, args_size=6
start local 0 start local 1 start local 2 start local 3 start local 4 start local 5 0: aload 0
aload 1
aload 4
aconst_null
iload 5
iconst_1
1: aload 3
aload 0
getfield sun.security.provider.certpath.RevocationChecker.params:Lsun/security/provider/certpath/PKIX$ValidatorParams;
invokevirtual sun.security.provider.certpath.PKIX$ValidatorParams.trustAnchors:()Ljava/util/Set;
2: invokevirtual sun.security.provider.certpath.RevocationChecker.checkCRLs:(Ljava/security/cert/X509Certificate;Ljava/security/PublicKey;Ljava/security/cert/X509Certificate;ZZLjava/util/Set;Ljava/util/Set;)V
3: return
end local 5 end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Lsun/security/provider/certpath/RevocationChecker;
0 4 1 cert Ljava/security/cert/X509Certificate;
0 4 2 unresolvedCritExts Ljava/util/Collection<Ljava/lang/String;>;
0 4 3 stackedCerts Ljava/util/Set<Ljava/security/cert/X509Certificate;>;
0 4 4 pubKey Ljava/security/PublicKey;
0 4 5 signFlag Z
Exceptions:
throws java.security.cert.CertPathValidatorException
Signature: (Ljava/security/cert/X509Certificate;Ljava/util/Collection<Ljava/lang/String;>;Ljava/util/Set<Ljava/security/cert/X509Certificate;>;Ljava/security/PublicKey;Z)V
MethodParameters:
Name Flags
cert
unresolvedCritExts
stackedCerts
pubKey
signFlag
static boolean isCausedByNetworkIssue(java.lang.String, java.security.cert.CertStoreException);
descriptor: (Ljava/lang/String;Ljava/security/cert/CertStoreException;)Z
flags: (0x0008) ACC_STATIC
Code:
stack=2, locals=6, args_size=2
start local 0 start local 1 0: aload 1
invokevirtual java.security.cert.CertStoreException.getCause:()Ljava/lang/Throwable;
astore 3
start local 3 1: aload 0
dup
astore 4
invokevirtual java.lang.String.hashCode:()I
lookupswitch { // 3
84300: 2
2331559: 3
133315663: 4
default: 23
}
StackMap locals: java.lang.String java.security.cert.CertStoreException top java.lang.Throwable java.lang.String
StackMap stack:
2: aload 4
ldc "URI"
invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
ifne 19
goto 23
StackMap locals:
StackMap stack:
3: aload 4
ldc "LDAP"
invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
ifne 5
goto 23
StackMap locals:
StackMap stack:
4: aload 4
ldc "SSLServer"
invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
ifne 15
goto 23
5: StackMap locals:
StackMap stack:
aload 3
ifnull 13
6: aload 3
invokevirtual java.lang.Object.getClass:()Ljava/lang/Class;
invokevirtual java.lang.Class.getName:()Ljava/lang/String;
astore 5
start local 5 7: aload 5
ldc "javax.naming.ServiceUnavailableException"
invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
ifne 10
8: aload 5
ldc "javax.naming.CommunicationException"
invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
ifne 10
9: iconst_0
goto 11
StackMap locals: java.lang.String
StackMap stack:
10: iconst_1
StackMap locals:
StackMap stack: int
11: istore 2
end local 5 start local 2 12: goto 24
end local 2 13: StackMap locals:
StackMap stack:
iconst_0
istore 2
start local 2 14: goto 24
end local 2 15: StackMap locals:
StackMap stack:
aload 3
ifnull 16
aload 3
instanceof java.io.IOException
ifeq 16
iconst_1
goto 17
StackMap locals:
StackMap stack:
16: iconst_0
StackMap locals:
StackMap stack: int
17: istore 2
start local 2 18: goto 24
end local 2 19: StackMap locals:
StackMap stack:
aload 3
ifnull 20
aload 3
instanceof java.io.IOException
ifeq 20
iconst_1
goto 21
StackMap locals:
StackMap stack:
20: iconst_0
StackMap locals:
StackMap stack: int
21: istore 2
start local 2 22: goto 24
end local 2 23: StackMap locals:
StackMap stack:
iconst_0
ireturn
start local 2 24: StackMap locals: java.lang.String java.security.cert.CertStoreException int java.lang.Throwable
StackMap stack:
iload 2
ireturn
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 25 0 type Ljava/lang/String;
0 25 1 cse Ljava/security/cert/CertStoreException;
12 13 2 result Z
14 15 2 result Z
18 19 2 result Z
22 23 2 result Z
24 25 2 result Z
1 25 3 t Ljava/lang/Throwable;
7 12 5 cn Ljava/lang/String;
MethodParameters:
Name Flags
type
cse
private void checkCRLs(java.security.cert.X509Certificate, java.security.PublicKey, java.security.cert.X509Certificate, boolean, boolean, java.util.Set<java.security.cert.X509Certificate>, java.util.Set<java.security.cert.TrustAnchor>);
descriptor: (Ljava/security/cert/X509Certificate;Ljava/security/PublicKey;Ljava/security/cert/X509Certificate;ZZLjava/util/Set;Ljava/util/Set;)V
flags: (0x0002) ACC_PRIVATE
Code:
stack=11, locals=16, args_size=8
start local 0 start local 1 start local 2 start local 3 start local 4 start local 5 start local 6 start local 7 0: getstatic sun.security.provider.certpath.RevocationChecker.debug:Lsun/security/util/Debug;
ifnull 2
1: getstatic sun.security.provider.certpath.RevocationChecker.debug:Lsun/security/util/Debug;
ldc "RevocationChecker.checkCRLs() ---checking revocation status ..."
invokevirtual sun.security.util.Debug.println:(Ljava/lang/String;)V
2: StackMap locals:
StackMap stack:
aload 6
ifnull 9
aload 6
aload 1
invokeinterface java.util.Set.contains:(Ljava/lang/Object;)Z
ifeq 9
3: getstatic sun.security.provider.certpath.RevocationChecker.debug:Lsun/security/util/Debug;
ifnull 5
4: getstatic sun.security.provider.certpath.RevocationChecker.debug:Lsun/security/util/Debug;
ldc "RevocationChecker.checkCRLs() circular dependency"
invokevirtual sun.security.util.Debug.println:(Ljava/lang/String;)V
5: StackMap locals:
StackMap stack:
new java.security.cert.CertPathValidatorException
dup
6: ldc "Could not determine revocation status"
aconst_null
aconst_null
iconst_m1
7: getstatic java.security.cert.CertPathValidatorException$BasicReason.UNDETERMINED_REVOCATION_STATUS:Ljava/security/cert/CertPathValidatorException$BasicReason;
8: invokespecial java.security.cert.CertPathValidatorException.<init>:(Ljava/lang/String;Ljava/lang/Throwable;Ljava/security/cert/CertPath;ILjava/security/cert/CertPathValidatorException$Reason;)V
athrow
9: StackMap locals:
StackMap stack:
new java.util.HashSet
dup
invokespecial java.util.HashSet.<init>:()V
astore 8
start local 8 10: new java.util.HashSet
dup
invokespecial java.util.HashSet.<init>:()V
astore 9
start local 9 11: new java.security.cert.X509CRLSelector
dup
invokespecial java.security.cert.X509CRLSelector.<init>:()V
astore 10
start local 10 12: aload 10
aload 1
invokevirtual java.security.cert.X509CRLSelector.setCertificateChecking:(Ljava/security/cert/X509Certificate;)V
13: aload 10
aload 0
getfield sun.security.provider.certpath.RevocationChecker.params:Lsun/security/provider/certpath/PKIX$ValidatorParams;
invokevirtual sun.security.provider.certpath.PKIX$ValidatorParams.date:()Ljava/util/Date;
ldc 900000
invokestatic sun.security.provider.certpath.CertPathHelper.setDateAndTime:(Ljava/security/cert/X509CRLSelector;Ljava/util/Date;J)V
14: aconst_null
astore 11
start local 11 15: aload 0
getfield sun.security.provider.certpath.RevocationChecker.certStores:Ljava/util/List;
invokeinterface java.util.List.iterator:()Ljava/util/Iterator;
astore 13
goto 34
StackMap locals: sun.security.provider.certpath.RevocationChecker java.security.cert.X509Certificate java.security.PublicKey java.security.cert.X509Certificate int int java.util.Set java.util.Set java.util.Set java.util.Set java.security.cert.X509CRLSelector java.security.cert.CertPathValidatorException top java.util.Iterator
StackMap stack:
16: aload 13
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast java.security.cert.CertStore
astore 12
start local 12 17: aload 12
aload 10
invokevirtual java.security.cert.CertStore.getCRLs:(Ljava/security/cert/CRLSelector;)Ljava/util/Collection;
invokeinterface java.util.Collection.iterator:()Ljava/util/Iterator;
astore 15
goto 20
StackMap locals: sun.security.provider.certpath.RevocationChecker java.security.cert.X509Certificate java.security.PublicKey java.security.cert.X509Certificate int int java.util.Set java.util.Set java.util.Set java.util.Set java.security.cert.X509CRLSelector java.security.cert.CertPathValidatorException java.security.cert.CertStore java.util.Iterator top java.util.Iterator
StackMap stack:
18: aload 15
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast java.security.cert.CRL
astore 14
start local 14 19: aload 8
aload 14
checkcast java.security.cert.X509CRL
invokeinterface java.util.Set.add:(Ljava/lang/Object;)Z
pop
end local 14 20: StackMap locals:
StackMap stack:
aload 15
invokeinterface java.util.Iterator.hasNext:()Z
ifne 18
21: goto 34
StackMap locals: sun.security.provider.certpath.RevocationChecker java.security.cert.X509Certificate java.security.PublicKey java.security.cert.X509Certificate int int java.util.Set java.util.Set java.util.Set java.util.Set java.security.cert.X509CRLSelector java.security.cert.CertPathValidatorException java.security.cert.CertStore java.util.Iterator
StackMap stack: java.security.cert.CertStoreException
22: astore 14
start local 14 23: getstatic sun.security.provider.certpath.RevocationChecker.debug:Lsun/security/util/Debug;
ifnull 27
24: getstatic sun.security.provider.certpath.RevocationChecker.debug:Lsun/security/util/Debug;
new java.lang.StringBuilder
dup
ldc "RevocationChecker.checkCRLs() CertStoreException: "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
25: aload 14
invokevirtual java.security.cert.CertStoreException.getMessage:()Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
26: invokevirtual sun.security.util.Debug.println:(Ljava/lang/String;)V
27: StackMap locals: java.security.cert.CertStoreException
StackMap stack:
aload 11
ifnonnull 34
28: aload 12
invokevirtual java.security.cert.CertStore.getType:()Ljava/lang/String;
aload 14
invokestatic sun.security.provider.certpath.RevocationChecker.isCausedByNetworkIssue:(Ljava/lang/String;Ljava/security/cert/CertStoreException;)Z
ifeq 34
29: new java.security.cert.CertPathValidatorException
dup
30: ldc "Unable to determine revocation status due to network error"
31: aload 14
aconst_null
iconst_m1
32: getstatic java.security.cert.CertPathValidatorException$BasicReason.UNDETERMINED_REVOCATION_STATUS:Ljava/security/cert/CertPathValidatorException$BasicReason;
33: invokespecial java.security.cert.CertPathValidatorException.<init>:(Ljava/lang/String;Ljava/lang/Throwable;Ljava/security/cert/CertPath;ILjava/security/cert/CertPathValidatorException$Reason;)V
astore 11
end local 14 end local 12 34: StackMap locals: sun.security.provider.certpath.RevocationChecker java.security.cert.X509Certificate java.security.PublicKey java.security.cert.X509Certificate int int java.util.Set java.util.Set java.util.Set java.util.Set java.security.cert.X509CRLSelector java.security.cert.CertPathValidatorException top java.util.Iterator
StackMap stack:
aload 13
invokeinterface java.util.Iterator.hasNext:()Z
ifne 16
35: getstatic sun.security.provider.certpath.RevocationChecker.debug:Lsun/security/util/Debug;
ifnull 39
36: getstatic sun.security.provider.certpath.RevocationChecker.debug:Lsun/security/util/Debug;
new java.lang.StringBuilder
dup
ldc "RevocationChecker.checkCRLs() possible crls.size() = "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
37: aload 8
invokeinterface java.util.Set.size:()I
invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
38: invokevirtual sun.security.util.Debug.println:(Ljava/lang/String;)V
39: StackMap locals: sun.security.provider.certpath.RevocationChecker java.security.cert.X509Certificate java.security.PublicKey java.security.cert.X509Certificate int int java.util.Set java.util.Set java.util.Set java.util.Set java.security.cert.X509CRLSelector java.security.cert.CertPathValidatorException
StackMap stack:
bipush 9
newarray 4
astore 12
start local 12 40: aload 8
invokeinterface java.util.Set.isEmpty:()Z
ifne 45
41: aload 9
aload 0
aload 8
aload 1
aload 2
42: iload 4
aload 12
43: aload 7
44: invokevirtual sun.security.provider.certpath.RevocationChecker.verifyPossibleCRLs:(Ljava/util/Set;Ljava/security/cert/X509Certificate;Ljava/security/PublicKey;Z[ZLjava/util/Set;)Ljava/util/Collection;
invokeinterface java.util.Set.addAll:(Ljava/util/Collection;)Z
pop
45: StackMap locals: boolean[]
StackMap stack:
getstatic sun.security.provider.certpath.RevocationChecker.debug:Lsun/security/util/Debug;
ifnull 49
46: getstatic sun.security.provider.certpath.RevocationChecker.debug:Lsun/security/util/Debug;
new java.lang.StringBuilder
dup
ldc "RevocationChecker.checkCRLs() approved crls.size() = "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
47: aload 9
invokeinterface java.util.Set.size:()I
invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
48: invokevirtual sun.security.util.Debug.println:(Ljava/lang/String;)V
49: StackMap locals:
StackMap stack:
aload 9
invokeinterface java.util.Set.isEmpty:()Z
ifne 53
50: aload 12
getstatic sun.security.provider.certpath.RevocationChecker.ALL_REASONS:[Z
invokestatic java.util.Arrays.equals:([Z[Z)Z
ifeq 53
51: aload 0
aload 1
aload 9
invokevirtual sun.security.provider.certpath.RevocationChecker.checkApprovedCRLs:(Ljava/security/cert/X509Certificate;Ljava/util/Set;)V
52: goto 89
53: StackMap locals:
StackMap stack:
aload 0
getfield sun.security.provider.certpath.RevocationChecker.crlDP:Z
ifeq 70
54: aload 9
55: aload 10
iload 4
aload 2
aload 3
56: aload 0
getfield sun.security.provider.certpath.RevocationChecker.params:Lsun/security/provider/certpath/PKIX$ValidatorParams;
invokevirtual sun.security.provider.certpath.PKIX$ValidatorParams.sigProvider:()Ljava/lang/String;
aload 0
getfield sun.security.provider.certpath.RevocationChecker.certStores:Ljava/util/List;
57: aload 12
aload 7
aconst_null
aload 0
getfield sun.security.provider.certpath.RevocationChecker.params:Lsun/security/provider/certpath/PKIX$ValidatorParams;
invokevirtual sun.security.provider.certpath.PKIX$ValidatorParams.variant:()Ljava/lang/String;
58: invokestatic sun.security.provider.certpath.DistributionPointFetcher.getCRLs:(Ljava/security/cert/X509CRLSelector;ZLjava/security/PublicKey;Ljava/security/cert/X509Certificate;Ljava/lang/String;Ljava/util/List;[ZLjava/util/Set;Ljava/util/Date;Ljava/lang/String;)Ljava/util/Collection;
invokeinterface java.util.Set.addAll:(Ljava/util/Collection;)Z
pop
59: goto 70
StackMap locals:
StackMap stack: java.security.cert.CertStoreException
60: astore 13
start local 13 61: aload 13
instanceof sun.security.provider.certpath.PKIX$CertStoreTypeException
ifeq 69
62: aload 13
checkcast sun.security.provider.certpath.PKIX$CertStoreTypeException
astore 14
start local 14 63: aload 14
invokevirtual sun.security.provider.certpath.PKIX$CertStoreTypeException.getType:()Ljava/lang/String;
aload 13
invokestatic sun.security.provider.certpath.RevocationChecker.isCausedByNetworkIssue:(Ljava/lang/String;Ljava/security/cert/CertStoreException;)Z
ifeq 69
64: new java.security.cert.CertPathValidatorException
dup
65: ldc "Unable to determine revocation status due to network error"
66: aload 13
aconst_null
iconst_m1
67: getstatic java.security.cert.CertPathValidatorException$BasicReason.UNDETERMINED_REVOCATION_STATUS:Ljava/security/cert/CertPathValidatorException$BasicReason;
68: invokespecial java.security.cert.CertPathValidatorException.<init>:(Ljava/lang/String;Ljava/lang/Throwable;Ljava/security/cert/CertPath;ILjava/security/cert/CertPathValidatorException$Reason;)V
athrow
end local 14 69: StackMap locals: java.security.cert.CertStoreException
StackMap stack:
new java.security.cert.CertPathValidatorException
dup
aload 13
invokespecial java.security.cert.CertPathValidatorException.<init>:(Ljava/lang/Throwable;)V
athrow
end local 13 70: StackMap locals:
StackMap stack:
aload 9
invokeinterface java.util.Set.isEmpty:()Z
ifne 74
71: aload 12
getstatic sun.security.provider.certpath.RevocationChecker.ALL_REASONS:[Z
invokestatic java.util.Arrays.equals:([Z[Z)Z
ifeq 74
72: aload 0
aload 1
aload 9
invokevirtual sun.security.provider.certpath.RevocationChecker.checkApprovedCRLs:(Ljava/security/cert/X509Certificate;Ljava/util/Set;)V
73: goto 89
74: StackMap locals:
StackMap stack:
iload 5
ifeq 83
75: aload 0
aload 1
aload 2
iload 4
76: aload 6
77: invokevirtual sun.security.provider.certpath.RevocationChecker.verifyWithSeparateSigningKey:(Ljava/security/cert/X509Certificate;Ljava/security/PublicKey;ZLjava/util/Set;)V
78: return
79: StackMap locals:
StackMap stack: java.security.cert.CertPathValidatorException
astore 13
start local 13 80: aload 11
ifnull 82
81: aload 11
athrow
82: StackMap locals: java.security.cert.CertPathValidatorException
StackMap stack:
aload 13
athrow
end local 13 83: StackMap locals:
StackMap stack:
aload 11
ifnull 85
84: aload 11
athrow
85: StackMap locals:
StackMap stack:
new java.security.cert.CertPathValidatorException
dup
86: ldc "Could not determine revocation status"
aconst_null
aconst_null
iconst_m1
87: getstatic java.security.cert.CertPathValidatorException$BasicReason.UNDETERMINED_REVOCATION_STATUS:Ljava/security/cert/CertPathValidatorException$BasicReason;
88: invokespecial java.security.cert.CertPathValidatorException.<init>:(Ljava/lang/String;Ljava/lang/Throwable;Ljava/security/cert/CertPath;ILjava/security/cert/CertPathValidatorException$Reason;)V
athrow
89: StackMap locals:
StackMap stack:
return
end local 12 end local 11 end local 10 end local 9 end local 8 end local 7 end local 6 end local 5 end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 90 0 this Lsun/security/provider/certpath/RevocationChecker;
0 90 1 cert Ljava/security/cert/X509Certificate;
0 90 2 prevKey Ljava/security/PublicKey;
0 90 3 prevCert Ljava/security/cert/X509Certificate;
0 90 4 signFlag Z
0 90 5 allowSeparateKey Z
0 90 6 stackedCerts Ljava/util/Set<Ljava/security/cert/X509Certificate;>;
0 90 7 anchors Ljava/util/Set<Ljava/security/cert/TrustAnchor;>;
10 90 8 possibleCRLs Ljava/util/Set<Ljava/security/cert/X509CRL;>;
11 90 9 approvedCRLs Ljava/util/Set<Ljava/security/cert/X509CRL;>;
12 90 10 sel Ljava/security/cert/X509CRLSelector;
15 90 11 networkFailureException Ljava/security/cert/CertPathValidatorException;
17 34 12 store Ljava/security/cert/CertStore;
19 20 14 crl Ljava/security/cert/CRL;
23 34 14 e Ljava/security/cert/CertStoreException;
40 90 12 reasonsMask [Z
61 70 13 e Ljava/security/cert/CertStoreException;
63 69 14 cste Lsun/security/provider/certpath/PKIX$CertStoreTypeException;
80 83 13 cpve Ljava/security/cert/CertPathValidatorException;
Exception table:
from to target type
17 21 22 Class java.security.cert.CertStoreException
53 59 60 Class java.security.cert.CertStoreException
75 78 79 Class java.security.cert.CertPathValidatorException
Exceptions:
throws java.security.cert.CertPathValidatorException
Signature: (Ljava/security/cert/X509Certificate;Ljava/security/PublicKey;Ljava/security/cert/X509Certificate;ZZLjava/util/Set<Ljava/security/cert/X509Certificate;>;Ljava/util/Set<Ljava/security/cert/TrustAnchor;>;)V
MethodParameters:
Name Flags
cert
prevKey
prevCert
signFlag
allowSeparateKey
stackedCerts
anchors
private void checkApprovedCRLs(java.security.cert.X509Certificate, java.util.Set<java.security.cert.X509CRL>);
descriptor: (Ljava/security/cert/X509Certificate;Ljava/util/Set;)V
flags: (0x0002) ACC_PRIVATE
Code:
stack=7, locals=11, args_size=3
start local 0 start local 1 start local 2 0: getstatic sun.security.provider.certpath.RevocationChecker.debug:Lsun/security/util/Debug;
ifnull 6
1: aload 1
invokevirtual java.security.cert.X509Certificate.getSerialNumber:()Ljava/math/BigInteger;
astore 3
start local 3 2: getstatic sun.security.provider.certpath.RevocationChecker.debug:Lsun/security/util/Debug;
ldc "RevocationChecker.checkApprovedCRLs() starting the final sweep..."
invokevirtual sun.security.util.Debug.println:(Ljava/lang/String;)V
3: getstatic sun.security.provider.certpath.RevocationChecker.debug:Lsun/security/util/Debug;
new java.lang.StringBuilder
dup
ldc "RevocationChecker.checkApprovedCRLs() cert SN: "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
4: aload 3
invokevirtual java.math.BigInteger.toString:()Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
5: invokevirtual sun.security.util.Debug.println:(Ljava/lang/String;)V
end local 3 6: StackMap locals:
StackMap stack:
getstatic java.security.cert.CRLReason.UNSPECIFIED:Ljava/security/cert/CRLReason;
astore 3
start local 3 7: aconst_null
astore 4
start local 4 8: aload 2
invokeinterface java.util.Set.iterator:()Ljava/util/Iterator;
astore 6
goto 40
StackMap locals: sun.security.provider.certpath.RevocationChecker java.security.cert.X509Certificate java.util.Set java.security.cert.CRLReason sun.security.x509.X509CRLEntryImpl top java.util.Iterator
StackMap stack:
9: aload 6
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast java.security.cert.X509CRL
astore 5
start local 5 10: aload 5
aload 1
invokevirtual java.security.cert.X509CRL.getRevokedCertificate:(Ljava/security/cert/X509Certificate;)Ljava/security/cert/X509CRLEntry;
astore 7
start local 7 11: aload 7
ifnull 40
12: aload 7
invokestatic sun.security.x509.X509CRLEntryImpl.toImpl:(Ljava/security/cert/X509CRLEntry;)Lsun/security/x509/X509CRLEntryImpl;
astore 4
13: goto 16
StackMap locals: sun.security.provider.certpath.RevocationChecker java.security.cert.X509Certificate java.util.Set java.security.cert.CRLReason sun.security.x509.X509CRLEntryImpl java.security.cert.X509CRL java.util.Iterator java.security.cert.X509CRLEntry
StackMap stack: java.security.cert.CRLException
14: astore 8
start local 8 15: new java.security.cert.CertPathValidatorException
dup
aload 8
invokespecial java.security.cert.CertPathValidatorException.<init>:(Ljava/lang/Throwable;)V
athrow
end local 8 16: StackMap locals:
StackMap stack:
getstatic sun.security.provider.certpath.RevocationChecker.debug:Lsun/security/util/Debug;
ifnull 20
17: getstatic sun.security.provider.certpath.RevocationChecker.debug:Lsun/security/util/Debug;
new java.lang.StringBuilder
dup
ldc "RevocationChecker.checkApprovedCRLs() CRL entry: "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
18: aload 4
invokevirtual sun.security.x509.X509CRLEntryImpl.toString:()Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
19: invokevirtual sun.security.util.Debug.println:(Ljava/lang/String;)V
20: StackMap locals:
StackMap stack:
aload 4
invokevirtual sun.security.x509.X509CRLEntryImpl.getCriticalExtensionOIDs:()Ljava/util/Set;
astore 8
start local 8 21: aload 8
ifnull 28
aload 8
invokeinterface java.util.Set.isEmpty:()Z
ifne 28
22: aload 8
getstatic sun.security.x509.PKIXExtensions.ReasonCode_Id:Lsun/security/util/ObjectIdentifier;
invokevirtual sun.security.util.ObjectIdentifier.toString:()Ljava/lang/String;
invokeinterface java.util.Set.remove:(Ljava/lang/Object;)Z
pop
23: aload 8
getstatic sun.security.x509.PKIXExtensions.CertificateIssuer_Id:Lsun/security/util/ObjectIdentifier;
invokevirtual sun.security.util.ObjectIdentifier.toString:()Ljava/lang/String;
invokeinterface java.util.Set.remove:(Ljava/lang/Object;)Z
pop
24: aload 8
invokeinterface java.util.Set.isEmpty:()Z
ifne 28
25: new java.security.cert.CertPathValidatorException
dup
26: ldc "Unrecognized critical extension(s) in revoked CRL entry"
27: invokespecial java.security.cert.CertPathValidatorException.<init>:(Ljava/lang/String;)V
athrow
28: StackMap locals: java.util.Set
StackMap stack:
aload 4
invokevirtual sun.security.x509.X509CRLEntryImpl.getRevocationReason:()Ljava/security/cert/CRLReason;
astore 3
29: aload 3
ifnonnull 31
30: getstatic java.security.cert.CRLReason.UNSPECIFIED:Ljava/security/cert/CRLReason;
astore 3
31: StackMap locals:
StackMap stack:
aload 4
invokevirtual sun.security.x509.X509CRLEntryImpl.getRevocationDate:()Ljava/util/Date;
astore 9
start local 9 32: aload 9
aload 0
getfield sun.security.provider.certpath.RevocationChecker.params:Lsun/security/provider/certpath/PKIX$ValidatorParams;
invokevirtual sun.security.provider.certpath.PKIX$ValidatorParams.date:()Ljava/util/Date;
invokevirtual java.util.Date.before:(Ljava/util/Date;)Z
ifeq 40
33: new java.security.cert.CertificateRevokedException
dup
34: aload 9
aload 3
35: aload 5
invokevirtual java.security.cert.X509CRL.getIssuerX500Principal:()Ljavax/security/auth/x500/X500Principal;
aload 4
invokevirtual sun.security.x509.X509CRLEntryImpl.getExtensions:()Ljava/util/Map;
36: invokespecial java.security.cert.CertificateRevokedException.<init>:(Ljava/util/Date;Ljava/security/cert/CRLReason;Ljavax/security/auth/x500/X500Principal;Ljava/util/Map;)V
astore 10
start local 10 37: new java.security.cert.CertPathValidatorException
dup
38: aload 10
invokevirtual java.lang.Throwable.getMessage:()Ljava/lang/String;
aload 10
aconst_null
iconst_m1
getstatic java.security.cert.CertPathValidatorException$BasicReason.REVOKED:Ljava/security/cert/CertPathValidatorException$BasicReason;
39: invokespecial java.security.cert.CertPathValidatorException.<init>:(Ljava/lang/String;Ljava/lang/Throwable;Ljava/security/cert/CertPath;ILjava/security/cert/CertPathValidatorException$Reason;)V
athrow
end local 10 end local 9 end local 8 end local 7 end local 5 40: StackMap locals: sun.security.provider.certpath.RevocationChecker java.security.cert.X509Certificate java.util.Set java.security.cert.CRLReason sun.security.x509.X509CRLEntryImpl top java.util.Iterator
StackMap stack:
aload 6
invokeinterface java.util.Iterator.hasNext:()Z
ifne 9
41: return
end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 42 0 this Lsun/security/provider/certpath/RevocationChecker;
0 42 1 cert Ljava/security/cert/X509Certificate;
0 42 2 approvedCRLs Ljava/util/Set<Ljava/security/cert/X509CRL;>;
2 6 3 sn Ljava/math/BigInteger;
7 42 3 reasonCode Ljava/security/cert/CRLReason;
8 42 4 entry Lsun/security/x509/X509CRLEntryImpl;
10 40 5 crl Ljava/security/cert/X509CRL;
11 40 7 e Ljava/security/cert/X509CRLEntry;
15 16 8 ce Ljava/security/cert/CRLException;
21 40 8 unresCritExts Ljava/util/Set<Ljava/lang/String;>;
32 40 9 revocationDate Ljava/util/Date;
37 40 10 t Ljava/lang/Throwable;
Exception table:
from to target type
12 13 14 Class java.security.cert.CRLException
Exceptions:
throws java.security.cert.CertPathValidatorException
Signature: (Ljava/security/cert/X509Certificate;Ljava/util/Set<Ljava/security/cert/X509CRL;>;)V
MethodParameters:
Name Flags
cert
approvedCRLs
private void checkOCSP(java.security.cert.X509Certificate, java.util.Collection<java.lang.String>);
descriptor: (Ljava/security/cert/X509Certificate;Ljava/util/Collection;)V
flags: (0x0002) ACC_PRIVATE
Code:
stack=7, locals=10, args_size=3
start local 0 start local 1 start local 2 0: aconst_null
astore 3
start local 3 1: aload 1
invokestatic sun.security.x509.X509CertImpl.toImpl:(Ljava/security/cert/X509Certificate;)Lsun/security/x509/X509CertImpl;
astore 3
2: goto 5
StackMap locals: sun.security.provider.certpath.RevocationChecker java.security.cert.X509Certificate java.util.Collection sun.security.x509.X509CertImpl
StackMap stack: java.security.cert.CertificateException
3: astore 4
start local 4 4: new java.security.cert.CertPathValidatorException
dup
aload 4
invokespecial java.security.cert.CertPathValidatorException.<init>:(Ljava/lang/Throwable;)V
athrow
end local 4 5: StackMap locals:
StackMap stack:
aconst_null
astore 4
start local 4 6: aconst_null
astore 5
start local 5 7: new sun.security.provider.certpath.CertId
dup
aload 0
getfield sun.security.provider.certpath.RevocationChecker.issuerInfo:Lsun/security/provider/certpath/OCSPResponse$IssuerInfo;
invokevirtual sun.security.provider.certpath.OCSPResponse$IssuerInfo.getName:()Ljavax/security/auth/x500/X500Principal;
aload 0
getfield sun.security.provider.certpath.RevocationChecker.issuerInfo:Lsun/security/provider/certpath/OCSPResponse$IssuerInfo;
invokevirtual sun.security.provider.certpath.OCSPResponse$IssuerInfo.getPublicKey:()Ljava/security/PublicKey;
8: aload 3
invokevirtual sun.security.x509.X509CertImpl.getSerialNumberObject:()Lsun/security/x509/SerialNumber;
9: invokespecial sun.security.provider.certpath.CertId.<init>:(Ljavax/security/auth/x500/X500Principal;Ljava/security/PublicKey;Lsun/security/x509/SerialNumber;)V
astore 5
10: aload 0
getfield sun.security.provider.certpath.RevocationChecker.ocspResponses:Ljava/util/Map;
aload 1
invokeinterface java.util.Map.get:(Ljava/lang/Object;)Ljava/lang/Object;
checkcast byte[]
astore 6
start local 6 11: aload 6
ifnull 25
12: getstatic sun.security.provider.certpath.RevocationChecker.debug:Lsun/security/util/Debug;
ifnull 14
13: getstatic sun.security.provider.certpath.RevocationChecker.debug:Lsun/security/util/Debug;
ldc "Found cached OCSP response"
invokevirtual sun.security.util.Debug.println:(Ljava/lang/String;)V
14: StackMap locals: sun.security.provider.certpath.OCSPResponse sun.security.provider.certpath.CertId byte[]
StackMap stack:
new sun.security.provider.certpath.OCSPResponse
dup
aload 6
invokespecial sun.security.provider.certpath.OCSPResponse.<init>:([B)V
astore 4
15: aconst_null
astore 7
start local 7 16: aload 0
getfield sun.security.provider.certpath.RevocationChecker.ocspExtensions:Ljava/util/List;
invokeinterface java.util.List.iterator:()Ljava/util/Iterator;
astore 9
goto 20
StackMap locals: sun.security.provider.certpath.RevocationChecker java.security.cert.X509Certificate java.util.Collection sun.security.x509.X509CertImpl sun.security.provider.certpath.OCSPResponse sun.security.provider.certpath.CertId byte[] byte[] top java.util.Iterator
StackMap stack:
17: aload 9
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast java.security.cert.Extension
astore 8
start local 8 18: aload 8
invokeinterface java.security.cert.Extension.getId:()Ljava/lang/String;
ldc "1.3.6.1.5.5.7.48.1.2"
invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
ifeq 20
19: aload 8
invokeinterface java.security.cert.Extension.getValue:()[B
astore 7
end local 8 20: StackMap locals:
StackMap stack:
aload 9
invokeinterface java.util.Iterator.hasNext:()Z
ifne 17
21: aload 4
aload 5
invokestatic java.util.Collections.singletonList:(Ljava/lang/Object;)Ljava/util/List;
aload 0
getfield sun.security.provider.certpath.RevocationChecker.issuerInfo:Lsun/security/provider/certpath/OCSPResponse$IssuerInfo;
22: aload 0
getfield sun.security.provider.certpath.RevocationChecker.responderCert:Ljava/security/cert/X509Certificate;
aload 0
getfield sun.security.provider.certpath.RevocationChecker.params:Lsun/security/provider/certpath/PKIX$ValidatorParams;
invokevirtual sun.security.provider.certpath.PKIX$ValidatorParams.date:()Ljava/util/Date;
aload 7
aload 0
getfield sun.security.provider.certpath.RevocationChecker.params:Lsun/security/provider/certpath/PKIX$ValidatorParams;
invokevirtual sun.security.provider.certpath.PKIX$ValidatorParams.variant:()Ljava/lang/String;
23: invokevirtual sun.security.provider.certpath.OCSPResponse.verify:(Ljava/util/List;Lsun/security/provider/certpath/OCSPResponse$IssuerInfo;Ljava/security/cert/X509Certificate;Ljava/util/Date;[BLjava/lang/String;)V
end local 7 24: goto 44
25: StackMap locals: sun.security.provider.certpath.RevocationChecker java.security.cert.X509Certificate java.util.Collection sun.security.x509.X509CertImpl sun.security.provider.certpath.OCSPResponse sun.security.provider.certpath.CertId byte[]
StackMap stack:
aload 0
getfield sun.security.provider.certpath.RevocationChecker.responderURI:Ljava/net/URI;
ifnull 27
26: aload 0
getfield sun.security.provider.certpath.RevocationChecker.responderURI:Ljava/net/URI;
goto 28
27: StackMap locals:
StackMap stack:
aload 3
invokestatic sun.security.provider.certpath.OCSP.getResponderURI:(Lsun/security/x509/X509CertImpl;)Ljava/net/URI;
28: StackMap locals:
StackMap stack: java.net.URI
astore 7
start local 7 29: aload 7
ifnonnull 34
30: new java.security.cert.CertPathValidatorException
dup
31: ldc "Certificate does not specify OCSP responder"
aconst_null
32: aconst_null
iconst_m1
33: invokespecial java.security.cert.CertPathValidatorException.<init>:(Ljava/lang/String;Ljava/lang/Throwable;Ljava/security/cert/CertPath;I)V
athrow
34: StackMap locals: java.net.URI
StackMap stack:
aload 5
invokestatic java.util.Collections.singletonList:(Ljava/lang/Object;)Ljava/util/List;
35: aload 7
aload 0
getfield sun.security.provider.certpath.RevocationChecker.issuerInfo:Lsun/security/provider/certpath/OCSPResponse$IssuerInfo;
aload 0
getfield sun.security.provider.certpath.RevocationChecker.responderCert:Ljava/security/cert/X509Certificate;
aconst_null
36: aload 0
getfield sun.security.provider.certpath.RevocationChecker.ocspExtensions:Ljava/util/List;
aload 0
getfield sun.security.provider.certpath.RevocationChecker.params:Lsun/security/provider/certpath/PKIX$ValidatorParams;
invokevirtual sun.security.provider.certpath.PKIX$ValidatorParams.variant:()Ljava/lang/String;
37: invokestatic sun.security.provider.certpath.OCSP.check:(Ljava/util/List;Ljava/net/URI;Lsun/security/provider/certpath/OCSPResponse$IssuerInfo;Ljava/security/cert/X509Certificate;Ljava/util/Date;Ljava/util/List;Ljava/lang/String;)Lsun/security/provider/certpath/OCSPResponse;
astore 4
end local 7 end local 6 38: goto 44
StackMap locals: sun.security.provider.certpath.RevocationChecker java.security.cert.X509Certificate java.util.Collection sun.security.x509.X509CertImpl sun.security.provider.certpath.OCSPResponse sun.security.provider.certpath.CertId
StackMap stack: java.io.IOException
39: astore 6
start local 6 40: new java.security.cert.CertPathValidatorException
dup
41: ldc "Unable to determine revocation status due to network error"
42: aload 6
aconst_null
iconst_m1
getstatic java.security.cert.CertPathValidatorException$BasicReason.UNDETERMINED_REVOCATION_STATUS:Ljava/security/cert/CertPathValidatorException$BasicReason;
43: invokespecial java.security.cert.CertPathValidatorException.<init>:(Ljava/lang/String;Ljava/lang/Throwable;Ljava/security/cert/CertPath;ILjava/security/cert/CertPathValidatorException$Reason;)V
athrow
end local 6 44: StackMap locals:
StackMap stack:
aload 4
aload 5
invokevirtual sun.security.provider.certpath.OCSPResponse.getSingleResponse:(Lsun/security/provider/certpath/CertId;)Lsun/security/provider/certpath/OCSPResponse$SingleResponse;
45: astore 6
start local 6 46: aload 6
invokeinterface sun.security.provider.certpath.OCSP$RevocationStatus.getCertStatus:()Lsun/security/provider/certpath/OCSP$RevocationStatus$CertStatus;
astore 7
start local 7 47: aload 7
getstatic sun.security.provider.certpath.OCSP$RevocationStatus$CertStatus.REVOKED:Lsun/security/provider/certpath/OCSP$RevocationStatus$CertStatus;
if_acmpne 58
48: aload 6
invokeinterface sun.security.provider.certpath.OCSP$RevocationStatus.getRevocationTime:()Ljava/util/Date;
astore 8
start local 8 49: aload 8
aload 0
getfield sun.security.provider.certpath.RevocationChecker.params:Lsun/security/provider/certpath/PKIX$ValidatorParams;
invokevirtual sun.security.provider.certpath.PKIX$ValidatorParams.date:()Ljava/util/Date;
invokevirtual java.util.Date.before:(Ljava/util/Date;)Z
ifeq 64
50: new java.security.cert.CertificateRevokedException
dup
51: aload 8
aload 6
invokeinterface sun.security.provider.certpath.OCSP$RevocationStatus.getRevocationReason:()Ljava/security/cert/CRLReason;
52: aload 4
invokevirtual sun.security.provider.certpath.OCSPResponse.getSignerCertificate:()Ljava/security/cert/X509Certificate;
invokevirtual java.security.cert.X509Certificate.getSubjectX500Principal:()Ljavax/security/auth/x500/X500Principal;
53: aload 6
invokeinterface sun.security.provider.certpath.OCSP$RevocationStatus.getSingleExtensions:()Ljava/util/Map;
54: invokespecial java.security.cert.CertificateRevokedException.<init>:(Ljava/util/Date;Ljava/security/cert/CRLReason;Ljavax/security/auth/x500/X500Principal;Ljava/util/Map;)V
astore 9
start local 9 55: new java.security.cert.CertPathValidatorException
dup
aload 9
invokevirtual java.lang.Throwable.getMessage:()Ljava/lang/String;
aload 9
aconst_null
56: iconst_m1
getstatic java.security.cert.CertPathValidatorException$BasicReason.REVOKED:Ljava/security/cert/CertPathValidatorException$BasicReason;
57: invokespecial java.security.cert.CertPathValidatorException.<init>:(Ljava/lang/String;Ljava/lang/Throwable;Ljava/security/cert/CertPath;ILjava/security/cert/CertPathValidatorException$Reason;)V
athrow
end local 9 end local 8 58: StackMap locals: sun.security.provider.certpath.OCSP$RevocationStatus sun.security.provider.certpath.OCSP$RevocationStatus$CertStatus
StackMap stack:
aload 7
getstatic sun.security.provider.certpath.OCSP$RevocationStatus$CertStatus.UNKNOWN:Lsun/security/provider/certpath/OCSP$RevocationStatus$CertStatus;
if_acmpne 64
59: new java.security.cert.CertPathValidatorException
dup
60: ldc "Certificate's revocation status is unknown"
aconst_null
61: aload 0
getfield sun.security.provider.certpath.RevocationChecker.params:Lsun/security/provider/certpath/PKIX$ValidatorParams;
invokevirtual sun.security.provider.certpath.PKIX$ValidatorParams.certPath:()Ljava/security/cert/CertPath;
iconst_m1
62: getstatic java.security.cert.CertPathValidatorException$BasicReason.UNDETERMINED_REVOCATION_STATUS:Ljava/security/cert/CertPathValidatorException$BasicReason;
63: invokespecial java.security.cert.CertPathValidatorException.<init>:(Ljava/lang/String;Ljava/lang/Throwable;Ljava/security/cert/CertPath;ILjava/security/cert/CertPathValidatorException$Reason;)V
athrow
64: StackMap locals:
StackMap stack:
return
end local 7 end local 6 end local 5 end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 65 0 this Lsun/security/provider/certpath/RevocationChecker;
0 65 1 cert Ljava/security/cert/X509Certificate;
0 65 2 unresolvedCritExts Ljava/util/Collection<Ljava/lang/String;>;
1 65 3 currCert Lsun/security/x509/X509CertImpl;
4 5 4 ce Ljava/security/cert/CertificateException;
6 65 4 response Lsun/security/provider/certpath/OCSPResponse;
7 65 5 certId Lsun/security/provider/certpath/CertId;
11 38 6 responseBytes [B
16 24 7 nonce [B
18 20 8 ext Ljava/security/cert/Extension;
29 38 7 responderURI Ljava/net/URI;
40 44 6 e Ljava/io/IOException;
46 65 6 rs Lsun/security/provider/certpath/OCSP$RevocationStatus;
47 65 7 certStatus Lsun/security/provider/certpath/OCSP$RevocationStatus$CertStatus;
49 58 8 revocationTime Ljava/util/Date;
55 58 9 t Ljava/lang/Throwable;
Exception table:
from to target type
1 2 3 Class java.security.cert.CertificateException
7 38 39 Class java.io.IOException
Exceptions:
throws java.security.cert.CertPathValidatorException
Signature: (Ljava/security/cert/X509Certificate;Ljava/util/Collection<Ljava/lang/String;>;)V
MethodParameters:
Name Flags
cert
unresolvedCritExts
private static java.lang.String stripOutSeparators(java.lang.String);
descriptor: (Ljava/lang/String;)Ljava/lang/String;
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=3, locals=4, args_size=1
start local 0 0: aload 0
invokevirtual java.lang.String.toCharArray:()[C
astore 1
start local 1 1: new java.lang.StringBuilder
dup
invokespecial java.lang.StringBuilder.<init>:()V
astore 2
start local 2 2: iconst_0
istore 3
start local 3 3: goto 7
4: StackMap locals: char[] java.lang.StringBuilder int
StackMap stack:
ldc "0123456789ABCDEFabcdef"
aload 1
iload 3
caload
invokevirtual java.lang.String.indexOf:(I)I
iconst_m1
if_icmpeq 6
5: aload 2
aload 1
iload 3
caload
invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
pop
6: StackMap locals:
StackMap stack:
iinc 3 1
StackMap locals:
StackMap stack:
7: iload 3
aload 1
arraylength
if_icmplt 4
end local 3 8: aload 2
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
areturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 9 0 value Ljava/lang/String;
1 9 1 chars [C
2 9 2 hexNumber Ljava/lang/StringBuilder;
3 8 3 i I
MethodParameters:
Name Flags
value
static boolean certCanSignCrl(java.security.cert.X509Certificate);
descriptor: (Ljava/security/cert/X509Certificate;)Z
flags: (0x0008) ACC_STATIC
Code:
stack=2, locals=2, args_size=1
start local 0 0: aload 0
invokevirtual java.security.cert.X509Certificate.getKeyUsage:()[Z
astore 1
start local 1 1: aload 1
ifnull 3
2: aload 1
bipush 6
baload
ireturn
3: StackMap locals: boolean[]
StackMap stack:
iconst_0
ireturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 cert Ljava/security/cert/X509Certificate;
1 4 1 keyUsage [Z
MethodParameters:
Name Flags
cert
private java.util.Collection<java.security.cert.X509CRL> verifyPossibleCRLs(java.util.Set<java.security.cert.X509CRL>, java.security.cert.X509Certificate, java.security.PublicKey, boolean, boolean[], java.util.Set<java.security.cert.TrustAnchor>);
descriptor: (Ljava/util/Set;Ljava/security/cert/X509Certificate;Ljava/security/PublicKey;Z[ZLjava/util/Set;)Ljava/util/Collection;
flags: (0x0002) ACC_PRIVATE
Code:
stack=12, locals=15, args_size=7
start local 0 start local 1 start local 2 start local 3 start local 4 start local 5 start local 6 0: aload 2
invokestatic sun.security.x509.X509CertImpl.toImpl:(Ljava/security/cert/X509Certificate;)Lsun/security/x509/X509CertImpl;
astore 7
start local 7 1: getstatic sun.security.provider.certpath.RevocationChecker.debug:Lsun/security/util/Debug;
ifnull 5
2: getstatic sun.security.provider.certpath.RevocationChecker.debug:Lsun/security/util/Debug;
new java.lang.StringBuilder
dup
ldc "RevocationChecker.verifyPossibleCRLs: Checking CRLDPs for "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
3: aload 7
invokevirtual sun.security.x509.X509CertImpl.getSubjectX500Principal:()Ljavax/security/auth/x500/X500Principal;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
4: invokevirtual sun.security.util.Debug.println:(Ljava/lang/String;)V
5: StackMap locals: sun.security.x509.X509CertImpl
StackMap stack:
aload 7
invokevirtual sun.security.x509.X509CertImpl.getCRLDistributionPointsExtension:()Lsun/security/x509/CRLDistributionPointsExtension;
6: astore 8
start local 8 7: aconst_null
astore 9
start local 9 8: aload 8
ifnonnull 16
9: aload 7
invokevirtual sun.security.x509.X509CertImpl.getIssuerDN:()Ljava/security/Principal;
checkcast sun.security.x509.X500Name
astore 10
start local 10 10: new sun.security.x509.DistributionPoint
dup
11: new sun.security.x509.GeneralNames
dup
invokespecial sun.security.x509.GeneralNames.<init>:()V
new sun.security.x509.GeneralName
dup
aload 10
invokespecial sun.security.x509.GeneralName.<init>:(Lsun/security/x509/GeneralNameInterface;)V
invokevirtual sun.security.x509.GeneralNames.add:(Lsun/security/x509/GeneralName;)Lsun/security/x509/GeneralNames;
12: aconst_null
aconst_null
13: invokespecial sun.security.x509.DistributionPoint.<init>:(Lsun/security/x509/GeneralNames;[ZLsun/security/x509/GeneralNames;)V
astore 11
start local 11 14: aload 11
invokestatic java.util.Collections.singletonList:(Ljava/lang/Object;)Ljava/util/List;
astore 9
end local 11 end local 10 15: goto 17
16: StackMap locals: sun.security.x509.CRLDistributionPointsExtension java.util.List
StackMap stack:
aload 8
ldc "points"
invokevirtual sun.security.x509.CRLDistributionPointsExtension.get:(Ljava/lang/String;)Ljava/util/List;
astore 9
17: StackMap locals:
StackMap stack:
new java.util.HashSet
dup
invokespecial java.util.HashSet.<init>:()V
astore 10
start local 10 18: aload 9
invokeinterface java.util.List.iterator:()Ljava/util/Iterator;
astore 12
goto 31
StackMap locals: sun.security.provider.certpath.RevocationChecker java.util.Set java.security.cert.X509Certificate java.security.PublicKey int boolean[] java.util.Set sun.security.x509.X509CertImpl sun.security.x509.CRLDistributionPointsExtension java.util.List java.util.Set top java.util.Iterator
StackMap stack:
19: aload 12
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast sun.security.x509.DistributionPoint
astore 11
start local 11 20: aload 1
invokeinterface java.util.Set.iterator:()Ljava/util/Iterator;
astore 14
goto 28
StackMap locals: sun.security.provider.certpath.RevocationChecker java.util.Set java.security.cert.X509Certificate java.security.PublicKey int boolean[] java.util.Set sun.security.x509.X509CertImpl sun.security.x509.CRLDistributionPointsExtension java.util.List java.util.Set sun.security.x509.DistributionPoint java.util.Iterator top java.util.Iterator
StackMap stack:
21: aload 14
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast java.security.cert.X509CRL
astore 13
start local 13 22: aload 7
aload 11
aload 13
aload 5
iload 4
23: aload 3
aconst_null
aload 0
getfield sun.security.provider.certpath.RevocationChecker.params:Lsun/security/provider/certpath/PKIX$ValidatorParams;
invokevirtual sun.security.provider.certpath.PKIX$ValidatorParams.sigProvider:()Ljava/lang/String;
aload 6
24: aload 0
getfield sun.security.provider.certpath.RevocationChecker.certStores:Ljava/util/List;
aload 0
getfield sun.security.provider.certpath.RevocationChecker.params:Lsun/security/provider/certpath/PKIX$ValidatorParams;
invokevirtual sun.security.provider.certpath.PKIX$ValidatorParams.date:()Ljava/util/Date;
aload 0
getfield sun.security.provider.certpath.RevocationChecker.params:Lsun/security/provider/certpath/PKIX$ValidatorParams;
invokevirtual sun.security.provider.certpath.PKIX$ValidatorParams.variant:()Ljava/lang/String;
25: invokestatic sun.security.provider.certpath.DistributionPointFetcher.verifyCRL:(Lsun/security/x509/X509CertImpl;Lsun/security/x509/DistributionPoint;Ljava/security/cert/X509CRL;[ZZLjava/security/PublicKey;Ljava/security/cert/X509Certificate;Ljava/lang/String;Ljava/util/Set;Ljava/util/List;Ljava/util/Date;Ljava/lang/String;)Z
26: ifeq 28
27: aload 10
aload 13
invokeinterface java.util.Set.add:(Ljava/lang/Object;)Z
pop
end local 13 28: StackMap locals:
StackMap stack:
aload 14
invokeinterface java.util.Iterator.hasNext:()Z
ifne 21
29: aload 5
getstatic sun.security.provider.certpath.RevocationChecker.ALL_REASONS:[Z
invokestatic java.util.Arrays.equals:([Z[Z)Z
ifeq 31
30: goto 32
end local 11 31: StackMap locals: sun.security.provider.certpath.RevocationChecker java.util.Set java.security.cert.X509Certificate java.security.PublicKey int boolean[] java.util.Set sun.security.x509.X509CertImpl sun.security.x509.CRLDistributionPointsExtension java.util.List java.util.Set top java.util.Iterator
StackMap stack:
aload 12
invokeinterface java.util.Iterator.hasNext:()Z
ifne 19
32: StackMap locals: sun.security.provider.certpath.RevocationChecker java.util.Set java.security.cert.X509Certificate java.security.PublicKey int boolean[] java.util.Set sun.security.x509.X509CertImpl sun.security.x509.CRLDistributionPointsExtension java.util.List java.util.Set
StackMap stack:
aload 10
33: areturn
end local 10 end local 9 end local 8 end local 7 34: StackMap locals: sun.security.provider.certpath.RevocationChecker java.util.Set java.security.cert.X509Certificate java.security.PublicKey int boolean[] java.util.Set
StackMap stack: java.lang.Exception
astore 7
start local 7 35: getstatic sun.security.provider.certpath.RevocationChecker.debug:Lsun/security/util/Debug;
ifnull 38
36: getstatic sun.security.provider.certpath.RevocationChecker.debug:Lsun/security/util/Debug;
new java.lang.StringBuilder
dup
ldc "Exception while verifying CRL: "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 7
invokevirtual java.lang.Exception.getMessage:()Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokevirtual sun.security.util.Debug.println:(Ljava/lang/String;)V
37: aload 7
invokevirtual java.lang.Exception.printStackTrace:()V
38: StackMap locals: java.lang.Exception
StackMap stack:
invokestatic java.util.Collections.emptySet:()Ljava/util/Set;
areturn
end local 7 end local 6 end local 5 end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 39 0 this Lsun/security/provider/certpath/RevocationChecker;
0 39 1 crls Ljava/util/Set<Ljava/security/cert/X509CRL;>;
0 39 2 cert Ljava/security/cert/X509Certificate;
0 39 3 prevKey Ljava/security/PublicKey;
0 39 4 signFlag Z
0 39 5 reasonsMask [Z
0 39 6 anchors Ljava/util/Set<Ljava/security/cert/TrustAnchor;>;
1 34 7 certImpl Lsun/security/x509/X509CertImpl;
7 34 8 ext Lsun/security/x509/CRLDistributionPointsExtension;
8 34 9 points Ljava/util/List<Lsun/security/x509/DistributionPoint;>;
10 15 10 certIssuer Lsun/security/x509/X500Name;
14 15 11 point Lsun/security/x509/DistributionPoint;
18 34 10 results Ljava/util/Set<Ljava/security/cert/X509CRL;>;
20 31 11 point Lsun/security/x509/DistributionPoint;
22 28 13 crl Ljava/security/cert/X509CRL;
35 39 7 e Ljava/lang/Exception;
Exception table:
from to target type
0 33 34 Class java.security.cert.CertificateException
0 33 34 Class java.security.cert.CRLException
0 33 34 Class java.io.IOException
Exceptions:
throws java.security.cert.CertPathValidatorException
Signature: (Ljava/util/Set<Ljava/security/cert/X509CRL;>;Ljava/security/cert/X509Certificate;Ljava/security/PublicKey;Z[ZLjava/util/Set<Ljava/security/cert/TrustAnchor;>;)Ljava/util/Collection<Ljava/security/cert/X509CRL;>;
MethodParameters:
Name Flags
crls
cert
prevKey
signFlag
reasonsMask
anchors
private void verifyWithSeparateSigningKey(java.security.cert.X509Certificate, java.security.PublicKey, boolean, java.util.Set<java.security.cert.X509Certificate>);
descriptor: (Ljava/security/cert/X509Certificate;Ljava/security/PublicKey;ZLjava/util/Set;)V
flags: (0x0002) ACC_PRIVATE
Code:
stack=7, locals=6, args_size=5
start local 0 start local 1 start local 2 start local 3 start local 4 0: ldc "revocation status"
astore 5
start local 5 1: getstatic sun.security.provider.certpath.RevocationChecker.debug:Lsun/security/util/Debug;
ifnull 7
2: getstatic sun.security.provider.certpath.RevocationChecker.debug:Lsun/security/util/Debug;
3: new java.lang.StringBuilder
dup
ldc "RevocationChecker.verifyWithSeparateSigningKey() ---checking "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
4: aload 5
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
ldc "..."
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
5: invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
6: invokevirtual sun.security.util.Debug.println:(Ljava/lang/String;)V
7: StackMap locals: java.lang.String
StackMap stack:
aload 4
ifnull 16
aload 4
aload 1
invokeinterface java.util.Set.contains:(Ljava/lang/Object;)Z
ifeq 16
8: getstatic sun.security.provider.certpath.RevocationChecker.debug:Lsun/security/util/Debug;
ifnull 12
9: getstatic sun.security.provider.certpath.RevocationChecker.debug:Lsun/security/util/Debug;
10: ldc "RevocationChecker.verifyWithSeparateSigningKey() circular dependency"
11: invokevirtual sun.security.util.Debug.println:(Ljava/lang/String;)V
12: StackMap locals:
StackMap stack:
new java.security.cert.CertPathValidatorException
dup
13: ldc "Could not determine revocation status"
aconst_null
aconst_null
iconst_m1
14: getstatic java.security.cert.CertPathValidatorException$BasicReason.UNDETERMINED_REVOCATION_STATUS:Ljava/security/cert/CertPathValidatorException$BasicReason;
15: invokespecial java.security.cert.CertPathValidatorException.<init>:(Ljava/lang/String;Ljava/lang/Throwable;Ljava/security/cert/CertPath;ILjava/security/cert/CertPathValidatorException$Reason;)V
athrow
16: StackMap locals:
StackMap stack:
iload 3
ifne 19
17: aload 0
aload 1
aconst_null
aload 4
invokevirtual sun.security.provider.certpath.RevocationChecker.buildToNewKey:(Ljava/security/cert/X509Certificate;Ljava/security/PublicKey;Ljava/util/Set;)V
18: goto 20
19: StackMap locals:
StackMap stack:
aload 0
aload 1
aload 2
aload 4
invokevirtual sun.security.provider.certpath.RevocationChecker.buildToNewKey:(Ljava/security/cert/X509Certificate;Ljava/security/PublicKey;Ljava/util/Set;)V
20: StackMap locals:
StackMap stack:
return
end local 5 end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 21 0 this Lsun/security/provider/certpath/RevocationChecker;
0 21 1 cert Ljava/security/cert/X509Certificate;
0 21 2 prevKey Ljava/security/PublicKey;
0 21 3 signFlag Z
0 21 4 stackedCerts Ljava/util/Set<Ljava/security/cert/X509Certificate;>;
1 21 5 msg Ljava/lang/String;
Exceptions:
throws java.security.cert.CertPathValidatorException
Signature: (Ljava/security/cert/X509Certificate;Ljava/security/PublicKey;ZLjava/util/Set<Ljava/security/cert/X509Certificate;>;)V
MethodParameters:
Name Flags
cert
prevKey
signFlag
stackedCerts
private void buildToNewKey(java.security.cert.X509Certificate, java.security.PublicKey, java.util.Set<java.security.cert.X509Certificate>);
descriptor: (Ljava/security/cert/X509Certificate;Ljava/security/PublicKey;Ljava/util/Set;)V
flags: (0x0002) ACC_PRIVATE
Code:
stack=8, locals=17, args_size=4
start local 0 start local 1 start local 2 start local 3 0: getstatic sun.security.provider.certpath.RevocationChecker.debug:Lsun/security/util/Debug;
ifnull 2
1: getstatic sun.security.provider.certpath.RevocationChecker.debug:Lsun/security/util/Debug;
ldc "RevocationChecker.buildToNewKey() starting work"
invokevirtual sun.security.util.Debug.println:(Ljava/lang/String;)V
2: StackMap locals:
StackMap stack:
new java.util.HashSet
dup
invokespecial java.util.HashSet.<init>:()V
astore 4
start local 4 3: aload 2
ifnull 5
4: aload 4
aload 2
invokeinterface java.util.Set.add:(Ljava/lang/Object;)Z
pop
5: StackMap locals: java.util.Set
StackMap stack:
new sun.security.provider.certpath.RevocationChecker$RejectKeySelector
dup
aload 4
invokespecial sun.security.provider.certpath.RevocationChecker$RejectKeySelector.<init>:(Ljava/util/Set;)V
astore 5
start local 5 6: aload 5
aload 1
invokevirtual java.security.cert.X509Certificate.getIssuerX500Principal:()Ljavax/security/auth/x500/X500Principal;
invokevirtual java.security.cert.X509CertSelector.setSubject:(Ljavax/security/auth/x500/X500Principal;)V
7: aload 5
getstatic sun.security.provider.certpath.RevocationChecker.CRL_SIGN_USAGE:[Z
invokevirtual java.security.cert.X509CertSelector.setKeyUsage:([Z)V
8: aload 0
getfield sun.security.provider.certpath.RevocationChecker.anchor:Ljava/security/cert/TrustAnchor;
ifnonnull 10
9: aload 0
getfield sun.security.provider.certpath.RevocationChecker.params:Lsun/security/provider/certpath/PKIX$ValidatorParams;
invokevirtual sun.security.provider.certpath.PKIX$ValidatorParams.trustAnchors:()Ljava/util/Set;
goto 11
10: StackMap locals: java.security.cert.X509CertSelector
StackMap stack:
aload 0
getfield sun.security.provider.certpath.RevocationChecker.anchor:Ljava/security/cert/TrustAnchor;
invokestatic java.util.Collections.singleton:(Ljava/lang/Object;)Ljava/util/Set;
11: StackMap locals:
StackMap stack: java.util.Set
astore 6
start local 6 12: new java.security.cert.PKIXBuilderParameters
dup
aload 6
aload 5
invokespecial java.security.cert.PKIXBuilderParameters.<init>:(Ljava/util/Set;Ljava/security/cert/CertSelector;)V
astore 7
start local 7 13: goto 16
end local 7 StackMap locals: sun.security.provider.certpath.RevocationChecker java.security.cert.X509Certificate java.security.PublicKey java.util.Set java.util.Set java.security.cert.X509CertSelector java.util.Set
StackMap stack: java.security.InvalidAlgorithmParameterException
14: astore 8
start local 8 15: new java.lang.RuntimeException
dup
aload 8
invokespecial java.lang.RuntimeException.<init>:(Ljava/lang/Throwable;)V
athrow
end local 8 start local 7 16: StackMap locals: java.security.cert.PKIXBuilderParameters
StackMap stack:
aload 7
aload 0
getfield sun.security.provider.certpath.RevocationChecker.params:Lsun/security/provider/certpath/PKIX$ValidatorParams;
invokevirtual sun.security.provider.certpath.PKIX$ValidatorParams.initialPolicies:()Ljava/util/Set;
invokevirtual java.security.cert.PKIXBuilderParameters.setInitialPolicies:(Ljava/util/Set;)V
17: aload 7
aload 0
getfield sun.security.provider.certpath.RevocationChecker.certStores:Ljava/util/List;
invokevirtual java.security.cert.PKIXBuilderParameters.setCertStores:(Ljava/util/List;)V
18: aload 7
19: aload 0
getfield sun.security.provider.certpath.RevocationChecker.params:Lsun/security/provider/certpath/PKIX$ValidatorParams;
invokevirtual sun.security.provider.certpath.PKIX$ValidatorParams.explicitPolicyRequired:()Z
20: invokevirtual java.security.cert.PKIXBuilderParameters.setExplicitPolicyRequired:(Z)V
21: aload 7
22: aload 0
getfield sun.security.provider.certpath.RevocationChecker.params:Lsun/security/provider/certpath/PKIX$ValidatorParams;
invokevirtual sun.security.provider.certpath.PKIX$ValidatorParams.policyMappingInhibited:()Z
23: invokevirtual java.security.cert.PKIXBuilderParameters.setPolicyMappingInhibited:(Z)V
24: aload 7
aload 0
getfield sun.security.provider.certpath.RevocationChecker.params:Lsun/security/provider/certpath/PKIX$ValidatorParams;
invokevirtual sun.security.provider.certpath.PKIX$ValidatorParams.anyPolicyInhibited:()Z
invokevirtual java.security.cert.PKIXBuilderParameters.setAnyPolicyInhibited:(Z)V
25: aload 7
aload 0
getfield sun.security.provider.certpath.RevocationChecker.params:Lsun/security/provider/certpath/PKIX$ValidatorParams;
invokevirtual sun.security.provider.certpath.PKIX$ValidatorParams.date:()Ljava/util/Date;
invokevirtual java.security.cert.PKIXBuilderParameters.setDate:(Ljava/util/Date;)V
26: aload 7
aload 0
getfield sun.security.provider.certpath.RevocationChecker.params:Lsun/security/provider/certpath/PKIX$ValidatorParams;
invokevirtual sun.security.provider.certpath.PKIX$ValidatorParams.certPathCheckers:()Ljava/util/List;
invokevirtual java.security.cert.PKIXBuilderParameters.setCertPathCheckers:(Ljava/util/List;)V
27: aload 7
aload 0
getfield sun.security.provider.certpath.RevocationChecker.params:Lsun/security/provider/certpath/PKIX$ValidatorParams;
invokevirtual sun.security.provider.certpath.PKIX$ValidatorParams.sigProvider:()Ljava/lang/String;
invokevirtual java.security.cert.PKIXBuilderParameters.setSigProvider:(Ljava/lang/String;)V
28: aload 7
iconst_0
invokevirtual java.security.cert.PKIXBuilderParameters.setRevocationEnabled:(Z)V
29: getstatic sun.security.provider.certpath.Builder.USE_AIA:Z
ifeq 52
30: aconst_null
astore 8
start local 8 31: aload 1
invokestatic sun.security.x509.X509CertImpl.toImpl:(Ljava/security/cert/X509Certificate;)Lsun/security/x509/X509CertImpl;
astore 8
32: goto 38
StackMap locals: sun.security.provider.certpath.RevocationChecker java.security.cert.X509Certificate java.security.PublicKey java.util.Set java.util.Set java.security.cert.X509CertSelector java.util.Set java.security.cert.PKIXBuilderParameters sun.security.x509.X509CertImpl
StackMap stack: java.security.cert.CertificateException
33: astore 9
start local 9 34: getstatic sun.security.provider.certpath.RevocationChecker.debug:Lsun/security/util/Debug;
ifnull 38
35: getstatic sun.security.provider.certpath.RevocationChecker.debug:Lsun/security/util/Debug;
new java.lang.StringBuilder
dup
ldc "RevocationChecker.buildToNewKey: error decoding cert: "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
36: aload 9
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
37: invokevirtual sun.security.util.Debug.println:(Ljava/lang/String;)V
end local 9 38: StackMap locals:
StackMap stack:
aconst_null
astore 9
start local 9 39: aload 8
ifnull 41
40: aload 8
invokevirtual sun.security.x509.X509CertImpl.getAuthorityInfoAccessExtension:()Lsun/security/x509/AuthorityInfoAccessExtension;
astore 9
41: StackMap locals: sun.security.x509.AuthorityInfoAccessExtension
StackMap stack:
aload 9
ifnull 52
42: aload 9
invokevirtual sun.security.x509.AuthorityInfoAccessExtension.getAccessDescriptions:()Ljava/util/List;
astore 10
start local 10 43: aload 10
ifnull 52
44: aload 10
invokeinterface java.util.List.iterator:()Ljava/util/Iterator;
astore 12
goto 51
StackMap locals: sun.security.provider.certpath.RevocationChecker java.security.cert.X509Certificate java.security.PublicKey java.util.Set java.util.Set java.security.cert.X509CertSelector java.util.Set java.security.cert.PKIXBuilderParameters sun.security.x509.X509CertImpl sun.security.x509.AuthorityInfoAccessExtension java.util.List top java.util.Iterator
StackMap stack:
45: aload 12
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast sun.security.x509.AccessDescription
astore 11
start local 11 46: aload 11
invokestatic sun.security.provider.certpath.URICertStore.getInstance:(Lsun/security/x509/AccessDescription;)Ljava/security/cert/CertStore;
astore 13
start local 13 47: aload 13
ifnull 51
48: getstatic sun.security.provider.certpath.RevocationChecker.debug:Lsun/security/util/Debug;
ifnull 50
49: getstatic sun.security.provider.certpath.RevocationChecker.debug:Lsun/security/util/Debug;
ldc "adding AIAext CertStore"
invokevirtual sun.security.util.Debug.println:(Ljava/lang/String;)V
50: StackMap locals: sun.security.provider.certpath.RevocationChecker java.security.cert.X509Certificate java.security.PublicKey java.util.Set java.util.Set java.security.cert.X509CertSelector java.util.Set java.security.cert.PKIXBuilderParameters sun.security.x509.X509CertImpl sun.security.x509.AuthorityInfoAccessExtension java.util.List sun.security.x509.AccessDescription java.util.Iterator java.security.cert.CertStore
StackMap stack:
aload 7
aload 13
invokevirtual java.security.cert.PKIXBuilderParameters.addCertStore:(Ljava/security/cert/CertStore;)V
end local 13 end local 11 51: StackMap locals: sun.security.provider.certpath.RevocationChecker java.security.cert.X509Certificate java.security.PublicKey java.util.Set java.util.Set java.security.cert.X509CertSelector java.util.Set java.security.cert.PKIXBuilderParameters sun.security.x509.X509CertImpl sun.security.x509.AuthorityInfoAccessExtension java.util.List top java.util.Iterator
StackMap stack:
aload 12
invokeinterface java.util.Iterator.hasNext:()Z
ifne 45
end local 10 end local 9 end local 8 52: StackMap locals: sun.security.provider.certpath.RevocationChecker java.security.cert.X509Certificate java.security.PublicKey java.util.Set java.util.Set java.security.cert.X509CertSelector java.util.Set java.security.cert.PKIXBuilderParameters
StackMap stack:
aconst_null
astore 8
start local 8 53: ldc "PKIX"
invokestatic java.security.cert.CertPathBuilder.getInstance:(Ljava/lang/String;)Ljava/security/cert/CertPathBuilder;
astore 8
54: goto 57
StackMap locals: sun.security.provider.certpath.RevocationChecker java.security.cert.X509Certificate java.security.PublicKey java.util.Set java.util.Set java.security.cert.X509CertSelector java.util.Set java.security.cert.PKIXBuilderParameters java.security.cert.CertPathBuilder
StackMap stack: java.security.NoSuchAlgorithmException
55: astore 9
start local 9 56: new java.security.cert.CertPathValidatorException
dup
aload 9
invokespecial java.security.cert.CertPathValidatorException.<init>:(Ljava/lang/Throwable;)V
athrow
end local 9 57: StackMap locals:
StackMap stack:
getstatic sun.security.provider.certpath.RevocationChecker.debug:Lsun/security/util/Debug;
ifnull 59
58: getstatic sun.security.provider.certpath.RevocationChecker.debug:Lsun/security/util/Debug;
ldc "RevocationChecker.buildToNewKey() about to try build ..."
invokevirtual sun.security.util.Debug.println:(Ljava/lang/String;)V
59: StackMap locals:
StackMap stack:
aload 8
aload 7
invokevirtual java.security.cert.CertPathBuilder.build:(Ljava/security/cert/CertPathParameters;)Ljava/security/cert/CertPathBuilderResult;
checkcast java.security.cert.PKIXCertPathBuilderResult
60: astore 9
start local 9 61: getstatic sun.security.provider.certpath.RevocationChecker.debug:Lsun/security/util/Debug;
ifnull 63
62: getstatic sun.security.provider.certpath.RevocationChecker.debug:Lsun/security/util/Debug;
ldc "RevocationChecker.buildToNewKey() about to check revocation ..."
invokevirtual sun.security.util.Debug.println:(Ljava/lang/String;)V
63: StackMap locals: java.security.cert.PKIXCertPathBuilderResult
StackMap stack:
aload 3
ifnonnull 65
64: new java.util.HashSet
dup
invokespecial java.util.HashSet.<init>:()V
astore 3
65: StackMap locals:
StackMap stack:
aload 3
aload 1
invokeinterface java.util.Set.add:(Ljava/lang/Object;)Z
pop
66: aload 9
invokevirtual java.security.cert.PKIXCertPathBuilderResult.getTrustAnchor:()Ljava/security/cert/TrustAnchor;
astore 10
start local 10 67: aload 10
invokevirtual java.security.cert.TrustAnchor.getCAPublicKey:()Ljava/security/PublicKey;
astore 11
start local 11 68: aload 11
ifnonnull 70
69: aload 10
invokevirtual java.security.cert.TrustAnchor.getTrustedCert:()Ljava/security/cert/X509Certificate;
invokevirtual java.security.cert.X509Certificate.getPublicKey:()Ljava/security/PublicKey;
astore 11
70: StackMap locals: java.security.cert.TrustAnchor java.security.PublicKey
StackMap stack:
iconst_1
istore 12
start local 12 71: aload 9
invokevirtual java.security.cert.PKIXCertPathBuilderResult.getCertPath:()Ljava/security/cert/CertPath;
invokevirtual java.security.cert.CertPath.getCertificates:()Ljava/util/List;
72: astore 13
start local 13 73: aload 13
invokeinterface java.util.List.size:()I
iconst_1
isub
istore 14
start local 14 74: goto 87
75: StackMap locals: int java.util.List int
StackMap stack:
aload 13
iload 14
invokeinterface java.util.List.get:(I)Ljava/lang/Object;
checkcast java.security.cert.X509Certificate
astore 15
start local 15 76: getstatic sun.security.provider.certpath.RevocationChecker.debug:Lsun/security/util/Debug;
ifnull 81
77: getstatic sun.security.provider.certpath.RevocationChecker.debug:Lsun/security/util/Debug;
new java.lang.StringBuilder
dup
ldc "RevocationChecker.buildToNewKey() index "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
78: iload 14
invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
ldc " checking "
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
79: aload 15
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
80: invokevirtual sun.security.util.Debug.println:(Ljava/lang/String;)V
81: StackMap locals: java.security.cert.X509Certificate
StackMap stack:
aload 0
aload 15
aload 11
aconst_null
iload 12
iconst_1
82: aload 3
aload 6
83: invokevirtual sun.security.provider.certpath.RevocationChecker.checkCRLs:(Ljava/security/cert/X509Certificate;Ljava/security/PublicKey;Ljava/security/cert/X509Certificate;ZZLjava/util/Set;Ljava/util/Set;)V
84: aload 15
invokestatic sun.security.provider.certpath.RevocationChecker.certCanSignCrl:(Ljava/security/cert/X509Certificate;)Z
istore 12
85: aload 15
invokevirtual java.security.cert.X509Certificate.getPublicKey:()Ljava/security/PublicKey;
astore 11
end local 15 86: iinc 14 -1
StackMap locals:
StackMap stack:
87: iload 14
ifge 75
end local 14 88: goto 92
StackMap locals: sun.security.provider.certpath.RevocationChecker java.security.cert.X509Certificate java.security.PublicKey java.util.Set java.util.Set java.security.cert.X509CertSelector java.util.Set java.security.cert.PKIXBuilderParameters java.security.cert.CertPathBuilder java.security.cert.PKIXCertPathBuilderResult java.security.cert.TrustAnchor java.security.PublicKey int java.util.List
StackMap stack: java.security.cert.CertPathValidatorException
89: pop
90: aload 4
aload 9
invokevirtual java.security.cert.PKIXCertPathBuilderResult.getPublicKey:()Ljava/security/PublicKey;
invokeinterface java.util.Set.add:(Ljava/lang/Object;)Z
pop
91: goto 57
92: StackMap locals:
StackMap stack:
getstatic sun.security.provider.certpath.RevocationChecker.debug:Lsun/security/util/Debug;
ifnull 96
93: getstatic sun.security.provider.certpath.RevocationChecker.debug:Lsun/security/util/Debug;
new java.lang.StringBuilder
dup
ldc "RevocationChecker.buildToNewKey() got key "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
94: aload 9
invokevirtual java.security.cert.PKIXCertPathBuilderResult.getPublicKey:()Ljava/security/PublicKey;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
95: invokevirtual sun.security.util.Debug.println:(Ljava/lang/String;)V
96: StackMap locals:
StackMap stack:
aload 9
invokevirtual java.security.cert.PKIXCertPathBuilderResult.getPublicKey:()Ljava/security/PublicKey;
astore 14
start local 14 97: aload 13
invokeinterface java.util.List.isEmpty:()Z
ifeq 99
98: aconst_null
goto 100
StackMap locals: java.security.PublicKey
StackMap stack:
99: aload 13
iconst_0
invokeinterface java.util.List.get:(I)Ljava/lang/Object;
checkcast java.security.cert.X509Certificate
100: StackMap locals:
StackMap stack: java.security.cert.X509Certificate
astore 15
start local 15 101: aload 0
aload 1
aload 14
aload 15
102: iconst_1
iconst_0
aconst_null
aload 0
getfield sun.security.provider.certpath.RevocationChecker.params:Lsun/security/provider/certpath/PKIX$ValidatorParams;
invokevirtual sun.security.provider.certpath.PKIX$ValidatorParams.trustAnchors:()Ljava/util/Set;
103: invokevirtual sun.security.provider.certpath.RevocationChecker.checkCRLs:(Ljava/security/cert/X509Certificate;Ljava/security/PublicKey;Ljava/security/cert/X509Certificate;ZZLjava/util/Set;Ljava/util/Set;)V
104: return
105: StackMap locals: sun.security.provider.certpath.RevocationChecker java.security.cert.X509Certificate java.security.PublicKey java.util.Set java.util.Set java.security.cert.X509CertSelector java.util.Set java.security.cert.PKIXBuilderParameters java.security.cert.CertPathBuilder java.security.cert.PKIXCertPathBuilderResult java.security.cert.TrustAnchor java.security.PublicKey int java.util.List java.security.PublicKey java.security.cert.X509Certificate
StackMap stack: java.security.cert.CertPathValidatorException
astore 16
start local 16 106: aload 16
invokevirtual java.security.cert.CertPathValidatorException.getReason:()Ljava/security/cert/CertPathValidatorException$Reason;
getstatic java.security.cert.CertPathValidatorException$BasicReason.REVOKED:Ljava/security/cert/CertPathValidatorException$BasicReason;
if_acmpne 108
107: aload 16
athrow
end local 16 108: StackMap locals:
StackMap stack:
aload 4
aload 14
invokeinterface java.util.Set.add:(Ljava/lang/Object;)Z
pop
end local 15 end local 14 end local 13 end local 12 end local 11 end local 10 end local 9 109: goto 57
StackMap locals: sun.security.provider.certpath.RevocationChecker java.security.cert.X509Certificate java.security.PublicKey java.util.Set java.util.Set java.security.cert.X509CertSelector java.util.Set java.security.cert.PKIXBuilderParameters java.security.cert.CertPathBuilder
StackMap stack: java.security.InvalidAlgorithmParameterException
110: astore 9
start local 9 111: new java.security.cert.CertPathValidatorException
dup
aload 9
invokespecial java.security.cert.CertPathValidatorException.<init>:(Ljava/lang/Throwable;)V
athrow
end local 9 112: StackMap locals:
StackMap stack: java.security.cert.CertPathBuilderException
pop
113: new java.security.cert.CertPathValidatorException
dup
114: ldc "Could not determine revocation status"
aconst_null
aconst_null
115: iconst_m1
getstatic java.security.cert.CertPathValidatorException$BasicReason.UNDETERMINED_REVOCATION_STATUS:Ljava/security/cert/CertPathValidatorException$BasicReason;
116: invokespecial java.security.cert.CertPathValidatorException.<init>:(Ljava/lang/String;Ljava/lang/Throwable;Ljava/security/cert/CertPath;ILjava/security/cert/CertPathValidatorException$Reason;)V
athrow
end local 8 end local 7 end local 6 end local 5 end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 117 0 this Lsun/security/provider/certpath/RevocationChecker;
0 117 1 currCert Ljava/security/cert/X509Certificate;
0 117 2 prevKey Ljava/security/PublicKey;
0 117 3 stackedCerts Ljava/util/Set<Ljava/security/cert/X509Certificate;>;
3 117 4 badKeys Ljava/util/Set<Ljava/security/PublicKey;>;
6 117 5 certSel Ljava/security/cert/X509CertSelector;
12 117 6 newAnchors Ljava/util/Set<Ljava/security/cert/TrustAnchor;>;
13 14 7 builderParams Ljava/security/cert/PKIXBuilderParameters;
16 117 7 builderParams Ljava/security/cert/PKIXBuilderParameters;
15 16 8 iape Ljava/security/InvalidAlgorithmParameterException;
31 52 8 currCertImpl Lsun/security/x509/X509CertImpl;
34 38 9 ce Ljava/security/cert/CertificateException;
39 52 9 aiaExt Lsun/security/x509/AuthorityInfoAccessExtension;
43 52 10 adList Ljava/util/List<Lsun/security/x509/AccessDescription;>;
46 51 11 ad Lsun/security/x509/AccessDescription;
47 51 13 cs Ljava/security/cert/CertStore;
53 117 8 builder Ljava/security/cert/CertPathBuilder;
56 57 9 nsae Ljava/security/NoSuchAlgorithmException;
61 109 9 cpbr Ljava/security/cert/PKIXCertPathBuilderResult;
67 109 10 ta Ljava/security/cert/TrustAnchor;
68 109 11 prevKey2 Ljava/security/PublicKey;
71 109 12 signFlag Z
73 109 13 cpList Ljava/util/List<+Ljava/security/cert/Certificate;>;
74 88 14 i I
76 86 15 cert Ljava/security/cert/X509Certificate;
97 109 14 newKey Ljava/security/PublicKey;
101 109 15 newCert Ljava/security/cert/X509Certificate;
106 108 16 cpve Ljava/security/cert/CertPathValidatorException;
111 112 9 iape Ljava/security/InvalidAlgorithmParameterException;
Exception table:
from to target type
12 13 14 Class java.security.InvalidAlgorithmParameterException
31 32 33 Class java.security.cert.CertificateException
53 54 55 Class java.security.NoSuchAlgorithmException
73 88 89 Class java.security.cert.CertPathValidatorException
101 104 105 Class java.security.cert.CertPathValidatorException
57 91 110 Class java.security.InvalidAlgorithmParameterException
92 104 110 Class java.security.InvalidAlgorithmParameterException
105 109 110 Class java.security.InvalidAlgorithmParameterException
57 91 112 Class java.security.cert.CertPathBuilderException
92 104 112 Class java.security.cert.CertPathBuilderException
105 109 112 Class java.security.cert.CertPathBuilderException
Exceptions:
throws java.security.cert.CertPathValidatorException
Signature: (Ljava/security/cert/X509Certificate;Ljava/security/PublicKey;Ljava/util/Set<Ljava/security/cert/X509Certificate;>;)V
MethodParameters:
Name Flags
currCert
prevKey
stackedCerts
static int[] $SWITCH_TABLE$java$security$cert$PKIXRevocationChecker$Option();
descriptor: ()[I
flags: (0x1008) ACC_STATIC, ACC_SYNTHETIC
Code:
stack=3, locals=1, args_size=0
0: getstatic sun.security.provider.certpath.RevocationChecker.$SWITCH_TABLE$java$security$cert$PKIXRevocationChecker$Option:[I
dup
ifnull 1
areturn
StackMap locals:
StackMap stack: int[]
1: pop
invokestatic java.security.cert.PKIXRevocationChecker$Option.values:()[Ljava/security/cert/PKIXRevocationChecker$Option;
arraylength
newarray 10
astore 0
2: aload 0
getstatic java.security.cert.PKIXRevocationChecker$Option.NO_FALLBACK:Ljava/security/cert/PKIXRevocationChecker$Option;
invokevirtual java.security.cert.PKIXRevocationChecker$Option.ordinal:()I
iconst_3
iastore
3: goto 5
StackMap locals: int[]
StackMap stack: java.lang.NoSuchFieldError
4: pop
StackMap locals:
StackMap stack:
5: aload 0
getstatic java.security.cert.PKIXRevocationChecker$Option.ONLY_END_ENTITY:Ljava/security/cert/PKIXRevocationChecker$Option;
invokevirtual java.security.cert.PKIXRevocationChecker$Option.ordinal:()I
iconst_1
iastore
6: goto 8
StackMap locals:
StackMap stack: java.lang.NoSuchFieldError
7: pop
StackMap locals:
StackMap stack:
8: aload 0
getstatic java.security.cert.PKIXRevocationChecker$Option.PREFER_CRLS:Ljava/security/cert/PKIXRevocationChecker$Option;
invokevirtual java.security.cert.PKIXRevocationChecker$Option.ordinal:()I
iconst_2
iastore
9: goto 11
StackMap locals:
StackMap stack: java.lang.NoSuchFieldError
10: pop
StackMap locals:
StackMap stack:
11: aload 0
getstatic java.security.cert.PKIXRevocationChecker$Option.SOFT_FAIL:Ljava/security/cert/PKIXRevocationChecker$Option;
invokevirtual java.security.cert.PKIXRevocationChecker$Option.ordinal:()I
iconst_4
iastore
12: goto 14
StackMap locals:
StackMap stack: java.lang.NoSuchFieldError
13: pop
StackMap locals:
StackMap stack:
14: aload 0
dup
putstatic sun.security.provider.certpath.RevocationChecker.$SWITCH_TABLE$java$security$cert$PKIXRevocationChecker$Option:[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
static int[] $SWITCH_TABLE$sun$security$provider$certpath$RevocationChecker$Mode();
descriptor: ()[I
flags: (0x1008) ACC_STATIC, ACC_SYNTHETIC
Code:
stack=3, locals=1, args_size=0
0: getstatic sun.security.provider.certpath.RevocationChecker.$SWITCH_TABLE$sun$security$provider$certpath$RevocationChecker$Mode:[I
dup
ifnull 1
areturn
StackMap locals:
StackMap stack: int[]
1: pop
invokestatic sun.security.provider.certpath.RevocationChecker$Mode.values:()[Lsun/security/provider/certpath/RevocationChecker$Mode;
arraylength
newarray 10
astore 0
2: aload 0
getstatic sun.security.provider.certpath.RevocationChecker$Mode.ONLY_CRLS:Lsun/security/provider/certpath/RevocationChecker$Mode;
invokevirtual sun.security.provider.certpath.RevocationChecker$Mode.ordinal:()I
iconst_3
iastore
3: goto 5
StackMap locals: int[]
StackMap stack: java.lang.NoSuchFieldError
4: pop
StackMap locals:
StackMap stack:
5: aload 0
getstatic sun.security.provider.certpath.RevocationChecker$Mode.ONLY_OCSP:Lsun/security/provider/certpath/RevocationChecker$Mode;
invokevirtual sun.security.provider.certpath.RevocationChecker$Mode.ordinal:()I
iconst_4
iastore
6: goto 8
StackMap locals:
StackMap stack: java.lang.NoSuchFieldError
7: pop
StackMap locals:
StackMap stack:
8: aload 0
getstatic sun.security.provider.certpath.RevocationChecker$Mode.PREFER_CRLS:Lsun/security/provider/certpath/RevocationChecker$Mode;
invokevirtual sun.security.provider.certpath.RevocationChecker$Mode.ordinal:()I
iconst_2
iastore
9: goto 11
StackMap locals:
StackMap stack: java.lang.NoSuchFieldError
10: pop
StackMap locals:
StackMap stack:
11: aload 0
getstatic sun.security.provider.certpath.RevocationChecker$Mode.PREFER_OCSP:Lsun/security/provider/certpath/RevocationChecker$Mode;
invokevirtual sun.security.provider.certpath.RevocationChecker$Mode.ordinal:()I
iconst_1
iastore
12: goto 14
StackMap locals:
StackMap stack: java.lang.NoSuchFieldError
13: pop
StackMap locals:
StackMap stack:
14: aload 0
dup
putstatic sun.security.provider.certpath.RevocationChecker.$SWITCH_TABLE$sun$security$provider$certpath$RevocationChecker$Mode:[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
}
SourceFile: "RevocationChecker.java"
NestMembers:
sun.security.provider.certpath.RevocationChecker$1 sun.security.provider.certpath.RevocationChecker$Mode sun.security.provider.certpath.RevocationChecker$RejectKeySelector sun.security.provider.certpath.RevocationChecker$RevocationProperties
InnerClasses:
public final BasicReason = java.security.cert.CertPathValidatorException$BasicReason of java.security.cert.CertPathValidatorException
public abstract Reason = java.security.cert.CertPathValidatorException$Reason of java.security.cert.CertPathValidatorException
public final Option = java.security.cert.PKIXRevocationChecker$Option of java.security.cert.PKIXRevocationChecker
public abstract RevocationStatus = sun.security.provider.certpath.OCSP$RevocationStatus of sun.security.provider.certpath.OCSP
public final CertStatus = sun.security.provider.certpath.OCSP$RevocationStatus$CertStatus of sun.security.provider.certpath.OCSP$RevocationStatus
final IssuerInfo = sun.security.provider.certpath.OCSPResponse$IssuerInfo of sun.security.provider.certpath.OCSPResponse
public final SingleResponse = sun.security.provider.certpath.OCSPResponse$SingleResponse of sun.security.provider.certpath.OCSPResponse
CertStoreTypeException = sun.security.provider.certpath.PKIX$CertStoreTypeException of sun.security.provider.certpath.PKIX
ValidatorParams = sun.security.provider.certpath.PKIX$ValidatorParams of sun.security.provider.certpath.PKIX
sun.security.provider.certpath.RevocationChecker$1
private final Mode = sun.security.provider.certpath.RevocationChecker$Mode of sun.security.provider.certpath.RevocationChecker
private RejectKeySelector = sun.security.provider.certpath.RevocationChecker$RejectKeySelector of sun.security.provider.certpath.RevocationChecker
private RevocationProperties = sun.security.provider.certpath.RevocationChecker$RevocationProperties of sun.security.provider.certpath.RevocationChecker