Use rustls via tokio-rustls re-export

This commit is contained in:
Matt Brubeck 2024-03-07 15:16:56 -08:00
parent 75cf6024b6
commit df41668b15
5 changed files with 15 additions and 12 deletions

1
Cargo.lock generated
View file

@ -33,7 +33,6 @@ dependencies = [
"once_cell", "once_cell",
"percent-encoding", "percent-encoding",
"rcgen", "rcgen",
"rustls 0.22.2",
"tokio", "tokio",
"tokio-rustls 0.25.0", "tokio-rustls 0.25.0",
"url", "url",

View file

@ -22,8 +22,7 @@ mime_guess = "2.0"
once_cell = "1.19" once_cell = "1.19"
percent-encoding = "2.3" percent-encoding = "2.3"
rcgen = { version = "0.12.1", default-features = false, features = ["ring"] } rcgen = { version = "0.12.1", default-features = false, features = ["ring"] }
rustls = "0.22.2" tokio-rustls = { version = "0.25.0", default-features = false, features = ["logging", "ring", "tls12"] }
tokio-rustls = "0.25.0"
tokio = { version = "1.36", features = ["fs", "io-util", "net", "rt-multi-thread", "sync"] } tokio = { version = "1.36", features = ["fs", "io-util", "net", "rt-multi-thread", "sync"] }
url = "2.5.0" url = "2.5.0"

View file

@ -1,16 +1,17 @@
use { use {
rustls::{
crypto::ring::sign::any_supported_type,
pki_types::{self, CertificateDer, PrivateKeyDer},
server::{ClientHello, ResolvesServerCert},
sign::{CertifiedKey, SigningKey},
},
std::{ std::{
ffi::OsStr, ffi::OsStr,
fmt::{Display, Formatter}, fmt::{Display, Formatter},
path::Path, path::Path,
sync::Arc, sync::Arc,
}, },
tokio_rustls::rustls::{
self,
crypto::ring::sign::any_supported_type,
pki_types::{self, CertificateDer, PrivateKeyDer},
server::{ClientHello, ResolvesServerCert},
sign::{CertifiedKey, SigningKey},
},
}; };
/// A struct that holds all loaded certificates and the respective domain /// A struct that holds all loaded certificates and the respective domain

View file

@ -10,7 +10,6 @@ use {
once_cell::sync::Lazy, once_cell::sync::Lazy,
percent_encoding::{percent_decode_str, percent_encode, AsciiSet, CONTROLS}, percent_encoding::{percent_decode_str, percent_encode, AsciiSet, CONTROLS},
rcgen::{Certificate, CertificateParams, DnType}, rcgen::{Certificate, CertificateParams, DnType},
rustls::server::ServerConfig,
std::{ std::{
borrow::Cow, borrow::Cow,
error::Error, error::Error,
@ -28,7 +27,11 @@ use {
runtime::Runtime, runtime::Runtime,
sync::Mutex, sync::Mutex,
}, },
tokio_rustls::{server::TlsStream, TlsAcceptor}, tokio_rustls::{
rustls::{server::ServerConfig, version::TLS13},
server::TlsStream,
TlsAcceptor,
},
url::{Host, Url}, url::{Host, Url},
}; };
@ -408,7 +411,7 @@ static TLS: Lazy<TlsAcceptor> = Lazy::new(acceptor);
fn acceptor() -> TlsAcceptor { fn acceptor() -> TlsAcceptor {
let config = if ARGS.only_tls13 { let config = if ARGS.only_tls13 {
ServerConfig::builder_with_protocol_versions(&[&rustls::version::TLS13]) ServerConfig::builder_with_protocol_versions(&[&TLS13])
} else { } else {
ServerConfig::builder() ServerConfig::builder()
} }

View file

@ -6,6 +6,7 @@ use std::net::{SocketAddr, ToSocketAddrs};
use std::path::PathBuf; use std::path::PathBuf;
use std::process::{Command, Stdio}; use std::process::{Command, Stdio};
use std::sync::atomic::{AtomicU16, Ordering}; use std::sync::atomic::{AtomicU16, Ordering};
use tokio_rustls::rustls;
use url::Url; use url::Url;
static BINARY_PATH: &str = env!("CARGO_BIN_EXE_agate"); static BINARY_PATH: &str = env!("CARGO_BIN_EXE_agate");