public class org.bouncycastle.openssl.PEMReader extends org.bouncycastle.util.io.pem.PemReader
minor version: 0
major version: 59
flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
this_class: org.bouncycastle.openssl.PEMReader
super_class: org.bouncycastle.util.io.pem.PemReader
{
private final java.util.Map parsers;
descriptor: Ljava/util/Map;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
private org.bouncycastle.openssl.PasswordFinder pFinder;
descriptor: Lorg/bouncycastle/openssl/PasswordFinder;
flags: (0x0002) ACC_PRIVATE
public void <init>(java.io.Reader);
descriptor: (Ljava/io/Reader;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=2, args_size=2
start local 0 start local 1 0: aload 0
aload 1
aconst_null
ldc "BC"
invokespecial org.bouncycastle.openssl.PEMReader.<init>:(Ljava/io/Reader;Lorg/bouncycastle/openssl/PasswordFinder;Ljava/lang/String;)V
1: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lorg/bouncycastle/openssl/PEMReader;
0 2 1 reader Ljava/io/Reader;
MethodParameters:
Name Flags
reader
public void <init>(java.io.Reader, org.bouncycastle.openssl.PasswordFinder);
descriptor: (Ljava/io/Reader;Lorg/bouncycastle/openssl/PasswordFinder;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=3, args_size=3
start local 0 start local 1 start local 2 0: aload 0
aload 1
aload 2
ldc "BC"
invokespecial org.bouncycastle.openssl.PEMReader.<init>:(Ljava/io/Reader;Lorg/bouncycastle/openssl/PasswordFinder;Ljava/lang/String;)V
1: return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lorg/bouncycastle/openssl/PEMReader;
0 2 1 reader Ljava/io/Reader;
0 2 2 pFinder Lorg/bouncycastle/openssl/PasswordFinder;
MethodParameters:
Name Flags
reader
pFinder
public void <init>(java.io.Reader, org.bouncycastle.openssl.PasswordFinder, java.lang.String);
descriptor: (Ljava/io/Reader;Lorg/bouncycastle/openssl/PasswordFinder;Ljava/lang/String;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=5, locals=4, args_size=4
start local 0 start local 1 start local 2 start local 3 0: aload 0
aload 1
aload 2
aload 3
aload 3
invokespecial org.bouncycastle.openssl.PEMReader.<init>:(Ljava/io/Reader;Lorg/bouncycastle/openssl/PasswordFinder;Ljava/lang/String;Ljava/lang/String;)V
1: return
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lorg/bouncycastle/openssl/PEMReader;
0 2 1 reader Ljava/io/Reader;
0 2 2 pFinder Lorg/bouncycastle/openssl/PasswordFinder;
0 2 3 provider Ljava/lang/String;
MethodParameters:
Name Flags
reader
pFinder
provider
public void <init>(java.io.Reader, org.bouncycastle.openssl.PasswordFinder, java.lang.String, java.lang.String);
descriptor: (Ljava/io/Reader;Lorg/bouncycastle/openssl/PasswordFinder;Ljava/lang/String;Ljava/lang/String;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=7, locals=5, args_size=5
start local 0 start local 1 start local 2 start local 3 start local 4 0: aload 0
aload 1
invokespecial org.bouncycastle.util.io.pem.PemReader.<init>:(Ljava/io/Reader;)V
1: aload 0
new java.util.HashMap
dup
invokespecial java.util.HashMap.<init>:()V
putfield org.bouncycastle.openssl.PEMReader.parsers:Ljava/util/Map;
2: aload 0
aload 2
putfield org.bouncycastle.openssl.PEMReader.pFinder:Lorg/bouncycastle/openssl/PasswordFinder;
3: aload 0
getfield org.bouncycastle.openssl.PEMReader.parsers:Ljava/util/Map;
ldc "CERTIFICATE REQUEST"
new org.bouncycastle.openssl.PEMReader$PKCS10CertificationRequestParser
dup
aload 0
invokespecial org.bouncycastle.openssl.PEMReader$PKCS10CertificationRequestParser.<init>:(Lorg/bouncycastle/openssl/PEMReader;)V
invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
pop
4: aload 0
getfield org.bouncycastle.openssl.PEMReader.parsers:Ljava/util/Map;
ldc "NEW CERTIFICATE REQUEST"
new org.bouncycastle.openssl.PEMReader$PKCS10CertificationRequestParser
dup
aload 0
invokespecial org.bouncycastle.openssl.PEMReader$PKCS10CertificationRequestParser.<init>:(Lorg/bouncycastle/openssl/PEMReader;)V
invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
pop
5: aload 0
getfield org.bouncycastle.openssl.PEMReader.parsers:Ljava/util/Map;
ldc "CERTIFICATE"
new org.bouncycastle.openssl.PEMReader$X509CertificateParser
dup
aload 0
aload 4
invokespecial org.bouncycastle.openssl.PEMReader$X509CertificateParser.<init>:(Lorg/bouncycastle/openssl/PEMReader;Ljava/lang/String;)V
invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
pop
6: aload 0
getfield org.bouncycastle.openssl.PEMReader.parsers:Ljava/util/Map;
ldc "X509 CERTIFICATE"
new org.bouncycastle.openssl.PEMReader$X509CertificateParser
dup
aload 0
aload 4
invokespecial org.bouncycastle.openssl.PEMReader$X509CertificateParser.<init>:(Lorg/bouncycastle/openssl/PEMReader;Ljava/lang/String;)V
invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
pop
7: aload 0
getfield org.bouncycastle.openssl.PEMReader.parsers:Ljava/util/Map;
ldc "X509 CRL"
new org.bouncycastle.openssl.PEMReader$X509CRLParser
dup
aload 0
aload 4
invokespecial org.bouncycastle.openssl.PEMReader$X509CRLParser.<init>:(Lorg/bouncycastle/openssl/PEMReader;Ljava/lang/String;)V
invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
pop
8: aload 0
getfield org.bouncycastle.openssl.PEMReader.parsers:Ljava/util/Map;
ldc "PKCS7"
new org.bouncycastle.openssl.PEMReader$PKCS7Parser
dup
aload 0
invokespecial org.bouncycastle.openssl.PEMReader$PKCS7Parser.<init>:(Lorg/bouncycastle/openssl/PEMReader;)V
invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
pop
9: aload 0
getfield org.bouncycastle.openssl.PEMReader.parsers:Ljava/util/Map;
ldc "ATTRIBUTE CERTIFICATE"
new org.bouncycastle.openssl.PEMReader$X509AttributeCertificateParser
dup
aload 0
invokespecial org.bouncycastle.openssl.PEMReader$X509AttributeCertificateParser.<init>:(Lorg/bouncycastle/openssl/PEMReader;)V
invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
pop
10: aload 0
getfield org.bouncycastle.openssl.PEMReader.parsers:Ljava/util/Map;
ldc "EC PARAMETERS"
new org.bouncycastle.openssl.PEMReader$ECNamedCurveSpecParser
dup
aload 0
invokespecial org.bouncycastle.openssl.PEMReader$ECNamedCurveSpecParser.<init>:(Lorg/bouncycastle/openssl/PEMReader;)V
invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
pop
11: aload 0
getfield org.bouncycastle.openssl.PEMReader.parsers:Ljava/util/Map;
ldc "PUBLIC KEY"
new org.bouncycastle.openssl.PEMReader$PublicKeyParser
dup
aload 0
aload 4
invokespecial org.bouncycastle.openssl.PEMReader$PublicKeyParser.<init>:(Lorg/bouncycastle/openssl/PEMReader;Ljava/lang/String;)V
invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
pop
12: aload 0
getfield org.bouncycastle.openssl.PEMReader.parsers:Ljava/util/Map;
ldc "RSA PUBLIC KEY"
new org.bouncycastle.openssl.PEMReader$RSAPublicKeyParser
dup
aload 0
aload 4
invokespecial org.bouncycastle.openssl.PEMReader$RSAPublicKeyParser.<init>:(Lorg/bouncycastle/openssl/PEMReader;Ljava/lang/String;)V
invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
pop
13: aload 0
getfield org.bouncycastle.openssl.PEMReader.parsers:Ljava/util/Map;
ldc "RSA PRIVATE KEY"
new org.bouncycastle.openssl.PEMReader$RSAKeyPairParser
dup
aload 0
aload 4
invokespecial org.bouncycastle.openssl.PEMReader$RSAKeyPairParser.<init>:(Lorg/bouncycastle/openssl/PEMReader;Ljava/lang/String;)V
invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
pop
14: aload 0
getfield org.bouncycastle.openssl.PEMReader.parsers:Ljava/util/Map;
ldc "DSA PRIVATE KEY"
new org.bouncycastle.openssl.PEMReader$DSAKeyPairParser
dup
aload 0
aload 4
invokespecial org.bouncycastle.openssl.PEMReader$DSAKeyPairParser.<init>:(Lorg/bouncycastle/openssl/PEMReader;Ljava/lang/String;)V
invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
pop
15: aload 0
getfield org.bouncycastle.openssl.PEMReader.parsers:Ljava/util/Map;
ldc "EC PRIVATE KEY"
new org.bouncycastle.openssl.PEMReader$ECDSAKeyPairParser
dup
aload 0
aload 4
invokespecial org.bouncycastle.openssl.PEMReader$ECDSAKeyPairParser.<init>:(Lorg/bouncycastle/openssl/PEMReader;Ljava/lang/String;)V
invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
pop
16: aload 0
getfield org.bouncycastle.openssl.PEMReader.parsers:Ljava/util/Map;
ldc "ENCRYPTED PRIVATE KEY"
new org.bouncycastle.openssl.PEMReader$EncryptedPrivateKeyParser
dup
aload 0
aload 3
aload 4
invokespecial org.bouncycastle.openssl.PEMReader$EncryptedPrivateKeyParser.<init>:(Lorg/bouncycastle/openssl/PEMReader;Ljava/lang/String;Ljava/lang/String;)V
invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
pop
17: aload 0
getfield org.bouncycastle.openssl.PEMReader.parsers:Ljava/util/Map;
ldc "PRIVATE KEY"
new org.bouncycastle.openssl.PEMReader$PrivateKeyParser
dup
aload 0
aload 4
invokespecial org.bouncycastle.openssl.PEMReader$PrivateKeyParser.<init>:(Lorg/bouncycastle/openssl/PEMReader;Ljava/lang/String;)V
invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
pop
18: return
end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 19 0 this Lorg/bouncycastle/openssl/PEMReader;
0 19 1 reader Ljava/io/Reader;
0 19 2 pFinder Lorg/bouncycastle/openssl/PasswordFinder;
0 19 3 symProvider Ljava/lang/String;
0 19 4 asymProvider Ljava/lang/String;
MethodParameters:
Name Flags
reader
pFinder
symProvider
asymProvider
public java.lang.Object readObject();
descriptor: ()Ljava/lang/Object;
flags: (0x0001) ACC_PUBLIC
Code:
stack=5, locals=3, args_size=1
start local 0 0: aload 0
invokevirtual org.bouncycastle.openssl.PEMReader.readPemObject:()Lorg/bouncycastle/util/io/pem/PemObject;
astore 1
start local 1 1: aload 1
ifnull 6
2: aload 1
invokevirtual org.bouncycastle.util.io.pem.PemObject.getType:()Ljava/lang/String;
astore 2
start local 2 3: aload 0
getfield org.bouncycastle.openssl.PEMReader.parsers:Ljava/util/Map;
aload 2
invokeinterface java.util.Map.containsKey:(Ljava/lang/Object;)Z
ifeq 5
4: aload 0
getfield org.bouncycastle.openssl.PEMReader.parsers:Ljava/util/Map;
aload 2
invokeinterface java.util.Map.get:(Ljava/lang/Object;)Ljava/lang/Object;
checkcast org.bouncycastle.util.io.pem.PemObjectParser
aload 1
invokeinterface org.bouncycastle.util.io.pem.PemObjectParser.parseObject:(Lorg/bouncycastle/util/io/pem/PemObject;)Ljava/lang/Object;
areturn
5: StackMap locals: org.bouncycastle.util.io.pem.PemObject java.lang.String
StackMap stack:
new java.io.IOException
dup
new java.lang.StringBuilder
dup
ldc "unrecognised object: "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 2
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokespecial java.io.IOException.<init>:(Ljava/lang/String;)V
athrow
end local 2 6: StackMap locals:
StackMap stack:
aconst_null
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 7 0 this Lorg/bouncycastle/openssl/PEMReader;
1 7 1 obj Lorg/bouncycastle/util/io/pem/PemObject;
3 6 2 type Ljava/lang/String;
Exceptions:
throws java.io.IOException
}
SourceFile: "PEMReader.java"
NestMembers:
org.bouncycastle.openssl.PEMReader$DSAKeyPairParser org.bouncycastle.openssl.PEMReader$ECDSAKeyPairParser org.bouncycastle.openssl.PEMReader$ECNamedCurveSpecParser org.bouncycastle.openssl.PEMReader$EncryptedPrivateKeyParser org.bouncycastle.openssl.PEMReader$KeyPairParser org.bouncycastle.openssl.PEMReader$PKCS10CertificationRequestParser org.bouncycastle.openssl.PEMReader$PKCS7Parser org.bouncycastle.openssl.PEMReader$PrivateKeyParser org.bouncycastle.openssl.PEMReader$PublicKeyParser org.bouncycastle.openssl.PEMReader$RSAKeyPairParser org.bouncycastle.openssl.PEMReader$RSAPublicKeyParser org.bouncycastle.openssl.PEMReader$X509AttributeCertificateParser org.bouncycastle.openssl.PEMReader$X509CRLParser org.bouncycastle.openssl.PEMReader$X509CertificateParser
InnerClasses:
private DSAKeyPairParser = org.bouncycastle.openssl.PEMReader$DSAKeyPairParser of org.bouncycastle.openssl.PEMReader
private ECDSAKeyPairParser = org.bouncycastle.openssl.PEMReader$ECDSAKeyPairParser of org.bouncycastle.openssl.PEMReader
private ECNamedCurveSpecParser = org.bouncycastle.openssl.PEMReader$ECNamedCurveSpecParser of org.bouncycastle.openssl.PEMReader
private EncryptedPrivateKeyParser = org.bouncycastle.openssl.PEMReader$EncryptedPrivateKeyParser of org.bouncycastle.openssl.PEMReader
private abstract KeyPairParser = org.bouncycastle.openssl.PEMReader$KeyPairParser of org.bouncycastle.openssl.PEMReader
private PKCS10CertificationRequestParser = org.bouncycastle.openssl.PEMReader$PKCS10CertificationRequestParser of org.bouncycastle.openssl.PEMReader
private PKCS7Parser = org.bouncycastle.openssl.PEMReader$PKCS7Parser of org.bouncycastle.openssl.PEMReader
private PrivateKeyParser = org.bouncycastle.openssl.PEMReader$PrivateKeyParser of org.bouncycastle.openssl.PEMReader
private PublicKeyParser = org.bouncycastle.openssl.PEMReader$PublicKeyParser of org.bouncycastle.openssl.PEMReader
private RSAKeyPairParser = org.bouncycastle.openssl.PEMReader$RSAKeyPairParser of org.bouncycastle.openssl.PEMReader
private RSAPublicKeyParser = org.bouncycastle.openssl.PEMReader$RSAPublicKeyParser of org.bouncycastle.openssl.PEMReader
private X509AttributeCertificateParser = org.bouncycastle.openssl.PEMReader$X509AttributeCertificateParser of org.bouncycastle.openssl.PEMReader
private X509CRLParser = org.bouncycastle.openssl.PEMReader$X509CRLParser of org.bouncycastle.openssl.PEMReader
private X509CertificateParser = org.bouncycastle.openssl.PEMReader$X509CertificateParser of org.bouncycastle.openssl.PEMReader