tls-2.4.2: tls.cabal
cabal-version: >=1.10
name: tls
version: 2.4.2
license: BSD3
license-file: LICENSE
copyright: Vincent Hanquez <vincent@snarc.org>
maintainer: Kazu Yamamoto <kazu@iij.ad.jp>
author: Vincent Hanquez <vincent@snarc.org>
homepage: https://github.com/haskell-tls/hs-tls
synopsis: TLS protocol native implementation
description:
Native Haskell TLS 1.2/1.3 protocol implementation for servers and clients.
category: Network
build-type: Simple
extra-source-files:
test/*.hs
CHANGELOG.md
source-repository head
type: git
location: https://github.com/haskell-tls/hs-tls
subdir: tls
flag devel
description: Development commands
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.CipherCBC
Network.TLS.Extra.FFDHE
Network.TLS.QUIC
other-modules:
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.Error
Network.TLS.Extension
Network.TLS.Handshake
Network.TLS.Handshake.Certificate
Network.TLS.Handshake.Client
Network.TLS.Handshake.Client.ClientHello
Network.TLS.Handshake.Client.Common
Network.TLS.Handshake.Client.ServerHello
Network.TLS.Handshake.Client.TLS12
Network.TLS.Handshake.Client.TLS13
Network.TLS.Handshake.Common
Network.TLS.Handshake.Common13
Network.TLS.Handshake.Control
Network.TLS.Handshake.Key
Network.TLS.Handshake.Random
Network.TLS.Handshake.Server
Network.TLS.Handshake.Server.ClientHello
Network.TLS.Handshake.Server.ClientHello12
Network.TLS.Handshake.Server.ClientHello13
Network.TLS.Handshake.Server.Common
Network.TLS.Handshake.Server.ServerHello12
Network.TLS.Handshake.Server.ServerHello13
Network.TLS.Handshake.Server.TLS12
Network.TLS.Handshake.Server.TLS13
Network.TLS.Handshake.Signature
Network.TLS.Handshake.State
Network.TLS.Handshake.State13
Network.TLS.Handshake.TranscriptHash
Network.TLS.HashAndSignature
Network.TLS.Hooks
Network.TLS.IO
Network.TLS.IO.Decode
Network.TLS.IO.Encode
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.RNG
Network.TLS.Record
Network.TLS.Record.Decrypt
Network.TLS.Record.Encrypt
Network.TLS.Record.Layer
Network.TLS.Record.Recv
Network.TLS.Record.Send
Network.TLS.Record.State
Network.TLS.Record.Types
Network.TLS.Session
Network.TLS.State
Network.TLS.Types
Network.TLS.Types.Cipher
Network.TLS.Types.Secret
Network.TLS.Types.Session
Network.TLS.Types.Version
Network.TLS.Util
Network.TLS.Util.ASN1
Network.TLS.Util.Serialization
Network.TLS.Wire
Network.TLS.X509
default-language: Haskell2010
default-extensions: Strict StrictData
ghc-options: -Wall
build-depends:
base >=4.9 && <5,
base16-bytestring,
bytestring >=0.10 && <0.13,
cereal >=0.5.3 && <0.6,
crypton >=1.1.2 && <1.2,
crypton-asn1-encoding >= 0.10.0 && < 0.11,
crypton-asn1-types >= 0.4.1 && < 0.5,
crypton-x509 >=1.9 && <1.10,
crypton-x509-store >=1.9 && <1.10,
crypton-x509-validation >=1.9 && <1.10,
data-default,
ech-config,
hpke >=0.1.0 && <0.2,
mlkem >= 0.2.0 && <0.3,
mtl >=2.2 && <2.4,
network >=3.1,
ram >=0.22.0 && <0.23,
random >=1.2 && <1.4,
serialise >=0.2 && <0.3,
transformers >=0.5 && <0.7,
unix-time >=0.4.11 && <0.5,
zlib >=0.7 && <0.8
executable tls-server
main-is: tls-server.hs
hs-source-dirs: util
other-modules:
Common
Server
Imports
default-language: Haskell2010
default-extensions: Strict StrictData
ghc-options: -Wall -threaded -rtsopts
build-depends:
base >=4.9 && <5,
base16-bytestring,
bytestring,
containers,
crypton,
crypton-x509-store,
crypton-x509-system,
ech-config,
network,
network-run,
tls
if flag(devel)
else
buildable: False
executable tls-client
main-is: tls-client.hs
hs-source-dirs: util
other-modules:
Client
Common
Imports
default-language: Haskell2010
default-extensions: Strict StrictData
ghc-options: -Wall -threaded -rtsopts
build-depends:
base >=4.9 && <5,
base16-bytestring,
bytestring,
crypton,
crypton-x509-store,
crypton-x509-system,
ech-config,
network,
network-run >=0.5,
tls
if flag(devel)
else
buildable: False
test-suite spec
type: exitcode-stdio-1.0
main-is: Spec.hs
build-tool-depends: hspec-discover:hspec-discover
hs-source-dirs: test
other-modules:
API
Arbitrary
Certificate
CiphersSpec
ECHSpec
EncodeSpec
HandshakeSpec
PipeChan
PubKey
Run
Session
ThreadSpec
default-language: Haskell2010
default-extensions: Strict StrictData
ghc-options: -Wall -threaded -rtsopts
build-depends:
base >=4.9 && <5,
QuickCheck,
async,
base64-bytestring,
bytestring,
crypton,
crypton-asn1-types,
crypton-x509,
crypton-x509-validation,
ech-config,
hspec,
ram,
serialise,
time-hourglass,
tls
benchmark tls-bench
type: exitcode-stdio-1.0
main-is: Benchmarks.hs
hs-source-dirs: Benchmarks test
other-modules:
API
Arbitrary
Certificate
CiphersSpec
ECHSpec
EncodeSpec
HandshakeSpec
PipeChan
PubKey
Run
Session
ThreadSpec
default-language: Haskell2010
ghc-options: -Wall
build-depends:
base >=4.9 && <5,
QuickCheck,
async,
base64-bytestring,
bytestring,
containers,
crypton,
crypton-asn1-types,
crypton-x509,
crypton-x509-store,
crypton-x509-validation,
data-default,
ech-config,
hspec,
network,
network-run,
serialise,
tasty-bench,
time-hourglass,
tls