From 8402470ff19ffcafcffb63f9ece76f25a82a4339 Mon Sep 17 00:00:00 2001 From: Dirkjan Ochtman Date: Tue, 11 Aug 2026 17:40:39 +0200 Subject: [PATCH 1/4] Take advantage of stable ML-DSA in aws-lc-rs --- Cargo.lock | 18 ++++++++++-------- Cargo.toml | 4 ++-- rcgen/Cargo.toml | 2 +- rcgen/src/key_pair.rs | 16 ++++++++-------- rcgen/src/oid.rs | 6 +++--- rcgen/src/sign_algo.rs | 18 +++++++++--------- rustls-cert-gen/src/cert.rs | 24 ++++++++++++------------ verify-tests/Cargo.toml | 3 +-- verify-tests/tests/webpki.rs | 10 +++++----- 9 files changed, 51 insertions(+), 50 deletions(-) diff --git a/Cargo.lock b/Cargo.lock index ca842743..fffb777d 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -84,23 +84,24 @@ checksum = "f2032f911046de80f0a198e0901378627c33f59ea0ac00e363d481118bd70a53" [[package]] name = "aws-lc-fips-sys" -version = "0.13.14" +version = "0.14.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d3d619165468401dec3caa3366ebffbcb83f2f31883e5b3932f8e2dec2ddc568" +checksum = "118303cd75f63d1933a90c2ceb7e697281ac6acbdbcc490b46419f25a527ab90" dependencies = [ "bindgen", "cc", "cmake", "dunce", "fs_extra", + "pkg-config", "regex", ] [[package]] name = "aws-lc-rs" -version = "1.17.0" +version = "1.18.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5ec2f1fc3ec205783a5da9a7e6c1509cc69dedf09a1949e412c1e18469326d00" +checksum = "ce2b2dcc879c3bae0d371e77c99f2238400ef24ec001394befa67b6e543add9e" dependencies = [ "aws-lc-fips-sys", "aws-lc-sys", @@ -110,14 +111,15 @@ dependencies = [ [[package]] name = "aws-lc-sys" -version = "0.41.0" +version = "0.44.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1a2f9779ce85b93ab6170dd940ad0169b5766ff848247aff13bb788b832fe3f4" +checksum = "f09fae7be8bb3174e05c6afdb34199e6dc0c7c04ba9fa237b1967adfbde27483" dependencies = [ "cc", "cmake", "dunce", "fs_extra", + "pkg-config", ] [[package]] @@ -914,9 +916,9 @@ dependencies = [ [[package]] name = "rustls-webpki" -version = "0.103.13" +version = "0.103.14" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "61c429a8649f110dddef65e2a5ad240f747e85f7758a6bccc7e5777bd33f756e" +checksum = "0527518605e68109d875e248ea259b6758801cf165e4b2c2733ae3b51f12535a" dependencies = [ "aws-lc-rs", "ring", diff --git a/Cargo.toml b/Cargo.toml index 17c838b6..e84a7e8c 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -14,14 +14,14 @@ keywords = ["mkcert", "ca", "certificate"] [workspace.dependencies] anyhow = "1.0.75" assert_fs = "1.0.13" -aws-lc-rs = { version = "1.13.3", default-features = false } +aws-lc-rs = { version = "1.18", default-features = false } botan = { version = "0.12", features = ["vendored"] } bpaf = { version = "0.9.5", features = ["derive"] } openssl = "0.10" pem = "3.0.2" pki-types = { package = "rustls-pki-types", version = "1.4.1" } ring = "0.17" -rustls-webpki = { version = "0.103", features = ["ring", "std"] } +rustls-webpki = { version = "0.103.14", features = ["ring", "std"] } time = { version = "0.3.6", default-features = false } x509-parser = "0.18" yasna = { version = "0.6", features = ["time", "std"] } diff --git a/rcgen/Cargo.toml b/rcgen/Cargo.toml index d46cd8c2..2d8109d0 100644 --- a/rcgen/Cargo.toml +++ b/rcgen/Cargo.toml @@ -13,7 +13,7 @@ keywords.workspace = true [features] default = ["crypto", "pem", "ring"] aws_lc_rs = ["crypto", "dep:aws-lc-rs", "aws-lc-rs/aws-lc-sys", "x509-parser?/verify-aws"] -aws_lc_rs_unstable = ["aws_lc_rs", "aws-lc-rs/unstable", "x509-parser?/verify-aws"] +aws_lc_rs_unstable = ["aws_lc_rs"] fips = ["crypto", "dep:aws-lc-rs", "aws-lc-rs/fips"] crypto = [] ring = ["crypto", "dep:ring", "x509-parser?/verify"] diff --git a/rcgen/src/key_pair.rs b/rcgen/src/key_pair.rs index a421b0d8..84df1678 100644 --- a/rcgen/src/key_pair.rs +++ b/rcgen/src/key_pair.rs @@ -1,8 +1,8 @@ #[cfg(feature = "crypto")] use std::fmt; -#[cfg(all(feature = "aws_lc_rs_unstable", not(feature = "fips")))] -use aws_lc_rs::unstable::signature::PqdsaKeyPair; +#[cfg(feature = "aws_lc_rs")] +use aws_lc_rs::signature::PqdsaKeyPair; #[cfg(feature = "pem")] use pem::Pem; #[cfg(feature = "crypto")] @@ -40,7 +40,7 @@ pub(crate) enum KeyPairKind { /// A Ed25519 key pair Ed(Ed25519KeyPair), /// A Pqdsa key pair - #[cfg(all(feature = "aws_lc_rs_unstable", not(feature = "fips")))] + #[cfg(feature = "aws_lc_rs")] Pq(PqdsaKeyPair), /// A RSA key pair Rsa(RsaKeyPair, &'static dyn RsaEncoding), @@ -52,7 +52,7 @@ impl fmt::Debug for KeyPairKind { match self { Self::Ec(key_pair) => write!(f, "{key_pair:?}"), Self::Ed(key_pair) => write!(f, "{key_pair:?}"), - #[cfg(all(feature = "aws_lc_rs_unstable", not(feature = "fips")))] + #[cfg(feature = "aws_lc_rs")] Self::Pq(key_pair) => write!(f, "{key_pair:?}"), Self::Rsa(key_pair, _) => write!(f, "{key_pair:?}"), } @@ -119,10 +119,10 @@ impl KeyPair { serialized_der: key_pair_serialized, }) }, - #[cfg(all(feature = "aws_lc_rs_unstable", not(feature = "fips")))] + #[cfg(feature = "aws_lc_rs")] SignAlgo::PqDsa(sign_alg) => { let key_pair = PqdsaKeyPair::generate(sign_alg)._err()?; - let key_pair_serialized = key_pair.to_pkcs8()._err()?.as_ref().to_vec(); + let key_pair_serialized = key_pair.to_pkcs8v1()._err()?.as_ref().to_vec(); Ok(KeyPair { kind: KeyPairKind::Pq(key_pair), @@ -458,7 +458,7 @@ impl SigningKey for KeyPair { signature.as_ref().to_owned() }, KeyPairKind::Ed(kp) => kp.sign(msg).as_ref().to_owned(), - #[cfg(all(feature = "aws_lc_rs_unstable", not(feature = "fips")))] + #[cfg(feature = "aws_lc_rs")] KeyPairKind::Pq(kp) => { let mut signature = vec![0; kp.algorithm().signature_len()]; kp.sign(msg, &mut signature)._err()?; @@ -481,7 +481,7 @@ impl PublicKeyData for KeyPair { match &self.kind { KeyPairKind::Ec(kp) => kp.public_key().as_ref(), KeyPairKind::Ed(kp) => kp.public_key().as_ref(), - #[cfg(all(feature = "aws_lc_rs_unstable", not(feature = "fips")))] + #[cfg(feature = "aws_lc_rs")] KeyPairKind::Pq(kp) => kp.public_key().as_ref(), KeyPairKind::Rsa(kp, _) => kp.public_key().as_ref(), } diff --git a/rcgen/src/oid.rs b/rcgen/src/oid.rs index e537b741..d61e858f 100644 --- a/rcgen/src/oid.rs +++ b/rcgen/src/oid.rs @@ -25,11 +25,11 @@ pub(crate) const EC_SECP_384_R1: &[u64] = &[1, 3, 132, 0, 34]; #[cfg(feature = "aws_lc_rs")] pub(crate) const EC_SECP_521_R1: &[u64] = &[1, 3, 132, 0, 35]; -#[cfg(all(feature = "aws_lc_rs_unstable", not(feature = "fips")))] +#[cfg(feature = "aws_lc_rs")] pub(crate) const ML_DSA_44: &[u64] = &[2, 16, 840, 1, 101, 3, 4, 3, 17]; -#[cfg(all(feature = "aws_lc_rs_unstable", not(feature = "fips")))] +#[cfg(feature = "aws_lc_rs")] pub(crate) const ML_DSA_65: &[u64] = &[2, 16, 840, 1, 101, 3, 4, 3, 18]; -#[cfg(all(feature = "aws_lc_rs_unstable", not(feature = "fips")))] +#[cfg(feature = "aws_lc_rs")] pub(crate) const ML_DSA_87: &[u64] = &[2, 16, 840, 1, 101, 3, 4, 3, 19]; /// rsaEncryption in [RFC 4055](https://www.rfc-editor.org/rfc/rfc4055#section-6) diff --git a/rcgen/src/sign_algo.rs b/rcgen/src/sign_algo.rs index 2d2fb71e..a7fe1c7c 100644 --- a/rcgen/src/sign_algo.rs +++ b/rcgen/src/sign_algo.rs @@ -1,8 +1,8 @@ use std::fmt; use std::hash::{Hash, Hasher}; -#[cfg(all(feature = "aws_lc_rs_unstable", not(feature = "fips")))] -use aws_lc_rs::unstable::signature::{ +#[cfg(feature = "aws_lc_rs")] +use aws_lc_rs::signature::{ PqdsaSigningAlgorithm, ML_DSA_44_SIGNING, ML_DSA_65_SIGNING, ML_DSA_87_SIGNING, }; use yasna::models::ObjectIdentifier; @@ -17,7 +17,7 @@ use crate::Error; pub(crate) enum SignAlgo { EcDsa(&'static EcdsaSigningAlgorithm), EdDsa(&'static EdDSAParameters), - #[cfg(all(feature = "aws_lc_rs_unstable", not(feature = "fips")))] + #[cfg(feature = "aws_lc_rs")] PqDsa(&'static PqdsaSigningAlgorithm), Rsa(&'static dyn RsaEncoding), } @@ -230,30 +230,30 @@ pub(crate) mod algo { }; /// ML-DSA-44 signing as per . - #[cfg(all(feature = "aws_lc_rs_unstable", not(feature = "fips")))] + #[cfg(feature = "aws_lc_rs")] pub static PKCS_ML_DSA_44: SignatureAlgorithm = SignatureAlgorithm { oids_sign_alg: &[ML_DSA_44], - #[cfg(all(feature = "crypto", feature = "aws_lc_rs_unstable"))] + #[cfg(feature = "crypto")] sign_alg: SignAlgo::PqDsa(&ML_DSA_44_SIGNING), oid_components: ML_DSA_44, params: SignatureAlgorithmParams::None, }; /// ML-DSA-65 signing as per . - #[cfg(all(feature = "aws_lc_rs_unstable", not(feature = "fips")))] + #[cfg(feature = "aws_lc_rs")] pub static PKCS_ML_DSA_65: SignatureAlgorithm = SignatureAlgorithm { oids_sign_alg: &[ML_DSA_65], - #[cfg(all(feature = "crypto", feature = "aws_lc_rs_unstable"))] + #[cfg(feature = "crypto")] sign_alg: SignAlgo::PqDsa(&ML_DSA_65_SIGNING), oid_components: ML_DSA_65, params: SignatureAlgorithmParams::None, }; /// ML-DSA-87 signing as per . - #[cfg(all(feature = "aws_lc_rs_unstable", not(feature = "fips")))] + #[cfg(feature = "aws_lc_rs")] pub static PKCS_ML_DSA_87: SignatureAlgorithm = SignatureAlgorithm { oids_sign_alg: &[ML_DSA_87], - #[cfg(all(feature = "crypto", feature = "aws_lc_rs_unstable"))] + #[cfg(feature = "crypto")] sign_alg: SignAlgo::PqDsa(&ML_DSA_87_SIGNING), oid_components: ML_DSA_87, params: SignatureAlgorithmParams::None, diff --git a/rustls-cert-gen/src/cert.rs b/rustls-cert-gen/src/cert.rs index 798e0c8e..3b3625d2 100644 --- a/rustls-cert-gen/src/cert.rs +++ b/rustls-cert-gen/src/cert.rs @@ -197,11 +197,11 @@ pub enum KeyPairAlgorithm { EcdsaP384, #[cfg(feature = "aws_lc_rs")] EcdsaP521, - #[cfg(all(feature = "aws_lc_rs_unstable", not(feature = "fips")))] + #[cfg(feature = "aws_lc_rs")] MlDsa44, - #[cfg(all(feature = "aws_lc_rs_unstable", not(feature = "fips")))] + #[cfg(feature = "aws_lc_rs")] MlDsa65, - #[cfg(all(feature = "aws_lc_rs_unstable", not(feature = "fips")))] + #[cfg(feature = "aws_lc_rs")] MlDsa87, } @@ -214,11 +214,11 @@ impl From for &'static SignatureAlgorithm { KeyPairAlgorithm::EcdsaP384 => &rcgen::PKCS_ECDSA_P384_SHA384, #[cfg(feature = "aws_lc_rs")] KeyPairAlgorithm::EcdsaP521 => &rcgen::PKCS_ECDSA_P521_SHA512, - #[cfg(all(feature = "aws_lc_rs_unstable", not(feature = "fips")))] + #[cfg(feature = "aws_lc_rs")] KeyPairAlgorithm::MlDsa44 => &rcgen::PKCS_ML_DSA_44, - #[cfg(all(feature = "aws_lc_rs_unstable", not(feature = "fips")))] + #[cfg(feature = "aws_lc_rs")] KeyPairAlgorithm::MlDsa65 => &rcgen::PKCS_ML_DSA_65, - #[cfg(all(feature = "aws_lc_rs_unstable", not(feature = "fips")))] + #[cfg(feature = "aws_lc_rs")] KeyPairAlgorithm::MlDsa87 => &rcgen::PKCS_ML_DSA_87, } } @@ -233,11 +233,11 @@ impl fmt::Display for KeyPairAlgorithm { KeyPairAlgorithm::EcdsaP384 => write!(f, "ecdsa-p384"), #[cfg(feature = "aws_lc_rs")] KeyPairAlgorithm::EcdsaP521 => write!(f, "ecdsa-p521"), - #[cfg(all(feature = "aws_lc_rs_unstable", not(feature = "fips")))] + #[cfg(feature = "aws_lc_rs")] KeyPairAlgorithm::MlDsa44 => write!(f, "ml-dsa-44"), - #[cfg(all(feature = "aws_lc_rs_unstable", not(feature = "fips")))] + #[cfg(feature = "aws_lc_rs")] KeyPairAlgorithm::MlDsa65 => write!(f, "ml-dsa-65"), - #[cfg(all(feature = "aws_lc_rs_unstable", not(feature = "fips")))] + #[cfg(feature = "aws_lc_rs")] KeyPairAlgorithm::MlDsa87 => write!(f, "ml-dsa-87"), } } @@ -254,11 +254,11 @@ impl FromStr for KeyPairAlgorithm { "ecdsa-p384" => Ok(Self::EcdsaP384), #[cfg(feature = "aws_lc_rs")] "ecdsa-p521" => Ok(Self::EcdsaP521), - #[cfg(all(feature = "aws_lc_rs_unstable", not(feature = "fips")))] + #[cfg(feature = "aws_lc_rs")] "ml-dsa-44" => Ok(Self::MlDsa44), - #[cfg(all(feature = "aws_lc_rs_unstable", not(feature = "fips")))] + #[cfg(feature = "aws_lc_rs")] "ml-dsa-65" => Ok(Self::MlDsa65), - #[cfg(all(feature = "aws_lc_rs_unstable", not(feature = "fips")))] + #[cfg(feature = "aws_lc_rs")] "ml-dsa-87" => Ok(Self::MlDsa87), _ => Err(anyhow::anyhow!("unknown key algorithm: {s}")), } diff --git a/verify-tests/Cargo.toml b/verify-tests/Cargo.toml index ae2c93f2..900be8ab 100644 --- a/verify-tests/Cargo.toml +++ b/verify-tests/Cargo.toml @@ -6,8 +6,7 @@ publish = false [features] default = [] -aws_lc_rs = ["rcgen/aws_lc_rs"] -aws_lc_rs_unstable = ["dep:aws-lc-rs", "rcgen/aws_lc_rs_unstable", "rustls-webpki/aws-lc-rs-unstable"] +aws_lc_rs = ["rcgen/aws_lc_rs", "rustls-webpki/aws-lc-rs"] fips = ["rcgen/fips"] pem = ["dep:pem", "rcgen/pem"] ring = ["rcgen/ring"] diff --git a/verify-tests/tests/webpki.rs b/verify-tests/tests/webpki.rs index 2138f788..47b854d2 100644 --- a/verify-tests/tests/webpki.rs +++ b/verify-tests/tests/webpki.rs @@ -1,7 +1,7 @@ use std::time::Duration as StdDuration; -#[cfg(feature = "aws_lc_rs_unstable")] -use aws_lc_rs::unstable::signature::{ +#[cfg(feature = "aws_lc_rs")] +use aws_lc_rs::signature::{ PqdsaKeyPair, PqdsaSigningAlgorithm, ML_DSA_44_SIGNING, ML_DSA_65_SIGNING, ML_DSA_87_SIGNING, }; use pki_types::{CertificateDer, ServerName, SignatureVerificationAlgorithm, UnixTime}; @@ -39,7 +39,7 @@ fn sign_msg_ed25519(key_pair: &KeyPair, msg: &[u8]) -> Vec { signature.as_ref().to_vec() } -#[cfg(feature = "aws_lc_rs_unstable")] +#[cfg(feature = "aws_lc_rs")] fn sign_msg_pq(key_pair: &KeyPair, msg: &[u8], alg: &'static PqdsaSigningAlgorithm) -> Vec { let pk_der = key_pair.serialize_der(); let key_pair = PqdsaKeyPair::from_pkcs8(alg, &pk_der).unwrap(); @@ -235,7 +235,7 @@ fn test_webpki_rsa_given() { ); } -#[cfg(all(feature = "pem", feature = "aws_lc_rs_unstable"))] +#[cfg(all(feature = "pem", feature = "aws_lc_rs"))] #[test] fn test_webpki_ml_dsa() { let (params, _) = util::default_params(); @@ -249,7 +249,7 @@ fn test_webpki_ml_dsa() { } } -#[cfg(feature = "aws_lc_rs_unstable")] +#[cfg(feature = "aws_lc_rs")] const ML_DSA_ALGS: &[( &rcgen::SignatureAlgorithm, &dyn SignatureVerificationAlgorithm, From 85fd8814a63b000eaafa8e7e8f9d8fa0feb0042c Mon Sep 17 00:00:00 2001 From: Dirkjan Ochtman Date: Tue, 11 Aug 2026 17:42:03 +0200 Subject: [PATCH 2/4] Upgrade to pem 4 --- Cargo.lock | 8 ++++---- Cargo.toml | 2 +- 2 files changed, 5 insertions(+), 5 deletions(-) diff --git a/Cargo.lock b/Cargo.lock index fffb777d..c4c6b1bf 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -124,9 +124,9 @@ dependencies = [ [[package]] name = "base64" -version = "0.22.1" +version = "0.23.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "72b3254f16251a8381aa12e40e3c4d2f0199f8c6508fbecb9d91f575e0fbb8c6" +checksum = "ac07cdecf99051d9a5238b80f35af32cdeba5b336e55d957b318b50137e18da5" [[package]] name = "bindgen" @@ -723,9 +723,9 @@ dependencies = [ [[package]] name = "pem" -version = "3.0.6" +version = "4.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1d30c53c26bc5b31a98cd02d20f25a7c8567146caf63ed593a9d87b2775291be" +checksum = "d354a98a3d1251555de99e8fdd8afda05573c31b82f59063a7b0a29b5527f120" dependencies = [ "base64", "serde_core", diff --git a/Cargo.toml b/Cargo.toml index e84a7e8c..f06a6cb5 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -18,7 +18,7 @@ aws-lc-rs = { version = "1.18", default-features = false } botan = { version = "0.12", features = ["vendored"] } bpaf = { version = "0.9.5", features = ["derive"] } openssl = "0.10" -pem = "3.0.2" +pem = "4" pki-types = { package = "rustls-pki-types", version = "1.4.1" } ring = "0.17" rustls-webpki = { version = "0.103.14", features = ["ring", "std"] } From 35510728f3a67de142c3c290195662fe61db5812 Mon Sep 17 00:00:00 2001 From: Dirkjan Ochtman Date: Tue, 11 Aug 2026 17:42:29 +0200 Subject: [PATCH 3/4] Upgrade to botan 0.13 --- Cargo.lock | 20 ++++++++++++++++++-- Cargo.toml | 2 +- 2 files changed, 19 insertions(+), 3 deletions(-) diff --git a/Cargo.lock b/Cargo.lock index c4c6b1bf..74d6e151 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -174,11 +174,12 @@ dependencies = [ [[package]] name = "botan" -version = "0.12.0" +version = "0.13.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f23e39f9dbdfec8b4b6ba8509c8202a573b5d52fe213349c385d86656c89d7b5" +checksum = "7b547ac0388aa9d3e6f5b9b1cbccf3cdfb1563bdee0c19f6bb872740bb66a14d" dependencies = [ "botan-sys", + "rand", ] [[package]] @@ -804,6 +805,21 @@ version = "5.3.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "69cdb34c158ceb288df11e18b4bd39de994f6657d83847bdffdbd7f346754b0f" +[[package]] +name = "rand" +version = "0.9.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b9ef1d0d795eb7d84685bca4f72f3649f064e6641543d3a8c415898726a57b41" +dependencies = [ + "rand_core", +] + +[[package]] +name = "rand_core" +version = "0.9.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "76afc826de14238e6e8c374ddcc1fa19e374fd8dd986b0d2af0d02377261d83c" + [[package]] name = "rcgen" version = "0.14.9" diff --git a/Cargo.toml b/Cargo.toml index f06a6cb5..715a6149 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -15,7 +15,7 @@ keywords = ["mkcert", "ca", "certificate"] anyhow = "1.0.75" assert_fs = "1.0.13" aws-lc-rs = { version = "1.18", default-features = false } -botan = { version = "0.12", features = ["vendored"] } +botan = { version = "0.13", features = ["vendored"] } bpaf = { version = "0.9.5", features = ["derive"] } openssl = "0.10" pem = "4" From 9df791025d3265a6c543546ff256cbbc2950b847 Mon Sep 17 00:00:00 2001 From: Dirkjan Ochtman Date: Tue, 11 Aug 2026 17:43:21 +0200 Subject: [PATCH 4/4] Bump version to 0.14.10 --- Cargo.lock | 2 +- rcgen/Cargo.toml | 4 ++-- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/Cargo.lock b/Cargo.lock index 74d6e151..2faca654 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -822,7 +822,7 @@ checksum = "76afc826de14238e6e8c374ddcc1fa19e374fd8dd986b0d2af0d02377261d83c" [[package]] name = "rcgen" -version = "0.14.9" +version = "0.14.10" dependencies = [ "aws-lc-rs", "openssl", diff --git a/rcgen/Cargo.toml b/rcgen/Cargo.toml index 2d8109d0..68ad52d7 100644 --- a/rcgen/Cargo.toml +++ b/rcgen/Cargo.toml @@ -1,6 +1,6 @@ [package] name = "rcgen" -version = "0.14.9" +version = "0.14.10" documentation = "https://docs.rs/rcgen" description.workspace = true repository.workspace = true @@ -13,7 +13,7 @@ keywords.workspace = true [features] default = ["crypto", "pem", "ring"] aws_lc_rs = ["crypto", "dep:aws-lc-rs", "aws-lc-rs/aws-lc-sys", "x509-parser?/verify-aws"] -aws_lc_rs_unstable = ["aws_lc_rs"] +aws_lc_rs_unstable = ["aws_lc_rs"] # For backwards compatibility only fips = ["crypto", "dep:aws-lc-rs", "aws-lc-rs/fips"] crypto = [] ring = ["crypto", "dep:ring", "x509-parser?/verify"]