public class org.bouncycastle.jce.provider.X509StoreLDAPCerts extends org.bouncycastle.x509.X509StoreSpi
minor version: 0
major version: 59
flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
this_class: org.bouncycastle.jce.provider.X509StoreLDAPCerts
super_class: org.bouncycastle.x509.X509StoreSpi
{
private org.bouncycastle.x509.util.LDAPStoreHelper helper;
descriptor: Lorg/bouncycastle/x509/util/LDAPStoreHelper;
flags: (0x0002) ACC_PRIVATE
public void <init>();
descriptor: ()V
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 // org.bouncycastle.jce.provider.X509StoreLDAPCerts this
0: .line 31
aload 0 /* this */
invokespecial org.bouncycastle.x509.X509StoreSpi.<init>:()V
1: .line 33
return
end local 0 // org.bouncycastle.jce.provider.X509StoreLDAPCerts this
LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lorg/bouncycastle/jce/provider/X509StoreLDAPCerts;
public void engineInit(org.bouncycastle.x509.X509StoreParameters);
descriptor: (Lorg/bouncycastle/x509/X509StoreParameters;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=5, locals=2, args_size=2
start local 0 // org.bouncycastle.jce.provider.X509StoreLDAPCerts this
start local 1 // org.bouncycastle.x509.X509StoreParameters params
0: .line 44
aload 1 /* params */
instanceof org.bouncycastle.jce.X509LDAPCertStoreParameters
ifne 6
1: .line 46
new java.lang.IllegalArgumentException
dup
2: .line 47
new java.lang.StringBuilder
dup
ldc "Initialization parameters must be an instance of "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
3: .line 48
ldc Lorg/bouncycastle/jce/X509LDAPCertStoreParameters;
invokevirtual java.lang.Class.getName:()Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
ldc "."
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
4: .line 47
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
5: .line 46
invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
athrow
6: .line 50
StackMap locals:
StackMap stack:
aload 0 /* this */
new org.bouncycastle.x509.util.LDAPStoreHelper
dup
aload 1 /* params */
checkcast org.bouncycastle.jce.X509LDAPCertStoreParameters
invokespecial org.bouncycastle.x509.util.LDAPStoreHelper.<init>:(Lorg/bouncycastle/jce/X509LDAPCertStoreParameters;)V
putfield org.bouncycastle.jce.provider.X509StoreLDAPCerts.helper:Lorg/bouncycastle/x509/util/LDAPStoreHelper;
7: .line 51
return
end local 1 // org.bouncycastle.x509.X509StoreParameters params
end local 0 // org.bouncycastle.jce.provider.X509StoreLDAPCerts this
LocalVariableTable:
Start End Slot Name Signature
0 8 0 this Lorg/bouncycastle/jce/provider/X509StoreLDAPCerts;
0 8 1 params Lorg/bouncycastle/x509/X509StoreParameters;
MethodParameters:
Name Flags
params
public java.util.Collection engineGetMatches(org.bouncycastle.util.Selector);
descriptor: (Lorg/bouncycastle/util/Selector;)Ljava/util/Collection;
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=4, args_size=2
start local 0 // org.bouncycastle.jce.provider.X509StoreLDAPCerts this
start local 1 // org.bouncycastle.util.Selector selector
0: .line 72
aload 1 /* selector */
instanceof org.bouncycastle.x509.X509CertStoreSelector
ifne 2
1: .line 74
getstatic java.util.Collections.EMPTY_SET:Ljava/util/Set;
areturn
2: .line 76
StackMap locals:
StackMap stack:
aload 1 /* selector */
checkcast org.bouncycastle.x509.X509CertStoreSelector
astore 2 /* xselector */
start local 2 // org.bouncycastle.x509.X509CertStoreSelector xselector
3: .line 77
new java.util.HashSet
dup
invokespecial java.util.HashSet.<init>:()V
astore 3 /* set */
start local 3 // java.util.Set set
4: .line 79
aload 2 /* xselector */
invokevirtual org.bouncycastle.x509.X509CertStoreSelector.getBasicConstraints:()I
ifle 8
5: .line 81
aload 3 /* set */
aload 0 /* this */
getfield org.bouncycastle.jce.provider.X509StoreLDAPCerts.helper:Lorg/bouncycastle/x509/util/LDAPStoreHelper;
aload 2 /* xselector */
invokevirtual org.bouncycastle.x509.util.LDAPStoreHelper.getCACertificates:(Lorg/bouncycastle/x509/X509CertStoreSelector;)Ljava/util/Collection;
invokeinterface java.util.Set.addAll:(Ljava/util/Collection;)Z
pop
6: .line 82
aload 3 /* set */
aload 0 /* this */
aload 2 /* xselector */
invokevirtual org.bouncycastle.jce.provider.X509StoreLDAPCerts.getCertificatesFromCrossCertificatePairs:(Lorg/bouncycastle/x509/X509CertStoreSelector;)Ljava/util/Collection;
invokeinterface java.util.Set.addAll:(Ljava/util/Collection;)Z
pop
7: .line 83
goto 14
8: .line 85
StackMap locals: org.bouncycastle.x509.X509CertStoreSelector java.util.Set
StackMap stack:
aload 2 /* xselector */
invokevirtual org.bouncycastle.x509.X509CertStoreSelector.getBasicConstraints:()I
bipush -2
if_icmpne 11
9: .line 87
aload 3 /* set */
aload 0 /* this */
getfield org.bouncycastle.jce.provider.X509StoreLDAPCerts.helper:Lorg/bouncycastle/x509/util/LDAPStoreHelper;
aload 2 /* xselector */
invokevirtual org.bouncycastle.x509.util.LDAPStoreHelper.getUserCertificates:(Lorg/bouncycastle/x509/X509CertStoreSelector;)Ljava/util/Collection;
invokeinterface java.util.Set.addAll:(Ljava/util/Collection;)Z
pop
10: .line 88
goto 14
11: .line 92
StackMap locals:
StackMap stack:
aload 3 /* set */
aload 0 /* this */
getfield org.bouncycastle.jce.provider.X509StoreLDAPCerts.helper:Lorg/bouncycastle/x509/util/LDAPStoreHelper;
aload 2 /* xselector */
invokevirtual org.bouncycastle.x509.util.LDAPStoreHelper.getUserCertificates:(Lorg/bouncycastle/x509/X509CertStoreSelector;)Ljava/util/Collection;
invokeinterface java.util.Set.addAll:(Ljava/util/Collection;)Z
pop
12: .line 93
aload 3 /* set */
aload 0 /* this */
getfield org.bouncycastle.jce.provider.X509StoreLDAPCerts.helper:Lorg/bouncycastle/x509/util/LDAPStoreHelper;
aload 2 /* xselector */
invokevirtual org.bouncycastle.x509.util.LDAPStoreHelper.getCACertificates:(Lorg/bouncycastle/x509/X509CertStoreSelector;)Ljava/util/Collection;
invokeinterface java.util.Set.addAll:(Ljava/util/Collection;)Z
pop
13: .line 94
aload 3 /* set */
aload 0 /* this */
aload 2 /* xselector */
invokevirtual org.bouncycastle.jce.provider.X509StoreLDAPCerts.getCertificatesFromCrossCertificatePairs:(Lorg/bouncycastle/x509/X509CertStoreSelector;)Ljava/util/Collection;
invokeinterface java.util.Set.addAll:(Ljava/util/Collection;)Z
pop
14: .line 96
StackMap locals:
StackMap stack:
aload 3 /* set */
areturn
end local 3 // java.util.Set set
end local 2 // org.bouncycastle.x509.X509CertStoreSelector xselector
end local 1 // org.bouncycastle.util.Selector selector
end local 0 // org.bouncycastle.jce.provider.X509StoreLDAPCerts this
LocalVariableTable:
Start End Slot Name Signature
0 15 0 this Lorg/bouncycastle/jce/provider/X509StoreLDAPCerts;
0 15 1 selector Lorg/bouncycastle/util/Selector;
3 15 2 xselector Lorg/bouncycastle/x509/X509CertStoreSelector;
4 15 3 set Ljava/util/Set;
Exceptions:
throws org.bouncycastle.util.StoreException
MethodParameters:
Name Flags
selector
private java.util.Collection getCertificatesFromCrossCertificatePairs(org.bouncycastle.x509.X509CertStoreSelector);
descriptor: (Lorg/bouncycastle/x509/X509CertStoreSelector;)Ljava/util/Collection;
flags: (0x0002) ACC_PRIVATE
Code:
stack=4, locals=9, args_size=2
start local 0 // org.bouncycastle.jce.provider.X509StoreLDAPCerts this
start local 1 // org.bouncycastle.x509.X509CertStoreSelector xselector
0: .line 102
new java.util.HashSet
dup
invokespecial java.util.HashSet.<init>:()V
astore 2 /* set */
start local 2 // java.util.Set set
1: .line 103
new org.bouncycastle.x509.X509CertPairStoreSelector
dup
invokespecial org.bouncycastle.x509.X509CertPairStoreSelector.<init>:()V
astore 3 /* ps */
start local 3 // org.bouncycastle.x509.X509CertPairStoreSelector ps
2: .line 105
aload 3 /* ps */
aload 1 /* xselector */
invokevirtual org.bouncycastle.x509.X509CertPairStoreSelector.setForwardSelector:(Lorg/bouncycastle/x509/X509CertStoreSelector;)V
3: .line 106
aload 3 /* ps */
new org.bouncycastle.x509.X509CertStoreSelector
dup
invokespecial org.bouncycastle.x509.X509CertStoreSelector.<init>:()V
invokevirtual org.bouncycastle.x509.X509CertPairStoreSelector.setReverseSelector:(Lorg/bouncycastle/x509/X509CertStoreSelector;)V
4: .line 108
new java.util.HashSet
dup
aload 0 /* this */
getfield org.bouncycastle.jce.provider.X509StoreLDAPCerts.helper:Lorg/bouncycastle/x509/util/LDAPStoreHelper;
aload 3 /* ps */
invokevirtual org.bouncycastle.x509.util.LDAPStoreHelper.getCrossCertificatePairs:(Lorg/bouncycastle/x509/X509CertPairStoreSelector;)Ljava/util/Collection;
invokespecial java.util.HashSet.<init>:(Ljava/util/Collection;)V
astore 4 /* crossCerts */
start local 4 // java.util.Set crossCerts
5: .line 109
new java.util.HashSet
dup
invokespecial java.util.HashSet.<init>:()V
astore 5 /* forward */
start local 5 // java.util.Set forward
6: .line 110
new java.util.HashSet
dup
invokespecial java.util.HashSet.<init>:()V
astore 6 /* reverse */
start local 6 // java.util.Set reverse
7: .line 111
aload 4 /* crossCerts */
invokeinterface java.util.Set.iterator:()Ljava/util/Iterator;
astore 7 /* it */
start local 7 // java.util.Iterator it
8: .line 112
goto 14
9: .line 114
StackMap locals: org.bouncycastle.jce.provider.X509StoreLDAPCerts org.bouncycastle.x509.X509CertStoreSelector java.util.Set org.bouncycastle.x509.X509CertPairStoreSelector java.util.Set java.util.Set java.util.Set java.util.Iterator
StackMap stack:
aload 7 /* it */
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast org.bouncycastle.x509.X509CertificatePair
astore 8 /* pair */
start local 8 // org.bouncycastle.x509.X509CertificatePair pair
10: .line 115
aload 8 /* pair */
invokevirtual org.bouncycastle.x509.X509CertificatePair.getForward:()Ljava/security/cert/X509Certificate;
ifnull 12
11: .line 117
aload 5 /* forward */
aload 8 /* pair */
invokevirtual org.bouncycastle.x509.X509CertificatePair.getForward:()Ljava/security/cert/X509Certificate;
invokeinterface java.util.Set.add:(Ljava/lang/Object;)Z
pop
12: .line 119
StackMap locals: org.bouncycastle.x509.X509CertificatePair
StackMap stack:
aload 8 /* pair */
invokevirtual org.bouncycastle.x509.X509CertificatePair.getReverse:()Ljava/security/cert/X509Certificate;
ifnull 14
13: .line 121
aload 6 /* reverse */
aload 8 /* pair */
invokevirtual org.bouncycastle.x509.X509CertificatePair.getReverse:()Ljava/security/cert/X509Certificate;
invokeinterface java.util.Set.add:(Ljava/lang/Object;)Z
pop
end local 8 // org.bouncycastle.x509.X509CertificatePair pair
14: .line 112
StackMap locals:
StackMap stack:
aload 7 /* it */
invokeinterface java.util.Iterator.hasNext:()Z
ifne 9
15: .line 124
aload 2 /* set */
aload 5 /* forward */
invokeinterface java.util.Set.addAll:(Ljava/util/Collection;)Z
pop
16: .line 125
aload 2 /* set */
aload 6 /* reverse */
invokeinterface java.util.Set.addAll:(Ljava/util/Collection;)Z
pop
17: .line 126
aload 2 /* set */
areturn
end local 7 // java.util.Iterator it
end local 6 // java.util.Set reverse
end local 5 // java.util.Set forward
end local 4 // java.util.Set crossCerts
end local 3 // org.bouncycastle.x509.X509CertPairStoreSelector ps
end local 2 // java.util.Set set
end local 1 // org.bouncycastle.x509.X509CertStoreSelector xselector
end local 0 // org.bouncycastle.jce.provider.X509StoreLDAPCerts this
LocalVariableTable:
Start End Slot Name Signature
0 18 0 this Lorg/bouncycastle/jce/provider/X509StoreLDAPCerts;
0 18 1 xselector Lorg/bouncycastle/x509/X509CertStoreSelector;
1 18 2 set Ljava/util/Set;
2 18 3 ps Lorg/bouncycastle/x509/X509CertPairStoreSelector;
5 18 4 crossCerts Ljava/util/Set;
6 18 5 forward Ljava/util/Set;
7 18 6 reverse Ljava/util/Set;
8 18 7 it Ljava/util/Iterator;
10 14 8 pair Lorg/bouncycastle/x509/X509CertificatePair;
Exceptions:
throws org.bouncycastle.util.StoreException
MethodParameters:
Name Flags
xselector
}
SourceFile: "X509StoreLDAPCerts.java"