Module osyspyrt.asn1evthndlr
Define classes supporting event handling.
Classes
class Asn1BerMessageDumpHandler (*args, **kwargs)
-
This implementation of an Asn1TaggedEventHandler can be used to get a formatted dump of an ASN.1 BER-encoded message in a human readable format.
The dump is done into the strbuf attribute.
Ancestors
Class variables
var MAXBYTESPERLINE
var lengthStack
var offset
var strbuf
Methods
def contents(self, data)
-
This method is invoked after each contents field is parsed. It formats and prints the contents in a hex/ascii format.
Parameters
data
:bytes
- Byte array containing encoded contents bytes.
def end_element(self)
-
This method is invoked after parsing is complete on each tag/length/value (TLV) in the message.
def start_element(self, tag, length, tagLenBytes)
-
This method is invoked after each tag/length value is parsed in the message being dumped. It formats and prints the tag/length values.
Parameters
tag
:Asn1BerTag
- Parsed tag value
length
:Asn1BerLength
- Parsed length value
tagLenBytes
:bytes
- Byte array containing the encoded tag/length bytes
class Asn1TaggedEventHandler (*args, **kwargs)
-
This class defines methods that must be implemented to define a SAX-like tagged event handler.
A tagged event handler returns tags from within a BER or DER message. This type of handler can be used to generically parse a message without knowledge of the associated ASN.1 schema definition. It is used in conjunction with the Asn1BerDecodeBuffer 'parse' method.
Subclasses
Methods
def contents(self, data)
-
The contents callback method is invoked when the contents of a primitive data element are parsed.
Parameters
data
:bytes
- Byte array containing encoded contents bytes.
def end_element(self)
-
The endElement callback method is invoked when the end of a tagged element is parsed.
def start_element(self, tag, length, tagLenBytes)
-
The startElement callback method is invoked when the start of any tagged element is parsed.
Parameters
tag
:Asn1BerTag
- Parsed tag value
length
:Asn1BerLength
- Parsed length value
tagLenBytes
:bytes
- Byte array containing the encoded tag/length bytes