Skip to content

Commit 08df4b3

Browse files
committed
Implement tls_server_end_point for postgres-native-tls
1 parent 3955d26 commit 08df4b3

File tree

2 files changed

+21
-0
lines changed

2 files changed

+21
-0
lines changed

postgres-native-tls/src/lib.rs

+4
Original file line numberDiff line numberDiff line change
@@ -69,4 +69,8 @@ impl TlsStream for NativeTlsStream {
6969
fn get_mut(&mut self) -> &mut Stream {
7070
self.0.get_mut()
7171
}
72+
73+
fn tls_server_end_point(&self) -> Option<Vec<u8>> {
74+
self.0.tls_server_end_point().ok().and_then(|o| o)
75+
}
7276
}

postgres-native-tls/src/test.rs

+17
Original file line numberDiff line numberDiff line change
@@ -19,3 +19,20 @@ fn connect() {
1919
).unwrap();
2020
conn.execute("SELECT 1::VARCHAR", &[]).unwrap();
2121
}
22+
23+
#[test]
24+
fn scram_user() {
25+
let cert = include_bytes!("../../test/server.crt");
26+
let cert = Certificate::from_pem(cert).unwrap();
27+
28+
let mut builder = TlsConnector::builder();
29+
builder.add_root_certificate(cert);
30+
let connector = builder.build().unwrap();
31+
32+
let handshake = NativeTls::with_connector(connector);
33+
let conn = Connection::connect(
34+
"postgres://scram_user:password@localhost:5433/postgres",
35+
TlsMode::Require(&handshake),
36+
).unwrap();
37+
conn.execute("SELECT 1::VARCHAR", &[]).unwrap();
38+
}

0 commit comments

Comments
 (0)