Skip to content

Instantly share code, notes, and snippets.

@davidpdrsn
Created October 11, 2017 13:26
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save davidpdrsn/258e584030582f1060d018516bb0957b to your computer and use it in GitHub Desktop.
Save davidpdrsn/258e584030582f1060d018516bb0957b to your computer and use it in GitHub Desktop.
[package]
name = "instant-replay"
version = "0.1.0"
authors = ["davidpdrsn"]
[dependencies]
postgres = { version = "0.15", features = ["with-openssl"] }
extern crate postgres;
use postgres::{Connection, TlsMode};
use postgres::tls::openssl::OpenSsl;
fn main() {
let openssl = OpenSsl::new().expect("failed to create openssl");
let connection = Connection::connect(
"postgres://_:_@_:5432/_?sslmode=require",
TlsMode::Prefer(&openssl),
).expect("failed to connect");
for row in &connection.query("select * from users limit 1", &[]).expect("query failed") {
println!("{:?}", row);
}
}
@davidpdrsn
Copy link
Author

The error I get is:

thread 'main' panicked at 'failed to connect: Error(Tls(Failure(MidHandshakeSslStream { stream: SslStream { stream: TcpStream { addr: V4(192.168.1.12:51332), peer: V4(54.228.220.197:5432), fd: 5 }, ssl: Ssl { state: "error", verify_result: X509VerifyError { code: 18, error: "self signed certificate" } } }, error: Ssl(ErrorStack([Error { code: 337047686, library: "SSL routines", function: "tls_process_server_certificate", reason: "certificate verify failed", file: "ssl/statem/statem_clnt.c", line: 1230 }])) })))', src/libcore/result.rs:859
stack backtrace:
   0: std::sys::imp::backtrace::tracing::imp::unwind_backtrace
   1: std::panicking::default_hook::{{closure}}
   2: std::panicking::default_hook
   3: std::panicking::rust_panic_with_hook
   4: std::panicking::begin_panic
   5: std::panicking::begin_panic_fmt
   6: rust_begin_unwind
   7: core::panicking::panic_fmt
   8: core::result::unwrap_failed
   9: <core::result::Result<T, E>>::expect
  10: run::main
  11: __rust_maybe_catch_panic
  12: std::rt::lang_start
  13: main

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment