State incosistency due to not updating escrow
variable after releasing tokens
Tokens native to the chain will be added or locked in the escrow. L2 native tokens when bridged are locked in the escrow. The escrow variable is then updated accordingly.
When the tokens are bridged back to native chain, the tokens are released from escrow and transfered to the user.
But in withdraw_auto_from_l1
after the tokens are transfered the escrow
variable is not being unset. This would result in a state inconsistancy that even if the tokens are released, escrow state still has the tokens
State incosistency could lead to severe issues this escrow variable is used in next versions of implementation. For example implementing ERC1155 standard.
Manual review
Unset escrow
variable
Impact: Incorrect state without any other impact, which deserves a Low according to CodeHawks documentation.
Impact: Incorrect state without any other impact, which deserves a Low according to CodeHawks documentation.
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.