summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorJustus Winter <justus@sequoia-pgp.org>2021-10-06 14:31:57 +0200
committerJustus Winter <justus@sequoia-pgp.org>2022-01-06 18:50:13 +0100
commit93588a650a1b77c7277502de861424bfdaafed33 (patch)
tree3b2c98c0bda1dd1074bbc15eba3def4f6fa6cf44
parent1ac7921b4aeb1278871ae64a1d37b456b2c48c5a (diff)
openpgp: Generalize test to all curves.
-rw-r--r--openpgp/src/packet/signature.rs29
1 files changed, 20 insertions, 9 deletions
diff --git a/openpgp/src/packet/signature.rs b/openpgp/src/packet/signature.rs
index 0b8cde02..b5adf702 100644
--- a/openpgp/src/packet/signature.rs
+++ b/openpgp/src/packet/signature.rs
@@ -3367,17 +3367,28 @@ mod test {
#[test]
fn sign_message() {
- use crate::types::Curve;
+ use crate::types::Curve::*;
- let key: Key<key::SecretParts, key::PrimaryRole>
- = Key4::generate_ecc(true, Curve::Ed25519)
- .unwrap().into();
- let msg = b"Hello, World";
- let mut pair = key.into_keypair().unwrap();
- let mut sig = SignatureBuilder::new(SignatureType::Binary)
- .sign_message(&mut pair, msg).unwrap();
+ for curve in vec![
+ Ed25519,
+ NistP256,
+ NistP384,
+ NistP521,
+ ] {
+ if ! curve.is_supported() {
+ eprintln!("Skipping unsupported {:?}", curve);
+ continue;
+ }
- sig.verify_message(pair.public(), msg).unwrap();
+ let key: Key<key::SecretParts, key::PrimaryRole>
+ = Key4::generate_ecc(true, curve).unwrap().into();
+ let msg = b"Hello, World";
+ let mut pair = key.into_keypair().unwrap();
+ let mut sig = SignatureBuilder::new(SignatureType::Binary)
+ .sign_message(&mut pair, msg).unwrap();
+
+ sig.verify_message(pair.public(), msg).unwrap();
+ }
}
#[test]