[package] name = "tonic-rustls" description = "Provide support for custom rustls configs in tonic servers and clients" authors = ["Brandon Williams "] repository = "https://github.com/bmwill/tonic-rustls" documentation = "https://docs.rs/tonic-rustls" readme = "README.md" edition = "2021" license = "MIT" version = "0.1.0" [features] default = ["tls", "channel", "server"] tls = ["dep:tokio-rustls", "dep:tokio", "tokio?/rt", "tokio?/macros"] server = [ "dep:async-stream", "dep:h2", "dep:hyper", "hyper?/server", "dep:hyper-util", "hyper-util?/service", "hyper-util?/server-auto", "dep:socket2", "dep:tokio", "tokio?/macros", "tokio?/net", "tokio?/time", "tokio-stream/net", "dep:tower", "tower?/util", "tower?/limit", ] channel = [ "dep:hyper", "hyper?/client", "dep:hyper-util", "hyper-util?/client-legacy", "dep:tower", "tower?/balance", "tower?/buffer", "tower?/discover", "tower?/limit", "tower?/util", "dep:tokio", "tokio?/time", "dep:hyper-timeout", ] [dependencies] tonic = { version = "0.12", default-features = false, features = ["router"] } bytes = "1.0" http = "1" tracing = "0.1" http-body = "1" http-body-util = "0.1" pin-project = "1.0.11" tower-layer = "0.3" tower-service = "0.3" tokio-stream = {version = "0.1.16", default-features = false} # transport async-stream = {version = "0.3", optional = true} h2 = {version = "0.4", optional = true} hyper = {version = "1", features = ["http1", "http2"], optional = true} hyper-util = { version = "0.1.4", features = ["tokio"], optional = true } socket2 = { version = "0.5", optional = true, features = ["all"] } tokio = {version = "1", default-features = false, optional = true} tower = {version = "0.5", default-features = false, optional = true} axum = {version = "0.7", default-features = false, optional = true} # rustls tokio-rustls = { version = "0.26", default-features = false, features = ["tls12", "ring"], optional = true } # channel hyper-timeout = {version = "0.5", optional = true} [dev-dependencies] quickcheck = "1.0" quickcheck_macros = "1.0" tokio = {version = "1.0", features = ["rt", "macros"]} tower = {version = "0.5", features = ["full"]}