asn1-encoding-0.9.6: ASN1 data reader and writer in RAW, BER and DER forms
LicenseBSD-style
MaintainerVincent Hanquez <vincent@snarc.org>
Stabilityexperimental
Portabilityunknown
Safe HaskellNone
LanguageHaskell2010

Data.ASN1.Prim

Description

Tools to read ASN1 primitive (e.g. boolean, int)

Synopsis

ASN1 high level algebraic type

data ASN1 Source #

Define high level ASN1 object.

Instances

Instances details
Eq ASN1 
Instance details

Defined in Data.ASN1.Types

Methods

(==) :: ASN1 -> ASN1 -> Bool

(/=) :: ASN1 -> ASN1 -> Bool

Show ASN1 
Instance details

Defined in Data.ASN1.Types

Methods

showsPrec :: Int -> ASN1 -> ShowS

show :: ASN1 -> String

showList :: [ASN1] -> ShowS

data ASN1ConstructionType Source #

Define the type of container

Instances

Instances details
Eq ASN1ConstructionType 
Instance details

Defined in Data.ASN1.Types

Show ASN1ConstructionType 
Instance details

Defined in Data.ASN1.Types

Methods

showsPrec :: Int -> ASN1ConstructionType -> ShowS

show :: ASN1ConstructionType -> String

showList :: [ASN1ConstructionType] -> ShowS

decodePrimitive :: ASN1Header -> ByteString -> ASN1Ret Source #

encodeList :: [ASN1] -> (Int, [ASN1Event]) Source #

marshall an ASN1 type from a val struct or a bytestring

getBoolean :: Bool -> ByteString -> Either ASN1Error ASN1 Source #

getInteger :: ByteString -> Either ASN1Error ASN1 Source #

getInteger, parse a value bytestring and get the integer out of the two complement encoded bytes

getDouble :: ByteString -> Either ASN1Error ASN1 Source #

getBitString :: ByteString -> Either ASN1Error ASN1 Source #

getOctetString :: ByteString -> Either ASN1Error ASN1 Source #

getNull :: ByteString -> Either ASN1Error ASN1 Source #

getOID :: ByteString -> Either ASN1Error ASN1 Source #

return an OID

getTime :: ASN1TimeType -> ByteString -> Either ASN1Error ASN1 Source #

marshall an ASN1 type to a bytestring

putTime :: ASN1TimeType -> DateTime -> Maybe TimezoneOffset -> ByteString Source #

putInteger :: Integer -> ByteString Source #

putDouble :: Double -> ByteString Source #

putBitString :: BitArray -> ByteString Source #

putString :: ByteString -> ByteString Source #

putOID :: [Integer] -> ByteString Source #