Project

One World
NFTDeFi
15,000 USDC
View results
Submission Details
Severity: medium
Invalid

executeMetaTransaction calls `address(this)` which does not have any function

Summary

In NativeMetaTransaction.sol, function executeMetaTransaction() calls address(this), which is itself. The contract does not have any important function with the address parameter, other than getNonce().

// Append userAddress and relayer address at the end to extract it from calling context
> (bool success, bytes memory returnData) = address(this).call{value: msg.value}(
abi.encodePacked(functionSignature, userAddress)
);

getNonce() is the only function that the relayer can help the user call, which is not useful.

function getNonce(address user) public view returns (uint256 nonce) {
nonce = nonces[user];
}

Impact

The low level call does not call anything useful.

Tools Used

Manual Review

Recommendations

Not sure about the intention, the relayer is supposed to call a contract that has an important function on behalf of the user.

Updates

Lead Judging Commences

0xbrivan2 Lead Judge 7 months ago
Submission Judgement Published
Invalidated
Reason: Incorrect statement

Support

FAQs

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