summaryrefslogtreecommitdiffstats
path: root/store
diff options
context:
space:
mode:
authorJustus Winter <justus@sequoia-pgp.org>2018-02-06 14:50:29 +0100
committerJustus Winter <justus@sequoia-pgp.org>2018-02-06 14:50:29 +0100
commit19ced59f410b5b826e077cccd5a319268d6c7e8b (patch)
tree66a05beabab202cf0ead1b3726c4f3109868f0db /store
parent2673b5eeb0ef7daaf934d5be80ffc6e2dd815318 (diff)
store: Add error condition for malformed fingerprints.
Diffstat (limited to 'store')
-rw-r--r--store/src/backend/mod.rs1
-rw-r--r--store/src/lib.rs5
-rw-r--r--store/src/store_protocol.capnp1
3 files changed, 7 insertions, 0 deletions
diff --git a/store/src/backend/mod.rs b/store/src/backend/mod.rs
index d4f8ca3f..3d296115 100644
--- a/store/src/backend/mod.rs
+++ b/store/src/backend/mod.rs
@@ -1031,6 +1031,7 @@ impl fmt::Debug for node::Error {
&node::Error::Conflict => "Conflict",
&node::Error::SystemError => "SystemError",
&node::Error::MalformedKey => "MalformedKey",
+ &node::Error::MalformedFingerprint => "MalformedFingerprint",
&node::Error::NetworkPolicyViolationOffline =>
"NetworkPolicyViolation(Offline)",
&node::Error::NetworkPolicyViolationAnonymized =>
diff --git a/store/src/lib.rs b/store/src/lib.rs
index 8097e0f6..41d4b8a2 100644
--- a/store/src/lib.rs
+++ b/store/src/lib.rs
@@ -936,6 +936,8 @@ impl From<node::Error> for failure::Error {
node::Error::Conflict => Error::Conflict.into(),
node::Error::SystemError => Error::StoreError.into(),
node::Error::MalformedKey => Error::MalformedKey.into(),
+ node::Error::MalformedFingerprint =>
+ Error::MalformedFingerprint.into(),
node::Error::NetworkPolicyViolationOffline =>
core::Error::NetworkPolicyViolation(core::NetworkPolicy::Offline).into(),
node::Error::NetworkPolicyViolationAnonymized =>
@@ -967,6 +969,9 @@ pub enum Error {
/// A TPK is malformed.
#[fail(display = "Malformed key")]
MalformedKey,
+ /// A fingerprint is malformed.
+ #[fail(display = "Malformed fingerprint")]
+ MalformedFingerprint,
/// A `capnp::Error` occurred.
#[fail(display = "Internal RPC error")]
RpcError(capnp::Error),
diff --git a/store/src/store_protocol.capnp b/store/src/store_protocol.capnp
index a2a749dc..ea753712 100644
--- a/store/src/store_protocol.capnp
+++ b/store/src/store_protocol.capnp
@@ -115,6 +115,7 @@ interface Node {
networkPolicyViolationAnonymized @6;
networkPolicyViolationEncrypted @7;
networkPolicyViolationInsecure @8;
+ malformedFingerprint @9;
}
struct Result(T) {