#[non_exhaustive]pub struct ListenTlsConfig {
pub cert_file: PathBuf,
pub key_file: PathBuf,
pub client_ca_file: Option<PathBuf>,
pub client_auth: Option<ClientAuth>,
pub handshake_timeout_secs: u64,
}Expand description
TLS for the listener.
tls:
cert_file: /etc/proxy/tls.crt # PEM chain, leaf first
key_file: /etc/proxy/tls.key # PEM private key
client_ca_file: /etc/proxy/ca.crt # optional: verify client certificates
client_auth: required # or `optional`Fields (Non-exhaustive)§
This struct is marked as non-exhaustive
Non-exhaustive structs could have additional fields added in future. Therefore, non-exhaustive structs cannot be constructed in external crates using the traditional
Struct { .. } syntax; cannot be matched against without a wildcard ..; and struct update syntax will not work.cert_file: PathBufThe server certificate chain, PEM, leaf first.
key_file: PathBufThe server private key, PEM (PKCS#8, PKCS#1 or SEC1).
client_ca_file: Option<PathBuf>CA certificates, PEM, that client certificates are verified against. Unset: clients present none.
client_auth: Option<ClientAuth>Whether a client must present a certificate; required when
client_ca_file is set and this is not. Setting it without
client_ca_file is an error: nothing could verify the certificate.
handshake_timeout_secs: u64Seconds a client has to finish the TLS handshake. At least 1. Default: 10.
Implementations§
Trait Implementations§
Source§impl Clone for ListenTlsConfig
impl Clone for ListenTlsConfig
Source§impl Debug for ListenTlsConfig
impl Debug for ListenTlsConfig
Source§impl<'de> Deserialize<'de> for ListenTlsConfig
impl<'de> Deserialize<'de> for ListenTlsConfig
Source§fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
Deserialize this value from the given Serde deserializer. Read more
Auto Trait Implementations§
impl Freeze for ListenTlsConfig
impl RefUnwindSafe for ListenTlsConfig
impl Send for ListenTlsConfig
impl Sync for ListenTlsConfig
impl Unpin for ListenTlsConfig
impl UnsafeUnpin for ListenTlsConfig
impl UnwindSafe for ListenTlsConfig
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> DeserializeOwned for Twhere
T: for<'de> Deserialize<'de>,
Source§impl<T> Instrument for T
impl<T> Instrument for T
Source§fn instrument(self, span: Span) -> Instrumented<Self> ⓘ
fn instrument(self, span: Span) -> Instrumented<Self> ⓘ
Source§fn in_current_span(self) -> Instrumented<Self> ⓘ
fn in_current_span(self) -> Instrumented<Self> ⓘ
Source§impl<T> IntoRequest<T> for T
impl<T> IntoRequest<T> for T
Source§fn into_request(self) -> Request<T>
fn into_request(self) -> Request<T>
Wrap the input message
T in a tonic::Request