HardhatFoundry
30,000 USDC
View results
Submission Details
Severity: medium
Invalid

No way to execute static calls

GitHub
https://github.com/Cyfrin/2024-07-biconomy/blob/9590f25cd63f7ad2c54feb618036984774f3879d/contracts/Nexus.sol#L272-L279
https://github.com/Cyfrin/2024-07-biconomy/blob/9590f25cd63f7ad2c54feb618036984774f3879d/contracts/Nexus.sol#L119-L152

Summary

In the docs, it is mentioned that there is a call type called Static, which executes a static call. However, in the code, it is not implemented. Additionally, the docs state that "Execution Modes (ExecutionMode) combine call types and execution types with additional context to determine how transactions are handled." This implies that static calls should be included. However, the supportsExecutionMode function does not check for static calls, and neither the execute nor executeFromExecutor functions handle static calls.

Impact

There is currently no way to execute static calls, which leads to inconsistency between the documentation & the actual functionality of the contract.

Recommendation

Consider adding support for static calls in the execute, executeFromExecutor, and supportsExecutionMode functions. If static calls are not intended to be supported, remove references to static calls from the docs to avoid confusion.

Updates

Lead Judging Commences

0xnevi Lead Judge
12 months ago
0xnevi Lead Judge 12 months ago
Submission Judgement Published
Invalidated
Reason: Incorrect statement

Support

FAQs

Can't find an answer? Chat with us on Discord, Twitter or Linkedin.