diff options
| author | Steven Fackler <[email protected]> | 2016-02-02 23:14:55 +0000 |
|---|---|---|
| committer | Steven Fackler <[email protected]> | 2016-02-02 23:14:55 +0000 |
| commit | 1de28d0b19c422ed42396fa1e27e483a1ebd70a7 (patch) | |
| tree | 898022769f1a1806a97f2c9d0c5baaa38709423c /openssl/src | |
| parent | Merge pull request #348 from Hywan/patch-1 (diff) | |
| parent | Rename Nid uid/UID to prevent breakage (diff) | |
| download | rust-openssl-1de28d0b19c422ed42396fa1e27e483a1ebd70a7.tar.xz rust-openssl-1de28d0b19c422ed42396fa1e27e483a1ebd70a7.zip | |
Merge pull request #349 from jwilm/fix-UID-nid-value
Fix Nid::UID value
Diffstat (limited to 'openssl/src')
| -rw-r--r-- | openssl/src/nid.rs | 3 | ||||
| -rw-r--r-- | openssl/src/x509/tests.rs | 17 |
2 files changed, 20 insertions, 0 deletions
diff --git a/openssl/src/nid.rs b/openssl/src/nid.rs index e04b004a..bfcae15a 100644 --- a/openssl/src/nid.rs +++ b/openssl/src/nid.rs @@ -104,6 +104,7 @@ pub enum Nid { G, S, I, + /// uniqueIdentifier UID, CrlDistributionPoints, RSA_NP_MD5, @@ -170,4 +171,6 @@ pub enum Nid { ID_QT_UNOTICE, RC2_64_CBC, SMIMECaps, + /// Shown as UID in cert subject + UserId = 458 } diff --git a/openssl/src/x509/tests.rs b/openssl/src/x509/tests.rs index 35690e05..69ad37f8 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::UserId) { + Some(x) => x, + None => panic!("Failed to read UID from cert"), + }; + assert_eq!(&cn as &str, "this is the userId"); +} |