1 extern crate anyhow;
2 
3 use anyhow::Result;
4 
main() -> Result<()>5 fn main() -> Result<()> {
6     let mut handle = curl::easy::Easy::new();
7 
8     let proxy_url = "https://fwdproxy";
9     let proxy_port = 8082;
10     let cainfo = "/var/credentials/root/ca.pem";
11     let sslcert = "/var/credentials/user/x509.pem";
12     let sslkey = "/var/credentials/user/x509.pem";
13 
14     handle.connect_timeout(std::time::Duration::from_secs(5))?;
15     handle.connect_only(true)?;
16     handle.verbose(true)?;
17     handle.url("https://www.google.com")?;
18 
19     handle.proxy(proxy_url)?;
20     handle.proxy_port(proxy_port)?;
21     handle.proxy_cainfo(&cainfo)?;
22     handle.proxy_sslcert(&sslcert)?;
23     handle.proxy_sslkey(&sslkey)?;
24     println!("ssl proxy setup done");
25 
26     handle.perform()?;
27     println!("connected done");
28     Ok(())
29 }
30