packages feed

asn1-data 0.7.0 → 0.7.1

raw patch · 4 files changed

+35/−3 lines, 4 filesPVP ok

version bump matches the API change (PVP)

API changes (from Hackage documentation)

+ Data.ASN1.BinaryEncoding.Raw: ASN1Header :: !ASN1Class -> !ASN1Tag -> !Bool -> !ASN1Length -> ASN1Header
+ Data.ASN1.BinaryEncoding.Raw: Application :: ASN1Class
+ Data.ASN1.BinaryEncoding.Raw: ConstructionBegin :: ASN1Event
+ Data.ASN1.BinaryEncoding.Raw: ConstructionEnd :: ASN1Event
+ Data.ASN1.BinaryEncoding.Raw: Context :: ASN1Class
+ Data.ASN1.BinaryEncoding.Raw: Header :: ASN1Header -> ASN1Event
+ Data.ASN1.BinaryEncoding.Raw: LenIndefinite :: ASN1Length
+ Data.ASN1.BinaryEncoding.Raw: LenLong :: Int -> Int -> ASN1Length
+ Data.ASN1.BinaryEncoding.Raw: LenShort :: Int -> ASN1Length
+ Data.ASN1.BinaryEncoding.Raw: Primitive :: !ByteString -> ASN1Event
+ Data.ASN1.BinaryEncoding.Raw: Private :: ASN1Class
+ Data.ASN1.BinaryEncoding.Raw: Universal :: ASN1Class
+ Data.ASN1.BinaryEncoding.Raw: data ASN1Class
+ Data.ASN1.BinaryEncoding.Raw: data ASN1Event
+ Data.ASN1.BinaryEncoding.Raw: data ASN1Header
+ Data.ASN1.BinaryEncoding.Raw: data ASN1Length
+ Data.ASN1.BinaryEncoding.Raw: parseBS :: ByteString -> Either ASN1Error [ASN1Event]
+ Data.ASN1.BinaryEncoding.Raw: parseLBS :: ByteString -> Either ASN1Error [ASN1Event]
+ Data.ASN1.BinaryEncoding.Raw: toByteString :: [ASN1Event] -> ByteString
+ Data.ASN1.BinaryEncoding.Raw: toLazyByteString :: [ASN1Event] -> ByteString
+ Data.ASN1.BinaryEncoding.Raw: type ASN1Tag = Int

Files

+ Data/ASN1/BinaryEncoding/Raw.hs view
@@ -0,0 +1,31 @@+-- |+-- Module      : Data.ASN1.BinaryEncoding.Raw+-- License     : BSD-style+-- Maintainer  : Vincent Hanquez <vincent@snarc.org>+-- Stability   : experimental+-- Portability : unknown+--+-- Raw encoding of binary format (BER/DER/CER)+--+module Data.ASN1.BinaryEncoding.Raw+    (+    -- * types+      ASN1Header(..)+    , ASN1Class(..)+    , ASN1Tag+    , ASN1Length(..)+    , ASN1Event(..)++    -- * parser+    , parseLBS+    , parseBS++    -- * writer+    , toLazyByteString+    , toByteString++    ) where++import Data.ASN1.BinaryEncoding.Parse+import Data.ASN1.BinaryEncoding.Writer+import Data.ASN1.Types
Data/ASN1/BinaryEncoding/Writer.hs view
@@ -27,7 +27,7 @@ toLazyByteString :: [ASN1Event] -> L.ByteString toLazyByteString evs = L.fromChunks $ loop [] evs     where loop _ [] = []-          loop acc (x@(Header (ASN1Header _ _ pc len)):xs) = toBs x : loop (if pc && len == LenIndefinite then True:acc else acc) xs+          loop acc (x@(Header (ASN1Header _ _ pc len)):xs) = toBs x : loop (if pc then (len == LenIndefinite):acc else acc) xs           loop acc (ConstructionEnd:xs) = case acc of                                               []        -> error "malformed stream: end before construction"                                               (True:r)  -> toBs ConstructionEnd : loop r xs
Tests.hs view
@@ -45,7 +45,7 @@ arbitraryDefiniteLength = arbitrary `suchThat` (\l -> l /= LenIndefinite)  arbitraryTag :: Gen ASN1Tag-arbitraryTag = choose(0,10000)+arbitraryTag = choose(1,10000)  instance Arbitrary ASN1Header where         arbitrary = liftM4 ASN1Header arbitrary arbitraryTag arbitrary arbitrary
asn1-data.cabal view
@@ -1,5 +1,5 @@ Name:                asn1-data-Version:             0.7.0+Version:             0.7.1 Description:     ASN1 data reader and writer in raw form with supports for high level forms of ASN1 (BER, and DER). License:             BSD3@@ -30,6 +30,7 @@   Exposed-modules:   Data.ASN1.BitArray                      Data.ASN1.Types                      Data.ASN1.BinaryEncoding+                     Data.ASN1.BinaryEncoding.Raw                      Data.ASN1.Encoding                      Data.ASN1.Stream                      Data.ASN1.Parse