Open Zeppelin's SafeERC20 library should be used to handle ERC20 transfers
Not all ERC20 tokens are the same. Some return true on transfer others return false for example.The return values of the token transfers are not checked in this protocol.There are tokens that return false instead of reverting which will silently fail the transfer.Instead of adding a requirement to all transfers which checks the return value using safeTransfer/safeTransferFrom is the better option.These functions check the return data from the transfers and also handle non-standart-compliant tokens.The links provided are all places in the code where token transfers occur.
Tokens that return false on transfer are still counted as a correct transfer and tokens like (USDT) can't be used in the protocol as they revert the transaction because of the missing return value.
Manual Review
Use OpenZeppelin's safeERC20 library for transfers
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.