summaryrefslogtreecommitdiffstats
path: root/openpgp/src/crypto/asymmetric.rs
diff options
context:
space:
mode:
authorJustus Winter <justus@sequoia-pgp.org>2020-03-05 17:07:45 +0100
committerJustus Winter <justus@sequoia-pgp.org>2020-03-09 11:52:38 +0100
commitf484efee5bf61f7ce90d5383ba2f589fe03ae518 (patch)
treead315500d9694885b0bf31813e0dd972613e4eca /openpgp/src/crypto/asymmetric.rs
parent7546d5bdee68f3484211808e8e66002b56d29ac7 (diff)
openpgp: Decouple our error type from nettle's.
Diffstat (limited to 'openpgp/src/crypto/asymmetric.rs')
-rw-r--r--openpgp/src/crypto/asymmetric.rs14
1 files changed, 7 insertions, 7 deletions
diff --git a/openpgp/src/crypto/asymmetric.rs b/openpgp/src/crypto/asymmetric.rs
index b8c6ecd9..aedf1ab8 100644
--- a/openpgp/src/crypto/asymmetric.rs
+++ b/openpgp/src/crypto/asymmetric.rs
@@ -333,14 +333,14 @@ impl<P: key::KeyParts, R: key::KeyRole> Key<P, R> {
// [Section 5.2.2 and 5.2.3 of RFC 4880]:
// https://tools.ietf.org/html/rfc4880#section-5.2.2
rsa::verify_digest_pkcs1(&key, digest, sig.hash_algo().oid()?,
- s.value())
+ s.value())?
},
(DSA, PublicKey::DSA{ y, p, q, g }, Signature::DSA { s, r }) => {
let key = dsa::PublicKey::new(y.value());
let params = dsa::Params::new(p.value(), q.value(), g.value());
let signature = dsa::Signature::new(r.value(), s.value());
- Ok(dsa::verify(&params, &key, digest, &signature))
+ dsa::verify(&params, &key, digest, &signature)
},
(EdDSA, PublicKey::EdDSA{ curve, q }, Signature::EdDSA { r, s }) =>
match curve {
@@ -380,9 +380,9 @@ impl<P: key::KeyParts, R: key::KeyRole> Key<P, R> {
signature.len(), r.value(), s.value())).into());
}
- ed25519::verify(&q.value()[1..], digest, &signature)
+ ed25519::verify(&q.value()[1..], digest, &signature)?
},
- _ =>
+ _ => return
Err(Error::UnsupportedEllipticCurve(curve.clone()).into()),
},
(ECDSA, PublicKey::ECDSA{ curve, q }, Signature::ECDSA { s, r }) =>
@@ -397,13 +397,13 @@ impl<P: key::KeyParts, R: key::KeyRole> Key<P, R> {
};
let signature = dsa::Signature::new(r.value(), s.value());
- Ok(ecdsa::verify(&key, digest, &signature))
+ ecdsa::verify(&key, digest, &signature)
},
- _ => Err(Error::MalformedPacket(format!(
+ _ => return Err(Error::MalformedPacket(format!(
"unsupported combination of algorithm {}, key {} and \
signature {:?}.",
sig.pk_algo(), self.pk_algo(), sig.mpis())).into()),
- }?;
+ };
if ok {
Ok(())