From 4940ca7e9292ab04f473ebb017272a50b0d79fbc Mon Sep 17 00:00:00 2001 From: Joe Wilm Date: Tue, 2 Feb 2016 09:25:52 -0800 Subject: Fix Nid::UID value Nid::UID (userId) previously held the value of Nid::uid (uniqueIdentifier). --- openssl/src/nid.rs | 3 ++- openssl/src/x509/tests.rs | 17 +++++++++++++++++ 2 files changed, 19 insertions(+), 1 deletion(-) (limited to 'openssl/src') diff --git a/openssl/src/nid.rs b/openssl/src/nid.rs index e04b004a..f835d9e6 100644 --- a/openssl/src/nid.rs +++ b/openssl/src/nid.rs @@ -104,7 +104,7 @@ pub enum Nid { G, S, I, - UID, + uid, // uniqueIdentifier CrlDistributionPoints, RSA_NP_MD5, SN, @@ -170,4 +170,5 @@ pub enum Nid { ID_QT_UNOTICE, RC2_64_CBC, SMIMECaps, + UID = 458 // userId } diff --git a/openssl/src/x509/tests.rs b/openssl/src/x509/tests.rs index 35690e05..dbca8b98 100644 --- a/openssl/src/x509/tests.rs +++ b/openssl/src/x509/tests.rs @@ -140,3 +140,20 @@ fn test_nid_values() { }; assert_eq!(&friendly as &str, "Example"); } + +#[test] +fn test_nid_uid_value() { + let cert_path = Path::new("test/nid_uid_test_cert.pem"); + let mut file = File::open(&cert_path) + .ok() + .expect("Failed to open `test/nid_uid_test_cert.pem`"); + + let cert = X509::from_pem(&mut file).ok().expect("Failed to load PEM"); + let subject = cert.subject_name(); + + let cn = match subject.text_by_nid(Nid::UID) { + Some(x) => x, + None => panic!("Failed to read UID from cert"), + }; + assert_eq!(&cn as &str, "this is the userId"); +} -- cgit v1.2.3