class sun.security.provider.certpath.PolicyChecker extends java.security.cert.PKIXCertPathChecker
minor version: 0
major version: 59
flags: flags: (0x0020) ACC_SUPER
this_class: sun.security.provider.certpath.PolicyChecker
super_class: java.security.cert.PKIXCertPathChecker
{
private final java.util.Set<java.lang.String> initPolicies;
descriptor: Ljava/util/Set;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
Signature: Ljava/util/Set<Ljava/lang/String;>;
private final int certPathLen;
descriptor: I
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
private final boolean expPolicyRequired;
descriptor: Z
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
private final boolean polMappingInhibited;
descriptor: Z
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
private final boolean anyPolicyInhibited;
descriptor: Z
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
private final boolean rejectPolicyQualifiers;
descriptor: Z
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
private sun.security.provider.certpath.PolicyNodeImpl rootNode;
descriptor: Lsun/security/provider/certpath/PolicyNodeImpl;
flags: (0x0002) ACC_PRIVATE
private int explicitPolicy;
descriptor: I
flags: (0x0002) ACC_PRIVATE
private int policyMapping;
descriptor: I
flags: (0x0002) ACC_PRIVATE
private int inhibitAnyPolicy;
descriptor: I
flags: (0x0002) ACC_PRIVATE
private int certIndex;
descriptor: I
flags: (0x0002) ACC_PRIVATE
private java.util.Set<java.lang.String> supportedExts;
descriptor: Ljava/util/Set;
flags: (0x0002) ACC_PRIVATE
Signature: Ljava/util/Set<Ljava/lang/String;>;
private static final sun.security.util.Debug debug;
descriptor: Lsun/security/util/Debug;
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
static final java.lang.String ANY_POLICY;
descriptor: Ljava/lang/String;
flags: (0x0018) ACC_STATIC, ACC_FINAL
ConstantValue: "2.5.29.32.0"
static void <clinit>();
descriptor: ()V
flags: (0x0008) ACC_STATIC
Code:
stack=1, 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.PolicyChecker.debug:Lsun/security/util/Debug;
1: return
LocalVariableTable:
Start End Slot Name Signature
void <init>(java.util.Set<java.lang.String>, int, boolean, boolean, boolean, boolean, sun.security.provider.certpath.PolicyNodeImpl);
descriptor: (Ljava/util/Set;IZZZZLsun/security/provider/certpath/PolicyNodeImpl;)V
flags: (0x0000)
Code:
stack=4, locals=8, 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: aload 0
invokespecial java.security.cert.PKIXCertPathChecker.<init>:()V
1: aload 1
invokeinterface java.util.Set.isEmpty:()Z
ifeq 5
2: aload 0
new java.util.HashSet
dup
iconst_1
invokespecial java.util.HashSet.<init>:(I)V
putfield sun.security.provider.certpath.PolicyChecker.initPolicies:Ljava/util/Set;
3: aload 0
getfield sun.security.provider.certpath.PolicyChecker.initPolicies:Ljava/util/Set;
ldc "2.5.29.32.0"
invokeinterface java.util.Set.add:(Ljava/lang/Object;)Z
pop
4: goto 6
5: StackMap locals: sun.security.provider.certpath.PolicyChecker java.util.Set int int int int int sun.security.provider.certpath.PolicyNodeImpl
StackMap stack:
aload 0
new java.util.HashSet
dup
aload 1
invokespecial java.util.HashSet.<init>:(Ljava/util/Collection;)V
putfield sun.security.provider.certpath.PolicyChecker.initPolicies:Ljava/util/Set;
6: StackMap locals:
StackMap stack:
aload 0
iload 2
putfield sun.security.provider.certpath.PolicyChecker.certPathLen:I
7: aload 0
iload 3
putfield sun.security.provider.certpath.PolicyChecker.expPolicyRequired:Z
8: aload 0
iload 4
putfield sun.security.provider.certpath.PolicyChecker.polMappingInhibited:Z
9: aload 0
iload 5
putfield sun.security.provider.certpath.PolicyChecker.anyPolicyInhibited:Z
10: aload 0
iload 6
putfield sun.security.provider.certpath.PolicyChecker.rejectPolicyQualifiers:Z
11: aload 0
aload 7
putfield sun.security.provider.certpath.PolicyChecker.rootNode:Lsun/security/provider/certpath/PolicyNodeImpl;
12: 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 13 0 this Lsun/security/provider/certpath/PolicyChecker;
0 13 1 initialPolicies Ljava/util/Set<Ljava/lang/String;>;
0 13 2 certPathLen I
0 13 3 expPolicyRequired Z
0 13 4 polMappingInhibited Z
0 13 5 anyPolicyInhibited Z
0 13 6 rejectPolicyQualifiers Z
0 13 7 rootNode Lsun/security/provider/certpath/PolicyNodeImpl;
Signature: (Ljava/util/Set<Ljava/lang/String;>;IZZZZLsun/security/provider/certpath/PolicyNodeImpl;)V
MethodParameters:
Name Flags
initialPolicies
certPathLen
expPolicyRequired
polMappingInhibited
anyPolicyInhibited
rejectPolicyQualifiers
rootNode
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 4
1: new java.security.cert.CertPathValidatorException
dup
2: ldc "forward checking not supported"
3: invokespecial java.security.cert.CertPathValidatorException.<init>:(Ljava/lang/String;)V
athrow
4: StackMap locals:
StackMap stack:
aload 0
iconst_1
putfield sun.security.provider.certpath.PolicyChecker.certIndex:I
5: aload 0
aload 0
getfield sun.security.provider.certpath.PolicyChecker.expPolicyRequired:Z
ifeq 6
iconst_0
goto 7
StackMap locals:
StackMap stack: sun.security.provider.certpath.PolicyChecker
6: aload 0
getfield sun.security.provider.certpath.PolicyChecker.certPathLen:I
iconst_1
iadd
StackMap locals: sun.security.provider.certpath.PolicyChecker int
StackMap stack: sun.security.provider.certpath.PolicyChecker int
7: putfield sun.security.provider.certpath.PolicyChecker.explicitPolicy:I
8: aload 0
aload 0
getfield sun.security.provider.certpath.PolicyChecker.polMappingInhibited:Z
ifeq 9
iconst_0
goto 10
StackMap locals:
StackMap stack: sun.security.provider.certpath.PolicyChecker
9: aload 0
getfield sun.security.provider.certpath.PolicyChecker.certPathLen:I
iconst_1
iadd
StackMap locals: sun.security.provider.certpath.PolicyChecker int
StackMap stack: sun.security.provider.certpath.PolicyChecker int
10: putfield sun.security.provider.certpath.PolicyChecker.policyMapping:I
11: aload 0
aload 0
getfield sun.security.provider.certpath.PolicyChecker.anyPolicyInhibited:Z
ifeq 12
iconst_0
goto 13
StackMap locals:
StackMap stack: sun.security.provider.certpath.PolicyChecker
12: aload 0
getfield sun.security.provider.certpath.PolicyChecker.certPathLen:I
iconst_1
iadd
StackMap locals: sun.security.provider.certpath.PolicyChecker int
StackMap stack: sun.security.provider.certpath.PolicyChecker int
13: putfield sun.security.provider.certpath.PolicyChecker.inhibitAnyPolicy:I
14: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 15 0 this Lsun/security/provider/certpath/PolicyChecker;
0 15 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/PolicyChecker;
public java.util.Set<java.lang.String> getSupportedExtensions();
descriptor: ()Ljava/util/Set;
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=1, args_size=1
start local 0 0: aload 0
getfield sun.security.provider.certpath.PolicyChecker.supportedExts:Ljava/util/Set;
ifnonnull 7
1: aload 0
new java.util.HashSet
dup
iconst_4
invokespecial java.util.HashSet.<init>:(I)V
putfield sun.security.provider.certpath.PolicyChecker.supportedExts:Ljava/util/Set;
2: aload 0
getfield sun.security.provider.certpath.PolicyChecker.supportedExts:Ljava/util/Set;
getstatic sun.security.x509.PKIXExtensions.CertificatePolicies_Id:Lsun/security/util/ObjectIdentifier;
invokevirtual sun.security.util.ObjectIdentifier.toString:()Ljava/lang/String;
invokeinterface java.util.Set.add:(Ljava/lang/Object;)Z
pop
3: aload 0
getfield sun.security.provider.certpath.PolicyChecker.supportedExts:Ljava/util/Set;
getstatic sun.security.x509.PKIXExtensions.PolicyMappings_Id:Lsun/security/util/ObjectIdentifier;
invokevirtual sun.security.util.ObjectIdentifier.toString:()Ljava/lang/String;
invokeinterface java.util.Set.add:(Ljava/lang/Object;)Z
pop
4: aload 0
getfield sun.security.provider.certpath.PolicyChecker.supportedExts:Ljava/util/Set;
getstatic sun.security.x509.PKIXExtensions.PolicyConstraints_Id:Lsun/security/util/ObjectIdentifier;
invokevirtual sun.security.util.ObjectIdentifier.toString:()Ljava/lang/String;
invokeinterface java.util.Set.add:(Ljava/lang/Object;)Z
pop
5: aload 0
getfield sun.security.provider.certpath.PolicyChecker.supportedExts:Ljava/util/Set;
getstatic sun.security.x509.PKIXExtensions.InhibitAnyPolicy_Id:Lsun/security/util/ObjectIdentifier;
invokevirtual sun.security.util.ObjectIdentifier.toString:()Ljava/lang/String;
invokeinterface java.util.Set.add:(Ljava/lang/Object;)Z
pop
6: aload 0
aload 0
getfield sun.security.provider.certpath.PolicyChecker.supportedExts:Ljava/util/Set;
invokestatic java.util.Collections.unmodifiableSet:(Ljava/util/Set;)Ljava/util/Set;
putfield sun.security.provider.certpath.PolicyChecker.supportedExts:Ljava/util/Set;
7: StackMap locals:
StackMap stack:
aload 0
getfield sun.security.provider.certpath.PolicyChecker.supportedExts:Ljava/util/Set;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 8 0 this Lsun/security/provider/certpath/PolicyChecker;
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=2, locals=3, args_size=3
start local 0 start local 1 start local 2 0: aload 0
aload 1
checkcast java.security.cert.X509Certificate
invokevirtual sun.security.provider.certpath.PolicyChecker.checkPolicy:(Ljava/security/cert/X509Certificate;)V
1: aload 2
ifnull 6
aload 2
invokeinterface java.util.Collection.isEmpty:()Z
ifne 6
2: aload 2
getstatic sun.security.x509.PKIXExtensions.CertificatePolicies_Id:Lsun/security/util/ObjectIdentifier;
invokevirtual sun.security.util.ObjectIdentifier.toString:()Ljava/lang/String;
invokeinterface java.util.Collection.remove:(Ljava/lang/Object;)Z
pop
3: aload 2
getstatic sun.security.x509.PKIXExtensions.PolicyMappings_Id:Lsun/security/util/ObjectIdentifier;
invokevirtual sun.security.util.ObjectIdentifier.toString:()Ljava/lang/String;
invokeinterface java.util.Collection.remove:(Ljava/lang/Object;)Z
pop
4: aload 2
getstatic sun.security.x509.PKIXExtensions.PolicyConstraints_Id:Lsun/security/util/ObjectIdentifier;
invokevirtual sun.security.util.ObjectIdentifier.toString:()Ljava/lang/String;
invokeinterface java.util.Collection.remove:(Ljava/lang/Object;)Z
pop
5: aload 2
getstatic sun.security.x509.PKIXExtensions.InhibitAnyPolicy_Id:Lsun/security/util/ObjectIdentifier;
invokevirtual sun.security.util.ObjectIdentifier.toString:()Ljava/lang/String;
invokeinterface java.util.Collection.remove:(Ljava/lang/Object;)Z
pop
6: StackMap locals:
StackMap stack:
return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 7 0 this Lsun/security/provider/certpath/PolicyChecker;
0 7 1 cert Ljava/security/cert/Certificate;
0 7 2 unresCritExts Ljava/util/Collection<Ljava/lang/String;>;
Exceptions:
throws java.security.cert.CertPathValidatorException
Signature: (Ljava/security/cert/Certificate;Ljava/util/Collection<Ljava/lang/String;>;)V
MethodParameters:
Name Flags
cert
unresCritExts
private void checkPolicy(java.security.cert.X509Certificate);
descriptor: (Ljava/security/cert/X509Certificate;)V
flags: (0x0002) ACC_PRIVATE
Code:
stack=10, locals=5, args_size=2
start local 0 start local 1 0: ldc "certificate policies"
astore 2
start local 2 1: getstatic sun.security.provider.certpath.PolicyChecker.debug:Lsun/security/util/Debug;
ifnull 20
2: getstatic sun.security.provider.certpath.PolicyChecker.debug:Lsun/security/util/Debug;
new java.lang.StringBuilder
dup
ldc "PolicyChecker.checkPolicy() ---checking "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 2
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
3: 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: getstatic sun.security.provider.certpath.PolicyChecker.debug:Lsun/security/util/Debug;
new java.lang.StringBuilder
dup
ldc "PolicyChecker.checkPolicy() certIndex = "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
6: aload 0
getfield sun.security.provider.certpath.PolicyChecker.certIndex:I
invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
7: invokevirtual sun.security.util.Debug.println:(Ljava/lang/String;)V
8: getstatic sun.security.provider.certpath.PolicyChecker.debug:Lsun/security/util/Debug;
new java.lang.StringBuilder
dup
ldc "PolicyChecker.checkPolicy() BEFORE PROCESSING: explicitPolicy = "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
9: aload 0
getfield sun.security.provider.certpath.PolicyChecker.explicitPolicy:I
invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
10: invokevirtual sun.security.util.Debug.println:(Ljava/lang/String;)V
11: getstatic sun.security.provider.certpath.PolicyChecker.debug:Lsun/security/util/Debug;
new java.lang.StringBuilder
dup
ldc "PolicyChecker.checkPolicy() BEFORE PROCESSING: policyMapping = "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
12: aload 0
getfield sun.security.provider.certpath.PolicyChecker.policyMapping:I
invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
13: invokevirtual sun.security.util.Debug.println:(Ljava/lang/String;)V
14: getstatic sun.security.provider.certpath.PolicyChecker.debug:Lsun/security/util/Debug;
new java.lang.StringBuilder
dup
ldc "PolicyChecker.checkPolicy() BEFORE PROCESSING: inhibitAnyPolicy = "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
15: aload 0
getfield sun.security.provider.certpath.PolicyChecker.inhibitAnyPolicy:I
invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
16: invokevirtual sun.security.util.Debug.println:(Ljava/lang/String;)V
17: getstatic sun.security.provider.certpath.PolicyChecker.debug:Lsun/security/util/Debug;
new java.lang.StringBuilder
dup
ldc "PolicyChecker.checkPolicy() BEFORE PROCESSING: policyTree = "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
18: aload 0
getfield sun.security.provider.certpath.PolicyChecker.rootNode:Lsun/security/provider/certpath/PolicyNodeImpl;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
19: invokevirtual sun.security.util.Debug.println:(Ljava/lang/String;)V
20: StackMap locals: java.lang.String
StackMap stack:
aconst_null
astore 3
start local 3 21: aload 1
invokestatic sun.security.x509.X509CertImpl.toImpl:(Ljava/security/cert/X509Certificate;)Lsun/security/x509/X509CertImpl;
astore 3
22: goto 25
StackMap locals: sun.security.provider.certpath.PolicyChecker java.security.cert.X509Certificate java.lang.String sun.security.x509.X509CertImpl
StackMap stack: java.security.cert.CertificateException
23: astore 4
start local 4 24: new java.security.cert.CertPathValidatorException
dup
aload 4
invokespecial java.security.cert.CertPathValidatorException.<init>:(Ljava/lang/Throwable;)V
athrow
end local 4 25: StackMap locals:
StackMap stack:
aload 0
getfield sun.security.provider.certpath.PolicyChecker.certIndex:I
aload 0
getfield sun.security.provider.certpath.PolicyChecker.certPathLen:I
if_icmpne 26
iconst_1
goto 27
StackMap locals:
StackMap stack:
26: iconst_0
StackMap locals:
StackMap stack: int
27: istore 4
start local 4 28: aload 0
aload 0
getfield sun.security.provider.certpath.PolicyChecker.certIndex:I
aload 0
getfield sun.security.provider.certpath.PolicyChecker.initPolicies:Ljava/util/Set;
aload 0
getfield sun.security.provider.certpath.PolicyChecker.explicitPolicy:I
29: aload 0
getfield sun.security.provider.certpath.PolicyChecker.policyMapping:I
aload 0
getfield sun.security.provider.certpath.PolicyChecker.inhibitAnyPolicy:I
aload 0
getfield sun.security.provider.certpath.PolicyChecker.rejectPolicyQualifiers:Z
aload 0
getfield sun.security.provider.certpath.PolicyChecker.rootNode:Lsun/security/provider/certpath/PolicyNodeImpl;
30: aload 3
iload 4
31: invokestatic sun.security.provider.certpath.PolicyChecker.processPolicies:(ILjava/util/Set;IIIZLsun/security/provider/certpath/PolicyNodeImpl;Lsun/security/x509/X509CertImpl;Z)Lsun/security/provider/certpath/PolicyNodeImpl;
putfield sun.security.provider.certpath.PolicyChecker.rootNode:Lsun/security/provider/certpath/PolicyNodeImpl;
32: iload 4
ifne 40
33: aload 0
aload 0
getfield sun.security.provider.certpath.PolicyChecker.explicitPolicy:I
aload 3
34: iload 4
35: invokestatic sun.security.provider.certpath.PolicyChecker.mergeExplicitPolicy:(ILsun/security/x509/X509CertImpl;Z)I
putfield sun.security.provider.certpath.PolicyChecker.explicitPolicy:I
36: aload 0
aload 0
getfield sun.security.provider.certpath.PolicyChecker.policyMapping:I
aload 3
invokestatic sun.security.provider.certpath.PolicyChecker.mergePolicyMapping:(ILsun/security/x509/X509CertImpl;)I
putfield sun.security.provider.certpath.PolicyChecker.policyMapping:I
37: aload 0
aload 0
getfield sun.security.provider.certpath.PolicyChecker.inhibitAnyPolicy:I
38: aload 3
39: invokestatic sun.security.provider.certpath.PolicyChecker.mergeInhibitAnyPolicy:(ILsun/security/x509/X509CertImpl;)I
putfield sun.security.provider.certpath.PolicyChecker.inhibitAnyPolicy:I
40: StackMap locals: int
StackMap stack:
aload 0
dup
getfield sun.security.provider.certpath.PolicyChecker.certIndex:I
iconst_1
iadd
putfield sun.security.provider.certpath.PolicyChecker.certIndex:I
41: getstatic sun.security.provider.certpath.PolicyChecker.debug:Lsun/security/util/Debug;
ifnull 55
42: getstatic sun.security.provider.certpath.PolicyChecker.debug:Lsun/security/util/Debug;
new java.lang.StringBuilder
dup
ldc "PolicyChecker.checkPolicy() AFTER PROCESSING: explicitPolicy = "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
43: aload 0
getfield sun.security.provider.certpath.PolicyChecker.explicitPolicy:I
invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
44: invokevirtual sun.security.util.Debug.println:(Ljava/lang/String;)V
45: getstatic sun.security.provider.certpath.PolicyChecker.debug:Lsun/security/util/Debug;
new java.lang.StringBuilder
dup
ldc "PolicyChecker.checkPolicy() AFTER PROCESSING: policyMapping = "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
46: aload 0
getfield sun.security.provider.certpath.PolicyChecker.policyMapping:I
invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
47: invokevirtual sun.security.util.Debug.println:(Ljava/lang/String;)V
48: getstatic sun.security.provider.certpath.PolicyChecker.debug:Lsun/security/util/Debug;
new java.lang.StringBuilder
dup
ldc "PolicyChecker.checkPolicy() AFTER PROCESSING: inhibitAnyPolicy = "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
49: aload 0
getfield sun.security.provider.certpath.PolicyChecker.inhibitAnyPolicy: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: getstatic sun.security.provider.certpath.PolicyChecker.debug:Lsun/security/util/Debug;
new java.lang.StringBuilder
dup
ldc "PolicyChecker.checkPolicy() AFTER PROCESSING: policyTree = "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
52: aload 0
getfield sun.security.provider.certpath.PolicyChecker.rootNode:Lsun/security/provider/certpath/PolicyNodeImpl;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
53: invokevirtual sun.security.util.Debug.println:(Ljava/lang/String;)V
54: getstatic sun.security.provider.certpath.PolicyChecker.debug:Lsun/security/util/Debug;
new java.lang.StringBuilder
dup
ldc "PolicyChecker.checkPolicy() "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 2
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
ldc " verified"
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
55: StackMap locals:
StackMap stack:
return
end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 56 0 this Lsun/security/provider/certpath/PolicyChecker;
0 56 1 currCert Ljava/security/cert/X509Certificate;
1 56 2 msg Ljava/lang/String;
21 56 3 currCertImpl Lsun/security/x509/X509CertImpl;
24 25 4 ce Ljava/security/cert/CertificateException;
28 56 4 finalCert Z
Exception table:
from to target type
21 22 23 Class java.security.cert.CertificateException
Exceptions:
throws java.security.cert.CertPathValidatorException
MethodParameters:
Name Flags
currCert
static int mergeExplicitPolicy(int, sun.security.x509.X509CertImpl, boolean);
descriptor: (ILsun/security/x509/X509CertImpl;Z)I
flags: (0x0008) ACC_STATIC
Code:
stack=4, locals=5, args_size=3
start local 0 start local 1 start local 2 0: iload 0
ifle 2
aload 1
invokestatic sun.security.x509.X509CertImpl.isSelfIssued:(Ljava/security/cert/X509Certificate;)Z
ifne 2
1: iinc 0 -1
2: StackMap locals:
StackMap stack:
aload 1
invokevirtual sun.security.x509.X509CertImpl.getPolicyConstraintsExtension:()Lsun/security/x509/PolicyConstraintsExtension;
3: astore 3
start local 3 4: aload 3
ifnonnull 7
5: iload 0
6: ireturn
7: StackMap locals: sun.security.x509.PolicyConstraintsExtension
StackMap stack:
aload 3
ldc "require"
invokevirtual sun.security.x509.PolicyConstraintsExtension.get:(Ljava/lang/String;)Ljava/lang/Integer;
invokevirtual java.lang.Integer.intValue:()I
8: istore 4
start local 4 9: getstatic sun.security.provider.certpath.PolicyChecker.debug:Lsun/security/util/Debug;
ifnull 13
10: getstatic sun.security.provider.certpath.PolicyChecker.debug:Lsun/security/util/Debug;
new java.lang.StringBuilder
dup
ldc "PolicyChecker.mergeExplicitPolicy() require Index from cert = "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
11: iload 4
invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
12: invokevirtual sun.security.util.Debug.println:(Ljava/lang/String;)V
13: StackMap locals: int
StackMap stack:
iload 2
ifne 18
14: iload 4
iconst_m1
if_icmpeq 26
15: iload 0
iconst_m1
if_icmpeq 16
iload 4
iload 0
if_icmpge 26
16: StackMap locals:
StackMap stack:
iload 4
istore 0
17: goto 26
18: StackMap locals:
StackMap stack:
iload 4
ifne 26
19: iload 4
istore 0
end local 4 end local 3 20: goto 26
StackMap locals: int sun.security.x509.X509CertImpl int
StackMap stack: java.io.IOException
21: astore 3
start local 3 22: getstatic sun.security.provider.certpath.PolicyChecker.debug:Lsun/security/util/Debug;
ifnull 25
23: getstatic sun.security.provider.certpath.PolicyChecker.debug:Lsun/security/util/Debug;
ldc "PolicyChecker.mergeExplicitPolicy unexpected exception"
invokevirtual sun.security.util.Debug.println:(Ljava/lang/String;)V
24: aload 3
invokevirtual java.io.IOException.printStackTrace:()V
25: StackMap locals: java.io.IOException
StackMap stack:
new java.security.cert.CertPathValidatorException
dup
aload 3
invokespecial java.security.cert.CertPathValidatorException.<init>:(Ljava/lang/Throwable;)V
athrow
end local 3 26: StackMap locals:
StackMap stack:
iload 0
ireturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 27 0 explicitPolicy I
0 27 1 currCert Lsun/security/x509/X509CertImpl;
0 27 2 finalCert Z
4 20 3 polConstExt Lsun/security/x509/PolicyConstraintsExtension;
9 20 4 require I
22 26 3 e Ljava/io/IOException;
Exception table:
from to target type
2 6 21 Class java.io.IOException
7 20 21 Class java.io.IOException
Exceptions:
throws java.security.cert.CertPathValidatorException
MethodParameters:
Name Flags
explicitPolicy
currCert
finalCert
static int mergePolicyMapping(int, sun.security.x509.X509CertImpl);
descriptor: (ILsun/security/x509/X509CertImpl;)I
flags: (0x0008) ACC_STATIC
Code:
stack=4, locals=4, args_size=2
start local 0 start local 1 0: iload 0
ifle 2
aload 1
invokestatic sun.security.x509.X509CertImpl.isSelfIssued:(Ljava/security/cert/X509Certificate;)Z
ifne 2
1: iinc 0 -1
2: StackMap locals:
StackMap stack:
aload 1
invokevirtual sun.security.x509.X509CertImpl.getPolicyConstraintsExtension:()Lsun/security/x509/PolicyConstraintsExtension;
3: astore 2
start local 2 4: aload 2
ifnonnull 7
5: iload 0
6: ireturn
7: StackMap locals: sun.security.x509.PolicyConstraintsExtension
StackMap stack:
aload 2
ldc "inhibit"
invokevirtual sun.security.x509.PolicyConstraintsExtension.get:(Ljava/lang/String;)Ljava/lang/Integer;
invokevirtual java.lang.Integer.intValue:()I
8: istore 3
start local 3 9: getstatic sun.security.provider.certpath.PolicyChecker.debug:Lsun/security/util/Debug;
ifnull 13
10: getstatic sun.security.provider.certpath.PolicyChecker.debug:Lsun/security/util/Debug;
new java.lang.StringBuilder
dup
ldc "PolicyChecker.mergePolicyMapping() inhibit Index from cert = "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
11: iload 3
invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
12: invokevirtual sun.security.util.Debug.println:(Ljava/lang/String;)V
13: StackMap locals: int
StackMap stack:
iload 3
iconst_m1
if_icmpeq 22
14: iload 0
iconst_m1
if_icmpeq 15
iload 3
iload 0
if_icmpge 22
15: StackMap locals:
StackMap stack:
iload 3
istore 0
end local 3 end local 2 16: goto 22
StackMap locals: int sun.security.x509.X509CertImpl
StackMap stack: java.io.IOException
17: astore 2
start local 2 18: getstatic sun.security.provider.certpath.PolicyChecker.debug:Lsun/security/util/Debug;
ifnull 21
19: getstatic sun.security.provider.certpath.PolicyChecker.debug:Lsun/security/util/Debug;
ldc "PolicyChecker.mergePolicyMapping unexpected exception"
invokevirtual sun.security.util.Debug.println:(Ljava/lang/String;)V
20: aload 2
invokevirtual java.io.IOException.printStackTrace:()V
21: StackMap locals: java.io.IOException
StackMap stack:
new java.security.cert.CertPathValidatorException
dup
aload 2
invokespecial java.security.cert.CertPathValidatorException.<init>:(Ljava/lang/Throwable;)V
athrow
end local 2 22: StackMap locals:
StackMap stack:
iload 0
ireturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 23 0 policyMapping I
0 23 1 currCert Lsun/security/x509/X509CertImpl;
4 16 2 polConstExt Lsun/security/x509/PolicyConstraintsExtension;
9 16 3 inhibit I
18 22 2 e Ljava/io/IOException;
Exception table:
from to target type
2 6 17 Class java.io.IOException
7 16 17 Class java.io.IOException
Exceptions:
throws java.security.cert.CertPathValidatorException
MethodParameters:
Name Flags
policyMapping
currCert
static int mergeInhibitAnyPolicy(int, sun.security.x509.X509CertImpl);
descriptor: (ILsun/security/x509/X509CertImpl;)I
flags: (0x0008) ACC_STATIC
Code:
stack=4, locals=4, args_size=2
start local 0 start local 1 0: iload 0
ifle 2
aload 1
invokestatic sun.security.x509.X509CertImpl.isSelfIssued:(Ljava/security/cert/X509Certificate;)Z
ifne 2
1: iinc 0 -1
2: StackMap locals:
StackMap stack:
aload 1
getstatic sun.security.x509.PKIXExtensions.InhibitAnyPolicy_Id:Lsun/security/util/ObjectIdentifier;
invokevirtual sun.security.x509.X509CertImpl.getExtension:(Lsun/security/util/ObjectIdentifier;)Lsun/security/x509/Extension;
3: checkcast sun.security.x509.InhibitAnyPolicyExtension
astore 2
start local 2 4: aload 2
ifnonnull 7
5: iload 0
6: ireturn
7: StackMap locals: sun.security.x509.InhibitAnyPolicyExtension
StackMap stack:
aload 2
ldc "skip_certs"
invokevirtual sun.security.x509.InhibitAnyPolicyExtension.get:(Ljava/lang/String;)Ljava/lang/Integer;
invokevirtual java.lang.Integer.intValue:()I
8: istore 3
start local 3 9: getstatic sun.security.provider.certpath.PolicyChecker.debug:Lsun/security/util/Debug;
ifnull 13
10: getstatic sun.security.provider.certpath.PolicyChecker.debug:Lsun/security/util/Debug;
new java.lang.StringBuilder
dup
ldc "PolicyChecker.mergeInhibitAnyPolicy() skipCerts Index from cert = "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
11: iload 3
invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
12: invokevirtual sun.security.util.Debug.println:(Ljava/lang/String;)V
13: StackMap locals: int
StackMap stack:
iload 3
iconst_m1
if_icmpeq 22
14: iload 3
iload 0
if_icmpge 22
15: iload 3
istore 0
end local 3 end local 2 16: goto 22
StackMap locals: int sun.security.x509.X509CertImpl
StackMap stack: java.io.IOException
17: astore 2
start local 2 18: getstatic sun.security.provider.certpath.PolicyChecker.debug:Lsun/security/util/Debug;
ifnull 21
19: getstatic sun.security.provider.certpath.PolicyChecker.debug:Lsun/security/util/Debug;
ldc "PolicyChecker.mergeInhibitAnyPolicy unexpected exception"
invokevirtual sun.security.util.Debug.println:(Ljava/lang/String;)V
20: aload 2
invokevirtual java.io.IOException.printStackTrace:()V
21: StackMap locals: java.io.IOException
StackMap stack:
new java.security.cert.CertPathValidatorException
dup
aload 2
invokespecial java.security.cert.CertPathValidatorException.<init>:(Ljava/lang/Throwable;)V
athrow
end local 2 22: StackMap locals:
StackMap stack:
iload 0
ireturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 23 0 inhibitAnyPolicy I
0 23 1 currCert Lsun/security/x509/X509CertImpl;
4 16 2 inhAnyPolExt Lsun/security/x509/InhibitAnyPolicyExtension;
9 16 3 skipCerts I
18 22 2 e Ljava/io/IOException;
Exception table:
from to target type
2 6 17 Class java.io.IOException
7 16 17 Class java.io.IOException
Exceptions:
throws java.security.cert.CertPathValidatorException
MethodParameters:
Name Flags
inhibitAnyPolicy
currCert
static sun.security.provider.certpath.PolicyNodeImpl processPolicies(int, java.util.Set<java.lang.String>, int, int, int, boolean, sun.security.provider.certpath.PolicyNodeImpl, sun.security.x509.X509CertImpl, boolean);
descriptor: (ILjava/util/Set;IIIZLsun/security/provider/certpath/PolicyNodeImpl;Lsun/security/x509/X509CertImpl;Z)Lsun/security/provider/certpath/PolicyNodeImpl;
flags: (0x0008) ACC_STATIC
Code:
stack=7, locals=20, args_size=9
start local 0 start local 1 start local 2 start local 3 start local 4 start local 5 start local 6 start local 7 start local 8 0: iconst_0
istore 9
start local 9 1: aconst_null
astore 11
start local 11 2: new java.util.HashSet
dup
invokespecial java.util.HashSet.<init>:()V
astore 12
start local 12 3: aload 6
ifnonnull 5
4: aconst_null
astore 11
goto 6
5: StackMap locals: int java.util.Set int int int int sun.security.provider.certpath.PolicyNodeImpl sun.security.x509.X509CertImpl int int top sun.security.provider.certpath.PolicyNodeImpl java.util.Set
StackMap stack:
aload 6
invokevirtual sun.security.provider.certpath.PolicyNodeImpl.copyTree:()Lsun/security/provider/certpath/PolicyNodeImpl;
astore 11
6: StackMap locals:
StackMap stack:
aload 7
invokevirtual sun.security.x509.X509CertImpl.getCertificatePoliciesExtension:()Lsun/security/x509/CertificatePoliciesExtension;
7: astore 13
start local 13 8: aload 13
ifnull 68
aload 11
ifnull 68
9: aload 13
invokevirtual sun.security.x509.CertificatePoliciesExtension.isCritical:()Z
istore 9
10: getstatic sun.security.provider.certpath.PolicyChecker.debug:Lsun/security/util/Debug;
ifnull 14
11: getstatic sun.security.provider.certpath.PolicyChecker.debug:Lsun/security/util/Debug;
new java.lang.StringBuilder
dup
ldc "PolicyChecker.processPolicies() policiesCritical = "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
12: iload 9
invokevirtual java.lang.StringBuilder.append:(Z)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
13: invokevirtual sun.security.util.Debug.println:(Ljava/lang/String;)V
14: StackMap locals: sun.security.x509.CertificatePoliciesExtension
StackMap stack:
aload 13
ldc "policies"
invokevirtual sun.security.x509.CertificatePoliciesExtension.get:(Ljava/lang/String;)Ljava/util/List;
astore 10
start local 10 15: goto 20
end local 10 StackMap locals:
StackMap stack: java.io.IOException
16: astore 14
start local 14 17: new java.security.cert.CertPathValidatorException
dup
ldc "Exception while retrieving policyOIDs"
18: aload 14
19: invokespecial java.security.cert.CertPathValidatorException.<init>:(Ljava/lang/String;Ljava/lang/Throwable;)V
athrow
end local 14 start local 10 20: StackMap locals: int java.util.Set int int int int sun.security.provider.certpath.PolicyNodeImpl sun.security.x509.X509CertImpl int int java.util.List sun.security.provider.certpath.PolicyNodeImpl java.util.Set sun.security.x509.CertificatePoliciesExtension
StackMap stack:
getstatic sun.security.provider.certpath.PolicyChecker.debug:Lsun/security/util/Debug;
ifnull 24
21: getstatic sun.security.provider.certpath.PolicyChecker.debug:Lsun/security/util/Debug;
new java.lang.StringBuilder
dup
ldc "PolicyChecker.processPolicies() rejectPolicyQualifiers = "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
22: iload 5
invokevirtual java.lang.StringBuilder.append:(Z)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
23: invokevirtual sun.security.util.Debug.println:(Ljava/lang/String;)V
24: StackMap locals:
StackMap stack:
iconst_0
istore 14
start local 14 25: aload 10
invokeinterface java.util.List.iterator:()Ljava/util/Iterator;
astore 16
goto 54
StackMap locals: int java.util.Set int int int int sun.security.provider.certpath.PolicyNodeImpl sun.security.x509.X509CertImpl int int java.util.List sun.security.provider.certpath.PolicyNodeImpl java.util.Set sun.security.x509.CertificatePoliciesExtension int top java.util.Iterator
StackMap stack:
26: aload 16
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast sun.security.x509.PolicyInformation
astore 15
start local 15 27: aload 15
invokevirtual sun.security.x509.PolicyInformation.getPolicyIdentifier:()Lsun/security/x509/CertificatePolicyId;
invokevirtual sun.security.x509.CertificatePolicyId.getIdentifier:()Lsun/security/util/ObjectIdentifier;
invokevirtual sun.security.util.ObjectIdentifier.toString:()Ljava/lang/String;
28: astore 17
start local 17 29: aload 17
ldc "2.5.29.32.0"
invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
ifeq 33
30: iconst_1
istore 14
31: aload 15
invokevirtual sun.security.x509.PolicyInformation.getPolicyQualifiers:()Ljava/util/Set;
astore 12
32: goto 54
33: StackMap locals: int java.util.Set int int int int sun.security.provider.certpath.PolicyNodeImpl sun.security.x509.X509CertImpl int int java.util.List sun.security.provider.certpath.PolicyNodeImpl java.util.Set sun.security.x509.CertificatePoliciesExtension int sun.security.x509.PolicyInformation java.util.Iterator java.lang.String
StackMap stack:
getstatic sun.security.provider.certpath.PolicyChecker.debug:Lsun/security/util/Debug;
ifnull 37
34: getstatic sun.security.provider.certpath.PolicyChecker.debug:Lsun/security/util/Debug;
new java.lang.StringBuilder
dup
ldc "PolicyChecker.processPolicies() processing policy: "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
35: aload 17
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
36: invokevirtual sun.security.util.Debug.println:(Ljava/lang/String;)V
37: StackMap locals:
StackMap stack:
aload 15
invokevirtual sun.security.x509.PolicyInformation.getPolicyQualifiers:()Ljava/util/Set;
38: astore 18
start local 18 39: aload 18
invokeinterface java.util.Set.isEmpty:()Z
ifne 45
iload 5
ifeq 45
40: iload 9
ifeq 45
41: new java.security.cert.CertPathValidatorException
dup
42: ldc "critical policy qualifiers present in certificate"
43: aconst_null
aconst_null
iconst_m1
getstatic java.security.cert.PKIXReason.INVALID_POLICY:Ljava/security/cert/PKIXReason;
44: invokespecial java.security.cert.CertPathValidatorException.<init>:(Ljava/lang/String;Ljava/lang/Throwable;Ljava/security/cert/CertPath;ILjava/security/cert/CertPathValidatorException$Reason;)V
athrow
45: StackMap locals: java.util.Set
StackMap stack:
iload 0
46: iload 9
iload 5
aload 11
47: aload 17
aload 18
iconst_0
48: invokestatic sun.security.provider.certpath.PolicyChecker.processParents:(IZZLsun/security/provider/certpath/PolicyNodeImpl;Ljava/lang/String;Ljava/util/Set;Z)Z
istore 19
start local 19 49: iload 19
ifne 54
50: iload 0
iload 9
51: iload 5
aload 11
aload 17
52: aload 18
iconst_1
53: invokestatic sun.security.provider.certpath.PolicyChecker.processParents:(IZZLsun/security/provider/certpath/PolicyNodeImpl;Ljava/lang/String;Ljava/util/Set;Z)Z
pop
end local 19 end local 18 end local 17 end local 15 54: StackMap locals: int java.util.Set int int int int sun.security.provider.certpath.PolicyNodeImpl sun.security.x509.X509CertImpl int int java.util.List sun.security.provider.certpath.PolicyNodeImpl java.util.Set sun.security.x509.CertificatePoliciesExtension int top java.util.Iterator
StackMap stack:
aload 16
invokeinterface java.util.Iterator.hasNext:()Z
ifne 26
55: iload 14
ifeq 64
56: iload 4
ifgt 58
57: iload 8
ifne 64
aload 7
invokestatic sun.security.x509.X509CertImpl.isSelfIssued:(Ljava/security/cert/X509Certificate;)Z
ifeq 64
58: StackMap locals: int java.util.Set int int int int sun.security.provider.certpath.PolicyNodeImpl sun.security.x509.X509CertImpl int int java.util.List sun.security.provider.certpath.PolicyNodeImpl java.util.Set sun.security.x509.CertificatePoliciesExtension int
StackMap stack:
getstatic sun.security.provider.certpath.PolicyChecker.debug:Lsun/security/util/Debug;
ifnull 60
59: getstatic sun.security.provider.certpath.PolicyChecker.debug:Lsun/security/util/Debug;
ldc "PolicyChecker.processPolicies() processing policy: 2.5.29.32.0"
invokevirtual sun.security.util.Debug.println:(Ljava/lang/String;)V
60: StackMap locals:
StackMap stack:
iload 0
iload 9
61: iload 5
aload 11
ldc "2.5.29.32.0"
aload 12
62: iconst_1
63: invokestatic sun.security.provider.certpath.PolicyChecker.processParents:(IZZLsun/security/provider/certpath/PolicyNodeImpl;Ljava/lang/String;Ljava/util/Set;Z)Z
pop
64: StackMap locals:
StackMap stack:
aload 11
iload 0
invokevirtual sun.security.provider.certpath.PolicyNodeImpl.prune:(I)V
65: aload 11
invokevirtual sun.security.provider.certpath.PolicyNodeImpl.getChildren:()Ljava/util/Iterator;
invokeinterface java.util.Iterator.hasNext:()Z
ifne 72
66: aconst_null
astore 11
end local 14 67: goto 72
end local 10 StackMap locals: int java.util.Set int int int int sun.security.provider.certpath.PolicyNodeImpl sun.security.x509.X509CertImpl int int top sun.security.provider.certpath.PolicyNodeImpl java.util.Set sun.security.x509.CertificatePoliciesExtension
StackMap stack:
68: aload 13
ifnonnull 72
69: getstatic sun.security.provider.certpath.PolicyChecker.debug:Lsun/security/util/Debug;
ifnull 71
70: getstatic sun.security.provider.certpath.PolicyChecker.debug:Lsun/security/util/Debug;
ldc "PolicyChecker.processPolicies() no policies present in cert"
invokevirtual sun.security.util.Debug.println:(Ljava/lang/String;)V
71: StackMap locals:
StackMap stack:
aconst_null
astore 11
72: StackMap locals:
StackMap stack:
aload 11
ifnull 77
73: iload 8
ifne 77
74: aload 7
iload 0
75: iload 3
aload 11
iload 9
aload 12
76: invokestatic sun.security.provider.certpath.PolicyChecker.processPolicyMappings:(Lsun/security/x509/X509CertImpl;IILsun/security/provider/certpath/PolicyNodeImpl;ZLjava/util/Set;)Lsun/security/provider/certpath/PolicyNodeImpl;
astore 11
77: StackMap locals:
StackMap stack:
aload 11
ifnull 84
aload 1
ldc "2.5.29.32.0"
invokeinterface java.util.Set.contains:(Ljava/lang/Object;)Z
ifne 84
78: aload 13
ifnull 84
79: aload 11
iload 0
80: aload 1
aload 13
81: invokestatic sun.security.provider.certpath.PolicyChecker.removeInvalidNodes:(Lsun/security/provider/certpath/PolicyNodeImpl;ILjava/util/Set;Lsun/security/x509/CertificatePoliciesExtension;)Lsun/security/provider/certpath/PolicyNodeImpl;
astore 11
82: aload 11
ifnull 84
iload 8
ifeq 84
83: iload 0
aload 1
aload 11
invokestatic sun.security.provider.certpath.PolicyChecker.rewriteLeafNodes:(ILjava/util/Set;Lsun/security/provider/certpath/PolicyNodeImpl;)Lsun/security/provider/certpath/PolicyNodeImpl;
astore 11
84: StackMap locals:
StackMap stack:
iload 8
ifeq 88
85: iload 2
aload 7
86: iload 8
87: invokestatic sun.security.provider.certpath.PolicyChecker.mergeExplicitPolicy:(ILsun/security/x509/X509CertImpl;Z)I
istore 2
88: StackMap locals:
StackMap stack:
iload 2
ifne 93
aload 11
ifnonnull 93
89: new java.security.cert.CertPathValidatorException
dup
90: ldc "non-null policy tree required and policy tree is null"
91: aconst_null
aconst_null
iconst_m1
getstatic java.security.cert.PKIXReason.INVALID_POLICY:Ljava/security/cert/PKIXReason;
92: invokespecial java.security.cert.CertPathValidatorException.<init>:(Ljava/lang/String;Ljava/lang/Throwable;Ljava/security/cert/CertPath;ILjava/security/cert/CertPathValidatorException$Reason;)V
athrow
93: StackMap locals:
StackMap stack:
aload 11
areturn
end local 13 end local 12 end local 11 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 94 0 certIndex I
0 94 1 initPolicies Ljava/util/Set<Ljava/lang/String;>;
0 94 2 explicitPolicy I
0 94 3 policyMapping I
0 94 4 inhibitAnyPolicy I
0 94 5 rejectPolicyQualifiers Z
0 94 6 origRootNode Lsun/security/provider/certpath/PolicyNodeImpl;
0 94 7 currCert Lsun/security/x509/X509CertImpl;
0 94 8 finalCert Z
1 94 9 policiesCritical Z
15 16 10 policyInfo Ljava/util/List<Lsun/security/x509/PolicyInformation;>;
20 68 10 policyInfo Ljava/util/List<Lsun/security/x509/PolicyInformation;>;
2 94 11 rootNode Lsun/security/provider/certpath/PolicyNodeImpl;
3 94 12 anyQuals Ljava/util/Set<Ljava/security/cert/PolicyQualifierInfo;>;
8 94 13 currCertPolicies Lsun/security/x509/CertificatePoliciesExtension;
17 20 14 ioe Ljava/io/IOException;
25 67 14 foundAnyPolicy Z
27 54 15 curPolInfo Lsun/security/x509/PolicyInformation;
29 54 17 curPolicy Ljava/lang/String;
39 54 18 pQuals Ljava/util/Set<Ljava/security/cert/PolicyQualifierInfo;>;
49 54 19 foundMatch Z
Exception table:
from to target type
14 15 16 Class java.io.IOException
Exceptions:
throws java.security.cert.CertPathValidatorException
Signature: (ILjava/util/Set<Ljava/lang/String;>;IIIZLsun/security/provider/certpath/PolicyNodeImpl;Lsun/security/x509/X509CertImpl;Z)Lsun/security/provider/certpath/PolicyNodeImpl;
MethodParameters:
Name Flags
certIndex
initPolicies
explicitPolicy
policyMapping
inhibitAnyPolicy
rejectPolicyQualifiers
origRootNode
currCert
finalCert
private static sun.security.provider.certpath.PolicyNodeImpl rewriteLeafNodes(int, java.util.Set<java.lang.String>, sun.security.provider.certpath.PolicyNodeImpl);
descriptor: (ILjava/util/Set;Lsun/security/provider/certpath/PolicyNodeImpl;)Lsun/security/provider/certpath/PolicyNodeImpl;
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=7, locals=12, args_size=3
start local 0 start local 1 start local 2 0: aload 2
iload 0
ldc "2.5.29.32.0"
invokevirtual sun.security.provider.certpath.PolicyNodeImpl.getPolicyNodesValid:(ILjava/lang/String;)Ljava/util/Set;
1: astore 3
start local 3 2: aload 3
invokeinterface java.util.Set.isEmpty:()Z
ifeq 4
3: aload 2
areturn
4: StackMap locals: java.util.Set
StackMap stack:
aload 3
invokeinterface java.util.Set.iterator:()Ljava/util/Iterator;
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast sun.security.provider.certpath.PolicyNodeImpl
astore 4
start local 4 5: aload 4
invokevirtual sun.security.provider.certpath.PolicyNodeImpl.getParent:()Ljava/security/cert/PolicyNode;
checkcast sun.security.provider.certpath.PolicyNodeImpl
astore 5
start local 5 6: aload 5
aload 4
invokevirtual sun.security.provider.certpath.PolicyNodeImpl.deleteChild:(Ljava/security/cert/PolicyNode;)V
7: new java.util.HashSet
dup
aload 1
invokespecial java.util.HashSet.<init>:(Ljava/util/Collection;)V
astore 6
start local 6 8: aload 2
iload 0
invokevirtual sun.security.provider.certpath.PolicyNodeImpl.getPolicyNodes:(I)Ljava/util/Set;
invokeinterface java.util.Set.iterator:()Ljava/util/Iterator;
astore 8
goto 11
StackMap locals: int java.util.Set sun.security.provider.certpath.PolicyNodeImpl java.util.Set sun.security.provider.certpath.PolicyNodeImpl sun.security.provider.certpath.PolicyNodeImpl java.util.Set top java.util.Iterator
StackMap stack:
9: aload 8
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast sun.security.provider.certpath.PolicyNodeImpl
astore 7
start local 7 10: aload 6
aload 7
invokevirtual sun.security.provider.certpath.PolicyNodeImpl.getValidPolicy:()Ljava/lang/String;
invokeinterface java.util.Set.remove:(Ljava/lang/Object;)Z
pop
end local 7 11: StackMap locals:
StackMap stack:
aload 8
invokeinterface java.util.Iterator.hasNext:()Z
ifne 9
12: aload 6
invokeinterface java.util.Set.isEmpty:()Z
ifeq 17
13: aload 2
iload 0
invokevirtual sun.security.provider.certpath.PolicyNodeImpl.prune:(I)V
14: aload 2
invokevirtual sun.security.provider.certpath.PolicyNodeImpl.getChildren:()Ljava/util/Iterator;
invokeinterface java.util.Iterator.hasNext:()Z
ifne 27
15: aconst_null
astore 2
16: goto 27
17: StackMap locals: int java.util.Set sun.security.provider.certpath.PolicyNodeImpl java.util.Set sun.security.provider.certpath.PolicyNodeImpl sun.security.provider.certpath.PolicyNodeImpl java.util.Set
StackMap stack:
aload 4
invokevirtual sun.security.provider.certpath.PolicyNodeImpl.isCritical:()Z
istore 7
start local 7 18: aload 4
invokevirtual sun.security.provider.certpath.PolicyNodeImpl.getPolicyQualifiers:()Ljava/util/Set;
19: astore 8
start local 8 20: aload 6
invokeinterface java.util.Set.iterator:()Ljava/util/Iterator;
astore 10
goto 26
StackMap locals: int java.util.Set sun.security.provider.certpath.PolicyNodeImpl java.util.Set sun.security.provider.certpath.PolicyNodeImpl sun.security.provider.certpath.PolicyNodeImpl java.util.Set int java.util.Set top java.util.Iterator
StackMap stack:
21: aload 10
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast java.lang.String
astore 9
start local 9 22: aload 9
invokestatic java.util.Collections.singleton:(Ljava/lang/Object;)Ljava/util/Set;
astore 11
start local 11 23: new sun.security.provider.certpath.PolicyNodeImpl
aload 5
aload 9
24: aload 8
iload 7
aload 11
iconst_0
25: invokespecial sun.security.provider.certpath.PolicyNodeImpl.<init>:(Lsun/security/provider/certpath/PolicyNodeImpl;Ljava/lang/String;Ljava/util/Set;ZLjava/util/Set;Z)V
end local 11 end local 9 26: StackMap locals:
StackMap stack:
aload 10
invokeinterface java.util.Iterator.hasNext:()Z
ifne 21
end local 8 end local 7 27: StackMap locals: int java.util.Set sun.security.provider.certpath.PolicyNodeImpl java.util.Set sun.security.provider.certpath.PolicyNodeImpl sun.security.provider.certpath.PolicyNodeImpl java.util.Set
StackMap stack:
aload 2
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 28 0 certIndex I
0 28 1 initPolicies Ljava/util/Set<Ljava/lang/String;>;
0 28 2 rootNode Lsun/security/provider/certpath/PolicyNodeImpl;
2 28 3 anyNodes Ljava/util/Set<Lsun/security/provider/certpath/PolicyNodeImpl;>;
5 28 4 anyNode Lsun/security/provider/certpath/PolicyNodeImpl;
6 28 5 parentNode Lsun/security/provider/certpath/PolicyNodeImpl;
8 28 6 initial Ljava/util/Set<Ljava/lang/String;>;
10 11 7 node Lsun/security/provider/certpath/PolicyNodeImpl;
18 27 7 anyCritical Z
20 27 8 anyQualifiers Ljava/util/Set<Ljava/security/cert/PolicyQualifierInfo;>;
22 26 9 policy Ljava/lang/String;
23 26 11 expectedPolicies Ljava/util/Set<Ljava/lang/String;>;
Signature: (ILjava/util/Set<Ljava/lang/String;>;Lsun/security/provider/certpath/PolicyNodeImpl;)Lsun/security/provider/certpath/PolicyNodeImpl;
MethodParameters:
Name Flags
certIndex
initPolicies
rootNode
private static boolean processParents(int, boolean, boolean, sun.security.provider.certpath.PolicyNodeImpl, java.lang.String, java.util.Set<java.security.cert.PolicyQualifierInfo>, );
descriptor: (IZZLsun/security/provider/certpath/PolicyNodeImpl;Ljava/lang/String;Ljava/util/Set;Z)Z
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=8, locals=18, 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: iconst_0
istore 7
start local 7 1: getstatic sun.security.provider.certpath.PolicyChecker.debug:Lsun/security/util/Debug;
ifnull 5
2: getstatic sun.security.provider.certpath.PolicyChecker.debug:Lsun/security/util/Debug;
new java.lang.StringBuilder
dup
ldc "PolicyChecker.processParents(): matchAny = "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
3: iload 6
invokevirtual java.lang.StringBuilder.append:(Z)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: int
StackMap stack:
aload 3
iload 0
iconst_1
isub
6: aload 4
iload 6
7: invokevirtual sun.security.provider.certpath.PolicyNodeImpl.getPolicyNodesExpected:(ILjava/lang/String;Z)Ljava/util/Set;
8: astore 8
start local 8 9: aload 8
invokeinterface java.util.Set.iterator:()Ljava/util/Iterator;
astore 10
goto 49
StackMap locals: int int int sun.security.provider.certpath.PolicyNodeImpl java.lang.String java.util.Set int int java.util.Set top java.util.Iterator
StackMap stack:
10: aload 10
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast sun.security.provider.certpath.PolicyNodeImpl
astore 9
start local 9 11: getstatic sun.security.provider.certpath.PolicyChecker.debug:Lsun/security/util/Debug;
ifnull 15
12: getstatic sun.security.provider.certpath.PolicyChecker.debug:Lsun/security/util/Debug;
new java.lang.StringBuilder
dup
ldc "PolicyChecker.processParents() found parent:\n"
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
13: aload 9
invokevirtual sun.security.provider.certpath.PolicyNodeImpl.asString:()Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
14: invokevirtual sun.security.util.Debug.println:(Ljava/lang/String;)V
15: StackMap locals: int int int sun.security.provider.certpath.PolicyNodeImpl java.lang.String java.util.Set int int java.util.Set sun.security.provider.certpath.PolicyNodeImpl java.util.Iterator
StackMap stack:
iconst_1
istore 7
16: aload 9
invokevirtual sun.security.provider.certpath.PolicyNodeImpl.getValidPolicy:()Ljava/lang/String;
pop
17: aconst_null
astore 11
start local 11 18: aload 4
ldc "2.5.29.32.0"
invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
ifeq 43
19: aload 9
invokevirtual sun.security.provider.certpath.PolicyNodeImpl.getExpectedPolicies:()Ljava/util/Set;
astore 12
start local 12 20: aload 12
invokeinterface java.util.Set.iterator:()Ljava/util/Iterator;
astore 14
goto 41
StackMap locals: int int int sun.security.provider.certpath.PolicyNodeImpl java.lang.String java.util.Set int int java.util.Set sun.security.provider.certpath.PolicyNodeImpl java.util.Iterator java.util.Set java.util.Set top java.util.Iterator
StackMap stack:
21: aload 14
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast java.lang.String
astore 13
start local 13 22: aload 9
invokevirtual sun.security.provider.certpath.PolicyNodeImpl.getChildren:()Ljava/util/Iterator;
23: astore 15
start local 15 24: goto 34
25: StackMap locals: int int int sun.security.provider.certpath.PolicyNodeImpl java.lang.String java.util.Set int int java.util.Set sun.security.provider.certpath.PolicyNodeImpl java.util.Iterator java.util.Set java.util.Set java.lang.String java.util.Iterator java.util.Iterator
StackMap stack:
aload 15
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast sun.security.provider.certpath.PolicyNodeImpl
astore 16
start local 16 26: aload 16
invokevirtual sun.security.provider.certpath.PolicyNodeImpl.getValidPolicy:()Ljava/lang/String;
astore 17
start local 17 27: aload 13
aload 17
invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
ifeq 34
28: getstatic sun.security.provider.certpath.PolicyChecker.debug:Lsun/security/util/Debug;
ifnull 41
29: getstatic sun.security.provider.certpath.PolicyChecker.debug:Lsun/security/util/Debug;
new java.lang.StringBuilder
dup
aload 17
invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
ldc " in parent's "
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
30: ldc "expected policy set already appears in "
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
31: ldc "child node"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
32: invokevirtual sun.security.util.Debug.println:(Ljava/lang/String;)V
33: goto 41
end local 17 end local 16 34: StackMap locals:
StackMap stack:
aload 15
invokeinterface java.util.Iterator.hasNext:()Z
ifne 25
35: new java.util.HashSet
dup
invokespecial java.util.HashSet.<init>:()V
astore 16
start local 16 36: aload 16
aload 13
invokeinterface java.util.Set.add:(Ljava/lang/Object;)Z
pop
37: new sun.security.provider.certpath.PolicyNodeImpl
dup
38: aload 9
aload 13
aload 5
39: iload 1
aload 16
iconst_0
40: invokespecial sun.security.provider.certpath.PolicyNodeImpl.<init>:(Lsun/security/provider/certpath/PolicyNodeImpl;Ljava/lang/String;Ljava/util/Set;ZLjava/util/Set;Z)V
pop
end local 16 end local 15 end local 13 41: StackMap locals: int int int sun.security.provider.certpath.PolicyNodeImpl java.lang.String java.util.Set int int java.util.Set sun.security.provider.certpath.PolicyNodeImpl java.util.Iterator java.util.Set java.util.Set top java.util.Iterator
StackMap stack:
aload 14
invokeinterface java.util.Iterator.hasNext:()Z
ifne 21
end local 12 42: goto 49
43: StackMap locals: int int int sun.security.provider.certpath.PolicyNodeImpl java.lang.String java.util.Set int int java.util.Set sun.security.provider.certpath.PolicyNodeImpl java.util.Iterator java.util.Set
StackMap stack:
new java.util.HashSet
dup
invokespecial java.util.HashSet.<init>:()V
astore 11
44: aload 11
aload 4
invokeinterface java.util.Set.add:(Ljava/lang/Object;)Z
pop
45: new sun.security.provider.certpath.PolicyNodeImpl
dup
46: aload 9
aload 4
aload 5
47: iload 1
aload 11
iconst_0
48: invokespecial sun.security.provider.certpath.PolicyNodeImpl.<init>:(Lsun/security/provider/certpath/PolicyNodeImpl;Ljava/lang/String;Ljava/util/Set;ZLjava/util/Set;Z)V
pop
end local 11 end local 9 49: StackMap locals: int int int sun.security.provider.certpath.PolicyNodeImpl java.lang.String java.util.Set int int java.util.Set top java.util.Iterator
StackMap stack:
aload 10
invokeinterface java.util.Iterator.hasNext:()Z
ifne 10
50: iload 7
ireturn
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 51 0 certIndex I
0 51 1 policiesCritical Z
0 51 2 rejectPolicyQualifiers Z
0 51 3 rootNode Lsun/security/provider/certpath/PolicyNodeImpl;
0 51 4 curPolicy Ljava/lang/String;
0 51 5 pQuals Ljava/util/Set<Ljava/security/cert/PolicyQualifierInfo;>;
0 51 6 matchAny Z
1 51 7 foundMatch Z
9 51 8 parentNodes Ljava/util/Set<Lsun/security/provider/certpath/PolicyNodeImpl;>;
11 49 9 curParent Lsun/security/provider/certpath/PolicyNodeImpl;
18 49 11 curExpPols Ljava/util/Set<Ljava/lang/String;>;
20 42 12 parExpPols Ljava/util/Set<Ljava/lang/String;>;
22 41 13 curParExpPol Ljava/lang/String;
24 41 15 childIter Ljava/util/Iterator<Lsun/security/provider/certpath/PolicyNodeImpl;>;
26 34 16 childNode Lsun/security/provider/certpath/PolicyNodeImpl;
27 34 17 childPolicy Ljava/lang/String;
36 41 16 expPols Ljava/util/Set<Ljava/lang/String;>;
Exceptions:
throws java.security.cert.CertPathValidatorException
Signature: (IZZLsun/security/provider/certpath/PolicyNodeImpl;Ljava/lang/String;Ljava/util/Set<Ljava/security/cert/PolicyQualifierInfo;>;Z)Z
MethodParameters:
Name Flags
certIndex
policiesCritical
rejectPolicyQualifiers
rootNode
curPolicy
pQuals
matchAny
private static sun.security.provider.certpath.PolicyNodeImpl processPolicyMappings(sun.security.x509.X509CertImpl, int, int, sun.security.provider.certpath.PolicyNodeImpl, boolean, java.util.Set<java.security.cert.PolicyQualifierInfo>);
descriptor: (Lsun/security/x509/X509CertImpl;IILsun/security/provider/certpath/PolicyNodeImpl;ZLjava/util/Set;)Lsun/security/provider/certpath/PolicyNodeImpl;
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=7, locals=19, args_size=6
start local 0 start local 1 start local 2 start local 3 start local 4 start local 5 0: aload 0
invokevirtual sun.security.x509.X509CertImpl.getPolicyMappingsExtension:()Lsun/security/x509/PolicyMappingsExtension;
1: astore 6
start local 6 2: aload 6
ifnonnull 4
3: aload 3
areturn
4: StackMap locals: sun.security.x509.PolicyMappingsExtension
StackMap stack:
getstatic sun.security.provider.certpath.PolicyChecker.debug:Lsun/security/util/Debug;
ifnull 6
5: getstatic sun.security.provider.certpath.PolicyChecker.debug:Lsun/security/util/Debug;
ldc "PolicyChecker.processPolicyMappings() inside policyMapping check"
invokevirtual sun.security.util.Debug.println:(Ljava/lang/String;)V
6: StackMap locals:
StackMap stack:
aconst_null
astore 7
start local 7 7: aload 6
ldc "map"
invokevirtual sun.security.x509.PolicyMappingsExtension.get:(Ljava/lang/String;)Ljava/util/List;
astore 7
8: goto 16
StackMap locals: sun.security.x509.X509CertImpl int int sun.security.provider.certpath.PolicyNodeImpl int java.util.Set sun.security.x509.PolicyMappingsExtension java.util.List
StackMap stack: java.io.IOException
9: astore 8
start local 8 10: getstatic sun.security.provider.certpath.PolicyChecker.debug:Lsun/security/util/Debug;
ifnull 13
11: getstatic sun.security.provider.certpath.PolicyChecker.debug:Lsun/security/util/Debug;
ldc "PolicyChecker.processPolicyMappings() mapping exception"
invokevirtual sun.security.util.Debug.println:(Ljava/lang/String;)V
12: aload 8
invokevirtual java.io.IOException.printStackTrace:()V
13: StackMap locals: java.io.IOException
StackMap stack:
new java.security.cert.CertPathValidatorException
dup
ldc "Exception while checking mapping"
14: aload 8
15: invokespecial java.security.cert.CertPathValidatorException.<init>:(Ljava/lang/String;Ljava/lang/Throwable;)V
athrow
end local 8 16: StackMap locals:
StackMap stack:
iconst_0
istore 8
start local 8 17: aload 7
invokeinterface java.util.List.iterator:()Ljava/util/Iterator;
astore 10
goto 77
StackMap locals: sun.security.x509.X509CertImpl int int sun.security.provider.certpath.PolicyNodeImpl int java.util.Set sun.security.x509.PolicyMappingsExtension java.util.List int top java.util.Iterator
StackMap stack:
18: aload 10
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast sun.security.x509.CertificatePolicyMap
astore 9
start local 9 19: aload 9
invokevirtual sun.security.x509.CertificatePolicyMap.getIssuerIdentifier:()Lsun/security/x509/CertificatePolicyId;
invokevirtual sun.security.x509.CertificatePolicyId.getIdentifier:()Lsun/security/util/ObjectIdentifier;
invokevirtual sun.security.util.ObjectIdentifier.toString:()Ljava/lang/String;
20: astore 11
start local 11 21: aload 9
invokevirtual sun.security.x509.CertificatePolicyMap.getSubjectIdentifier:()Lsun/security/x509/CertificatePolicyId;
invokevirtual sun.security.x509.CertificatePolicyId.getIdentifier:()Lsun/security/util/ObjectIdentifier;
invokevirtual sun.security.util.ObjectIdentifier.toString:()Ljava/lang/String;
22: astore 12
start local 12 23: getstatic sun.security.provider.certpath.PolicyChecker.debug:Lsun/security/util/Debug;
ifnull 30
24: getstatic sun.security.provider.certpath.PolicyChecker.debug:Lsun/security/util/Debug;
new java.lang.StringBuilder
dup
ldc "PolicyChecker.processPolicyMappings() issuerDomain = "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
25: aload 11
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
26: invokevirtual sun.security.util.Debug.println:(Ljava/lang/String;)V
27: getstatic sun.security.provider.certpath.PolicyChecker.debug:Lsun/security/util/Debug;
new java.lang.StringBuilder
dup
ldc "PolicyChecker.processPolicyMappings() subjectDomain = "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
28: aload 12
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
29: invokevirtual sun.security.util.Debug.println:(Ljava/lang/String;)V
30: StackMap locals: sun.security.x509.X509CertImpl int int sun.security.provider.certpath.PolicyNodeImpl int java.util.Set sun.security.x509.PolicyMappingsExtension java.util.List int sun.security.x509.CertificatePolicyMap java.util.Iterator java.lang.String java.lang.String
StackMap stack:
aload 11
ldc "2.5.29.32.0"
invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
ifeq 35
31: new java.security.cert.CertPathValidatorException
dup
32: ldc "encountered an issuerDomainPolicy of ANY_POLICY"
33: aconst_null
aconst_null
iconst_m1
getstatic java.security.cert.PKIXReason.INVALID_POLICY:Ljava/security/cert/PKIXReason;
34: invokespecial java.security.cert.CertPathValidatorException.<init>:(Ljava/lang/String;Ljava/lang/Throwable;Ljava/security/cert/CertPath;ILjava/security/cert/CertPathValidatorException$Reason;)V
athrow
35: StackMap locals:
StackMap stack:
aload 12
ldc "2.5.29.32.0"
invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
ifeq 40
36: new java.security.cert.CertPathValidatorException
dup
37: ldc "encountered a subjectDomainPolicy of ANY_POLICY"
38: aconst_null
aconst_null
iconst_m1
getstatic java.security.cert.PKIXReason.INVALID_POLICY:Ljava/security/cert/PKIXReason;
39: invokespecial java.security.cert.CertPathValidatorException.<init>:(Ljava/lang/String;Ljava/lang/Throwable;Ljava/security/cert/CertPath;ILjava/security/cert/CertPathValidatorException$Reason;)V
athrow
40: StackMap locals:
StackMap stack:
aload 3
iload 1
aload 11
invokevirtual sun.security.provider.certpath.PolicyNodeImpl.getPolicyNodesValid:(ILjava/lang/String;)Ljava/util/Set;
41: astore 13
start local 13 42: aload 13
invokeinterface java.util.Set.isEmpty:()Z
ifne 63
43: aload 13
invokeinterface java.util.Set.iterator:()Ljava/util/Iterator;
astore 15
goto 61
StackMap locals: sun.security.x509.X509CertImpl int int sun.security.provider.certpath.PolicyNodeImpl int java.util.Set sun.security.x509.PolicyMappingsExtension java.util.List int sun.security.x509.CertificatePolicyMap java.util.Iterator java.lang.String java.lang.String java.util.Set top java.util.Iterator
StackMap stack:
44: aload 15
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast sun.security.provider.certpath.PolicyNodeImpl
astore 14
start local 14 45: iload 2
ifgt 46
iload 2
iconst_m1
if_icmpne 48
46: StackMap locals: sun.security.x509.X509CertImpl int int sun.security.provider.certpath.PolicyNodeImpl int java.util.Set sun.security.x509.PolicyMappingsExtension java.util.List int sun.security.x509.CertificatePolicyMap java.util.Iterator java.lang.String java.lang.String java.util.Set sun.security.provider.certpath.PolicyNodeImpl java.util.Iterator
StackMap stack:
aload 14
aload 12
invokevirtual sun.security.provider.certpath.PolicyNodeImpl.addExpectedPolicy:(Ljava/lang/String;)V
47: goto 61
StackMap locals:
StackMap stack:
48: iload 2
ifne 61
49: aload 14
invokevirtual sun.security.provider.certpath.PolicyNodeImpl.getParent:()Ljava/security/cert/PolicyNode;
checkcast sun.security.provider.certpath.PolicyNodeImpl
50: astore 16
start local 16 51: getstatic sun.security.provider.certpath.PolicyChecker.debug:Lsun/security/util/Debug;
ifnull 55
52: getstatic sun.security.provider.certpath.PolicyChecker.debug:Lsun/security/util/Debug;
new java.lang.StringBuilder
dup
ldc "PolicyChecker.processPolicyMappings() before deleting: policy tree = "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
53: aload 3
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
54: invokevirtual sun.security.util.Debug.println:(Ljava/lang/String;)V
55: StackMap locals: sun.security.provider.certpath.PolicyNodeImpl
StackMap stack:
aload 16
aload 14
invokevirtual sun.security.provider.certpath.PolicyNodeImpl.deleteChild:(Ljava/security/cert/PolicyNode;)V
56: iconst_1
istore 8
57: getstatic sun.security.provider.certpath.PolicyChecker.debug:Lsun/security/util/Debug;
ifnull 61
58: getstatic sun.security.provider.certpath.PolicyChecker.debug:Lsun/security/util/Debug;
new java.lang.StringBuilder
dup
ldc "PolicyChecker.processPolicyMappings() after deleting: policy tree = "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
59: aload 3
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
60: invokevirtual sun.security.util.Debug.println:(Ljava/lang/String;)V
end local 16 end local 14 61: StackMap locals: sun.security.x509.X509CertImpl int int sun.security.provider.certpath.PolicyNodeImpl int java.util.Set sun.security.x509.PolicyMappingsExtension java.util.List int sun.security.x509.CertificatePolicyMap java.util.Iterator java.lang.String java.lang.String java.util.Set top java.util.Iterator
StackMap stack:
aload 15
invokeinterface java.util.Iterator.hasNext:()Z
ifne 44
62: goto 77
63: StackMap locals: sun.security.x509.X509CertImpl int int sun.security.provider.certpath.PolicyNodeImpl int java.util.Set sun.security.x509.PolicyMappingsExtension java.util.List int sun.security.x509.CertificatePolicyMap java.util.Iterator java.lang.String java.lang.String java.util.Set
StackMap stack:
iload 2
ifgt 64
iload 2
iconst_m1
if_icmpne 77
64: StackMap locals:
StackMap stack:
aload 3
iload 1
ldc "2.5.29.32.0"
invokevirtual sun.security.provider.certpath.PolicyNodeImpl.getPolicyNodesValid:(ILjava/lang/String;)Ljava/util/Set;
65: astore 14
start local 14 66: aload 14
invokeinterface java.util.Set.iterator:()Ljava/util/Iterator;
astore 16
goto 76
StackMap locals: sun.security.x509.X509CertImpl int int sun.security.provider.certpath.PolicyNodeImpl int java.util.Set sun.security.x509.PolicyMappingsExtension java.util.List int sun.security.x509.CertificatePolicyMap java.util.Iterator java.lang.String java.lang.String java.util.Set java.util.Set top java.util.Iterator
StackMap stack:
67: aload 16
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast sun.security.provider.certpath.PolicyNodeImpl
astore 15
start local 15 68: aload 15
invokevirtual sun.security.provider.certpath.PolicyNodeImpl.getParent:()Ljava/security/cert/PolicyNode;
checkcast sun.security.provider.certpath.PolicyNodeImpl
69: astore 17
start local 17 70: new java.util.HashSet
dup
invokespecial java.util.HashSet.<init>:()V
astore 18
start local 18 71: aload 18
aload 12
invokeinterface java.util.Set.add:(Ljava/lang/Object;)Z
pop
72: new sun.security.provider.certpath.PolicyNodeImpl
73: aload 17
aload 11
aload 5
74: iload 4
aload 18
iconst_1
75: invokespecial sun.security.provider.certpath.PolicyNodeImpl.<init>:(Lsun/security/provider/certpath/PolicyNodeImpl;Ljava/lang/String;Ljava/util/Set;ZLjava/util/Set;Z)V
end local 18 end local 17 end local 15 76: StackMap locals:
StackMap stack:
aload 16
invokeinterface java.util.Iterator.hasNext:()Z
ifne 67
end local 14 end local 13 end local 12 end local 11 end local 9 77: StackMap locals: sun.security.x509.X509CertImpl int int sun.security.provider.certpath.PolicyNodeImpl int java.util.Set sun.security.x509.PolicyMappingsExtension java.util.List int top java.util.Iterator
StackMap stack:
aload 10
invokeinterface java.util.Iterator.hasNext:()Z
ifne 18
78: iload 8
ifeq 84
79: aload 3
iload 1
invokevirtual sun.security.provider.certpath.PolicyNodeImpl.prune:(I)V
80: aload 3
invokevirtual sun.security.provider.certpath.PolicyNodeImpl.getChildren:()Ljava/util/Iterator;
invokeinterface java.util.Iterator.hasNext:()Z
ifne 84
81: getstatic sun.security.provider.certpath.PolicyChecker.debug:Lsun/security/util/Debug;
ifnull 83
82: getstatic sun.security.provider.certpath.PolicyChecker.debug:Lsun/security/util/Debug;
ldc "setting rootNode to null"
invokevirtual sun.security.util.Debug.println:(Ljava/lang/String;)V
83: StackMap locals: sun.security.x509.X509CertImpl int int sun.security.provider.certpath.PolicyNodeImpl int java.util.Set sun.security.x509.PolicyMappingsExtension java.util.List int
StackMap stack:
aconst_null
astore 3
84: StackMap locals:
StackMap stack:
aload 3
areturn
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 85 0 currCert Lsun/security/x509/X509CertImpl;
0 85 1 certIndex I
0 85 2 policyMapping I
0 85 3 rootNode Lsun/security/provider/certpath/PolicyNodeImpl;
0 85 4 policiesCritical Z
0 85 5 anyQuals Ljava/util/Set<Ljava/security/cert/PolicyQualifierInfo;>;
2 85 6 polMappingsExt Lsun/security/x509/PolicyMappingsExtension;
7 85 7 maps Ljava/util/List<Lsun/security/x509/CertificatePolicyMap;>;
10 16 8 e Ljava/io/IOException;
17 85 8 childDeleted Z
19 77 9 polMap Lsun/security/x509/CertificatePolicyMap;
21 77 11 issuerDomain Ljava/lang/String;
23 77 12 subjectDomain Ljava/lang/String;
42 77 13 validNodes Ljava/util/Set<Lsun/security/provider/certpath/PolicyNodeImpl;>;
45 61 14 curNode Lsun/security/provider/certpath/PolicyNodeImpl;
51 61 16 parentNode Lsun/security/provider/certpath/PolicyNodeImpl;
66 77 14 validAnyNodes Ljava/util/Set<Lsun/security/provider/certpath/PolicyNodeImpl;>;
68 76 15 curAnyNode Lsun/security/provider/certpath/PolicyNodeImpl;
70 76 17 curAnyNodeParent Lsun/security/provider/certpath/PolicyNodeImpl;
71 76 18 expPols Ljava/util/Set<Ljava/lang/String;>;
Exception table:
from to target type
7 8 9 Class java.io.IOException
Exceptions:
throws java.security.cert.CertPathValidatorException
Signature: (Lsun/security/x509/X509CertImpl;IILsun/security/provider/certpath/PolicyNodeImpl;ZLjava/util/Set<Ljava/security/cert/PolicyQualifierInfo;>;)Lsun/security/provider/certpath/PolicyNodeImpl;
MethodParameters:
Name Flags
currCert
certIndex
policyMapping
rootNode
policiesCritical
anyQuals
private static sun.security.provider.certpath.PolicyNodeImpl removeInvalidNodes(sun.security.provider.certpath.PolicyNodeImpl, int, java.util.Set<java.lang.String>, sun.security.x509.CertificatePoliciesExtension);
descriptor: (Lsun/security/provider/certpath/PolicyNodeImpl;ILjava/util/Set;Lsun/security/x509/CertificatePoliciesExtension;)Lsun/security/provider/certpath/PolicyNodeImpl;
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=4, locals=13, args_size=4
start local 0 start local 1 start local 2 start local 3 0: aconst_null
astore 4
start local 4 1: aload 3
ldc "policies"
invokevirtual sun.security.x509.CertificatePoliciesExtension.get:(Ljava/lang/String;)Ljava/util/List;
astore 4
2: goto 7
StackMap locals: sun.security.provider.certpath.PolicyNodeImpl int java.util.Set sun.security.x509.CertificatePoliciesExtension java.util.List
StackMap stack: java.io.IOException
3: astore 5
start local 5 4: new java.security.cert.CertPathValidatorException
dup
ldc "Exception while retrieving policyOIDs"
5: aload 5
6: invokespecial java.security.cert.CertPathValidatorException.<init>:(Ljava/lang/String;Ljava/lang/Throwable;)V
athrow
end local 5 7: StackMap locals:
StackMap stack:
iconst_0
istore 5
start local 5 8: aload 4
invokeinterface java.util.List.iterator:()Ljava/util/Iterator;
astore 7
goto 35
StackMap locals: sun.security.provider.certpath.PolicyNodeImpl int java.util.Set sun.security.x509.CertificatePoliciesExtension java.util.List int top java.util.Iterator
StackMap stack:
9: aload 7
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast sun.security.x509.PolicyInformation
astore 6
start local 6 10: aload 6
invokevirtual sun.security.x509.PolicyInformation.getPolicyIdentifier:()Lsun/security/x509/CertificatePolicyId;
invokevirtual sun.security.x509.CertificatePolicyId.getIdentifier:()Lsun/security/util/ObjectIdentifier;
invokevirtual sun.security.util.ObjectIdentifier.toString:()Ljava/lang/String;
11: astore 8
start local 8 12: getstatic sun.security.provider.certpath.PolicyChecker.debug:Lsun/security/util/Debug;
ifnull 16
13: getstatic sun.security.provider.certpath.PolicyChecker.debug:Lsun/security/util/Debug;
new java.lang.StringBuilder
dup
ldc "PolicyChecker.processPolicies() processing policy second time: "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
14: aload 8
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
15: invokevirtual sun.security.util.Debug.println:(Ljava/lang/String;)V
16: StackMap locals: sun.security.provider.certpath.PolicyNodeImpl int java.util.Set sun.security.x509.CertificatePoliciesExtension java.util.List int sun.security.x509.PolicyInformation java.util.Iterator java.lang.String
StackMap stack:
aload 0
iload 1
aload 8
invokevirtual sun.security.provider.certpath.PolicyNodeImpl.getPolicyNodesValid:(ILjava/lang/String;)Ljava/util/Set;
17: astore 9
start local 9 18: aload 9
invokeinterface java.util.Set.iterator:()Ljava/util/Iterator;
astore 11
goto 34
StackMap locals: sun.security.provider.certpath.PolicyNodeImpl int java.util.Set sun.security.x509.CertificatePoliciesExtension java.util.List int sun.security.x509.PolicyInformation java.util.Iterator java.lang.String java.util.Set top java.util.Iterator
StackMap stack:
19: aload 11
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast sun.security.provider.certpath.PolicyNodeImpl
astore 10
start local 10 20: aload 10
invokevirtual sun.security.provider.certpath.PolicyNodeImpl.getParent:()Ljava/security/cert/PolicyNode;
checkcast sun.security.provider.certpath.PolicyNodeImpl
astore 12
start local 12 21: aload 12
invokevirtual sun.security.provider.certpath.PolicyNodeImpl.getValidPolicy:()Ljava/lang/String;
ldc "2.5.29.32.0"
invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
ifeq 34
22: aload 2
aload 8
invokeinterface java.util.Set.contains:(Ljava/lang/Object;)Z
ifne 34
23: aload 8
ldc "2.5.29.32.0"
invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
ifne 34
24: getstatic sun.security.provider.certpath.PolicyChecker.debug:Lsun/security/util/Debug;
ifnull 28
25: getstatic sun.security.provider.certpath.PolicyChecker.debug:Lsun/security/util/Debug;
new java.lang.StringBuilder
dup
ldc "PolicyChecker.processPolicies() before deleting: policy tree = "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
26: aload 0
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
27: invokevirtual sun.security.util.Debug.println:(Ljava/lang/String;)V
28: StackMap locals: sun.security.provider.certpath.PolicyNodeImpl int java.util.Set sun.security.x509.CertificatePoliciesExtension java.util.List int sun.security.x509.PolicyInformation java.util.Iterator java.lang.String java.util.Set sun.security.provider.certpath.PolicyNodeImpl java.util.Iterator sun.security.provider.certpath.PolicyNodeImpl
StackMap stack:
aload 12
aload 10
invokevirtual sun.security.provider.certpath.PolicyNodeImpl.deleteChild:(Ljava/security/cert/PolicyNode;)V
29: iconst_1
istore 5
30: getstatic sun.security.provider.certpath.PolicyChecker.debug:Lsun/security/util/Debug;
ifnull 34
31: getstatic sun.security.provider.certpath.PolicyChecker.debug:Lsun/security/util/Debug;
new java.lang.StringBuilder
dup
ldc "PolicyChecker.processPolicies() after deleting: policy tree = "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
32: aload 0
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
33: invokevirtual sun.security.util.Debug.println:(Ljava/lang/String;)V
end local 12 end local 10 34: StackMap locals: sun.security.provider.certpath.PolicyNodeImpl int java.util.Set sun.security.x509.CertificatePoliciesExtension java.util.List int sun.security.x509.PolicyInformation java.util.Iterator java.lang.String java.util.Set top java.util.Iterator
StackMap stack:
aload 11
invokeinterface java.util.Iterator.hasNext:()Z
ifne 19
end local 9 end local 8 end local 6 35: StackMap locals: sun.security.provider.certpath.PolicyNodeImpl int java.util.Set sun.security.x509.CertificatePoliciesExtension java.util.List int top java.util.Iterator
StackMap stack:
aload 7
invokeinterface java.util.Iterator.hasNext:()Z
ifne 9
36: iload 5
ifeq 40
37: aload 0
iload 1
invokevirtual sun.security.provider.certpath.PolicyNodeImpl.prune:(I)V
38: aload 0
invokevirtual sun.security.provider.certpath.PolicyNodeImpl.getChildren:()Ljava/util/Iterator;
invokeinterface java.util.Iterator.hasNext:()Z
ifne 40
39: aconst_null
astore 0
40: StackMap locals: sun.security.provider.certpath.PolicyNodeImpl int java.util.Set sun.security.x509.CertificatePoliciesExtension java.util.List int
StackMap stack:
aload 0
areturn
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 rootNode Lsun/security/provider/certpath/PolicyNodeImpl;
0 41 1 certIndex I
0 41 2 initPolicies Ljava/util/Set<Ljava/lang/String;>;
0 41 3 currCertPolicies Lsun/security/x509/CertificatePoliciesExtension;
1 41 4 policyInfo Ljava/util/List<Lsun/security/x509/PolicyInformation;>;
4 7 5 ioe Ljava/io/IOException;
8 41 5 childDeleted Z
10 35 6 curPolInfo Lsun/security/x509/PolicyInformation;
12 35 8 curPolicy Ljava/lang/String;
18 35 9 validNodes Ljava/util/Set<Lsun/security/provider/certpath/PolicyNodeImpl;>;
20 34 10 curNode Lsun/security/provider/certpath/PolicyNodeImpl;
21 34 12 parentNode Lsun/security/provider/certpath/PolicyNodeImpl;
Exception table:
from to target type
1 2 3 Class java.io.IOException
Exceptions:
throws java.security.cert.CertPathValidatorException
Signature: (Lsun/security/provider/certpath/PolicyNodeImpl;ILjava/util/Set<Ljava/lang/String;>;Lsun/security/x509/CertificatePoliciesExtension;)Lsun/security/provider/certpath/PolicyNodeImpl;
MethodParameters:
Name Flags
rootNode
certIndex
initPolicies
currCertPolicies
java.security.cert.PolicyNode getPolicyTree();
descriptor: ()Ljava/security/cert/PolicyNode;
flags: (0x0000)
Code:
stack=1, locals=2, args_size=1
start local 0 0: aload 0
getfield sun.security.provider.certpath.PolicyChecker.rootNode:Lsun/security/provider/certpath/PolicyNodeImpl;
ifnonnull 2
1: aconst_null
areturn
2: StackMap locals:
StackMap stack:
aload 0
getfield sun.security.provider.certpath.PolicyChecker.rootNode:Lsun/security/provider/certpath/PolicyNodeImpl;
invokevirtual sun.security.provider.certpath.PolicyNodeImpl.copyTree:()Lsun/security/provider/certpath/PolicyNodeImpl;
astore 1
start local 1 3: aload 1
invokevirtual sun.security.provider.certpath.PolicyNodeImpl.setImmutable:()V
4: aload 1
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 5 0 this Lsun/security/provider/certpath/PolicyChecker;
3 5 1 policyTree Lsun/security/provider/certpath/PolicyNodeImpl;
}
SourceFile: "PolicyChecker.java"
InnerClasses:
public abstract Reason = java.security.cert.CertPathValidatorException$Reason of java.security.cert.CertPathValidatorException