template, libs, impl Default/From
This commit is contained in:
commit
c013ebf7dc
4 changed files with 343 additions and 0 deletions
27
src/lib.rs
Normal file
27
src/lib.rs
Normal file
|
@ -0,0 +1,27 @@
|
|||
use std::sync::Arc;
|
||||
|
||||
use tokio_rustls::{rustls, TlsConnector};
|
||||
|
||||
pub struct Client {
|
||||
connector: TlsConnector,
|
||||
}
|
||||
|
||||
impl Default for Client {
|
||||
fn default() -> Self {
|
||||
let roots =
|
||||
rustls::RootCertStore::from_iter(webpki_roots::TLS_SERVER_ROOTS.iter().cloned());
|
||||
let config = rustls::ClientConfig::builder()
|
||||
.with_root_certificates(roots)
|
||||
.with_no_client_auth();
|
||||
Client::from(config)
|
||||
}
|
||||
}
|
||||
|
||||
impl From<rustls::ClientConfig> for Client {
|
||||
#[inline]
|
||||
fn from(config: rustls::ClientConfig) -> Self {
|
||||
Client {
|
||||
connector: TlsConnector::from(Arc::new(config)),
|
||||
}
|
||||
}
|
||||
}
|
Loading…
Add table
Reference in a new issue