summary refs log tree commit diff
path: root/Crypto/src/asn1/DERSequenceGenerator.cs
diff options
context:
space:
mode:
Diffstat (limited to 'Crypto/src/asn1/DERSequenceGenerator.cs')
-rw-r--r--Crypto/src/asn1/DERSequenceGenerator.cs40
1 files changed, 40 insertions, 0 deletions
diff --git a/Crypto/src/asn1/DERSequenceGenerator.cs b/Crypto/src/asn1/DERSequenceGenerator.cs
new file mode 100644

index 000000000..4c2bfd012 --- /dev/null +++ b/Crypto/src/asn1/DERSequenceGenerator.cs
@@ -0,0 +1,40 @@ +using System.IO; + +namespace Org.BouncyCastle.Asn1 +{ + public class DerSequenceGenerator + : DerGenerator + { + private readonly MemoryStream _bOut = new MemoryStream(); + + public DerSequenceGenerator( + Stream outStream) + : base(outStream) + { + } + + public DerSequenceGenerator( + Stream outStream, + int tagNo, + bool isExplicit) + : base(outStream, tagNo, isExplicit) + { + } + + public override void AddObject( + Asn1Encodable obj) + { + new DerOutputStream(_bOut).WriteObject(obj); + } + + public override Stream GetRawOutputStream() + { + return _bOut; + } + + public override void Close() + { + WriteDerEncoded(Asn1Tags.Constructed | Asn1Tags.Sequence, _bOut.ToArray()); + } + } +}