aboutsummaryrefslogtreecommitdiff
path: root/openssl
diff options
context:
space:
mode:
authorSteven Fackler <[email protected]>2017-06-23 21:04:13 -0700
committerSteven Fackler <[email protected]>2017-06-23 21:04:13 -0700
commit575e682da3aa3e55bc415ad44f49417b8be2cecc (patch)
tree114765f2c71c000fb44d86e40ef88e7175669a48 /openssl
parentRelease v0.9.14 (diff)
downloadrust-openssl-575e682da3aa3e55bc415ad44f49417b8be2cecc.tar.xz
rust-openssl-575e682da3aa3e55bc415ad44f49417b8be2cecc.zip
Add PKey::private_key_from_der
Diffstat (limited to 'openssl')
-rw-r--r--openssl/src/pkey.rs7
-rw-r--r--openssl/test/key.derbin0 -> 1193 bytes
2 files changed, 7 insertions, 0 deletions
diff --git a/openssl/src/pkey.rs b/openssl/src/pkey.rs
index f8211b25..7bda47b5 100644
--- a/openssl/src/pkey.rs
+++ b/openssl/src/pkey.rs
@@ -141,6 +141,7 @@ impl PKey {
private_key_from_pem!(PKey, ffi::PEM_read_bio_PrivateKey);
public_key_from_pem!(PKey, ffi::PEM_read_bio_PUBKEY);
public_key_from_der!(PKey, ffi::d2i_PUBKEY);
+ private_key_from_der!(PKey, ffi::d2i_AutoPrivateKey);
/// Deserializes a DER-formatted PKCS#8 private key, using a callback to retrieve the password
/// if the key is encrpyted.
@@ -318,6 +319,12 @@ mod tests {
}
#[test]
+ fn test_private_key_from_der() {
+ let key = include_bytes!("../test/key.der");
+ PKey::private_key_from_der(key).unwrap();
+ }
+
+ #[test]
fn test_pem() {
let key = include_bytes!("../test/key.pem");
let key = PKey::private_key_from_pem(key).unwrap();
diff --git a/openssl/test/key.der b/openssl/test/key.der
new file mode 100644
index 00000000..6b6209fd
--- /dev/null
+++ b/openssl/test/key.der
Binary files differ