diff options
Diffstat (limited to 'crypto/src/asn1/crmf/PKIArchiveOptions.cs')
-rw-r--r-- | crypto/src/asn1/crmf/PKIArchiveOptions.cs | 30 |
1 files changed, 15 insertions, 15 deletions
diff --git a/crypto/src/asn1/crmf/PKIArchiveOptions.cs b/crypto/src/asn1/crmf/PKIArchiveOptions.cs index 1813d87a7..f1a35541a 100644 --- a/crypto/src/asn1/crmf/PKIArchiveOptions.cs +++ b/crypto/src/asn1/crmf/PKIArchiveOptions.cs @@ -15,11 +15,11 @@ namespace Org.BouncyCastle.Asn1.Crmf public static PkiArchiveOptions GetInstance(object obj) { - if (obj is PkiArchiveOptions) - return (PkiArchiveOptions)obj; + if (obj is PkiArchiveOptions pkiArchiveOptions) + return pkiArchiveOptions; - if (obj is Asn1TaggedObject) - return new PkiArchiveOptions((Asn1TaggedObject)obj); + if (obj is Asn1TaggedObject taggedObject) + return new PkiArchiveOptions(Asn1Utilities.CheckTagClass(taggedObject, Asn1Tags.ContextSpecific)); throw new ArgumentException("Invalid object: " + Platform.GetTypeName(obj), "obj"); } @@ -28,17 +28,17 @@ namespace Org.BouncyCastle.Asn1.Crmf { switch (tagged.TagNo) { - case encryptedPrivKey: - value = EncryptedKey.GetInstance(tagged.GetObject()); - break; - case keyGenParameters: - value = Asn1OctetString.GetInstance(tagged, false); - break; - case archiveRemGenPrivKey: - value = DerBoolean.GetInstance(tagged, false); - break; - default: - throw new ArgumentException("unknown tag number: " + tagged.TagNo, "tagged"); + case encryptedPrivKey: + value = EncryptedKey.GetInstance(tagged.GetExplicitBaseObject()); + break; + case keyGenParameters: + value = Asn1OctetString.GetInstance(tagged, false); + break; + case archiveRemGenPrivKey: + value = DerBoolean.GetInstance(tagged, false); + break; + default: + throw new ArgumentException("unknown tag number: " + tagged.TagNo, "tagged"); } } |