-
Notifications
You must be signed in to change notification settings - Fork 82
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
Fix(engine): update to latest SputnikVM #316
Conversation
impl StackExecutorParams { | ||
fn new(gas_limit: u64) -> Self { | ||
Self { | ||
precompiles: Precompiles::new_istanbul(), |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
We'll need to update this to Berlin (and eventually London), but in the spirit of a minimal fix to the security advisory I chose to not do that update in this PR.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
We do have Berlin activated now. There is no way right now to do Berlin?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Ah I see as per comment out code in another section.
fn make_executor<'a>( | ||
&'a self, | ||
engine: &'a Engine, | ||
) -> executor::StackExecutor<'static, 'a, executor::MemoryStackState<Engine>> { |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Factoring this out from the Engine
struct was needed now that executor::StackExecutor
takes a reference to the precompiles map instead of the map itself. The explicit lifetimes are needed for it to compile.
f99176e
to
128ccd2
Compare
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Looks good
* Feat(engine): Public method for computing block hash at given height (#303) * Fix(precompiles): Always charge for gas in ecrecover (#305) * Fix(precompiles): Pad modexp input if it is too short (#306) * Feat(engine): Include address field in returned EVM logs (#299) * Fix(engine): Remove unnecessary eth-connector logic (#312) * Feat(benchmarks): update gas bounds after wasm cost reduction (#315) * Fix(engine): update to latest SputnikVM (#316) * Add logging of public of the signer (#319) Co-authored-by: Dmitry Strokov <[email protected]> Co-authored-by: Joshua J. Bouw <[email protected]>
We must update to the latest version of SputnikVM due to the recent security advisory.
Note: no changes to
Cargo.toml
were needed because we use a git dependency on our own fork of the SputnikVM repo. I only needed to update the lock file viacargo update -p evm
and then make some small code changes due to upstream API changes.