As more tokens are going to be included in accepted tokens array, so tokens like USDC may also get included. The risk with that is that the protocol doesn't support pausable tokens like USDC.
When a user submits pausable tokens like USDC as collateral to the vaults, then if the USDC token is paused, and the vault gets undercollateralised, then liquidator can't liquidate the vault as the USDC contract is paused, which will make the safeTransfer
function in liquidateERC20
to revert.
In function liquidateERC20
,
the saferTransfer
will revert , if the underlying token is paused (which can happen in tokens like USDC). This will block the liquidator from liquidating the vault even if it is undercollateralised.
Liquidator will not be able to liquidate undercollateralised vaults.
Manual review
Create a different liquidate function to handle vaults with pausable token as collateral.
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.