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

Extend precompiled contract to execute subsequent EVM code call in context #106

Open
wants to merge 3 commits into
base: master
Choose a base branch
from

Conversation

sorpaas
Copy link
Member

@sorpaas sorpaas commented Mar 23, 2022

This extends precompiled contract to add a second kind. For this kind of precompiled contracts, it returns subsequent EVM codes (with inputs) that is executed within the same context as the precompile. This "subsequent EVM code" has the full ability as a normal EVM contract and can modify states it is allowed to modify (issue other calls, create contracts, or modify the storage of the precompile).

This allows us to support use cases such as #105 without exposing too much internal state, which, if messed up, can actually cause the EVM to panic (for example, accidentally make the call stack unbalanced).

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

1 participant