#[non_exhaustive]pub enum ConsensusVerifiabilityError {
InsufficientTrustedSigners,
MissingAuthCerts {
deficit: usize,
missing: HashSet<AuthCertKeyIds>,
},
}Expand description
Error which will prevent us from attempting to verify signatures on a consensus
This error occurs if we the consensus isn’t signed by the right people, or we are lacking authcerts.
Does not represent actual verification errors.
Those show up as VerifyFailed, typically ConsensusVerifyFailed::InvalidSignature.
Can be converted to a VerifyFailed,
giving InsufficientTrustedSigners.
Variants (Non-exhaustive)§
This enum is marked as non-exhaustive
Non-exhaustive enums could have additional variants added in future. Therefore, when matching against variants of non-exhaustive enums, an extra wildcard arm must be added to account for any future variants.
InsufficientTrustedSigners
Insufficient trusted signers
MissingAuthCerts
Insufficient trusted signers because we are missing authcerts
Fields
§
missing: HashSet<AuthCertKeyIds>All the authcerts that would be useful
Trait Implementations§
Source§impl Clone for ConsensusVerifiabilityError
impl Clone for ConsensusVerifiabilityError
Source§fn clone(&self) -> ConsensusVerifiabilityError
fn clone(&self) -> ConsensusVerifiabilityError
Returns a duplicate of the value. Read more
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source. Read moreSource§impl Debug for ConsensusVerifiabilityError
impl Debug for ConsensusVerifiabilityError
Source§impl Error for ConsensusVerifiabilityError
impl Error for ConsensusVerifiabilityError
1.30.0 · Source§fn source(&self) -> Option<&(dyn Error + 'static)>
fn source(&self) -> Option<&(dyn Error + 'static)>
Returns the lower-level source of this error, if any. Read more
1.0.0 · Source§fn description(&self) -> &str
fn description(&self) -> &str
👎Deprecated since 1.42.0:
use the Display impl or to_string()
Source§impl From<ConsensusVerifiabilityError> for VoteVerifyFailed
Available on crate feature incomplete only.
impl From<ConsensusVerifiabilityError> for VoteVerifyFailed
Available on crate feature
incomplete only.Source§fn from(cve: ConsensusVerifiabilityError) -> VoteVerifyFailed
fn from(cve: ConsensusVerifiabilityError) -> VoteVerifyFailed
Converts to this type from the input type.
Source§impl From<ConsensusVerifiabilityError> for ConsensusVerifyFailed
impl From<ConsensusVerifiabilityError> for ConsensusVerifyFailed
Source§fn from(source: ConsensusVerifiabilityError) -> Self
fn from(source: ConsensusVerifiabilityError) -> Self
Converts to this type from the input type.
Source§impl From<ConsensusVerifiabilityError> for VerifyFailed
impl From<ConsensusVerifiabilityError> for VerifyFailed
Source§fn from(cve: ConsensusVerifiabilityError) -> VerifyFailed
fn from(cve: ConsensusVerifiabilityError) -> VerifyFailed
Converts to this type from the input type.
Auto Trait Implementations§
impl Freeze for ConsensusVerifiabilityError
impl RefUnwindSafe for ConsensusVerifiabilityError
impl Send for ConsensusVerifiabilityError
impl Sync for ConsensusVerifiabilityError
impl Unpin for ConsensusVerifiabilityError
impl UnsafeUnpin for ConsensusVerifiabilityError
impl UnwindSafe for ConsensusVerifiabilityError
Blanket Implementations§
Source§impl<'a, T, E> AsTaggedExplicit<'a, E> for Twhere
T: 'a,
impl<'a, T, E> AsTaggedExplicit<'a, E> for Twhere
T: 'a,
Source§impl<'a, T, E> AsTaggedImplicit<'a, E> for Twhere
T: 'a,
impl<'a, T, E> AsTaggedImplicit<'a, E> for Twhere
T: 'a,
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
impl<ST, DT> CastableFrom<ST, Initialized, Initialized> for DT
impl<ST, DT> CastableFrom<ST, Uninit, Uninit> for DT
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Source§impl<T> Downcast for Twhere
T: Any,
impl<T> Downcast for Twhere
T: Any,
Source§fn into_any(self: Box<T>) -> Box<dyn Any>
fn into_any(self: Box<T>) -> Box<dyn Any>
Converts
Box<dyn Trait> (where Trait: Downcast) to Box<dyn Any>, which can then be
downcast into Box<dyn ConcreteType> where ConcreteType implements Trait.Source§fn into_any_rc(self: Rc<T>) -> Rc<dyn Any>
fn into_any_rc(self: Rc<T>) -> Rc<dyn Any>
Converts
Rc<Trait> (where Trait: Downcast) to Rc<Any>, which can then be further
downcast into Rc<ConcreteType> where ConcreteType implements Trait.Source§fn as_any(&self) -> &(dyn Any + 'static)
fn as_any(&self) -> &(dyn Any + 'static)
Converts
&Trait (where Trait: Downcast) to &Any. This is needed since Rust cannot
generate &Any’s vtable from &Trait’s.Source§fn as_any_mut(&mut self) -> &mut (dyn Any + 'static)
fn as_any_mut(&mut self) -> &mut (dyn Any + 'static)
Converts
&mut Trait (where Trait: Downcast) to &Any. This is needed since Rust cannot
generate &mut Any’s vtable from &mut Trait’s.Source§impl<T> DowncastSend for T
impl<T> DowncastSend for T
Source§impl<T> DowncastSync for T
impl<T> DowncastSync for T
Source§impl<E> ErrorReport for Ewhere
E: Error + 'static,
impl<E> ErrorReport for Ewhere
E: Error + 'static,
Source§fn report(&self) -> Report<ReportHelper<'_>>
fn report(&self) -> Report<ReportHelper<'_>>
Return an object that displays the error and its causes
Source§impl<T> Instrument for T
impl<T> Instrument for T
Source§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
Source§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self>
fn into_either(self, into_left: bool) -> Either<Self, Self>
Converts
self into a Left variant of Either<Self, Self>
if into_left is true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
Converts
self into a Left variant of Either<Self, Self>
if into_left(&self) returns true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read more