# THIS FILE IS AUTOMATICALLY GENERATED BY CARGO
#
# When uploading crates to the registry Cargo will automatically
# "normalize" Cargo.toml files for maximal compatibility
# with all versions of Cargo and also rewrite `path` dependencies
# to registry (e.g., crates.io) dependencies.
#
# If you are reading this file be aware that the original Cargo.toml
# will likely look very different (and much more reasonable).
# See Cargo.toml.orig for the original contents.

[package]
edition = "2021"
rust-version = "1.81.0"
name = "dimpl"
version = "0.2.0"
authors = ["Martin Algesten <martin@algesten.se>"]
build = false
autolib = false
autobins = false
autoexamples = false
autotests = false
autobenches = false
description = "DTLS 1.2 implementation (Sans‑IO, Sync)"
readme = "README.md"
keywords = [
    "dtls",
    "tls",
    "webrtc",
]
categories = [
    "network-programming",
    "cryptography",
    "security",
]
license = "MIT OR Apache-2.0"
repository = "https://github.com/algesten/dimpl"

[features]
aws-lc-rs = ["dep:aws-lc-rs"]
default = [
    "aws-lc-rs",
    "rcgen",
]
rcgen = [
    "dep:rcgen",
    "aws-lc-rs",
]
rust-crypto = [
    "dep:aes-gcm",
    "dep:p256",
    "dep:p384",
    "dep:sha2",
    "dep:hmac",
    "dep:ecdsa",
    "dep:generic-array",
    "dep:rand_core",
]

[lib]
name = "dimpl"
path = "src/lib.rs"

[[test]]
name = "all-crypto"
path = "tests/all-crypto.rs"

[[test]]
name = "client-fragments"
path = "tests/client-fragments.rs"

[[test]]
name = "client-ossl"
path = "tests/client-ossl.rs"

[[test]]
name = "resend-dupes"
path = "tests/resend-dupes.rs"

[[test]]
name = "resend-timers"
path = "tests/resend-timers.rs"

[[test]]
name = "server-ossl"
path = "tests/server-ossl.rs"

[dependencies.aes-gcm]
version = "0.10"
optional = true

[dependencies.arrayvec]
version = "0.7.6"

[dependencies.aws-lc-rs]
version = "1"
features = [
    "aws-lc-sys",
    "prebuilt-nasm",
]
optional = true
default-features = false

[dependencies.der]
version = "0.7"

[dependencies.ecdsa]
version = "0.16"
features = [
    "signing",
    "verifying",
]
optional = true

[dependencies.generic-array]
version = "0.14"
optional = true

[dependencies.hmac]
version = "0.12"
optional = true

[dependencies.log]
version = "0.4.22"

[dependencies.nom]
version = "7.1.3"
features = ["std"]
default-features = false

[dependencies.once_cell]
version = "1.20.2"

[dependencies.p256]
version = "0.13"
features = ["ecdh"]
optional = true

[dependencies.p384]
version = "0.13"
features = ["ecdh"]
optional = true

[dependencies.pkcs8]
version = "0.10"
features = ["pem"]

[dependencies.rand]
version = "0.9"

[dependencies.rand_core]
version = "0.6"
optional = true

[dependencies.rcgen]
version = "0.14.5"
features = ["aws_lc_rs"]
optional = true
default-features = false

[dependencies.sec1]
version = "0.7"

[dependencies.sha2]
version = "0.10"
optional = true

[dependencies.signature]
version = "2.1"

[dependencies.spki]
version = "0.7"

[dependencies.subtle]
version = "2.6"

[dependencies.time]
version = "0.3"
features = ["formatting"]

[dependencies.x509-cert]
version = "0.2"
default-features = false

[dev-dependencies.env_logger]
version = "0.11.8"

[dev-dependencies.libc]
version = "0.2"

[dev-dependencies.openssl]
version = "0.10.70"
features = ["vendored"]

[dev-dependencies.x509-parser]
version = "0.16"
