[package]
edition = "2024"
rust-version = "1.85.0"
name = "dimpl"
version = "0.4.3"
authors = ["Martin Algesten <martin@algesten.se>"]
build = false
autolib = false
autobins = false
autoexamples = false
autotests = false
autobenches = false
description = "DTLS 1.2/1.3 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]
_crypto-common = [
"dep:der",
"dep:pkcs8",
"dep:sec1",
"dep:signature",
"dep:spki",
"dep:x509-cert",
]
aws-lc-rs = [
"dep:aws-lc-rs",
"_crypto-common",
]
default = [
"aws-lc-rs",
"rcgen",
]
rcgen = [
"dep:rcgen",
"aws-lc-rs",
]
rust-crypto = [
"dep:aes-gcm",
"dep:chacha20poly1305",
"dep:chacha20",
"dep:p256",
"dep:p384",
"dep:x25519-dalek",
"dep:sha2",
"dep:hmac",
"dep:hkdf",
"dep:ecdsa",
"dep:generic-array",
"dep:rand_core",
"_crypto-common",
]
[lib]
name = "dimpl"
path = "src/lib.rs"
[[test]]
name = "auto"
path = "tests/auto/main.rs"
[[test]]
name = "dtls12"
path = "tests/dtls12/main.rs"
[[test]]
name = "dtls13"
path = "tests/dtls13/main.rs"
[dependencies.aes-gcm]
version = "0.10"
optional = true
[dependencies.arrayvec]
version = "0.7.6"
[dependencies.aws-lc-rs]
version = "^1.16"
features = [
"aws-lc-sys",
"prebuilt-nasm",
]
optional = true
default-features = false
[dependencies.chacha20]
version = "0.9"
optional = true
[dependencies.chacha20poly1305]
version = "0.10"
optional = true
[dependencies.der]
version = "0.7"
optional = true
[dependencies.ecdsa]
version = "0.16"
features = [
"signing",
"verifying",
]
optional = true
[dependencies.generic-array]
version = "0.14"
optional = true
[dependencies.hkdf]
version = "0.12"
optional = true
[dependencies.hmac]
version = "0.12"
optional = true
[dependencies.log]
version = "0.4.29"
[dependencies.nom]
version = "8"
features = ["std"]
default-features = false
[dependencies.once_cell]
version = "1.21.3"
[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"]
optional = true
[dependencies.rand]
version = "0.9"
[dependencies.rand_core]
version = "0.6"
optional = true
[dependencies.rcgen]
version = "0.14.7"
features = ["aws_lc_rs"]
optional = true
default-features = false
[dependencies.sec1]
version = "0.7"
optional = true
[dependencies.sha2]
version = "0.10"
optional = true
[dependencies.signature]
version = "2.2"
optional = true
[dependencies.spki]
version = "0.7"
optional = true
[dependencies.subtle]
version = "2.6"
[dependencies.time]
version = "0.3"
features = ["formatting"]
[dependencies.x25519-dalek]
version = "2"
features = ["static_secrets"]
optional = true
[dependencies.x509-cert]
version = "0.2"
optional = true
default-features = false
[dev-dependencies.bytes]
version = "1"
[dev-dependencies.env_logger]
version = "0.11.9"
[dev-dependencies.libc]
version = "0.2"
[dev-dependencies.openssl]
version = "0.10.75"
features = ["vendored"]
[dev-dependencies.x509-parser]
version = "0.18"
[target."cfg(not(windows))".dev-dependencies.wolfssl]
version = "4.1.0"