Fix validate_eof
flag for EOF creation txs
#960
Merged
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Depends on ethereum/evmc#713, needs to set the submodule to a
master
revision of evmc before mergingBefore, running
evmc run
with validate_eof would not recognize creation txs (which have to be validated as initcode) and regular calls to a deployed contract (which have to be validated as runtime) correctly. This fixes that.Validation is only done on the top-level frame (
msg->depth == 0
), to avoid re-doing it on every deeper frame (all subcontainers are validated recursively anyway, so all code supplied will be validated).Initcode/runtime code kind is decided by the
msg->kind
, which handling is in turn fixed in theevmc run
in ethereum/evmc#713