class sun.security.provider.certpath.CrlRevocationChecker extends java.security.cert.PKIXCertPathChecker
minor version: 0
major version: 59
flags: flags: (0x0020) ACC_SUPER
this_class: sun.security.provider.certpath.CrlRevocationChecker
super_class: java.security.cert.PKIXCertPathChecker
{
private static final sun.security.util.Debug debug;
descriptor: Lsun/security/util/Debug;
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
private final java.security.cert.TrustAnchor mAnchor;
descriptor: Ljava/security/cert/TrustAnchor;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
private final java.util.List<java.security.cert.CertStore> mStores;
descriptor: Ljava/util/List;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
Signature: Ljava/util/List<Ljava/security/cert/CertStore;>;
private final java.lang.String mSigProvider;
descriptor: Ljava/lang/String;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
private final java.util.Date mCurrentTime;
descriptor: Ljava/util/Date;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
private java.security.PublicKey mPrevPubKey;
descriptor: Ljava/security/PublicKey;
flags: (0x0002) ACC_PRIVATE
private boolean mCRLSignFlag;
descriptor: Z
flags: (0x0002) ACC_PRIVATE
private java.util.HashSet<java.security.cert.X509CRL> mPossibleCRLs;
descriptor: Ljava/util/HashSet;
flags: (0x0002) ACC_PRIVATE
Signature: Ljava/util/HashSet<Ljava/security/cert/X509CRL;>;
private java.util.HashSet<java.security.cert.X509CRL> mApprovedCRLs;
descriptor: Ljava/util/HashSet;
flags: (0x0002) ACC_PRIVATE
Signature: Ljava/util/HashSet<Ljava/security/cert/X509CRL;>;
private final java.security.cert.PKIXParameters mParams;
descriptor: Ljava/security/cert/PKIXParameters;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
private static final boolean[] mCrlSignUsage;
descriptor: [Z
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
private static final boolean[] ALL_REASONS;
descriptor: [Z
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
private boolean mOnlyEECert;
descriptor: Z
flags: (0x0002) ACC_PRIVATE
private static final long MAX_CLOCK_SKEW;
descriptor: J
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: 900000
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.CrlRevocationChecker.debug:Lsun/security/util/Debug;
1: bipush 7
newarray 4
dup
bipush 6
iconst_1
bastore
2: putstatic sun.security.provider.certpath.CrlRevocationChecker.mCrlSignUsage:[Z
3: 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
4: putstatic sun.security.provider.certpath.CrlRevocationChecker.ALL_REASONS:[Z
5: return
LocalVariableTable:
Start End Slot Name Signature
void <init>(java.security.cert.TrustAnchor, java.security.cert.PKIXParameters);
descriptor: (Ljava/security/cert/TrustAnchor;Ljava/security/cert/PKIXParameters;)V
flags: (0x0000)
Code:
stack=4, locals=3, args_size=3
start local 0 start local 1 start local 2 0: aload 0
aload 1
aload 2
aconst_null
invokespecial sun.security.provider.certpath.CrlRevocationChecker.<init>:(Ljava/security/cert/TrustAnchor;Ljava/security/cert/PKIXParameters;Ljava/util/Collection;)V
1: return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lsun/security/provider/certpath/CrlRevocationChecker;
0 2 1 anchor Ljava/security/cert/TrustAnchor;
0 2 2 params Ljava/security/cert/PKIXParameters;
Exceptions:
throws java.security.cert.CertPathValidatorException
MethodParameters:
Name Flags
anchor
params
void <init>(java.security.cert.TrustAnchor, java.security.cert.PKIXParameters, java.util.Collection<java.security.cert.X509Certificate>);
descriptor: (Ljava/security/cert/TrustAnchor;Ljava/security/cert/PKIXParameters;Ljava/util/Collection;)V
flags: (0x0000)
Code:
stack=5, locals=4, args_size=4
start local 0 start local 1 start local 2 start local 3 0: aload 0
aload 1
aload 2
aload 3
iconst_0
invokespecial sun.security.provider.certpath.CrlRevocationChecker.<init>:(Ljava/security/cert/TrustAnchor;Ljava/security/cert/PKIXParameters;Ljava/util/Collection;Z)V
1: return
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lsun/security/provider/certpath/CrlRevocationChecker;
0 2 1 anchor Ljava/security/cert/TrustAnchor;
0 2 2 params Ljava/security/cert/PKIXParameters;
0 2 3 certs Ljava/util/Collection<Ljava/security/cert/X509Certificate;>;
Exceptions:
throws java.security.cert.CertPathValidatorException
Signature: (Ljava/security/cert/TrustAnchor;Ljava/security/cert/PKIXParameters;Ljava/util/Collection<Ljava/security/cert/X509Certificate;>;)V
MethodParameters:
Name Flags
anchor
params
certs
void <init>(java.security.cert.TrustAnchor, java.security.cert.PKIXParameters, java.util.Collection<java.security.cert.X509Certificate>, );
descriptor: (Ljava/security/cert/TrustAnchor;Ljava/security/cert/PKIXParameters;Ljava/util/Collection;Z)V
flags: (0x0000)
Code:
stack=5, locals=6, args_size=5
start local 0 start local 1 start local 2 start local 3 start local 4 0: aload 0
invokespecial java.security.cert.PKIXCertPathChecker.<init>:()V
1: aload 0
iconst_0
putfield sun.security.provider.certpath.CrlRevocationChecker.mOnlyEECert:Z
2: aload 0
aload 1
putfield sun.security.provider.certpath.CrlRevocationChecker.mAnchor:Ljava/security/cert/TrustAnchor;
3: aload 0
aload 2
putfield sun.security.provider.certpath.CrlRevocationChecker.mParams:Ljava/security/cert/PKIXParameters;
4: aload 0
new java.util.ArrayList
dup
aload 2
invokevirtual java.security.cert.PKIXParameters.getCertStores:()Ljava/util/List;
invokespecial java.util.ArrayList.<init>:(Ljava/util/Collection;)V
putfield sun.security.provider.certpath.CrlRevocationChecker.mStores:Ljava/util/List;
5: aload 0
aload 2
invokevirtual java.security.cert.PKIXParameters.getSigProvider:()Ljava/lang/String;
putfield sun.security.provider.certpath.CrlRevocationChecker.mSigProvider:Ljava/lang/String;
6: aload 3
ifnull 16
7: aload 0
getfield sun.security.provider.certpath.CrlRevocationChecker.mStores:Ljava/util/List;
ldc "Collection"
8: new java.security.cert.CollectionCertStoreParameters
dup
aload 3
invokespecial java.security.cert.CollectionCertStoreParameters.<init>:(Ljava/util/Collection;)V
9: 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
10: goto 16
StackMap locals: sun.security.provider.certpath.CrlRevocationChecker java.security.cert.TrustAnchor java.security.cert.PKIXParameters java.util.Collection int
StackMap stack: java.lang.Exception
11: astore 5
start local 5 12: getstatic sun.security.provider.certpath.CrlRevocationChecker.debug:Lsun/security/util/Debug;
ifnull 16
13: getstatic sun.security.provider.certpath.CrlRevocationChecker.debug:Lsun/security/util/Debug;
new java.lang.StringBuilder
dup
ldc "CrlRevocationChecker: error creating Collection CertStore: "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
14: aload 5
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
15: invokevirtual sun.security.util.Debug.println:(Ljava/lang/String;)V
end local 5 16: StackMap locals:
StackMap stack:
aload 2
invokevirtual java.security.cert.PKIXParameters.getDate:()Ljava/util/Date;
astore 5
start local 5 17: aload 0
aload 5
ifnull 18
aload 5
goto 19
StackMap locals: sun.security.provider.certpath.CrlRevocationChecker java.security.cert.TrustAnchor java.security.cert.PKIXParameters java.util.Collection int java.util.Date
StackMap stack: sun.security.provider.certpath.CrlRevocationChecker
18: new java.util.Date
dup
invokespecial java.util.Date.<init>:()V
StackMap locals: sun.security.provider.certpath.CrlRevocationChecker java.security.cert.TrustAnchor java.security.cert.PKIXParameters java.util.Collection int java.util.Date
StackMap stack: sun.security.provider.certpath.CrlRevocationChecker java.util.Date
19: putfield sun.security.provider.certpath.CrlRevocationChecker.mCurrentTime:Ljava/util/Date;
20: aload 0
iload 4
putfield sun.security.provider.certpath.CrlRevocationChecker.mOnlyEECert:Z
21: aload 0
iconst_0
invokevirtual sun.security.provider.certpath.CrlRevocationChecker.init:(Z)V
22: 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 23 0 this Lsun/security/provider/certpath/CrlRevocationChecker;
0 23 1 anchor Ljava/security/cert/TrustAnchor;
0 23 2 params Ljava/security/cert/PKIXParameters;
0 23 3 certs Ljava/util/Collection<Ljava/security/cert/X509Certificate;>;
0 23 4 onlyEECert Z
12 16 5 e Ljava/lang/Exception;
17 23 5 testDate Ljava/util/Date;
Exception table:
from to target type
7 10 11 Class java.lang.Exception
Exceptions:
throws java.security.cert.CertPathValidatorException
Signature: (Ljava/security/cert/TrustAnchor;Ljava/security/cert/PKIXParameters;Ljava/util/Collection<Ljava/security/cert/X509Certificate;>;Z)V
MethodParameters:
Name Flags
anchor
params
certs
onlyEECert
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
ifne 10
1: aload 0
getfield sun.security.provider.certpath.CrlRevocationChecker.mAnchor:Ljava/security/cert/TrustAnchor;
ifnull 7
2: aload 0
getfield sun.security.provider.certpath.CrlRevocationChecker.mAnchor:Ljava/security/cert/TrustAnchor;
invokevirtual java.security.cert.TrustAnchor.getCAPublicKey:()Ljava/security/PublicKey;
ifnull 5
3: aload 0
aload 0
getfield sun.security.provider.certpath.CrlRevocationChecker.mAnchor:Ljava/security/cert/TrustAnchor;
invokevirtual java.security.cert.TrustAnchor.getCAPublicKey:()Ljava/security/PublicKey;
putfield sun.security.provider.certpath.CrlRevocationChecker.mPrevPubKey:Ljava/security/PublicKey;
4: goto 8
5: StackMap locals:
StackMap stack:
aload 0
aload 0
getfield sun.security.provider.certpath.CrlRevocationChecker.mAnchor:Ljava/security/cert/TrustAnchor;
invokevirtual java.security.cert.TrustAnchor.getTrustedCert:()Ljava/security/cert/X509Certificate;
invokevirtual java.security.cert.X509Certificate.getPublicKey:()Ljava/security/PublicKey;
putfield sun.security.provider.certpath.CrlRevocationChecker.mPrevPubKey:Ljava/security/PublicKey;
6: goto 8
7: StackMap locals:
StackMap stack:
aload 0
aconst_null
putfield sun.security.provider.certpath.CrlRevocationChecker.mPrevPubKey:Ljava/security/PublicKey;
8: StackMap locals:
StackMap stack:
aload 0
iconst_1
putfield sun.security.provider.certpath.CrlRevocationChecker.mCRLSignFlag:Z
9: goto 11
10: StackMap locals:
StackMap stack:
new java.security.cert.CertPathValidatorException
dup
ldc "forward checking not supported"
invokespecial java.security.cert.CertPathValidatorException.<init>:(Ljava/lang/String;)V
athrow
11: StackMap locals:
StackMap stack:
return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 12 0 this Lsun/security/provider/certpath/CrlRevocationChecker;
0 12 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/CrlRevocationChecker;
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/CrlRevocationChecker;
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=5, locals=5, 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
aload 3
aload 0
getfield sun.security.provider.certpath.CrlRevocationChecker.mPrevPubKey:Ljava/security/PublicKey;
aload 0
getfield sun.security.provider.certpath.CrlRevocationChecker.mCRLSignFlag:Z
iconst_1
invokevirtual sun.security.provider.certpath.CrlRevocationChecker.verifyRevocationStatus:(Ljava/security/cert/X509Certificate;Ljava/security/PublicKey;ZZ)V
2: aload 3
invokevirtual java.security.cert.X509Certificate.getPublicKey:()Ljava/security/PublicKey;
astore 4
start local 4 3: aload 4
instanceof java.security.interfaces.DSAPublicKey
ifeq 6
4: aload 4
checkcast java.security.interfaces.DSAPublicKey
invokeinterface java.security.interfaces.DSAPublicKey.getParams:()Ljava/security/interfaces/DSAParams;
ifnonnull 6
5: aload 4
aload 0
getfield sun.security.provider.certpath.CrlRevocationChecker.mPrevPubKey:Ljava/security/PublicKey;
invokestatic sun.security.provider.certpath.BasicChecker.makeInheritedParamsKey:(Ljava/security/PublicKey;Ljava/security/PublicKey;)Ljava/security/PublicKey;
astore 4
6: StackMap locals: java.security.cert.X509Certificate java.security.PublicKey
StackMap stack:
aload 0
aload 4
putfield sun.security.provider.certpath.CrlRevocationChecker.mPrevPubKey:Ljava/security/PublicKey;
7: aload 0
aload 3
invokestatic sun.security.provider.certpath.CrlRevocationChecker.certCanSignCrl:(Ljava/security/cert/X509Certificate;)Z
putfield sun.security.provider.certpath.CrlRevocationChecker.mCRLSignFlag:Z
8: return
end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 9 0 this Lsun/security/provider/certpath/CrlRevocationChecker;
0 9 1 cert Ljava/security/cert/Certificate;
0 9 2 unresolvedCritExts Ljava/util/Collection<Ljava/lang/String;>;
1 9 3 currCert Ljava/security/cert/X509Certificate;
3 9 4 cKey Ljava/security/PublicKey;
Exceptions:
throws java.security.cert.CertPathValidatorException
Signature: (Ljava/security/cert/Certificate;Ljava/util/Collection<Ljava/lang/String;>;)V
MethodParameters:
Name Flags
cert
unresolvedCritExts
public boolean check(java.security.cert.X509Certificate, java.security.PublicKey, boolean);
descriptor: (Ljava/security/cert/X509Certificate;Ljava/security/PublicKey;Z)Z
flags: (0x0001) ACC_PUBLIC
Code:
stack=5, locals=4, args_size=4
start local 0 start local 1 start local 2 start local 3 0: aload 0
aload 1
aload 2
iload 3
iconst_1
invokevirtual sun.security.provider.certpath.CrlRevocationChecker.verifyRevocationStatus:(Ljava/security/cert/X509Certificate;Ljava/security/PublicKey;ZZ)V
1: aload 1
invokestatic sun.security.provider.certpath.CrlRevocationChecker.certCanSignCrl:(Ljava/security/cert/X509Certificate;)Z
ireturn
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lsun/security/provider/certpath/CrlRevocationChecker;
0 2 1 currCert Ljava/security/cert/X509Certificate;
0 2 2 prevKey Ljava/security/PublicKey;
0 2 3 signFlag Z
Exceptions:
throws java.security.cert.CertPathValidatorException
MethodParameters:
Name Flags
currCert
prevKey
signFlag
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 currCert Ljava/security/cert/X509Certificate;
1 4 1 kbools [Z
MethodParameters:
Name Flags
currCert
private void verifyRevocationStatus(java.security.cert.X509Certificate, java.security.PublicKey, boolean, boolean);
descriptor: (Ljava/security/cert/X509Certificate;Ljava/security/PublicKey;ZZ)V
flags: (0x0002) ACC_PRIVATE
Code:
stack=7, locals=5, args_size=5
start local 0 start local 1 start local 2 start local 3 start local 4 0: aload 0
aload 1
aload 2
iload 3
1: iload 4
aconst_null
aload 0
getfield sun.security.provider.certpath.CrlRevocationChecker.mParams:Ljava/security/cert/PKIXParameters;
invokevirtual java.security.cert.PKIXParameters.getTrustAnchors:()Ljava/util/Set;
2: invokevirtual sun.security.provider.certpath.CrlRevocationChecker.verifyRevocationStatus:(Ljava/security/cert/X509Certificate;Ljava/security/PublicKey;ZZLjava/util/Set;Ljava/util/Set;)V
3: return
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/CrlRevocationChecker;
0 4 1 currCert Ljava/security/cert/X509Certificate;
0 4 2 prevKey Ljava/security/PublicKey;
0 4 3 signFlag Z
0 4 4 allowSeparateKey Z
Exceptions:
throws java.security.cert.CertPathValidatorException
MethodParameters:
Name Flags
currCert
prevKey
signFlag
allowSeparateKey
private void verifyRevocationStatus(java.security.cert.X509Certificate, java.security.PublicKey, boolean, boolean, java.util.Set<java.security.cert.X509Certificate>, java.util.Set<java.security.cert.TrustAnchor>);
descriptor: (Ljava/security/cert/X509Certificate;Ljava/security/PublicKey;ZZLjava/util/Set;Ljava/util/Set;)V
flags: (0x0002) ACC_PRIVATE
Code:
stack=10, 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: ldc "revocation status"
astore 7
start local 7 1: getstatic sun.security.provider.certpath.CrlRevocationChecker.debug:Lsun/security/util/Debug;
ifnull 5
2: getstatic sun.security.provider.certpath.CrlRevocationChecker.debug:Lsun/security/util/Debug;
new java.lang.StringBuilder
dup
ldc "CrlRevocationChecker.verifyRevocationStatus() ---checking "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
3: aload 7
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
ldc "..."
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)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: java.lang.String
StackMap stack:
aload 0
getfield sun.security.provider.certpath.CrlRevocationChecker.mOnlyEECert:Z
ifeq 9
aload 1
invokevirtual java.security.cert.X509Certificate.getBasicConstraints:()I
iconst_m1
if_icmpeq 9
6: getstatic sun.security.provider.certpath.CrlRevocationChecker.debug:Lsun/security/util/Debug;
ifnull 8
7: getstatic sun.security.provider.certpath.CrlRevocationChecker.debug:Lsun/security/util/Debug;
ldc "Skipping revocation check, not end entity cert"
invokevirtual sun.security.util.Debug.println:(Ljava/lang/String;)V
8: StackMap locals:
StackMap stack:
return
9: StackMap locals:
StackMap stack:
aload 5
ifnull 15
aload 5
aload 1
invokeinterface java.util.Set.contains:(Ljava/lang/Object;)Z
ifeq 15
10: getstatic sun.security.provider.certpath.CrlRevocationChecker.debug:Lsun/security/util/Debug;
ifnull 12
11: getstatic sun.security.provider.certpath.CrlRevocationChecker.debug:Lsun/security/util/Debug;
ldc "CrlRevocationChecker.verifyRevocationStatus() circular dependency"
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"
14: invokespecial java.security.cert.CertPathValidatorException.<init>:(Ljava/lang/String;)V
athrow
15: StackMap locals:
StackMap stack:
aload 0
new java.util.HashSet
dup
invokespecial java.util.HashSet.<init>:()V
putfield sun.security.provider.certpath.CrlRevocationChecker.mPossibleCRLs:Ljava/util/HashSet;
16: aload 0
new java.util.HashSet
dup
invokespecial java.util.HashSet.<init>:()V
putfield sun.security.provider.certpath.CrlRevocationChecker.mApprovedCRLs:Ljava/util/HashSet;
17: bipush 9
newarray 4
astore 8
start local 8 18: new java.security.cert.X509CRLSelector
dup
invokespecial java.security.cert.X509CRLSelector.<init>:()V
astore 9
start local 9 19: aload 9
aload 1
invokevirtual java.security.cert.X509CRLSelector.setCertificateChecking:(Ljava/security/cert/X509Certificate;)V
20: aload 9
aload 0
getfield sun.security.provider.certpath.CrlRevocationChecker.mCurrentTime:Ljava/util/Date;
ldc 900000
invokestatic sun.security.provider.certpath.CertPathHelper.setDateAndTime:(Ljava/security/cert/X509CRLSelector;Ljava/util/Date;J)V
21: aload 0
getfield sun.security.provider.certpath.CrlRevocationChecker.mStores:Ljava/util/List;
invokeinterface java.util.List.iterator:()Ljava/util/Iterator;
astore 11
goto 27
StackMap locals: sun.security.provider.certpath.CrlRevocationChecker java.security.cert.X509Certificate java.security.PublicKey int int java.util.Set java.util.Set java.lang.String boolean[] java.security.cert.X509CRLSelector top java.util.Iterator
StackMap stack:
22: aload 11
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast java.security.cert.CertStore
astore 10
start local 10 23: aload 10
aload 9
invokevirtual java.security.cert.CertStore.getCRLs:(Ljava/security/cert/CRLSelector;)Ljava/util/Collection;
invokeinterface java.util.Collection.iterator:()Ljava/util/Iterator;
astore 13
goto 26
StackMap locals: sun.security.provider.certpath.CrlRevocationChecker java.security.cert.X509Certificate java.security.PublicKey int int java.util.Set java.util.Set java.lang.String boolean[] java.security.cert.X509CRLSelector java.security.cert.CertStore java.util.Iterator top java.util.Iterator
StackMap stack:
24: aload 13
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast java.security.cert.CRL
astore 12
start local 12 25: aload 0
getfield sun.security.provider.certpath.CrlRevocationChecker.mPossibleCRLs:Ljava/util/HashSet;
aload 12
checkcast java.security.cert.X509CRL
invokevirtual java.util.HashSet.add:(Ljava/lang/Object;)Z
pop
end local 12 26: StackMap locals:
StackMap stack:
aload 13
invokeinterface java.util.Iterator.hasNext:()Z
ifne 24
end local 10 27: StackMap locals: sun.security.provider.certpath.CrlRevocationChecker java.security.cert.X509Certificate java.security.PublicKey int int java.util.Set java.util.Set java.lang.String boolean[] java.security.cert.X509CRLSelector top java.util.Iterator
StackMap stack:
aload 11
invokeinterface java.util.Iterator.hasNext:()Z
ifne 22
28: aload 0
getfield sun.security.provider.certpath.CrlRevocationChecker.mApprovedCRLs:Ljava/util/HashSet;
aload 9
iload 3
29: aload 2
aload 0
getfield sun.security.provider.certpath.CrlRevocationChecker.mSigProvider:Ljava/lang/String;
aload 0
getfield sun.security.provider.certpath.CrlRevocationChecker.mStores:Ljava/util/List;
aload 8
aload 6
30: aload 0
getfield sun.security.provider.certpath.CrlRevocationChecker.mParams:Ljava/security/cert/PKIXParameters;
invokevirtual java.security.cert.PKIXParameters.getDate:()Ljava/util/Date;
aconst_null
31: invokestatic sun.security.provider.certpath.DistributionPointFetcher.getCRLs:(Ljava/security/cert/X509CRLSelector;ZLjava/security/PublicKey;Ljava/lang/String;Ljava/util/List;[ZLjava/util/Set;Ljava/util/Date;Ljava/lang/String;)Ljava/util/Collection;
invokevirtual java.util.HashSet.addAll:(Ljava/util/Collection;)Z
pop
end local 9 32: goto 39
StackMap locals: sun.security.provider.certpath.CrlRevocationChecker java.security.cert.X509Certificate java.security.PublicKey int int java.util.Set java.util.Set java.lang.String boolean[]
StackMap stack: java.lang.Exception
33: astore 9
start local 9 34: getstatic sun.security.provider.certpath.CrlRevocationChecker.debug:Lsun/security/util/Debug;
ifnull 38
35: getstatic sun.security.provider.certpath.CrlRevocationChecker.debug:Lsun/security/util/Debug;
new java.lang.StringBuilder
dup
ldc "CrlRevocationChecker.verifyRevocationStatus() unexpected exception: "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
36: aload 9
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;
37: invokevirtual sun.security.util.Debug.println:(Ljava/lang/String;)V
38: StackMap locals: java.lang.Exception
StackMap stack:
new java.security.cert.CertPathValidatorException
dup
aload 9
invokespecial java.security.cert.CertPathValidatorException.<init>:(Ljava/lang/Throwable;)V
athrow
end local 9 39: StackMap locals:
StackMap stack:
getstatic sun.security.provider.certpath.CrlRevocationChecker.debug:Lsun/security/util/Debug;
ifnull 43
40: getstatic sun.security.provider.certpath.CrlRevocationChecker.debug:Lsun/security/util/Debug;
new java.lang.StringBuilder
dup
ldc "CrlRevocationChecker.verifyRevocationStatus() crls.size() = "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
41: aload 0
getfield sun.security.provider.certpath.CrlRevocationChecker.mPossibleCRLs:Ljava/util/HashSet;
invokevirtual java.util.HashSet.size:()I
invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
42: invokevirtual sun.security.util.Debug.println:(Ljava/lang/String;)V
43: StackMap locals:
StackMap stack:
aload 0
getfield sun.security.provider.certpath.CrlRevocationChecker.mPossibleCRLs:Ljava/util/HashSet;
invokevirtual java.util.HashSet.isEmpty:()Z
ifne 47
44: aload 0
getfield sun.security.provider.certpath.CrlRevocationChecker.mApprovedCRLs:Ljava/util/HashSet;
aload 0
aload 0
getfield sun.security.provider.certpath.CrlRevocationChecker.mPossibleCRLs:Ljava/util/HashSet;
aload 1
45: iload 3
aload 2
aload 8
aload 6
46: invokevirtual sun.security.provider.certpath.CrlRevocationChecker.verifyPossibleCRLs:(Ljava/util/Set;Ljava/security/cert/X509Certificate;ZLjava/security/PublicKey;[ZLjava/util/Set;)Ljava/util/Collection;
invokevirtual java.util.HashSet.addAll:(Ljava/util/Collection;)Z
pop
47: StackMap locals:
StackMap stack:
getstatic sun.security.provider.certpath.CrlRevocationChecker.debug:Lsun/security/util/Debug;
ifnull 51
48: getstatic sun.security.provider.certpath.CrlRevocationChecker.debug:Lsun/security/util/Debug;
new java.lang.StringBuilder
dup
ldc "CrlRevocationChecker.verifyRevocationStatus() approved crls.size() = "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
49: aload 0
getfield sun.security.provider.certpath.CrlRevocationChecker.mApprovedCRLs:Ljava/util/HashSet;
invokevirtual java.util.HashSet.size:()I
invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
50: invokevirtual sun.security.util.Debug.println:(Ljava/lang/String;)V
51: StackMap locals:
StackMap stack:
aload 0
getfield sun.security.provider.certpath.CrlRevocationChecker.mApprovedCRLs:Ljava/util/HashSet;
invokevirtual java.util.HashSet.isEmpty:()Z
ifne 53
52: aload 8
getstatic sun.security.provider.certpath.CrlRevocationChecker.ALL_REASONS:[Z
invokestatic java.util.Arrays.equals:([Z[Z)Z
ifne 61
53: StackMap locals:
StackMap stack:
iload 4
ifeq 58
54: aload 0
aload 1
aload 2
iload 3
55: aload 5
56: invokevirtual sun.security.provider.certpath.CrlRevocationChecker.verifyWithSeparateSigningKey:(Ljava/security/cert/X509Certificate;Ljava/security/PublicKey;ZLjava/util/Set;)V
57: return
58: StackMap locals:
StackMap stack:
new java.security.cert.CertPathValidatorException
dup
59: ldc "Could not determine revocation status"
60: invokespecial java.security.cert.CertPathValidatorException.<init>:(Ljava/lang/String;)V
athrow
61: StackMap locals:
StackMap stack:
getstatic sun.security.provider.certpath.CrlRevocationChecker.debug:Lsun/security/util/Debug;
ifnull 67
62: aload 1
invokevirtual java.security.cert.X509Certificate.getSerialNumber:()Ljava/math/BigInteger;
astore 9
start local 9 63: getstatic sun.security.provider.certpath.CrlRevocationChecker.debug:Lsun/security/util/Debug;
ldc "CrlRevocationChecker.verifyRevocationStatus() starting the final sweep..."
invokevirtual sun.security.util.Debug.println:(Ljava/lang/String;)V
64: getstatic sun.security.provider.certpath.CrlRevocationChecker.debug:Lsun/security/util/Debug;
new java.lang.StringBuilder
dup
ldc "CrlRevocationChecker.verifyRevocationStatus cert SN: "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
65: aload 9
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;
66: invokevirtual sun.security.util.Debug.println:(Ljava/lang/String;)V
end local 9 67: StackMap locals:
StackMap stack:
iconst_0
istore 9
start local 9 68: aconst_null
astore 10
start local 10 69: aload 0
getfield sun.security.provider.certpath.CrlRevocationChecker.mApprovedCRLs:Ljava/util/HashSet;
invokevirtual java.util.HashSet.iterator:()Ljava/util/Iterator;
astore 12
goto 105
StackMap locals: sun.security.provider.certpath.CrlRevocationChecker java.security.cert.X509Certificate java.security.PublicKey int int java.util.Set java.util.Set java.lang.String boolean[] int sun.security.x509.X509CRLEntryImpl top java.util.Iterator
StackMap stack:
70: aload 12
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast java.security.cert.X509CRL
astore 11
start local 11 71: aload 11
aload 1
invokevirtual java.security.cert.X509CRL.getRevokedCertificate:(Ljava/security/cert/X509Certificate;)Ljava/security/cert/X509CRLEntry;
astore 13
start local 13 72: aload 13
ifnull 105
73: aload 13
invokestatic sun.security.x509.X509CRLEntryImpl.toImpl:(Ljava/security/cert/X509CRLEntry;)Lsun/security/x509/X509CRLEntryImpl;
astore 10
74: aload 10
invokevirtual sun.security.x509.X509CRLEntryImpl.getReasonCode:()Ljava/lang/Integer;
astore 14
start local 14 75: aload 14
ifnonnull 77
76: iconst_0
goto 78
77: StackMap locals: sun.security.provider.certpath.CrlRevocationChecker java.security.cert.X509Certificate java.security.PublicKey int int java.util.Set java.util.Set java.lang.String boolean[] int sun.security.x509.X509CRLEntryImpl java.security.cert.X509CRL java.util.Iterator java.security.cert.X509CRLEntry java.lang.Integer
StackMap stack:
aload 14
invokevirtual java.lang.Integer.intValue:()I
78: StackMap locals:
StackMap stack: int
istore 9
end local 14 79: goto 82
StackMap locals: sun.security.provider.certpath.CrlRevocationChecker java.security.cert.X509Certificate java.security.PublicKey int int java.util.Set java.util.Set java.lang.String boolean[] int sun.security.x509.X509CRLEntryImpl java.security.cert.X509CRL java.util.Iterator java.security.cert.X509CRLEntry
StackMap stack: java.lang.Exception
80: astore 14
start local 14 81: new java.security.cert.CertPathValidatorException
dup
aload 14
invokespecial java.security.cert.CertPathValidatorException.<init>:(Ljava/lang/Throwable;)V
athrow
end local 14 82: StackMap locals:
StackMap stack:
getstatic sun.security.provider.certpath.CrlRevocationChecker.debug:Lsun/security/util/Debug;
ifnull 86
83: getstatic sun.security.provider.certpath.CrlRevocationChecker.debug:Lsun/security/util/Debug;
new java.lang.StringBuilder
dup
ldc "CrlRevocationChecker.verifyRevocationStatus CRL entry: "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
84: aload 10
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;
85: invokevirtual sun.security.util.Debug.println:(Ljava/lang/String;)V
86: StackMap locals:
StackMap stack:
aload 10
invokevirtual sun.security.x509.X509CRLEntryImpl.getCriticalExtensionOIDs:()Ljava/util/Set;
astore 14
start local 14 87: aload 14
ifnull 102
aload 14
invokeinterface java.util.Set.isEmpty:()Z
ifne 102
88: aload 14
89: getstatic sun.security.x509.PKIXExtensions.ReasonCode_Id:Lsun/security/util/ObjectIdentifier;
invokevirtual sun.security.util.ObjectIdentifier.toString:()Ljava/lang/String;
90: invokeinterface java.util.Set.remove:(Ljava/lang/Object;)Z
pop
91: aload 14
92: getstatic sun.security.x509.PKIXExtensions.CertificateIssuer_Id:Lsun/security/util/ObjectIdentifier;
invokevirtual sun.security.util.ObjectIdentifier.toString:()Ljava/lang/String;
93: invokeinterface java.util.Set.remove:(Ljava/lang/Object;)Z
pop
94: aload 14
invokeinterface java.util.Set.isEmpty:()Z
ifne 102
95: getstatic sun.security.provider.certpath.CrlRevocationChecker.debug:Lsun/security/util/Debug;
ifnull 99
96: getstatic sun.security.provider.certpath.CrlRevocationChecker.debug:Lsun/security/util/Debug;
new java.lang.StringBuilder
dup
ldc "Unrecognized critical extension(s) in revoked CRL entry: "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
97: aload 14
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
98: invokevirtual sun.security.util.Debug.println:(Ljava/lang/String;)V
99: StackMap locals: java.util.Set
StackMap stack:
new java.security.cert.CertPathValidatorException
dup
100: ldc "Could not determine revocation status"
101: invokespecial java.security.cert.CertPathValidatorException.<init>:(Ljava/lang/String;)V
athrow
102: StackMap locals:
StackMap stack:
new sun.security.provider.certpath.CrlRevocationChecker$CertificateRevokedException
dup
new java.lang.StringBuilder
dup
ldc "Certificate has been revoked, reason: "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
103: iload 9
invokestatic sun.security.provider.certpath.CrlRevocationChecker.reasonToString:(I)Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
104: invokespecial sun.security.provider.certpath.CrlRevocationChecker$CertificateRevokedException.<init>:(Ljava/lang/String;)V
athrow
end local 14 end local 13 end local 11 105: StackMap locals: sun.security.provider.certpath.CrlRevocationChecker java.security.cert.X509Certificate java.security.PublicKey int int java.util.Set java.util.Set java.lang.String boolean[] int sun.security.x509.X509CRLEntryImpl top java.util.Iterator
StackMap stack:
aload 12
invokeinterface java.util.Iterator.hasNext:()Z
ifne 70
106: return
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 107 0 this Lsun/security/provider/certpath/CrlRevocationChecker;
0 107 1 currCert Ljava/security/cert/X509Certificate;
0 107 2 prevKey Ljava/security/PublicKey;
0 107 3 signFlag Z
0 107 4 allowSeparateKey Z
0 107 5 stackedCerts Ljava/util/Set<Ljava/security/cert/X509Certificate;>;
0 107 6 trustAnchors Ljava/util/Set<Ljava/security/cert/TrustAnchor;>;
1 107 7 msg Ljava/lang/String;
18 107 8 reasonsMask [Z
19 32 9 sel Ljava/security/cert/X509CRLSelector;
23 27 10 mStore Ljava/security/cert/CertStore;
25 26 12 crl Ljava/security/cert/CRL;
34 39 9 e Ljava/lang/Exception;
63 67 9 sn Ljava/math/BigInteger;
68 107 9 reasonCode I
69 107 10 entry Lsun/security/x509/X509CRLEntryImpl;
71 105 11 crl Ljava/security/cert/X509CRL;
72 105 13 e Ljava/security/cert/X509CRLEntry;
75 79 14 reason Ljava/lang/Integer;
81 82 14 ex Ljava/lang/Exception;
87 105 14 unresCritExts Ljava/util/Set<Ljava/lang/String;>;
Exception table:
from to target type
18 32 33 Class java.lang.Exception
73 79 80 Class java.lang.Exception
Exceptions:
throws java.security.cert.CertPathValidatorException
Signature: (Ljava/security/cert/X509Certificate;Ljava/security/PublicKey;ZZLjava/util/Set<Ljava/security/cert/X509Certificate;>;Ljava/util/Set<Ljava/security/cert/TrustAnchor;>;)V
MethodParameters:
Name Flags
currCert
prevKey
signFlag
allowSeparateKey
stackedCerts
trustAnchors
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=4, 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.CrlRevocationChecker.debug:Lsun/security/util/Debug;
ifnull 7
2: getstatic sun.security.provider.certpath.CrlRevocationChecker.debug:Lsun/security/util/Debug;
3: new java.lang.StringBuilder
dup
ldc "CrlRevocationChecker.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 15
aload 4
aload 1
invokeinterface java.util.Set.contains:(Ljava/lang/Object;)Z
ifeq 15
8: getstatic sun.security.provider.certpath.CrlRevocationChecker.debug:Lsun/security/util/Debug;
ifnull 12
9: getstatic sun.security.provider.certpath.CrlRevocationChecker.debug:Lsun/security/util/Debug;
10: ldc "CrlRevocationChecker.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"
14: invokespecial java.security.cert.CertPathValidatorException.<init>:(Ljava/lang/String;)V
athrow
15: StackMap locals:
StackMap stack:
iload 3
ifne 17
16: aconst_null
astore 2
17: StackMap locals:
StackMap stack:
aload 0
aload 1
aload 2
aload 4
invokevirtual sun.security.provider.certpath.CrlRevocationChecker.buildToNewKey:(Ljava/security/cert/X509Certificate;Ljava/security/PublicKey;Ljava/util/Set;)V
18: 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 19 0 this Lsun/security/provider/certpath/CrlRevocationChecker;
0 19 1 currCert Ljava/security/cert/X509Certificate;
0 19 2 prevKey Ljava/security/PublicKey;
0 19 3 signFlag Z
0 19 4 stackedCerts Ljava/util/Set<Ljava/security/cert/X509Certificate;>;
1 19 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
currCert
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=7, locals=16, args_size=4
start local 0 start local 1 start local 2 start local 3 0: getstatic sun.security.provider.certpath.CrlRevocationChecker.debug:Lsun/security/util/Debug;
ifnull 2
1: getstatic sun.security.provider.certpath.CrlRevocationChecker.debug:Lsun/security/util/Debug;
ldc "CrlRevocationChecker.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.CrlRevocationChecker$RejectKeySelector
dup
aload 4
invokespecial sun.security.provider.certpath.CrlRevocationChecker$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.CrlRevocationChecker.mCrlSignUsage:[Z
invokevirtual java.security.cert.X509CertSelector.setKeyUsage:([Z)V
8: aload 0
getfield sun.security.provider.certpath.CrlRevocationChecker.mAnchor:Ljava/security/cert/TrustAnchor;
ifnonnull 9
aload 0
getfield sun.security.provider.certpath.CrlRevocationChecker.mParams:Ljava/security/cert/PKIXParameters;
invokevirtual java.security.cert.PKIXParameters.getTrustAnchors:()Ljava/util/Set;
goto 10
9: StackMap locals: java.security.cert.X509CertSelector
StackMap stack:
aload 0
getfield sun.security.provider.certpath.CrlRevocationChecker.mAnchor:Ljava/security/cert/TrustAnchor;
invokestatic java.util.Collections.singleton:(Ljava/lang/Object;)Ljava/util/Set;
10: StackMap locals:
StackMap stack: java.util.Set
astore 6
start local 6 11: aload 0
getfield sun.security.provider.certpath.CrlRevocationChecker.mParams:Ljava/security/cert/PKIXParameters;
instanceof java.security.cert.PKIXBuilderParameters
ifeq 19
12: aload 0
getfield sun.security.provider.certpath.CrlRevocationChecker.mParams:Ljava/security/cert/PKIXParameters;
invokevirtual java.security.cert.PKIXParameters.clone:()Ljava/lang/Object;
checkcast java.security.cert.PKIXBuilderParameters
astore 7
start local 7 13: aload 7
aload 5
invokevirtual java.security.cert.PKIXBuilderParameters.setTargetCertConstraints:(Ljava/security/cert/CertSelector;)V
14: aload 7
iconst_1
invokevirtual java.security.cert.PKIXBuilderParameters.setPolicyQualifiersRejected:(Z)V
15: aload 7
aload 6
invokevirtual java.security.cert.PKIXBuilderParameters.setTrustAnchors:(Ljava/util/Set;)V
16: goto 35
StackMap locals: sun.security.provider.certpath.CrlRevocationChecker 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: java.security.InvalidAlgorithmParameterException
17: astore 8
start local 8 18: new java.lang.RuntimeException
dup
aload 8
invokespecial java.lang.RuntimeException.<init>:(Ljava/lang/Throwable;)V
athrow
end local 8 end local 7 19: StackMap locals:
StackMap stack:
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 20: goto 23
end local 7 StackMap locals:
StackMap stack: java.security.InvalidAlgorithmParameterException
21: astore 8
start local 8 22: new java.lang.RuntimeException
dup
aload 8
invokespecial java.lang.RuntimeException.<init>:(Ljava/lang/Throwable;)V
athrow
end local 8 start local 7 23: StackMap locals: java.security.cert.PKIXBuilderParameters
StackMap stack:
aload 7
aload 0
getfield sun.security.provider.certpath.CrlRevocationChecker.mParams:Ljava/security/cert/PKIXParameters;
invokevirtual java.security.cert.PKIXParameters.getInitialPolicies:()Ljava/util/Set;
invokevirtual java.security.cert.PKIXBuilderParameters.setInitialPolicies:(Ljava/util/Set;)V
24: aload 7
aload 0
getfield sun.security.provider.certpath.CrlRevocationChecker.mStores:Ljava/util/List;
invokevirtual java.security.cert.PKIXBuilderParameters.setCertStores:(Ljava/util/List;)V
25: aload 7
26: aload 0
getfield sun.security.provider.certpath.CrlRevocationChecker.mParams:Ljava/security/cert/PKIXParameters;
invokevirtual java.security.cert.PKIXParameters.isExplicitPolicyRequired:()Z
27: invokevirtual java.security.cert.PKIXBuilderParameters.setExplicitPolicyRequired:(Z)V
28: aload 7
29: aload 0
getfield sun.security.provider.certpath.CrlRevocationChecker.mParams:Ljava/security/cert/PKIXParameters;
invokevirtual java.security.cert.PKIXParameters.isPolicyMappingInhibited:()Z
30: invokevirtual java.security.cert.PKIXBuilderParameters.setPolicyMappingInhibited:(Z)V
31: aload 7
aload 0
getfield sun.security.provider.certpath.CrlRevocationChecker.mParams:Ljava/security/cert/PKIXParameters;
invokevirtual java.security.cert.PKIXParameters.isAnyPolicyInhibited:()Z
invokevirtual java.security.cert.PKIXBuilderParameters.setAnyPolicyInhibited:(Z)V
32: aload 7
aload 0
getfield sun.security.provider.certpath.CrlRevocationChecker.mParams:Ljava/security/cert/PKIXParameters;
invokevirtual java.security.cert.PKIXParameters.getDate:()Ljava/util/Date;
invokevirtual java.security.cert.PKIXBuilderParameters.setDate:(Ljava/util/Date;)V
33: aload 7
aload 0
getfield sun.security.provider.certpath.CrlRevocationChecker.mParams:Ljava/security/cert/PKIXParameters;
invokevirtual java.security.cert.PKIXParameters.getCertPathCheckers:()Ljava/util/List;
invokevirtual java.security.cert.PKIXBuilderParameters.setCertPathCheckers:(Ljava/util/List;)V
34: aload 7
aload 0
getfield sun.security.provider.certpath.CrlRevocationChecker.mParams:Ljava/security/cert/PKIXParameters;
invokevirtual java.security.cert.PKIXParameters.getSigProvider:()Ljava/lang/String;
invokevirtual java.security.cert.PKIXBuilderParameters.setSigProvider:(Ljava/lang/String;)V
35: StackMap locals:
StackMap stack:
aload 7
iconst_0
invokevirtual java.security.cert.PKIXBuilderParameters.setRevocationEnabled:(Z)V
36: getstatic sun.security.provider.certpath.Builder.USE_AIA:Z
ifeq 59
37: aconst_null
astore 8
start local 8 38: aload 1
invokestatic sun.security.x509.X509CertImpl.toImpl:(Ljava/security/cert/X509Certificate;)Lsun/security/x509/X509CertImpl;
astore 8
39: goto 45
StackMap locals: sun.security.provider.certpath.CrlRevocationChecker 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
40: astore 9
start local 9 41: getstatic sun.security.provider.certpath.CrlRevocationChecker.debug:Lsun/security/util/Debug;
ifnull 45
42: getstatic sun.security.provider.certpath.CrlRevocationChecker.debug:Lsun/security/util/Debug;
new java.lang.StringBuilder
dup
ldc "CrlRevocationChecker.buildToNewKey: error decoding cert: "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
43: aload 9
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
44: invokevirtual sun.security.util.Debug.println:(Ljava/lang/String;)V
end local 9 45: StackMap locals:
StackMap stack:
aconst_null
astore 9
start local 9 46: aload 8
ifnull 48
47: aload 8
invokevirtual sun.security.x509.X509CertImpl.getAuthorityInfoAccessExtension:()Lsun/security/x509/AuthorityInfoAccessExtension;
astore 9
48: StackMap locals: sun.security.x509.AuthorityInfoAccessExtension
StackMap stack:
aload 9
ifnull 59
49: aload 9
invokevirtual sun.security.x509.AuthorityInfoAccessExtension.getAccessDescriptions:()Ljava/util/List;
astore 10
start local 10 50: aload 10
ifnull 59
51: aload 10
invokeinterface java.util.List.iterator:()Ljava/util/Iterator;
astore 12
goto 58
StackMap locals: sun.security.provider.certpath.CrlRevocationChecker 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:
52: aload 12
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast sun.security.x509.AccessDescription
astore 11
start local 11 53: aload 11
invokestatic sun.security.provider.certpath.URICertStore.getInstance:(Lsun/security/x509/AccessDescription;)Ljava/security/cert/CertStore;
astore 13
start local 13 54: aload 13
ifnull 58
55: getstatic sun.security.provider.certpath.CrlRevocationChecker.debug:Lsun/security/util/Debug;
ifnull 57
56: getstatic sun.security.provider.certpath.CrlRevocationChecker.debug:Lsun/security/util/Debug;
ldc "adding AIAext CertStore"
invokevirtual sun.security.util.Debug.println:(Ljava/lang/String;)V
57: StackMap locals: sun.security.provider.certpath.CrlRevocationChecker 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 58: StackMap locals: sun.security.provider.certpath.CrlRevocationChecker 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 52
end local 10 end local 9 end local 8 59: StackMap locals: sun.security.provider.certpath.CrlRevocationChecker 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 60: ldc "PKIX"
invokestatic java.security.cert.CertPathBuilder.getInstance:(Ljava/lang/String;)Ljava/security/cert/CertPathBuilder;
astore 8
61: goto 64
StackMap locals: sun.security.provider.certpath.CrlRevocationChecker 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
62: astore 9
start local 9 63: new java.security.cert.CertPathValidatorException
dup
aload 9
invokespecial java.security.cert.CertPathValidatorException.<init>:(Ljava/lang/Throwable;)V
athrow
end local 9 64: StackMap locals:
StackMap stack:
getstatic sun.security.provider.certpath.CrlRevocationChecker.debug:Lsun/security/util/Debug;
ifnull 66
65: getstatic sun.security.provider.certpath.CrlRevocationChecker.debug:Lsun/security/util/Debug;
ldc "CrlRevocationChecker.buildToNewKey() about to try build ..."
invokevirtual sun.security.util.Debug.println:(Ljava/lang/String;)V
66: 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
67: astore 9
start local 9 68: getstatic sun.security.provider.certpath.CrlRevocationChecker.debug:Lsun/security/util/Debug;
ifnull 70
69: getstatic sun.security.provider.certpath.CrlRevocationChecker.debug:Lsun/security/util/Debug;
ldc "CrlRevocationChecker.buildToNewKey() about to check revocation ..."
invokevirtual sun.security.util.Debug.println:(Ljava/lang/String;)V
70: StackMap locals: java.security.cert.PKIXCertPathBuilderResult
StackMap stack:
aload 3
ifnonnull 72
71: new java.util.HashSet
dup
invokespecial java.util.HashSet.<init>:()V
astore 3
72: StackMap locals:
StackMap stack:
aload 3
aload 1
invokeinterface java.util.Set.add:(Ljava/lang/Object;)Z
pop
73: aload 9
invokevirtual java.security.cert.PKIXCertPathBuilderResult.getTrustAnchor:()Ljava/security/cert/TrustAnchor;
astore 10
start local 10 74: aload 10
invokevirtual java.security.cert.TrustAnchor.getCAPublicKey:()Ljava/security/PublicKey;
astore 11
start local 11 75: aload 11
ifnonnull 77
76: aload 10
invokevirtual java.security.cert.TrustAnchor.getTrustedCert:()Ljava/security/cert/X509Certificate;
invokevirtual java.security.cert.X509Certificate.getPublicKey:()Ljava/security/PublicKey;
astore 11
77: StackMap locals: java.security.cert.TrustAnchor java.security.PublicKey
StackMap stack:
iconst_1
istore 12
start local 12 78: aload 9
invokevirtual java.security.cert.PKIXCertPathBuilderResult.getCertPath:()Ljava/security/cert/CertPath;
invokevirtual java.security.cert.CertPath.getCertificates:()Ljava/util/List;
79: astore 13
start local 13 80: aload 13
invokeinterface java.util.List.size:()I
iconst_1
isub
istore 14
start local 14 81: goto 93
82: 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 83: getstatic sun.security.provider.certpath.CrlRevocationChecker.debug:Lsun/security/util/Debug;
ifnull 87
84: getstatic sun.security.provider.certpath.CrlRevocationChecker.debug:Lsun/security/util/Debug;
new java.lang.StringBuilder
dup
ldc "CrlRevocationChecker.buildToNewKey() index "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
85: iload 14
invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
ldc " checking "
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
aload 15
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
86: invokevirtual sun.security.util.Debug.println:(Ljava/lang/String;)V
87: StackMap locals: java.security.cert.X509Certificate
StackMap stack:
aload 0
aload 15
aload 11
iload 12
iconst_1
88: aload 3
aload 6
89: invokevirtual sun.security.provider.certpath.CrlRevocationChecker.verifyRevocationStatus:(Ljava/security/cert/X509Certificate;Ljava/security/PublicKey;ZZLjava/util/Set;Ljava/util/Set;)V
90: aload 15
invokestatic sun.security.provider.certpath.CrlRevocationChecker.certCanSignCrl:(Ljava/security/cert/X509Certificate;)Z
istore 12
91: aload 15
invokevirtual java.security.cert.X509Certificate.getPublicKey:()Ljava/security/PublicKey;
astore 11
end local 15 92: iinc 14 -1
StackMap locals:
StackMap stack:
93: iload 14
ifge 82
end local 14 94: goto 98
StackMap locals: sun.security.provider.certpath.CrlRevocationChecker 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
95: pop
96: aload 4
aload 9
invokevirtual java.security.cert.PKIXCertPathBuilderResult.getPublicKey:()Ljava/security/PublicKey;
invokeinterface java.util.Set.add:(Ljava/lang/Object;)Z
pop
97: goto 64
98: StackMap locals:
StackMap stack:
getstatic sun.security.provider.certpath.CrlRevocationChecker.debug:Lsun/security/util/Debug;
ifnull 102
99: getstatic sun.security.provider.certpath.CrlRevocationChecker.debug:Lsun/security/util/Debug;
new java.lang.StringBuilder
dup
ldc "CrlRevocationChecker.buildToNewKey() got key "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
100: 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;
101: invokevirtual sun.security.util.Debug.println:(Ljava/lang/String;)V
102: StackMap locals:
StackMap stack:
aload 9
invokevirtual java.security.cert.PKIXCertPathBuilderResult.getPublicKey:()Ljava/security/PublicKey;
astore 14
start local 14 103: aload 0
aload 1
aload 14
iconst_1
iconst_0
invokevirtual sun.security.provider.certpath.CrlRevocationChecker.verifyRevocationStatus:(Ljava/security/cert/X509Certificate;Ljava/security/PublicKey;ZZ)V
104: return
105: StackMap locals: sun.security.provider.certpath.CrlRevocationChecker 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
StackMap stack: java.security.cert.CertPathValidatorException
astore 15
start local 15 106: aload 15
instanceof sun.security.provider.certpath.CrlRevocationChecker$CertificateRevokedException
ifeq 108
107: aload 15
athrow
end local 15 108: StackMap locals:
StackMap stack:
aload 4
aload 14
invokeinterface java.util.Set.add:(Ljava/lang/Object;)Z
pop
end local 14 end local 13 end local 12 end local 11 end local 10 end local 9 109: goto 64
StackMap locals: sun.security.provider.certpath.CrlRevocationChecker 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
astore 9
start local 9 113: new java.security.cert.CertPathValidatorException
dup
114: ldc "Could not determine revocation status"
aload 9
115: invokespecial java.security.cert.CertPathValidatorException.<init>:(Ljava/lang/String;Ljava/lang/Throwable;)V
athrow
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 116 0 this Lsun/security/provider/certpath/CrlRevocationChecker;
0 116 1 currCert Ljava/security/cert/X509Certificate;
0 116 2 prevKey Ljava/security/PublicKey;
0 116 3 stackedCerts Ljava/util/Set<Ljava/security/cert/X509Certificate;>;
3 116 4 badKeys Ljava/util/Set<Ljava/security/PublicKey;>;
6 116 5 certSel Ljava/security/cert/X509CertSelector;
11 116 6 newAnchors Ljava/util/Set<Ljava/security/cert/TrustAnchor;>;
13 19 7 builderParams Ljava/security/cert/PKIXBuilderParameters;
20 21 7 builderParams Ljava/security/cert/PKIXBuilderParameters;
23 116 7 builderParams Ljava/security/cert/PKIXBuilderParameters;
18 19 8 iape Ljava/security/InvalidAlgorithmParameterException;
22 23 8 iape Ljava/security/InvalidAlgorithmParameterException;
38 59 8 currCertImpl Lsun/security/x509/X509CertImpl;
41 45 9 ce Ljava/security/cert/CertificateException;
46 59 9 aiaExt Lsun/security/x509/AuthorityInfoAccessExtension;
50 59 10 adList Ljava/util/List<Lsun/security/x509/AccessDescription;>;
53 58 11 ad Lsun/security/x509/AccessDescription;
54 58 13 cs Ljava/security/cert/CertStore;
60 116 8 builder Ljava/security/cert/CertPathBuilder;
63 64 9 nsae Ljava/security/NoSuchAlgorithmException;
68 109 9 cpbr Ljava/security/cert/PKIXCertPathBuilderResult;
74 109 10 ta Ljava/security/cert/TrustAnchor;
75 109 11 prevKey2 Ljava/security/PublicKey;
78 109 12 signFlag Z
80 109 13 cpList Ljava/util/List<+Ljava/security/cert/Certificate;>;
81 94 14 i I
83 92 15 cert Ljava/security/cert/X509Certificate;
103 109 14 newKey Ljava/security/PublicKey;
106 108 15 cpve Ljava/security/cert/CertPathValidatorException;
111 112 9 iape Ljava/security/InvalidAlgorithmParameterException;
113 116 9 cpbe Ljava/security/cert/CertPathBuilderException;
Exception table:
from to target type
15 16 17 Class java.security.InvalidAlgorithmParameterException
19 20 21 Class java.security.InvalidAlgorithmParameterException
38 39 40 Class java.security.cert.CertificateException
60 61 62 Class java.security.NoSuchAlgorithmException
80 94 95 Class java.security.cert.CertPathValidatorException
103 104 105 Class java.security.cert.CertPathValidatorException
64 97 110 Class java.security.InvalidAlgorithmParameterException
98 104 110 Class java.security.InvalidAlgorithmParameterException
105 109 110 Class java.security.InvalidAlgorithmParameterException
64 97 112 Class java.security.cert.CertPathBuilderException
98 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
private static java.lang.String reasonToString(int);
descriptor: (I)Ljava/lang/String;
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: iload 0
tableswitch { // 0 - 8
0: 1
1: 2
2: 3
3: 4
4: 5
5: 6
6: 7
7: 9
8: 8
default: 9
}
1: StackMap locals:
StackMap stack:
ldc "unspecified"
areturn
2: StackMap locals:
StackMap stack:
ldc "key compromise"
areturn
3: StackMap locals:
StackMap stack:
ldc "CA compromise"
areturn
4: StackMap locals:
StackMap stack:
ldc "affiliation changed"
areturn
5: StackMap locals:
StackMap stack:
ldc "superseded"
areturn
6: StackMap locals:
StackMap stack:
ldc "cessation of operation"
areturn
7: StackMap locals:
StackMap stack:
ldc "certificate hold"
areturn
8: StackMap locals:
StackMap stack:
ldc "remove from CRL"
areturn
9: StackMap locals:
StackMap stack:
ldc "unrecognized reason code"
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 10 0 reasonCode I
MethodParameters:
Name Flags
reasonCode
private java.util.Collection<java.security.cert.X509CRL> verifyPossibleCRLs(java.util.Set<java.security.cert.X509CRL>, java.security.cert.X509Certificate, boolean, java.security.PublicKey, boolean[], java.util.Set<java.security.cert.TrustAnchor>);
descriptor: (Ljava/util/Set;Ljava/security/cert/X509Certificate;ZLjava/security/PublicKey;[ZLjava/util/Set;)Ljava/util/Collection;
flags: (0x0002) ACC_PRIVATE
Code:
stack=11, locals=16, 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.CrlRevocationChecker.debug:Lsun/security/util/Debug;
ifnull 5
2: getstatic sun.security.provider.certpath.CrlRevocationChecker.debug:Lsun/security/util/Debug;
new java.lang.StringBuilder
dup
ldc "CRLRevocationChecker.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 11
start local 11 19: goto 33
20: StackMap locals: java.util.Set java.util.Iterator
StackMap stack:
aload 11
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast sun.security.x509.DistributionPoint
astore 12
start local 12 21: aload 1
invokeinterface java.util.Set.iterator:()Ljava/util/Iterator;
astore 14
goto 32
StackMap locals: sun.security.provider.certpath.CrlRevocationChecker java.util.Set java.security.cert.X509Certificate int java.security.PublicKey boolean[] java.util.Set sun.security.x509.X509CertImpl sun.security.x509.CRLDistributionPointsExtension java.util.List java.util.Set java.util.Iterator sun.security.x509.DistributionPoint top java.util.Iterator
StackMap stack:
22: aload 14
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast java.security.cert.X509CRL
astore 13
start local 13 23: aconst_null
astore 15
start local 15 24: aload 0
getfield sun.security.provider.certpath.CrlRevocationChecker.mParams:Ljava/security/cert/PKIXParameters;
instanceof sun.security.provider.certpath.PKIXExtendedParameters
ifeq 26
25: aload 0
getfield sun.security.provider.certpath.CrlRevocationChecker.mParams:Ljava/security/cert/PKIXParameters;
checkcast sun.security.provider.certpath.PKIXExtendedParameters
invokevirtual sun.security.provider.certpath.PKIXExtendedParameters.getVariant:()Ljava/lang/String;
astore 15
26: StackMap locals: sun.security.provider.certpath.CrlRevocationChecker java.util.Set java.security.cert.X509Certificate int java.security.PublicKey boolean[] java.util.Set sun.security.x509.X509CertImpl sun.security.x509.CRLDistributionPointsExtension java.util.List java.util.Set java.util.Iterator sun.security.x509.DistributionPoint java.security.cert.X509CRL java.util.Iterator java.lang.String
StackMap stack:
aload 7
aload 12
aload 13
27: aload 5
iload 3
aload 4
aload 0
getfield sun.security.provider.certpath.CrlRevocationChecker.mSigProvider:Ljava/lang/String;
28: aload 6
aload 0
getfield sun.security.provider.certpath.CrlRevocationChecker.mStores:Ljava/util/List;
aload 0
getfield sun.security.provider.certpath.CrlRevocationChecker.mParams:Ljava/security/cert/PKIXParameters;
invokevirtual java.security.cert.PKIXParameters.getDate:()Ljava/util/Date;
aload 15
29: invokestatic sun.security.provider.certpath.DistributionPointFetcher.verifyCRL:(Lsun/security/x509/X509CertImpl;Lsun/security/x509/DistributionPoint;Ljava/security/cert/X509CRL;[ZZLjava/security/PublicKey;Ljava/lang/String;Ljava/util/Set;Ljava/util/List;Ljava/util/Date;Ljava/lang/String;)Z
30: ifeq 32
31: aload 10
aload 13
invokeinterface java.util.Set.add:(Ljava/lang/Object;)Z
pop
end local 15 end local 13 32: StackMap locals: sun.security.provider.certpath.CrlRevocationChecker java.util.Set java.security.cert.X509Certificate int java.security.PublicKey boolean[] java.util.Set sun.security.x509.X509CertImpl sun.security.x509.CRLDistributionPointsExtension java.util.List java.util.Set java.util.Iterator sun.security.x509.DistributionPoint top java.util.Iterator
StackMap stack:
aload 14
invokeinterface java.util.Iterator.hasNext:()Z
ifne 22
end local 12 33: StackMap locals: sun.security.provider.certpath.CrlRevocationChecker java.util.Set java.security.cert.X509Certificate int java.security.PublicKey boolean[] java.util.Set sun.security.x509.X509CertImpl sun.security.x509.CRLDistributionPointsExtension java.util.List java.util.Set java.util.Iterator
StackMap stack:
aload 11
invokeinterface java.util.Iterator.hasNext:()Z
ifeq 34
aload 5
getstatic sun.security.provider.certpath.CrlRevocationChecker.ALL_REASONS:[Z
invokestatic java.util.Arrays.equals:([Z[Z)Z
ifeq 20
end local 11 34: StackMap locals:
StackMap stack:
aload 10
35: areturn
end local 10 end local 9 end local 8 end local 7 36: StackMap locals: sun.security.provider.certpath.CrlRevocationChecker java.util.Set java.security.cert.X509Certificate int java.security.PublicKey boolean[] java.util.Set
StackMap stack: java.lang.Exception
astore 7
start local 7 37: getstatic sun.security.provider.certpath.CrlRevocationChecker.debug:Lsun/security/util/Debug;
ifnull 40
38: getstatic sun.security.provider.certpath.CrlRevocationChecker.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
39: aload 7
invokevirtual java.lang.Exception.printStackTrace:()V
40: 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 41 0 this Lsun/security/provider/certpath/CrlRevocationChecker;
0 41 1 crls Ljava/util/Set<Ljava/security/cert/X509CRL;>;
0 41 2 cert Ljava/security/cert/X509Certificate;
0 41 3 signFlag Z
0 41 4 prevKey Ljava/security/PublicKey;
0 41 5 reasonsMask [Z
0 41 6 trustAnchors Ljava/util/Set<Ljava/security/cert/TrustAnchor;>;
1 36 7 certImpl Lsun/security/x509/X509CertImpl;
7 36 8 ext Lsun/security/x509/CRLDistributionPointsExtension;
8 36 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 36 10 results Ljava/util/Set<Ljava/security/cert/X509CRL;>;
19 34 11 t Ljava/util/Iterator<Lsun/security/x509/DistributionPoint;>;
21 33 12 point Lsun/security/x509/DistributionPoint;
23 32 13 crl Ljava/security/cert/X509CRL;
24 32 15 variant Ljava/lang/String;
37 41 7 e Ljava/lang/Exception;
Exception table:
from to target type
0 35 36 Class java.lang.Exception
Exceptions:
throws java.security.cert.CertPathValidatorException
Signature: (Ljava/util/Set<Ljava/security/cert/X509CRL;>;Ljava/security/cert/X509Certificate;ZLjava/security/PublicKey;[ZLjava/util/Set<Ljava/security/cert/TrustAnchor;>;)Ljava/util/Collection<Ljava/security/cert/X509CRL;>;
MethodParameters:
Name Flags
crls
cert
signFlag
prevKey
reasonsMask
trustAnchors
}
SourceFile: "CrlRevocationChecker.java"
NestMembers:
sun.security.provider.certpath.CrlRevocationChecker$CertificateRevokedException sun.security.provider.certpath.CrlRevocationChecker$RejectKeySelector
InnerClasses:
private CertificateRevokedException = sun.security.provider.certpath.CrlRevocationChecker$CertificateRevokedException of sun.security.provider.certpath.CrlRevocationChecker
private RejectKeySelector = sun.security.provider.certpath.CrlRevocationChecker$RejectKeySelector of sun.security.provider.certpath.CrlRevocationChecker