GatewayRouterMock::outboundTransfer is a payable function. And it is called in L1Sender::sendDepositToken function and ethers are send to it by calling that outboundTransfer
function. But they are never transferred to any recipient for that they are coming and their params just ignored. Also there is not way to withdraw ethers from this GatewayRouterMock contract so ethers will be stuck here forever.
contracts/mock/GatewayRouterMock.sol#L6-L18
contracts/L1Sender.sol#L114-L121
Ethers will be stuck in GatewayRouterMock contract. And will also be not sent to it's passed receiver.
Manual Review
Send the ethers to it's receiver for that they are coming. And also add a withdraw function controlled by owner in the contract GatewayRouterMock so he can withdraw stuck ethers.
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.