diff options
author | Daniel McCarney <daniel@binaryparadox.net> | 2024-01-03 12:46:17 -0500 |
---|---|---|
committer | Daniel McCarney <daniel@binaryparadox.net> | 2024-01-04 13:41:11 +0000 |
commit | ba97712be2e9654c3f609737218df74441c1e254 (patch) | |
tree | a7f1b7fdcce90dd2ecc0edc1a1f8e5e68b775093 /examples | |
parent | f0934452ca6541145de53dfb0606194b1a70d5d3 (diff) |
examples: use CLI args vs env vars in simpleserver
Diffstat (limited to 'examples')
-rw-r--r-- | examples/src/bin/simpleserver.rs | 24 |
1 files changed, 12 insertions, 12 deletions
diff --git a/examples/src/bin/simpleserver.rs b/examples/src/bin/simpleserver.rs index 050234ac..cf30e84d 100644 --- a/examples/src/bin/simpleserver.rs +++ b/examples/src/bin/simpleserver.rs @@ -9,27 +9,27 @@ //! Note that `unwrap()` is used to deal with networking errors; this is not something //! that is sensible outside of example code. +use std::env; use std::error::Error as StdError; use std::fs::File; use std::io::{BufReader, Read, Write}; use std::net::TcpListener; use std::sync::Arc; -const CERTFILE: &str = match option_env!("CERTFILE") { - Some(certfile) => certfile, - None => "localhost.pem", -}; - -const PRIV_KEY_FILE: &str = match option_env!("PRIV_KEY_FILE") { - Some(priv_key_file) => priv_key_file, - None => "localhost-key.pem", -}; - fn main() -> Result<(), Box<dyn StdError>> { - let certs = rustls_pemfile::certs(&mut BufReader::new(&mut File::open(CERTFILE)?)) + let mut args = env::args(); + let cert_file = args + .next() + .expect("missing certificate file argument"); + let private_key_file = args + .next() + .expect("missing private key file argument"); + + let certs = rustls_pemfile::certs(&mut BufReader::new(&mut File::open(cert_file)?)) .collect::<Result<Vec<_>, _>>()?; let private_key = - rustls_pemfile::private_key(&mut BufReader::new(&mut File::open(PRIV_KEY_FILE)?))?.unwrap(); + rustls_pemfile::private_key(&mut BufReader::new(&mut File::open(private_key_file)?))? + .unwrap(); let config = rustls::ServerConfig::builder() .with_no_client_auth() .with_single_cert(certs, private_key)?; |