Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Add 668 functions to solo machine #878

Closed
3 tasks
colin-axner opened this issue Feb 7, 2022 · 4 comments
Closed
3 tasks

Add 668 functions to solo machine #878

colin-axner opened this issue Feb 7, 2022 · 4 comments

Comments

@colin-axner
Copy link
Contributor

colin-axner commented Feb 7, 2022

Summary

In preparation for the additional functions to the client state interface, #668, add:

  • VerifyClientMsg
  • CheckForMisbehaviour
  • UpdateStateOnMisbehaviour
  • UpdateState

for solomachine

Recommended splits:

PR 1

Rename Misbehaviour to DuplicateSignatureHeader

Decision to maintain existing naming: See comment

PR 2

Rename checkHeader to VerifyClientMsg.

Add functionality to account for Misbehaviour. Essentially verifying signatures twice. Code between checkHeader and verifySignatureAndData can be deduplicated.

Add a switch

switch header.(type) {
case NormalHeader:
   // https://github.com/cosmos/ibc-go/blob/c378ff3b9e637dbae171d2c5129d966b468a2305/modules/light-clients/06-solomachine/types/update.go#L40-#L59)
    data := normal header update code
     checkSignature(data)
     
case Misbehaviour:
    // https://github.com/cosmos/ibc-go/blob/c378ff3b9e637dbae171d2c5129d966b468a2305/modules/light-clients/06-solomachine/types/misbehaviour_handle.go#L37-#L44
    checkSignature(sig1)
    checkSignature(sig2)
   
default:
    return error
}

PR 3

Rename update to UpdateState

PR 4

CheckForMisbehaviour returns true (it passed VerifyClientMsg check)

PR 5

UpdateStateOnMisbehaviour set client state in state to be frozen


For Admin Use

  • Not duplicate issue
  • Appropriate labels applied
  • Appropriate contributors tagged/assigned
@damiannolan
Copy link
Member

I'll pick up PR 1 here to make a start!

@damiannolan
Copy link
Member

I've got started with PR 2. @seantking I see you assigned but did you start any task? Happy to pair up on the work later today, let me know if you've started anything! :)

@colin-axner
Copy link
Contributor Author

closed by the linked pr's!

@colin-axner
Copy link
Contributor Author

great work @damiannolan

@crodriguezvega crodriguezvega added this to the 02-client refactor milestone Mar 30, 2022
CosmosCar pushed a commit to caelus-labs/ibc-go that referenced this issue Nov 6, 2023
Bumps [github.com/rs/cors](https://github.com/rs/cors) from 1.8.3 to
1.9.0.
<details>
<summary>Commits</summary>
<ul>
<li><a
href="https://github.com/rs/cors/commit/5c2b877d2a033557c474bf5f9ed03626bd774839"><code>5c2b877</code></a>
Fix Access-Control-Request-Headers parsing issue for AWS API Gateway (<a
href="https://redirect.github.com/rs/cors/issues/141">#141</a>)</li>
<li><a
href="https://github.com/rs/cors/commit/0c96d3850073b93c94338ed8ade7de3c8fafb1cf"><code>0c96d38</code></a>
Bump golang.org/x/crypto in /wrapper/gin (<a
href="https://redirect.github.com/rs/cors/issues/139">#139</a>)</li>
<li><a
href="https://github.com/rs/cors/commit/a38b2f6c05f7665fed30fb114124e4e43a966777"><code>a38b2f6</code></a>
Bump golang.org/x/crypto in /examples (<a
href="https://redirect.github.com/rs/cors/issues/140">#140</a>)</li>
<li><a
href="https://github.com/rs/cors/commit/417ad78c5c23da0a1aab2ae6ee9231f24c9e3d9e"><code>417ad78</code></a>
Bump golang.org/x/sys in /wrapper/gin (<a
href="https://redirect.github.com/rs/cors/issues/136">#136</a>)</li>
<li><a
href="https://github.com/rs/cors/commit/9e3290ea04842647379b3758f6255ca3a6b6d254"><code>9e3290e</code></a>
Bump golang.org/x/sys in /examples (<a
href="https://redirect.github.com/rs/cors/issues/137">#137</a>)</li>
<li>See full diff in <a
href="https://github.com/rs/cors/compare/v1.8.3...v1.9.0">compare
view</a></li>
</ul>
</details>
<br />


[![Dependabot compatibility
score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=github.com/rs/cors&package-manager=go_modules&previous-version=1.8.3&new-version=1.9.0)](https://docs.github.com/en/github/managing-security-vulnerabilities/about-dependabot-security-updates#about-compatibility-scores)

Dependabot will resolve any conflicts with this PR as long as you don't
alter it yourself. You can also trigger a rebase manually by commenting
`@dependabot rebase`.

[//]: # (dependabot-automerge-start)
[//]: # (dependabot-automerge-end)

---

<details>
<summary>Dependabot commands and options</summary>
<br />

You can trigger Dependabot actions by commenting on this PR:
- `@dependabot rebase` will rebase this PR
- `@dependabot recreate` will recreate this PR, overwriting any edits
that have been made to it
- `@dependabot merge` will merge this PR after your CI passes on it
- `@dependabot squash and merge` will squash and merge this PR after
your CI passes on it
- `@dependabot cancel merge` will cancel a previously requested merge
and block automerging
- `@dependabot reopen` will reopen this PR if it is closed
- `@dependabot close` will close this PR and stop Dependabot recreating
it. You can achieve the same result by closing it manually
- `@dependabot ignore this major version` will close this PR and stop
Dependabot creating any more for this major version (unless you reopen
the PR or upgrade to it yourself)
- `@dependabot ignore this minor version` will close this PR and stop
Dependabot creating any more for this minor version (unless you reopen
the PR or upgrade to it yourself)
- `@dependabot ignore this dependency` will close this PR and stop
Dependabot creating any more for this dependency (unless you reopen the
PR or upgrade to it yourself)


</details>

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
Status: Done 🥳
Development

No branches or pull requests

4 participants