EVM/Node: validate chain id
What
Validates the chain id in node's transaction validation.
How
The chain ID is fetched for every transactions, and we check if it matches the one decoded. It could be improved by keeping a reference to the network's chain id, but I think we should "optimize" this at the end when everything works.
Manually testing the MR
The merge request is lacking a transaction with a missing chain id, I however did not find any way to produce such transactions with cast. Potentially we need to just hardcode a pre eip155 transaction.
Checklist
-
Document the interface of any function added or modified (see the coding guidelines) -
Document any change to the user interface, including configuration parameters (see node configuration) -
Provide automatic testing (see the testing guide). -
For new features and bug fixes, add an item in the appropriate changelog ( docs/protocols/alpha.rstfor the protocol and the environment,CHANGES.rstat the root of the repository for everything else). -
Select suitable reviewers using the Reviewersfield below. -
Select as Assigneethe next person who should take action on that MR