packages feed

rncryptor-0.3.0.2: rncryptor.cabal

name:                rncryptor
version:             0.3.0.2
synopsis:            Haskell implementation of the RNCryptor file format
description:         Pure Haskell implementation of the RNCrytor spec.
license:             MIT
license-file:        LICENSE
author:              Alfredo Di Napoli
maintainer:          alfredo.dinapoli@gmail.com
category:            Network
build-type:          Simple
tested-with:         GHC == 7.6, GHC == 7.8
cabal-version:       >=1.10

flag fastpbkdf2
     description: Use fastpbkdf2 instead of cryptonite for PBKDF2.
     default: True

source-repository head
  type:     git
  location: https://github.com/adinapoli/rncryptor-hs

library
  exposed-modules:
    Crypto.RNCryptor.Padding
    Crypto.RNCryptor.V3
    Crypto.RNCryptor.V3.Encrypt
    Crypto.RNCryptor.V3.Decrypt
    Crypto.RNCryptor.Types
  other-modules:
    Crypto.RNCryptor.V3.Stream
  build-depends:
      base >=4.6 && < 5
    , bytestring >= 0.9.0
    , mtl >= 2.1
    , random >= 1.0.0.1
    , QuickCheck >= 2.6 && < 3.0
    , io-streams >= 1.2.0.0
    , cryptonite >= 0.15
    , memory
  if flag(fastpbkdf2)
    build-depends: fastpbkdf2
    cpp-options:  -DFASTPBKDF2
  hs-source-dirs:
    src
  default-language:
    Haskell2010
  ghc-options:
    -funbox-strict-fields

test-suite rncryptor-tests
  type:
    exitcode-stdio-1.0
  main-is:
    Main.hs
  other-modules: Tests
                 PasswordBasedVectors
  hs-source-dirs:
    test
  default-language:
    Haskell2010
  build-depends:
      rncryptor -any
    , base
    , bytestring
    , QuickCheck
    , tasty >= 0.9.0.1
    , tasty-quickcheck
    , tasty-hunit
    , io-streams
    , base16-bytestring >= 1.0.0.0
    , cryptonite
    , text
    , bytestring-arbitrary >= 0.1.0

executable rncryptor-decrypt
  build-depends:
      base
    , bytestring
    , cryptonite >= 0.15
    , io-streams
    , rncryptor -any
  hs-source-dirs:
    example
  main-is:
    StreamingDecrypter.hs
  default-language:
    Haskell2010
  ghc-options:
    -funbox-strict-fields

executable rncryptor-encrypt
  build-depends:
      base
    , bytestring
    , io-streams
    , cryptonite >= 0.15
    , rncryptor -any
  hs-source-dirs:
    example
  main-is:
    StreamingEncrypter.hs
  default-language:
    Haskell2010
  ghc-options:
    -funbox-strict-fields

benchmark store-bench
  type: exitcode-stdio-1.0
  main-is: Bench.hs
  hs-source-dirs:
      bench
  ghc-options: -Wall -fwarn-tabs -fwarn-incomplete-uni-patterns -fwarn-incomplete-record-updates -O2 -threaded -rtsopts -with-rtsopts=-N1 -with-rtsopts=-s -with-rtsopts=-qg
  build-depends:
      base >=4.6 && <5
    , bytestring >= 0.10.4.0
    , criterion
    , rncryptor
  default-language: Haskell2010