[][src]Enum exonum::blockchain::ProofError

#[non_exhaustive]pub enum ProofError {
    NoQuorum,
    NoEpoch,
    IncorrectEpoch,
    IncorrectBlockHash,
    IncorrectValidatorId,
    ValidatorKeyMismatch,
    DoubleEndorsement,
    NoEntry,
    AmbiguousEntry,
    IncorrectEntryProof(ValidationError<MapProofError>),
    MalformedStatus,
}

Errors that can occur during verification of BlockProofs, IndexProofs and CallProofs.

Variants (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.
NoQuorum

The block is authorized by an insufficient number of precommits.

NoEpoch

Block header does not include additional header for the consensus epoch.

IncorrectEpoch

Block epoch mentioned in at least one of precommits differs from the height mentioned in the block header.

IncorrectBlockHash

Hash of the block in at least one precommit differs from that of the real block.

IncorrectValidatorId

Validator ID mentioned in at least one precommit is incorrect.

ValidatorKeyMismatch

Key of a validator differs from the expected.

DoubleEndorsement

The same validator has authorized several precommits.

NoEntry

The proof does not actually prove existence of any index.

AmbiguousEntry

The proof purports to prove existence of more than one index.

IncorrectEntryProof(ValidationError<MapProofError>)

Entry proof is incorrect.

MalformedStatus

Call status embedded in the proof is malformed; it could not be generated by a properly functioning Exonum node.

Trait Implementations

impl Debug for ProofError[src]

impl Display for ProofError[src]

impl Error for ProofError[src]

Auto Trait Implementations

Blanket Implementations

impl<T> Any for T where
    T: 'static + ?Sized
[src]

impl<T> Borrow<T> for T where
    T: ?Sized
[src]

impl<T> BorrowMut<T> for T where
    T: ?Sized
[src]

impl<T> From<T> for T[src]

impl<T, U> Into<U> for T where
    U: From<T>, 
[src]

impl<T> ToString for T where
    T: Display + ?Sized
[src]

impl<T, U> TryFrom<U> for T where
    U: Into<T>, 
[src]

type Error = Infallible

The type returned in the event of a conversion error.

impl<T, U> TryInto<U> for T where
    U: TryFrom<T>, 
[src]

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.

impl<V, T> VZip<V> for T where
    V: MultiLane<T>,