crypto-conduit 0.4.3 → 0.5.0
raw patch · 2 files changed
+24/−24 lines, 2 filesdep ~conduitdep ~crypto-apiPVP ok
version bump matches the API change (PVP)
Dependency ranges changed: conduit, crypto-api
API changes (from Hackage documentation)
- Crypto.Conduit: blocked :: Monad m => BlockMode -> ByteLength -> GInfConduit ByteString m Block
+ Crypto.Conduit: blocked :: Monad m => BlockMode -> ByteLength -> Conduit ByteString m Block
- Crypto.Conduit: conduitDecryptCbc :: (Monad m, BlockCipher k) => k -> IV k -> GLInfConduit ByteString m ByteString
+ Crypto.Conduit: conduitDecryptCbc :: (Monad m, BlockCipher k) => k -> IV k -> Conduit ByteString m ByteString
- Crypto.Conduit: conduitDecryptCfb :: (Monad m, BlockCipher k) => k -> IV k -> GLInfConduit ByteString m ByteString
+ Crypto.Conduit: conduitDecryptCfb :: (Monad m, BlockCipher k) => k -> IV k -> Conduit ByteString m ByteString
- Crypto.Conduit: conduitDecryptCtr :: (Monad m, BlockCipher k) => k -> IV k -> (IV k -> IV k) -> GLInfConduit ByteString m ByteString
+ Crypto.Conduit: conduitDecryptCtr :: (Monad m, BlockCipher k) => k -> IV k -> (IV k -> IV k) -> Conduit ByteString m ByteString
- Crypto.Conduit: conduitDecryptEcb :: (Monad m, BlockCipher k) => k -> GLInfConduit ByteString m ByteString
+ Crypto.Conduit: conduitDecryptEcb :: (Monad m, BlockCipher k) => k -> Conduit ByteString m ByteString
- Crypto.Conduit: conduitDecryptOfb :: (Monad m, BlockCipher k) => k -> IV k -> GLInfConduit ByteString m ByteString
+ Crypto.Conduit: conduitDecryptOfb :: (Monad m, BlockCipher k) => k -> IV k -> Conduit ByteString m ByteString
- Crypto.Conduit: conduitEncryptCbc :: (Monad m, BlockCipher k) => k -> IV k -> GLInfConduit ByteString m ByteString
+ Crypto.Conduit: conduitEncryptCbc :: (Monad m, BlockCipher k) => k -> IV k -> Conduit ByteString m ByteString
- Crypto.Conduit: conduitEncryptCfb :: (Monad m, BlockCipher k) => k -> IV k -> GLInfConduit ByteString m ByteString
+ Crypto.Conduit: conduitEncryptCfb :: (Monad m, BlockCipher k) => k -> IV k -> Conduit ByteString m ByteString
- Crypto.Conduit: conduitEncryptCtr :: (Monad m, BlockCipher k) => k -> IV k -> (IV k -> IV k) -> GLInfConduit ByteString m ByteString
+ Crypto.Conduit: conduitEncryptCtr :: (Monad m, BlockCipher k) => k -> IV k -> (IV k -> IV k) -> Conduit ByteString m ByteString
- Crypto.Conduit: conduitEncryptEcb :: (Monad m, BlockCipher k) => k -> GLInfConduit ByteString m ByteString
+ Crypto.Conduit: conduitEncryptEcb :: (Monad m, BlockCipher k) => k -> Conduit ByteString m ByteString
- Crypto.Conduit: conduitEncryptOfb :: (Monad m, BlockCipher k) => k -> IV k -> GLInfConduit ByteString m ByteString
+ Crypto.Conduit: conduitEncryptOfb :: (Monad m, BlockCipher k) => k -> IV k -> Conduit ByteString m ByteString
- Crypto.Conduit: sinkCbcMac :: (Monad m, BlockCipher k) => k -> GLSink ByteString m ByteString
+ Crypto.Conduit: sinkCbcMac :: (Monad m, BlockCipher k) => k -> Consumer ByteString m ByteString
- Crypto.Conduit: sinkHash :: (Monad m, Hash ctx d) => GLSink ByteString m d
+ Crypto.Conduit: sinkHash :: (Monad m, Hash ctx d) => Consumer ByteString m d
- Crypto.Conduit: sinkHmac :: (Monad m, Hash ctx d) => MacKey ctx d -> GLSink ByteString m d
+ Crypto.Conduit: sinkHmac :: (Monad m, Hash ctx d) => MacKey ctx d -> Consumer ByteString m d
- Crypto.Conduit: sourceCtr :: (Monad m, BlockCipher k) => k -> IV k -> GSource m ByteString
+ Crypto.Conduit: sourceCtr :: (Monad m, BlockCipher k) => k -> IV k -> Producer m ByteString
Files
- crypto-conduit.cabal +3/−3
- src/Crypto/Conduit.hs +21/−21
crypto-conduit.cabal view
@@ -1,6 +1,6 @@ Cabal-version: >= 1.8 Name: crypto-conduit-Version: 0.4.3+Version: 0.5.0 Synopsis: Conduit interface for cryptographic operations (from crypto-api). Homepage: https://github.com/meteficha/crypto-conduit License: BSD3@@ -35,13 +35,13 @@ base >= 3 && < 5, bytestring >= 0.9, cereal >= 0.3 && < 0.4,- conduit >= 0.5 && < 0.6,+ conduit >= 1.0 && < 1.1, transformers >= 0.2 && < 0.4 if flag(old-crypto-api) Build-depends: crypto-api >= 0.8 && < 0.9 CPP-options: -DOLD_CRYPTO_API else- Build-depends: crypto-api >= 0.9 && < 0.11+ Build-depends: crypto-api >= 0.9 && < 0.12 GHC-options: -Wall Test-suite runtests
src/Crypto/Conduit.hs view
@@ -59,7 +59,7 @@ import qualified Crypto.Types as C -- from conduit-import Data.Conduit hiding (Source, Sink, Conduit, Pipe)+import Data.Conduit import Data.Conduit.Binary (sourceFile) -- from transformers@@ -77,7 +77,7 @@ -- | A 'Sink' that hashes a stream of 'B.ByteString'@s@ and -- creates a digest @d@.-sinkHash :: (Monad m, C.Hash ctx d) => GLSink B.ByteString m d+sinkHash :: (Monad m, C.Hash ctx d) => Consumer B.ByteString m d sinkHash = self where@@ -92,7 +92,7 @@ blockSize = (C.blockLength .::. getType self) `div` 8 -getBlock :: Monad m => BlockMode -> C.ByteLength -> GLSink B.ByteString m Block+getBlock :: Monad m => BlockMode -> C.ByteLength -> Consumer B.ByteString m Block getBlock blockMode blockSize = go id where@@ -136,7 +136,7 @@ #else C.MacKey ctx d #endif- -> GLSink B.ByteString m d+ -> Consumer B.ByteString m d sinkHmac (C.MacKey key) = sink where@@ -180,7 +180,7 @@ -- avoid it if you don't know what you're doing.) conduitEncryptEcb :: (Monad m, C.BlockCipher k) => k -- ^ Cipher key.- -> GLInfConduit B.ByteString m B.ByteString+ -> Conduit B.ByteString m B.ByteString conduitEncryptEcb k = blockCipherConduit k AnyMultiple@@ -194,7 +194,7 @@ -- the block size of the cipher and fails otherwise. conduitDecryptEcb :: (Monad m, C.BlockCipher k) => k -- ^ Cipher key.- -> GLInfConduit B.ByteString m B.ByteString+ -> Conduit B.ByteString m B.ByteString conduitDecryptEcb k = blockCipherConduit k AnyMultiple@@ -212,7 +212,7 @@ conduitEncryptCbc :: (Monad m, C.BlockCipher k) => k -- ^ Cipher key. -> C.IV k -- ^ Initialization vector.- -> GLInfConduit B.ByteString m B.ByteString+ -> Conduit B.ByteString m B.ByteString conduitEncryptCbc k iv = blockCipherConduit k StrictBlockSize@@ -228,7 +228,7 @@ conduitDecryptCbc :: (Monad m, C.BlockCipher k) => k -- ^ Cipher key. -> C.IV k -- ^ Initialization vector.- -> GLInfConduit B.ByteString m B.ByteString+ -> Conduit B.ByteString m B.ByteString conduitDecryptCbc k iv = blockCipherConduit k StrictBlockSize@@ -247,7 +247,7 @@ conduitEncryptCfb :: (Monad m, C.BlockCipher k) => k -- ^ Cipher key. -> C.IV k -- ^ Initialization vector.- -> GLInfConduit B.ByteString m B.ByteString+ -> Conduit B.ByteString m B.ByteString conduitEncryptCfb k iv = blockCipherConduit k StrictBlockSize@@ -263,7 +263,7 @@ conduitDecryptCfb :: (Monad m, C.BlockCipher k) => k -- ^ Cipher key. -> C.IV k -- ^ Initialization vector.- -> GLInfConduit B.ByteString m B.ByteString+ -> Conduit B.ByteString m B.ByteString conduitDecryptCfb k iv = blockCipherConduit k StrictBlockSize@@ -282,7 +282,7 @@ conduitEncryptOfb :: (Monad m, C.BlockCipher k) => k -- ^ Cipher key. -> C.IV k -- ^ Initialization vector.- -> GLInfConduit B.ByteString m B.ByteString+ -> Conduit B.ByteString m B.ByteString conduitEncryptOfb k iv = blockCipherConduit k StrictBlockSize@@ -297,7 +297,7 @@ conduitDecryptOfb :: (Monad m, C.BlockCipher k) => k -- ^ Cipher key. -> C.IV k -- ^ Initialization vector.- -> GLInfConduit B.ByteString m B.ByteString+ -> Conduit B.ByteString m B.ByteString conduitDecryptOfb = conduitEncryptOfb @@ -311,7 +311,7 @@ k -- ^ Cipher key. -> C.IV k -- ^ Initialization vector. -> (C.IV k -> C.IV k) -- ^ Increment counter ('C.incIV' is recommended)- -> GLInfConduit B.ByteString m B.ByteString+ -> Conduit B.ByteString m B.ByteString conduitEncryptCtr k iv incIV = blockCipherConduit k StrictBlockSize@@ -329,7 +329,7 @@ k -- ^ Cipher key. -> C.IV k -- ^ Initialization vector. -> (C.IV k -> C.IV k) -- ^ Increment counter ('C.incIV' is recommended)- -> GLInfConduit B.ByteString m B.ByteString+ -> Conduit B.ByteString m B.ByteString conduitDecryptCtr = conduitEncryptCtr @@ -338,7 +338,7 @@ sourceCtr :: (Monad m, C.BlockCipher k) => k -- ^ Cipher key. -> C.IV k -- ^ Initialization vector.- -> GSource m B.ByteString+ -> Producer m B.ByteString sourceCtr k = loop where@@ -360,7 +360,7 @@ -- for variable-length messages.) sinkCbcMac :: (Monad m, C.BlockCipher k) => k -- ^ Cipher key.- -> GLSink B.ByteString m B.ByteString+ -> Consumer B.ByteString m B.ByteString sinkCbcMac k = go $ B.replicate blockSize 0 where@@ -390,10 +390,10 @@ blocked :: Monad m => BlockMode -> C.ByteLength -- ^ Block size- -> GInfConduit B.ByteString m Block+ -> Conduit B.ByteString m Block blocked mode blockSize = go B.empty where- go x = awaitE >>= either (close x) (push x)+ go x = await >>= maybe (close x) (push x) block = case mode of StrictBlockSize -> blockStrict id@@ -418,7 +418,7 @@ (blks, rest) = block bs bs = append acc x - close acc r = yield (LastOne acc) >> return r+ close acc = yield (LastOne acc) -- | How 'Block's should be returned, either with strictly the@@ -439,7 +439,7 @@ -> s -- ^ Initial state. -> (s -> B.ByteString -> (s, B.ByteString)) -- ^ Encrypt block. -> (s -> B.ByteString -> m B.ByteString) -- ^ Final encryption.- -> GLInfConduit B.ByteString m B.ByteString+ -> Conduit B.ByteString m B.ByteString blockCipherConduit key mode initialState apply final = go initialState where@@ -456,7 +456,7 @@ | B.null input -> return () >> finish | otherwise -> lift (final state input) >>= yield >> finish - finish = awaitE >>= either return (const finish)+ finish = await >>= maybe (return ()) (const finish) -- | zipWith xor + pack --