[package]
name = "tlsn-tls-client"
authors = ["TLSNotary Team"]
description = "A TLS client for TLSNotary"
keywords = ["tls", "mpc", "2pc", "client", "sync"]
categories = ["cryptography"]
license = "MIT OR Apache-2.0"
version = "0.1.0-alpha.6"
edition = "2021"
autobenches = false
build = "build.rs"

[lib]
name = "tls_client"

[build-dependencies]
rustversion = { version = "1", optional = true }

[dependencies]
tlsn-tls-backend = { path = "../tls-backend" }
tlsn-tls-core = { path = "../tls-core" }

async-trait.workspace = true
log = { workspace = true, optional = true }
ring.workspace = true
sct.workspace = true
webpki = { workspace = true, features = ["alloc", "std"] }
aes-gcm.workspace = true
p256 = { workspace = true, features = ["ecdh"] }
rand.workspace = true
hmac.workspace = true
sha2 = { workspace = true, features = ["compress"] }
digest.workspace = true
futures.workspace = true
web-time.workspace = true

[features]
default = ["logging", "tls12"]
logging = ["log"]
dangerous_configuration = []
tls12 = []
read_buf = ["rustversion"]

[dev-dependencies]
env_logger.workspace = true
webpki-roots.workspace = true
rustls-pemfile.workspace = true
rustls = { workspace = true, features = ["tls12"] }
tokio = { workspace = true, features = ["rt", "macros"] }

[[example]]
name = "bench"
path = "examples/internal/bench.rs"

[package.metadata.docs.rs]
all-features = true
rustdoc-args = ["--cfg", "docsrs"]

[target.'cfg(target_arch = "wasm32")'.dependencies]
ring = { version = "0.17", features = ["wasm32_unknown_unknown_js"] }
getrandom = { version = "0.2", features = ["js"] }
