Spaces:
Runtime error
Runtime error
File size: 967 Bytes
9552aa0 | 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 | use rustls_pki_types::{CertificateDer, PrivateKeyDer};
// Load public certificate from file
pub fn load_certs(filename: &str) -> std::io::Result<Vec<CertificateDer<'static>>> {
let certfile = std::fs::File::open(filename)
.map_err(|e| std::io::Error::other(format!("failed to open {}: {}", filename, e)))?;
let mut reader = std::io::BufReader::new(certfile);
rustls_pemfile::certs(&mut reader).collect()
}
// Load private key from file
pub fn load_private_key(filename: &str) -> std::io::Result<PrivateKeyDer<'static>> {
let keyfile = std::fs::File::open(filename)
.map_err(|e| std::io::Error::other(format!("failed to open {}: {}", filename, e)))?;
let mut reader = std::io::BufReader::new(keyfile);
match rustls_pemfile::private_key(&mut reader) {
Ok(Some(private_key)) => Ok(private_key),
Ok(None) => Err(std::io::Error::new(
std::io::ErrorKind::InvalidData,
"Invalid private key",
)),
Err(err) => Err(err),
}
}
|