The migrateL2Beans
function in the BeanL2MigrationFacet
contract fails to migrate Beans from Ethereum to L2 because it lacks the ability to receive Ether through msg.value
, which is necessary to cover the gas fee for the sendMessage
function.
The migrateL2Beans
function does not include the payable
modifier, preventing it from receiving Ether needed for the gas fee in the sendMessage
function call.
The function cannot receive Ether because it lacks the payable
modifier, resulting in the inability to provide the necessary gas fee for the sendMessage
function call.
DoS - Due to the inability to cover the gas fee, the Beans migration process from Ethereum to L2 is not possible.
Manual Review
https://docs.optimism.io/stack/protocol/rollup/deposit-flow
Add a payable
modifier for the function and also a check to ensure the gas fees are being sent.
The contest is live. Earn rewards by submitting a finding.
This is your time to appeal against judgements on your submissions.
Appeals are being carefully reviewed by our judges.