tls-1.9.0: tls.cabal
cabal-version: >=1.10
name: tls
version: 1.9.0
license: BSD3
license-file: LICENSE
copyright: Vincent Hanquez <vincent@snarc.org>
maintainer: Kazu Yamamoto <kazu@iij.ad.jp>
author: Vincent Hanquez <vincent@snarc.org>
stability: experimental
homepage: https://github.com/haskell-tls/hs-tls
synopsis: TLS/SSL protocol native implementation (Server and Client)
description:
Native Haskell TLS and SSL protocol implementation for server and client.
.
This provides a high-level implementation of a sensitive security protocol,
eliminating a common set of security issues through the use of the advanced
type system, high level constructions and common Haskell features.
.
Currently implement the TLS1.0, TLS1.1, TLS1.2 and TLS 1.3 protocol,
and support RSA and Ephemeral (Elliptic curve and regular) Diffie Hellman key exchanges,
and many extensions.
.
Some debug tools linked with tls, are available through the
<http://hackage.haskell.org/package/tls-debug/>.
category: Network
build-type: Simple
extra-source-files:
Tests/*.hs
CHANGELOG.md
source-repository head
type: git
location: https://github.com/haskell-tls/hs-tls
subdir: core
flag compat
description:
Accept SSLv2 client hello for beginning SSLv3 / TLS handshake
flag network
description: Use the base network library
flag hans
description: Use the Haskell Network Stack (HaNS)
default: False
library
exposed-modules:
Network.TLS
Network.TLS.Cipher
Network.TLS.Compression
Network.TLS.Internal
Network.TLS.Extra
Network.TLS.Extra.Cipher
Network.TLS.Extra.FFDHE
Network.TLS.QUIC
other-modules:
Network.TLS.Cap
Network.TLS.Struct
Network.TLS.Struct13
Network.TLS.Core
Network.TLS.Context
Network.TLS.Context.Internal
Network.TLS.Credentials
Network.TLS.Backend
Network.TLS.Crypto
Network.TLS.Crypto.DH
Network.TLS.Crypto.IES
Network.TLS.Crypto.Types
Network.TLS.ErrT
Network.TLS.Extension
Network.TLS.Handshake
Network.TLS.Handshake.Certificate
Network.TLS.Handshake.Client
Network.TLS.Handshake.Common
Network.TLS.Handshake.Common13
Network.TLS.Handshake.Control
Network.TLS.Handshake.Key
Network.TLS.Handshake.Process
Network.TLS.Handshake.Random
Network.TLS.Handshake.Server
Network.TLS.Handshake.Signature
Network.TLS.Handshake.State
Network.TLS.Handshake.State13
Network.TLS.Hooks
Network.TLS.IO
Network.TLS.Imports
Network.TLS.KeySchedule
Network.TLS.MAC
Network.TLS.Measurement
Network.TLS.Packet
Network.TLS.Packet13
Network.TLS.Parameters
Network.TLS.PostHandshake
Network.TLS.Record
Network.TLS.Record.Disengage
Network.TLS.Record.Engage
Network.TLS.Record.Layer
Network.TLS.Record.Reading
Network.TLS.Record.Writing
Network.TLS.Record.State
Network.TLS.Record.Types
Network.TLS.RNG
Network.TLS.State
Network.TLS.Session
Network.TLS.Sending
Network.TLS.Receiving
Network.TLS.Util
Network.TLS.Util.ASN1
Network.TLS.Util.Serialization
Network.TLS.Types
Network.TLS.Wire
Network.TLS.X509
default-language: Haskell2010
ghc-options: -Wall
build-depends:
base >=4.9 && <5,
mtl >=2.2.1,
transformers,
cereal >=0.5.3,
bytestring,
data-default-class,
memory >=0.14.6,
crypton,
asn1-types >=0.2.0,
asn1-encoding,
crypton-x509 >=1.7.5,
crypton-x509-store >=1.6,
crypton-x509-validation >=1.6.5,
async >=2.0,
unix-time
if flag(network)
cpp-options: -DINCLUDE_NETWORK
build-depends: network >=2.4.0.0
if flag(hans)
cpp-options: -DINCLUDE_HANS
build-depends: hans
if flag(compat)
cpp-options: -DSSLV2_COMPATIBLE
test-suite test-tls
type: exitcode-stdio-1.0
main-is: Tests.hs
hs-source-dirs: Tests
other-modules:
Certificate
Ciphers
Connection
Marshalling
PipeChan
PubKey
default-language: Haskell2010
ghc-options: -Wall -fno-warn-unused-imports
build-depends:
base >=3 && <5,
async >=2.0,
data-default-class,
tasty,
tasty-quickcheck,
tls,
QuickCheck,
crypton,
bytestring,
asn1-types,
crypton-x509,
crypton-x509-validation,
hourglass
benchmark bench-tls
type: exitcode-stdio-1.0
main-is: Benchmarks.hs
hs-source-dirs: Benchmarks Tests
other-modules:
Certificate
Connection
PipeChan
PubKey
default-language: Haskell2010
ghc-options: -Wall -fno-warn-unused-imports
build-depends:
base >=4 && <5,
tls,
crypton-x509,
crypton-x509-validation,
data-default-class,
crypton,
gauge,
bytestring,
asn1-types,
async >=2.0,
hourglass,
QuickCheck >=2,
tasty-quickcheck,
tls