pub enum VerificationError<DomainHash> {
Show 26 variants
BadExecutionProof,
InvalidProof,
InitializeBlockOrApplyExtrinsicDecode(Error),
StorageRootDecode(Error),
HeaderDecode(Error),
InvalidExecutionTrace,
InvalidApplyExtrinsicTraceIndex,
InvalidLongerMismatchTraceIndex,
InvalidApplyExtrinsicCallData,
InvalidBundleDigest,
BundleNotFound,
UnexpectedTargetedBundleEntry {
bundle_index: u32,
fraud_proof_invalid_type_of_proof: InvalidBundleType,
targeted_entry_bundle: BundleValidity<DomainHash>,
},
FailedToDeriveBundleDigest,
TargetValidBundleNotFound,
FailedToCheckExtrinsicsInSingleContext,
BadMmrProof,
UnexpectedMmrProof,
StorageProof(VerificationError),
FailedToDeriveDomainInherentExtrinsic,
FailedToGetDomainStorageKey,
UnexpectedInvalidBundleProofData,
ExtrinsicNotFound,
FailedToGetDomainRuntimeCallResponse,
FailedToGetBundleWeight,
FailedToGetExtractXdmMmrProof,
FailedToDecodeXdmMmrProof,
}
Expand description
Error type of fraud proof verification on consensus node.
Variants§
BadExecutionProof
Failed to pass the execution proof check.
InvalidProof
The fraud proof prove nothing invalid
InitializeBlockOrApplyExtrinsicDecode(Error)
Failed to decode the return value of initialize_block
and apply_extrinsic
.
StorageRootDecode(Error)
Failed to decode the storage root produced by verifying initialize_block
or apply_extrinsic
.
HeaderDecode(Error)
Failed to decode the header produced by finalize_block
.
InvalidExecutionTrace
InvalidApplyExtrinsicTraceIndex
InvalidLongerMismatchTraceIndex
InvalidApplyExtrinsicCallData
InvalidBundleDigest
Invalid bundle digest
BundleNotFound
Bundle with requested index not found in execution receipt
UnexpectedTargetedBundleEntry
Invalid bundle entry in bad receipt was expected to be valid but instead found invalid entry
Fields
fraud_proof_invalid_type_of_proof: InvalidBundleType
targeted_entry_bundle: BundleValidity<DomainHash>
FailedToDeriveBundleDigest
Failed to derive bundle digest
TargetValidBundleNotFound
The target valid bundle not found from the target bad receipt
FailedToCheckExtrinsicsInSingleContext
Failed to check extrinsics in single context
BadMmrProof
UnexpectedMmrProof
StorageProof(VerificationError)
FailedToDeriveDomainInherentExtrinsic
Failed to derive domain inherent extrinsic
FailedToGetDomainStorageKey
Failed to derive domain storage key
UnexpectedInvalidBundleProofData
Unexpected invalid bundle proof data
ExtrinsicNotFound
Extrinsic with requested index not found in bundle
FailedToGetDomainRuntimeCallResponse
Failed to get domain runtime call response
FailedToGetBundleWeight
Failed to get bundle weight
FailedToGetExtractXdmMmrProof
FailedToDecodeXdmMmrProof
Trait Implementations§
source§impl<DomainHash: Debug> Debug for VerificationError<DomainHash>
impl<DomainHash: Debug> Debug for VerificationError<DomainHash>
source§impl<DomainHash> Display for VerificationError<DomainHash>where
BundleValidity<DomainHash>: Debug,
impl<DomainHash> Display for VerificationError<DomainHash>where
BundleValidity<DomainHash>: Debug,
source§impl<DomainHash> Error for VerificationError<DomainHash>
impl<DomainHash> Error for VerificationError<DomainHash>
1.30.0 · source§fn source(&self) -> Option<&(dyn Error + 'static)>
fn source(&self) -> Option<&(dyn Error + 'static)>
1.0.0 · source§fn description(&self) -> &str
fn description(&self) -> &str
source§impl<DomainHash> From<VerificationError> for VerificationError<DomainHash>
impl<DomainHash> From<VerificationError> for VerificationError<DomainHash>
source§fn from(err: VerificationError) -> Self
fn from(err: VerificationError) -> Self
Auto Trait Implementations§
impl<DomainHash> Freeze for VerificationError<DomainHash>where
DomainHash: Freeze,
impl<DomainHash> RefUnwindSafe for VerificationError<DomainHash>where
DomainHash: RefUnwindSafe,
impl<DomainHash> Send for VerificationError<DomainHash>where
DomainHash: Send,
impl<DomainHash> Sync for VerificationError<DomainHash>where
DomainHash: Sync,
impl<DomainHash> Unpin for VerificationError<DomainHash>where
DomainHash: Unpin,
impl<DomainHash> UnwindSafe for VerificationError<DomainHash>where
DomainHash: UnwindSafe,
Blanket Implementations§
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
§impl<T> CheckedConversion for T
impl<T> CheckedConversion for T
§fn checked_from<T>(t: T) -> Option<Self>where
Self: TryFrom<T>,
fn checked_from<T>(t: T) -> Option<Self>where
Self: TryFrom<T>,
§fn checked_into<T>(self) -> Option<T>where
Self: TryInto<T>,
fn checked_into<T>(self) -> Option<T>where
Self: TryInto<T>,
§impl<T> Instrument for T
impl<T> Instrument for T
§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
§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>
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>
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§impl<T> IsType<T> for T
impl<T> IsType<T> for T
§impl<T, Outer> IsWrappedBy<Outer> for T
impl<T, Outer> IsWrappedBy<Outer> for T
§impl<T> Pointable for T
impl<T> Pointable for T
§impl<T> SaturatedConversion for T
impl<T> SaturatedConversion for T
§fn saturated_from<T>(t: T) -> Selfwhere
Self: UniqueSaturatedFrom<T>,
fn saturated_from<T>(t: T) -> Selfwhere
Self: UniqueSaturatedFrom<T>,
§fn saturated_into<T>(self) -> Twhere
Self: UniqueSaturatedInto<T>,
fn saturated_into<T>(self) -> Twhere
Self: UniqueSaturatedInto<T>,
T
. Read more§impl<T, U> TryIntoKey<U> for Twhere
U: TryFromKey<T>,
impl<T, U> TryIntoKey<U> for Twhere
U: TryFromKey<T>,
type Error = <U as TryFromKey<T>>::Error
fn try_into_key(self) -> Result<U, <U as TryFromKey<T>>::Error>
§impl<S, T> UncheckedInto<T> for Swhere
T: UncheckedFrom<S>,
impl<S, T> UncheckedInto<T> for Swhere
T: UncheckedFrom<S>,
§fn unchecked_into(self) -> T
fn unchecked_into(self) -> T
unchecked_from
.§impl<T, S> UniqueSaturatedInto<T> for S
impl<T, S> UniqueSaturatedInto<T> for S
§fn unique_saturated_into(self) -> T
fn unique_saturated_into(self) -> T
T
.