Function: finalizeMantleWithdrawal(address _from, address _to, uint256 _amount, byte[] _data)
Finalizes withdrawal of Mantle tokens from L2 to L1.
Inputs
_fromControl: User.
Constraints: Discarded.
Impact: The address from which withdrawal is conducted.
_toControl: User.
Constraints: Discarded.
Impact: The address to which withdrawal is conducted.
_amountControl: User.
Constraints: Discarded.
Impact: The amount of tokens to be withdrawn.
_dataControl: User.
Constraints: Discarded.
Impact: Data associated with the transaction.
Branches and code coverage (including function calls)
Intended branches
Successfully finalizes withdrawal if all conditions are met.
Function call analysis
finalizeMantleWithdrawal -> finalizeERC20Withdrawal(l1MantleAddress, Lib_PredeployAddresses.BVM_MANTLE, _from, _to, _amount, _data)What is controllable?
_from_,_to,_amount, and_data.If return value controllable, how is it used and how can it go wrong? Discarded.
What happens if it reverts, reenters, or does other unusual control flow? Discarded.