pub enum ChainError {
MissingBootstrap,
VersionSkip {
expected: u32,
got: u32,
},
PubkeyDiscontinuity {
at_version: u32,
},
DuplicateVersion(u32),
BadSignature {
at_version: u32,
detail: String,
},
EmergencyDisallowed {
at_version: u32,
},
}Expand description
Errors from verify_chain.
Variants§
MissingBootstrap
Chain is empty or first entry is not a bootstrap.
VersionSkip
Chain skipped a key_version (e.g. went 1 -> 3).
PubkeyDiscontinuity
a[i].old_pubkey does not match a[i-1].new_pubkey.
DuplicateVersion(u32)
Same new_key_version appears twice in the chain.
BadSignature
Bad Ed25519 signature on a non-bootstrap, non-emergency entry.
EmergencyDisallowed
Emergency entry encountered with allow_emergency = false.
Trait Implementations§
Source§impl Debug for ChainError
impl Debug for ChainError
Source§impl Display for ChainError
impl Display for ChainError
Source§impl Error for ChainError
impl Error for ChainError
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()
Auto Trait Implementations§
impl Freeze for ChainError
impl RefUnwindSafe for ChainError
impl Send for ChainError
impl Sync for ChainError
impl Unpin for ChainError
impl UnsafeUnpin for ChainError
impl UnwindSafe for ChainError
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
Mutably borrows from an owned value. Read more