Portability | unknown |
---|---|
Stability | experimental |
Maintainer | Vincent Hanquez <vincent@snarc.org> |
Safe Haskell | None |
Data.ASN1.BinaryEncoding.Raw
Description
Raw encoding of binary format (BERDERCER)
- data ASN1Header = ASN1Header !ASN1Class !ASN1Tag !Bool !ASN1Length
- data ASN1Class
- = Universal
- | Application
- | Context
- | Private
- type ASN1Tag = Int
- data ASN1Length
- data ASN1Event
- parseLBS :: ByteString -> Either ASN1Error [ASN1Event]
- parseBS :: ByteString -> Either ASN1Error [ASN1Event]
- toLazyByteString :: [ASN1Event] -> ByteString
- toByteString :: [ASN1Event] -> ByteString
types
data ASN1Header
ASN1 Header with the class, tag, constructed flag and length.
Constructors
ASN1Header !ASN1Class !ASN1Tag !Bool !ASN1Length |
Instances
data ASN1Length
ASN1 Length with all different formats
Constructors
LenShort Int | Short form with only one byte. length has to be < 127. |
LenLong Int Int | Long form of N bytes |
LenIndefinite | Length is indefinite expect an EOC in the stream to finish the type |
Instances
data ASN1Event
represent one event from an asn1 data stream
Constructors
Header ASN1Header | ASN1 Header |
Primitive !ByteString | Primitive |
ConstructionBegin | Constructed value start |
ConstructionEnd | Constructed value end |
parser
parseLBS :: ByteString -> Either ASN1Error [ASN1Event]Source
Parse one lazy bytestring and returns on success all ASN1 events associated.
parseBS :: ByteString -> Either ASN1Error [ASN1Event]Source
Parse one strict bytestring and returns on success all ASN1 events associated.
writer
toLazyByteString :: [ASN1Event] -> ByteStringSource
transform a list of ASN1 Events into a lazy bytestring
toByteString :: [ASN1Event] -> ByteStringSource
transform a list of ASN1 Events into a strict bytestring