8 releases (4 breaking)

0.5.0 Dec 25, 2020
0.4.0 Oct 17, 2020
0.3.0 Dec 24, 2019
0.3.0-alpha.2 Nov 28, 2019
0.1.0-rc.1 Jun 30, 2019

#1536 in Database interfaces

Download history 5726/week @ 2023-12-13 5417/week @ 2023-12-20 2980/week @ 2023-12-27 6195/week @ 2024-01-03 6595/week @ 2024-01-10 7020/week @ 2024-01-17 6225/week @ 2024-01-24 4765/week @ 2024-01-31 5289/week @ 2024-02-07 7616/week @ 2024-02-14 9092/week @ 2024-02-21 10733/week @ 2024-02-28 9813/week @ 2024-03-06 10843/week @ 2024-03-13 9998/week @ 2024-03-20 7841/week @ 2024-03-27

40,474 downloads per month
Used in 37 crates (30 directly)

MIT/Apache

280KB
6K SLoC

TLS support for tokio-postgres and postgres via native-tls.

Examples

use native_tls::{Certificate, TlsConnector};
use postgres_native_tls::MakeTlsConnector;
use std::fs;

let cert = fs::read("database_cert.pem")?;
let cert = Certificate::from_pem(&cert)?;
let connector = TlsConnector::builder()
    .add_root_certificate(cert)
    .build()?;
let connector = MakeTlsConnector::new(connector);

let connect_future = tokio_postgres::connect(
    "host=localhost user=postgres sslmode=require",
    connector,
);

// ...
use native_tls::{Certificate, TlsConnector};
use postgres_native_tls::MakeTlsConnector;
use std::fs;

let cert = fs::read("database_cert.pem")?;
let cert = Certificate::from_pem(&cert)?;
let connector = TlsConnector::builder()
    .add_root_certificate(cert)
    .build()?;
let connector = MakeTlsConnector::new(connector);

let client = postgres::Client::connect(
    "host=localhost user=postgres sslmode=require",
    connector,
)?;

Dependencies

~8–21MB
~360K SLoC