100 lines
4.4 KiB
TOML
100 lines
4.4 KiB
TOML
[package]
|
|
name = "trust-dns"
|
|
version = "0.22.0"
|
|
authors = ["Benjamin Fry <benjaminfry@me.com>"]
|
|
edition = "2018"
|
|
rust-version = "1.60.0"
|
|
|
|
# A short blurb about the package. This is not rendered in any format when
|
|
# uploaded to crates.io (aka this is not markdown)
|
|
description = """
|
|
Trust-DNS is a safe and secure DNS server with DNSSEC support.
|
|
Eventually this could be a replacement for BIND9. The DNSSEC support allows
|
|
for live signing of all records, in it does not currently support
|
|
records signed offline. The server supports dynamic DNS with SIG0 authenticated
|
|
requests. Trust-DNS is based on the Tokio and Futures libraries, which means
|
|
it should be easily integrated into other software that also use those
|
|
libraries.
|
|
"""
|
|
|
|
# These URLs point to more information about the repository
|
|
documentation = "https://docs.rs/trust-dns-server"
|
|
homepage = "https://trust-dns.org/"
|
|
repository = "https://github.com/bluejekyll/trust-dns"
|
|
|
|
# This points to a file in the repository (relative to this Cargo.toml). The
|
|
# contents of this file are stored and indexed in the registry.
|
|
readme = "README.md"
|
|
|
|
# This is a small list of keywords used to categorize and search for this
|
|
# package.
|
|
keywords = ["DNS", "BIND", "dig", "named", "dnssec"]
|
|
categories = ["network-programming"]
|
|
|
|
# This is a string description of the license for this package. Currently
|
|
# crates.io will validate the license provided against a whitelist of known
|
|
# license identifiers from https://spdx.org/licenses/. Multiple licenses can
|
|
# be separated with a `/`
|
|
license = "MIT/Apache-2.0"
|
|
|
|
[badges]
|
|
#github-actions = { repository = "bluejekyll/trust-dns", branch = "main", workflow = "test" }
|
|
codecov = { repository = "bluejekyll/trust-dns", branch = "main", service = "github" }
|
|
maintenance = { status = "actively-developed" }
|
|
|
|
[features]
|
|
default = ["sqlite", "resolver"]
|
|
dnssec-openssl = ["dnssec", "trust-dns-client/dnssec-openssl", "trust-dns-proto/dnssec-openssl", "trust-dns-server/dnssec-openssl"]
|
|
dnssec-ring = ["dnssec", "trust-dns-client/dnssec-ring", "trust-dns-proto/dnssec-ring", "trust-dns-server/dnssec-ring"]
|
|
dnssec = []
|
|
recursor = ["trust-dns-server/recursor"]
|
|
# Recursive Resolution is Experimental!
|
|
resolver = ["trust-dns-server/resolver"]
|
|
sqlite = ["trust-dns-server/sqlite"]
|
|
|
|
# TODO: Need to figure out how to be consistent with ring/openssl usage...
|
|
# dns-over-https-openssl = ["dns-over-openssl", "trust-dns-client/dns-over-https-openssl", "dns-over-https"]
|
|
dns-over-https-rustls = ["dns-over-https", "dns-over-rustls", "trust-dns-proto/dns-over-https-rustls", "trust-dns-client/dns-over-https-rustls", "trust-dns-server/dns-over-https-rustls"]
|
|
dns-over-https = ["trust-dns-server/dns-over-https"]
|
|
|
|
dns-over-quic = ["dns-over-rustls", "trust-dns-server/dns-over-quic"]
|
|
|
|
# TODO: migrate all tls and tls-openssl features to dns-over-tls, et al
|
|
dns-over-openssl = ["dns-over-tls", "dnssec-openssl", "trust-dns-proto/dns-over-openssl", "trust-dns-client/dns-over-openssl", "trust-dns-server/dns-over-openssl"]
|
|
dns-over-rustls = ["dns-over-tls", "dnssec-ring", "rustls", "trust-dns-proto/dns-over-rustls", "trust-dns-client/dns-over-rustls", "trust-dns-server/dns-over-rustls"]
|
|
dns-over-tls = []
|
|
|
|
# This is a deprecated feature...
|
|
tls-openssl = ["dns-over-openssl"]
|
|
tls = ["dns-over-openssl"]
|
|
|
|
# WARNING: there is a bug in the mutual tls auth code at the moment see issue #100
|
|
# mtls = ["trust-dns-client/mtls"]
|
|
|
|
[[bin]]
|
|
name = "trust-dns"
|
|
path = "src/trust-dns.rs"
|
|
|
|
[dependencies]
|
|
# clap features:
|
|
# - suggestion for advanced help with error in cli
|
|
# - derive for clap derive api
|
|
# - help to generate --help
|
|
clap = { version = "4.0", default-features = false, features = ["std", "cargo", "help", "derive", "suggestions"] }
|
|
futures = { version = "0.3.5", default-features = false, features = ["std"] }
|
|
rustls = { version = "0.20", optional = true }
|
|
time = "0.3"
|
|
tracing = "0.1.30"
|
|
tracing-subscriber = { version = "0.3", features = ["std", "fmt", "env-filter"] }
|
|
tokio = { version = "1.21", features = ["time", "rt"] }
|
|
trust-dns-client = { version = "0.22.0", path = "../crates/client" }
|
|
trust-dns-proto = { version = "0.22.0", path = "../crates/proto" }
|
|
trust-dns-server = { version = "0.22.0", path = "../crates/server" }
|
|
|
|
[dev-dependencies]
|
|
native-tls = "0.2"
|
|
regex = "1.3.4"
|
|
trust-dns-proto = { version = "0.22.0", path = "../crates/proto", features = ["testing", "dns-over-native-tls"] }
|
|
trust-dns-resolver = { version = "0.22.0", path = "../crates/resolver" }
|
|
webpki-roots = "0.22.1"
|