diff options
author | Peter Dettman <peter.dettman@bouncycastle.org> | 2024-06-24 20:04:26 +0700 |
---|---|---|
committer | Peter Dettman <peter.dettman@bouncycastle.org> | 2024-06-24 20:04:26 +0700 |
commit | 438dc8d53aac9b7483a2014cd4398b8275c496ab (patch) | |
tree | d4e53f01313d43c20cf32ae5c930e0d54a364114 /crypto/src/asn1/cmp | |
parent | Add TODO (diff) | |
download | BouncyCastle.NET-ed25519-438dc8d53aac9b7483a2014cd4398b8275c496ab.tar.xz |
ASN.1: Use GetTagged with cursor methods
- Add GetTagged method for all CHOICE types - Make most Asn1Utilities methods public
Diffstat (limited to 'crypto/src/asn1/cmp')
-rw-r--r-- | crypto/src/asn1/cmp/CertAnnContent.cs | 9 | ||||
-rw-r--r-- | crypto/src/asn1/cmp/CertOrEncCert.cs | 9 | ||||
-rw-r--r-- | crypto/src/asn1/cmp/CertRepMessage.cs | 2 | ||||
-rw-r--r-- | crypto/src/asn1/cmp/CertStatus.cs | 2 | ||||
-rw-r--r-- | crypto/src/asn1/cmp/CertifiedKeyPair.cs | 4 | ||||
-rw-r--r-- | crypto/src/asn1/cmp/CmpCertificate.cs | 9 | ||||
-rw-r--r-- | crypto/src/asn1/cmp/CrlSource.cs | 9 | ||||
-rw-r--r-- | crypto/src/asn1/cmp/KemOtherInfo.cs | 6 | ||||
-rw-r--r-- | crypto/src/asn1/cmp/KeyRecRepContent.cs | 6 | ||||
-rw-r--r-- | crypto/src/asn1/cmp/OobCert.cs | 9 | ||||
-rw-r--r-- | crypto/src/asn1/cmp/OobCertHash.cs | 4 | ||||
-rw-r--r-- | crypto/src/asn1/cmp/PKIBody.cs | 9 | ||||
-rw-r--r-- | crypto/src/asn1/cmp/PKIFreeText.cs | 9 | ||||
-rw-r--r-- | crypto/src/asn1/cmp/PKIHeader.cs | 18 | ||||
-rw-r--r-- | crypto/src/asn1/cmp/PKIMessage.cs | 4 | ||||
-rw-r--r-- | crypto/src/asn1/cmp/RevRepContent.cs | 4 | ||||
-rw-r--r-- | crypto/src/asn1/cmp/RootCaKeyUpdateContent.cs | 4 |
17 files changed, 62 insertions, 55 deletions
diff --git a/crypto/src/asn1/cmp/CertAnnContent.cs b/crypto/src/asn1/cmp/CertAnnContent.cs index d41f48e2e..1a0506132 100644 --- a/crypto/src/asn1/cmp/CertAnnContent.cs +++ b/crypto/src/asn1/cmp/CertAnnContent.cs @@ -23,10 +23,11 @@ namespace Org.BouncyCastle.Asn1.Cmp return new CertAnnContent(X509CertificateStructure.GetInstance(obj)); } - public static new CertAnnContent GetInstance(Asn1TaggedObject taggedObject, bool declaredExplicit) - { - return Asn1Utilities.GetInstanceFromChoice(taggedObject, declaredExplicit, GetInstance); - } + public static new CertAnnContent GetInstance(Asn1TaggedObject taggedObject, bool declaredExplicit) => + Asn1Utilities.GetInstanceChoice(taggedObject, declaredExplicit, GetInstance); + + public static new CertAnnContent GetTagged(Asn1TaggedObject taggedObject, bool declaredExplicit) => + Asn1Utilities.GetTaggedChoice(taggedObject, declaredExplicit, GetInstance); [Obsolete("Use 'GetInstance' from tagged object instead")] public CertAnnContent(int type, Asn1Object otherCert) diff --git a/crypto/src/asn1/cmp/CertOrEncCert.cs b/crypto/src/asn1/cmp/CertOrEncCert.cs index 430c1fd4f..b834194eb 100644 --- a/crypto/src/asn1/cmp/CertOrEncCert.cs +++ b/crypto/src/asn1/cmp/CertOrEncCert.cs @@ -16,10 +16,11 @@ namespace Org.BouncyCastle.Asn1.Cmp return new CertOrEncCert(Asn1TaggedObject.GetInstance(obj, Asn1Tags.ContextSpecific)); } - public static CertOrEncCert GetInstance(Asn1TaggedObject taggedObject, bool declaredExplicit) - { - return Asn1Utilities.GetInstanceFromChoice(taggedObject, declaredExplicit, GetInstance); - } + public static CertOrEncCert GetInstance(Asn1TaggedObject taggedObject, bool declaredExplicit) => + Asn1Utilities.GetInstanceChoice(taggedObject, declaredExplicit, GetInstance); + + public static CertOrEncCert GetTagged(Asn1TaggedObject taggedObject, bool declaredExplicit) => + Asn1Utilities.GetTaggedChoice(taggedObject, declaredExplicit, GetInstance); private readonly CmpCertificate m_certificate; private readonly EncryptedKey m_encryptedCert; diff --git a/crypto/src/asn1/cmp/CertRepMessage.cs b/crypto/src/asn1/cmp/CertRepMessage.cs index 9e7fae2e2..0a8569331 100644 --- a/crypto/src/asn1/cmp/CertRepMessage.cs +++ b/crypto/src/asn1/cmp/CertRepMessage.cs @@ -28,7 +28,7 @@ namespace Org.BouncyCastle.Asn1.Cmp if (count < 1 || count > 2) throw new ArgumentException("Bad sequence size: " + count, nameof(seq)); - m_caPubs = Asn1Utilities.ReadOptionalContextTagged(seq, ref pos, 1, true, Asn1Sequence.GetInstance); + m_caPubs = Asn1Utilities.ReadOptionalContextTagged(seq, ref pos, 1, true, Asn1Sequence.GetTagged); m_response = Asn1Sequence.GetInstance(seq[pos++]); if (pos != count) diff --git a/crypto/src/asn1/cmp/CertStatus.cs b/crypto/src/asn1/cmp/CertStatus.cs index 5002b8811..ea735bca1 100644 --- a/crypto/src/asn1/cmp/CertStatus.cs +++ b/crypto/src/asn1/cmp/CertStatus.cs @@ -36,7 +36,7 @@ namespace Org.BouncyCastle.Asn1.Cmp m_certHash = Asn1OctetString.GetInstance(seq[pos++]); m_certReqID = DerInteger.GetInstance(seq[pos++]); m_statusInfo = Asn1Utilities.ReadOptional(seq, ref pos, PkiStatusInfo.GetOptional); - m_hashAlg = Asn1Utilities.ReadOptionalContextTagged(seq, ref pos, 0, true, AlgorithmIdentifier.GetInstance); + m_hashAlg = Asn1Utilities.ReadOptionalContextTagged(seq, ref pos, 0, true, AlgorithmIdentifier.GetTagged); if (pos != count) throw new ArgumentException("Unexpected elements in sequence", nameof(seq)); diff --git a/crypto/src/asn1/cmp/CertifiedKeyPair.cs b/crypto/src/asn1/cmp/CertifiedKeyPair.cs index 61da1d37a..bd86b93a0 100644 --- a/crypto/src/asn1/cmp/CertifiedKeyPair.cs +++ b/crypto/src/asn1/cmp/CertifiedKeyPair.cs @@ -47,8 +47,8 @@ namespace Org.BouncyCastle.Asn1.Cmp throw new ArgumentException("Bad sequence size: " + count, nameof(seq)); m_certOrEncCert = CertOrEncCert.GetInstance(seq[pos++]); - m_privateKey = Asn1Utilities.ReadOptionalContextTagged(seq, ref pos, 0, true, EncryptedKey.GetInstance); - m_publicationInfo = Asn1Utilities.ReadOptionalContextTagged(seq, ref pos, 1, true, PkiPublicationInfo.GetInstance); + m_privateKey = Asn1Utilities.ReadOptionalContextTagged(seq, ref pos, 0, true, EncryptedKey.GetTagged); + m_publicationInfo = Asn1Utilities.ReadOptionalContextTagged(seq, ref pos, 1, true, PkiPublicationInfo.GetTagged); if (pos != count) throw new ArgumentException("Unexpected elements in sequence", nameof(seq)); diff --git a/crypto/src/asn1/cmp/CmpCertificate.cs b/crypto/src/asn1/cmp/CmpCertificate.cs index e30eccca4..b0f9d7a5f 100644 --- a/crypto/src/asn1/cmp/CmpCertificate.cs +++ b/crypto/src/asn1/cmp/CmpCertificate.cs @@ -34,10 +34,11 @@ namespace Org.BouncyCastle.Asn1.Cmp return new CmpCertificate(X509CertificateStructure.GetInstance(asn1Object ?? obj)); } - public static CmpCertificate GetInstance(Asn1TaggedObject taggedObject, bool declaredExplicit) - { - return Asn1Utilities.GetInstanceFromChoice(taggedObject, declaredExplicit, GetInstance); - } + public static CmpCertificate GetInstance(Asn1TaggedObject taggedObject, bool declaredExplicit) => + Asn1Utilities.GetInstanceChoice(taggedObject, declaredExplicit, GetInstance); + + public static CmpCertificate GetTagged(Asn1TaggedObject taggedObject, bool declaredExplicit) => + Asn1Utilities.GetTaggedChoice(taggedObject, declaredExplicit, GetInstance); private readonly X509CertificateStructure m_x509v3PKCert; diff --git a/crypto/src/asn1/cmp/CrlSource.cs b/crypto/src/asn1/cmp/CrlSource.cs index 4b6b396d9..394064788 100644 --- a/crypto/src/asn1/cmp/CrlSource.cs +++ b/crypto/src/asn1/cmp/CrlSource.cs @@ -26,10 +26,11 @@ namespace Org.BouncyCastle.Asn1.Cmp return new CrlSource(Asn1TaggedObject.GetInstance(obj)); } - public static CrlSource GetInstance(Asn1TaggedObject taggedObject, bool declaredExplicit) - { - return Asn1Utilities.GetInstanceFromChoice(taggedObject, declaredExplicit, GetInstance); - } + public static CrlSource GetInstance(Asn1TaggedObject taggedObject, bool declaredExplicit) => + Asn1Utilities.GetInstanceChoice(taggedObject, declaredExplicit, GetInstance); + + public static CrlSource GetTagged(Asn1TaggedObject taggedObject, bool declaredExplicit) => + Asn1Utilities.GetTaggedChoice(taggedObject, declaredExplicit, GetInstance); private readonly DistributionPointName m_dpn; private readonly GeneralNames m_issuer; diff --git a/crypto/src/asn1/cmp/KemOtherInfo.cs b/crypto/src/asn1/cmp/KemOtherInfo.cs index 7b46dd398..043b7ce66 100644 --- a/crypto/src/asn1/cmp/KemOtherInfo.cs +++ b/crypto/src/asn1/cmp/KemOtherInfo.cs @@ -70,9 +70,9 @@ namespace Org.BouncyCastle.Asn1.Cmp if (!DEFAULT_staticString.Equals(m_staticString)) throw new ArgumentException("staticString field should be " + DEFAULT_staticString); - m_transactionID = Asn1Utilities.ReadOptionalContextTagged(seq, ref pos, 0, true, Asn1OctetString.GetInstance); - m_senderNonce = Asn1Utilities.ReadOptionalContextTagged(seq, ref pos, 1, true, Asn1OctetString.GetInstance); - m_recipNonce = Asn1Utilities.ReadOptionalContextTagged(seq, ref pos, 2, true, Asn1OctetString.GetInstance); + m_transactionID = Asn1Utilities.ReadOptionalContextTagged(seq, ref pos, 0, true, Asn1OctetString.GetTagged); + m_senderNonce = Asn1Utilities.ReadOptionalContextTagged(seq, ref pos, 1, true, Asn1OctetString.GetTagged); + m_recipNonce = Asn1Utilities.ReadOptionalContextTagged(seq, ref pos, 2, true, Asn1OctetString.GetTagged); m_len = DerInteger.GetInstance(seq[pos++]); m_mac = AlgorithmIdentifier.GetInstance(seq[pos++]); m_ct = Asn1OctetString.GetInstance(seq[pos++]); diff --git a/crypto/src/asn1/cmp/KeyRecRepContent.cs b/crypto/src/asn1/cmp/KeyRecRepContent.cs index ec604f644..0dea05b22 100644 --- a/crypto/src/asn1/cmp/KeyRecRepContent.cs +++ b/crypto/src/asn1/cmp/KeyRecRepContent.cs @@ -31,9 +31,9 @@ namespace Org.BouncyCastle.Asn1.Cmp throw new ArgumentException("Bad sequence size: " + count, nameof(seq)); m_status = PkiStatusInfo.GetInstance(seq[pos++]); - m_newSigCert = Asn1Utilities.ReadOptionalContextTagged(seq, ref pos, 0, true, CmpCertificate.GetInstance); - m_caCerts = Asn1Utilities.ReadOptionalContextTagged(seq, ref pos, 1, true, Asn1Sequence.GetInstance); - m_keyPairHist = Asn1Utilities.ReadOptionalContextTagged(seq, ref pos, 2, true, Asn1Sequence.GetInstance); + m_newSigCert = Asn1Utilities.ReadOptionalContextTagged(seq, ref pos, 0, true, CmpCertificate.GetTagged); + m_caCerts = Asn1Utilities.ReadOptionalContextTagged(seq, ref pos, 1, true, Asn1Sequence.GetTagged); + m_keyPairHist = Asn1Utilities.ReadOptionalContextTagged(seq, ref pos, 2, true, Asn1Sequence.GetTagged); if (pos != count) throw new ArgumentException("Unexpected elements in sequence", nameof(seq)); diff --git a/crypto/src/asn1/cmp/OobCert.cs b/crypto/src/asn1/cmp/OobCert.cs index 6d60f6bb6..24658c9a1 100644 --- a/crypto/src/asn1/cmp/OobCert.cs +++ b/crypto/src/asn1/cmp/OobCert.cs @@ -23,10 +23,11 @@ namespace Org.BouncyCastle.Asn1.Cmp return new OobCert(X509CertificateStructure.GetInstance(obj)); } - public static new OobCert GetInstance(Asn1TaggedObject taggedObject, bool declaredExplicit) - { - return Asn1Utilities.GetInstanceFromChoice(taggedObject, declaredExplicit, GetInstance); - } + public static new OobCert GetInstance(Asn1TaggedObject taggedObject, bool declaredExplicit) => + Asn1Utilities.GetInstanceChoice(taggedObject, declaredExplicit, GetInstance); + + public static new OobCert GetTagged(Asn1TaggedObject taggedObject, bool declaredExplicit) => + Asn1Utilities.GetTaggedChoice(taggedObject, declaredExplicit, GetInstance); [Obsolete("Use constructor from Asn1TaggedObject instead")] public OobCert(int type, Asn1Encodable otherCert) diff --git a/crypto/src/asn1/cmp/OobCertHash.cs b/crypto/src/asn1/cmp/OobCertHash.cs index f1531f309..0ef4b98a9 100644 --- a/crypto/src/asn1/cmp/OobCertHash.cs +++ b/crypto/src/asn1/cmp/OobCertHash.cs @@ -44,8 +44,8 @@ namespace Org.BouncyCastle.Asn1.Cmp if (count < 1 || count > 3) throw new ArgumentException("Bad sequence size: " + count, nameof(seq)); - m_hashAlg = Asn1Utilities.ReadOptionalContextTagged(seq, ref pos, 0, true, AlgorithmIdentifier.GetInstance); - m_certId = Asn1Utilities.ReadOptionalContextTagged(seq, ref pos, 1, true, CertId.GetInstance); + m_hashAlg = Asn1Utilities.ReadOptionalContextTagged(seq, ref pos, 0, true, AlgorithmIdentifier.GetTagged); + m_certId = Asn1Utilities.ReadOptionalContextTagged(seq, ref pos, 1, true, CertId.GetTagged); m_hashVal = DerBitString.GetInstance(seq[pos++]); if (pos != count) diff --git a/crypto/src/asn1/cmp/PKIBody.cs b/crypto/src/asn1/cmp/PKIBody.cs index 19a1a03a1..0329093ce 100644 --- a/crypto/src/asn1/cmp/PKIBody.cs +++ b/crypto/src/asn1/cmp/PKIBody.cs @@ -76,10 +76,11 @@ namespace Org.BouncyCastle.Asn1.Cmp return new PkiBody(Asn1TaggedObject.GetInstance(obj)); } - public static PkiBody GetInstance(Asn1TaggedObject taggedObject, bool declaredExplicit) - { - return Asn1Utilities.GetInstanceFromChoice(taggedObject, declaredExplicit, GetInstance); - } + public static PkiBody GetInstance(Asn1TaggedObject taggedObject, bool declaredExplicit) => + Asn1Utilities.GetInstanceChoice(taggedObject, declaredExplicit, GetInstance); + + public static PkiBody GetTagged(Asn1TaggedObject taggedObject, bool declaredExplicit) => + Asn1Utilities.GetTaggedChoice(taggedObject, declaredExplicit, GetInstance); private readonly int m_tagNo; private readonly Asn1Encodable m_body; diff --git a/crypto/src/asn1/cmp/PKIFreeText.cs b/crypto/src/asn1/cmp/PKIFreeText.cs index e2845c529..81f3e128c 100644 --- a/crypto/src/asn1/cmp/PKIFreeText.cs +++ b/crypto/src/asn1/cmp/PKIFreeText.cs @@ -14,10 +14,8 @@ namespace Org.BouncyCastle.Asn1.Cmp return new PkiFreeText(Asn1Sequence.GetInstance(obj)); } - public static PkiFreeText GetInstance(Asn1TaggedObject taggedObject, bool declaredExplicit) - { - return new PkiFreeText(Asn1Sequence.GetInstance(taggedObject, declaredExplicit)); - } + public static PkiFreeText GetInstance(Asn1TaggedObject taggedObject, bool declaredExplicit) => + new PkiFreeText(Asn1Sequence.GetInstance(taggedObject, declaredExplicit)); public static PkiFreeText GetOptional(Asn1Encodable element) { @@ -34,6 +32,9 @@ namespace Org.BouncyCastle.Asn1.Cmp return null; } + public static PkiFreeText GetTagged(Asn1TaggedObject taggedObject, bool declaredExplicit) => + new PkiFreeText(Asn1Sequence.GetTagged(taggedObject, declaredExplicit)); + private readonly Asn1Sequence m_strings; internal PkiFreeText(Asn1Sequence seq) diff --git a/crypto/src/asn1/cmp/PKIHeader.cs b/crypto/src/asn1/cmp/PKIHeader.cs index 71dc18e7d..3cdf3346c 100644 --- a/crypto/src/asn1/cmp/PKIHeader.cs +++ b/crypto/src/asn1/cmp/PKIHeader.cs @@ -51,15 +51,15 @@ namespace Org.BouncyCastle.Asn1.Cmp m_pvno = DerInteger.GetInstance(seq[pos++]); m_sender = GeneralName.GetInstance(seq[pos++]); m_recipient = GeneralName.GetInstance(seq[pos++]); - m_messageTime = Asn1Utilities.ReadOptionalContextTagged(seq, ref pos, 0, true, Asn1GeneralizedTime.GetInstance); - m_protectionAlg = Asn1Utilities.ReadOptionalContextTagged(seq, ref pos, 1, true, AlgorithmIdentifier.GetInstance); - m_senderKID = Asn1Utilities.ReadOptionalContextTagged(seq, ref pos, 2, true, Asn1OctetString.GetInstance); - m_recipKID = Asn1Utilities.ReadOptionalContextTagged(seq, ref pos, 3, true, Asn1OctetString.GetInstance); - m_transactionID = Asn1Utilities.ReadOptionalContextTagged(seq, ref pos, 4, true, Asn1OctetString.GetInstance); - m_senderNonce = Asn1Utilities.ReadOptionalContextTagged(seq, ref pos, 5, true, Asn1OctetString.GetInstance); - m_recipNonce = Asn1Utilities.ReadOptionalContextTagged(seq, ref pos, 6, true, Asn1OctetString.GetInstance); - m_freeText = Asn1Utilities.ReadOptionalContextTagged(seq, ref pos, 7, true, PkiFreeText.GetInstance); - m_generalInfo = Asn1Utilities.ReadOptionalContextTagged(seq, ref pos, 8, true, Asn1Sequence.GetInstance); + m_messageTime = Asn1Utilities.ReadOptionalContextTagged(seq, ref pos, 0, true, Asn1GeneralizedTime.GetTagged); + m_protectionAlg = Asn1Utilities.ReadOptionalContextTagged(seq, ref pos, 1, true, AlgorithmIdentifier.GetTagged); + m_senderKID = Asn1Utilities.ReadOptionalContextTagged(seq, ref pos, 2, true, Asn1OctetString.GetTagged); + m_recipKID = Asn1Utilities.ReadOptionalContextTagged(seq, ref pos, 3, true, Asn1OctetString.GetTagged); + m_transactionID = Asn1Utilities.ReadOptionalContextTagged(seq, ref pos, 4, true, Asn1OctetString.GetTagged); + m_senderNonce = Asn1Utilities.ReadOptionalContextTagged(seq, ref pos, 5, true, Asn1OctetString.GetTagged); + m_recipNonce = Asn1Utilities.ReadOptionalContextTagged(seq, ref pos, 6, true, Asn1OctetString.GetTagged); + m_freeText = Asn1Utilities.ReadOptionalContextTagged(seq, ref pos, 7, true, PkiFreeText.GetTagged); + m_generalInfo = Asn1Utilities.ReadOptionalContextTagged(seq, ref pos, 8, true, Asn1Sequence.GetTagged); if (pos != count) throw new ArgumentException("Unexpected elements in sequence", nameof(seq)); diff --git a/crypto/src/asn1/cmp/PKIMessage.cs b/crypto/src/asn1/cmp/PKIMessage.cs index 4b5acad77..7008a9e1c 100644 --- a/crypto/src/asn1/cmp/PKIMessage.cs +++ b/crypto/src/asn1/cmp/PKIMessage.cs @@ -32,8 +32,8 @@ namespace Org.BouncyCastle.Asn1.Cmp m_header = PkiHeader.GetInstance(seq[pos++]); m_body = PkiBody.GetInstance(seq[pos++]); - m_protection = Asn1Utilities.ReadOptionalContextTagged(seq, ref pos, 0, true, DerBitString.GetInstance); - m_extraCerts = Asn1Utilities.ReadOptionalContextTagged(seq, ref pos, 1, true, Asn1Sequence.GetInstance); + m_protection = Asn1Utilities.ReadOptionalContextTagged(seq, ref pos, 0, true, DerBitString.GetTagged); + m_extraCerts = Asn1Utilities.ReadOptionalContextTagged(seq, ref pos, 1, true, Asn1Sequence.GetTagged); if (pos != count) throw new ArgumentException("Unexpected elements in sequence", nameof(seq)); diff --git a/crypto/src/asn1/cmp/RevRepContent.cs b/crypto/src/asn1/cmp/RevRepContent.cs index e9b3230c8..6a0910340 100644 --- a/crypto/src/asn1/cmp/RevRepContent.cs +++ b/crypto/src/asn1/cmp/RevRepContent.cs @@ -47,8 +47,8 @@ namespace Org.BouncyCastle.Asn1.Cmp throw new ArgumentException("Bad sequence size: " + count, nameof(seq)); m_status = Asn1Sequence.GetInstance(seq[pos++]); - m_revCerts = Asn1Utilities.ReadOptionalContextTagged(seq, ref pos, 0, true, Asn1Sequence.GetInstance); - m_crls = Asn1Utilities.ReadOptionalContextTagged(seq, ref pos, 1, true, Asn1Sequence.GetInstance); + m_revCerts = Asn1Utilities.ReadOptionalContextTagged(seq, ref pos, 0, true, Asn1Sequence.GetTagged); + m_crls = Asn1Utilities.ReadOptionalContextTagged(seq, ref pos, 1, true, Asn1Sequence.GetTagged); if (pos != count) throw new ArgumentException("Unexpected elements in sequence", nameof(seq)); diff --git a/crypto/src/asn1/cmp/RootCaKeyUpdateContent.cs b/crypto/src/asn1/cmp/RootCaKeyUpdateContent.cs index c9782bfd9..6ea159336 100644 --- a/crypto/src/asn1/cmp/RootCaKeyUpdateContent.cs +++ b/crypto/src/asn1/cmp/RootCaKeyUpdateContent.cs @@ -52,8 +52,8 @@ namespace Org.BouncyCastle.Asn1.Cmp throw new ArgumentException("Bad sequence size: " + count, nameof(seq)); m_newWithNew = CmpCertificate.GetInstance(seq[pos++]); - m_newWithOld = Asn1Utilities.ReadOptionalContextTagged(seq, ref pos, 0, true, CmpCertificate.GetInstance); - m_oldWithNew = Asn1Utilities.ReadOptionalContextTagged(seq, ref pos, 1, true, CmpCertificate.GetInstance); + m_newWithOld = Asn1Utilities.ReadOptionalContextTagged(seq, ref pos, 0, true, CmpCertificate.GetTagged); + m_oldWithNew = Asn1Utilities.ReadOptionalContextTagged(seq, ref pos, 1, true, CmpCertificate.GetTagged); if (pos != count) throw new ArgumentException("Unexpected elements in sequence", nameof(seq)); |