WithdrawalPool::performUpkeep
is supposed to be called by Chainlink as an automation, but anyone can call the function if the conditions are met, providing an incorrect value for the parameter _performData
, forcing the withdraw
function to execute with less vaults than intended, resulting in less rewards being withdrawn.
As long as the vault passed in parameter is the last vault use, withdraw will execute, and performUpkeep
will go on a cooldown for minTimeBetweenWithdrawals
amount of time.
Less funds withdrawn for stakers, or even no funds if the vault is empty.
Manual review.
Compute automatically the value of _performData
in performUpkeep
so it is always called with the necessary value for the vaults.
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.