Closed Aboudjem closed 3 months ago
Generated at commit: c654f5061ba8ac118b20169a31f048db9ef0d8ea, compared to commit: 9c2537deb0d2d8dd3f724186df2ab700193eaa26
Contract | Method | Avg (+/-) | % |
---|---|---|---|
Nexus | execute executeFromExecutor |
+176 β +982 β |
+0.36% +4.96% |
Generated at commit: 0734b81b3272441e3385c33b8af9663351de94cd
π¨ Report Summary
Severity Level Results Contracts Critical High Medium Low Note Total 0 1 0 6 24 31
For more details view the full report in OpenZeppelin Code Inspector
This comment was automatically generated by the GitHub Actions workflow.
Attention: Patch coverage is 0%
with 13 lines
in your changes missing coverage. Please review.
Project coverage is 71.68%. Comparing base (
9c2537d
) to head (0734b81
). Report is 46 commits behind head on remediations/cantina-spearbit.
Files | Patch % | Lines |
---|---|---|
contracts/base/ExecutionHelper.sol | 0.00% | 13 Missing :warning: |
ensuring calls to EOAs are not incorrectly marked as successful.
I notice in case of eoa you're just doing this
mstore(result, 0) // Set result length to 0 mstore(0x40, add(result, 0x20)) // Update free memory pointer
but the other code following can still be executed.
Can you bring auditers attention to this comment again please?
a. Assume all calls to EOA invalid / unsuccessfull b. sucessfull if it's just value transfer > 0 and calldata is 0x
Ensure it returns in such cases and does not go to other control paths.
Write appropriate tests for it
@Aboudjem
inclined to close this.
Updated _execute and _tryExecute functions to include an extcodesize check, ensuring calls to EOAs are not incorrectly marked as successful. This change aligns the behavior of low-level calls with Solidity's expectations