From a2d8f592f92109116e5ea7b12d7db9705152cb85 Mon Sep 17 00:00:00 2001 From: Peter Dettman Date: Wed, 9 Jun 2021 21:32:35 +0700 Subject: Overload AddObject for Asn1Object --- crypto/src/asn1/ASN1Generator.cs | 4 +++- crypto/src/asn1/BERGenerator.cs | 12 +++++++++--- crypto/src/asn1/DERSequenceGenerator.cs | 8 +++++++- crypto/src/asn1/DERSetGenerator.cs | 8 +++++++- 4 files changed, 26 insertions(+), 6 deletions(-) (limited to 'crypto') diff --git a/crypto/src/asn1/ASN1Generator.cs b/crypto/src/asn1/ASN1Generator.cs index e56051736..d064b803a 100644 --- a/crypto/src/asn1/ASN1Generator.cs +++ b/crypto/src/asn1/ASN1Generator.cs @@ -20,7 +20,9 @@ namespace Org.BouncyCastle.Asn1 public abstract void AddObject(Asn1Encodable obj); - public abstract Stream GetRawOutputStream(); + public abstract void AddObject(Asn1Object obj); + + public abstract Stream GetRawOutputStream(); public abstract void Close(); } diff --git a/crypto/src/asn1/BERGenerator.cs b/crypto/src/asn1/BERGenerator.cs index 271572c02..ad72e7a31 100644 --- a/crypto/src/asn1/BERGenerator.cs +++ b/crypto/src/asn1/BERGenerator.cs @@ -4,7 +4,7 @@ using Org.BouncyCastle.Utilities.IO; namespace Org.BouncyCastle.Asn1 { - public class BerGenerator + public abstract class BerGenerator : Asn1Generator { private bool _tagged = false; @@ -17,7 +17,7 @@ namespace Org.BouncyCastle.Asn1 { } - public BerGenerator( + protected BerGenerator( Stream outStream, int tagNo, bool isExplicit) @@ -34,7 +34,13 @@ namespace Org.BouncyCastle.Asn1 new BerOutputStream(Out).WriteObject(obj); } - public override Stream GetRawOutputStream() + public override void AddObject( + Asn1Object obj) + { + new BerOutputStream(Out).WriteObject(obj); + } + + public override Stream GetRawOutputStream() { return Out; } diff --git a/crypto/src/asn1/DERSequenceGenerator.cs b/crypto/src/asn1/DERSequenceGenerator.cs index 4c2bfd012..c4348c78d 100644 --- a/crypto/src/asn1/DERSequenceGenerator.cs +++ b/crypto/src/asn1/DERSequenceGenerator.cs @@ -27,7 +27,13 @@ namespace Org.BouncyCastle.Asn1 new DerOutputStream(_bOut).WriteObject(obj); } - public override Stream GetRawOutputStream() + public override void AddObject( + Asn1Object obj) + { + new DerOutputStream(_bOut).WriteObject(obj); + } + + public override Stream GetRawOutputStream() { return _bOut; } diff --git a/crypto/src/asn1/DERSetGenerator.cs b/crypto/src/asn1/DERSetGenerator.cs index 455ca88ac..a25dd7de8 100644 --- a/crypto/src/asn1/DERSetGenerator.cs +++ b/crypto/src/asn1/DERSetGenerator.cs @@ -27,7 +27,13 @@ namespace Org.BouncyCastle.Asn1 new DerOutputStream(_bOut).WriteObject(obj); } - public override Stream GetRawOutputStream() + public override void AddObject( + Asn1Object obj) + { + new DerOutputStream(_bOut).WriteObject(obj); + } + + public override Stream GetRawOutputStream() { return _bOut; } -- cgit 1.5.1