webrtc-dtls 0.10.0

A pure Rust implementation of DTLS
Documentation
[package]
name = "webrtc-dtls"
version = "0.10.0"
authors = ["Rain Liu <yuliu@webrtc.rs>"]
edition = "2021"
description = "A pure Rust implementation of DTLS"
license = "MIT OR Apache-2.0"
documentation = "https://docs.rs/webrtc-dtls"
homepage = "https://webrtc.rs"
repository = "https://github.com/webrtc-rs/dtls"

[dependencies]
util = { version = "0.9.0", path = "../util", package = "webrtc-util", default-features = false, features = ["conn"] }

byteorder = "1"
rand_core = "0.6"
hkdf = "0.12"
p256 = { version = "0.13", features = ["default", "ecdh", "ecdsa"] }
p384 = "0.13"
rand = "0.8"
hmac = "0.12"
sec1 = { version = "0.7", features = [ "std" ] }
sha1 = "0.10"
sha2 = "0.10"
aes = "0.8"
cbc = { version = "0.1", features = [ "block-padding", "alloc"] }
aes-gcm = "0.10"
ccm = "0.5"
tokio = { version = "1.32.0", features = [
    "fs",
    "io-util",
    "io-std",
    "macros",
    "net",
    "parking_lot",
    "rt",
    "rt-multi-thread",
    "sync",
    "time",
] }
async-trait = "0.1"
x25519-dalek = { version = "2", features = ["static_secrets"] }
x509-parser = "0.16"
der-parser = "8.1"
rcgen = "0.13"
ring = "0.17"
rustls = { version = "0.23", default-features = false, features = ["std", "ring"] }
bincode = "1"
serde = { version = "1", features = ["derive"] }
subtle = "2"
log = "0.4"
thiserror = "1"
pem = { version = "3", optional = true }
portable-atomic = "1.6"

[dev-dependencies]
tokio-test = "0.4"
env_logger = "0.10"
chrono = "0.4.28"
clap = "3"
hub = {path = "examples/hub"}

[features]
pem = ["dep:pem"]

[[example]]
name = "dial_psk"
path = "examples/dial/psk/dial_psk.rs"
bench = false

[[example]]
name = "dial_selfsign"
path = "examples/dial/selfsign/dial_selfsign.rs"
bench = false

[[example]]
name = "dial_verify"
path = "examples/dial/verify/dial_verify.rs"
bench = false

[[example]]
name = "listen_psk"
path = "examples/listen/psk/listen_psk.rs"
bench = false

[[example]]
name = "listen_selfsign"
path = "examples/listen/selfsign/listen_selfsign.rs"
bench = false

[[example]]
name = "listen_verify"
path = "examples/listen/verify/listen_verify.rs"
bench = false