aboutsummaryrefslogtreecommitdiff
path: root/openssl/src
diff options
context:
space:
mode:
authorJonas Schievink <[email protected]>2016-06-22 22:27:53 +0200
committerJonas Schievink <[email protected]>2016-06-26 18:25:54 +0200
commitd176ea1c6e7aaa4e96d27eb0c62dc11fdb990aca (patch)
treed10e53cb62ac2fbe2cf00fa5d85b584392de53b7 /openssl/src
parentPut password callbacks behind a cargo feature (diff)
downloadrust-openssl-d176ea1c6e7aaa4e96d27eb0c62dc11fdb990aca.tar.xz
rust-openssl-d176ea1c6e7aaa4e96d27eb0c62dc11fdb990aca.zip
Add an RSA key decryption test
Diffstat (limited to 'openssl/src')
-rw-r--r--openssl/src/crypto/rsa.rs18
1 files changed, 18 insertions, 0 deletions
diff --git a/openssl/src/crypto/rsa.rs b/openssl/src/crypto/rsa.rs
index a67fe38e..d0303283 100644
--- a/openssl/src/crypto/rsa.rs
+++ b/openssl/src/crypto/rsa.rs
@@ -303,4 +303,22 @@ mod test {
assert!(result);
}
+
+ #[test]
+ pub fn test_password() {
+ let mut password_queried = false;
+ let mut buffer = File::open("test/rsa-encrypted.pem").unwrap();
+ let rsa = RSA::private_key_from_pem_cb(&mut buffer, |password| {
+ password_queried = true;
+ password[0] = b'm' as _;
+ password[1] = b'y' as _;
+ password[2] = b'p' as _;
+ password[3] = b'a' as _;
+ password[4] = b's' as _;
+ password[5] = b's' as _;
+ 6
+ }).unwrap();
+
+ assert!(password_queried);
+ }
}