Upgrade to rcgen 0.4

This commit is contained in:
Dirkjan Ochtman
2019-06-18 21:35:31 +02:00
committed by Benjamin Saunders
parent 7bf24093c5
commit 45ee97bd5a
10 changed files with 22 additions and 20 deletions
+1 -1
View File
@@ -42,7 +42,7 @@ directories = "2.0.1"
failure = "0.1"
proptest = "0.9.1"
rand = "0.6.5"
rcgen = "0.3"
rcgen = "0.4"
slog-term = "2"
structopt = "0.2.7"
tokio = "0.1.6"
+2 -2
View File
@@ -299,9 +299,9 @@ fn build_certs(log: Logger, options: Opt) -> Result<(CertificateChain, Certifica
Ok(x) => x,
Err(ref e) if e.kind() == io::ErrorKind::NotFound => {
info!(log, "generating self-signed certificate");
let cert = rcgen::generate_simple_self_signed(vec!["localhost".into()]);
let cert = rcgen::generate_simple_self_signed(vec!["localhost".into()]).unwrap();
let key = cert.serialize_private_key_der();
let cert = cert.serialize_der();
let cert = cert.serialize_der().unwrap();
fs::create_dir_all(&path).context("failed to create certificate directory")?;
fs::write(&cert_path, &cert).context("failed to write certificate")?;
fs::write(&key_path, &key).context("failed to write private key")?;
+1 -1
View File
@@ -34,5 +34,5 @@ webpki = "0.19"
assert_matches = "1.1"
hex-literal = "0.2.0"
untrusted = "0.6.2"
rcgen = "0.3"
rcgen = "0.4"
#slog = { version = "2.2", features = ["max_level_trace"] } # For debugging
+3 -3
View File
@@ -389,7 +389,7 @@ where
pub fn server_config() -> ServerConfig {
let key = CERTIFICATE.serialize_private_key_der();
let cert = CERTIFICATE.serialize_pem();
let cert = CERTIFICATE.serialize_pem().unwrap();
let mut crypto = crypto::rustls::ServerConfig::default();
crypto.set_protocols(&[ALPN_QUIC_HTTP]);
@@ -406,7 +406,7 @@ pub fn server_config() -> ServerConfig {
}
pub fn client_config() -> ClientConfig {
let cert = CERTIFICATE.serialize_der();
let cert = CERTIFICATE.serialize_der().unwrap();
let anchor = webpki::trust_anchor_util::cert_der_as_trust_anchor(Input::from(&cert)).unwrap();
let anchor_vec = vec![anchor];
@@ -438,5 +438,5 @@ lazy_static! {
pub static ref SERVER_PORTS: Mutex<RangeFrom<u16>> = Mutex::new(4433..);
pub static ref CLIENT_PORTS: Mutex<RangeFrom<u16>> = Mutex::new(44433..);
static ref CERTIFICATE: rcgen::Certificate =
rcgen::generate_simple_self_signed(vec!["localhost".into()]);
rcgen::generate_simple_self_signed(vec!["localhost".into()]).unwrap();
}
+1 -1
View File
@@ -43,7 +43,7 @@ criterion = "0.2.10"
directories = "2.0.0"
failure = "0.1"
rand = "0.6.5"
rcgen = "0.3"
rcgen = "0.4"
slog-term = "2"
structopt = "0.2.7"
tokio = "0.1.6"
+2 -2
View File
@@ -13,9 +13,9 @@ criterion_main!(benches);
fn throughput(c: &mut Criterion) {
let mut server_config = ServerConfigBuilder::default();
let cert = rcgen::generate_simple_self_signed(vec!["localhost".into()]);
let cert = rcgen::generate_simple_self_signed(vec!["localhost".into()]).unwrap();
let key = quinn::PrivateKey::from_der(&cert.serialize_private_key_der()).unwrap();
let cert = quinn::Certificate::from_der(&cert.serialize_der()).unwrap();
let cert = quinn::Certificate::from_der(&cert.serialize_der().unwrap()).unwrap();
let cert_chain = quinn::CertificateChain::from_certs(vec![cert.clone()]);
server_config.certificate(cert_chain, key).unwrap();
+2 -2
View File
@@ -58,8 +58,8 @@ fn configure_client(server_certs: &[&[u8]]) -> Result<ClientConfig, Box<Error>>
/// Returns default server configuration along with its certificate.
fn configure_server() -> Result<(ServerConfig, Vec<u8>), Box<Error>> {
let cert = rcgen::generate_simple_self_signed(vec!["localhost".into()]);
let cert_der = cert.serialize_der();
let cert = rcgen::generate_simple_self_signed(vec!["localhost".into()]).unwrap();
let cert_der = cert.serialize_der().unwrap();
let priv_key = cert.serialize_private_key_der();
let priv_key = PrivateKey::from_der(&priv_key)?;
+2 -2
View File
@@ -124,9 +124,9 @@ fn run(log: Logger, options: Opt) -> Result<()> {
Ok(x) => x,
Err(ref e) if e.kind() == io::ErrorKind::NotFound => {
info!(log, "generating self-signed certificate");
let cert = rcgen::generate_simple_self_signed(vec!["localhost".into()]);
let cert = rcgen::generate_simple_self_signed(vec!["localhost".into()]).unwrap();
let key = cert.serialize_private_key_der();
let cert = cert.serialize_der();
let cert = cert.serialize_der().unwrap();
fs::create_dir_all(&path).context("failed to create certificate directory")?;
fs::write(&cert_path, &cert).context("failed to write certificate")?;
fs::write(&key_path, &key).context("failed to write private key")?;
+4 -4
View File
@@ -145,9 +145,9 @@ fn read_after_close() {
let mut endpoint = Endpoint::builder();
let mut server_config = ServerConfigBuilder::default();
let cert = rcgen::generate_simple_self_signed(vec!["localhost".into()]);
let cert = rcgen::generate_simple_self_signed(vec!["localhost".into()]).unwrap();
let key = crate::PrivateKey::from_der(&cert.serialize_private_key_der()).unwrap();
let cert = crate::Certificate::from_der(&cert.serialize_der()).unwrap();
let cert = crate::Certificate::from_der(&cert.serialize_der().unwrap()).unwrap();
let cert_chain = crate::CertificateChain::from_certs(vec![cert.clone()]);
server_config.certificate(cert_chain, key).unwrap();
endpoint.listen(server_config.build());
@@ -241,9 +241,9 @@ fn run_echo(client_addr: SocketAddr, server_addr: SocketAddr) {
{
let log = logger();
let mut server_config = ServerConfigBuilder::default();
let cert = rcgen::generate_simple_self_signed(vec!["localhost".into()]);
let cert = rcgen::generate_simple_self_signed(vec!["localhost".into()]).unwrap();
let key = crate::PrivateKey::from_der(&cert.serialize_private_key_der()).unwrap();
let cert = crate::Certificate::from_der(&cert.serialize_der()).unwrap();
let cert = crate::Certificate::from_der(&cert.serialize_der().unwrap()).unwrap();
let cert_chain = crate::CertificateChain::from_certs(vec![cert.clone()]);
server_config.certificate(cert_chain, key).unwrap();
+4 -2
View File
@@ -174,11 +174,13 @@ fn configure_listener() -> (quinn::ServerConfig, Vec<u8>) {
}
fn gen_cert() -> (Vec<u8>, quinn::PrivateKey) {
let cert = rcgen::generate_simple_self_signed(vec!["localhost".to_string()]);
let cert = unwrap!(rcgen::generate_simple_self_signed(vec![
"localhost".to_string()
]));
let key = unwrap!(quinn::PrivateKey::from_der(
&cert.serialize_private_key_der()
));
(cert.serialize_der(), key)
(unwrap!(cert.serialize_der()), key)
}
/// Constructs a buffer with random bytes of given size prefixed with a hash of this data.