Files
hcs/Hcs.Client/GostCryptography/Asn1/Ber/Asn1OutputStream.cs
HOME-LAPTOP\kshkulev 33ab055b43 Add project
Basic formatting applied. Unnecessary comments have been removed. Suspicious code is covered by TODO.
2025-08-12 11:21:10 +09:00

87 lines
1.9 KiB
C#

using GostCryptography.Properties;
using System.IO;
namespace GostCryptography.Asn1.Ber
{
public abstract class Asn1OutputStream : Stream
{
protected readonly Stream OutputStream;
public Asn1OutputStream(Stream outputStream)
{
OutputStream = outputStream;
}
public override bool CanRead
{
get { return false; }
}
public override bool CanSeek
{
get { return OutputStream.CanSeek; }
}
public override bool CanWrite
{
get { return OutputStream.CanWrite; }
}
public override long Length
{
get { return OutputStream.Length; }
}
public override long Position
{
get { return OutputStream.Position; }
set { OutputStream.Position = value; }
}
public override void Close()
{
OutputStream.Close();
}
public override void Flush()
{
OutputStream.Flush();
}
public override int Read(byte[] buffer, int offset, int count)
{
throw ExceptionUtility.NotSupported(Resources.Asn1ReadOutputStreamNotSupported);
}
public override long Seek(long offset, SeekOrigin origin)
{
return OutputStream.Seek(offset, origin);
}
public override void SetLength(long value)
{
OutputStream.SetLength(value);
}
public virtual void Write(byte[] b)
{
OutputStream.Write(b, 0, b.Length);
}
public override void Write(byte[] b, int off, int len)
{
OutputStream.Write(b, off, len);
}
public override void WriteByte(byte b)
{
OutputStream.WriteByte(b);
}
public virtual void WriteByte(int b)
{
OutputStream.WriteByte((byte)b);
}
}
}