ASN1C C# Runtime Library  7.7
Public Member Functions | List of all members
Asn1BerInputStream Class Reference
Inheritance diagram for Asn1BerInputStream:
Asn1BerDecodeBuffer Asn1InputStream Asn1DecodeBuffer Asn1MessageBuffer Asn1MessageBufferBase Asn1CerInputStream

Public Member Functions

 Asn1BerInputStream (System.IO.Stream istream)
 
virtual int Available ()
 
virtual void Close ()
 
override void Mark ()
 
virtual bool MarkSupported ()
 
override void Reset ()
 
override long Skip (long nbytes)
 
- Public Member Functions inherited from Asn1BerDecodeBuffer
 Asn1BerDecodeBuffer (byte[] msgdata)
 
 Asn1BerDecodeBuffer (System.IO.Stream istream)
 
int DecodeEnumValue (bool explicitTagging, int implicitLength)
 
int DecodeEnumValue (Asn1Tag tag, bool explicitTagging, int implicitLength)
 
virtual int DecodeLength ()
 
virtual byte [] DecodeOpenType ()
 
virtual byte [] DecodeOpenType (bool saveData)
 
virtual void DecodeTag (Asn1Tag tag)
 
virtual int DecodeTagAndLength (Asn1Tag tag)
 
System.Exception HandleException (Asn1Exception e)
 
virtual bool MatchTag (short tagClass, short tagForm, int tagIDCode, Asn1Tag parsedTag, IntHolder parsedLen)
 
virtual bool MatchTag (Asn1Tag tag, Asn1Tag parsedTag, IntHolder parsedLen)
 
virtual bool MatchTag (Asn1Tag tag)
 
virtual void Parse (Asn1TaggedEventHandler handler)
 
virtual void PeekTag (Asn1Tag parsedTag)
 
virtual Asn1Tag PeekTag ()
 
override int ReadByte ()
 
void SetExceptionHandler (Asn1BerExceptionHandler handler)
 
void SkipTLV ()
 
void ThrowIfUnhandled (Asn1Exception e)
 
- Public Member Functions inherited from Asn1DecodeBuffer
virtual void AddCaptureBuffer (System.IO.MemoryStream buffer)
 
virtual void Capture (int nbytes)
 
virtual long DecodeIntValue (int length, bool signExtend)
 
int [] DecodeOIDContents (int llen)
 
int [] DecodeRelOIDContents (int llen)
 
override System.IO.Stream GetInputStream ()
 
virtual void HexDump ()
 
virtual void MarkPos (ref BufferPos bufferPos)
 
virtual int Read ()
 
virtual void Read (byte[] buffer, int offset, int nbytes)
 
virtual void Read (byte[] buffer)
 
int Read2Bytes ()
 
int Read4Bytes ()
 
virtual void RemoveCaptureBuffer (System.IO.MemoryStream buffer)
 
virtual void ResetPos (ref BufferPos bufferPos)
 
virtual void SetInputStream (byte[] msgdata, int offset, int length)
 
void SkipOIDContents (int llen)
 
int [] SkipRelOIDContents (int llen)
 
- Public Member Functions inherited from Asn1MessageBuffer
virtual void AddNamedEventHandler (Asn1NamedEventHandler handler)
 
virtual void InvokeCharacters (System.String svalue)
 
virtual void InvokeEndElement (System.String name, int index)
 
virtual void InvokeStartElement (System.String name, int index)
 
- Public Member Functions inherited from Asn1MessageBufferBase
void SetKey (byte[] rtkey)
 
void SetPermanentKey (byte[] rtkey)
 

Additional Inherited Members

- Static Public Member Functions inherited from Asn1BerDecodeBuffer
static int CalcIndefLen (byte[] data, int offset, int len)
 
- Static Public Member Functions inherited from Asn1MessageBufferBase
static void HexDump (System.IO.Stream ins, System.IO.StreamWriter outs)
 
static void HexDump (System.IO.Stream ins)
 
- Properties inherited from Asn1BerDecodeBuffer
virtual Asn1Tag LastTag [get]
 
- Properties inherited from Asn1DecodeBuffer
virtual int ByteCount [get]
 
bool LazyOpenTypeDecode [get, set]
 
- Properties inherited from Asn1MessageBuffer
virtual Asn1MessageBuffer EventHandlerList [set]
 
- Properties inherited from Asn1MessageBufferBase
Asn1Context Context [get]
 
virtual short TypeCode [set]
 

Detailed Description

This class handles the input stream for the decoding of ASN.1 messages as specified in the Basic Encoding Rules (BER) as documented in the ITU-T X.690 standard.

Constructor & Destructor Documentation

◆ Asn1BerInputStream()

Asn1BerInputStream ( System.IO.Stream  istream)

This constructor creates a BER input stream object that references an encoded ASN.1 message.

Parameters
istreamInput stream containing an encoded ASN.1 message.

Member Function Documentation

◆ Available()

virtual int Available ( )
virtual

Returns the number of bytes that can be read (or skipped over) from this input stream without blocking by the next caller of a method for this input stream. The next caller might be the same thread or or another thread.

Returns
the number of bytes that can be read from this input stream without blocking.
Exceptions
System.SystemExceptionif an I/O error occurs.

Implements Asn1InputStream.

◆ Close()

virtual void Close ( )
virtual

Closes this input stream and releases any system resources associated with the stream.

Exceptions
System.SystemExceptionif an I/O error occurs.

Implements Asn1InputStream.

◆ Mark()

override void Mark ( )

This method is used to mark the current position in the input stream for retry processing or reseting the input stream position to current position.

Implements Asn1InputStream.

◆ MarkSupported()

virtual bool MarkSupported ( )
virtual

Tests if this input stream supports the seeking. This method is equivalent to C# CanSeek method of System.IO.Stream.

Returns
true if input stream supports seeking; Otherwise false.

Implements Asn1InputStream.

◆ Reset()

override void Reset ( )

This method is used to reset the current position in the input stream back to the location of the last 'mark' call. It is equivalent to calling 'Stream.Position' to marked location.

Implements Asn1InputStream.

◆ Skip()

override long Skip ( long  nbytes)

This method will skip over the requested number of bytes in the input stream.

Parameters
nbytesNumber of bytes to skip
Exceptions
System.SystemExceptionif an I/O error occurs.
Returns
Skipped number of bytes

Implements Asn1InputStream.