Skip to main content

rust_ef_postgres/
tls.rs

1/// TLS mode for PostgreSQL connections.
2///
3/// `Disable` uses plaintext connections (`tokio_postgres::NoTls`) — the
4/// pre-v1.4 default, kept for backward compatibility.
5///
6/// `Require` enforces TLS via the platform's native TLS implementation
7/// (SChannel on Windows, OpenSSL on Linux, Secure Transport on macOS). The
8/// connector is cloned per pool acquisition, so it must be `Clone`
9/// (`native_tls::TlsConnector` satisfies this).
10#[derive(Clone)]
11pub enum PgTlsMode {
12    /// Plaintext connection (backward compatible with v1.3).
13    Disable,
14    /// Enforce TLS using the provided `native_tls::TlsConnector`.
15    Require(native_tls::TlsConnector),
16}