Skip to content

Commit

Permalink
Fix OID for ExtendedKeyUsagePurpose::Any (#131)
Browse files Browse the repository at this point in the history
  • Loading branch information
jgallagher committed Jun 29, 2023
1 parent 3a8535a commit dde0e47
Showing 1 changed file with 23 additions and 1 deletion.
24 changes: 23 additions & 1 deletion src/lib.rs
Original file line number Diff line number Diff line change
Expand Up @@ -1428,7 +1428,7 @@ impl ExtendedKeyUsagePurpose {
use ExtendedKeyUsagePurpose::*;
match self {
// anyExtendedKeyUsage
Any => &[2, 5, 29, 37],
Any => &[2, 5, 29, 37, 0],
// id-kp-*
ServerAuth => &[1, 3, 6, 1, 5, 5, 7, 3, 1],
ClientAuth => &[1, 3, 6, 1, 5, 5, 7, 3, 2],
Expand Down Expand Up @@ -2832,6 +2832,28 @@ mod tests {
assert!(found);
}

#[test]
fn test_with_extended_key_usages_any() {
let mut params: CertificateParams = Default::default();

// Set extended_key_usages
params.extended_key_usages = vec![ExtendedKeyUsagePurpose::Any];

// Make the cert
let cert = Certificate::from_params(params).unwrap();

// Serialize it
let der = cert.serialize_der().unwrap();

// Parse it
let (_rem, cert) = x509_parser::parse_x509_certificate(&der).unwrap();

// Ensure we found it.
let maybe_extension = cert.extended_key_usage().unwrap();
let extension = maybe_extension.unwrap();
assert!(extension.value.any);
}

#[test]
fn signature_algos_different() {
// TODO unify this with test_key_params_mismatch.
Expand Down

0 comments on commit dde0e47

Please sign in to comment.