Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Misbehaviour handling implementation (#215)
* Add ClientState::check_misbehaviour_and_update_state() * Implement misbehaviour handler * impl Protobuf<Any> for Misbehaviour * Remove redundant definition of decode_header() * Implement ChainId::with_version() * Getters for Tm Misbehaviour * Add missing checks for conversion from RawMisbehaviour * Make TmClientState::with_frozen_height() infallible * Implement TmClientState::check_misbehaviour_and_update_state() * Cleanup inner functions * Cleanup errors * Clippy fix * Ctor for TmMisbehaviour * Use git dependencies for tendermint crates * Add VerifyCommitLightTrusting check * Add VerifyCommit check * Clippy fix * Patch tendermint deps for no-std-check * Convert Tendermint VerificationError * Add helpers `Header::as_{un}trusted_block_state()` * Reorder untrusted verification logic * Reorder trusted verification logic * Misbehavior -> misbehaviour * Check for matching chain-ids * cargo update ci/no-std-check * Fix build failure after merge with main * Update for API changes in tm PR * Delete ci/no-std-check/Cargo.lock * Add changelog entry * Cleanup (naming & comments) * Rename check_trusted_header() -> check_header_validator_set() * Rename check_misbehaviour_header() -> check_header_and_validator_set() * Rename MisbehaviourConsensusStateTimestampGteTrustingPeriod -> ConsensusStateTimestampGteTrustingPeriod * Rename verify_misbehaviour_header_commit() -> verify_header_commit_against_trusted() * Remove redundant client state expired check * Impl Protobuf conversions for mock Misbehaviour * Impl check_misbehaviour_and_update_state() for mock Misbehaviour * Remove cargo patches * Fixes after tendermint-rs bump * Fix typo * Add tests * MockClientState::with_frozen_height() * Provide MockContext helper to set client chain-id * Conversions from HostBlock -> TmLightBlock -> TmHeader * Fix tests * Clippy fix * Cleanup tests * Add comments for tests * Clippy fix * Rustfmt
- Loading branch information