diff options
| author | Steven Fackler <[email protected]> | 2017-01-22 10:44:59 +0000 |
|---|---|---|
| committer | Steven Fackler <[email protected]> | 2017-01-22 10:44:59 +0000 |
| commit | 54900976bb76d3cef4a78df48a3645b0ac49bb46 (patch) | |
| tree | ef4194826e8a68984b6fd5353f03157541684cf3 /openssl/src/x509 | |
| parent | Fix test warnings (diff) | |
| download | rust-openssl-54900976bb76d3cef4a78df48a3645b0ac49bb46.tar.xz rust-openssl-54900976bb76d3cef4a78df48a3645b0ac49bb46.zip | |
Support EC_GROUP_set_asn1_flag
Closes #561
Diffstat (limited to 'openssl/src/x509')
| -rw-r--r-- | openssl/src/x509/tests.rs | 23 |
1 files changed, 23 insertions, 0 deletions
diff --git a/openssl/src/x509/tests.rs b/openssl/src/x509/tests.rs index f89b7267..01cbf2ec 100644 --- a/openssl/src/x509/tests.rs +++ b/openssl/src/x509/tests.rs @@ -1,8 +1,11 @@ use hex::{FromHex, ToHex}; +use ec::{NAMED_CURVE, EcGroup, EcKey}; use hash::MessageDigest; +use nid::X9_62_PRIME256V1; use pkey::PKey; use rsa::Rsa; +use ssl::{SslMethod, SslContextBuilder}; use x509::{X509, X509Generator}; use x509::extension::Extension::{KeyUsage, ExtKeyUsage, SubjectAltName, OtherNid, OtherStr}; use x509::extension::AltNameOption as SAN; @@ -197,3 +200,23 @@ fn issued() { ca.issued(&cert).unwrap(); cert.issued(&cert).err().unwrap(); } + +#[test] +fn ecdsa_cert() { + let mut group = EcGroup::from_curve_name(X9_62_PRIME256V1).unwrap(); + group.set_asn1_flag(NAMED_CURVE); + let key = EcKey::generate(&group).unwrap(); + let key = PKey::from_ec_key(key).unwrap(); + + let cert = X509Generator::new() + .set_valid_period(365) + .add_name("CN".to_owned(), "TestServer".to_owned()) + .set_sign_hash(MessageDigest::sha256()) + .sign(&key) + .unwrap(); + + let mut ctx = SslContextBuilder::new(SslMethod::tls()).unwrap(); + ctx.set_certificate(&cert).unwrap(); + ctx.set_private_key(&key).unwrap(); + ctx.check_private_key().unwrap(); +} |