public class org.bouncycastle.pkix.jcajce.X509RevocationChecker extends java.security.cert.PKIXCertPathChecker
minor version: 0
major version: 59
flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
this_class: org.bouncycastle.pkix.jcajce.X509RevocationChecker
super_class: java.security.cert.PKIXCertPathChecker
{
public static final int PKIX_VALIDITY_MODEL;
descriptor: I
flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
ConstantValue: 0
public static final int CHAIN_VALIDITY_MODEL;
descriptor: I
flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
ConstantValue: 1
private static java.util.logging.Logger LOG;
descriptor: Ljava/util/logging/Logger;
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
private static final java.util.Map<org.bouncycastle.asn1.x509.GeneralName, java.lang.ref.WeakReference<java.security.cert.X509CRL>> crlCache;
descriptor: Ljava/util/Map;
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
Signature: Ljava/util/Map<Lorg/bouncycastle/asn1/x509/GeneralName;Ljava/lang/ref/WeakReference<Ljava/security/cert/X509CRL;>;>;
private final java.util.Map<javax.security.auth.x500.X500Principal, java.lang.Long> failures;
descriptor: Ljava/util/Map;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
Signature: Ljava/util/Map<Ljavax/security/auth/x500/X500Principal;Ljava/lang/Long;>;
private final java.util.Set<java.security.cert.TrustAnchor> trustAnchors;
descriptor: Ljava/util/Set;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
Signature: Ljava/util/Set<Ljava/security/cert/TrustAnchor;>;
private final boolean isCheckEEOnly;
descriptor: Z
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
private final java.util.List<org.bouncycastle.util.Store<java.security.cert.CRL>> crls;
descriptor: Ljava/util/List;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
Signature: Ljava/util/List<Lorg/bouncycastle/util/Store<Ljava/security/cert/CRL;>;>;
private final java.util.List<java.security.cert.CertStore> crlCertStores;
descriptor: Ljava/util/List;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
Signature: Ljava/util/List<Ljava/security/cert/CertStore;>;
private final org.bouncycastle.pkix.jcajce.PKIXJcaJceHelper helper;
descriptor: Lorg/bouncycastle/pkix/jcajce/PKIXJcaJceHelper;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
private final boolean canSoftFail;
descriptor: Z
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
private final long failLogMaxTime;
descriptor: J
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
private final long failHardMaxTime;
descriptor: J
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
private javax.security.auth.x500.X500Principal workingIssuerName;
descriptor: Ljavax/security/auth/x500/X500Principal;
flags: (0x0002) ACC_PRIVATE
private java.security.PublicKey workingPublicKey;
descriptor: Ljava/security/PublicKey;
flags: (0x0002) ACC_PRIVATE
private java.security.cert.X509Certificate signingCert;
descriptor: Ljava/security/cert/X509Certificate;
flags: (0x0002) ACC_PRIVATE
protected static final java.lang.String[] crlReasons;
descriptor: [Ljava/lang/String;
flags: (0x001c) ACC_PROTECTED, ACC_STATIC, ACC_FINAL
static void <clinit>();
descriptor: ()V
flags: (0x0008) ACC_STATIC
Code:
stack=4, locals=0, args_size=0
0: ldc Lorg/bouncycastle/pkix/jcajce/X509RevocationChecker;
invokevirtual java.lang.Class.getName:()Ljava/lang/String;
invokestatic java.util.logging.Logger.getLogger:(Ljava/lang/String;)Ljava/util/logging/Logger;
putstatic org.bouncycastle.pkix.jcajce.X509RevocationChecker.LOG:Ljava/util/logging/Logger;
1: new java.util.WeakHashMap
dup
invokespecial java.util.WeakHashMap.<init>:()V
2: invokestatic java.util.Collections.synchronizedMap:(Ljava/util/Map;)Ljava/util/Map;
putstatic org.bouncycastle.pkix.jcajce.X509RevocationChecker.crlCache:Ljava/util/Map;
3: bipush 11
anewarray java.lang.String
dup
iconst_0
4: ldc "unspecified"
aastore
dup
iconst_1
5: ldc "keyCompromise"
aastore
dup
iconst_2
6: ldc "cACompromise"
aastore
dup
iconst_3
7: ldc "affiliationChanged"
aastore
dup
iconst_4
8: ldc "superseded"
aastore
dup
iconst_5
9: ldc "cessationOfOperation"
aastore
dup
bipush 6
10: ldc "certificateHold"
aastore
dup
bipush 7
11: ldc "unknown"
aastore
dup
bipush 8
12: ldc "removeFromCRL"
aastore
dup
bipush 9
13: ldc "privilegeWithdrawn"
aastore
dup
bipush 10
14: ldc "aACompromise"
aastore
15: putstatic org.bouncycastle.pkix.jcajce.X509RevocationChecker.crlReasons:[Ljava/lang/String;
16: return
LocalVariableTable:
Start End Slot Name Signature
private void <init>(org.bouncycastle.pkix.jcajce.X509RevocationChecker$Builder);
descriptor: (Lorg/bouncycastle/pkix/jcajce/X509RevocationChecker$Builder;)V
flags: (0x0002) ACC_PRIVATE
Code:
stack=4, locals=2, args_size=2
start local 0 start local 1 0: aload 0
invokespecial java.security.cert.PKIXCertPathChecker.<init>:()V
1: aload 0
new java.util.HashMap
dup
invokespecial java.util.HashMap.<init>:()V
putfield org.bouncycastle.pkix.jcajce.X509RevocationChecker.failures:Ljava/util/Map;
2: aload 0
new java.util.ArrayList
dup
aload 1
getfield org.bouncycastle.pkix.jcajce.X509RevocationChecker$Builder.crls:Ljava/util/List;
invokespecial java.util.ArrayList.<init>:(Ljava/util/Collection;)V
putfield org.bouncycastle.pkix.jcajce.X509RevocationChecker.crls:Ljava/util/List;
3: aload 0
new java.util.ArrayList
dup
aload 1
getfield org.bouncycastle.pkix.jcajce.X509RevocationChecker$Builder.crlCertStores:Ljava/util/List;
invokespecial java.util.ArrayList.<init>:(Ljava/util/Collection;)V
putfield org.bouncycastle.pkix.jcajce.X509RevocationChecker.crlCertStores:Ljava/util/List;
4: aload 0
aload 1
getfield org.bouncycastle.pkix.jcajce.X509RevocationChecker$Builder.isCheckEEOnly:Z
putfield org.bouncycastle.pkix.jcajce.X509RevocationChecker.isCheckEEOnly:Z
5: aload 0
aload 1
getfield org.bouncycastle.pkix.jcajce.X509RevocationChecker$Builder.trustAnchors:Ljava/util/Set;
putfield org.bouncycastle.pkix.jcajce.X509RevocationChecker.trustAnchors:Ljava/util/Set;
6: aload 0
aload 1
getfield org.bouncycastle.pkix.jcajce.X509RevocationChecker$Builder.canSoftFail:Z
putfield org.bouncycastle.pkix.jcajce.X509RevocationChecker.canSoftFail:Z
7: aload 0
aload 1
getfield org.bouncycastle.pkix.jcajce.X509RevocationChecker$Builder.failLogMaxTime:J
putfield org.bouncycastle.pkix.jcajce.X509RevocationChecker.failLogMaxTime:J
8: aload 0
aload 1
getfield org.bouncycastle.pkix.jcajce.X509RevocationChecker$Builder.failHardMaxTime:J
putfield org.bouncycastle.pkix.jcajce.X509RevocationChecker.failHardMaxTime:J
9: aload 1
getfield org.bouncycastle.pkix.jcajce.X509RevocationChecker$Builder.provider:Ljava/security/Provider;
ifnull 12
10: aload 0
new org.bouncycastle.pkix.jcajce.PKIXProviderJcaJceHelper
dup
aload 1
getfield org.bouncycastle.pkix.jcajce.X509RevocationChecker$Builder.provider:Ljava/security/Provider;
invokespecial org.bouncycastle.pkix.jcajce.PKIXProviderJcaJceHelper.<init>:(Ljava/security/Provider;)V
putfield org.bouncycastle.pkix.jcajce.X509RevocationChecker.helper:Lorg/bouncycastle/pkix/jcajce/PKIXJcaJceHelper;
11: goto 16
12: StackMap locals: org.bouncycastle.pkix.jcajce.X509RevocationChecker org.bouncycastle.pkix.jcajce.X509RevocationChecker$Builder
StackMap stack:
aload 1
getfield org.bouncycastle.pkix.jcajce.X509RevocationChecker$Builder.providerName:Ljava/lang/String;
ifnull 15
13: aload 0
new org.bouncycastle.pkix.jcajce.PKIXNamedJcaJceHelper
dup
aload 1
getfield org.bouncycastle.pkix.jcajce.X509RevocationChecker$Builder.providerName:Ljava/lang/String;
invokespecial org.bouncycastle.pkix.jcajce.PKIXNamedJcaJceHelper.<init>:(Ljava/lang/String;)V
putfield org.bouncycastle.pkix.jcajce.X509RevocationChecker.helper:Lorg/bouncycastle/pkix/jcajce/PKIXJcaJceHelper;
14: goto 16
15: StackMap locals:
StackMap stack:
aload 0
new org.bouncycastle.pkix.jcajce.PKIXDefaultJcaJceHelper
dup
invokespecial org.bouncycastle.pkix.jcajce.PKIXDefaultJcaJceHelper.<init>:()V
putfield org.bouncycastle.pkix.jcajce.X509RevocationChecker.helper:Lorg/bouncycastle/pkix/jcajce/PKIXJcaJceHelper;
16: StackMap locals:
StackMap stack:
return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 17 0 this Lorg/bouncycastle/pkix/jcajce/X509RevocationChecker;
0 17 1 bldr Lorg/bouncycastle/pkix/jcajce/X509RevocationChecker$Builder;
MethodParameters:
Name Flags
bldr
public void init(boolean);
descriptor: (Z)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=2, args_size=2
start local 0 start local 1 0: iload 1
ifeq 2
1: new java.lang.IllegalArgumentException
dup
ldc "forward processing not supported"
invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
athrow
2: StackMap locals:
StackMap stack:
aload 0
aconst_null
putfield org.bouncycastle.pkix.jcajce.X509RevocationChecker.workingIssuerName:Ljavax/security/auth/x500/X500Principal;
3: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Lorg/bouncycastle/pkix/jcajce/X509RevocationChecker;
0 4 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 Lorg/bouncycastle/pkix/jcajce/X509RevocationChecker;
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 Lorg/bouncycastle/pkix/jcajce/X509RevocationChecker;
Signature: ()Ljava/util/Set<Ljava/lang/String;>;
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=8, locals=14, args_size=3
start local 0 start local 1 start local 2 0: aload 1
checkcast java.security.cert.X509Certificate
astore 3
start local 3 1: aload 0
getfield org.bouncycastle.pkix.jcajce.X509RevocationChecker.isCheckEEOnly:Z
ifeq 6
aload 3
invokevirtual java.security.cert.X509Certificate.getBasicConstraints:()I
iconst_m1
if_icmpeq 6
2: aload 0
aload 3
invokevirtual java.security.cert.X509Certificate.getSubjectX500Principal:()Ljavax/security/auth/x500/X500Principal;
putfield org.bouncycastle.pkix.jcajce.X509RevocationChecker.workingIssuerName:Ljavax/security/auth/x500/X500Principal;
3: aload 0
aload 3
invokevirtual java.security.cert.X509Certificate.getPublicKey:()Ljava/security/PublicKey;
putfield org.bouncycastle.pkix.jcajce.X509RevocationChecker.workingPublicKey:Ljava/security/PublicKey;
4: aload 0
aload 3
putfield org.bouncycastle.pkix.jcajce.X509RevocationChecker.signingCert:Ljava/security/cert/X509Certificate;
5: return
6: StackMap locals: java.security.cert.X509Certificate
StackMap stack:
aconst_null
astore 4
start local 4 7: aload 0
getfield org.bouncycastle.pkix.jcajce.X509RevocationChecker.workingIssuerName:Ljavax/security/auth/x500/X500Principal;
ifnonnull 20
8: aload 0
aload 3
invokevirtual java.security.cert.X509Certificate.getIssuerX500Principal:()Ljavax/security/auth/x500/X500Principal;
putfield org.bouncycastle.pkix.jcajce.X509RevocationChecker.workingIssuerName:Ljavax/security/auth/x500/X500Principal;
9: aload 0
getfield org.bouncycastle.pkix.jcajce.X509RevocationChecker.trustAnchors:Ljava/util/Set;
invokeinterface java.util.Set.iterator:()Ljava/util/Iterator;
astore 5
start local 5 10: goto 15
11: StackMap locals: java.security.cert.TrustAnchor java.util.Iterator
StackMap stack:
aload 5
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast java.security.cert.TrustAnchor
astore 6
start local 6 12: aload 0
getfield org.bouncycastle.pkix.jcajce.X509RevocationChecker.workingIssuerName:Ljavax/security/auth/x500/X500Principal;
aload 6
invokevirtual java.security.cert.TrustAnchor.getCA:()Ljavax/security/auth/x500/X500Principal;
invokevirtual javax.security.auth.x500.X500Principal.equals:(Ljava/lang/Object;)Z
ifne 14
13: aload 0
getfield org.bouncycastle.pkix.jcajce.X509RevocationChecker.workingIssuerName:Ljavax/security/auth/x500/X500Principal;
aload 6
invokevirtual java.security.cert.TrustAnchor.getTrustedCert:()Ljava/security/cert/X509Certificate;
invokevirtual java.security.cert.X509Certificate.getSubjectX500Principal:()Ljavax/security/auth/x500/X500Principal;
invokevirtual javax.security.auth.x500.X500Principal.equals:(Ljava/lang/Object;)Z
ifeq 15
14: StackMap locals: java.security.cert.TrustAnchor
StackMap stack:
aload 6
astore 4
end local 6 15: StackMap locals:
StackMap stack:
aload 5
invokeinterface java.util.Iterator.hasNext:()Z
ifne 11
end local 5 16: aload 4
ifnonnull 18
17: new java.security.cert.CertPathValidatorException
dup
new java.lang.StringBuilder
dup
ldc "no trust anchor found for "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 0
getfield org.bouncycastle.pkix.jcajce.X509RevocationChecker.workingIssuerName:Ljavax/security/auth/x500/X500Principal;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokespecial java.security.cert.CertPathValidatorException.<init>:(Ljava/lang/String;)V
athrow
18: StackMap locals:
StackMap stack:
aload 0
aload 4
invokevirtual java.security.cert.TrustAnchor.getTrustedCert:()Ljava/security/cert/X509Certificate;
putfield org.bouncycastle.pkix.jcajce.X509RevocationChecker.signingCert:Ljava/security/cert/X509Certificate;
19: aload 0
aload 0
getfield org.bouncycastle.pkix.jcajce.X509RevocationChecker.signingCert:Ljava/security/cert/X509Certificate;
invokevirtual java.security.cert.X509Certificate.getPublicKey:()Ljava/security/PublicKey;
putfield org.bouncycastle.pkix.jcajce.X509RevocationChecker.workingPublicKey:Ljava/security/PublicKey;
20: StackMap locals:
StackMap stack:
new java.util.ArrayList
dup
invokespecial java.util.ArrayList.<init>:()V
astore 6
start local 6 21: new java.security.cert.PKIXParameters
dup
aload 0
getfield org.bouncycastle.pkix.jcajce.X509RevocationChecker.trustAnchors:Ljava/util/Set;
invokespecial java.security.cert.PKIXParameters.<init>:(Ljava/util/Set;)V
astore 5
start local 5 22: aload 5
iconst_0
invokevirtual java.security.cert.PKIXParameters.setRevocationEnabled:(Z)V
23: aload 5
new java.util.Date
dup
invokespecial java.util.Date.<init>:()V
invokevirtual java.security.cert.PKIXParameters.setDate:(Ljava/util/Date;)V
24: iconst_0
istore 7
start local 7 25: goto 30
26: StackMap locals: java.security.cert.PKIXParameters java.util.List int
StackMap stack:
getstatic org.bouncycastle.pkix.jcajce.X509RevocationChecker.LOG:Ljava/util/logging/Logger;
getstatic java.util.logging.Level.INFO:Ljava/util/logging/Level;
invokevirtual java.util.logging.Logger.isLoggable:(Ljava/util/logging/Level;)Z
ifeq 28
27: aload 0
aload 6
aload 0
getfield org.bouncycastle.pkix.jcajce.X509RevocationChecker.crlCertStores:Ljava/util/List;
iload 7
invokeinterface java.util.List.get:(I)Ljava/lang/Object;
checkcast java.security.cert.CertStore
invokevirtual org.bouncycastle.pkix.jcajce.X509RevocationChecker.addIssuers:(Ljava/util/List;Ljava/security/cert/CertStore;)V
28: StackMap locals:
StackMap stack:
aload 5
aload 0
getfield org.bouncycastle.pkix.jcajce.X509RevocationChecker.crlCertStores:Ljava/util/List;
iload 7
invokeinterface java.util.List.get:(I)Ljava/lang/Object;
checkcast java.security.cert.CertStore
invokevirtual java.security.cert.PKIXParameters.addCertStore:(Ljava/security/cert/CertStore;)V
29: iinc 7 1
StackMap locals:
StackMap stack:
30: iload 7
aload 0
getfield org.bouncycastle.pkix.jcajce.X509RevocationChecker.crlCertStores:Ljava/util/List;
invokeinterface java.util.List.size:()I
if_icmpne 26
end local 7 31: goto 34
end local 5 32: StackMap locals: org.bouncycastle.pkix.jcajce.X509RevocationChecker java.security.cert.Certificate java.util.Collection java.security.cert.X509Certificate java.security.cert.TrustAnchor top java.util.List
StackMap stack: java.security.GeneralSecurityException
astore 7
start local 7 33: new java.lang.RuntimeException
dup
new java.lang.StringBuilder
dup
ldc "error setting up baseParams: "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 7
invokevirtual java.security.GeneralSecurityException.getMessage:()Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokespecial java.lang.RuntimeException.<init>:(Ljava/lang/String;)V
athrow
end local 7 start local 5 34: StackMap locals: org.bouncycastle.pkix.jcajce.X509RevocationChecker java.security.cert.Certificate java.util.Collection java.security.cert.X509Certificate java.security.cert.TrustAnchor java.security.cert.PKIXParameters java.util.List
StackMap stack:
new org.bouncycastle.jcajce.PKIXExtendedParameters$Builder
dup
aload 5
invokespecial org.bouncycastle.jcajce.PKIXExtendedParameters$Builder.<init>:(Ljava/security/cert/PKIXParameters;)V
astore 7
start local 7 35: iconst_0
istore 8
start local 8 36: goto 41
37: StackMap locals: org.bouncycastle.jcajce.PKIXExtendedParameters$Builder int
StackMap stack:
getstatic org.bouncycastle.pkix.jcajce.X509RevocationChecker.LOG:Ljava/util/logging/Logger;
getstatic java.util.logging.Level.INFO:Ljava/util/logging/Level;
invokevirtual java.util.logging.Logger.isLoggable:(Ljava/util/logging/Level;)Z
ifeq 39
38: aload 0
aload 6
aload 0
getfield org.bouncycastle.pkix.jcajce.X509RevocationChecker.crls:Ljava/util/List;
iload 8
invokeinterface java.util.List.get:(I)Ljava/lang/Object;
checkcast org.bouncycastle.util.Store
invokevirtual org.bouncycastle.pkix.jcajce.X509RevocationChecker.addIssuers:(Ljava/util/List;Lorg/bouncycastle/util/Store;)V
39: StackMap locals:
StackMap stack:
aload 7
new org.bouncycastle.pkix.jcajce.X509RevocationChecker$LocalCRLStore
dup
aload 0
aload 0
getfield org.bouncycastle.pkix.jcajce.X509RevocationChecker.crls:Ljava/util/List;
iload 8
invokeinterface java.util.List.get:(I)Ljava/lang/Object;
checkcast org.bouncycastle.util.Store
invokespecial org.bouncycastle.pkix.jcajce.X509RevocationChecker$LocalCRLStore.<init>:(Lorg/bouncycastle/pkix/jcajce/X509RevocationChecker;Lorg/bouncycastle/util/Store;)V
invokevirtual org.bouncycastle.jcajce.PKIXExtendedParameters$Builder.addCRLStore:(Lorg/bouncycastle/jcajce/PKIXCRLStore;)Lorg/bouncycastle/jcajce/PKIXExtendedParameters$Builder;
pop
40: iinc 8 1
StackMap locals:
StackMap stack:
41: iload 8
aload 0
getfield org.bouncycastle.pkix.jcajce.X509RevocationChecker.crls:Ljava/util/List;
invokeinterface java.util.List.size:()I
if_icmpne 37
end local 8 42: aload 6
invokeinterface java.util.List.isEmpty:()Z
ifeq 45
43: getstatic org.bouncycastle.pkix.jcajce.X509RevocationChecker.LOG:Ljava/util/logging/Logger;
getstatic java.util.logging.Level.INFO:Ljava/util/logging/Level;
ldc "configured with 0 pre-loaded CRLs"
invokevirtual java.util.logging.Logger.log:(Ljava/util/logging/Level;Ljava/lang/String;)V
44: goto 53
45: StackMap locals:
StackMap stack:
getstatic org.bouncycastle.pkix.jcajce.X509RevocationChecker.LOG:Ljava/util/logging/Logger;
getstatic java.util.logging.Level.FINE:Ljava/util/logging/Level;
invokevirtual java.util.logging.Logger.isLoggable:(Ljava/util/logging/Level;)Z
ifeq 52
46: iconst_0
istore 8
start local 8 47: goto 50
48: StackMap locals: int
StackMap stack:
getstatic org.bouncycastle.pkix.jcajce.X509RevocationChecker.LOG:Ljava/util/logging/Logger;
getstatic java.util.logging.Level.FINE:Ljava/util/logging/Level;
new java.lang.StringBuilder
dup
ldc "configuring with CRL for issuer \""
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 6
iload 8
invokeinterface java.util.List.get:(I)Ljava/lang/Object;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
ldc "\""
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokevirtual java.util.logging.Logger.log:(Ljava/util/logging/Level;Ljava/lang/String;)V
49: iinc 8 1
StackMap locals:
StackMap stack:
50: iload 8
aload 6
invokeinterface java.util.List.size:()I
if_icmpne 48
end local 8 51: goto 53
52: StackMap locals:
StackMap stack:
getstatic org.bouncycastle.pkix.jcajce.X509RevocationChecker.LOG:Ljava/util/logging/Logger;
getstatic java.util.logging.Level.INFO:Ljava/util/logging/Level;
new java.lang.StringBuilder
dup
ldc "configured with "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 6
invokeinterface java.util.List.size:()I
invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
ldc " pre-loaded CRLs"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokevirtual java.util.logging.Logger.log:(Ljava/util/logging/Level;Ljava/lang/String;)V
53: StackMap locals:
StackMap stack:
aload 0
aload 7
invokevirtual org.bouncycastle.jcajce.PKIXExtendedParameters$Builder.build:()Lorg/bouncycastle/jcajce/PKIXExtendedParameters;
aload 3
aload 5
invokevirtual java.security.cert.PKIXParameters.getDate:()Ljava/util/Date;
aload 0
getfield org.bouncycastle.pkix.jcajce.X509RevocationChecker.signingCert:Ljava/security/cert/X509Certificate;
aload 0
getfield org.bouncycastle.pkix.jcajce.X509RevocationChecker.workingPublicKey:Ljava/security/PublicKey;
new java.util.ArrayList
dup
invokespecial java.util.ArrayList.<init>:()V
aload 0
getfield org.bouncycastle.pkix.jcajce.X509RevocationChecker.helper:Lorg/bouncycastle/pkix/jcajce/PKIXJcaJceHelper;
invokevirtual org.bouncycastle.pkix.jcajce.X509RevocationChecker.checkCRLs:(Lorg/bouncycastle/jcajce/PKIXExtendedParameters;Ljava/security/cert/X509Certificate;Ljava/util/Date;Ljava/security/cert/X509Certificate;Ljava/security/PublicKey;Ljava/util/List;Lorg/bouncycastle/pkix/jcajce/PKIXJcaJceHelper;)V
54: goto 88
55: StackMap locals:
StackMap stack: org.bouncycastle.pkix.jcajce.AnnotatedException
astore 8
start local 8 56: new java.security.cert.CertPathValidatorException
dup
aload 8
invokevirtual org.bouncycastle.pkix.jcajce.AnnotatedException.getMessage:()Ljava/lang/String;
aload 8
invokevirtual org.bouncycastle.pkix.jcajce.AnnotatedException.getCause:()Ljava/lang/Throwable;
invokespecial java.security.cert.CertPathValidatorException.<init>:(Ljava/lang/String;Ljava/lang/Throwable;)V
athrow
end local 8 57: StackMap locals:
StackMap stack: org.bouncycastle.pkix.jcajce.CRLNotFoundException
astore 8
start local 8 58: aload 3
getstatic org.bouncycastle.asn1.x509.Extension.cRLDistributionPoints:Lorg/bouncycastle/asn1/ASN1ObjectIdentifier;
invokevirtual org.bouncycastle.asn1.ASN1ObjectIdentifier.getId:()Ljava/lang/String;
invokevirtual java.security.cert.X509Certificate.getExtensionValue:(Ljava/lang/String;)[B
ifnull 87
59: aconst_null
astore 9
start local 9 60: aload 0
aload 3
invokevirtual java.security.cert.X509Certificate.getIssuerX500Principal:()Ljavax/security/auth/x500/X500Principal;
aload 5
invokevirtual java.security.cert.PKIXParameters.getDate:()Ljava/util/Date;
aload 3
getstatic org.bouncycastle.asn1.x509.Extension.cRLDistributionPoints:Lorg/bouncycastle/asn1/ASN1ObjectIdentifier;
invokestatic org.bouncycastle.pkix.jcajce.RevocationUtilities.getExtensionValue:(Ljava/security/cert/X509Extension;Lorg/bouncycastle/asn1/ASN1ObjectIdentifier;)Lorg/bouncycastle/asn1/ASN1Primitive;
aload 0
getfield org.bouncycastle.pkix.jcajce.X509RevocationChecker.helper:Lorg/bouncycastle/pkix/jcajce/PKIXJcaJceHelper;
invokevirtual org.bouncycastle.pkix.jcajce.X509RevocationChecker.downloadCRLs:(Ljavax/security/auth/x500/X500Principal;Ljava/util/Date;Lorg/bouncycastle/asn1/ASN1Primitive;Lorg/bouncycastle/jcajce/util/JcaJceHelper;)Ljava/security/cert/CRL;
astore 9
61: goto 64
62: StackMap locals: org.bouncycastle.pkix.jcajce.X509RevocationChecker java.security.cert.Certificate java.util.Collection java.security.cert.X509Certificate java.security.cert.TrustAnchor java.security.cert.PKIXParameters java.util.List org.bouncycastle.jcajce.PKIXExtendedParameters$Builder org.bouncycastle.pkix.jcajce.CRLNotFoundException java.security.cert.CRL
StackMap stack: org.bouncycastle.pkix.jcajce.AnnotatedException
pop
63: new java.security.cert.CertPathValidatorException
dup
aload 8
invokevirtual org.bouncycastle.pkix.jcajce.CRLNotFoundException.getMessage:()Ljava/lang/String;
aload 8
invokevirtual org.bouncycastle.pkix.jcajce.CRLNotFoundException.getCause:()Ljava/lang/Throwable;
invokespecial java.security.cert.CertPathValidatorException.<init>:(Ljava/lang/String;Ljava/lang/Throwable;)V
athrow
64: StackMap locals:
StackMap stack:
aload 9
ifnull 72
65: aload 7
new org.bouncycastle.pkix.jcajce.X509RevocationChecker$LocalCRLStore
dup
aload 0
66: new org.bouncycastle.util.CollectionStore
dup
aload 9
invokestatic java.util.Collections.singleton:(Ljava/lang/Object;)Ljava/util/Set;
invokespecial org.bouncycastle.util.CollectionStore.<init>:(Ljava/util/Collection;)V
invokespecial org.bouncycastle.pkix.jcajce.X509RevocationChecker$LocalCRLStore.<init>:(Lorg/bouncycastle/pkix/jcajce/X509RevocationChecker;Lorg/bouncycastle/util/Store;)V
67: invokevirtual org.bouncycastle.jcajce.PKIXExtendedParameters$Builder.addCRLStore:(Lorg/bouncycastle/jcajce/PKIXCRLStore;)Lorg/bouncycastle/jcajce/PKIXExtendedParameters$Builder;
pop
68: aload 0
aload 7
invokevirtual org.bouncycastle.jcajce.PKIXExtendedParameters$Builder.build:()Lorg/bouncycastle/jcajce/PKIXExtendedParameters;
aload 3
new java.util.Date
dup
invokespecial java.util.Date.<init>:()V
aload 0
getfield org.bouncycastle.pkix.jcajce.X509RevocationChecker.signingCert:Ljava/security/cert/X509Certificate;
aload 0
getfield org.bouncycastle.pkix.jcajce.X509RevocationChecker.workingPublicKey:Ljava/security/PublicKey;
new java.util.ArrayList
dup
invokespecial java.util.ArrayList.<init>:()V
aload 0
getfield org.bouncycastle.pkix.jcajce.X509RevocationChecker.helper:Lorg/bouncycastle/pkix/jcajce/PKIXJcaJceHelper;
invokevirtual org.bouncycastle.pkix.jcajce.X509RevocationChecker.checkCRLs:(Lorg/bouncycastle/jcajce/PKIXExtendedParameters;Ljava/security/cert/X509Certificate;Ljava/util/Date;Ljava/security/cert/X509Certificate;Ljava/security/PublicKey;Ljava/util/List;Lorg/bouncycastle/pkix/jcajce/PKIXJcaJceHelper;)V
69: goto 88
70: StackMap locals:
StackMap stack: org.bouncycastle.pkix.jcajce.AnnotatedException
pop
71: new java.security.cert.CertPathValidatorException
dup
aload 8
invokevirtual org.bouncycastle.pkix.jcajce.CRLNotFoundException.getMessage:()Ljava/lang/String;
aload 8
invokevirtual org.bouncycastle.pkix.jcajce.CRLNotFoundException.getCause:()Ljava/lang/Throwable;
invokespecial java.security.cert.CertPathValidatorException.<init>:(Ljava/lang/String;Ljava/lang/Throwable;)V
athrow
72: StackMap locals:
StackMap stack:
aload 0
getfield org.bouncycastle.pkix.jcajce.X509RevocationChecker.canSoftFail:Z
ifeq 86
73: aload 3
invokevirtual java.security.cert.X509Certificate.getIssuerX500Principal:()Ljavax/security/auth/x500/X500Principal;
astore 10
start local 10 74: aload 0
getfield org.bouncycastle.pkix.jcajce.X509RevocationChecker.failures:Ljava/util/Map;
aload 10
invokeinterface java.util.Map.get:(Ljava/lang/Object;)Ljava/lang/Object;
checkcast java.lang.Long
astore 11
start local 11 75: aload 11
ifnull 84
76: invokestatic java.lang.System.currentTimeMillis:()J
aload 11
invokevirtual java.lang.Long.longValue:()J
lsub
lstore 12
start local 12 77: aload 0
getfield org.bouncycastle.pkix.jcajce.X509RevocationChecker.failHardMaxTime:J
ldc -1
lcmp
ifeq 79
aload 0
getfield org.bouncycastle.pkix.jcajce.X509RevocationChecker.failHardMaxTime:J
lload 12
lcmp
ifge 79
78: aload 8
athrow
79: StackMap locals: javax.security.auth.x500.X500Principal java.lang.Long long
StackMap stack:
lload 12
aload 0
getfield org.bouncycastle.pkix.jcajce.X509RevocationChecker.failLogMaxTime:J
lcmp
ifge 82
80: getstatic org.bouncycastle.pkix.jcajce.X509RevocationChecker.LOG:Ljava/util/logging/Logger;
getstatic java.util.logging.Level.WARNING:Ljava/util/logging/Level;
new java.lang.StringBuilder
dup
ldc "soft failing for issuer: \""
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 10
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
ldc "\""
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokevirtual java.util.logging.Logger.log:(Ljava/util/logging/Level;Ljava/lang/String;)V
81: goto 88
82: StackMap locals:
StackMap stack:
getstatic org.bouncycastle.pkix.jcajce.X509RevocationChecker.LOG:Ljava/util/logging/Logger;
getstatic java.util.logging.Level.SEVERE:Ljava/util/logging/Level;
new java.lang.StringBuilder
dup
ldc "soft failing for issuer: \""
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 10
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
ldc "\""
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokevirtual java.util.logging.Logger.log:(Ljava/util/logging/Level;Ljava/lang/String;)V
end local 12 83: goto 88
84: StackMap locals:
StackMap stack:
aload 0
getfield org.bouncycastle.pkix.jcajce.X509RevocationChecker.failures:Ljava/util/Map;
aload 10
invokestatic java.lang.System.currentTimeMillis:()J
invokestatic java.lang.Long.valueOf:(J)Ljava/lang/Long;
invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
pop
end local 11 end local 10 85: goto 88
86: StackMap locals:
StackMap stack:
aload 8
athrow
end local 9 87: StackMap locals:
StackMap stack:
aload 8
athrow
end local 8 88: StackMap locals:
StackMap stack:
aload 0
aload 3
putfield org.bouncycastle.pkix.jcajce.X509RevocationChecker.signingCert:Ljava/security/cert/X509Certificate;
89: aload 0
aload 3
invokevirtual java.security.cert.X509Certificate.getPublicKey:()Ljava/security/PublicKey;
putfield org.bouncycastle.pkix.jcajce.X509RevocationChecker.workingPublicKey:Ljava/security/PublicKey;
90: aload 0
aload 3
invokevirtual java.security.cert.X509Certificate.getSubjectX500Principal:()Ljavax/security/auth/x500/X500Principal;
putfield org.bouncycastle.pkix.jcajce.X509RevocationChecker.workingIssuerName:Ljavax/security/auth/x500/X500Principal;
91: 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 92 0 this Lorg/bouncycastle/pkix/jcajce/X509RevocationChecker;
0 92 1 certificate Ljava/security/cert/Certificate;
0 92 2 collection Ljava/util/Collection<Ljava/lang/String;>;
1 92 3 cert Ljava/security/cert/X509Certificate;
7 92 4 trustAnchor Ljava/security/cert/TrustAnchor;
10 16 5 it Ljava/util/Iterator;
12 15 6 anchor Ljava/security/cert/TrustAnchor;
22 32 5 baseParams Ljava/security/cert/PKIXParameters;
34 92 5 baseParams Ljava/security/cert/PKIXParameters;
21 92 6 issuerList Ljava/util/List<Ljavax/security/auth/x500/X500Principal;>;
25 31 7 i I
33 34 7 e Ljava/security/GeneralSecurityException;
35 92 7 pkixParamsBldr Lorg/bouncycastle/jcajce/PKIXExtendedParameters$Builder;
36 42 8 i I
47 51 8 i I
56 57 8 e Lorg/bouncycastle/pkix/jcajce/AnnotatedException;
58 88 8 e Lorg/bouncycastle/pkix/jcajce/CRLNotFoundException;
60 87 9 crl Ljava/security/cert/CRL;
74 85 10 issuer Ljavax/security/auth/x500/X500Principal;
75 85 11 initial Ljava/lang/Long;
77 83 12 period J
Exception table:
from to target type
21 31 32 Class java.security.GeneralSecurityException
53 54 55 Class org.bouncycastle.pkix.jcajce.AnnotatedException
53 54 57 Class org.bouncycastle.pkix.jcajce.CRLNotFoundException
60 61 62 Class org.bouncycastle.pkix.jcajce.AnnotatedException
65 69 70 Class org.bouncycastle.pkix.jcajce.AnnotatedException
Exceptions:
throws java.security.cert.CertPathValidatorException
Signature: (Ljava/security/cert/Certificate;Ljava/util/Collection<Ljava/lang/String;>;)V
MethodParameters:
Name Flags
certificate
collection
private void addIssuers(java.util.List<javax.security.auth.x500.X500Principal>, java.security.cert.CertStore);
descriptor: (Ljava/util/List;Ljava/security/cert/CertStore;)V
flags: (0x0002) ACC_PRIVATE
Code:
stack=5, locals=3, args_size=3
start local 0 start local 1 start local 2 0: aload 2
new org.bouncycastle.pkix.jcajce.X509RevocationChecker$1
dup
aload 0
aload 1
invokespecial org.bouncycastle.pkix.jcajce.X509RevocationChecker$1.<init>:(Lorg/bouncycastle/pkix/jcajce/X509RevocationChecker;Ljava/util/List;)V
invokevirtual java.security.cert.CertStore.getCRLs:(Ljava/security/cert/CRLSelector;)Ljava/util/Collection;
pop
1: return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lorg/bouncycastle/pkix/jcajce/X509RevocationChecker;
0 2 1 issuerList Ljava/util/List<Ljavax/security/auth/x500/X500Principal;>;
0 2 2 certStore Ljava/security/cert/CertStore;
Exceptions:
throws java.security.cert.CertStoreException
Signature: (Ljava/util/List<Ljavax/security/auth/x500/X500Principal;>;Ljava/security/cert/CertStore;)V
MethodParameters:
Name Flags
issuerList final
certStore
private void addIssuers(java.util.List<javax.security.auth.x500.X500Principal>, org.bouncycastle.util.Store<java.security.cert.CRL>);
descriptor: (Ljava/util/List;Lorg/bouncycastle/util/Store;)V
flags: (0x0002) ACC_PRIVATE
Code:
stack=5, locals=3, args_size=3
start local 0 start local 1 start local 2 0: aload 2
new org.bouncycastle.pkix.jcajce.X509RevocationChecker$2
dup
aload 0
aload 1
invokespecial org.bouncycastle.pkix.jcajce.X509RevocationChecker$2.<init>:(Lorg/bouncycastle/pkix/jcajce/X509RevocationChecker;Ljava/util/List;)V
invokeinterface org.bouncycastle.util.Store.getMatches:(Lorg/bouncycastle/util/Selector;)Ljava/util/Collection;
pop
1: return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lorg/bouncycastle/pkix/jcajce/X509RevocationChecker;
0 2 1 issuerList Ljava/util/List<Ljavax/security/auth/x500/X500Principal;>;
0 2 2 certStore Lorg/bouncycastle/util/Store<Ljava/security/cert/CRL;>;
Signature: (Ljava/util/List<Ljavax/security/auth/x500/X500Principal;>;Lorg/bouncycastle/util/Store<Ljava/security/cert/CRL;>;)V
MethodParameters:
Name Flags
issuerList final
certStore
private java.security.cert.CRL downloadCRLs(javax.security.auth.x500.X500Principal, java.util.Date, org.bouncycastle.asn1.ASN1Primitive, org.bouncycastle.jcajce.util.JcaJceHelper);
descriptor: (Ljavax/security/auth/x500/X500Principal;Ljava/util/Date;Lorg/bouncycastle/asn1/ASN1Primitive;Lorg/bouncycastle/jcajce/util/JcaJceHelper;)Ljava/security/cert/CRL;
flags: (0x0002) ACC_PRIVATE
Code:
stack=5, locals=18, args_size=5
start local 0 start local 1 start local 2 start local 3 start local 4 0: aload 3
invokestatic org.bouncycastle.asn1.x509.CRLDistPoint.getInstance:(Ljava/lang/Object;)Lorg/bouncycastle/asn1/x509/CRLDistPoint;
astore 5
start local 5 1: aload 5
invokevirtual org.bouncycastle.asn1.x509.CRLDistPoint.getDistributionPoints:()[Lorg/bouncycastle/asn1/x509/DistributionPoint;
astore 6
start local 6 2: iconst_0
istore 7
start local 7 3: goto 38
4: StackMap locals: org.bouncycastle.asn1.x509.CRLDistPoint org.bouncycastle.asn1.x509.DistributionPoint[] int
StackMap stack:
aload 6
iload 7
aaload
astore 8
start local 8 5: aload 8
invokevirtual org.bouncycastle.asn1.x509.DistributionPoint.getDistributionPoint:()Lorg/bouncycastle/asn1/x509/DistributionPointName;
astore 9
start local 9 6: aload 9
invokevirtual org.bouncycastle.asn1.x509.DistributionPointName.getType:()I
ifne 37
7: aload 9
invokevirtual org.bouncycastle.asn1.x509.DistributionPointName.getName:()Lorg/bouncycastle/asn1/ASN1Encodable;
invokestatic org.bouncycastle.asn1.x509.GeneralNames.getInstance:(Ljava/lang/Object;)Lorg/bouncycastle/asn1/x509/GeneralNames;
invokevirtual org.bouncycastle.asn1.x509.GeneralNames.getNames:()[Lorg/bouncycastle/asn1/x509/GeneralName;
astore 10
start local 10 8: iconst_0
istore 11
start local 11 9: goto 36
10: StackMap locals: org.bouncycastle.pkix.jcajce.X509RevocationChecker javax.security.auth.x500.X500Principal java.util.Date org.bouncycastle.asn1.ASN1Primitive org.bouncycastle.jcajce.util.JcaJceHelper org.bouncycastle.asn1.x509.CRLDistPoint org.bouncycastle.asn1.x509.DistributionPoint[] int org.bouncycastle.asn1.x509.DistributionPoint org.bouncycastle.asn1.x509.DistributionPointName org.bouncycastle.asn1.x509.GeneralName[] int
StackMap stack:
aload 10
iload 11
aaload
astore 12
start local 12 11: aload 12
invokevirtual org.bouncycastle.asn1.x509.GeneralName.getTagNo:()I
bipush 6
if_icmpne 35
12: getstatic org.bouncycastle.pkix.jcajce.X509RevocationChecker.crlCache:Ljava/util/Map;
aload 12
invokeinterface java.util.Map.get:(Ljava/lang/Object;)Ljava/lang/Object;
checkcast java.lang.ref.WeakReference
astore 14
start local 14 13: aload 14
ifnull 20
14: aload 14
invokevirtual java.lang.ref.WeakReference.get:()Ljava/lang/Object;
checkcast java.security.cert.X509CRL
astore 13
start local 13 15: aload 13
ifnull 19
16: aload 2
aload 13
invokevirtual java.security.cert.X509CRL.getThisUpdate:()Ljava/util/Date;
invokevirtual java.util.Date.before:(Ljava/util/Date;)Z
ifne 19
17: aload 2
aload 13
invokevirtual java.security.cert.X509CRL.getNextUpdate:()Ljava/util/Date;
invokevirtual java.util.Date.after:(Ljava/util/Date;)Z
ifne 19
18: aload 13
areturn
19: StackMap locals: org.bouncycastle.asn1.x509.GeneralName java.security.cert.X509CRL java.lang.ref.WeakReference
StackMap stack:
getstatic org.bouncycastle.pkix.jcajce.X509RevocationChecker.crlCache:Ljava/util/Map;
aload 12
invokeinterface java.util.Map.remove:(Ljava/lang/Object;)Ljava/lang/Object;
pop
end local 13 20: StackMap locals: org.bouncycastle.pkix.jcajce.X509RevocationChecker javax.security.auth.x500.X500Principal java.util.Date org.bouncycastle.asn1.ASN1Primitive org.bouncycastle.jcajce.util.JcaJceHelper org.bouncycastle.asn1.x509.CRLDistPoint org.bouncycastle.asn1.x509.DistributionPoint[] int org.bouncycastle.asn1.x509.DistributionPoint org.bouncycastle.asn1.x509.DistributionPointName org.bouncycastle.asn1.x509.GeneralName[] int org.bouncycastle.asn1.x509.GeneralName top java.lang.ref.WeakReference
StackMap stack:
aconst_null
astore 15
start local 15 21: new java.net.URL
dup
aload 12
invokevirtual org.bouncycastle.asn1.x509.GeneralName.getName:()Lorg/bouncycastle/asn1/ASN1Encodable;
invokevirtual java.lang.Object.toString:()Ljava/lang/String;
invokespecial java.net.URL.<init>:(Ljava/lang/String;)V
astore 15
22: aload 4
ldc "X.509"
invokeinterface org.bouncycastle.jcajce.util.JcaJceHelper.createCertificateFactory:(Ljava/lang/String;)Ljava/security/cert/CertificateFactory;
astore 16
start local 16 23: aload 15
invokevirtual java.net.URL.openStream:()Ljava/io/InputStream;
astore 17
start local 17 24: aload 16
new java.io.BufferedInputStream
dup
aload 17
invokespecial java.io.BufferedInputStream.<init>:(Ljava/io/InputStream;)V
invokevirtual java.security.cert.CertificateFactory.generateCRL:(Ljava/io/InputStream;)Ljava/security/cert/CRL;
checkcast java.security.cert.X509CRL
astore 13
start local 13 25: aload 17
invokevirtual java.io.InputStream.close:()V
26: getstatic org.bouncycastle.pkix.jcajce.X509RevocationChecker.LOG:Ljava/util/logging/Logger;
getstatic java.util.logging.Level.INFO:Ljava/util/logging/Level;
new java.lang.StringBuilder
dup
ldc "downloaded CRL from CrlDP "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 15
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
ldc " for issuer \""
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
aload 1
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
ldc "\""
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokevirtual java.util.logging.Logger.log:(Ljava/util/logging/Level;Ljava/lang/String;)V
27: getstatic org.bouncycastle.pkix.jcajce.X509RevocationChecker.crlCache:Ljava/util/Map;
aload 12
new java.lang.ref.WeakReference
dup
aload 13
invokespecial java.lang.ref.WeakReference.<init>:(Ljava/lang/Object;)V
invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
pop
28: aload 13
29: areturn
end local 17 end local 16 end local 13 30: StackMap locals: org.bouncycastle.pkix.jcajce.X509RevocationChecker javax.security.auth.x500.X500Principal java.util.Date org.bouncycastle.asn1.ASN1Primitive org.bouncycastle.jcajce.util.JcaJceHelper org.bouncycastle.asn1.x509.CRLDistPoint org.bouncycastle.asn1.x509.DistributionPoint[] int org.bouncycastle.asn1.x509.DistributionPoint org.bouncycastle.asn1.x509.DistributionPointName org.bouncycastle.asn1.x509.GeneralName[] int org.bouncycastle.asn1.x509.GeneralName top java.lang.ref.WeakReference java.net.URL
StackMap stack: java.lang.Exception
astore 16
start local 16 31: getstatic org.bouncycastle.pkix.jcajce.X509RevocationChecker.LOG:Ljava/util/logging/Logger;
getstatic java.util.logging.Level.FINE:Ljava/util/logging/Level;
invokevirtual java.util.logging.Logger.isLoggable:(Ljava/util/logging/Level;)Z
ifeq 34
32: getstatic org.bouncycastle.pkix.jcajce.X509RevocationChecker.LOG:Ljava/util/logging/Logger;
getstatic java.util.logging.Level.FINE:Ljava/util/logging/Level;
new java.lang.StringBuilder
dup
ldc "CrlDP "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 15
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
ldc " ignored: "
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
aload 16
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;
aload 16
invokevirtual java.util.logging.Logger.log:(Ljava/util/logging/Level;Ljava/lang/String;Ljava/lang/Throwable;)V
33: goto 35
34: StackMap locals: java.lang.Exception
StackMap stack:
getstatic org.bouncycastle.pkix.jcajce.X509RevocationChecker.LOG:Ljava/util/logging/Logger;
getstatic java.util.logging.Level.INFO:Ljava/util/logging/Level;
new java.lang.StringBuilder
dup
ldc "CrlDP "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 15
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
ldc " ignored: "
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
aload 16
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 java.util.logging.Logger.log:(Ljava/util/logging/Level;Ljava/lang/String;)V
end local 16 end local 15 end local 14 end local 12 35: StackMap locals: org.bouncycastle.pkix.jcajce.X509RevocationChecker javax.security.auth.x500.X500Principal java.util.Date org.bouncycastle.asn1.ASN1Primitive org.bouncycastle.jcajce.util.JcaJceHelper org.bouncycastle.asn1.x509.CRLDistPoint org.bouncycastle.asn1.x509.DistributionPoint[] int org.bouncycastle.asn1.x509.DistributionPoint org.bouncycastle.asn1.x509.DistributionPointName org.bouncycastle.asn1.x509.GeneralName[] int
StackMap stack:
iinc 11 1
StackMap locals:
StackMap stack:
36: iload 11
aload 10
arraylength
if_icmpne 10
end local 11 end local 10 end local 9 end local 8 37: StackMap locals: org.bouncycastle.pkix.jcajce.X509RevocationChecker javax.security.auth.x500.X500Principal java.util.Date org.bouncycastle.asn1.ASN1Primitive org.bouncycastle.jcajce.util.JcaJceHelper org.bouncycastle.asn1.x509.CRLDistPoint org.bouncycastle.asn1.x509.DistributionPoint[] int
StackMap stack:
iinc 7 1
StackMap locals:
StackMap stack:
38: iload 7
aload 6
arraylength
if_icmpne 4
end local 7 39: aconst_null
areturn
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 40 0 this Lorg/bouncycastle/pkix/jcajce/X509RevocationChecker;
0 40 1 issuer Ljavax/security/auth/x500/X500Principal;
0 40 2 currentDate Ljava/util/Date;
0 40 3 crlDpPrimitive Lorg/bouncycastle/asn1/ASN1Primitive;
0 40 4 helper Lorg/bouncycastle/jcajce/util/JcaJceHelper;
1 40 5 crlDp Lorg/bouncycastle/asn1/x509/CRLDistPoint;
2 40 6 points [Lorg/bouncycastle/asn1/x509/DistributionPoint;
3 39 7 i I
5 37 8 dp Lorg/bouncycastle/asn1/x509/DistributionPoint;
6 37 9 dpn Lorg/bouncycastle/asn1/x509/DistributionPointName;
8 37 10 names [Lorg/bouncycastle/asn1/x509/GeneralName;
9 37 11 n I
11 35 12 name Lorg/bouncycastle/asn1/x509/GeneralName;
15 20 13 crl Ljava/security/cert/X509CRL;
25 30 13 crl Ljava/security/cert/X509CRL;
13 35 14 crlRef Ljava/lang/ref/WeakReference<Ljava/security/cert/X509CRL;>;
21 35 15 url Ljava/net/URL;
23 30 16 certFact Ljava/security/cert/CertificateFactory;
24 30 17 urlStream Ljava/io/InputStream;
31 35 16 e Ljava/lang/Exception;
Exception table:
from to target type
21 29 30 Class java.lang.Exception
MethodParameters:
Name Flags
issuer
currentDate
crlDpPrimitive
helper
static java.util.List<org.bouncycastle.jcajce.PKIXCRLStore> getAdditionalStoresFromCRLDistributionPoint(org.bouncycastle.asn1.x509.CRLDistPoint, java.util.Map<org.bouncycastle.asn1.x509.GeneralName, org.bouncycastle.jcajce.PKIXCRLStore>);
descriptor: (Lorg/bouncycastle/asn1/x509/CRLDistPoint;Ljava/util/Map;)Ljava/util/List;
flags: (0x0008) ACC_STATIC
Code:
stack=4, locals=9, args_size=2
start local 0 start local 1 0: aload 0
ifnull 28
1: aconst_null
astore 2
start local 2 2: aload 0
invokevirtual org.bouncycastle.asn1.x509.CRLDistPoint.getDistributionPoints:()[Lorg/bouncycastle/asn1/x509/DistributionPoint;
astore 2
3: goto 8
4: StackMap locals: org.bouncycastle.asn1.x509.CRLDistPoint java.util.Map org.bouncycastle.asn1.x509.DistributionPoint[]
StackMap stack: java.lang.Exception
astore 3
start local 3 5: new org.bouncycastle.pkix.jcajce.AnnotatedException
dup
6: ldc "could not read distribution points could not be read"
aload 3
7: invokespecial org.bouncycastle.pkix.jcajce.AnnotatedException.<init>:(Ljava/lang/String;Ljava/lang/Throwable;)V
athrow
end local 3 8: StackMap locals:
StackMap stack:
new java.util.ArrayList
dup
invokespecial java.util.ArrayList.<init>:()V
astore 3
start local 3 9: iconst_0
istore 4
start local 4 10: goto 26
11: StackMap locals: java.util.List int
StackMap stack:
aload 2
iload 4
aaload
invokevirtual org.bouncycastle.asn1.x509.DistributionPoint.getDistributionPoint:()Lorg/bouncycastle/asn1/x509/DistributionPointName;
astore 5
start local 5 12: aload 5
ifnull 25
13: aload 5
invokevirtual org.bouncycastle.asn1.x509.DistributionPointName.getType:()I
ifne 25
14: aload 5
invokevirtual org.bouncycastle.asn1.x509.DistributionPointName.getName:()Lorg/bouncycastle/asn1/ASN1Encodable;
15: invokestatic org.bouncycastle.asn1.x509.GeneralNames.getInstance:(Ljava/lang/Object;)Lorg/bouncycastle/asn1/x509/GeneralNames;
16: invokevirtual org.bouncycastle.asn1.x509.GeneralNames.getNames:()[Lorg/bouncycastle/asn1/x509/GeneralName;
17: astore 6
start local 6 18: iconst_0
istore 7
start local 7 19: goto 24
20: StackMap locals: org.bouncycastle.asn1.x509.DistributionPointName org.bouncycastle.asn1.x509.GeneralName[] int
StackMap stack:
aload 1
aload 6
iload 7
aaload
invokeinterface java.util.Map.get:(Ljava/lang/Object;)Ljava/lang/Object;
checkcast org.bouncycastle.jcajce.PKIXCRLStore
astore 8
start local 8 21: aload 8
ifnull 23
22: aload 3
aload 8
invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
pop
end local 8 23: StackMap locals:
StackMap stack:
iinc 7 1
StackMap locals:
StackMap stack:
24: iload 7
aload 6
arraylength
if_icmplt 20
end local 7 end local 6 end local 5 25: StackMap locals:
StackMap stack:
iinc 4 1
StackMap locals:
StackMap stack:
26: iload 4
aload 2
arraylength
if_icmplt 11
end local 4 27: aload 3
areturn
end local 3 end local 2 28: StackMap locals:
StackMap stack:
getstatic java.util.Collections.EMPTY_LIST:Ljava/util/List;
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 29 0 crldp Lorg/bouncycastle/asn1/x509/CRLDistPoint;
0 29 1 namedCRLStoreMap Ljava/util/Map<Lorg/bouncycastle/asn1/x509/GeneralName;Lorg/bouncycastle/jcajce/PKIXCRLStore;>;
2 28 2 dps [Lorg/bouncycastle/asn1/x509/DistributionPoint;
5 8 3 e Ljava/lang/Exception;
9 28 3 stores Ljava/util/List<Lorg/bouncycastle/jcajce/PKIXCRLStore;>;
10 27 4 i I
12 25 5 dpn Lorg/bouncycastle/asn1/x509/DistributionPointName;
18 25 6 genNames [Lorg/bouncycastle/asn1/x509/GeneralName;
19 25 7 j I
21 23 8 store Lorg/bouncycastle/jcajce/PKIXCRLStore;
Exception table:
from to target type
2 3 4 Class java.lang.Exception
Exceptions:
throws org.bouncycastle.pkix.jcajce.AnnotatedException
Signature: (Lorg/bouncycastle/asn1/x509/CRLDistPoint;Ljava/util/Map<Lorg/bouncycastle/asn1/x509/GeneralName;Lorg/bouncycastle/jcajce/PKIXCRLStore;>;)Ljava/util/List<Lorg/bouncycastle/jcajce/PKIXCRLStore;>;
MethodParameters:
Name Flags
crldp
namedCRLStoreMap
protected void checkCRLs(org.bouncycastle.jcajce.PKIXExtendedParameters, java.security.cert.X509Certificate, java.util.Date, java.security.cert.X509Certificate, java.security.PublicKey, java.util.List, org.bouncycastle.pkix.jcajce.PKIXJcaJceHelper);
descriptor: (Lorg/bouncycastle/jcajce/PKIXExtendedParameters;Ljava/security/cert/X509Certificate;Ljava/util/Date;Ljava/security/cert/X509Certificate;Ljava/security/PublicKey;Ljava/util/List;Lorg/bouncycastle/pkix/jcajce/PKIXJcaJceHelper;)V
flags: (0x0004) ACC_PROTECTED
Code:
stack=11, locals=18, 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: aconst_null
astore 8
start local 8 1: aconst_null
astore 9
start local 9 2: aload 2
getstatic org.bouncycastle.asn1.x509.Extension.cRLDistributionPoints:Lorg/bouncycastle/asn1/ASN1ObjectIdentifier;
invokestatic org.bouncycastle.pkix.jcajce.RevocationUtilities.getExtensionValue:(Ljava/security/cert/X509Extension;Lorg/bouncycastle/asn1/ASN1ObjectIdentifier;)Lorg/bouncycastle/asn1/ASN1Primitive;
invokestatic org.bouncycastle.asn1.x509.CRLDistPoint.getInstance:(Ljava/lang/Object;)Lorg/bouncycastle/asn1/x509/CRLDistPoint;
astore 9
3: goto 6
4: StackMap locals: org.bouncycastle.pkix.jcajce.X509RevocationChecker org.bouncycastle.jcajce.PKIXExtendedParameters java.security.cert.X509Certificate java.util.Date java.security.cert.X509Certificate java.security.PublicKey java.util.List org.bouncycastle.pkix.jcajce.PKIXJcaJceHelper org.bouncycastle.pkix.jcajce.AnnotatedException org.bouncycastle.asn1.x509.CRLDistPoint
StackMap stack: java.lang.Exception
astore 10
start local 10 5: new org.bouncycastle.pkix.jcajce.AnnotatedException
dup
ldc "cannot read CRL distribution point extension"
aload 10
invokespecial org.bouncycastle.pkix.jcajce.AnnotatedException.<init>:(Ljava/lang/String;Ljava/lang/Throwable;)V
athrow
end local 10 6: StackMap locals:
StackMap stack:
new org.bouncycastle.jcajce.PKIXExtendedParameters$Builder
dup
aload 1
invokespecial org.bouncycastle.jcajce.PKIXExtendedParameters$Builder.<init>:(Lorg/bouncycastle/jcajce/PKIXExtendedParameters;)V
astore 10
start local 10 7: aload 9
aload 1
invokevirtual org.bouncycastle.jcajce.PKIXExtendedParameters.getNamedCRLStoreMap:()Ljava/util/Map;
invokestatic org.bouncycastle.pkix.jcajce.X509RevocationChecker.getAdditionalStoresFromCRLDistributionPoint:(Lorg/bouncycastle/asn1/x509/CRLDistPoint;Ljava/util/Map;)Ljava/util/List;
astore 11
start local 11 8: aload 11
invokeinterface java.util.List.iterator:()Ljava/util/Iterator;
astore 12
start local 12 9: goto 11
10: StackMap locals: org.bouncycastle.jcajce.PKIXExtendedParameters$Builder java.util.List java.util.Iterator
StackMap stack:
aload 10
aload 12
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast org.bouncycastle.jcajce.PKIXCRLStore
invokevirtual org.bouncycastle.jcajce.PKIXExtendedParameters$Builder.addCRLStore:(Lorg/bouncycastle/jcajce/PKIXCRLStore;)Lorg/bouncycastle/jcajce/PKIXExtendedParameters$Builder;
pop
11: StackMap locals:
StackMap stack:
aload 12
invokeinterface java.util.Iterator.hasNext:()Z
ifne 10
end local 12 end local 11 12: goto 17
13: StackMap locals: org.bouncycastle.pkix.jcajce.X509RevocationChecker org.bouncycastle.jcajce.PKIXExtendedParameters java.security.cert.X509Certificate java.util.Date java.security.cert.X509Certificate java.security.PublicKey java.util.List org.bouncycastle.pkix.jcajce.PKIXJcaJceHelper org.bouncycastle.pkix.jcajce.AnnotatedException org.bouncycastle.asn1.x509.CRLDistPoint org.bouncycastle.jcajce.PKIXExtendedParameters$Builder
StackMap stack: org.bouncycastle.pkix.jcajce.AnnotatedException
astore 11
start local 11 14: new org.bouncycastle.pkix.jcajce.AnnotatedException
dup
15: ldc "no additional CRL locations could be decoded from CRL distribution point extension"
aload 11
16: invokespecial org.bouncycastle.pkix.jcajce.AnnotatedException.<init>:(Ljava/lang/String;Ljava/lang/Throwable;)V
athrow
end local 11 17: StackMap locals:
StackMap stack:
new org.bouncycastle.pkix.jcajce.CertStatus
dup
invokespecial org.bouncycastle.pkix.jcajce.CertStatus.<init>:()V
astore 11
start local 11 18: new org.bouncycastle.pkix.jcajce.ReasonsMask
dup
invokespecial org.bouncycastle.pkix.jcajce.ReasonsMask.<init>:()V
astore 12
start local 12 19: aload 10
invokevirtual org.bouncycastle.jcajce.PKIXExtendedParameters$Builder.build:()Lorg/bouncycastle/jcajce/PKIXExtendedParameters;
astore 13
start local 13 20: iconst_0
istore 14
start local 14 21: aload 9
ifnull 37
22: aconst_null
astore 15
start local 15 23: aload 9
invokevirtual org.bouncycastle.asn1.x509.CRLDistPoint.getDistributionPoints:()[Lorg/bouncycastle/asn1/x509/DistributionPoint;
astore 15
24: goto 27
25: StackMap locals: org.bouncycastle.pkix.jcajce.X509RevocationChecker org.bouncycastle.jcajce.PKIXExtendedParameters java.security.cert.X509Certificate java.util.Date java.security.cert.X509Certificate java.security.PublicKey java.util.List org.bouncycastle.pkix.jcajce.PKIXJcaJceHelper org.bouncycastle.pkix.jcajce.AnnotatedException org.bouncycastle.asn1.x509.CRLDistPoint org.bouncycastle.jcajce.PKIXExtendedParameters$Builder org.bouncycastle.pkix.jcajce.CertStatus org.bouncycastle.pkix.jcajce.ReasonsMask org.bouncycastle.jcajce.PKIXExtendedParameters int org.bouncycastle.asn1.x509.DistributionPoint[]
StackMap stack: java.lang.Exception
astore 16
start local 16 26: new org.bouncycastle.pkix.jcajce.AnnotatedException
dup
ldc "cannot read distribution points"
aload 16
invokespecial org.bouncycastle.pkix.jcajce.AnnotatedException.<init>:(Ljava/lang/String;Ljava/lang/Throwable;)V
athrow
end local 16 27: StackMap locals:
StackMap stack:
aload 15
ifnull 37
28: iconst_0
istore 16
start local 16 29: goto 36
30: StackMap locals: int
StackMap stack:
aload 15
iload 16
aaload
aload 13
aload 2
aload 3
aload 4
aload 5
aload 11
aload 12
aload 6
aload 7
invokestatic org.bouncycastle.pkix.jcajce.RFC3280CertPathUtilities.checkCRL:(Lorg/bouncycastle/asn1/x509/DistributionPoint;Lorg/bouncycastle/jcajce/PKIXExtendedParameters;Ljava/security/cert/X509Certificate;Ljava/util/Date;Ljava/security/cert/X509Certificate;Ljava/security/PublicKey;Lorg/bouncycastle/pkix/jcajce/CertStatus;Lorg/bouncycastle/pkix/jcajce/ReasonsMask;Ljava/util/List;Lorg/bouncycastle/pkix/jcajce/PKIXJcaJceHelper;)V
31: iconst_1
istore 14
32: goto 35
33: StackMap locals:
StackMap stack: org.bouncycastle.pkix.jcajce.AnnotatedException
astore 17
start local 17 34: aload 17
astore 8
end local 17 35: StackMap locals:
StackMap stack:
iinc 16 1
StackMap locals:
StackMap stack:
36: iload 16
aload 15
arraylength
if_icmpge 37
aload 11
invokevirtual org.bouncycastle.pkix.jcajce.CertStatus.getCertStatus:()I
bipush 11
if_icmpne 37
aload 12
invokevirtual org.bouncycastle.pkix.jcajce.ReasonsMask.isAllReasons:()Z
ifeq 30
end local 16 end local 15 37: StackMap locals:
StackMap stack:
aload 11
invokevirtual org.bouncycastle.pkix.jcajce.CertStatus.getCertStatus:()I
bipush 11
if_icmpne 50
aload 12
invokevirtual org.bouncycastle.pkix.jcajce.ReasonsMask.isAllReasons:()Z
ifne 50
38: aload 2
invokevirtual java.security.cert.X509Certificate.getIssuerX500Principal:()Ljavax/security/auth/x500/X500Principal;
astore 15
start local 15 39: new org.bouncycastle.asn1.x509.DistributionPoint
dup
new org.bouncycastle.asn1.x509.DistributionPointName
dup
iconst_0
new org.bouncycastle.asn1.x509.GeneralNames
dup
40: new org.bouncycastle.asn1.x509.GeneralName
dup
iconst_4
aload 15
invokevirtual javax.security.auth.x500.X500Principal.getEncoded:()[B
invokestatic org.bouncycastle.asn1.x500.X500Name.getInstance:(Ljava/lang/Object;)Lorg/bouncycastle/asn1/x500/X500Name;
invokespecial org.bouncycastle.asn1.x509.GeneralName.<init>:(ILorg/bouncycastle/asn1/ASN1Encodable;)V
invokespecial org.bouncycastle.asn1.x509.GeneralNames.<init>:(Lorg/bouncycastle/asn1/x509/GeneralName;)V
invokespecial org.bouncycastle.asn1.x509.DistributionPointName.<init>:(ILorg/bouncycastle/asn1/ASN1Encodable;)V
aconst_null
aconst_null
41: invokespecial org.bouncycastle.asn1.x509.DistributionPoint.<init>:(Lorg/bouncycastle/asn1/x509/DistributionPointName;Lorg/bouncycastle/asn1/x509/ReasonFlags;Lorg/bouncycastle/asn1/x509/GeneralNames;)V
astore 16
start local 16 42: aload 1
invokevirtual org.bouncycastle.jcajce.PKIXExtendedParameters.clone:()Ljava/lang/Object;
checkcast org.bouncycastle.jcajce.PKIXExtendedParameters
astore 17
start local 17 43: aload 16
aload 17
aload 2
aload 3
aload 4
aload 5
aload 11
aload 12
44: aload 6
aload 7
45: invokestatic org.bouncycastle.pkix.jcajce.RFC3280CertPathUtilities.checkCRL:(Lorg/bouncycastle/asn1/x509/DistributionPoint;Lorg/bouncycastle/jcajce/PKIXExtendedParameters;Ljava/security/cert/X509Certificate;Ljava/util/Date;Ljava/security/cert/X509Certificate;Ljava/security/PublicKey;Lorg/bouncycastle/pkix/jcajce/CertStatus;Lorg/bouncycastle/pkix/jcajce/ReasonsMask;Ljava/util/List;Lorg/bouncycastle/pkix/jcajce/PKIXJcaJceHelper;)V
46: iconst_1
istore 14
end local 17 end local 16 end local 15 47: goto 50
48: StackMap locals:
StackMap stack: org.bouncycastle.pkix.jcajce.AnnotatedException
astore 15
start local 15 49: aload 15
astore 8
end local 15 50: StackMap locals:
StackMap stack:
iload 14
ifne 54
51: aload 8
instanceof org.bouncycastle.pkix.jcajce.AnnotatedException
ifeq 53
52: new org.bouncycastle.pkix.jcajce.CRLNotFoundException
dup
ldc "no valid CRL found"
aload 8
invokespecial org.bouncycastle.pkix.jcajce.CRLNotFoundException.<init>:(Ljava/lang/String;Ljava/lang/Throwable;)V
athrow
53: StackMap locals:
StackMap stack:
new org.bouncycastle.pkix.jcajce.CRLNotFoundException
dup
ldc "no valid CRL found"
invokespecial org.bouncycastle.pkix.jcajce.CRLNotFoundException.<init>:(Ljava/lang/String;)V
athrow
54: StackMap locals:
StackMap stack:
aload 11
invokevirtual org.bouncycastle.pkix.jcajce.CertStatus.getCertStatus:()I
bipush 11
if_icmpeq 62
55: new java.text.SimpleDateFormat
dup
ldc "yyyy-MM-dd HH:mm:ss Z"
invokespecial java.text.SimpleDateFormat.<init>:(Ljava/lang/String;)V
astore 15
start local 15 56: aload 15
ldc "UTC"
invokestatic java.util.TimeZone.getTimeZone:(Ljava/lang/String;)Ljava/util/TimeZone;
invokevirtual java.text.SimpleDateFormat.setTimeZone:(Ljava/util/TimeZone;)V
57: new java.lang.StringBuilder
dup
ldc "certificate [issuer=\""
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 2
invokevirtual java.security.cert.X509Certificate.getIssuerX500Principal:()Ljavax/security/auth/x500/X500Principal;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
ldc "\",serialNumber="
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
58: aload 2
invokevirtual java.security.cert.X509Certificate.getSerialNumber:()Ljava/math/BigInteger;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
ldc ",subject=\""
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
aload 2
invokevirtual java.security.cert.X509Certificate.getSubjectX500Principal:()Ljavax/security/auth/x500/X500Principal;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
ldc "\"] revoked after "
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
aload 15
aload 11
invokevirtual org.bouncycastle.pkix.jcajce.CertStatus.getRevocationDate:()Ljava/util/Date;
invokevirtual java.text.SimpleDateFormat.format:(Ljava/util/Date;)Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
59: invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
astore 16
start local 16 60: new java.lang.StringBuilder
dup
aload 16
invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
ldc ", reason: "
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
getstatic org.bouncycastle.pkix.jcajce.X509RevocationChecker.crlReasons:[Ljava/lang/String;
aload 11
invokevirtual org.bouncycastle.pkix.jcajce.CertStatus.getCertStatus:()I
aaload
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
astore 16
61: new org.bouncycastle.pkix.jcajce.AnnotatedException
dup
aload 16
invokespecial org.bouncycastle.pkix.jcajce.AnnotatedException.<init>:(Ljava/lang/String;)V
athrow
end local 16 end local 15 62: StackMap locals:
StackMap stack:
aload 12
invokevirtual org.bouncycastle.pkix.jcajce.ReasonsMask.isAllReasons:()Z
ifne 64
aload 11
invokevirtual org.bouncycastle.pkix.jcajce.CertStatus.getCertStatus:()I
bipush 11
if_icmpne 64
63: aload 11
bipush 12
invokevirtual org.bouncycastle.pkix.jcajce.CertStatus.setCertStatus:(I)V
64: StackMap locals:
StackMap stack:
aload 11
invokevirtual org.bouncycastle.pkix.jcajce.CertStatus.getCertStatus:()I
bipush 12
if_icmpne 66
65: new org.bouncycastle.pkix.jcajce.AnnotatedException
dup
ldc "certificate status could not be determined"
invokespecial org.bouncycastle.pkix.jcajce.AnnotatedException.<init>:(Ljava/lang/String;)V
athrow
66: StackMap locals:
StackMap stack:
return
end local 14 end local 13 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 67 0 this Lorg/bouncycastle/pkix/jcajce/X509RevocationChecker;
0 67 1 paramsPKIX Lorg/bouncycastle/jcajce/PKIXExtendedParameters;
0 67 2 cert Ljava/security/cert/X509Certificate;
0 67 3 validDate Ljava/util/Date;
0 67 4 sign Ljava/security/cert/X509Certificate;
0 67 5 workingPublicKey Ljava/security/PublicKey;
0 67 6 certPathCerts Ljava/util/List;
0 67 7 helper Lorg/bouncycastle/pkix/jcajce/PKIXJcaJceHelper;
1 67 8 lastException Lorg/bouncycastle/pkix/jcajce/AnnotatedException;
2 67 9 crldp Lorg/bouncycastle/asn1/x509/CRLDistPoint;
5 6 10 e Ljava/lang/Exception;
7 67 10 paramsBldr Lorg/bouncycastle/jcajce/PKIXExtendedParameters$Builder;
8 12 11 extras Ljava/util/List;
9 12 12 it Ljava/util/Iterator;
14 17 11 e Lorg/bouncycastle/pkix/jcajce/AnnotatedException;
18 67 11 certStatus Lorg/bouncycastle/pkix/jcajce/CertStatus;
19 67 12 reasonsMask Lorg/bouncycastle/pkix/jcajce/ReasonsMask;
20 67 13 finalParams Lorg/bouncycastle/jcajce/PKIXExtendedParameters;
21 67 14 validCrlFound Z
23 37 15 dps [Lorg/bouncycastle/asn1/x509/DistributionPoint;
26 27 16 e Ljava/lang/Exception;
29 37 16 i I
34 35 17 e Lorg/bouncycastle/pkix/jcajce/AnnotatedException;
39 47 15 issuer Ljavax/security/auth/x500/X500Principal;
42 47 16 dp Lorg/bouncycastle/asn1/x509/DistributionPoint;
43 47 17 paramsPKIXClone Lorg/bouncycastle/jcajce/PKIXExtendedParameters;
49 50 15 e Lorg/bouncycastle/pkix/jcajce/AnnotatedException;
56 62 15 df Ljava/text/SimpleDateFormat;
60 62 16 message Ljava/lang/String;
Exception table:
from to target type
2 3 4 Class java.lang.Exception
7 12 13 Class org.bouncycastle.pkix.jcajce.AnnotatedException
23 24 25 Class java.lang.Exception
30 32 33 Class org.bouncycastle.pkix.jcajce.AnnotatedException
38 47 48 Class org.bouncycastle.pkix.jcajce.AnnotatedException
Exceptions:
throws org.bouncycastle.pkix.jcajce.AnnotatedException, java.security.cert.CertPathValidatorException
MethodParameters:
Name Flags
paramsPKIX
cert
validDate
sign
workingPublicKey
certPathCerts
helper
public java.lang.Object clone();
descriptor: ()Ljava/lang/Object;
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/bouncycastle/pkix/jcajce/X509RevocationChecker;
}
SourceFile: "X509RevocationChecker.java"
NestMembers:
org.bouncycastle.pkix.jcajce.X509RevocationChecker$1 org.bouncycastle.pkix.jcajce.X509RevocationChecker$2 org.bouncycastle.pkix.jcajce.X509RevocationChecker$Builder org.bouncycastle.pkix.jcajce.X509RevocationChecker$LocalCRLStore
InnerClasses:
public Builder = org.bouncycastle.jcajce.PKIXExtendedParameters$Builder of org.bouncycastle.jcajce.PKIXExtendedParameters
org.bouncycastle.pkix.jcajce.X509RevocationChecker$1
org.bouncycastle.pkix.jcajce.X509RevocationChecker$2
public Builder = org.bouncycastle.pkix.jcajce.X509RevocationChecker$Builder of org.bouncycastle.pkix.jcajce.X509RevocationChecker
private LocalCRLStore = org.bouncycastle.pkix.jcajce.X509RevocationChecker$LocalCRLStore of org.bouncycastle.pkix.jcajce.X509RevocationChecker