As the title suggests, deposits will be bricked if the respective curve vault is shut down.
The interface ICurveCrvUSDVault
corresponds to the VaultV3
by Yearn. This interface has a isShutDown
function:
If the vault is shut down for any reason, the deposits into the curve vault will revert. If you look at the shutdown function in VaultV3
:
It sets the deposit limit to 0. Hence, the max_deposit
for a user in the vault will be 0. Therefore the _deposit function reverts if an amount greater than 0 is used to deposit.
But, whenever this condition is true in _rebalanceLiquidity
(called whenever a user calls deposit
function of LendingPool
):
The LendingPool
tries to deposit the excess amount into the curve vault. But, when the curve vault is shut down, the deposit calls will revert. Hence, the users won't be able to deposit and their calls will revert.
deposit
calls will be bricked. The protocol won't be able to receive deposits from the users.
Manual review
Before depositing into the curve vault, check whether the vault is shut down. If it's shut, then do not deposit it in the curve vault. The deposit can stay in the LendingPool
. This will prevent the deposits from being bricked.
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.